/* The course-room identity across service 2. Home retains kursraum.css;
   only the shared footer below deliberately applies to that reference page. */
.pk-theme {
  --paper:#fcf8fc;--paper-raised:#fffefe;--paper-sidebar:#2b154b;
  --paper-row:#f6eff9;--paper-top:#f0e4f6;--ink:#210b3d;--ink-2:#51465c;
  --rule:#e5d8eb;--rule-strong:#957aa3;--light:#7725a8;--light-text:#54137e;
  --light-soft:#f2e6f9;--light-on:#fff;--light-hover:#54137e;
  --path-done:#9b80ad;--path-here:#7725a8;--path-ahead:#c5b1d0;
  --positive:#205e39;--negative:#a52c49;--info:#235d68;
  --stamp:var(--negative);--stamp-soft:#fae9ee;--ballpoint:var(--light-text);
  --ballpoint-soft:var(--light-soft);--pk-mint:#edf8f2;--pk-positive-bg:#e4f5e9;
  --pk-shadow:0 5px 20px #47255408;--pk-art-ground:#f3eaf8;
  --pk-sidebar-top:#382059;--pk-sidebar:#2b154b;--pk-sidebar-ink:#fff;
  --shadow-raised:var(--pk-shadow);background:var(--paper);color:var(--ink);
}
:root[data-theme="dark"] .pk-theme {
  color-scheme:dark;--paper:#21172d;--paper-raised:#30243e;--paper-row:#382b46;
  --paper-top:#443151;--ink:#f7f0fa;--ink-2:#d1c4d9;--rule:#574363;
  --rule-strong:#a18aae;--light:#892aba;--light-text:#e3bcff;--light-soft:#443151;
  --light-hover:#74249f;--path-done:#84718f;--path-here:#ddb1fa;--path-ahead:#a18aae;
  --positive:#bbebce;--negative:#ffc1cf;--info:#afdce4;--stamp-soft:#4b2b3d;
  --pk-mint:#253e38;--pk-positive-bg:#304c3b;--pk-shadow:0 5px 20px #0002;
  --pk-art-ground:#eaddf2;
}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]) .pk-theme {
  color-scheme:dark;--paper:#21172d;--paper-raised:#30243e;--paper-row:#382b46;
  --paper-top:#443151;--ink:#f7f0fa;--ink-2:#d1c4d9;--rule:#574363;
  --rule-strong:#a18aae;--light:#892aba;--light-text:#e3bcff;--light-soft:#443151;
  --light-hover:#74249f;--path-done:#84718f;--path-here:#ddb1fa;--path-ahead:#a18aae;
  --positive:#bbebce;--negative:#ffc1cf;--info:#afdce4;--stamp-soft:#4b2b3d;
  --pk-mint:#253e38;--pk-positive-bg:#304c3b;--pk-shadow:0 5px 20px #0002;
  --pk-art-ground:#eaddf2;
}}
/* Shared controls and reading surfaces also cover account, authentication,
   staff, legal, error, confirmation and player-wrapper screens. */
.pk-theme :is(h1,h2,h3,h4){font-family:var(--font-ui);hyphens:manual}
.pk-theme h1{font-weight:600;letter-spacing:-.035em;line-height:1.12}
.pk-theme :is(.sheet,.note,.confirmed){border-radius:18px;box-shadow:var(--pk-shadow)}
.pk-theme .sheet{border-color:var(--rule);background:var(--paper-raised)}
.pk-theme :is(.btn,.next){border-radius:11px;min-height:48px;font-size:1rem}
.pk-theme .next{background:var(--light);color:var(--light-on);box-shadow:0 3px 9px #42135c18}
.pk-theme .btn.secondary{background:var(--paper-raised);color:var(--light-text);border:1px solid var(--rule-strong)}
.pk-theme :is(.btn,.next):hover{filter:none;background:var(--light-hover);color:var(--light-on)}
.pk-theme .btn.secondary:hover{background:var(--light-soft);color:var(--light-text)}
.pk-theme :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea){border-radius:9px;border-color:var(--rule-strong);background:var(--paper-raised);color:var(--ink);font-size:1rem}
.pk-theme input:is([type=checkbox],[type=radio]){accent-color:var(--light)}
.pk-theme :is(.hint,.meta,.lede){color:var(--ink-2)}
.pk-theme .hint[role=status]{padding:14px 18px;background:var(--light-soft);border:1px solid var(--rule);border-radius:12px}
.pk-theme :is(.fold,details.sheet){border-radius:12px;border-color:var(--rule)}
.pk-theme .fold summary{min-height:48px;color:var(--ink)}
.pk-theme .staffnav{background:var(--paper-raised);border:1px solid var(--rule);border-radius:14px;padding:10px}
.pk-theme .staffnav a{border-radius:9px;min-height:44px;display:flex;align-items:center}
.pk-theme tbody tr:nth-child(even){background:var(--paper-row)}
.pk-theme th{background:var(--light-soft)}
.pk-theme .pagehead{border-color:var(--rule)}
.pk-theme .wrap:not(.full){padding-top:32px}
.pk-theme :focus-visible{outline:3px solid var(--light-text);outline-offset:4px}
.pk-theme a{ text-underline-offset:3px }
/* Familiar sidebar; content below is specific to the page, never to home. */
.pk-app .hk-rahmen{grid-template-columns:244px minmax(0,1fr)}
.pk-app .hk-haupt{width:100%;max-width:1500px;min-width:0;padding:40px 32px 36px}
.pk-app .hk-haupt.hk-lese{max-width:1000px}
.pk-app .hk-seite{padding:26px 18px 20px;gap:0;background:linear-gradient(155deg,var(--pk-sidebar-top),var(--pk-sidebar) 42%,#25103e);color:var(--pk-sidebar-ink);border:0;scroll-padding-block-end:20px}
.pk-app .hk-seite .hk-marke{margin:0 8px 25px;min-height:52px;gap:7px;color:#ead5f8;font:600 24px/1.15 var(--font-ui);letter-spacing:-.5px}
.pk-app .hk-marke img{width:48px;height:48px;flex:none}
.pk-app .hk-marke small{display:block;font:400 11px/1.35 var(--font-ui);letter-spacing:0;margin-top:3px}
.pk-app .hk-seite .hk-abschnitt{color:#d4c4e3;font-size:.75rem;margin:5px 16px 10px;letter-spacing:.08em}
.pk-app .hk-seite nav a,.pk-app .hk-seite nav button{border-radius:24px;min-height:48px;padding:10px 17px;font-size:1rem;color:#fff}
.pk-app .hk-seite nav svg{width:25px;height:25px;stroke-width:1.5}
.pk-app .hk-seite nav a.aktiv{background:linear-gradient(105deg,#7742ad,#653290);box-shadow:inset 0 1px 2px #ffffff22;font-weight:500}
.pk-app .hk-seite nav a:hover,.pk-app .hk-seite nav button:hover{background:#ffffff18}
.pk-app .hk-seite nav+.hk-abschnitt{border-top:1px solid #ffffff1c;padding-top:18px;margin-top:17px}
.pk-app .hk-seite form{margin:0}
.pk-app .hk-zitat{margin:5px 6px 0;padding:18px 19px 15px;background:#180b32a3;border:1px solid #ffffff12;border-radius:18px}
.pk-app .hk-zitat:before{content:'“';display:block;font:52px/.8 var(--font-display);color:#d8b6eb;height:33px}
.pk-app .hk-zitat blockquote{font:400 1rem/1.4 var(--font-ui);color:#f9f1ff}
.pk-app .hk-zitat .wer{font-size:.875rem;color:#cbbddd;line-height:1.45;margin-top:10px}
.pk-app .kr-seitenwort{font:italic 400 20px/1.45 var(--font-ui);color:#ecdbf6;transform:none;padding:95px 14px 2px;background:var(--kr-botanical-url) right top/190px auto no-repeat}
.pk-app .hk-seite .hk-recht{position:static;margin:16px 0 0;padding:8px 0 0;background:transparent;border-top-color:#ffffff1c}
.pk-app .hk-seite .hk-recht a{color:#d4c4e3;font-size:.875rem;min-height:44px}
.pk-app .hk-seite :focus-visible{outline-color:#ead5f8}
/* A common editorial heading with a quiet illustration on the right. */
.pk-intro{display:grid;grid-template-columns:minmax(0,1fr) 30%;align-items:center;gap:24px;margin:0 0 32px;min-height:230px}
.pk-intro__copy{min-width:0}
.pk-intro .hk-ober{max-width:68ch;font-size:.8rem;line-height:1.6;text-transform:none;letter-spacing:normal;margin:0 0 23px;color:var(--light-text)}
.pk-intro h1{font-size:clamp(36px,3.7vw,52px);margin:0 0 16px}
.pk-intro .lede{font-size:1.1rem;line-height:1.6;max-width:62ch;margin:0}
.pk-intro__art{position:relative;display:grid;place-items:center;min-height:190px;border-radius:54% 40% 50% 32%;background:var(--light-soft);isolation:isolate}
.pk-intro__art:before{content:'';position:absolute;inset:0;background:var(--kr-botanical-url) center/contain no-repeat;opacity:.18;z-index:-1}
.pk-intro__art>svg{width:84px;height:84px;stroke-width:1;transform:rotate(-8deg);color:var(--light-text)}
.pk-intro__art>img{height:220px;width:100%;object-fit:contain}
.pk-intro__art>span{font:italic 1rem/1.4 var(--font-ui);text-align:right;position:absolute;bottom:-32px;right:8px;color:var(--light-text)}
.pk-intro__art--person{background:var(--pk-mint)}
.pk-icon{display:grid;place-items:center;flex:none;width:60px;height:60px;background:var(--light-soft);color:var(--light-text);border-radius:50%}
.pk-icon svg{width:30px;height:30px}
/* Course cards: one clear destination and a separate state line. */
.pk-courses{display:grid;gap:18px}
.pk-theme .pk-course{display:grid;grid-template-columns:154px minmax(0,1fr) auto;gap:24px;padding:20px;border:1px solid var(--rule);border-radius:18px;background:var(--paper-raised);box-shadow:var(--pk-shadow)}
.pk-course__art{display:grid;place-items:center;align-self:stretch;min-height:165px;background:var(--light-soft);border-radius:14px}
.pk-course__art svg{width:78px;height:78px;stroke-width:1.2;color:var(--light-text)}
.pk-theme .pk-course h2{font-size:1.3rem;line-height:1.4;font-weight:600;margin:0 0 10px;letter-spacing:-.015em}
.pk-course__state{margin:0;color:var(--ink-2);font-size:1rem;line-height:1.6}
.pk-course__state b{color:var(--ink);font-weight:600}
.pk-course__meta{display:flex;align-items:center;gap:10px;width:fit-content;margin:14px 0 0;padding:8px 12px;border-radius:10px;background:var(--light-soft);font-size:1rem;color:var(--ink)}
.pk-course__meta svg{width:21px;height:21px;color:var(--light-text)}
.pk-course__action{max-width:240px}
.pk-course__action :is(.btn,.next){display:flex;align-items:center;justify-content:center;margin:0;padding:12px 20px;text-align:center}
/* Schedule: scan the date, read the session, then act. */
.pk-calendar-intro{display:flex;gap:20px;align-items:center;background:var(--light-soft);padding:24px;border-radius:18px;margin:0 0 18px}
.pk-theme .pk-calendar-intro h2{font-size:1.35rem;line-height:1.3;margin:0 0 5px}
.pk-calendar-intro p{font-size:1rem;margin:0;max-width:62ch;color:var(--ink-2)}
.pk-calendar-intro>.pk-icon{background:var(--paper-raised)}
.pk-calendar>.hint{margin:0 24px 24px;font-size:1rem}
.pk-live-section{background:var(--paper-raised);border:1px solid var(--rule);border-radius:18px;padding:20px 22px 14px;margin:18px 0;box-shadow:var(--pk-shadow)}
.pk-theme .pk-live-heading{display:flex;gap:20px;align-items:center;margin:0 0 18px;font-size:1.2rem;line-height:1.4;letter-spacing:-.015em}
.pk-live-heading .meta{display:block;font-size:1rem;font-weight:400;letter-spacing:0;margin-top:5px}
.pk-live-section>.hint{font-size:1rem;line-height:1.55;margin:0 0 18px 80px;padding:0;border:0}
.pk-calendar .termin{display:grid;grid-template-columns:80px minmax(0,1fr) auto;gap:16px;align-items:center;padding:16px 0;margin:0;border:0;border-top:1px solid var(--rule)}
.pk-calendar .termin .meta{font-size:1rem;line-height:1.5}
.pk-calendar .termin__wann{min-width:0;line-height:1.6}
.pk-teacher{display:inline-flex;align-items:center;gap:8px;vertical-align:middle}
.pk-teacher img{width:32px;height:32px;border-radius:50%;object-fit:cover;flex:none;background:var(--light-soft)}
.pk-date{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;width:80px;min-height:96px;padding:8px 4px;background:var(--light-soft);color:var(--ink);border-radius:11px;align-self:start;font-size:.75rem;line-height:1.3;letter-spacing:.06em;text-transform:uppercase;font-variant-numeric:tabular-nums}
.pk-date strong{font:600 30px/1.15 var(--font-ui);letter-spacing:-.03em}
.pk-date svg{height:30px;width:30px;color:var(--light-text)}
.pk-calendar .termin>button{display:flex;align-items:center;justify-content:center;min-width:200px;max-width:260px;padding:12px 20px;font-weight:500;text-align:center}
.pk-calendar .termin>.check{grid-column:2/-1;grid-row:2;margin:0;font-size:1rem}
/* Mit Kästchen: erst die Zustimmung, dann der Knopf — sichtbar wie im DOM und
   in der Tastaturfolge (DAK-Review 23.09.). Ohne Kästchen bleibt er rechts. */
.pk-calendar .termin:has(>.check)>button{grid-column:2/-1;grid-row:3;justify-self:start}
.pk-calendar .termin--mein{padding:16px;background:var(--light-soft);border:1px solid var(--rule-strong);border-radius:12px;margin-bottom:12px}
.pk-calendar .termin--mein .pk-date{background:var(--paper-raised)}
.pk-calendar .termin--mein .hint{grid-column:1/-1;font-size:1rem}
.pk-calendar .fold{margin:0;border:0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);border-radius:0}
.pk-calendar .fold summary{padding:12px 4px;font-size:1rem}
.pk-calendar .summary-meta{margin-left:12px;padding:2px 10px;border-radius:20px;background:var(--light-soft);color:var(--ink)}
.pk-calendar .foldbody{padding:8px 0}
.pk-calendar .pk-reminder{grid-template-columns:54px minmax(0,1fr) auto;background:var(--light-soft);border:0;border-radius:12px;padding:18px;margin:12px -8px 0}
.pk-reminder .pk-icon{width:48px;height:48px;background:var(--paper-raised)}
.pk-reminder form{max-width:250px}
.pk-reminder .btn{font-size:1rem;padding:10px 14px}
/* Path overview mirrors the supplied two-column learning plan. */
.pk-progress{display:flex;list-style:none;padding:0;margin:12px 0 32px;max-width:800px;gap:0}
.pk-progress li{position:relative;display:flex;flex-direction:column;align-items:center;flex:1;min-width:0;text-align:center;gap:8px}
.pk-progress li:not(:last-child):after{content:'';position:absolute;left:calc(50% + 29px);right:calc(-50% + 29px);top:24px;height:1px;background:var(--rule-strong)}
.pk-progress li>span{display:grid;place-items:center;width:49px;height:49px;border:1px solid var(--rule-strong);border-radius:50%;background:var(--light-soft);color:var(--light-text);font-weight:500}
.pk-progress li.is-done>span{background:var(--light);color:var(--light-on);border-color:var(--light);font-size:24px}
.pk-progress small{font-size:.9rem;line-height:1.4;color:var(--ink)}
.pk-theme .pk-resume{display:flex;align-items:center;gap:16px;padding:12px 24px;margin:0 0 20px;border:0;border-radius:14px;background:var(--light-soft);font-size:1rem;color:var(--ink)}
.pk-resume>svg{width:24px;height:24px;flex:none;color:var(--light-text)}
.pk-resume .taplink{display:inline;min-height:0;font-size:1rem}
.pk-path{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;align-items:start}
.pk-panel{min-width:0;padding:20px 18px;background:var(--paper-raised);border:1px solid var(--rule);border-radius:18px;box-shadow:var(--pk-shadow)}
.pk-panel__head{display:flex;gap:14px;align-items:center;margin:0 0 24px}
.pk-theme .pk-panel__head h2{font-size:1.5rem;margin:0 0 3px;line-height:1.25;letter-spacing:-.025em}
.pk-panel__head p{font-size:1rem;line-height:1.45;color:var(--ink-2);margin:0}
.pk-path .route--kurs{max-width:none;margin:0}
.pk-path .station{padding:0;margin:0 0 16px;grid-template-columns:24px minmax(0,1fr);gap:9px}
.pk-path .station:last-child{margin:0}
.pk-path .station:before{left:11px;top:26px;bottom:-18px;width:1px;background:var(--rule)}
.pk-path .station__dot{width:26px;height:26px;margin-top:20px;font-size:.8rem;border-width:1px}
.pk-path .station[data-state=done] .station__dot{background:var(--positive);color:var(--paper);border-color:var(--positive)}
.pk-unit-card{display:grid;grid-template-columns:76px minmax(0,1fr);gap:12px;padding:18px 14px;border-radius:14px;background:var(--paper-row);align-items:center}
.pk-unit-card>img{width:76px;height:76px;object-fit:contain;background:var(--pk-art-ground);border-radius:50%}
.pk-units .station[data-state=done] .pk-unit-card{background:var(--pk-mint)}
.pk-path .station__name{font-size:1rem;line-height:1.5}
.pk-path .station__name a{font-size:1rem;min-height:44px;display:flex;align-items:center;line-height:1.4}
.pk-path .station__text{font-size:1rem;line-height:1.5;margin-top:8px}
.pk-path .station__text .record{font-family:var(--font-ui);font-size:1rem}
.pk-path .station__text .taplink{font-size:1rem}
.pk-path .station p:has(>.next){margin:12px 0 0}
.pk-path .next{font-size:1rem;padding:10px 14px}
.pk-path .pk-live-card{grid-template-columns:72px minmax(0,1fr);gap:14px;padding:15px;border:1px solid var(--rule);border-radius:14px}
.pk-live-card:before{display:none}
.pk-live-card .pk-date{width:72px;min-height:96px}
.pk-live-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.pk-live-meta>svg{width:18px;height:18px;flex:none}
.pk-live-list .station__text>a.taplink[href="/termine"]{display:inline-flex;min-height:44px;border-radius:9px;padding:7px 12px;background:var(--light-soft);text-decoration:none;margin-top:10px;color:var(--light-text)}
.pk-certificate{display:flex;align-items:center;gap:20px;padding:24px;margin:22px 0;background:var(--light-soft);border:6px solid var(--paper-raised);border-radius:20px;box-shadow:var(--pk-shadow)}
.pk-certificate>.route{flex:1;max-width:none;margin:0}
.pk-certificate .station{display:block;padding:0}
.pk-certificate .station__dot,.pk-certificate .station:before{display:none}
.pk-certificate .station__name{font-size:1.45rem;line-height:1.3;margin:0 0 7px}
.pk-certificate .station__text{font-size:1rem;line-height:1.5;margin:0}
/* /weg (DAK-Review 23.09.): der Zähler steht über der Kreisreihe, der Kopf
   darüber erklärt den Aufbau. */
.pk-theme .pk-zaehler{margin:0 0 14px;font-size:1rem;color:var(--ink-2)}
.pk-certificate__status{flex:none;max-width:180px;padding:8px 12px;border:1px solid var(--rule);border-radius:9px;font-size:.9rem;color:var(--ink-2);background:var(--paper-raised)}
/* Contact and legal cards: the sole visual change shared with /home. */
:is(.pk-theme,.kr-home) .pagefoot{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:40px 0 8px;padding:0;border:0;position:relative;isolation:isolate}
:is(.pk-theme,.kr-home) .pagefoot__bereich{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:0;padding:26px 24px 26px 98px;min-width:0;border:1px solid var(--rule);border-radius:18px;background:var(--paper-raised);box-shadow:0 5px 20px #47255408}
:is(.pk-theme,.kr-home) .pagefoot__titel{font:600 1.25rem/1.4 var(--font-ui);color:var(--ink);margin:0 0 8px}
:is(.pk-theme,.kr-home) .pagefoot p{font:400 1rem/1.5 var(--font-ui);color:var(--ink-2);max-width:100%}
:is(.pk-theme,.kr-home) .pagefoot a{font-size:1rem;min-height:44px;color:var(--light-text);max-width:100%;overflow-wrap:anywhere}
:is(.pk-theme,.kr-home) .pk-footer-icon{position:absolute;top:24px;left:22px;width:56px;height:56px;display:grid;place-items:center;border-radius:50%;background:var(--light-soft);color:var(--light-text)}
.pk-footer-icon svg{width:29px;height:29px}
.kr-home .pagefoot{--light-soft:var(--kr-lilac);--light-text:var(--kr-purple-deep)}
/* Intermediate sizes change composition before readable text loses its width. */
@media(max-width:1250px){
 .pk-app .hk-haupt{padding:32px 24px}
 .pk-path{grid-template-columns:1fr}
 .pk-theme .pk-course{grid-template-columns:120px minmax(0,1fr);gap:20px}
 .pk-course__action{grid-column:2;max-width:none;justify-self:start}
 .pk-course__art{grid-row:1/3;min-height:180px}
 .pk-calendar .termin{grid-template-columns:72px minmax(0,1fr)}
 .pk-calendar .termin>button,.pk-calendar .termin>form{grid-column:2;justify-self:start}
 .pk-calendar .termin:has(>.check)>button{grid-column:2;grid-row:3}
 .pk-calendar .termin>.check{grid-column:2;grid-row:2}
 .pk-calendar .pk-reminder{grid-template-columns:48px minmax(0,1fr)}
 :is(.pk-theme,.kr-home) .pagefoot__bereich{padding:22px}
 :is(.pk-theme,.kr-home) .pk-footer-icon{position:static;margin-bottom:16px}
}
@media(max-width:979.98px){
 .pk-app .hk-rahmen{grid-template-columns:1fr;grid-template-rows:auto 1fr}
 .pk-app .hk-seite{position:relative;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;overflow:visible;height:auto;padding:14px 22px;gap:8px;z-index:3}
 .pk-app .hk-seite .hk-marke{margin:0;font-size:23px}
 .pk-app .hk-seite>nav,.pk-app .hk-abschnitt,.pk-app .hk-zitat,.pk-app .kr-seitenwort{display:none}
 .pk-app .kr-mobile-menu{display:block;position:static}
 .pk-app .kr-mobile-menu summary{display:flex;align-items:center;justify-content:center;min-width:70px;min-height:44px;padding:8px 10px;border:1px solid #b99dc8;border-radius:12px;list-style:none;cursor:pointer;font-size:1rem;color:#fff}
 .pk-app .kr-mobile-menu summary:after{content:'⌄';margin-left:7px}
 .pk-app .kr-mobile-menu summary::-webkit-details-marker{display:none}
 .pk-app .kr-mobile-menu[open] summary:after{content:'⌃'}
 .pk-app .kr-mobile-menu nav{position:absolute;left:0;right:0;top:100%;display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:12px 16px;background:var(--pk-sidebar);border-top:1px solid #ffffff24;box-shadow:0 10px 16px #21103230}
 .pk-app .hk-haupt{max-width:none;padding:30px 24px}
 .pk-intro{min-height:215px}
 .pk-intro h1{font-size:42px}
 .pk-certificate__status{max-width:150px}
}
@media(max-width:599px){
 .pk-app .hk-seite{padding:13px 16px}
 .pk-app .hk-marke img{width:40px;height:40px}
 .pk-app .hk-seite .hk-marke{font-size:21px}
 .pk-app .hk-haupt{padding:26px 14px}
 .pk-intro{grid-template-columns:1fr;gap:0;min-height:0;margin:0 4px 26px}
 .pk-intro .hk-ober{font-size:.75rem;margin-bottom:16px}
 .pk-intro h1{font-size:38px;margin-bottom:12px}
 .pk-intro .lede{font-size:1rem;line-height:1.55}
 .pk-intro__art{display:none}
 .pk-theme .pk-zaehler{margin:0 4px 10px}
 .pk-theme .pk-course{grid-template-columns:64px minmax(0,1fr);padding:18px 15px;gap:12px}
 .pk-course__art{min-height:80px;align-self:start;grid-row:1}
 .pk-course__art svg{width:42px;height:42px}
 .pk-theme .pk-course h2{font-size:1.12rem;line-height:1.45}
 .pk-course__state{font-size:1rem}
 .pk-course__action{grid-column:1/-1;justify-self:stretch;margin-top:4px}
 .pk-course__meta{margin-top:10px;padding:6px 8px;flex-wrap:wrap}
 .pk-calendar-intro{padding:18px 15px;gap:12px;align-items:start}
 .pk-calendar-intro .pk-icon{width:44px;height:44px}
 .pk-calendar-intro .pk-icon svg{width:24px;height:24px}
 .pk-live-section{padding:18px 13px 13px}
 .pk-theme .pk-live-heading{gap:12px;font-size:1.12rem;align-items:start}
 .pk-live-heading>.pk-icon{width:44px;height:44px}
 .pk-live-heading>.pk-icon svg{width:25px;height:25px}
 .pk-live-section>.hint{margin-left:0}
 .pk-calendar .termin{grid-template-columns:60px minmax(0,1fr);gap:10px 12px;padding:16px 0}
 .pk-date{width:60px;min-height:87px;font-size:.65rem;letter-spacing:.03em}
 .pk-date strong{font-size:28px}
 .pk-calendar .termin>button,.pk-calendar .termin>form{grid-column:1/-1;justify-self:stretch;max-width:none;min-width:0}
 .pk-calendar .termin>form>.btn{width:100%}
 .pk-calendar .termin:has(>.check)>button{grid-column:1/-1}
 .pk-calendar .termin>.check{grid-column:1/-1}
 .pk-calendar .termin--mein{padding:12px}
 .pk-calendar .pk-reminder{grid-template-columns:40px minmax(0,1fr);padding:15px 12px;margin-inline:0}
 .pk-reminder .pk-icon{width:38px;height:38px}
 .pk-reminder .pk-icon svg{width:23px;height:23px}
 .pk-progress{margin:0 0 24px}
 .pk-progress li{gap:7px}
 .pk-progress li>span{width:38px;height:38px;font-size:.9rem}
 .pk-progress li.is-done>span{font-size:20px}
 .pk-progress li:not(:last-child):after{left:calc(50% + 23px);right:calc(-50% + 23px);top:19px}
 .pk-progress small{font-size:.75rem;max-width:65px}
 .pk-theme .pk-resume{padding:13px 16px;gap:12px;line-height:1.5}
 .pk-panel{padding:18px 12px}
 .pk-panel__head{gap:12px;margin-bottom:20px;align-items:start}
 .pk-panel__head>.pk-icon{width:46px;height:46px}
 .pk-panel__head>.pk-icon svg{width:26px;height:26px}
 .pk-theme .pk-panel__head h2{font-size:1.3rem}
 .pk-unit-card{grid-template-columns:1fr;padding:14px}
 .pk-unit-card>img{width:54px;height:54px;display:none}
 .pk-path .pk-live-card{grid-template-columns:54px minmax(0,1fr);padding:12px 10px;gap:11px}
 .pk-live-card .pk-date{width:54px;min-height:84px;font-size:.63rem}
 .pk-path .station__text .taplink{max-width:100%}
 .pk-certificate{flex-wrap:wrap;padding:18px 14px;gap:14px}
 .pk-certificate>.pk-icon{width:44px;height:44px}
 .pk-certificate>.route{flex-basis:calc(100% - 60px)}
 .pk-certificate .station__name{font-size:1.3rem}
 .pk-certificate__status{margin-left:58px;max-width:none}
 :is(.pk-theme,.kr-home) .pagefoot{grid-template-columns:1fr;gap:14px;margin-top:28px}
 :is(.pk-theme,.kr-home) .pagefoot__bereich{padding:22px 20px}
 :is(.pk-theme,.kr-home) .pk-footer-icon{width:48px;height:48px;margin-bottom:12px}
}
@media(prefers-reduced-motion:reduce){.pk-theme *{animation:none!important;transition:none!important}}
.pk-course__art{overflow:hidden}
.pk-course__art>img{height:150px;width:300px;max-width:none;object-fit:contain;flex:none}
.pk-course__facts{display:flex;flex-wrap:wrap;gap:8px}
.pk-course__facts .pk-course__meta{margin-top:12px;font-size:.9rem;padding:8px 10px;gap:7px}
@media(max-width:599px){.pk-course__art>img{width:150px;height:75px}.pk-course__facts{gap:6px}.pk-course__facts .pk-course__meta{font-size:.875rem;margin-top:8px}}
/* Render review: keep the rail continuous and crop decorative motifs centrally. */
@media(min-width:980px){.pk-app .hk-rahmen{background:linear-gradient(to right,#25103e 244px,var(--paper) 244px)}}
.pk-app .pk-intro h1,.pk-theme .lede{font-family:var(--font-ui)}
.pk-theme .pk-resume{max-width:none}
.pk-path .station__dot{z-index:1}
.pk-unit-card>img{object-fit:cover}
.pk-course__art>img{width:100%;height:150px;max-width:100%;object-fit:cover;object-position:center}
.pk-calendar-intro .pk-calendar-label{margin-bottom:5px;font-weight:500}
@media(max-width:599px){.pk-course__art>img{height:80px}}
.pk-theme .next{border:1px solid var(--light-text)}
.pk-theme .tag{font:500 .875rem/1.4 var(--font-ui);border:1px solid var(--rule);border-radius:8px;background:var(--light-soft);color:var(--ink);padding:5px 9px}
.pk-path .station__text .next{display:inline-flex;min-height:44px;padding:9px 13px;margin-top:10px;text-decoration:none;font-size:1rem}
.pk-app .hk-haupt{background:var(--paper)}
.pk-theme .check{min-height:44px}
.pk-theme .btn:not(.secondary){border:1px solid var(--light-text)}
.pk-course__art>img{object-fit:contain;transform:scale(1.6)}
@media(max-width:599px){.pk-course__art>img{transform:scale(2)}}
/* Registration steps keep readable numerals as well as visible state colors. */
.pk-theme .route--weg .station__dot{background:var(--paper-raised);color:var(--ink-2);border-color:var(--rule-strong)}
.pk-theme .route--weg .station[data-state=done] .station__dot{background:var(--pk-positive-bg);color:var(--positive);border-color:var(--positive)}
:root .pk-theme .route--weg .station[data-state=here] .station__dot{background:var(--light);color:var(--light-on);border-color:var(--light)}

/* ───────────────────────────────────────────────────────────────────────────
   Startseite ohne Sitzung (23.09.): die Anordnung von Pflege ABC, gebaut für
   Anmeldeweg E. Kopf mit zwei Türen, Held mit EINEM lauten Knopf zur
   Kursseite, Tatsachenleiste statt Sterne, drei Schritte, die Kurse.
   Farben und Formen kommen von /home (pk-theme): die dunkelviolette Fläche der
   Seitenleiste trägt Kopf und Schritte-Band, das Foto die Organik-Form, die
   Kurskarten den Motivkopf der Einheitenkarten. `.pk-theme` vor den
   Selektoren, die sonst gegen die allgemeinen `.pk-theme`-Regeln oben verlören.
   ─────────────────────────────────────────────────────────────────────────── */
.pk-theme .wrap.wrap.offen { max-width: none; padding: 0; }
.st-innen { box-sizing: border-box; max-width: 74rem; margin-inline: auto; padding-inline: 1.25rem; }
.pk-theme .wrap.offen > .pagefoot { box-sizing: border-box; max-width: 74rem; margin: 56px auto 0; padding: 0 1.25rem 2.5rem; }
.st-unsichtbar { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0;
  overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.st-flaeche, .st-kopf, .st-schritte {
  background: linear-gradient(155deg, var(--pk-sidebar-top), var(--pk-sidebar) 55%, #25103e);
  color: var(--pk-sidebar-ink);
}

/* 1 · Kopf: Marke links, die zwei Türen rechts, beide leise. */
.st-kopf__innen { display: flex; align-items: center; justify-content: space-between;
  gap: 12px; min-height: 76px; padding-block: 10px; }
.pk-theme .st-marke { display: inline-flex; align-items: center; gap: 8px; min-height: 44px;
  color: #ead5f8; text-decoration: none; font: 600 24px/1.15 var(--font-ui); letter-spacing: -.5px; }
.st-marke img { width: 44px; height: 44px; flex: none; }
.st-marke small { display: block; margin-top: 3px; font: 400 13px/1.35 var(--font-ui); letter-spacing: 0; }
.st-tueren { display: flex; align-items: center; gap: 8px; }
.pk-theme .st-tuer { display: inline-flex; align-items: center; min-height: 44px; padding: 8px 16px;
  border: 1.5px solid transparent; border-radius: 11px; color: #fff; font-weight: 500;
  text-decoration: none; white-space: nowrap; }
.pk-theme .st-tuer:hover { background: #ffffff1c; }
.pk-theme .st-tuer--rahmen { border-color: #ffffffb3; }
.pk-theme .st-tuer[aria-current="page"] { background: #ffffff24; }
.pk-theme :is(.st-kopf, .st-schritte) :focus-visible { outline: 3px solid #ead5f8; outline-offset: 3px; }

/* 2 · Held: Text links, Foto rechts in der Organik-Form von /home. */
.st-held { padding: 52px 0 44px; overflow: hidden; }
.st-held__raster { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
  gap: 44px; align-items: center; }
.pk-theme .st-held h1 { margin: 0 0 18px; font-size: clamp(2.3rem, 4.4vw, 3.35rem);
  line-height: 1.06; letter-spacing: -.04em; }
.pk-theme .st-held__satz { margin: 0 0 28px; font-size: 1.2rem; line-height: 1.55; color: var(--ink-2); }
.st-held__knopf { margin: 0 0 24px; }
.pk-theme .st-held .next { min-height: 62px; padding: 13px 28px; border-radius: 12px; font-size: 1.15rem; }
.pk-theme .st-held .next .next__label { font-size: .9rem; }
.pk-theme .st-hilfe { display: flex; gap: 10px; align-items: flex-start; margin: 0;
  font-size: .95rem; line-height: 1.5; color: var(--ink-2); }
.st-hilfe svg { width: 24px; height: 24px; flex: none; margin-top: 1px; color: var(--light-text); }
/* Ziffer 4 ersetzt die Beratungsnummer: ihre Links bekommen die volle Zielhöhe (ROT-1, 5). */
.pk-theme .st-hilfe a { display: flex; align-items: center; min-height: 44px; width: fit-content; }
.st-held__bild { position: relative; isolation: isolate; }
.st-held__bild::before { content: ''; position: absolute; inset: 9% -5% -7% 12%; z-index: -1;
  border-radius: 52% 38% 46% 40% / 44% 42% 50% 46%; background: var(--light-soft); }
.st-held__bild img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover;
  object-position: center 40%; border-radius: 42% 12% 36% 18% / 30% 10% 34% 20%; }

/* 3 · Tatsachenleiste: nur Sätze, die die Plattform schon sagt. */
.st-fakten { background: var(--paper-raised); border-block: 1px solid var(--rule); }
.pk-theme .st-fakten ul { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px 28px; margin-block: 0; padding-block: 20px; list-style: none; }
.pk-theme .st-fakten li { display: flex; gap: 10px; align-items: center; margin: 0;
  font-weight: 500; line-height: 1.35; color: var(--ink); }
.st-fakten svg { width: 26px; height: 26px; flex: none; color: var(--positive); }

/* 4 · Drei Schritte in der Reihenfolge von E. */
.st-schritte { padding: 58px 0 62px; }
.st-schritte__raster { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 2.2fr);
  gap: 44px; align-items: start; }
.pk-theme .st-schritte h2 { margin: 0; color: #fff; font-size: clamp(1.75rem, 2.6vw, 2.25rem);
  line-height: 1.2; letter-spacing: -.02em; }
.pk-theme .st-schritte ol { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 30px; margin: 0; padding: 0; list-style: none; }
.st-schritt__zeichen { display: grid; place-items: center; width: 54px; height: 54px;
  margin-bottom: 16px; border-radius: 13px; background: #fff; color: var(--pk-sidebar); }
.st-schritt__zeichen svg { width: 28px; height: 28px; }
.pk-theme .st-schritte h3 { margin: 0 0 6px; color: #fff; font-size: 1.15rem; line-height: 1.35; }
.pk-theme .st-schritte p { margin: 0; color: #eadff2; line-height: 1.5; }

/* 5 · Die Kurse: Motivkopf wie die Einheitenkarten, die ganze Karte ein Link. */
.st-kurse { padding: 58px 0 0; }
.pk-theme .st-kurse h2 { margin: 0 0 22px; font-size: clamp(1.75rem, 2.6vw, 2.25rem); letter-spacing: -.02em; }
.st-kurse__raster { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.st-kurs { position: relative; display: flex; flex-direction: column; overflow: hidden;
  border: 1px solid var(--rule); border-radius: 18px; background: var(--paper-raised);
  box-shadow: var(--pk-shadow); }
.st-kurs:hover { border-color: var(--rule-strong); }
.st-kurs__bild { background: var(--pk-art-ground); border-bottom: 1px solid var(--rule); }
.st-kurs__bild img { display: block; width: 100%; height: 124px; object-fit: contain; }
.st-kurs__text { display: flex; flex: 1; flex-direction: column; padding: 22px 24px 24px; }
.pk-theme .st-kurs h3 { margin: 0 0 8px; font-size: 1.4rem; line-height: 1.3; letter-spacing: -.015em; }
.pk-theme .st-kurs__text > p { margin: 0 0 14px; }
.pk-theme .st-kurs__fakten { display: grid; gap: 14px; margin: 4px 0 22px; }
.pk-theme .st-kurs__fakten dt { margin: 0 0 3px; font-size: .8rem; font-weight: 600;
  letter-spacing: .08em; text-transform: uppercase; color: var(--ink-2); }
.pk-theme .st-kurs__fakten dd { margin: 0; color: var(--ink); line-height: 1.5; }
.pk-theme .st-kurs__einheiten { margin: 10px 0 6px; padding: 0; list-style: none; border-top: 1px solid var(--rule); }
.st-kurs__einheiten li { display: flex; justify-content: space-between; gap: 14px; margin: 0;
  padding: 9px 0; border-bottom: 1px solid var(--rule); line-height: 1.4; }
.st-kurs__min { flex: none; font-size: .9rem; color: var(--ink-2); }
.pk-theme .st-kurs__weitere { margin: 0; font-size: .95rem; color: var(--ink-2); }
.pk-theme .st-kurs__wann { display: flex; gap: 8px; align-items: center; margin: 6px 0 0; }
.st-kurs__wann svg { width: 22px; height: 22px; flex: none; color: var(--light-text); }
.pk-theme .st-kurs__link { align-self: flex-start; margin-top: auto; }
.st-kurs__link::after { content: ''; position: absolute; inset: 0; border-radius: 18px; }

@media (max-width: 60rem) {
  .st-held__raster { gap: 28px; }
  .pk-theme .st-fakten ul { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .st-schritte__raster { grid-template-columns: 1fr; gap: 26px; }
}
@media (max-width: 47.99rem) {
  .st-held { padding: 0 0 32px; }
  .st-held__raster { grid-template-columns: 1fr; gap: 0; padding-inline: 0; }
  .st-held__text { padding-inline: 1.25rem; }
  .st-held__bild { order: -1; margin: 0 0 22px; }
  .st-held__bild::before { display: none; }
  .st-held__bild img { aspect-ratio: auto; height: 190px; border-radius: 0 0 46% 14% / 0 0 26% 12%; }
  .pk-theme .st-held h1 { font-size: 2.3rem; }
  .pk-theme .st-held__satz { font-size: 1.1rem; margin-bottom: 22px; }
  .pk-theme .st-held .next { width: 100%; box-sizing: border-box; }
  .pk-theme .st-fakten ul { grid-template-columns: 1fr; gap: 12px; padding-block: 18px; }
  .st-schritte { padding: 40px 0 44px; }
  .pk-theme .st-schritte ol { grid-template-columns: 1fr; gap: 22px; }
  .pk-theme .st-schritte li { display: grid; grid-template-columns: 54px minmax(0, 1fr); gap: 0 16px; }
  .st-schritt__zeichen { grid-row: span 2; margin: 0; }
  .st-kurse { padding-top: 40px; }
  .st-kurse__raster { grid-template-columns: 1fr; gap: 18px; }
  .st-kurs__text { padding: 18px 18px 20px; }
  .pk-theme .st-kurs__link { width: 100%; box-sizing: border-box; text-align: center; }
}
/* Unter 30rem passen Marke und zwei Türen nicht in eine Zeile (gemessen:
   397 px Seitenbreite bei 390). Die Türen bekommen dann eine eigene Zeile,
   zwei gleich breite Hälften, damit keine hinter der anderen verschwindet. */
@media (max-width: 30rem) {
  .st-kopf__innen { flex-wrap: wrap; gap: 4px 12px; min-height: 0; padding-block: 8px 12px; }
  .st-marke small { display: none; }
  .pk-theme .st-marke { font-size: 21px; }
  .st-marke img { width: 38px; height: 38px; }
  .st-tueren { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; width: 100%; }
  .pk-theme .st-tuer { justify-content: center; padding: 8px 10px; border-color: #ffffff40; }
  .pk-theme .st-tuer--rahmen { border-color: #ffffffb3; }
}

/* Die öffentliche Kursseite /kurse/{code} (23.09.), in der Sprache der
   Startseite: Kopfband mit Titel und dem einen lauten Knopf, darunter die
   Einheiten als Inhaltsübersicht (Pflege ABC) und daneben Live-Kurse,
   Kursleitung und Bescheinigung. Mit Sitzung steht dieselbe Seite im
   Teilnehmer-Rahmen (page_app); die Regeln gelten dort genauso. */
.ks-kopf { padding: 40px 0 36px; background: var(--paper-top); border-bottom: 1px solid var(--rule); }
.pk-app .ks-kopf { margin: -40px -32px 0; }
.pk-app .ks-kopf > .st-innen { padding-inline: calc(32px + 1.25rem); }
.ks-kopf__raster { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, .6fr); gap: 40px; align-items: center; }
.pk-theme .ks-zurueck { margin: 0 0 10px; }
.pk-theme .ks-zurueck a { display: inline-flex; align-items: center; min-height: 44px; color: var(--light-text); font-weight: 500; }
.pk-theme .ks-zurueck a { text-decoration: none; font-weight: 600; }
.pk-theme .ks-zurueck a:hover { text-decoration: underline; }
.ks-zurueck a::before { content: '←'; margin-right: 6px; }
.pk-theme .ks-kopf h1 { margin: 0 0 14px; font-size: clamp(2.1rem, 3.8vw, 3rem); line-height: 1.08; letter-spacing: -.035em; }
.pk-theme .ks-kasse { margin: 0 0 10px; font-size: 1.1rem; line-height: 1.55; color: var(--ink-2); }
.pk-theme .ks-kopf__text > p:not(.ks-zurueck):not(.ks-kasse) { margin: 0 0 22px; }
.pk-theme .ks-kopf .next { min-height: 62px; padding: 13px 28px; border-radius: 12px; font-size: 1.15rem; }
.pk-theme .ks-kopf form { margin: 0; }
.ks-kopf__bild img { display: block; box-sizing: border-box; width: 100%; height: 210px; padding: 24px 12px;
  object-fit: contain; border: 1px solid var(--rule); border-radius: 28px 28px 28px 90px; background: var(--pk-art-ground); }
.pk-theme .ks-start { display: flex; gap: 8px; align-items: center; margin: 0 0 18px; font-weight: 600; color: var(--ink); }
.ks-start svg { width: 22px; height: 22px; flex: none; color: var(--light-text); }

/* Die Live-Kurse stehen rechts über alle drei Zeilen; `1fr` in der letzten
   Zeile nimmt ihre Überlänge auf, sonst klafften links Lücken zwischen den Blöcken. */
.ks-raster { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, .85fr);
  grid-template-rows: auto auto 1fr; gap: 28px 40px; align-items: start; padding-top: 40px; }
.ks-raster > * { grid-column: 1; }
.ks-raster > .ks-live { grid-column: 2; grid-row: 1 / span 3; }
.pk-theme .ks-block h2 { margin: 0 0 14px; font-size: 1.6rem; letter-spacing: -.02em; }
.ks-karte { padding: 22px 24px; background: var(--paper-raised); border: 1px solid var(--rule); border-radius: 18px; box-shadow: var(--pk-shadow); }
.pk-theme .ks-karte h2 { font-size: 1.35rem; }

/* Einheiten: Nummer, Titel mit Minuten, „Einheit öffnen" mit Schloss. */
.pk-theme .ks-abschnitt { margin: 22px 0 6px; font-size: .8rem; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--ink-2); }
.pk-theme .ks-einheiten ol { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--rule); }
.ks-einheit { display: grid; grid-template-columns: 40px minmax(0, 1fr) auto; gap: 14px; align-items: center; margin: 0; padding: 12px 0; border-bottom: 1px solid var(--rule); }
.ks-nr { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 50%; background: var(--light-soft); color: var(--light-text); font-weight: 600; }
.ks-einheit__text strong { display: block; font-weight: 600; line-height: 1.35; }
.ks-einheit__min { font-size: .9rem; color: var(--ink-2); }
.pk-theme .ks-oeffnen { display: inline-flex; gap: 6px; align-items: center; min-height: 44px; padding: 0 14px; border: 1px solid var(--rule-strong); border-radius: 11px; color: var(--light-text); font-weight: 600; text-decoration: none; white-space: nowrap; }
.pk-theme .ks-oeffnen:hover { background: var(--light-soft); }
.ks-oeffnen svg { width: 18px; height: 18px; flex: none; }

/* Live-Kurse: je Thema die nächsten Termine mit Kalenderblatt. */
.ks-thema + .ks-thema { margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--rule); }
.pk-theme .ks-thema h3 { margin: 12px 0 8px; font-size: 1.1rem; }
.pk-theme .ks-termine { margin: 0 0 8px; padding: 0; list-style: none; display: grid; gap: 10px; }
.ks-termin { display: grid; grid-template-columns: 58px minmax(0, 1fr); gap: 12px; align-items: center; margin: 0; }
.pk-theme .ks-termin .pk-date { width: 58px; min-height: 72px; font-size: .65rem; letter-spacing: .03em; }
.pk-theme .ks-termin .pk-date strong { font-size: 24px; }

/* Kursleitung und Bescheinigung. */
.pk-theme .ks-personen { margin: 0; padding: 0; list-style: none; display: grid; gap: 12px; }
.ks-person { display: flex; gap: 14px; align-items: center; margin: 0; }
.ks-person img, .ks-person__ohne { width: 64px; height: 64px; flex: none; border-radius: 50%; object-fit: cover; }
.ks-person__ohne { display: grid; place-items: center; background: var(--light-soft); color: var(--light-text); }
.ks-person__ohne svg { width: 30px; height: 30px; }
.ks-bescheinigung { background: var(--light-soft); }
.ks-bescheinigung__zeichen { display: grid; place-items: center; width: 52px; height: 52px; margin-bottom: 10px; border-radius: 50%; background: var(--paper-raised); color: var(--light-text); }
.ks-bescheinigung__zeichen svg { width: 28px; height: 28px; }
.pk-theme .ks-bescheinigung p { margin: 0; }

@media (max-width: 60rem) {
  .ks-raster { grid-template-columns: 1fr; grid-template-rows: none; gap: 28px; }
  .ks-raster > .ks-live { grid-column: 1; grid-row: auto; }
  .ks-kopf__raster { grid-template-columns: 1fr; gap: 20px; }
  .ks-kopf__bild { display: none; }
}
@media (max-width: 47.99rem) {
  .ks-kopf { padding: 20px 0 26px; }
  .pk-app .ks-kopf { margin: 0; }
  .pk-app .ks-kopf > .st-innen { padding-inline: 1.25rem; }
  .pk-theme .ks-kopf .next { width: 100%; box-sizing: border-box; }
  .ks-einheit { grid-template-columns: 36px minmax(0, 1fr); gap: 4px 12px; align-items: start; }
  .pk-theme .ks-oeffnen { grid-column: 2; justify-self: start; }
  .ks-karte { padding: 18px; }
}
/* Bei 320 px ist „Nachbarschaftshilfe" 15 px breiter als die Kopfspalte, und
   `hyphens:manual` oben lässt `overflow-wrap` es ohne Strich brechen. */
@media (max-width: 21.25rem) {
  .pk-theme .ks-kopf h1 { font-size: 1.85rem; }
}
