/* ==========================================================================
   German LifeBox — 2026 design system
   Dark, cinematic, editorial. Brand colours are used as LIGHT (glows,
   hairlines, single accent words) rather than as fills.
   Shared by every page; page-specific blocks are grouped and labelled.
   ========================================================================== */

@font-face{font-family:'Space Mono';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/space-mono-latin-400-normal.woff2') format('woff2')}
@font-face{font-family:'Space Mono';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/space-mono-latin-700-normal.woff2') format('woff2')}
:root{
  --bg:#050505;
  --bg-2:#0b0b0c;
  --card:#101012;
  --card-2:#16161a;
  --line:rgba(255,255,255,.08);
  --line-2:rgba(255,255,255,.14);
  --ink:#f5f5f4;
  --ink-2:#b9b9bd;
  --ink-3:#86868d;
  --magenta:#e000ff;
  --magenta-soft:#e98cff;
  --green:#00ff6a;
  --green-soft:#7dffb0;
  --grad:linear-gradient(90deg,var(--magenta),var(--green));
  --display:'Space Grotesk',system-ui,sans-serif;
  --body:'Inter',system-ui,sans-serif;
  --r-lg:22px;
  --r:16px;
  --r-sm:10px;
  --max:2400px;
  --gutter:clamp(16px,5vw,120px);
  --mono:'Space Mono',ui-monospace,monospace;
  --ease:cubic-bezier(.22,.8,.2,1);
  /* meaning colours, the same on every page: done / caution / stop */
  --ok:#00ff6a;
  --caution:#ffb020;
  --stop:#ff5a4f;
  color-scheme:dark;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{background:var(--bg);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
::selection{background:var(--magenta);color:#fff}
:focus-visible{outline:2px solid var(--green);outline-offset:3px;border-radius:6px}
.skip-link{position:absolute;left:12px;top:-60px;z-index:200;background:#fff;color:#000;padding:10px 16px;border-radius:999px;font-weight:600;font-size:14px;transition:top .2s}
.skip-link:focus{top:12px}
main:focus{outline:none}

/* film grain — barely there, adds the "shot on film" richness */
body::after{content:'';position:fixed;inset:0;pointer-events:none;z-index:300;opacity:.035;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}

.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--gutter)}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font-family:var(--body);font-size:12px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-3)}
.eyebrow::before{content:'';width:18px;height:1px;background:var(--grad)}
.h-section{font-family:var(--display);font-weight:500;font-size:clamp(32px,4.6vw,56px);line-height:1.05;letter-spacing:-.03em}
.h-section em{font-style:normal;color:var(--ink-3)}
.lede{color:var(--ink-2);font-size:clamp(16px,1.4vw,18px);max-width:560px}
.h-section .m,.accent-m{color:var(--magenta-soft)} .h-section .g,.accent-g{color:var(--green)}

/* ── Buttons ─────────────────────────────────────────────── */
.btn{display:inline-flex;align-items:center;gap:10px;height:48px;padding:0 22px;border-radius:999px;font-size:14px;font-weight:600;letter-spacing:.02em;transition:transform .25s var(--ease),background .25s,border-color .25s,color .25s;white-space:nowrap}
.btn svg{width:16px;height:16px;flex:none}
.btn-light{background:#fff;color:#000}
.btn-light:hover{transform:translateY(-2px);background:#f0f0f0}
.btn-ghost{border:1px solid var(--line-2);color:var(--ink);background:rgba(255,255,255,.02);backdrop-filter:blur(8px)}
.btn-ghost:hover{border-color:rgba(255,255,255,.4);background:rgba(255,255,255,.06)}
.btn-sm{height:38px;padding:0 16px;font-size:13px}

/* ── Official strip ──────────────────────────────────────── */
.official{position:relative;z-index:60;text-align:center;font-size:12px;color:var(--ink-3);padding:8px var(--gutter);border-bottom:1px solid var(--line);background:#000}
.official strong{color:var(--ink);font-weight:500}

/* ── Nav (ref: Consolidator) ─────────────────────────────── */
.nav{position:sticky;top:0;z-index:50;padding:14px var(--gutter);transition:padding .3s var(--ease)}
.nav-bar{max-width:var(--max);margin:0 auto;height:60px;display:flex;align-items:center;gap:24px;padding:0 10px 0 18px;border-radius:16px;border:1px solid transparent;transition:background .35s,border-color .35s,backdrop-filter .35s}
.nav.scrolled{background:linear-gradient(180deg,rgba(5,5,5,.97) 0%,rgba(5,5,5,.9) 100%)}
.nav.scrolled .nav-bar{background:rgba(12,12,14,.72);border-color:var(--line);backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%)}
.brand{display:flex;align-items:center;gap:10px;flex:none}
.brand img{width:30px;height:30px}
.brand span{font-family:var(--display);font-weight:600;font-size:17px;letter-spacing:-.02em}
.nav-links{display:flex;align-items:center;gap:4px;margin:0 auto}
.nav-links a{position:relative;padding:10px 14px;font-size:14px;color:var(--ink-3);transition:color .2s}
.nav-links a:hover{color:var(--ink)}
.nav-links a[aria-current="page"]{color:var(--ink)}
.nav-links a[aria-current="page"]::after{content:'';position:absolute;left:14px;right:14px;bottom:4px;height:1px;background:var(--grad);border-radius:1px}
.nav-cta{flex:none;display:flex;align-items:center;gap:8px}
.pill{display:inline-flex;align-items:center;gap:8px;height:38px;padding:0 14px 0 12px;border-radius:999px;border:1px solid var(--line-2);font-size:13px;color:var(--ink);background:rgba(255,255,255,.03);transition:border-color .2s,background .2s}
.pill:hover{border-color:rgba(255,255,255,.35);background:rgba(255,255,255,.06)}
.pill .dot{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 10px var(--green)}
.menu-btn{display:none;width:42px;height:42px;border-radius:12px;border:1px solid var(--line-2);align-items:center;justify-content:center}
.menu-btn span{display:block;width:16px;height:1.5px;background:var(--ink);position:relative;transition:transform .3s var(--ease),background .2s}
.menu-btn span::before,.menu-btn span::after{content:'';position:absolute;left:0;width:16px;height:1.5px;background:var(--ink);transition:transform .3s var(--ease)}
.menu-btn span::before{top:-5px}.menu-btn span::after{top:5px}
.menu-btn[aria-expanded="true"] span{background:transparent}
.menu-btn[aria-expanded="true"] span::before{transform:translateY(5px) rotate(45deg)}
.menu-btn[aria-expanded="true"] span::after{transform:translateY(-5px) rotate(-45deg)}
.mobile-menu{position:fixed;inset:0;z-index:45;background:rgba(5,5,5,.97);backdrop-filter:blur(20px);display:flex;flex-direction:column;justify-content:center;padding:100px var(--gutter) 40px;gap:4px;opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s}
.mobile-menu.open{opacity:1;visibility:visible}
.mobile-menu>a{font-family:var(--display);font-size:clamp(28px,8vw,40px);letter-spacing:-.03em;color:var(--ink-3);padding:6px 0;transition:color .2s}
.mobile-menu>a:hover,.mobile-menu>a[aria-current="page"]{color:var(--ink)}
.mobile-menu .mm-foot{margin-top:28px;display:flex;gap:10px;flex-wrap:wrap}
@media(max-width:960px){
  .nav-links,.nav-cta .pill{display:none}
  .menu-btn{display:inline-flex}
  .nav-cta{margin-left:auto}
}

/* ── Scroll reveal ───────────────────────────────────────── */
/* Content below the hero fades in as it scrolls into view. It is only hidden while the
   site script runs (html.js); if the script never arrives, .no-reveal shows everything. */
.js .reveal{opacity:0;transform:translateY(24px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.js .reveal.in,.no-reveal .reveal{opacity:1;transform:none}
.reveal-d1{transition-delay:.08s}.reveal-d2{transition-delay:.16s}.reveal-d3{transition-delay:.24s}
/* The page hero does not wait for the scroll reveal: it appears as soon as its fonts are in (at most 1.2 s), so nothing jumps, and rises into place. */
.js .hero .reveal,.js .phero .reveal{opacity:1;transform:none;animation:heroRise .7s var(--ease) both}
.js .hero .reveal-d1,.js .phero .reveal-d1{animation-delay:.06s}.js .hero .reveal-d2,.js .phero .reveal-d2{animation-delay:.12s}.js .hero .reveal-d3,.js .phero .reveal-d3{animation-delay:.18s}
@keyframes heroRise{from{opacity:.35;transform:translateY(14px)}to{opacity:1;transform:none}}
.js.hero-wait .hero .reveal,.js.hero-wait .phero .reveal{opacity:0;animation:none}

/* ── Quote band ─────────────────────────────────────────── */
.quote-band{border-block:1px solid var(--line);padding:18px var(--gutter)}
.quote-band .wrap{display:flex;align-items:baseline;gap:18px;flex-wrap:wrap;justify-content:center;text-align:center}
.quote-band .tag{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--green)}
.quote-band q{quotes:none;font-family:var(--display);font-size:16px;color:var(--ink-2)}
.quote-band q b{color:var(--ink);font-weight:500}

/* ── Sections ───────────────────────────────────────────── */
.section{padding:clamp(80px,12vw,150px) 0}
.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;flex-wrap:wrap;margin-bottom:clamp(36px,5vw,56px)}
.section-head .h-section{margin-top:16px}

/* ==========================================================================
   HOME — Expanding journey cards (ref: Think School "Built for …")
   ========================================================================== */
.built{text-align:center}
.built .h-section{margin:0 auto}
.rotator{display:inline-block;position:relative;vertical-align:bottom;height:1.08em;color:var(--ink);text-align:left;white-space:nowrap;transition:width .55s var(--ease)}
.rotator span{position:absolute;left:0;bottom:0;transition:opacity .45s var(--ease),transform .45s var(--ease),filter .45s}
.rotator span:not(.on){opacity:0;transform:translateY(.35em);filter:blur(6px)}
.built .h-section .dim{color:var(--ink-3)}
.xcards{display:flex;gap:10px;height:clamp(380px,44vw,520px);margin-top:clamp(36px,5vw,56px);text-align:left}
.xcard{position:relative;flex:1 1 0;min-width:0;border-radius:var(--r);overflow:hidden;border:1px solid var(--line);background:var(--card);transition:flex-grow .7s var(--ease),border-color .4s;isolation:isolate;cursor:pointer}
.xcard.active{flex-grow:6;border-color:var(--line-2)}
.xcard-art{position:absolute;inset:0;z-index:-1}
.xcard-art::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.85) 0%,rgba(0,0,0,.2) 55%,rgba(0,0,0,.35) 100%)}
.xcard .word{position:absolute;right:-.06em;top:.02em;font-family:var(--display);font-weight:700;font-size:clamp(90px,12vw,190px);line-height:.85;letter-spacing:-.05em;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.14);white-space:nowrap;transition:opacity .6s;opacity:0}
.xcard.active .word{opacity:1}
.xcard .glow{position:absolute;inset:-20%;filter:blur(40px);opacity:.75;transition:opacity .6s,transform 1.2s var(--ease)}
.xcard.active .glow{opacity:1;transform:scale(1.08)}
.xcard-label{position:absolute;left:0;right:0;bottom:18px;text-align:center;font-size:12.5px;font-weight:500;color:var(--ink);transition:opacity .3s;white-space:nowrap}
.xcard.active .xcard-label{opacity:0}
.xcard-body{position:absolute;left:clamp(20px,3vw,36px);right:clamp(20px,3vw,36px);bottom:clamp(20px,3vw,34px);max-width:460px;opacity:0;transform:translateY(12px);transition:opacity .45s .05s,transform .6s var(--ease);pointer-events:none}
.xcard.active .xcard-body{opacity:1;transform:none;transition-delay:.25s;pointer-events:auto}
.xcard-kicker{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3)}
.xcard-title{font-family:var(--display);font-weight:500;font-size:clamp(26px,2.6vw,36px);letter-spacing:-.03em;line-height:1.05;margin:8px 0 10px}
.xcard-desc{color:var(--ink-2);font-size:15px;line-height:1.55;max-width:400px}
.xcard-go{display:inline-flex;align-items:center;gap:8px;margin-top:18px;font-size:13px;font-weight:600;color:#000;background:#fff;height:38px;padding:0 16px;border-radius:999px;transition:transform .25s var(--ease)}
.xcard-go:hover{transform:translateX(3px)}
.xcard-num{position:absolute;top:16px;left:0;right:0;text-align:center;font-size:11px;color:var(--ink-3);letter-spacing:.1em;transition:opacity .3s}
.xcard.active .xcard-num{left:clamp(20px,3vw,36px);text-align:left}
@media(max-width:880px){
  .xcards{flex-direction:column;height:auto}
  .xcard{flex:none;height:68px;transition:height .6s var(--ease),border-color .4s}
  .xcard.active{height:380px}
  .xcard-label{bottom:auto;top:50%;transform:translateY(-50%);text-align:left;left:56px;font-size:15px}
  .xcard-num{top:50%;transform:translateY(-50%);left:20px;right:auto;text-align:left}
  .xcard.active .xcard-num{top:18px;transform:none}
  .xcard .word{font-size:120px}
}

/* ==========================================================================
   HOME — YouTube marquee (ref: Think School podcast row)
   ========================================================================== */
.yt{position:relative;overflow:hidden}
.yt-bgword{position:absolute;left:50%;top:clamp(110px,14vw,170px);transform:translateX(-50%);font-family:var(--display);font-weight:700;font-size:clamp(120px,22vw,340px);letter-spacing:-.06em;line-height:1;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.05);white-space:nowrap;pointer-events:none;user-select:none}
.marquee{position:relative;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.marquee-track{display:flex;gap:14px;width:max-content;padding:6px 0;animation:marquee 60s linear infinite}
.marquee:hover .marquee-track,.marquee:focus-within .marquee-track{animation-play-state:paused}
@keyframes marquee{to{transform:translateX(calc(-50% - 7px))}}
.vcard{position:relative;flex:none;width:clamp(260px,26vw,360px);border-radius:14px;overflow:hidden;background:var(--card);border:1px solid var(--line);transition:transform .45s var(--ease),border-color .3s}
.vcard:hover{transform:translateY(-6px);border-color:var(--line-2)}
.vcard-thumb{position:relative;aspect-ratio:16/9;overflow:hidden;background:linear-gradient(135deg,#1b1b21,#0d0d10)}
.vcard-thumb img{width:100%;height:100%;object-fit:cover;filter:saturate(.85);transition:transform .8s var(--ease),filter .4s}
.vcard:hover .vcard-thumb img{transform:scale(1.05);filter:saturate(1.05)}
.vcard-thumb::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.55),transparent 55%)}
.vcard .play{opacity:0;transform:scale(.85)}
.vcard:hover .play{opacity:1;transform:scale(1)}
.vcard-title{padding:14px 16px 16px;font-family:var(--display);font-weight:500;font-size:15px;line-height:1.35;letter-spacing:-.01em;min-height:72px}
.vcard-title small{display:block;font-family:var(--body);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin-bottom:4px}
.yt-row2 .marquee-track{animation-direction:reverse;animation-duration:70s}
.yt-row2{margin-top:14px}

/* ==========================================================================
   HOME — Bento "why" cards (ref: Think School "Why Learn With Us?")
   ========================================================================== */
.bento{display:grid;grid-template-columns:1.25fr 1fr;grid-template-rows:repeat(2,minmax(250px,auto));gap:14px}
.bcard{position:relative;border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--line);background:var(--card);padding:clamp(24px,3vw,36px);display:flex;flex-direction:column;justify-content:flex-end;isolation:isolate;min-height:250px;transition:border-color .4s}
.bcard:hover{border-color:var(--line-2)}
.bcard h3{font-family:var(--display);font-weight:500;font-size:clamp(21px,2vw,26px);letter-spacing:-.02em;line-height:1.15;margin-bottom:10px}
.bcard p{color:var(--ink-2);font-size:15px;line-height:1.6;max-width:430px}
.bcard .kick{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3);margin-bottom:12px}
.bcard-big{grid-row:span 2;min-height:540px}
.bcard-photo{position:absolute;inset:0;z-index:-1}
.bcard-photo img{width:100%;height:100%;object-fit:cover;object-position:62% 20%;filter:grayscale(1) contrast(1.05) brightness(.7);transition:transform 1.4s var(--ease)}
.bcard:hover .bcard-photo img{transform:scale(1.04)}
.bcard-photo::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0b0b0d 8%,rgba(11,11,13,.55) 45%,rgba(11,11,13,.1) 75%),radial-gradient(70% 45% at 50% 0%,rgba(0,0,0,.6),transparent)}
/* "fog" band like the reference */
.bcard-big .fog{position:absolute;left:-10%;right:-10%;bottom:20%;height:40%;z-index:-1;background:radial-gradient(50% 50% at 50% 50%,rgba(170,170,190,.18),transparent 70%);filter:blur(20px)}
.bcard-warm{background:radial-gradient(60% 90% at 85% 0%,rgba(224,0,255,.22),transparent 70%),linear-gradient(160deg,#17121a,#0b0b0d 60%)}
.bcard-stars{background:#08080a}
.bcard-stars::before{content:'';position:absolute;inset:0;z-index:-1;opacity:.9;
  background-image:
    radial-gradient(1px 1px at 12% 22%,#fff 50%,transparent 51%),radial-gradient(1px 1px at 28% 68%,#fff 50%,transparent 51%),
    radial-gradient(1.5px 1.5px at 44% 32%,#cfffe2 50%,transparent 51%),radial-gradient(1px 1px at 61% 78%,#fff 50%,transparent 51%),
    radial-gradient(1px 1px at 72% 18%,#fff 50%,transparent 51%),radial-gradient(1.5px 1.5px at 86% 52%,#f3c9ff 50%,transparent 51%),
    radial-gradient(1px 1px at 93% 84%,#fff 50%,transparent 51%),radial-gradient(1px 1px at 6% 88%,#fff 50%,transparent 51%),
    radial-gradient(1px 1px at 52% 10%,#fff 50%,transparent 51%),radial-gradient(1px 1px at 36% 90%,#fff 50%,transparent 51%);
  background-size:260px 180px;animation:twinkle 6s ease-in-out infinite alternate}
.bcard-stars::after{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(60% 80% at 80% 100%,rgba(0,255,106,.12),transparent 70%)}
@keyframes twinkle{from{opacity:.5}to{opacity:1}}
.bento-row{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:14px}
.bento-row .bcard{min-height:230px;justify-content:space-between;background:linear-gradient(180deg,var(--card-2),var(--card))}
.bicon{width:44px;height:44px;border-radius:12px;border:1px solid var(--line-2);display:grid;place-items:center;background:rgba(255,255,255,.03)}
.bicon svg{width:20px;height:20px;stroke:var(--ink);fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.bento-row .bcard:nth-child(1) .bicon svg{stroke:var(--green)}
.bento-row .bcard:nth-child(2) .bicon svg{stroke:var(--magenta-soft)}
@media(max-width:860px){
  .bento{grid-template-columns:1fr;grid-template-rows:auto}
  .bcard-big{grid-row:auto;min-height:460px}
  .bento-row{grid-template-columns:1fr}
}

/* ==========================================================================
   HOME — Mission
   ========================================================================== */
.mission{text-align:center}
.mission blockquote{font-family:var(--display);font-weight:400;font-size:clamp(26px,3.6vw,46px);line-height:1.18;letter-spacing:-.025em;max-width:980px;margin:26px auto 0;color:var(--ink-2)}
.mission blockquote b{font-weight:500;color:var(--ink);background:linear-gradient(90deg,var(--magenta-soft),var(--green-soft));-webkit-background-clip:text;background-clip:text;color:transparent}
.sig{display:inline-flex;align-items:center;gap:12px;margin-top:34px;text-align:left}
.sig img{width:44px;height:44px;border-radius:50%;object-fit:cover;filter:grayscale(.2)}
.sig b{display:block;font-weight:600;font-size:14px}
.sig span{font-size:13px;color:var(--ink-3)}

/* ==========================================================================
   HOME — Community
   ========================================================================== */
.community{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.ccard{position:relative;display:flex;flex-direction:column;justify-content:space-between;gap:36px;min-height:220px;padding:28px;border-radius:var(--r-lg);border:1px solid var(--line);background:var(--card);overflow:hidden;isolation:isolate;transition:border-color .35s,transform .45s var(--ease)}
.ccard::before{content:'';position:absolute;inset:auto -30% -60% auto;width:80%;aspect-ratio:1;border-radius:50%;z-index:-1;filter:blur(50px);opacity:.0;transition:opacity .5s}
.ccard:hover{transform:translateY(-4px);border-color:var(--line-2)}
.ccard:hover::before{opacity:.55}
.ccard.yt::before{background:#ff2a2a}.ccard.wa::before{background:#25d366}.ccard.ig::before{background:var(--magenta)}
.ccard-top{display:flex;justify-content:space-between;align-items:center}
.ccard-top svg{width:28px;height:28px}
.ccard-top .arr{width:36px;height:36px;border-radius:50%;border:1px solid var(--line-2);display:grid;place-items:center;transition:background .3s,color .3s}
.ccard:hover .arr{background:#fff;color:#000}
.ccard b{font-family:var(--display);font-weight:500;font-size:clamp(40px,4.4vw,60px);letter-spacing:-.04em;line-height:1}
.ccard .cl{color:var(--ink-3);font-size:14px;margin-top:6px}
@media(max-width:860px){.community{grid-template-columns:1fr}}

/* ==========================================================================
   Final CTA + footer
   ========================================================================== */
.final{position:relative;text-align:center;overflow:hidden;isolation:isolate}
.final::before{content:'';position:absolute;left:50%;top:50%;width:min(900px,120vw);aspect-ratio:2/1;transform:translate(-50%,-50%);z-index:-1;background:radial-gradient(50% 50% at 35% 50%,rgba(224,0,255,.22),transparent 70%),radial-gradient(45% 45% at 68% 55%,rgba(0,255,106,.14),transparent 70%);filter:blur(30px)}
.final .h-section{font-size:clamp(40px,6.4vw,88px);max-width:900px;margin:18px auto 0}
.final p{color:var(--ink-2);max-width:520px;margin:22px auto 0}
.final .hero-actions{justify-content:center}
.improve{margin-top:28px;font-size:13px;color:var(--ink-3)}
.improve a{color:var(--ink);border-bottom:1px solid var(--line-2);padding-bottom:1px}
.improve a:hover{border-color:var(--magenta)}

.footer{border-top:1px solid var(--line);padding:64px 0 0;overflow:hidden}
.footer-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:32px}
.footer-grid p{color:var(--ink-3);font-size:14px;max-width:300px;margin-top:14px}
.footer h2{font-family:var(--body);line-height:1.6;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3);font-weight:500;margin-bottom:14px}
.footer ul{list-style:none;display:flex;flex-direction:column;gap:8px}
.footer li a{font-size:14px;color:var(--ink-2);transition:color .2s}
.footer li a:hover{color:var(--ink)}
.footer-mark{font-family:var(--display);font-weight:700;font-size:min(12.6vw,164px);letter-spacing:-.06em;line-height:.8;white-space:nowrap;text-align:center;margin-top:64px;background:linear-gradient(180deg,rgba(255,255,255,.14),rgba(255,255,255,0) 85%);-webkit-background-clip:text;background-clip:text;color:transparent;user-select:none}
.footer-copy{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:18px 0 26px;border-top:1px solid var(--line);font-size:12.5px;color:var(--ink-3)}
@media(max-width:860px){.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .reveal,.js .reveal{opacity:1;transform:none}
  .marquee{overflow-x:auto}
}

/* ==========================================================================
   BRAND MOTIF — "Abflug": the India → Germany departure board
   Split-flap tiles, boarding pass, aircraft window, flight path, clocks.
   ========================================================================== */

/* Split-flap board text */
.flap{display:inline-flex;gap:.06em;font-family:var(--mono);font-weight:700;line-height:1;vertical-align:bottom}
.flap i{position:relative;display:inline-grid;place-items:center;width:.78em;height:1.12em;font-style:normal;border-radius:.09em;
  background:linear-gradient(180deg,#1d1d22 0%,#16161a 49.5%,#0c0c0f 50.5%,#141418 100%);color:#fff;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 2px 0 rgba(0,0,0,.6)}
.flap i::after{content:'';position:absolute;left:0;right:0;top:50%;height:1px;background:rgba(0,0,0,.85)}
.flap i.flip{animation:flip .09s linear}
@keyframes flip{0%{transform:scaleY(1)}50%{transform:scaleY(.2)}100%{transform:scaleY(1)}}
.flap.is-green i{color:var(--green)} .flap.is-m i{color:var(--magenta-soft)}

/* Clocks in the nav */
.clocks{display:flex;gap:14px;font-family:var(--mono);font-size:12px;color:var(--ink-3);letter-spacing:.02em}
.clocks b{color:var(--ink);font-weight:400;margin-left:6px}
@media(max-width:1200px){.clocks{display:none}}

/* Mono labels everywhere the "board" speaks */
.eyebrow{font-family:var(--mono);letter-spacing:.14em;font-size:11.5px}
.h-section{font-size:clamp(34px,4.4vw,84px)}

/* ── HERO ─────────────────────────────────────────────── */
.hero{position:relative;overflow:hidden;isolation:isolate;margin-top:-88px;padding-top:88px}
.hero::before{content:'';position:absolute;inset:0;z-index:-2;opacity:.5;
  background-image:radial-gradient(rgba(255,255,255,.09) 1px,transparent 1.2px);background-size:28px 28px;
  -webkit-mask-image:radial-gradient(90% 80% at 60% 40%,#000 30%,transparent 80%);mask-image:radial-gradient(90% 80% at 60% 40%,#000 30%,transparent 80%)}
.hero-grid{max-width:var(--max);margin:0 auto;padding:clamp(28px,6vh,80px) var(--gutter) clamp(48px,8vh,100px);display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(32px,5vw,110px);align-items:center}
.board-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap;font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}
.board-row .live{display:inline-flex;align-items:center;gap:8px;color:var(--green)}
.board-row .live::before{content:'';width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 10px var(--green);animation:blink 1.6s steps(2,start) infinite}
@keyframes blink{50%{opacity:.25}}
.hero h1{margin:26px 0 0;font-family:var(--display);font-weight:500;letter-spacing:-.045em;line-height:.95}
.hero h1 .flap{font-size:clamp(28px,3.4vw,64px)}
.hero h1 .name{display:block;margin-top:.14em;font-size:clamp(52px,6.8vw,132px)}
.hero h1 .name span{color:var(--magenta-soft)}
.hero-sub{max-width:560px;margin-top:28px;color:var(--ink-2);font-size:clamp(16px,1.25vw,21px);line-height:1.55}
.hero-sub strong{color:var(--ink);font-weight:500}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:36px}
.hero-stats{display:flex;gap:0;margin-top:clamp(40px,6vh,72px);border:1px solid var(--line);border-radius:14px;overflow:hidden;width:fit-content;max-width:100%}
.hero-stats div{padding:14px clamp(16px,2vw,28px);border-right:1px solid var(--line)}
.hero-stats div:last-child{border-right:0}
.hero-stats b{display:block;font-family:var(--mono);font-weight:700;font-size:clamp(18px,1.6vw,26px);color:var(--ink)}
.hero-stats span{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)}

/* Aircraft window with the portrait */
.hero-visual{position:relative;justify-self:center;width:min(100%,540px,calc(64vh * .73))}
.window{position:relative;aspect-ratio:3/4.1;border-radius:46% / 34%;padding:clamp(12px,1.2vw,18px);
  background:linear-gradient(160deg,#2a2a31,#121216 55%,#1b1b20);box-shadow:0 40px 120px -30px rgba(224,0,255,.35),0 0 0 1px rgba(255,255,255,.06),inset 0 1px 0 rgba(255,255,255,.12)}
.window-in{position:relative;width:100%;height:100%;border-radius:inherit;overflow:hidden;background:#0d0d10;box-shadow:inset 0 0 0 1px rgba(0,0,0,.8)}
.window-in img{width:100%;height:100%;object-fit:cover;object-position:50% 16%;filter:contrast(1.05) saturate(.9)}
.window-in::after{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;
  background:linear-gradient(115deg,rgba(255,255,255,.14) 0%,rgba(255,255,255,0) 28%),radial-gradient(80% 60% at 50% 110%,rgba(0,0,0,.55),transparent 70%);
  box-shadow:inset 0 0 40px rgba(0,0,0,.65)}
.window-shade{position:absolute;left:12%;right:12%;top:0;height:5%;border-radius:0 0 40% 40%;background:rgba(0,0,0,.25)}

/* Boarding pass */
.pass{position:absolute;left:clamp(-130px,-7vw,-40px);bottom:-9%;width:min(360px,86%);display:grid;grid-template-columns:1fr 78px;border-radius:14px;background:#f4f2ee;color:#111;font-family:var(--mono);box-shadow:0 30px 60px -20px rgba(0,0,0,.8);transform:rotate(-3deg);transition:transform .5s var(--ease)}
.pass:hover{transform:rotate(-1deg) translateY(-4px)}
.pass-main{padding:14px 16px 14px 18px}
.pass-top{display:flex;justify-content:space-between;font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:#6b6b70}
.pass-route{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:8px 0 10px}
.pass-route b{display:block;font-size:26px;font-weight:700;letter-spacing:-.02em;line-height:1}
.pass-route small{display:block;font-size:9.5px;color:#6b6b70;letter-spacing:.06em}
.pass-route svg{flex:1;height:14px}
.pass-fields{display:grid;grid-template-columns:repeat(3,auto);gap:4px 14px;font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:#6b6b70}
.pass-fields b{display:block;font-size:13px;color:#111;letter-spacing:0;font-weight:700}
.pass-fields .ok{color:#008f3c}
.pass-stub{position:relative;border-left:2px dashed #cfccc5;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:10px 6px}
.pass-stub::before,.pass-stub::after{content:'';position:absolute;left:-9px;width:16px;height:16px;border-radius:50%;background:var(--bg)}
.pass-stub::before{top:-8px}.pass-stub::after{bottom:-8px}
.barcode{width:46px;height:64px;background:repeating-linear-gradient(0deg,#111 0 2px,transparent 2px 4px,#111 4px 5px,transparent 5px 8px,#111 8px 11px,transparent 11px 12px)}
.pass-stub span{font-size:8.5px;letter-spacing:.12em;writing-mode:vertical-rl;transform:rotate(180deg);color:#6b6b70}

/* Flight path across the hero */
.route{position:absolute;inset:auto 0 0 0;height:60%;z-index:-1;pointer-events:none;width:100%}
.route .lbl{font-family:var(--mono);font-size:11px;letter-spacing:.14em;fill:#7c7c83}

@media(max-width:980px){
  .hero-grid{grid-template-columns:1fr;min-height:auto;padding-top:24px}
  .hero-visual{order:-1;width:min(78%,380px);margin-bottom:28px}
  .pass{left:auto;right:-14%;bottom:-18%;width:260px}
  .hero-visual{margin-bottom:120px}
  .pass-route b{font-size:20px}
  .route{display:none}
}
@media(max-width:520px){
  .hero-visual{width:70%;justify-self:start;margin-left:4%}
  .pass{right:-14%;bottom:-27%;width:250px;grid-template-columns:1fr 50px}
  .pass-main{padding:12px 10px 12px 14px}
  .barcode{width:26px;height:52px}
  .pass-stub span{display:none}
  .pass-fields b{font-size:11.5px}
  .pass-route b{font-size:18px}
  .pass-fields{grid-template-columns:repeat(3,auto);gap:2px 10px}
  .hero-stats{width:100%}.hero-stats div{flex:1;padding:12px}
}

/* ── Journey board (expanding cards, board styling) ───── */
.built .h-section .flap{font-size:.8em}
.built .sub-en{display:block;margin-top:16px;font-family:var(--mono);font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3)}
.xcard-num{font-family:var(--mono)}
.xcard-label{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;writing-mode:vertical-rl;transform:rotate(180deg);left:50%;right:auto;bottom:22px;margin-left:-.6em}
.xcard::before{content:'';position:absolute;left:0;right:0;top:50%;height:1px;background:rgba(0,0,0,.7);z-index:1;pointer-events:none}
.xcard-status{position:absolute;top:16px;right:clamp(20px,3vw,36px);font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--green);opacity:0;transition:opacity .4s}
.xcard.active .xcard-status{opacity:1}
.xcard-kicker{font-family:var(--mono)}
@media(max-width:880px){.xcard-label{writing-mode:horizontal-tb;transform:translateY(-50%);left:112px;margin-left:0;bottom:auto}.xcard::before{display:none}.xcard-status{display:none}}
@media(max-width:860px){.bcard-big .stamp{top:clamp(18px,2vw,28px);bottom:auto}}

/* ── Stamps on the value cards ───────────────────────── */
.stamp{position:absolute;top:clamp(18px,2vw,28px);right:clamp(18px,2vw,28px);width:clamp(84px,7vw,110px);aspect-ratio:1;transform:rotate(-12deg);opacity:.9;pointer-events:none}
.stamp text{font-family:var(--mono);font-weight:700;font-size:10.5px;letter-spacing:2.6px}
.bcard-big .stamp{top:auto;bottom:clamp(24px,3vw,36px)}

/* ── Bordprogramm (video row) ────────────────────────── */
.vcard-title small{font-family:var(--mono)}
.now-showing{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin-top:14px}
.now-showing::before{content:'';width:7px;height:7px;border-radius:50%;background:#ff3b3b;box-shadow:0 0 10px #ff3b3b;animation:blink 1.6s steps(2,start) infinite}

.play{position:absolute;z-index:1;left:50%;top:50%;width:42px;height:42px;margin:-21px 0 0 -21px;border-radius:50%;background:rgba(255,255,255,.92);display:grid;place-items:center;transition:transform .3s var(--ease),opacity .3s}
.play svg{width:14px;height:14px;margin-left:2px;fill:#000}


/* ==========================================================================
   REVISION 3 — logo lockup, journey fixes, bento photo, hero composition
   ========================================================================== */
/* Logo lockup */
.brand{gap:12px}
.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;flex:none;
  background:radial-gradient(120% 120% at 30% 20%,rgba(224,0,255,.18),transparent 60%),radial-gradient(100% 100% at 80% 100%,rgba(0,255,106,.14),transparent 60%),#0e0e11;
  border:1px solid var(--line-2);box-shadow:inset 0 1px 0 rgba(255,255,255,.06)}
.brand-mark img{width:28px;height:28px}
.brand-text{display:flex;flex-direction:column;line-height:1.05}
.brand-text b{font-family:var(--display);font-weight:600;font-size:18px;letter-spacing:-.025em;color:var(--ink)}
.brand-text small{margin-top:4px;font-family:var(--mono);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3)}
.brand:hover .brand-mark{border-color:rgba(255,255,255,.3)}
.footer .brand-text b{font-size:20px}

/* Journey cards: no seam line; outline word always fits the open card */
.xcard::before{display:none}
.xcard{container-type:inline-size}
.xcard .word{left:clamp(20px,3vw,36px);right:auto;top:44px;font-size:min(calc(88cqw / (var(--n,7) * .64)),200px);-webkit-text-stroke:1px rgba(255,255,255,.12)}
.xcard-label{bottom:26px}

/* Flip tiles: comma stays inside the row, no blank tiles */
.flap{transition:width .3s var(--ease)}

/* Bento: show the waterfall photo in portrait on the right side of the card */
.bcard-big{justify-content:flex-end}
.bcard-big .bcard-photo{left:auto;width:min(58%,560px)}
.bcard-big .bcard-photo img{object-position:50% 12%;-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 38%);mask-image:linear-gradient(90deg,transparent 0%,#000 38%)}
.bcard-big .bcard-photo::after{background:linear-gradient(0deg,#101012 0%,rgba(16,16,18,0) 40%)}
.bcard-big>.kick,.bcard-big>h3,.bcard-big>p{max-width:min(46%,440px)}
.bcard-big .stamp{bottom:auto;top:clamp(18px,2vw,28px);left:clamp(24px,3vw,36px);right:auto}
@media(max-width:860px){
  .bcard-big{min-height:560px}
  .bcard-big .bcard-photo{width:100%;height:62%}
  .bcard-big .bcard-photo img{-webkit-mask-image:linear-gradient(0deg,transparent 0%,#000 40%);mask-image:linear-gradient(0deg,transparent 0%,#000 40%)}
  .bcard-big>.kick,.bcard-big>h3,.bcard-big>p{max-width:none}
  .bcard-big .stamp{left:auto;right:18px}
}


.section.final{padding-top:clamp(40px,6vw,90px)}



/* ==========================================================================
   HOME — "Where do I start?" check-in helper
   ========================================================================== */
.checkin{padding-bottom:clamp(40px,6vw,80px)}
.checkin-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(32px,6vw,120px);align-items:center}
.checkin .h-section{margin-top:16px}
.checkin .lede{margin-top:18px}
.checkin-small{margin-top:14px;font-size:13px;color:var(--ink-3)}
.kiosk{position:relative;border-radius:var(--r-lg);border:1px solid var(--line-2);background:linear-gradient(180deg,#121216,#0b0b0d);padding:clamp(20px,2.4vw,32px);box-shadow:0 40px 90px -40px rgba(224,0,255,.35);min-height:420px;display:flex;flex-direction:column}
.kiosk-top{display:flex;justify-content:space-between;font-family:var(--mono);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}
.kiosk-step{color:var(--green)}
.kiosk-bar{height:2px;margin:14px 0 22px;background:var(--line);border-radius:2px;overflow:hidden}
.kiosk-bar i{display:block;height:100%;width:33.33%;background:var(--grad);transition:width .5s var(--ease)}
.kq{border:0;min-width:0;display:none}
.kq.is-on{display:block;animation:kin .45s var(--ease)}
@keyframes kin{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.kq legend{font-family:var(--display);font-weight:500;font-size:clamp(22px,2vw,30px);letter-spacing:-.025em;margin-bottom:18px;padding:0}
.kopts{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.kopts button{text-align:left;padding:16px 18px;border-radius:14px;border:1px solid var(--line-2);background:rgba(255,255,255,.02);transition:border-color .2s,background .2s,transform .25s var(--ease)}
.kopts button:hover{border-color:rgba(255,255,255,.35);background:rgba(255,255,255,.05);transform:translateY(-2px)}
.kopts button[aria-pressed="true"]{border-color:var(--green);background:rgba(0,255,106,.06)}
.kopts b{display:block;font-family:var(--display);font-weight:500;font-size:16.5px;letter-spacing:-.01em}
.kopts small{display:block;margin-top:3px;font-size:12.5px;color:var(--ink-3)}
.kresult{animation:kin .5s var(--ease)}
.kr-head{display:flex;justify-content:space-between;align-items:center;font-family:var(--mono);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase}
.kr-kicker{color:var(--green)}
.kr-gleis{color:var(--ink-3)}
.kr-title{font-family:var(--display);font-weight:500;font-size:clamp(22px,2vw,30px);letter-spacing:-.025em;margin:10px 0 16px;line-height:1.15}
.kr-steps{list-style:none;display:flex;flex-direction:column;gap:8px;counter-reset:kr}
.kr-steps a{display:grid;grid-template-columns:34px 1fr auto;gap:12px;align-items:center;padding:12px 14px;border-radius:12px;border:1px solid var(--line);background:rgba(255,255,255,.02);transition:border-color .2s,background .2s}
.kr-steps a:hover{border-color:rgba(255,255,255,.3);background:rgba(255,255,255,.05)}
.kr-steps a::before{counter-increment:kr;content:counter(kr,decimal-leading-zero);font-family:var(--mono);font-size:12px;color:var(--green)}
.kr-steps b{display:block;font-weight:600;font-size:14.5px}
.kr-steps small{display:block;font-size:12.5px;color:var(--ink-3);margin-top:2px}
.kr-steps i{font-style:normal;color:var(--ink-3)}
.kr-notes{margin-top:14px;display:flex;flex-direction:column;gap:8px}
.kr-notes p{font-size:13.5px;line-height:1.55;color:var(--ink-2);padding:10px 12px;border-left:2px solid var(--magenta);background:rgba(224,0,255,.05);border-radius:0 8px 8px 0}
.kr-notes a{color:var(--ink);border-bottom:1px solid var(--line-2)}
.kiosk-foot{display:flex;justify-content:space-between;margin-top:auto;padding-top:18px}
.kback,.kreset{font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);padding:6px 0}
.kback:hover,.kreset:hover{color:var(--ink)}
.kreset{margin-left:auto}
@media(max-width:860px){.checkin-grid{grid-template-columns:1fr}.kiosk{min-height:0}}
@media(max-width:420px){.kopts{grid-template-columns:1fr}}

/* ==========================================================================
   HOME — Student stories
   ========================================================================== */
.story-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:14px;align-items:stretch}
.story{position:relative;margin:0;display:flex;flex-direction:column;justify-content:space-between;gap:28px;padding:clamp(24px,3vw,40px);border-radius:var(--r-lg);border:1px solid var(--line);background:linear-gradient(180deg,var(--card-2),var(--card));overflow:hidden;isolation:isolate}
.story-mark{position:absolute;right:18px;top:-30px;z-index:-1;font-family:var(--display);font-weight:700;font-size:220px;line-height:1;color:rgba(224,0,255,.08)}
.story blockquote{font-family:var(--display);font-weight:400;font-size:clamp(18px,1.5vw,23px);line-height:1.45;letter-spacing:-.012em;color:var(--ink)}
.story figcaption{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.story-av{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#1d1d23;border:1px solid var(--line-2);font-family:var(--mono);font-size:12px;color:var(--ink-2)}
.story figcaption b{display:block;font-size:14.5px;font-weight:600}
.story figcaption small{display:block;font-size:12.5px;color:var(--ink-3)}
.story-tag{margin-left:auto;font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);border:1px solid var(--line-2);border-radius:999px;padding:6px 10px}
@media(max-width:860px){.story-grid{grid-template-columns:1fr}.story-tag{margin-left:0}}
.kr-title:focus{outline:none}

/* ==========================================================================
   COST CALCULATOR (cost-calculator.html)
   ========================================================================== */
.calc-hero{padding:clamp(40px,7vw,110px) 0 clamp(28px,4vw,56px)}
.calc-hero h1{font-family:var(--display);font-weight:500;font-size:clamp(40px,6vw,104px);line-height:.98;letter-spacing:-.04em;margin:18px 0 22px;max-width:17ch}
.calc-hero h1 span{color:var(--green);white-space:nowrap}
.calc-hero p{color:var(--ink-2);font-size:clamp(16px,1.2vw,20px);max-width:620px}
.calc{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:clamp(20px,3vw,48px);align-items:start;padding-bottom:clamp(60px,8vw,120px)}
.cgroup{border:1px solid var(--line);border-radius:var(--r-lg);background:linear-gradient(180deg,var(--card-2),var(--card));padding:clamp(18px,2vw,28px);margin-bottom:14px}
.cgroup-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:6px}
.cgroup-head h2{font-family:var(--display);font-weight:500;font-size:clamp(20px,1.6vw,24px);letter-spacing:-.02em}
.cgroup-head span{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}
.cgroup>p{font-size:13.5px;color:var(--ink-3);margin-bottom:8px}
.crow{display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:16px;align-items:center;padding:14px 0;border-top:1px solid var(--line)}
.crow:first-of-type{border-top:0}
.crow label,.crow .clabel{font-weight:600;font-size:15px}
.crow small{display:block;margin-top:3px;font-size:12.5px;color:var(--ink-3);line-height:1.45;font-weight:400}
.crow small a{color:var(--ink-2);border-bottom:1px solid var(--line-2)}
.cin{display:flex;align-items:center;border:1px solid var(--line-2);border-radius:12px;background:#0a0a0c;overflow:hidden;transition:border-color .2s}
.cin:focus-within{border-color:var(--green);box-shadow:0 0 0 2px rgba(0,255,106,.35)}
.cin span{padding:0 10px 0 12px;font-family:var(--mono);font-size:13px;color:var(--ink-3)}
.cin input,.cin select{flex:1;min-width:0;height:44px;background:transparent;border:0;color:var(--ink);font:500 15px var(--mono);padding-right:12px;text-align:right}
.cin select{text-align:left;padding-left:12px;appearance:none;cursor:pointer}
.cin input:focus,.cin select:focus{outline:none}
.cout{font-family:var(--mono);font-size:12px;color:var(--ink-3);text-align:right;margin-top:5px}
.ctoggle{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--ink-2);cursor:pointer}
.ctoggle input{width:18px;height:18px;accent-color:var(--green)}
/* summary */
.csum{position:sticky;top:104px;border:1px solid var(--line-2);border-radius:var(--r-lg);background:linear-gradient(180deg,#121216,#0b0b0d);padding:clamp(20px,2.2vw,30px);box-shadow:0 40px 90px -40px rgba(0,255,106,.25)}
.csum-top{display:flex;justify-content:space-between;font-family:var(--mono);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}
.csum-top b{color:var(--green);font-weight:400}
.cbig{margin:18px 0 4px;font-family:var(--display);font-weight:500;font-size:clamp(38px,3.6vw,56px);letter-spacing:-.04em;line-height:1}
.cbig-eur{font-family:var(--mono);font-size:13px;color:var(--ink-3)}
.clines{margin:22px 0 18px;display:flex;flex-direction:column;gap:12px}
.cline{display:grid;grid-template-columns:10px 1fr auto;gap:10px;align-items:baseline}
.cline i{width:10px;height:10px;border-radius:3px;transform:translateY(1px)}
.cline span{font-size:14px;color:var(--ink-2)}
.cline span small{display:block;font-size:12px;color:var(--ink-3)}
.cline b{font-family:var(--mono);font-weight:500;font-size:14px}
.cstack{display:flex;height:10px;border-radius:6px;overflow:hidden;background:var(--line);margin-top:6px}
.cstack i{display:block;height:100%;transition:width .4s var(--ease)}
.k-spend{background:var(--magenta-soft)} .k-dep{background:#ffd23f} .k-blocked{background:var(--green)}
.crate{margin-top:18px;padding-top:16px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 120px;gap:10px;align-items:center}
.crate label{font-size:13px;color:var(--ink-2)}
.crate small{display:block;font-size:11.5px;color:var(--ink-3);margin-top:2px}
.crate .cin input{height:38px;font-size:14px}
.crate-live{display:inline-block;margin-top:5px;padding:0 0 1px;background:none;border:0;border-bottom:1px solid var(--line-2);font:inherit;font-size:11.5px;color:var(--ink-2);cursor:pointer}
.crate-live:hover,.crate-live:focus-visible{color:var(--ink);border-color:var(--green)}
.crate-live:disabled{cursor:progress;opacity:.7}
.crate-live[hidden]{display:none}
.cactions{display:flex;gap:10px;margin-top:18px;flex-wrap:wrap}
.cnote{margin-top:14px;font-size:12.5px;color:var(--ink-3);line-height:1.5}
.csources{padding:clamp(40px,6vw,90px) 0;border-top:1px solid var(--line)}
.csources ol{margin-top:22px;padding-left:20px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 40px}
.csources li{font-size:14px;color:var(--ink-2);line-height:1.55}
.csources li a{color:var(--ink);border-bottom:1px solid var(--line-2)}
@media(max-width:980px){.calc{grid-template-columns:1fr}.csum{position:relative;top:0;order:-1}.csources ol{grid-template-columns:1fr}}
@media(max-width:560px){.crow{grid-template-columns:1fr;gap:8px}}
@media print{.nav,.official,.mobile-menu,.footer,.cactions{display:none!important}.csum{position:static;box-shadow:none}body::after{display:none}}
.story-cta{display:flex;align-items:center;justify-content:space-between;gap:16px 24px;flex-wrap:wrap;margin-top:14px;padding:18px clamp(20px,3vw,32px);border:1px dashed var(--line-2);border-radius:var(--r-lg)}
.story-cta b{display:block;font-family:var(--display);font-weight:500;font-size:17px;letter-spacing:-.01em}
.story-cta span{display:block;margin-top:3px;font-size:14px;color:var(--ink-3)}

/* ==========================================================================
   CONTENT PAGES v3 — shared architecture for every redesigned page.
   Page identities hang off body classes (pg-study, pg-visa …) further down.
   ========================================================================== */
.phero{position:relative;isolation:isolate;overflow:hidden;margin-top:-88px;padding-top:88px}
.phero::before{content:'';position:absolute;inset:0;z-index:-2;opacity:.5;background-image:radial-gradient(rgba(255,255,255,.08) 1px,transparent 1.2px);background-size:28px 28px;-webkit-mask-image:radial-gradient(90% 80% at 65% 35%,#000 25%,transparent 80%);mask-image:radial-gradient(90% 80% at 65% 35%,#000 25%,transparent 80%)}
.phero::after{content:'';position:absolute;z-index:-1;right:-12%;top:-20%;width:62%;aspect-ratio:1;border-radius:50%;background:radial-gradient(closest-side,var(--pg-glow,rgba(224,0,255,.18)),transparent);pointer-events:none}
.phero-grid{max-width:var(--max);margin:0 auto;padding:clamp(28px,6vh,80px) var(--gutter) clamp(48px,8vh,100px);display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(32px,5vw,110px);align-items:center}
.crumbs{display:flex;gap:10px;flex-wrap:wrap;font-family:var(--mono);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}
.crumbs a:hover{color:var(--ink)}
.crumbs span[aria-current]{color:var(--ink-2)}
.phero h1{margin:22px 0 0;font-family:var(--display);font-weight:500;letter-spacing:-.045em;line-height:.95}
.phero h1 .flap{font-size:clamp(30px,3.9vw,76px)}
.phero h1 .big{display:block;margin-top:.16em;font-size:clamp(48px,7vw,136px)}
.phero h1 .big em{font-style:normal;color:var(--pg-accent,var(--green))}
.phero-sub{max-width:580px;margin-top:26px;color:var(--ink-2);font-size:clamp(16px,1.25vw,20px);line-height:1.55}
.phero-sub strong{color:var(--ink);font-weight:500}
.phero .hero-actions{margin-top:32px}
.phero-aside{margin-top:22px;font-size:14px;color:var(--ink-3)}
.phero-aside a{color:var(--ink-2);border-bottom:1px solid var(--line-2)}
.phero-aside a:hover{color:var(--ink)}
@media(max-width:980px){.phero-grid{grid-template-columns:1fr;padding-top:20px}}

/* Section navigation that follows the reader */
.subnav{position:sticky;top:88px;z-index:40;background:rgba(5,5,5,.86);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-block:1px solid var(--line)}
.subnav-in{max-width:var(--max);margin:0 auto;padding:10px var(--gutter);display:flex;gap:6px;overflow-x:auto;scrollbar-width:none}
.subnav-in::-webkit-scrollbar{display:none}
.subnav a{flex:none;display:inline-flex;align-items:center;gap:8px;height:34px;padding:0 14px;border-radius:999px;font-family:var(--mono);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);border:1px solid transparent;transition:color .2s,border-color .2s,background .2s}
.subnav a i{font-style:normal;color:#7a7a81}
.subnav a:hover{color:var(--ink)}
.subnav a.on{color:var(--ink);border-color:var(--line-2);background:rgba(255,255,255,.04)}
.subnav a.on i{color:var(--pg-accent,var(--green));opacity:1}
[id]{scroll-margin-top:164px}

/* Section scaffolding */
.blk{padding:clamp(72px,10vw,140px) 0 0}
.blk:last-of-type{padding-bottom:clamp(72px,10vw,140px)}
.blk-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.7fr);gap:24px 60px;align-items:end;margin-bottom:clamp(32px,4.5vw,56px)}
.blk-head .h-section{margin-top:16px}
.blk-head .lede{justify-self:end;max-width:460px}
.blk-num{font-family:var(--mono);color:var(--pg-accent,var(--green))}
@media(max-width:860px){.blk-head{grid-template-columns:1fr}.blk-head .lede{justify-self:start}}
.more{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--ink);border-bottom:1px solid var(--line-2);padding-bottom:2px;transition:border-color .2s}
.more:hover{border-color:var(--pg-accent,var(--green))}
.more-row{display:flex;gap:14px 28px;flex-wrap:wrap;margin-top:28px}

/* Panels & cards */
.panel{border:1px solid var(--line);border-radius:var(--r-lg);background:linear-gradient(180deg,var(--card-2),var(--card));padding:clamp(22px,2.6vw,36px)}
.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.grid4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
@media(max-width:1100px){.grid4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:860px){.grid2,.grid3{grid-template-columns:1fr}}
@media(max-width:560px){.grid4{grid-template-columns:1fr}}
.kick{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}
.h3{font-family:var(--display);font-weight:500;font-size:clamp(20px,1.7vw,26px);letter-spacing:-.02em;line-height:1.15}
.muted{color:var(--ink-3)}
.body-t{color:var(--ink-2);font-size:15px;line-height:1.65}
.body-t a,.acc-body a,.itin-body a:not(.vlink):not(.more){color:var(--ink);border-bottom:1px solid var(--line-2)}
.body-t strong,.acc-body strong{color:var(--ink);font-weight:600}

/* Tick / cross lists */
.ticks{list-style:none;display:flex;flex-direction:column;gap:12px;margin-top:18px}
.ticks li{position:relative;padding-left:32px;color:var(--ink-2);font-size:15px;line-height:1.55}
.ticks li::before{content:'';position:absolute;left:0;top:1px;width:20px;height:20px;border-radius:50%;border:1px solid rgba(0,255,106,.45);background:rgba(0,255,106,.08) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M6 10.5l2.6 2.6L14 7.5' fill='none' stroke='%2300ff6a' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/100% no-repeat}
.ticks.no li::before{border-color:rgba(233,140,255,.45);background:rgba(224,0,255,.08) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M7 7l6 6M13 7l-6 6' fill='none' stroke='%23e98cff' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E") center/100% no-repeat}

/* Tabs / segmented switch */
.seg{display:inline-flex;gap:4px;padding:4px;border:1px solid var(--line-2);border-radius:999px;background:#0a0a0c}
.seg button{height:38px;padding:0 18px;border-radius:999px;font-size:13.5px;font-weight:600;color:var(--ink-3);transition:color .2s,background .2s}
.seg button[aria-selected="true"]{background:#fff;color:#000}
.seg button:not([aria-selected="true"]):hover{color:var(--ink)}
[role="tabpanel"][hidden]{display:none}
[role="tabpanel"]{animation:kin .45s var(--ease)}

/* Info rows (requirement lists) */
.irows{display:flex;flex-direction:column}
.irow{display:grid;grid-template-columns:44px minmax(0,1fr);gap:16px;padding:18px 0;border-top:1px solid var(--line)}
.irow:first-child{border-top:0;padding-top:4px}
.irow .ico{width:44px;height:44px;border-radius:12px;border:1px solid var(--line-2);display:grid;place-items:center;background:rgba(255,255,255,.03)}
.irow .ico svg{width:20px;height:20px;fill:none;stroke:var(--pg-accent,var(--green));stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.irow b{display:block;font-weight:600;font-size:15.5px;margin-bottom:4px}
.irow p{color:var(--ink-2);font-size:14.5px;line-height:1.6}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 16px;border-radius:999px;border:1px solid var(--line-2);font-size:14px;color:var(--ink-2);background:rgba(255,255,255,.02)}
.chip i{font-style:normal;font-family:var(--mono);font-size:11px;color:var(--pg-accent,var(--green))}

/* Accordion (FAQ, playbook) */
.acc{border-top:1px solid var(--line)}
.acc-item{border-bottom:1px solid var(--line)}
.acc-item h3{margin:0}
.acc-btn{width:100%;display:grid;grid-template-columns:minmax(0,1fr) 36px;gap:20px;align-items:center;text-align:left;padding:22px 0;font-family:var(--display);font-weight:500;font-size:clamp(17px,1.35vw,21px);letter-spacing:-.015em;color:var(--ink);transition:color .2s}
.acc-btn:hover{color:#fff}
.acc-btn .pm{position:relative;width:36px;height:36px;border-radius:50%;border:1px solid var(--line-2);transition:background .25s,border-color .25s,transform .35s var(--ease)}
.acc-btn .pm::before,.acc-btn .pm::after{content:'';position:absolute;left:50%;top:50%;width:12px;height:1.5px;margin:-.75px 0 0 -6px;background:var(--ink);transition:transform .35s var(--ease)}
.acc-btn .pm::after{transform:rotate(90deg)}
.acc-btn[aria-expanded="true"] .pm{background:#fff;border-color:#fff;transform:rotate(180deg)}
.acc-btn[aria-expanded="true"] .pm::before,.acc-btn[aria-expanded="true"] .pm::after{background:#000}
.acc-btn[aria-expanded="true"] .pm::after{transform:rotate(0)}
.acc-panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .45s var(--ease)}
.acc-panel.open{grid-template-rows:1fr}
.acc-panel>div{overflow:hidden}
.acc-body{padding:0 56px 24px 0;color:var(--ink-2);font-size:15.5px;line-height:1.7}
.acc-body p+p,.acc-body p+.irows,.acc-body .irows+p{margin-top:12px}
.acc-num{font-family:var(--mono);font-size:12px;color:var(--ink-3);margin-right:14px;letter-spacing:.06em}
@media(max-width:560px){.acc-body{padding-right:0}}

/* Stat cards */
.stats3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.stat{border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(22px,2.4vw,32px);background:linear-gradient(180deg,var(--card-2),var(--card));display:flex;flex-direction:column;gap:10px}
.stat .kick{color:var(--ink-3)}
.stat b{font-family:var(--display);font-weight:500;font-size:clamp(34px,3.6vw,56px);letter-spacing:-.04em;line-height:1}
.stat b small{font-size:.42em;letter-spacing:0;color:var(--ink-3);margin-left:4px}
.stat p{color:var(--ink-2);font-size:14.5px;line-height:1.55}
@media(max-width:860px){.stats3{grid-template-columns:1fr}}

/* Kit / checklist tickets */
.tix{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.tick-card{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 64px;border-radius:16px;border:1px solid var(--line);background:var(--card);overflow:hidden;transition:transform .4s var(--ease),border-color .3s}
.tick-card:hover{transform:translateY(-4px);border-color:var(--line-2)}
.tick-main{padding:20px 20px 18px}
.tick-main .kick{color:var(--pg-accent,var(--green))}
.tick-main b{display:block;margin-top:8px;font-family:var(--display);font-weight:500;font-size:18.5px;letter-spacing:-.015em;line-height:1.2}
.tick-main span{display:block;margin-top:6px;font-size:13.5px;color:var(--ink-3);line-height:1.5}
.tick-stub{position:relative;border-left:1.5px dashed var(--line-2);display:grid;place-items:center;font-family:var(--mono);font-size:11px;letter-spacing:.14em;color:var(--ink-3);writing-mode:vertical-rl}
.tick-stub::before,.tick-stub::after{content:'';position:absolute;left:-9px;width:16px;height:16px;border-radius:50%;background:var(--bg)}
.tick-stub::before{top:-9px}.tick-stub::after{bottom:-9px}
.tick-card:hover .tick-stub{color:var(--ink)}
@media(max-width:1000px){.tix{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.tix{grid-template-columns:1fr}}

/* Inline video link */
.vlink{display:grid;grid-template-columns:132px minmax(0,1fr);gap:14px;align-items:center;margin-top:16px;padding:8px;border-radius:14px;border:1px solid var(--line);background:rgba(255,255,255,.02);max-width:520px;transition:border-color .25s,background .25s}
.vlink:hover{border-color:var(--line-2);background:rgba(255,255,255,.05)}
.vlink-t{position:relative;aspect-ratio:16/9;border-radius:9px;overflow:hidden;background:#15151a}
.vlink-t img{width:100%;height:100%;object-fit:cover}
.vlink-t .play{width:30px;height:30px;margin:-15px 0 0 -15px}
.vlink-t .play svg{width:11px;height:11px}
.vlink small{display:block;font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:#ff5a5a}
.vlink b{display:block;margin-top:4px;font-weight:600;font-size:14px;line-height:1.35;color:var(--ink)}
.vlink span{display:block;margin-top:2px;font-size:12.5px;color:var(--ink-3)}

/* Closing band */
.closer{position:relative;overflow:hidden;isolation:isolate;margin-top:clamp(72px,10vw,140px);padding:clamp(64px,9vw,130px) 0;border-top:1px solid var(--line);text-align:center}
.closer::before{content:'';position:absolute;left:50%;top:50%;width:min(900px,120vw);aspect-ratio:2/1;transform:translate(-50%,-50%);z-index:-1;background:radial-gradient(50% 50% at 40% 50%,var(--pg-glow,rgba(224,0,255,.2)),transparent 70%),radial-gradient(45% 45% at 65% 55%,rgba(0,255,106,.1),transparent 70%);filter:blur(30px)}
.closer .h-section{max-width:880px;margin:18px auto 0}
.closer p{max-width:560px;margin:20px auto 0;color:var(--ink-2)}
.closer .hero-actions{justify-content:center}

/* ── PAGE IDENTITY · Study ("Gleis 02 · Studium") ─────────────────────── */
.pg-study{--pg-accent:#00ff6a;--pg-glow:rgba(0,255,106,.16)}
/* Hero route board */
.rboard{border:1px solid var(--line-2);border-radius:var(--r-lg);background:#08080a;overflow:hidden;box-shadow:0 40px 100px -40px rgba(0,255,106,.3);font-family:var(--mono)}
.rboard-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border-bottom:1px solid var(--line);background:#0e0e11}
.rboard-top .kick b{color:#ffd23f;font-weight:400}
.rboard .seg{transform:scale(.9);transform-origin:right center}
.rboard .seg button{height:32px;font-family:var(--body);font-size:12.5px;padding:0 14px}
.rb-head,.rb-row{display:grid;grid-template-columns:44px minmax(0,.8fr) minmax(0,1fr) 92px;gap:12px;align-items:center;padding:0 18px}
.rb-head{height:34px;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3);border-bottom:1px solid var(--line)}
.rb-row{height:48px;border-bottom:1px solid rgba(255,255,255,.05);font-size:13px;color:var(--ink);transition:background .2s}
.rb-row:last-child{border-bottom:0}
.rb-row:hover{background:rgba(255,255,255,.04)}
.rb-row .n{color:#ffd23f}
.rb-row .d{text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rb-row .w{color:var(--ink-3);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rb-row .s{text-align:right;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--green)}
.rb-row .s.warn{color:#ffd23f}
.rb-row .s.pink{color:var(--magenta-soft)}
.rb-foot{display:flex;justify-content:space-between;gap:12px;padding:12px 18px;border-top:1px solid var(--line);font-size:11px;letter-spacing:.1em;color:var(--ink-3);text-transform:uppercase}
@media(max-width:560px){.rb-head,.rb-row{grid-template-columns:34px minmax(0,1fr) 78px}.rb-head .w,.rb-row .w{display:none}.rboard-top{flex-wrap:wrap}}

/* Course cards (fields of study) */
.course{position:relative;display:flex;flex-direction:column;gap:18px;border:1px solid var(--line);border-radius:var(--r-lg);padding:22px;background:linear-gradient(180deg,var(--card-2),var(--card));overflow:hidden;transition:border-color .3s,transform .45s var(--ease)}
.course:hover{border-color:var(--line-2);transform:translateY(-3px)}
.course-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.course-code{font-family:var(--mono);font-size:11px;letter-spacing:.14em;color:var(--ink-3);border:1px solid var(--line-2);border-radius:6px;padding:4px 7px}
.course-ico{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;background:rgba(0,255,106,.08);border:1px solid rgba(0,255,106,.25)}
.course-ico svg{width:20px;height:20px;fill:none;stroke:var(--green);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.course h3{font-family:var(--display);font-weight:500;font-size:19px;letter-spacing:-.015em;line-height:1.2;min-height:2.4em}
.course dl{display:grid;grid-template-columns:auto 1fr;gap:8px 14px;margin-top:auto;padding-top:14px;border-top:1px dashed var(--line-2);font-size:13px}
.course dt{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);padding-top:2px}
.course dd{text-align:right;color:var(--ink)}

/* Fit check */
.fit{position:relative;overflow:hidden}
.fit .h3{margin-top:10px}
.fit-yes{background:radial-gradient(70% 80% at 100% 0%,rgba(0,255,106,.12),transparent 70%),linear-gradient(180deg,var(--card-2),var(--card))}
.fit-no{background:radial-gradient(70% 80% at 100% 0%,rgba(224,0,255,.12),transparent 70%),linear-gradient(180deg,var(--card-2),var(--card))}

/* Flight-plan itinerary */
.itin-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:28px}
.itin{position:relative;list-style:none;display:flex;flex-direction:column}
.itin::before{content:'';position:absolute;left:31px;top:12px;bottom:12px;width:1px;background:repeating-linear-gradient(180deg,var(--line-2) 0 6px,transparent 6px 12px)}
.itin-step{position:relative;display:grid;grid-template-columns:64px minmax(0,1fr);gap:clamp(16px,2.4vw,32px);padding:0 0 clamp(26px,3vw,40px)}
.itin-dot{position:relative;z-index:1;width:64px;height:64px;border-radius:18px;border:1px solid var(--line-2);background:#0b0b0d;display:grid;place-items:center;font-family:var(--mono);font-size:20px;color:var(--ink)}
.itin-step.goal .itin-dot{border-color:var(--green);background:rgba(0,255,106,.08);box-shadow:0 0 0 6px rgba(0,255,106,.06)}
.itin-body{border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(20px,2.4vw,30px);background:linear-gradient(180deg,var(--card-2),var(--card));transition:border-color .3s}
.itin-step:hover .itin-body{border-color:var(--line-2)}
.itin-meta{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}
.itin-meta .tag{color:var(--pg-accent,var(--green));border:1px solid rgba(0,255,106,.3);border-radius:999px;padding:3px 9px}
.itin-body h3{margin:10px 0 10px;font-family:var(--display);font-weight:500;font-size:clamp(20px,1.8vw,27px);letter-spacing:-.02em;line-height:1.2}
.itin-body p{color:var(--ink-2);font-size:15px;line-height:1.65;max-width:760px}
.itin-body p+p{margin-top:10px}
.itin-links{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:16px}
@media(max-width:640px){.itin::before{left:21px}.itin-step{grid-template-columns:44px minmax(0,1fr);gap:14px}.itin-dot{width:44px;height:44px;border-radius:13px;font-size:15px}}
.vgrid .vcard{width:auto}
.nav-links a.in-section{color:var(--ink)}
.nav-links a.in-section::after{content:'';position:absolute;left:14px;right:14px;bottom:4px;height:1px;background:var(--line-2);border-radius:1px}
@media(max-width:560px){
  .rb-head,.rb-row{grid-template-columns:30px minmax(0,1fr) 96px}
  .rb-row .s{white-space:nowrap;font-size:10px;letter-spacing:.08em}
  .course{padding:18px;gap:14px}
  .course h3{min-height:0;font-size:18px}
  .course dl{padding-top:12px;gap:6px 12px}
}
main p,main li,.acc-body,.irow p{overflow-wrap:break-word}

/* ===== LEARN GERMAN identity · Gleis 01 · Deutsch ===== */
.pg-learn{--pg-accent:#e98cff;--pg-glow:rgba(224,0,255,.2)}
.pg-learn .h-section em,.pg-learn .phero h1 .big em{color:var(--magenta-soft)}
/* Sprachpass (hero card) */
.spass{border:1px solid var(--line-2);border-radius:var(--r-lg);background:#0a080c;overflow:hidden;box-shadow:0 40px 100px -40px rgba(224,0,255,.4);font-family:var(--mono)}
.spass-top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border-bottom:1px solid var(--line);background:#100c12}
.spass-top .kick b{color:var(--magenta-soft);font-weight:400}
.spass .seg{flex-wrap:wrap}
.spass .seg button{height:32px;font-family:var(--body);font-size:12.5px;padding:0 12px}
.stamps{list-style:none;margin:0;padding:26px 18px 8px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.stamps li{position:relative;aspect-ratio:1;display:grid;place-items:center;border-radius:50%;border:1.5px dashed rgba(255,255,255,.14);color:var(--ink-3);font-size:clamp(14px,1.5vw,22px);font-weight:700;letter-spacing:.04em;transition:all .5s var(--ease)}
.stamps li.on{border-style:solid;border-color:rgba(233,140,255,.55);color:var(--magenta-soft);background:rgba(224,0,255,.07);transform:rotate(-8deg)}
.stamps li.on:nth-child(even){transform:rotate(6deg)}
.stamps li.goal{border-color:var(--green);color:#050505;background:var(--green);box-shadow:0 0 0 5px rgba(0,255,106,.12),0 0 34px rgba(0,255,106,.35)}
.stamps li.goal::after{content:'ZIEL';position:absolute;bottom:-20px;left:50%;transform:translateX(-50%) rotate(0);font-size:9.5px;letter-spacing:.2em;color:var(--green)}
.spass [role="tabpanel"]:not([hidden]) .stamps li{animation:stampIn .45s var(--ease) both}
.spass [role="tabpanel"]:not([hidden]) .stamps li:nth-child(2){animation-delay:.06s}
.spass [role="tabpanel"]:not([hidden]) .stamps li:nth-child(3){animation-delay:.12s}
.spass [role="tabpanel"]:not([hidden]) .stamps li:nth-child(4){animation-delay:.18s}
.spass [role="tabpanel"]:not([hidden]) .stamps li:nth-child(5){animation-delay:.24s}
@keyframes stampIn{from{opacity:0;scale:1.35}to{opacity:1;scale:1}}
.spass-read{margin:22px 18px 18px;padding:16px 18px;border-radius:var(--r);background:rgba(255,255,255,.03);border:1px solid var(--line);font-family:var(--body)}
.spass-read b{display:block;font-family:var(--display);font-size:clamp(18px,1.5vw,24px);font-weight:600;color:var(--ink)}
.spass-read p{margin-top:6px;font-size:14px;line-height:1.55;color:var(--ink-2)}
.spass-read strong{color:var(--ink)}
.spass-foot{display:flex;justify-content:space-between;gap:12px;padding:12px 18px;border-top:1px solid var(--line);font-size:11px;letter-spacing:.1em;color:var(--ink-3);text-transform:uppercase}
@media (prefers-reduced-motion:reduce){.spass [role="tabpanel"] .stamps li{animation:none!important}}
/* Level ladder */
.ladder{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,1.4vw,22px);align-items:start}
.rung{position:relative;display:flex;flex-direction:column;gap:14px;padding:clamp(20px,1.8vw,28px);border-radius:var(--r-lg);border:1px solid var(--line);background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.01));transition:border-color .3s,transform .3s var(--ease)}
.rung:hover{border-color:rgba(233,140,255,.4);transform:translateY(-4px)}
.rung.r1{margin-top:clamp(0px,9vw,180px)}.rung.r2{margin-top:clamp(0px,6vw,120px)}.rung.r3{margin-top:clamp(0px,3vw,60px)}
.rung::before{content:'';position:absolute;left:-1px;right:-1px;top:-1px;height:3px;border-radius:var(--r-lg) var(--r-lg) 0 0;background:var(--magenta-soft);opacity:.7}
.rung.goal{border-color:rgba(0,255,106,.35);background:linear-gradient(180deg,rgba(0,255,106,.07),rgba(255,255,255,.01))}
.rung.goal::before{background:var(--green);opacity:1}
.rung.beyond{border-style:dashed}
.rung.beyond::before{background:var(--grad)}
.rung-lvl b{display:block;font-family:var(--mono);font-size:clamp(40px,3.6vw,68px);line-height:1;letter-spacing:-.02em;color:var(--magenta-soft)}
.rung.goal .rung-lvl b{color:var(--green)}
.rung.beyond .rung-lvl b{font-size:clamp(30px,2.6vw,48px);color:var(--ink)}
.rung-lvl span{display:block;margin-top:8px;font-family:var(--display);font-weight:600;font-size:17px;color:var(--ink)}
.rung p{font-size:14.5px;line-height:1.6;color:var(--ink-2)}
.rung-meta{display:flex;flex-wrap:wrap;gap:6px}
.rung-meta .tag{font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;color:var(--ink-2);border:1px solid var(--line-2);border-radius:999px;padding:4px 9px}
.rung-meta .tag.hot{color:#050505;background:var(--green);border-color:var(--green)}
.rung-link{font-size:13px;font-weight:600;color:var(--ink-3);transition:color .2s}
.rung-link:hover{color:var(--magenta-soft)}
.rung-bar{margin-top:auto;padding-top:6px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;font-family:var(--mono);font-size:11px;color:var(--ink-3)}
.rung-bar i{height:6px;border-radius:99px;background:rgba(255,255,255,.07);position:relative;overflow:hidden}
.rung-bar i::after{content:'';position:absolute;inset:0 auto 0 0;width:var(--h);border-radius:inherit;background:var(--magenta-soft)}
.rung.goal .rung-bar i::after{background:var(--green)}
.rung.beyond .rung-bar i::after{background:var(--grad)}
.ladder-note{margin-top:18px;font-size:13px;color:var(--ink-3)}
.ladder-note a{color:var(--ink-2);text-decoration:underline;text-underline-offset:3px}
@media(max-width:1000px){.ladder{grid-template-columns:repeat(2,minmax(0,1fr))}.rung.r1,.rung.r2,.rung.r3{margin-top:0}}
@media(max-width:620px){.ladder{grid-template-columns:minmax(0,1fr)}}
/* Gates table */
.gates{border:1px solid var(--line-2);border-radius:var(--r-lg);overflow:hidden;background:#09090b}
.gate-head,.gate{display:grid;grid-template-columns:minmax(0,1fr) 130px minmax(0,1.6fr);gap:18px;align-items:center;padding:0 clamp(16px,2vw,28px)}
.gate-head{height:40px;font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3);border-bottom:1px solid var(--line);background:#0e0e11}
.gate{padding-top:18px;padding-bottom:18px;border-bottom:1px solid rgba(255,255,255,.05);transition:background .2s}
.gate:last-child{border-bottom:0}
.gate:hover{background:rgba(255,255,255,.03)}
.gate .g{font-family:var(--display);font-weight:600;font-size:clamp(15px,1.2vw,18px);color:var(--ink)}
.gate .lv b{display:inline-block;font-family:var(--mono);font-size:22px;color:var(--magenta-soft)}
.gate .lv small{display:block;font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;color:var(--ink-3);margin-top:2px}
.gate.hi .lv b{color:var(--green)}
.gate .p{font-size:14px;line-height:1.55;color:var(--ink-2)}
.gate .p a{color:var(--ink-3);white-space:nowrap;text-decoration:underline;text-underline-offset:3px}
.gate .p a:hover{color:var(--magenta-soft)}
@media(max-width:760px){.gate-head{display:none}.gate{grid-template-columns:minmax(0,1fr) auto;gap:8px 14px}.gate .p{grid-column:1/-1}.gate .lv{text-align:right}}
/* Exam modules */
.mods{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,1.4vw,22px)}
.mod{padding:clamp(20px,1.8vw,28px);border-radius:var(--r-lg);border:1px solid var(--line);background:var(--card);display:flex;flex-direction:column;gap:10px;transition:border-color .3s}
.mod:hover{border-color:rgba(233,140,255,.4)}
.mod-ico{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:rgba(224,0,255,.1);border:1px solid rgba(233,140,255,.25)}
.mod-ico svg{width:20px;height:20px;fill:none;stroke:var(--magenta-soft);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.mod b{font-family:var(--mono);font-size:clamp(40px,3.4vw,60px);line-height:1;color:var(--ink)}
.mod b small{font-size:.3em;margin-left:6px;color:var(--ink-3);letter-spacing:.1em;text-transform:uppercase}
.mod p{font-size:14px;line-height:1.55;color:var(--ink-2)}
@media(max-width:1000px){.mods{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.mods{grid-template-columns:minmax(0,1fr)}}
.centres{margin-top:clamp(24px,3vw,40px);display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(20px,3vw,48px);align-items:start}
.centres .h3{margin-top:8px}
@media(max-width:860px){.centres{grid-template-columns:minmax(0,1fr)}}
/* Level-test promo */
.ltest{position:relative;display:grid;grid-template-columns:minmax(0,1.4fr) auto;grid-template-areas:"main meter" "cta meter";gap:18px clamp(24px,4vw,72px);align-items:center;padding:clamp(24px,3.4vw,52px);border-radius:var(--r-lg);border:1px solid rgba(233,140,255,.3);background:radial-gradient(120% 140% at 100% 0%,rgba(224,0,255,.16),transparent 55%),#0b090d;overflow:hidden;transition:border-color .3s}
.ltest:hover{border-color:var(--magenta-soft)}
.ltest-main{grid-area:main;display:flex;flex-direction:column;gap:10px}
.ltest-main .kick{color:var(--magenta-soft)}
.ltest-main b{font-family:var(--display);font-weight:600;font-size:clamp(26px,2.6vw,44px);line-height:1.1;letter-spacing:-.02em;color:var(--ink)}
.ltest-main>span:last-child{font-size:15px;line-height:1.6;color:var(--ink-2);max-width:62ch}
.ltest-cta{grid-area:cta;justify-self:start;display:inline-flex;align-items:center;height:48px;padding:0 22px;border-radius:999px;background:var(--ink);color:#050505;font-weight:600;font-size:15px;transition:transform .25s var(--ease)}
.ltest:hover .ltest-cta{transform:translateX(4px)}
.ltest-meter{grid-area:meter;display:flex;gap:8px;align-items:flex-end}
.ltest-meter i,.ltest-meter em{display:grid;place-items:end center;width:clamp(44px,4.4vw,72px);padding-bottom:10px;border-radius:12px 12px 4px 4px;font-family:var(--mono);font-style:normal;font-size:13px;color:var(--ink-2);background:rgba(255,255,255,.05);border:1px solid var(--line)}
.ltest-meter i:nth-child(1){height:70px}.ltest-meter i:nth-child(2){height:110px}.ltest-meter i:nth-child(3){height:150px}
.ltest-meter em{height:190px;color:#050505;font-size:22px;font-weight:700;background:var(--magenta-soft);border-color:var(--magenta-soft);animation:qpulse 2.4s ease-in-out infinite}
@keyframes qpulse{50%{box-shadow:0 0 40px rgba(224,0,255,.5)}}
@media(max-width:760px){.ltest{grid-template-columns:minmax(0,1fr);grid-template-areas:"meter" "main" "cta"}.ltest-meter i:nth-child(1){height:44px}.ltest-meter i:nth-child(2){height:64px}.ltest-meter i:nth-child(3){height:84px}.ltest-meter em{height:104px}}
@media (prefers-reduced-motion:reduce){.ltest-meter em{animation:none}}
.pg-learn .closer .btn-light{box-shadow:0 0 0 1px rgba(233,140,255,.4)}
.pg-learn .blk-head>div+div{justify-self:end;max-width:520px}
.pg-learn .phero h1 .big{font-size:clamp(40px,4.9vw,96px);line-height:1}.pg-learn .phero h1 .big em{display:block}
@media(max-width:560px){.spass-top{padding:12px 14px}.spass .seg{width:100%;justify-content:space-between}.spass .seg button{flex:1;padding:0 6px;font-size:11.5px}.stamps{gap:6px;padding:22px 14px 8px}.spass-read{margin:22px 14px 14px}}
@media(max-width:560px){.spass .seg button{height:auto;min-height:36px;line-height:1.15;padding:6px}.spass-foot span:last-child{white-space:nowrap}}

/* ===== AUSBILDUNG identity · Gleis 03 ===== */
.pg-ausb{--pg-accent:#ffd23f;--pg-glow:rgba(255,210,63,.14);--amber:#ffd23f}
.flap.is-y i{color:#ffd23f}
.pg-ausb .h-section em,.pg-ausb .phero h1 .big em{color:#ffd23f}
.pg-ausb .phero h1 .big{font-size:clamp(40px,4.9vw,96px);line-height:1}
.pg-ausb .phero h1 .big em{display:block}
.pg-ausb .phero h1 .flap{font-size:clamp(22px,2.9vw,56px)}
.pg-ausb .blk-head>div+div{justify-self:end;max-width:520px}
.pg-ausb .blk-head .lede a,.fine a{color:var(--ink-2);text-decoration:underline;text-underline-offset:3px}
/* Payslip */
.payslip{position:relative;border:1px solid var(--line-2);border-radius:var(--r-lg);background:#0c0b08;overflow:hidden;box-shadow:0 40px 100px -40px rgba(255,210,63,.3);font-family:var(--mono)}
.payslip::after{content:'';position:absolute;left:0;right:0;bottom:44px;height:0;border-top:1px dashed rgba(255,255,255,.12)}
.ps-top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border-bottom:1px solid var(--line);background:#12100a}
.ps-top .kick b{color:#ffd23f;font-weight:400}
.payslip .seg button{height:32px;font-family:var(--body);font-size:12.5px;padding:0 12px}
.ps-head,.ps-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;padding:0 22px}
.ps-head{height:34px;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3);border-bottom:1px solid var(--line)}
.ps-row{min-height:54px;border-bottom:1px solid rgba(255,255,255,.05);font-size:13px;color:var(--ink-2)}
.ps-row b{font-size:clamp(20px,1.8vw,28px);font-weight:700;color:var(--ink);letter-spacing:-.01em}
.ps-row.minus b{color:#ff8a8a;font-size:clamp(16px,1.4vw,20px)}
.ps-row.net{background:rgba(255,210,63,.06)}
.ps-row.net span{color:var(--ink)}
.ps-row.net b{color:#ffd23f;font-size:clamp(28px,2.6vw,42px)}
.ps-check{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 16px;margin:16px 18px 64px;padding:12px 16px;border-radius:12px;font-size:12px;letter-spacing:.04em}
.ps-check b{font-weight:700}
.ps-check.warn{border:1px solid rgba(255,210,63,.35);color:#ffd23f;background:rgba(255,210,63,.05)}
.ps-check.ok{border:1px solid rgba(0,255,106,.35);color:var(--green);background:rgba(0,255,106,.05)}
.ps-foot{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:space-between;gap:12px;padding:14px 18px;font-size:10.5px;letter-spacing:.1em;color:var(--ink-3);text-transform:uppercase}
.payslip [role="tabpanel"]:not([hidden]) .ps-row b{animation:psIn .5s var(--ease) both}
@keyframes psIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media(max-width:560px){.ps-top{padding:12px 14px}.payslip .seg{width:100%;justify-content:space-between}.payslip .seg button{flex:1;padding:0 4px;font-size:11.5px}.ps-head,.ps-row{padding:0 16px}.ps-check{margin:14px 14px 64px}.ps-foot span:first-child{max-width:70%}}
@media (prefers-reduced-motion:reduce){.payslip [role="tabpanel"] .ps-row b{animation:none!important}}
/* Trade cards */
.trades{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,1.4vw,20px)}
.trade{position:relative;display:flex;flex-direction:column;gap:12px;padding:clamp(18px,1.6vw,24px);border-radius:var(--r-lg);border:1px solid var(--line);background:var(--card);transition:border-color .3s,transform .3s var(--ease)}
.trade::before{content:'';position:absolute;left:18px;right:18px;top:-1px;height:2px;background:repeating-linear-gradient(90deg,#ffd23f 0 10px,transparent 10px 16px);opacity:.55}
.trade:hover{border-color:rgba(255,210,63,.4);transform:translateY(-3px)}
.trade-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.trade-ico{flex:none;width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:rgba(255,210,63,.08);border:1px solid rgba(255,210,63,.25)}
.trade-ico svg{width:20px;height:20px;fill:none;stroke:#ffd23f;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.trade-beruf{font-family:var(--mono);font-size:10.5px;line-height:1.45;letter-spacing:.02em;color:var(--ink-3);text-align:right}
.trade h3{font-family:var(--display);font-weight:600;font-size:clamp(18px,1.4vw,22px);color:var(--ink)}
.trade dl{display:grid;grid-template-columns:auto 1fr;gap:6px 12px;font-size:13px;margin-top:auto}
.trade dt{color:var(--ink-3)}
.trade dd{text-align:right;color:var(--ink);font-family:var(--mono);font-size:12.5px}
.trade dl dd:first-of-type{color:#ffd23f;font-weight:700}
.trade-src{font-size:11.5px;color:var(--ink-3);line-height:1.45}
.fine{margin-top:18px;font-size:13px;line-height:1.6;color:var(--ink-3);max-width:110ch}
@media(max-width:1100px){.trades{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:860px){.trades{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.trades{grid-template-columns:minmax(0,1fr)}}
/* Dual system */
.dual{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:stretch;margin-bottom:clamp(20px,2.5vw,32px)}
.dual-side{display:flex;flex-direction:column;gap:6px;padding:clamp(20px,2.4vw,34px);border:1px solid var(--line-2);background:#0e0d0a}
.dual-side:first-child{border-radius:var(--r-lg) 0 0 var(--r-lg)}
.dual-side:last-child{border-radius:0 var(--r-lg) var(--r-lg) 0;text-align:right;align-items:flex-end}
.dual-side .kick{color:#ffd23f}
.dual-side b{font-family:var(--display);font-weight:600;font-size:clamp(22px,2.2vw,36px);color:var(--ink);letter-spacing:-.01em}
.dual-side span:last-child{font-size:14px;color:var(--ink-2)}
.dual-mid{position:relative;display:grid;place-items:center;width:clamp(70px,8vw,120px);border-top:1px solid var(--line-2);border-bottom:1px solid var(--line-2);background:repeating-linear-gradient(90deg,rgba(255,210,63,.18) 0 2px,transparent 2px 12px)}
.dual-mid span{font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#050505;background:#ffd23f;padding:6px 10px;border-radius:999px}
@media(max-width:640px){.dual{grid-template-columns:minmax(0,1fr)}.dual-side:first-child{border-radius:var(--r-lg) var(--r-lg) 0 0}.dual-side:last-child{border-radius:0 0 var(--r-lg) var(--r-lg);text-align:left;align-items:flex-start}.dual-mid{width:auto;height:52px;border:0;border-left:1px solid var(--line-2);border-right:1px solid var(--line-2);background:repeating-linear-gradient(180deg,rgba(255,210,63,.18) 0 2px,transparent 2px 10px)}}
.facts{gap:clamp(12px,1.4vw,20px)}
.fact{padding:clamp(18px,1.6vw,26px);border-radius:var(--r);border:1px solid var(--line);background:rgba(255,255,255,.02)}
.fact-n{font-family:var(--mono);font-size:12px;color:#ffd23f}
.fact h3{margin-top:10px;font-family:var(--display);font-weight:600;font-size:18px;color:var(--ink)}
.fact p{margin-top:6px;font-size:14px;line-height:1.6;color:var(--ink-2)}
/* German levels */
.lvls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.lvl{padding:20px;border-radius:var(--r);border:1px solid var(--line);background:rgba(255,255,255,.02)}
.lvl b{display:block;font-family:var(--mono);font-size:40px;line-height:1;color:var(--ink-2)}
.lvl .kick{display:block;margin-top:10px}
.lvl p{margin-top:8px;font-size:14px;line-height:1.6;color:var(--ink-2)}
.lvl.on{border-color:rgba(255,210,63,.45);background:rgba(255,210,63,.05)}
.lvl.on b{color:#ffd23f}
@media(max-width:760px){.lvls{grid-template-columns:minmax(0,1fr)}}
/* Punch-card roadmap */
.punch{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(12px,1.4vw,20px);counter-reset:pc}
.pc{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);gap:18px;padding:clamp(20px,2vw,28px);padding-right:clamp(44px,4vw,60px);border-radius:var(--r-lg);border:1px solid var(--line);background:linear-gradient(180deg,#100f0b,#0b0b0c);transition:border-color .3s}
.pc:hover{border-color:rgba(255,210,63,.4)}
.pc-n{font-family:var(--mono);font-weight:700;font-size:clamp(34px,3vw,52px);line-height:1;color:rgba(255,210,63,.85)}
.pc-body h3{margin-top:6px;font-family:var(--display);font-weight:600;font-size:clamp(18px,1.4vw,22px);color:var(--ink)}
.pc-body p{margin-top:8px;font-size:14.5px;line-height:1.6;color:var(--ink-2)}
.pc-body .more{margin-top:14px}
.pc-hole{position:absolute;right:18px;top:50%;width:14px;height:14px;margin-top:-7px;border-radius:50%;background:var(--bg);box-shadow:inset 0 0 0 1px var(--line-2),0 -26px 0 -4px var(--line),0 26px 0 -4px var(--line)}
.pc.goal{border-color:rgba(0,255,106,.35)}
.pc.goal .pc-n{color:var(--green)}
@media(max-width:860px){.punch{grid-template-columns:minmax(0,1fr)}}
/* Pay bars */
.paybars{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(10px,2vw,32px);align-items:end;height:clamp(300px,34vw,440px);padding:0 clamp(0px,1vw,12px);border-bottom:1px solid var(--line-2)}
.pb{position:relative;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:stretch;text-align:center}
.pb i{display:block;height:var(--h);border-radius:14px 14px 0 0;background:linear-gradient(180deg,rgba(255,210,63,.9),rgba(255,210,63,.25));transform-origin:bottom;transform:scaleY(.02);transition:transform 1.1s var(--ease)}
.paybars.in .pb i{transform:none}
.pb:nth-child(2) i{transition-delay:.08s}.pb:nth-child(3) i{transition-delay:.16s}.pb:nth-child(4) i{transition-delay:.24s}.pb:nth-child(5) i{transition-delay:.32s}
.pb.avg i{background:linear-gradient(180deg,rgba(0,255,106,.85),rgba(0,255,106,.2))}
.pb-v{order:-1;margin-bottom:10px;font-family:var(--mono);font-weight:700;font-size:clamp(15px,1.6vw,26px);color:var(--ink)}
.pb-y{position:absolute;left:0;right:0;bottom:-30px;font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2)}
.pb small{position:absolute;left:0;right:0;top:calc(100% + 34px);font-size:12px;line-height:1.35;color:var(--ink-3)}
.pb-line{position:absolute;left:0;right:0;bottom:var(--h);border-top:1.5px dashed rgba(255,138,138,.7);pointer-events:none}
.pb-line span{position:absolute;right:0;top:-24px;font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:#ff8a8a;background:var(--bg);padding:2px 6px}

@media(max-width:640px){.paybars{height:280px;gap:8px}.pb small{display:none}.pb-v{font-size:13px}.pb-y{font-size:10.5px;letter-spacing:.02em}.paybars+.grid2{margin-top:56px!important}.pb-line span{font-size:10px}}
@media (prefers-reduced-motion:reduce){.pb i{transform:none;transition:none}}
/* Portals, visa steps */
.portals{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;margin-top:16px}
.portals a{position:relative;display:flex;flex-direction:column;gap:4px;padding:14px 36px 14px 16px;border-radius:12px;border:1px solid var(--line);background:rgba(255,255,255,.02);text-decoration:none!important;transition:border-color .2s}
.portals a:hover{border-color:rgba(255,210,63,.45)}
.portals b{color:var(--ink);font-weight:600;font-size:14.5px}
.portals span{font-size:12.5px;color:var(--ink-3)}
.portals i{position:absolute;right:14px;top:14px;font-style:normal;color:#ffd23f}
.vsteps{list-style:none;margin:16px 0 0;padding:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;counter-reset:vs}
.vsteps li{counter-increment:vs;position:relative;padding:14px;border-radius:12px;border:1px solid var(--line);background:rgba(255,255,255,.02)}
.vsteps li::before{content:counter(vs,decimal-leading-zero);display:block;font-family:var(--mono);font-size:11px;color:#ffd23f;margin-bottom:6px}
.vsteps b{display:block;color:var(--ink);font-size:14px}
.vsteps span{display:block;margin-top:4px;font-size:12.5px;line-height:1.45;color:var(--ink-3)}
@media(max-width:1000px){.vsteps{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:520px){.vsteps{grid-template-columns:repeat(2,minmax(0,1fr))}}
.pb-line span{right:auto;left:0}
.pb-v{position:relative;z-index:2}
.pb-legend{display:flex;align-items:center;gap:10px;margin-top:clamp(64px,7vw,84px);font-size:13px;color:var(--ink-3)}
.pb-legend i{flex:none;width:28px;border-top:1.5px dashed rgba(255,138,138,.8)}
.pb-legend+.grid2{margin-top:clamp(20px,2.4vw,32px)!important}
@media(max-width:640px){.pb-legend{margin-top:48px}}

/* ===== RESOURCES identity · Gleis 04 · Gepäck ===== */
.pg-res{--pg-accent:#3ee8ff;--pg-glow:rgba(62,232,255,.13);--cy:#3ee8ff}
.flap.is-c i{color:#3ee8ff}
.pg-res .h-section em,.pg-res .phero h1 .big em{color:#3ee8ff}
.pg-res .phero h1 .big{font-size:clamp(44px,5.6vw,108px);line-height:1}
.pg-res .phero h1 .big em{display:block}
.pg-res .blk-head>div+div{justify-self:end;max-width:520px}
[data-path][hidden],[data-pathgroup][hidden]{display:none!important}
/* Path filter */
.pfilter{display:inline-flex;flex-wrap:wrap;gap:4px;padding:4px;border-radius:999px;border:1px solid var(--line-2);background:rgba(255,255,255,.03)}
.pfilter button{height:32px;padding:0 14px;border:0;border-radius:999px;background:transparent;color:var(--ink-2);font:600 12.5px var(--body);cursor:pointer;transition:background .2s,color .2s}
.pfilter button:hover{color:var(--ink)}
.pfilter button[aria-pressed="true"]{background:#3ee8ff;color:#041014}
.pfilter-lg button{height:38px;padding:0 18px;font-size:13.5px}
/* Baggage-claim board */
.claim{border:1px solid var(--line-2);border-radius:var(--r-lg);background:#070a0b;overflow:hidden;box-shadow:0 40px 100px -40px rgba(62,232,255,.3);font-family:var(--mono)}
.claim-top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border-bottom:1px solid var(--line);background:#0b1012}
.claim-top .kick b{color:#3ee8ff;font-weight:400}
.claim-head,.claim-row{display:grid;grid-template-columns:52px minmax(0,1fr) 70px;gap:14px;align-items:center;padding:0 18px}
.claim-head{height:34px;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3);border-bottom:1px solid var(--line)}
.claim-row{min-height:84px;border-bottom:1px solid rgba(255,255,255,.05);transition:background .2s}
.claim-row:hover{background:rgba(62,232,255,.05)}
.claim-row .n{font-size:13px;color:#3ee8ff}
.claim-row .d{font-family:var(--display);font-weight:600;font-size:clamp(17px,1.5vw,22px);color:var(--ink)}
.claim-row .d small{display:block;margin-top:4px;font-family:var(--mono);font-weight:400;font-size:11px;letter-spacing:.06em;color:var(--ink-3);text-transform:uppercase}
.claim-row .c{justify-self:end;display:grid;place-items:center;min-width:52px;height:52px;border-radius:12px;background:#111719;border:1px solid rgba(62,232,255,.3);font-size:24px;font-weight:700;color:#3ee8ff}
.claim-foot{display:flex;justify-content:space-between;gap:12px;padding:12px 18px;font-size:11px;letter-spacing:.1em;color:var(--ink-3);text-transform:uppercase;background:repeating-linear-gradient(90deg,rgba(255,255,255,.04) 0 14px,transparent 14px 28px)}
@media(max-width:560px){.claim-top{padding:12px 14px}.claim .pfilter{width:100%}.claim .pfilter button{flex:1;padding:0 6px}.claim-head,.claim-row{grid-template-columns:36px minmax(0,1fr) 56px;padding:0 14px;gap:10px}.claim-row .c{min-width:44px;height:44px;font-size:20px}}
/* Luggage tags */
.tags{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,1.4vw,20px)}
.ltag{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"code main" "meta meta";gap:14px 16px;padding:clamp(18px,1.6vw,24px) clamp(18px,1.6vw,24px) clamp(16px,1.4vw,20px) clamp(38px,3vw,48px);border-radius:10px 22px 22px 10px;border:1px solid var(--line);background:linear-gradient(90deg,#0b1113,#0d0d10 40%);transition:border-color .3s,transform .3s var(--ease)}
.ltag::before{content:'';position:absolute;left:0;top:14px;bottom:14px;width:6px;border-radius:0 4px 4px 0;background:repeating-linear-gradient(180deg,#3ee8ff 0 6px,transparent 6px 11px);opacity:.6}
.ltag:hover{border-color:rgba(62,232,255,.45);transform:translateY(-3px) rotate(-.4deg)}
.ltag-hole{position:absolute;left:16px;top:50%;width:12px;height:12px;margin-top:-6px;border-radius:50%;background:var(--bg);box-shadow:inset 0 0 0 1.5px rgba(62,232,255,.5)}
.ltag-code{grid-area:code;align-self:start;font-family:var(--mono);font-weight:700;font-size:clamp(24px,2vw,32px);line-height:1;letter-spacing:.02em;color:#3ee8ff}
.ltag-main{grid-area:main;display:flex;flex-direction:column;gap:6px}
.ltag-main b{font-family:var(--display);font-weight:600;font-size:clamp(16px,1.25vw,19px);line-height:1.25;color:var(--ink)}
.ltag-main span{font-size:14px;line-height:1.5;color:var(--ink-2)}
.ltag-meta{grid-area:meta;display:flex;justify-content:space-between;align-items:center;padding-top:12px;border-top:1px dashed rgba(255,255,255,.1);font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase}
.ltag-meta i{font-style:normal;color:var(--ink-3)}
.ltag-meta em{font-style:normal;color:#041014;background:#3ee8ff;padding:3px 8px;border-radius:999px;font-weight:700}
.p-study{color:var(--green)!important}.p-ausb{color:#ffd23f!important}.p-both{color:var(--ink-2)!important}
.tags-3 .ltag{padding-top:clamp(22px,2vw,30px)}
.tags-3 .ltag-code{font-size:clamp(30px,2.6vw,42px)}
@media(max-width:1100px){.tags{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.tags{grid-template-columns:minmax(0,1fr)}}
/* Links board */
.dboard{border:1px solid var(--line-2);border-radius:var(--r-lg);overflow:hidden;background:#08090a;font-family:var(--mono)}
.db-head,.db-row{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.6fr) 130px;gap:18px;align-items:center;padding:0 clamp(16px,2vw,26px)}
.db-head{height:38px;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3);border-bottom:1px solid var(--line);background:#0c0e10}
.db-row{min-height:64px;padding-top:12px;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.05);transition:background .2s}
.db-row:last-child{border-bottom:0}
.db-row:hover{background:rgba(62,232,255,.05)}
.db-row .d{font-size:14px;font-weight:700;color:var(--ink);overflow-wrap:anywhere}
.db-row .w{font-family:var(--body);font-size:14px;line-height:1.5;color:var(--ink-2)}
.db-row .s{text-align:right;font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.indep{display:inline-block;margin-left:6px;padding:2px 7px;border-radius:999px;border:1px solid var(--line-2);font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);vertical-align:1px}
@media(max-width:760px){.db-head{display:none}.db-row{grid-template-columns:minmax(0,1fr) auto;gap:6px 12px}.db-row .w{grid-column:1/-1;grid-row:2}}
.claim-foot span:last-child{white-space:nowrap}

/* ===== ESSENTIALS identity · Gleis 05 · Koffer ===== */
.pg-ess{--pg-accent:#ff7a59;--pg-glow:rgba(255,122,89,.14)}
.flap.is-o i{color:#ff7a59}
.pg-ess .h-section em,.pg-ess .phero h1 .big em{color:#ff7a59}
.pg-ess .phero h1 .big{font-size:clamp(42px,5vw,98px);line-height:1}
.pg-ess .phero h1 .big em{display:block}
.pg-ess .blk-head>div+div{justify-self:end;max-width:520px}
.disclose{display:flex;gap:12px;align-items:flex-start;margin-top:22px;padding:14px 16px;border-radius:14px;border:1px solid rgba(255,122,89,.3);background:rgba(255,122,89,.05);max-width:620px}
.disclose-i{flex:none;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#ff7a59;color:#140805;font:italic 700 13px Georgia,serif}
.disclose p{font-size:13.5px;line-height:1.55;color:var(--ink-2)}
.disclose strong{color:var(--ink)}
/* Packing list */
.pack{border:1px solid var(--line-2);border-radius:var(--r-lg);background:#0c0908;overflow:hidden;box-shadow:0 40px 100px -40px rgba(255,122,89,.35);font-family:var(--mono)}
.pack-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;background:#130d0b;border-bottom:1px solid var(--line)}
.pack-top .kick b{color:#ff7a59;font-weight:400}
.pack-count{font-size:12px;color:var(--ink-3);white-space:nowrap}
.pack-count b{font-size:18px;color:#ff7a59}
.pack-bar{height:3px;background:rgba(255,255,255,.06)}
.pack-bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,#ff7a59,var(--green));transition:width .5s var(--ease)}
.pack-list{list-style:none;margin:0;padding:6px 0}
.pack-list li{display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:center;border-bottom:1px solid rgba(255,255,255,.05)}
.pack-list li:last-child{border-bottom:0}
.pack-list li>a{display:grid;place-items:center;height:100%;color:var(--ink-3);transition:color .2s}
.pack-list li>a:hover{color:#ff7a59}
.pk{display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:14px;align-items:center;width:100%;min-height:50px;padding:0 0 0 18px;border:0;background:transparent;color:var(--ink);text-align:left;cursor:pointer;font:inherit}
.pk:hover{background:rgba(255,122,89,.04)}
.pk-box{width:20px;height:20px;border-radius:6px;border:1.5px solid rgba(255,122,89,.55);display:grid;place-items:center;transition:all .25s}
.pk[aria-pressed="true"] .pk-box{background:var(--green);border-color:var(--green)}
.pk[aria-pressed="true"] .pk-box::after{content:'';width:9px;height:5px;border-left:2px solid #041008;border-bottom:2px solid #041008;transform:translateY(-1px) rotate(-45deg)}
.pk-t{font-family:var(--body);font-weight:600;font-size:15px}
.pk[aria-pressed="true"] .pk-t{color:var(--ink-3);text-decoration:line-through;text-decoration-color:rgba(255,255,255,.3)}
.pk-w{font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:#ff7a59;white-space:nowrap}
.pack-foot{display:flex;justify-content:space-between;gap:12px;padding:12px 18px;border-top:1px solid var(--line);font-size:10.5px;letter-spacing:.1em;color:var(--ink-3);text-transform:uppercase}
.pack-foot span:last-child{white-space:nowrap}
@media(max-width:560px){.pk{gap:10px;padding-left:14px}.pk-t{font-size:14px}.pk-w{font-size:9.5px;letter-spacing:.04em}.pack-top{flex-wrap:wrap}}
/* Wallet cards */
.wallet{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(12px,1.6vw,24px)}
.wallet.w4{grid-template-columns:repeat(2,minmax(0,1fr))}
.wcard{position:relative;display:flex;flex-direction:column;gap:14px;padding:clamp(22px,2.2vw,32px);border-radius:var(--r-lg);border:1px solid var(--line);background:radial-gradient(120% 90% at 100% 0%,rgba(255,122,89,.08),transparent 55%),linear-gradient(160deg,#141212,#0b0b0c);overflow:hidden;transition:border-color .3s,transform .3s var(--ease)}
.wcard::before{content:'';position:absolute;right:26px;top:26px;width:38px;height:28px;border-radius:6px;background:linear-gradient(135deg,rgba(255,210,150,.35),rgba(255,122,89,.15));box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);opacity:.7}
.wcard:hover{border-color:rgba(255,122,89,.4);transform:translateY(-3px)}
.wc-top{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding-right:52px}
.wc-cat{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}
.wc-badge{font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;color:#140805;background:#ff7a59;padding:3px 9px;border-radius:999px;font-weight:700}
.wcard h3{font-family:var(--display);font-weight:600;font-size:clamp(24px,2vw,32px);letter-spacing:-.01em;color:var(--ink)}
.wcard>p{font-size:14.5px;line-height:1.65;color:var(--ink-2)}
.wc-facts{display:flex;justify-content:space-between;gap:12px;padding:10px 14px;border-radius:12px;background:rgba(255,255,255,.03);border:1px solid var(--line);font-size:13px}
.wc-facts dt{color:var(--ink-3)}
.wc-facts dd{font-family:var(--mono);color:#ff7a59;font-weight:700}
.wc-note{margin:0;padding:14px 16px;border-left:2px solid #ff7a59;border-radius:0 12px 12px 0;background:rgba(255,122,89,.05);font-size:14px;line-height:1.6;color:var(--ink);font-style:italic}
.wc-note span{display:block;margin-bottom:4px;font-family:var(--mono);font-style:normal;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:#ff7a59}
.wc-cta{margin-top:auto;align-self:flex-start;display:inline-flex;align-items:center;height:44px;padding:0 20px;border-radius:999px;background:var(--ink);color:#050505;font-weight:600;font-size:14px;transition:transform .25s var(--ease),background .25s}
.wc-cta:hover{transform:translateX(3px);background:#ffd9cf}
@media(max-width:860px){.wallet,.wallet.w4{grid-template-columns:minmax(0,1fr)}}

/* ===== GUIDES (Study checklists) · shared architecture ===== */
.pg-guide{--pg-accent:#00ff6a;--pg-glow:rgba(0,255,106,.14);--ga:#00ff6a}
.pg-guide .phero h1 .big{font-size:clamp(40px,4.6vw,88px);line-height:1}
.pg-guide .phero h1 .big em{display:block;color:var(--ga)}
.gmeta{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}
.gmeta span{font-size:13px;color:var(--ink-2);padding:7px 12px;border-radius:999px;border:1px solid var(--line-2);background:rgba(255,255,255,.02)}
.gmeta b{color:var(--ink);font-weight:600}
.gboard{border:1px solid var(--line-2);border-radius:var(--r-lg);background:#08090a;overflow:hidden;font-family:var(--mono);box-shadow:0 40px 100px -40px rgba(0,255,106,.25)}
.gb-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border-bottom:1px solid var(--line);background:#0d0f0e}
.gb-top .kick b{color:var(--ga);font-weight:400}
.gb-free{font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:#050505;background:var(--ga);padding:3px 9px;border-radius:999px;font-weight:700}
.gboard a{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:10px;align-items:center;min-height:42px;padding:0 18px;border-bottom:1px solid rgba(255,255,255,.05);font-size:13px;letter-spacing:.02em;color:var(--ink);transition:background .2s}
.gboard a:last-child{border-bottom:0}
.gboard a:hover{background:rgba(255,255,255,.04)}
.gboard a i{font-style:normal;color:#ffd23f}
.gboard a.hot{color:#ffd23f}
.gboard a.tk{background:rgba(0,255,106,.06);color:var(--ga)}
.gboard a.tk span{font-size:12px;color:var(--ink-2)}
/* layout */
.guide{max-width:var(--max);margin:0 auto;padding:clamp(40px,6vw,90px) var(--gutter) clamp(24px,4vw,60px);display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,380px);gap:clamp(32px,5vw,90px);align-items:start}
.g-main{max-width:820px;min-width:0}
.g-aside{position:sticky;top:110px}
.g-sec{padding-bottom:clamp(40px,5vw,64px);margin-bottom:clamp(40px,5vw,64px);border-bottom:1px solid var(--line);scroll-margin-top:110px}
.g-sec:last-child{border-bottom:0;margin-bottom:0}
.g-h2{margin-top:14px;margin-bottom:16px;font-family:var(--display);font-weight:600;font-size:clamp(28px,2.8vw,44px);line-height:1.08;letter-spacing:-.02em;color:var(--ink)}
.g-sec>p,.g-advice>p{font-size:16px;line-height:1.75;color:var(--ink-2);margin-top:12px}
.g-sec>p strong,.g-sec li strong{color:var(--ink)}
.g-sec a:not(.btn):not(.more){color:var(--ink);text-decoration:underline;text-decoration-color:rgba(0,255,106,.5);text-underline-offset:3px}
.g-sec .ticks{margin-top:14px}
.g-sec .ticks li{font-size:15.5px;line-height:1.65}
.g-fine{font-size:14px!important;color:var(--ink-3)!important}
.g-call{margin-top:18px;padding:18px 20px;border-radius:var(--r);border:1px solid rgba(0,255,106,.3);background:rgba(0,255,106,.05)}
.g-call b{display:block;color:var(--ink);font-size:15px}
.g-call p{margin-top:6px;font-size:15px;line-height:1.65;color:var(--ink-2)}
.g-call.warn{border-color:rgba(255,210,63,.4);background:rgba(255,210,63,.05)}
.g-table{margin-top:18px;border:1px solid var(--line-2);border-radius:var(--r);overflow:hidden}
.gt-head,.gt-row{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.4fr) 92px;gap:16px;align-items:center;padding:14px 18px}
.gt-head{padding-top:10px;padding-bottom:10px;font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3);background:#0c0d0d;border-bottom:1px solid var(--line)}
.gt-row{border-bottom:1px solid rgba(255,255,255,.05);font-size:14.5px;line-height:1.55;color:var(--ink-2)}
.gt-row:last-child{border-bottom:0}
.gt-row b{color:var(--ink);font-weight:600}
.gt-row em{justify-self:end;font-style:normal;font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;padding:4px 9px;border-radius:999px}
.gt-row em.ok{color:#050505;background:var(--ga)}
.gt-row em.warn{color:#ffd23f;border:1px solid rgba(255,210,63,.45)}
.gt-row em.no{color:#ff8a8a;border:1px solid rgba(255,138,138,.45)}
@media(max-width:700px){.gt-head{display:none}.gt-row{grid-template-columns:minmax(0,1fr) auto;gap:6px 12px}.gt-row>span:nth-child(2){grid-column:1/-1;grid-row:2}.gt-row em{grid-row:1;grid-column:2}}
.g-docs{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:10px}
.g-docs li{display:grid;grid-template-columns:48px minmax(0,1fr);gap:14px;padding:16px 18px;border-radius:var(--r);border:1px solid var(--line);background:rgba(255,255,255,.02)}
.g-docs .n{font-family:var(--mono);font-weight:700;font-size:20px;color:var(--ga)}
.g-docs b{display:block;color:var(--ink);font-size:16px;font-weight:600}
.g-docs p{margin-top:4px;font-size:14.5px;line-height:1.6;color:var(--ink-2)}
.tag{display:inline-block;margin-left:8px;vertical-align:2px;font-style:normal;font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;padding:2px 8px;border-radius:999px;border:1px solid var(--line-2);color:var(--ink-3)}
.tag.hot{border-color:rgba(255,210,63,.45);color:#ffd23f}
.g-stats{margin-top:18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.g-stat{padding:20px;border-radius:var(--r);border:1px solid var(--line);background:rgba(255,255,255,.02)}
.g-stat b{display:block;margin-top:8px;font-family:var(--mono);font-size:clamp(28px,2.6vw,40px);color:var(--ga)}
.g-stat p{margin-top:8px;font-size:14px;line-height:1.6;color:var(--ink-2)}
@media(max-width:640px){.g-stats{grid-template-columns:minmax(0,1fr)}}
.g-steps{list-style:none;margin:18px 0 0;padding:0;counter-reset:gs;position:relative}
.g-steps::before{content:'';position:absolute;left:17px;top:10px;bottom:10px;width:1px;background:linear-gradient(var(--ga),rgba(0,255,106,.1))}
.g-steps li{counter-increment:gs;position:relative;padding:0 0 22px 56px}
.g-steps li::before{content:counter(gs);position:absolute;left:0;top:-2px;width:35px;height:35px;display:grid;place-items:center;border-radius:50%;background:#0b0c0c;border:1px solid rgba(0,255,106,.5);font-family:var(--mono);font-size:13px;color:var(--ga)}
.g-steps b{display:block;color:var(--ink);font-size:16px;font-weight:600}
.g-steps p{margin-top:4px;font-size:14.5px;line-height:1.6;color:var(--ink-2)}
.g-advice{padding:clamp(22px,2.6vw,36px);border-radius:var(--r-lg);border:1px solid rgba(0,255,106,.3);background:radial-gradient(120% 100% at 100% 0%,rgba(0,255,106,.08),transparent 60%),#0b0c0c}
.g-tree{margin:18px 0 4px;padding:16px 20px;border-radius:12px;background:#060707;border:1px solid var(--line);font-family:var(--mono);font-size:13.5px;line-height:1.9;color:var(--ink-2)}
.g-tree div:not(.root){padding-left:24px;border-left:1px dashed rgba(255,255,255,.12);margin-left:8px}
.g-tree .root{color:var(--ga);font-weight:700}
.g-sec .acc{margin-top:16px}
/* tracker */
.tracker{border:1px solid var(--line-2);border-radius:var(--r-lg);background:#0a0b0b;overflow:hidden}
.tk-top{padding:20px 20px 12px}
.tk-top .kick{color:var(--ga)}
.tk-top h2{margin-top:8px;font-family:var(--display);font-weight:600;font-size:22px;color:var(--ink)}
.tk-top p{margin-top:6px;font-size:13px;line-height:1.5;color:var(--ink-3)}
.tk-prog{display:flex;justify-content:space-between;padding:0 20px 8px;font-family:var(--mono);font-size:12px;color:var(--ink-3)}
.tk-prog b{color:var(--ga)}
.tk-bar{height:4px;margin:0 20px 12px;border-radius:99px;background:rgba(255,255,255,.07);overflow:hidden}
.tk-bar i{display:block;height:100%;width:0;background:var(--ga);transition:width .4s var(--ease)}
.tk-list{display:grid;border-top:1px solid var(--line);max-height:min(60vh,560px);overflow:auto}
.tk-list button{position:relative;display:block;width:100%;padding:12px 20px 12px 52px;border:0;border-bottom:1px solid rgba(255,255,255,.05);background:transparent;text-align:left;color:var(--ink);font:500 14px/1.4 var(--body);cursor:pointer;transition:background .2s}
.tk-list button:hover{background:rgba(0,255,106,.04)}
.tk-list button::before{content:'';position:absolute;left:20px;top:50%;width:18px;height:18px;margin-top:-9px;border-radius:5px;border:1.5px solid rgba(0,255,106,.55)}
.tk-list button[aria-pressed="true"]{color:var(--ink-3);text-decoration:line-through;text-decoration-color:rgba(255,255,255,.3)}
.tk-list button[aria-pressed="true"]::before{background:var(--ga);border-color:var(--ga)}
.tk-list button[aria-pressed="true"]::after{content:'';position:absolute;left:25px;top:50%;width:8px;height:4px;margin-top:-4px;border-left:2px solid #041008;border-bottom:2px solid #041008;transform:rotate(-45deg)}
.tk-list .tk-grp{padding:12px 20px 6px;font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);background:#0d0e0e;border-bottom:1px solid rgba(255,255,255,.05)}
.tk-reset{display:block;width:100%;padding:12px 20px;border:0;border-top:1px solid var(--line);background:transparent;color:var(--ink-3);font:500 12.5px var(--body);cursor:pointer;text-align:left}
.tk-reset:hover{color:#ff8a8a}
@media(max-width:1000px){.guide{grid-template-columns:minmax(0,1fr)}.g-aside{position:static}.tk-list{max-height:none}}
.g-routes{margin-top:18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.g-route{padding:18px 20px;border-radius:var(--r);border:1px solid var(--line);background:rgba(255,255,255,.02)}
.g-route.main{grid-column:1/-1;border-color:rgba(0,255,106,.35);background:rgba(0,255,106,.04)}
.g-route .kick{color:var(--ga)}
.g-route b{display:block;margin-top:4px;color:var(--ink);font-size:16px;font-weight:600}
.g-route p{margin-top:6px;font-size:14.5px;line-height:1.6;color:var(--ink-2)}
.g-route p strong{color:var(--ink)}
@media(max-width:640px){.g-routes{grid-template-columns:minmax(0,1fr)}}
.g-folders{margin:18px 0 4px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.g-folders div{padding:16px;border-radius:12px;background:#060707;border:1px solid var(--line);font-family:var(--mono)}
.g-folders b{display:block;color:var(--ga);font-size:13px}
.g-folders span{display:block;margin-top:6px;color:var(--ink);font-size:14px}
@media(max-width:560px){.g-folders{grid-template-columns:minmax(0,1fr)}}
.g-h3{margin-top:28px;font-family:var(--display);font-weight:600;font-size:clamp(20px,1.6vw,24px);color:var(--ink)}
.g-line{list-style:none;margin:18px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px;counter-reset:gl}
.g-line li{counter-increment:gl;display:inline-flex;align-items:center;gap:8px;padding:8px 12px 8px 8px;border-radius:999px;border:1px solid var(--line-2);font-size:13.5px;color:var(--ink)}
.g-line li::before{content:counter(gl,decimal-leading-zero);display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#0f1110;border:1px solid rgba(0,255,106,.4);font-family:var(--mono);font-size:10.5px;color:var(--ga)}
.g-line li.end{background:var(--ga);color:#050505;border-color:var(--ga)}
.g-line li.end::before{background:#050505}
.g-docs3{margin-top:16px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.g-docs3>div{padding:18px;border-radius:var(--r);border:1px solid var(--line);background:rgba(255,255,255,.02)}
.g-docs3 .kick{color:var(--ga)}
.g-docs3 p{margin-top:8px;font-size:14px;line-height:1.6;color:var(--ink-2)}
@media(max-width:760px){.g-docs3{grid-template-columns:minmax(0,1fr)}}
.g-next{margin-top:16px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.g-next a{display:flex;flex-direction:column;gap:6px;padding:18px;border-radius:var(--r);border:1px solid rgba(0,255,106,.3);background:rgba(0,255,106,.04);text-decoration:none!important;transition:transform .25s var(--ease),border-color .25s}
.g-next a:hover{transform:translateY(-3px);border-color:var(--ga)}
.g-next .kick{color:var(--ink-3)}
.g-next b{color:var(--ink);font-size:16px}
.g-next span:last-child{margin-top:auto;font-size:13px;color:var(--ga)}
@media(max-width:760px){.g-next{grid-template-columns:minmax(0,1fr)}}
.g-tree2{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:10px;counter-reset:gt}
.g-tree2 li{counter-increment:gt;position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px 12px;padding:16px 18px 16px 62px;border-radius:var(--r);border:1px solid var(--line);background:rgba(255,255,255,.02)}
.g-tree2 li::before{content:counter(gt);position:absolute;left:18px;top:14px;width:30px;height:30px;display:grid;place-items:center;border-radius:50%;border:1px solid rgba(0,255,106,.5);font-family:var(--mono);font-size:12px;color:var(--ga)}
.g-tree2 b{grid-column:1/-1;color:var(--ink);font-size:15.5px}
.g-tree2 span{font-size:13.5px;line-height:1.5;padding:8px 10px;border-radius:10px}
.g-tree2 .y{background:rgba(0,255,106,.06);color:var(--ink-2)}
.g-tree2 .n{background:rgba(255,210,63,.06);color:var(--ink-2)}
@media(max-width:600px){.g-tree2 li{grid-template-columns:minmax(0,1fr);padding-left:18px;padding-top:54px}}
.g-src{margin-top:16px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.g-src>div{display:flex;flex-direction:column;gap:6px;padding:16px 18px;border-radius:var(--r);border:1px solid var(--line);background:rgba(255,255,255,.02)}
.g-src .kick{color:var(--ga);margin-bottom:4px}
.g-src a{font-size:14px}
@media(max-width:640px){.g-src{grid-template-columns:minmax(0,1fr)}}
.g-count{margin-top:16px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.g-count>div{position:relative;padding:18px;border-radius:var(--r);border:1px solid var(--line);background:rgba(255,255,255,.02)}
.g-count b{display:block;font-family:var(--mono);font-size:clamp(18px,1.6vw,24px);color:#ffd23f}
.g-count p{margin-top:8px;font-size:14px;line-height:1.55;color:var(--ink-2)}
.g-count .go{border-color:rgba(0,255,106,.4);background:rgba(0,255,106,.05)}
.g-count .go b{color:var(--ga)}
@media(max-width:700px){.g-count{grid-template-columns:minmax(0,1fr)}}
.g-key{margin-top:16px;display:flex;flex-wrap:wrap;gap:8px}
.g-key span{padding:7px 12px;border-radius:999px;font-size:13px;border:1px solid var(--line-2);color:var(--ink)}
.g-key .r{border-color:rgba(255,90,90,.45)}.g-key .y{border-color:rgba(255,210,63,.45)}.g-key .g{border-color:rgba(0,255,106,.45)}
.g-sos{margin-top:16px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.g-sos a{display:flex;flex-direction:column;gap:4px;padding:18px;border-radius:var(--r);border:1px solid var(--line-2);background:#0c0c0d;text-decoration:none!important;transition:border-color .2s}
.g-sos a:hover{border-color:#ff5a5a}
.g-sos .kick{color:var(--ink-3)}
.g-sos b{font-family:var(--mono);font-size:clamp(32px,3vw,46px);line-height:1.1;color:var(--ink)}
.g-sos a.red b{color:#ff5a5a}
.g-sos span:last-child{font-size:13.5px;color:var(--ink-2)}
@media(max-width:640px){.g-sos{grid-template-columns:minmax(0,1fr)}}
.tk-after{margin-top:14px;font-size:13.5px;color:var(--ink-3)}
.tk-after a{color:var(--ink);text-decoration:underline;text-decoration-color:rgba(0,255,106,.5);text-underline-offset:3px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.tlcalc{border:1px solid var(--line-2);border-radius:var(--r-lg);background:#08090a;overflow:hidden;font-family:var(--mono);box-shadow:0 40px 100px -40px rgba(0,255,106,.25)}
.tl-pick{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--line)}
.tlcalc .pfilter button[aria-pressed="true"],.tracker .pfilter button[aria-pressed="true"]{background:var(--ga);color:#041008}
.tl-year select,.tk-set select{height:40px;padding:0 14px;border-radius:999px;border:1px solid var(--line-2);background:#0e0f0f;color:var(--ink);font:600 13px var(--body)}
.tl-head{padding:12px 18px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#ffd23f;border-bottom:1px solid var(--line);background:#0c0d0c}
.tl-row{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:10px;align-items:center;min-height:46px;padding:0 18px;border-bottom:1px solid rgba(255,255,255,.05);font-size:13px}
.tl-row i{font-style:normal;color:#ffd23f}
.tl-row span{color:var(--ink);text-transform:uppercase;letter-spacing:.05em}
.tl-row b{font-weight:400;color:var(--ink-3);text-align:right;font-size:12.5px}
.tlcalc.has-year .tl-row b{color:var(--ga);font-weight:700}
.tl-row.go span{color:var(--ga)}
.gb-foot{padding:12px 18px;font-size:10.5px;letter-spacing:.06em;color:var(--ink-3);line-height:1.5}
.g-phases{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:12px}
.g-phases>li{display:grid;grid-template-columns:minmax(170px,.35fr) minmax(0,1fr);gap:18px;padding:18px 20px;border-radius:var(--r);border:1px solid var(--line);background:rgba(255,255,255,.02)}
.g-phases>li.go{border-color:rgba(0,255,106,.4);background:rgba(0,255,106,.04)}
.ph-t i{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;border:1px solid rgba(0,255,106,.5);font-style:normal;font-family:var(--mono);font-size:13px;color:var(--ga);margin-bottom:10px}
.ph-t .kick{display:block;color:#ffd23f}
.ph-t b{display:block;margin-top:4px;font-family:var(--display);font-size:20px;color:var(--ink)}
.g-phases .ticks{margin:0}
.g-phases .ticks li{font-size:14.5px}
@media(max-width:640px){.g-phases>li{grid-template-columns:minmax(0,1fr)}}
.gt-head.gt2,.gt-row.gt2{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr)}
@media(max-width:700px){.gt-row.gt2{grid-template-columns:minmax(0,1fr)}.gt-row.gt2>span:nth-child(2){grid-row:auto}}
.g-next4{grid-template-columns:repeat(2,minmax(0,1fr))}
.g-next4 b{font-size:15px;font-weight:600;line-height:1.4}
@media(max-width:640px){.g-next4{grid-template-columns:minmax(0,1fr)}}
.g-count5{grid-template-columns:repeat(5,minmax(0,1fr))}
.g-count .kick{display:block;margin-top:4px}
.g-count .dl{border-color:rgba(255,138,138,.45);background:rgba(255,138,138,.05)}
.g-count .dl b{color:#ff8a8a}
@media(max-width:900px){.g-count5{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.g-count5{grid-template-columns:minmax(0,1fr)}}
.g-route>b{font-family:var(--mono);font-size:22px}
.tk-set{display:grid;gap:8px;padding:4px 20px 16px}
.tk-set .kick{margin-top:6px;color:var(--ink-3)}
.tk-set .pfilter{border-radius:14px}
.pf-wrap{display:flex;flex-wrap:wrap}
.pf-wrap button{height:30px;font-size:12px;padding:0 10px}
.tl-row.past{opacity:.45}.tl-row.past b::after{content:' · passed';color:#ff8a8a;font-weight:400}

/* ===== AUSBILDUNG GUIDES (Gleis 03 · A–D) · amber + legacy block styles ===== */
.pg-ausg{--ga:#ffd23f;--pg-accent:#ffd23f;--pg-glow:rgba(255,210,63,.14)}
.pg-ausg .gboard{box-shadow:0 40px 100px -40px rgba(255,210,63,.28)}
.pg-ausg .gboard a i{color:var(--ga)}
.pg-ausg .gboard a.tk{background:rgba(255,210,63,.07);color:var(--ga)}
.guide.solo{grid-template-columns:minmax(0,1fr);max-width:calc(900px + 2 * var(--gutter))}
.guide.solo .g-main{max-width:none}
.g-main .g-h3{margin:26px 0 10px;font-family:var(--display);font-weight:600;font-size:clamp(19px,1.5vw,22px);color:var(--ink)}
.g-main .g-p{margin-top:12px;font-size:16px;line-height:1.75;color:var(--ink-2)}
.g-main .g-p strong,.g-main li strong{color:var(--ink)}
.g-main a:not(.btn):not(.more):not(.source-item):not(.btn-ghost){color:var(--ink);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--ga) 55%,transparent);text-underline-offset:3px}
.g-main .info-box,.g-main .warn-box{margin:18px 0;padding:18px 20px;border-radius:var(--r);border:1px solid color-mix(in srgb,var(--ga) 35%,transparent);background:color-mix(in srgb,var(--ga) 5%,transparent);font-size:15px;line-height:1.65;color:var(--ink-2)}
.g-main .warn-box{border-color:rgba(255,138,138,.4);background:rgba(255,138,138,.05)}
.g-main .wb-title{font-weight:600;color:var(--ink);font-size:15px;margin-bottom:6px}
.g-main .warn-box p,.g-main .info-box p{margin-top:6px}
.g-main .warn-box ul,.g-main .info-box ul{margin:8px 0 0 18px;line-height:1.8}
.g-main .doc-item{padding:16px 18px;margin-top:10px;border-radius:var(--r);border:1px solid var(--line);background:rgba(255,255,255,.02)}
.g-main .doc-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px}
.g-main .doc-num{font-family:var(--mono);font-weight:700;color:var(--ga);font-size:16px}
.g-main .doc-title{font-weight:600;color:var(--ink);font-size:16px}
.g-main .doc-tag{font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;padding:2px 8px;border-radius:999px;border:1px solid color-mix(in srgb,var(--ga) 45%,transparent);color:var(--ga)}
.g-main .doc-desc{margin-top:6px;font-size:14.5px;line-height:1.65;color:var(--ink-2)}
.g-main .doc-desc ul{margin:8px 0 0 18px}
.g-main .cond-grid,.g-main .verdict-grid,.g-main .tier-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0}
.g-main .tier-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.g-main .cond-card,.g-main .verdict-card,.g-main .tier-card{padding:18px 20px;border-radius:var(--r);border:1px solid var(--line);background:rgba(255,255,255,.02)}
.g-main .cond-card-icon,.g-main .tier-medal{font-size:22px}
.g-main .cond-card-title,.g-main .verdict-title,.g-main .tier-title{margin-top:6px;font-weight:600;color:var(--ink);font-size:16px}
.g-main .cond-card-desc,.g-main .tier-desc{margin-top:6px;font-size:14px;line-height:1.6;color:var(--ink-2)}
.g-main .cond-card ul,.g-main .verdict-card ul{margin:8px 0 0 18px;font-size:14px;line-height:1.75;color:var(--ink-2)}
.g-main .verdict-card.wait{border-color:rgba(255,138,138,.4)}
.g-main .verdict-card.ready{border-color:rgba(0,255,106,.4)}
@media(max-width:700px){.g-main .cond-grid,.g-main .verdict-grid,.g-main .tier-grid{grid-template-columns:minmax(0,1fr)}}
.g-main .elig-table-scroll,.g-main .table-scroll{overflow-x:auto;margin:16px 0;border:1px solid var(--line-2);border-radius:var(--r)}
.g-main .elig-table{width:100%;border-collapse:collapse;font-size:14px}
.g-main .elig-table-scroll .elig-table,.g-main .table-scroll .elig-table{min-width:520px}
.g-main .elig-table th{text-align:left;padding:10px 14px;font-family:var(--mono);font-weight:400;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);background:#0c0d0d;border-bottom:1px solid var(--line)}
.g-main .elig-table td{padding:12px 14px;border-bottom:1px solid rgba(255,255,255,.05);color:var(--ink-2);vertical-align:top;line-height:1.55}
.g-main .elig-table tr:last-child td{border-bottom:0}
.g-main .elig-table td:first-child{color:var(--ink);font-weight:600}
.g-main .readiness-list,.g-main .no-list,.g-main .mistakes-list{list-style:none;margin:14px 0;padding:0;display:grid;gap:8px}
.g-main .readiness-list li,.g-main .no-list li{position:relative;padding-left:28px;font-size:15px;line-height:1.6;color:var(--ink-2)}
.g-main .readiness-list li::before{content:'✓';position:absolute;left:4px;color:var(--ga);font-weight:700}
.g-main .no-list li::before{content:'–';position:absolute;left:6px;color:#ff8a8a;font-weight:700}
.g-main .mistakes-list li{display:grid;grid-template-columns:22px minmax(0,1fr);gap:8px;font-size:15px;line-height:1.6;color:var(--ink-2)}
.g-main .mistake-x{color:#ff8a8a;font-weight:700}
.g-main .fee-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:16px 0}
.g-main .fee-card{padding:18px;border-radius:var(--r);border:1px solid var(--line);background:rgba(255,255,255,.02)}
.g-main .fee-card-label{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)}
.g-main .fee-card-value{margin-top:6px;font-family:var(--mono);font-weight:700;font-size:clamp(24px,2.2vw,32px);color:var(--ga)}
.g-main .fee-card-value span,.g-main .fee-card-value small{font-size:.45em;color:var(--ink-3)}
.g-main .fee-card-note{margin-top:6px;font-size:13px;line-height:1.5;color:var(--ink-2)}
.g-main .source-grid{display:grid;gap:6px;margin-top:8px}
.g-main .source-group{padding:16px 18px;margin-top:12px;border-radius:var(--r);border:1px solid var(--line);background:rgba(255,255,255,.02)}
.g-main .source-group-title{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ga)}
.g-main .source-item{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.05);color:var(--ink);font-size:14px;text-decoration:none}
.g-main .source-item:last-child{border-bottom:0}
.g-main .source-item:hover{color:var(--ga)}
.g-main .source-item-arrow{color:var(--ga)}
.g-main .bibin-box{margin:18px 0;padding:clamp(20px,2.4vw,30px);border-radius:var(--r-lg);border:1px solid color-mix(in srgb,var(--ga) 35%,transparent);background:radial-gradient(120% 100% at 100% 0%,color-mix(in srgb,var(--ga) 8%,transparent),transparent 60%),#0b0c0c}
.g-main .bibin-head{display:flex;align-items:center;gap:12px;margin-bottom:10px}
.g-main .bibin-avatar{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#15130b;border:1px solid color-mix(in srgb,var(--ga) 40%,transparent);font-size:18px}
.g-main .bibin-name{font-weight:600;color:var(--ink)}
.g-main .bibin-box p{margin-top:8px;font-size:15.5px;line-height:1.75;color:var(--ink-2)}
.g-main .stage-chain,.g-main .core-pill,.g-main .tag-list{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:16px 0}
.g-main .stage-chain-item,.g-main .core-pill-item,.g-main .tag-pill{padding:8px 14px;border-radius:999px;border:1px solid var(--line-2);font-size:13.5px;color:var(--ink)}
.g-main .core-pill-item{font-family:var(--display);font-weight:600;font-size:17px;padding:10px 18px;border-color:color-mix(in srgb,var(--ga) 45%,transparent)}
.g-main .stage-chain-arrow,.g-main .core-pill-plus{color:var(--ga);font-family:var(--mono)}
.g-main .stage-chain-item:last-child{background:var(--ga);color:#0b0a05;border-color:var(--ga)}
.g-main .subject-line{margin:14px 0;padding:14px 16px;border-radius:12px;background:#060707;border:1px solid var(--line);font-family:var(--mono);font-size:13.5px;color:var(--ink)}
.g-main .subject-line span{color:var(--ga)}
.g-main .flow-steps{display:grid;gap:8px;margin:16px 0}
.g-main .flow-step{display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px;align-items:center;padding:10px 14px;border-radius:12px;border:1px solid var(--line);background:rgba(255,255,255,.02)}
.g-main .flow-num{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;border:1px solid color-mix(in srgb,var(--ga) 50%,transparent);font-family:var(--mono);font-size:12px;color:var(--ga)}
.g-main .flow-text{font-size:15px;color:var(--ink)}
.g-main .disclaimer{margin-top:28px;padding:16px 18px;border-radius:var(--r);border:1px dashed var(--line-2);font-size:13px;line-height:1.7;color:var(--ink-3)}
.g-main .disclaimer strong{color:var(--ink-2)}
.g-main .btn-ghost{display:inline-flex;align-items:center;height:42px;margin-top:10px;padding:0 18px;border-radius:999px;border:1px solid var(--line-2);color:var(--ink);font-weight:600;font-size:14px;text-decoration:none}
.g-main .btn-ghost:hover{border-color:var(--ga)}
.g-main .check-progress{display:flex;justify-content:space-between;margin-top:18px;font-family:var(--mono);font-size:12px;color:var(--ink-3)}
.g-main .check-progress-count{color:var(--ga);font-weight:700}
.g-main .check-progress-bar{height:4px;margin:8px 0 10px;border-radius:99px;background:rgba(255,255,255,.07);overflow:hidden}
.g-main .check-progress-fill{height:100%;width:0;background:var(--ga);transition:width .4s var(--ease)}
.tk-inline{border:1px solid var(--line-2);border-radius:var(--r);overflow:hidden;background:#0a0b0b;max-height:none}
.tk-inline button::before{border-color:color-mix(in srgb,var(--ga) 60%,transparent)!important}
.tk-inline button[aria-pressed="true"]::before{background:var(--ga)!important;border-color:var(--ga)!important}
.tk-inline button:hover{background:color-mix(in srgb,var(--ga) 5%,transparent)}
.g-main .tk-reset{margin-top:8px;border:0;padding:8px 0;width:auto}
/* profession finder */
.g-main .filter-panel{margin:18px 0;padding:18px 20px;border-radius:var(--r-lg);border:1px solid var(--line-2);background:#0a0b0b}
.g-main .filter-group+.filter-group{margin-top:14px}
.g-main .filter-label{display:block;margin-bottom:8px;font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}
.g-main .filter-chips{display:flex;flex-wrap:wrap;gap:6px}
.g-main .filter-chip{height:34px;padding:0 13px;border-radius:999px;border:1px solid var(--line-2);background:transparent;color:var(--ink-2);font:600 13px var(--body);cursor:pointer;transition:all .2s}
.g-main .filter-chip:hover{color:var(--ink);border-color:var(--ga)}
.g-main .filter-chip[aria-pressed="true"]{background:var(--ga);border-color:var(--ga);color:#0b0a05}
.g-main .filter-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}
.g-main .filter-count{font-family:var(--mono);font-size:13px;color:var(--ink)}
.g-main .filter-count span{color:var(--ga);font-weight:700}
.g-main .filter-clear{border:0;background:none;color:var(--ink-3);font:500 13px var(--body);text-decoration:underline;cursor:pointer}
.g-main .filter-clear:hover{color:var(--ga)}
.g-main .prof-empty{margin-top:14px;padding:16px;border-radius:var(--r);border:1px dashed var(--line-2);color:var(--ink-2);font-size:14px}
.g-main .prof-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}
.g-main .prof-card{display:flex;flex-direction:column;gap:10px;padding:18px;border-radius:var(--r);border:1px solid var(--line);background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.01));transition:border-color .25s}
.g-main .prof-card[hidden]{display:none}
.g-main .prof-card:hover{border-color:color-mix(in srgb,var(--ga) 45%,transparent)}
.g-main .prof-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.g-main .prof-name{font-weight:600;color:var(--ink);font-size:15.5px;line-height:1.35}
.g-main .prof-field{flex:none;font-family:var(--mono);font-size:10.5px;color:var(--ink-3);white-space:nowrap}
.g-main .prof-do{font-size:14px;line-height:1.55;color:var(--ink-2)}
.g-main .prof-meta{display:grid;gap:4px;font-size:13px;line-height:1.5;color:var(--ink-2)}
.g-main .prof-meta b{display:inline-block;min-width:52px;margin-right:6px;font-family:var(--mono);font-weight:400;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3)}
.g-main .prof-lang{align-self:flex-start;margin-top:auto;padding:4px 10px;border-radius:999px;font-size:12px;border:1px solid var(--line-2)}
.g-main .lang-b1{border-color:rgba(0,255,106,.4);color:var(--green)}
.g-main .lang-b2{border-color:rgba(255,210,63,.45);color:#ffd23f}
.g-main .lang-high{border-color:rgba(255,138,138,.45);color:#ff8a8a}
@media(max-width:700px){.g-main .prof-grid{grid-template-columns:minmax(0,1fr)}}
.g-main .score-wrap{overflow-x:auto;margin:16px 0;border:1px solid var(--line-2);border-radius:var(--r)}
.g-main .score-table{width:100%;min-width:560px;border-collapse:collapse;font-size:14px}
.g-main .score-table th,.g-main .score-table td{padding:10px 12px;border-bottom:1px solid rgba(255,255,255,.05);color:var(--ink-2);text-align:left}
.g-main .score-table thead th{background:#0c0d0d}
.g-main .score-name{width:100%;height:36px;padding:0 10px;border-radius:10px;border:1px solid var(--line-2);background:#0e0f0f;color:var(--ink);font:600 13px var(--body)}
.g-main .score-sel{height:34px;padding:0 8px;border-radius:10px;border:1px solid var(--line-2);background:#0e0f0f;color:var(--ink);font:600 13px var(--mono)}
.g-main .score-total td{color:var(--ink);font-weight:700}
.g-main .score-total .tot{font-family:var(--mono);color:var(--ga)}

/* ===== AUSBILDUNG ROADMAP · Linie A (bespoke) ===== */
.pg-road{--pg-accent:#ffd23f;--pg-glow:rgba(255,210,63,.14);--am:#ffd23f}
.pg-road .phero h1 .big{font-size:clamp(42px,5vw,96px);line-height:1}
.pg-road .phero h1 .big em{display:block;color:var(--am)}
.pg-road .phero h1 .flap{font-size:clamp(22px,2.8vw,54px)}
/* metro card */
.metro{--p:0;border:1px solid var(--line-2);border-radius:var(--r-lg);background:#0b0a07;overflow:hidden;box-shadow:0 40px 100px -40px rgba(255,210,63,.3);font-family:var(--mono)}
.metro-top{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:14px 18px;border-bottom:1px solid var(--line);background:#11100a}
.metro-top .kick b{color:var(--am);font-weight:400}
.metro-live{font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:#0b0a05;background:var(--am);padding:3px 9px;border-radius:999px;font-weight:700}
.metro-map{position:relative;padding:44px 22px 30px}
.metro-rail{position:absolute;left:calc(22px + (100% - 44px) / 14);right:calc(22px + (100% - 44px) / 14);top:56px;height:6px;border-radius:99px;background:rgba(255,255,255,.1)}
.metro-done{position:absolute;left:0;top:0;bottom:0;width:calc(var(--p) * 100%);border-radius:inherit;background:var(--am);transition:width .8s var(--ease)}
.metro-train{position:absolute;top:30px;left:calc(22px + (100% - 44px) / 14 + (100% - 44px) * 6 / 7 * var(--p));width:34px;height:34px;margin-left:-17px;display:grid;place-items:center;border-radius:10px;background:var(--am);box-shadow:0 0 0 4px rgba(255,210,63,.18),0 10px 30px rgba(255,210,63,.35);transition:left .8s var(--ease);z-index:2}
.metro-train svg{width:20px;height:20px;fill:none;stroke:#0b0a05;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.metro-stops{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}
.metro-stops a{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;text-decoration:none}
.metro-stops i{width:18px;height:18px;margin-top:2px;border-radius:50%;background:#0b0a07;border:3px solid rgba(255,255,255,.3);transition:all .4s}
.metro-stops li.passed i{border-color:var(--am);background:var(--am)}
.metro-stops b{margin-top:22px;font-size:12.5px;font-weight:700;color:var(--ink);letter-spacing:.02em}
.metro-stops span{font-family:var(--body);font-size:11.5px;color:var(--ink-3)}
.metro-stops a:hover b{color:var(--am)}
.metro-foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 16px;padding:13px 18px;border-top:1px solid var(--line);font-size:12px;color:var(--ink-3)}
.metro-foot b{color:var(--am)}
.metro-foot a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
@media(max-width:560px){
  .metro-map{padding:18px 18px 18px 56px}
  .metro-rail{left:31px;right:auto;top:30px;bottom:30px;width:6px;height:auto}
  .metro-done{width:auto;right:0;height:calc(var(--p) * 100%);bottom:auto}
  .metro-train{left:34px;top:calc(18px + (100% - 36px) * 6 / 7 * var(--p) + (100% - 36px) / 14 - 17px);transition:top .8s var(--ease)}
  .metro-stops{grid-template-columns:minmax(0,1fr);gap:4px}
  .metro-stops a{flex-direction:row;text-align:left;gap:12px;min-height:40px;position:relative}
  .metro-stops i{position:absolute;left:-34px;margin:0}
  .metro-stops b{margin:0;font-size:14px}
}
/* route: the page is the line */
.rroute{position:relative;max-width:calc(1000px + 2 * var(--gutter));margin:0 auto;padding:clamp(40px,6vw,90px) var(--gutter) clamp(30px,4vw,60px)}
.rroute::before{content:'';position:absolute;top:clamp(40px,6vw,90px);bottom:0;left:calc(var(--gutter) + 27px);width:4px;border-radius:99px;background:linear-gradient(var(--am),rgba(255,210,63,.35) 85%,rgba(255,210,63,0))}
.stop{position:relative;padding:0 0 clamp(48px,6vw,80px) 88px;scroll-margin-top:110px}
.stop-sign{position:relative;display:flex;align-items:center;gap:18px;margin-left:-88px;margin-bottom:18px}
.stop-n{flex:none;display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:#0b0a07;border:4px solid var(--am);font-family:var(--mono);font-weight:700;font-size:22px;color:var(--am);box-shadow:0 0 0 6px var(--bg);z-index:1}
.stop-sign.last .stop-n{background:var(--am);color:#0b0a05}
.stop.plain .stop-n{border-color:rgba(255,255,255,.25);color:var(--ink-2);font-size:18px}
.stop-sign>div{padding:10px 20px 12px;border-radius:14px;background:#15130b;border:1px solid rgba(255,210,63,.3);min-width:0}
.stop.plain .stop-sign>div{background:#0f1010;border-color:var(--line-2)}
.stop-sign .kick{color:var(--am)}
.stop.plain .stop-sign .kick{color:var(--ink-3)}
.stop-sign h2{margin-top:4px;font-family:var(--display);font-weight:600;font-size:clamp(24px,2.6vw,40px);line-height:1.1;letter-spacing:-.02em;color:var(--ink)}
.stop>p{margin-top:12px;font-size:16px;line-height:1.75;color:var(--ink-2)}
.stop p strong{color:var(--ink)}
.stop a:not(.btn){color:var(--ink);text-decoration:underline;text-decoration-color:rgba(255,210,63,.55);text-underline-offset:3px}
.rd-h3{margin-top:30px;font-family:var(--display);font-weight:600;font-size:clamp(19px,1.5vw,22px);color:var(--ink)}
.rd-fine{font-size:14px!important;color:var(--ink-3)!important}
@media(max-width:640px){.rroute::before{left:calc(var(--gutter) + 19px)}.stop{padding-left:44px}.stop-sign{margin-left:-44px;gap:12px}.stop-n{width:42px;height:42px;font-size:17px;border-width:3px}.stop-sign>div{padding:8px 14px 10px}}
.rd-note{margin-top:16px;padding:16px 18px;border-radius:var(--r);border:1px solid rgba(255,210,63,.35);background:rgba(255,210,63,.05)}
.rd-note.warn{border-color:rgba(255,138,138,.4);background:rgba(255,138,138,.05)}
.rd-note b{display:block;color:var(--ink);font-size:15px}
.rd-note p{margin-top:6px;font-size:15px;line-height:1.65;color:var(--ink-2)}
.rd-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.rd-chips span{padding:7px 13px;border-radius:999px;border:1px solid var(--line-2);font-size:13.5px;color:var(--ink)}
.rd-chips.tick span::before{content:'✓ ';color:var(--am);font-weight:700}
.rd-dual{list-style:none;margin:14px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;counter-reset:d}
.rd-dual li{position:relative;padding:18px;border-radius:var(--r);border:1px solid var(--line);background:rgba(255,255,255,.02)}
.rd-dual li:not(:last-child)::after{content:'→';position:absolute;right:-12px;top:50%;margin-top:-12px;width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:var(--am);color:#0b0a05;font-weight:700;font-size:13px;z-index:1}
.rd-dual li.end{border-color:rgba(255,210,63,.45);background:rgba(255,210,63,.05)}
.rd-dual .kick{color:var(--am)}
.rd-dual b{display:block;margin-top:6px;font-size:17px;color:var(--ink)}
.rd-dual p{margin-top:6px;font-size:14px;line-height:1.6;color:var(--ink-2)}
@media(max-width:700px){.rd-dual{grid-template-columns:minmax(0,1fr)}.rd-dual li:not(:last-child)::after{right:auto;left:50%;top:auto;bottom:-12px;margin:0 0 0 -12px;content:'↓'}}
.rd-dur{margin-top:14px;padding:16px 18px;border-radius:var(--r);border:1px dashed var(--line-2)}
.rd-dur-bar{position:relative;height:10px;margin:10px 0;border-radius:99px;background:repeating-linear-gradient(90deg,rgba(255,255,255,.08) 0 calc(100%/7 - 2px),transparent calc(100%/7 - 2px) calc(100%/7))}
.rd-dur-bar i{position:absolute;left:calc(100%/7*4);width:calc(100%/7*3);top:0;bottom:0;border-radius:99px;background:linear-gradient(90deg,var(--am),rgba(255,210,63,.4))}
.rd-dur p{font-size:14.5px;line-height:1.6;color:var(--ink-2)}
.rd-why{list-style:none;margin:12px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.rd-why li{padding:12px 14px 12px 40px;position:relative;border-radius:12px;background:rgba(255,255,255,.02);border:1px solid var(--line);font-size:14.5px;color:var(--ink)}
.rd-why li::before{content:'';position:absolute;left:14px;top:50%;width:14px;height:14px;margin-top:-7px;border-radius:50%;border:3px solid var(--am)}
@media(max-width:560px){.rd-why{grid-template-columns:minmax(0,1fr)}}
.rd-q5{list-style:none;margin:16px 0 0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;counter-reset:q}
.rd-q5 li{counter-increment:q;padding:16px;border-radius:var(--r);border:1px solid var(--line);background:rgba(255,255,255,.02)}
.rd-q5 li::before{content:counter(q);display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--am);color:#0b0a05;font-family:var(--mono);font-weight:700;font-size:13px;margin-bottom:10px}
.rd-q5 b{display:block;color:var(--ink);font-size:15px;line-height:1.35}
.rd-q5 p{margin-top:6px;font-size:13.5px;line-height:1.55;color:var(--ink-2)}
@media(max-width:1000px){.rd-q5{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.rd-q5{grid-template-columns:minmax(0,1fr)}}
.rd-sheet{margin-top:14px;border-radius:var(--r);border:1px solid var(--line-2);overflow:hidden;background:#0c0c0a}
.rd-sheet-top{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;border-bottom:1px solid var(--line);background:repeating-linear-gradient(0deg,#12110b 0 23px,#15140d 23px 24px)}
.rd-sheet-top .kick{color:var(--am)}
.rd-clear{border:0;background:none;color:var(--ink-3);font:500 12.5px var(--body);cursor:pointer;text-decoration:underline}
.rd-clear:hover{color:#ff8a8a}
.rd-sheet-scroll{overflow-x:auto}
.rd-sheet table{width:100%;min-width:640px;border-collapse:collapse}
.rd-sheet th{padding:8px 10px;text-align:left;font-family:var(--mono);font-weight:400;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);border-bottom:1px solid var(--line)}
.rd-sheet td{padding:0;border-bottom:1px solid rgba(255,255,255,.05);border-right:1px solid rgba(255,255,255,.05)}
.rd-sheet td:last-child{border-right:0}
.rd-sheet input{width:100%;height:42px;padding:0 10px;border:0;background:transparent;color:var(--ink);font:500 13.5px var(--body)}
.rd-sheet input::placeholder{color:rgba(255,210,63,.45);font-style:italic}
.rd-sheet input:focus{outline:2px solid var(--am);outline-offset:-2px;background:rgba(255,210,63,.04)}
.rd-two{margin-top:14px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;align-items:start}
.rd-two .rd-note{margin-top:0}
@media(max-width:700px){.rd-two{grid-template-columns:minmax(0,1fr)}}
.rd-folder{padding:18px;border-radius:4px 16px 16px 16px;border:1px solid rgba(255,210,63,.35);background:linear-gradient(180deg,#16140c,#0e0d09);position:relative}
.rd-folder::before{content:'';position:absolute;left:-1px;top:-14px;width:110px;height:15px;border-radius:8px 12px 0 0;border:1px solid rgba(255,210,63,.35);border-bottom:0;background:#16140c}
.rd-folder .kick{color:var(--am)}
.rd-folder ul{margin:10px 0 0;padding:0;list-style:none;display:grid;gap:6px}
.rd-folder li{font-size:14.5px;color:var(--ink);padding-left:22px;position:relative}
.rd-folder li::before{content:'▤';position:absolute;left:0;color:var(--am);font-size:12px;top:2px}
.rd-when{margin-top:16px;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.4fr);gap:18px;align-items:center;padding:16px 18px;border-radius:var(--r);border:1px solid rgba(255,210,63,.35);background:rgba(255,210,63,.05)}
.rd-when-bar{position:relative;height:46px;border-radius:12px;background:rgba(255,255,255,.04);overflow:hidden;font-family:var(--mono);font-size:11px}
.rd-when-bar .w{position:absolute;left:0;top:0;bottom:0;width:78%;display:flex;align-items:center;padding-left:10px;background:linear-gradient(90deg,rgba(255,210,63,.55),rgba(255,210,63,.2));color:#0b0a05;font-weight:700}
.rd-when-bar .s{position:absolute;right:0;top:0;bottom:0;display:flex;align-items:center;padding:0 10px;color:var(--am)}
.rd-when b{color:var(--ink)}
.rd-when p{margin-top:4px;font-size:14.5px;line-height:1.6;color:var(--ink-2)}
@media(max-width:700px){.rd-when{grid-template-columns:minmax(0,1fr)}}
.rd-mini{list-style:none;margin:16px 0 4px;padding:0;display:flex;flex-wrap:wrap;align-items:center;gap:0}
.rd-mini li{position:relative;padding:8px 14px;font-size:13.5px;color:var(--ink);border:1px solid var(--line-2);border-radius:999px;background:#0e0d0a}
.rd-mini li:not(:last-child){margin-right:26px}
.rd-mini li:not(:last-child)::after{content:'';position:absolute;right:-27px;top:50%;width:26px;height:3px;margin-top:-1.5px;background:var(--am)}
.rd-mini li.end{background:var(--am);color:#0b0a05;border-color:var(--am);font-weight:600}
@media(max-width:560px){.rd-mini{gap:8px}.rd-mini li:not(:last-child){margin-right:0}.rd-mini li::after{display:none}}
.rd-flips{margin-top:14px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.rd-flip{position:relative;min-height:120px;padding:18px;border-radius:var(--r);border:1px solid var(--line-2);background:linear-gradient(160deg,#141209,#0b0b0a);color:var(--ink);text-align:left;cursor:pointer;font:inherit;perspective:800px;transition:border-color .25s}
.rd-flip:hover{border-color:rgba(255,210,63,.5)}
.rd-flip .en,.rd-flip .de{display:block;transition:opacity .35s,transform .35s var(--ease)}
.rd-flip .en{font-weight:600;font-size:16px;line-height:1.35}
.rd-flip .en i{display:block;font-style:normal;font-family:var(--mono);font-size:11px;color:var(--am);margin-bottom:8px}
.rd-flip .de{position:absolute;inset:18px;opacity:0;transform:translateY(8px);font-family:var(--display);font-size:17px;line-height:1.35;color:var(--am);font-style:italic}
.rd-flip::after{content:'DE ⇄';position:absolute;right:14px;bottom:12px;font-family:var(--mono);font-size:10px;letter-spacing:.1em;color:var(--ink-3)}
.rd-flip[aria-pressed="true"]{border-color:var(--am)}
.rd-flip[aria-pressed="true"] .en{opacity:0;transform:translateY(-8px)}
.rd-flip[aria-pressed="true"] .de{opacity:1;transform:none}
@media(max-width:860px){.rd-flips{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.rd-flips{grid-template-columns:minmax(0,1fr)}}
.rd-tip{margin-top:16px;padding:18px 20px;border-radius:var(--r-lg);border:1px solid rgba(255,210,63,.35);background:radial-gradient(120% 100% at 100% 0%,rgba(255,210,63,.08),transparent 60%),#0b0c0c}
.rd-tip .kick{color:var(--am)}
.rd-tip p{margin-top:8px;font-size:15px;line-height:1.7;color:var(--ink-2)}
.rd-vertrag{position:relative;margin-top:14px;padding:26px 28px 22px;border-radius:6px;background:linear-gradient(180deg,#f4efe1,#e9e2cf);color:#1d1a12;box-shadow:0 30px 60px -30px rgba(0,0,0,.8);transform:rotate(-.6deg)}
.rd-vt-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;padding-bottom:12px;border-bottom:2px solid #1d1a12}
.rd-vt-head b{font-family:var(--display);font-size:22px;letter-spacing:-.01em}
.rd-vt-head span{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#6b634f}
.rd-vertrag ol{margin:14px 0 0;padding:0;list-style:none;counter-reset:v;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 22px}
.rd-vertrag li{counter-increment:v;display:flex;align-items:flex-end;gap:8px;font-size:14px}
.rd-vertrag li::before{content:'§ ' counter(v);font-family:var(--mono);font-size:11px;color:#8a7f63;flex:none}
.rd-vertrag li span{flex:1;padding-bottom:3px;border-bottom:1px dotted #8a7f63;font-weight:600}
.rd-vt-sign{display:flex;justify-content:space-between;gap:20px;margin-top:22px}
.rd-vt-sign span{flex:1;padding-top:6px;border-top:1px solid #1d1a12;font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;color:#6b634f}
@media(max-width:700px){.rd-vertrag ol{grid-template-columns:minmax(0,1fr)}.rd-vertrag{transform:none;padding:20px}}
.rd-pay{margin-top:14px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:end;height:220px;padding-bottom:0;border-bottom:1px solid var(--line-2)}
.rd-pay>div{position:relative;height:100%;display:flex;flex-direction:column;justify-content:flex-end;text-align:center}
.rd-pay b{font-family:var(--mono);font-size:clamp(15px,1.6vw,22px);color:var(--ink);margin-bottom:6px}
.rd-pay i{display:block;height:calc(var(--h) - 40px);border-radius:10px 10px 0 0;background:linear-gradient(180deg,var(--am),rgba(255,210,63,.2))}
.rd-pay span{position:absolute;left:0;right:0;bottom:-26px;font-family:var(--mono);font-size:11.5px;color:var(--ink-2)}
.rd-pay small{display:none}
.rd-pay+.rd-fine{margin-top:40px!important}
.rd-fork{margin-top:16px;padding:18px;border-radius:var(--r-lg);border:1px solid var(--line-2);background:#0b0b0a}
.rd-fork-q{text-align:center}
.rd-fork-q .kick{color:var(--am)}
.rd-fork-q b{display:block;margin-top:6px;font-family:var(--display);font-size:clamp(18px,1.6vw,22px);color:var(--ink)}
.rd-fork-ways{position:relative;margin-top:26px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.rd-fork-ways::before{content:'';position:absolute;left:25%;right:25%;top:-14px;height:14px;border:3px solid var(--am);border-bottom:0;border-radius:12px 12px 0 0}
.rd-way{padding:18px;border-radius:var(--r);border:1px solid var(--line);background:rgba(255,255,255,.02)}
.rd-way.yes{border-color:rgba(0,255,106,.4)}
.rd-way.no{border-color:rgba(255,210,63,.45)}
.rd-way-tag{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase}
.rd-way.yes .rd-way-tag{color:var(--green)}.rd-way.no .rd-way-tag{color:var(--am)}
.rd-way b{display:block;margin-top:6px;color:var(--ink);font-size:16px}
.rd-way p{margin-top:8px;font-size:14px;line-height:1.65;color:var(--ink-2)}
.rd-way a{display:inline-block;margin-top:10px;font-size:13.5px}
@media(max-width:700px){.rd-fork-ways{grid-template-columns:minmax(0,1fr)}.rd-fork-ways::before{display:none}}
.rd-thresh{margin-top:12px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.rd-thresh>div{padding:18px;border-radius:var(--r);border:1px solid var(--line);background:rgba(255,255,255,.02)}
.rd-thresh .kick{color:var(--ink-3)}
.rd-thresh b{display:block;margin-top:6px;font-family:var(--mono);font-size:clamp(26px,2.4vw,36px);color:var(--am)}
.rd-thresh small{font-size:13px;color:var(--ink-2)}
.rd-arrive{margin-top:14px;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:14px;align-items:start}
.rd-case{position:relative;padding:22px 18px 18px;border-radius:18px;border:2px solid rgba(255,210,63,.45);background:#0e0d09}
.rd-case::before{content:'';position:absolute;left:50%;top:-14px;width:70px;height:14px;margin-left:-35px;border:2px solid rgba(255,210,63,.45);border-bottom:0;border-radius:10px 10px 0 0}
.rd-case .kick{color:var(--am)}
.rd-case ul{margin:10px 0 0;padding:0;list-style:none;display:grid;gap:6px}
.rd-case li{font-size:14.5px;color:var(--ink);padding-left:20px;position:relative}
.rd-case li::before{content:'✓';position:absolute;left:0;color:var(--am);font-weight:700}
.rd-after{list-style:none;margin:0;padding:0;counter-reset:a;display:grid;gap:10px}
.rd-after li{counter-increment:a;position:relative;padding:14px 16px 14px 58px;border-radius:var(--r);border:1px solid var(--line);background:rgba(255,255,255,.02)}
.rd-after li::before{content:counter(a);position:absolute;left:16px;top:14px;width:28px;height:28px;display:grid;place-items:center;border-radius:50%;border:2px solid var(--am);font-family:var(--mono);font-size:12px;color:var(--am)}
.rd-after b{color:var(--ink);font-size:15.5px}
.rd-after p{margin-top:4px;font-size:14px;line-height:1.6;color:var(--ink-2)}
@media(max-width:760px){.rd-arrive{grid-template-columns:minmax(0,1fr)}}
.pg-road .g-src{margin-top:14px}
.pg-road .g-src .kick{color:var(--am)}
.pg-road .acc{margin-top:14px}
.rd-ticket{margin-top:16px;border-radius:18px;border:1px solid rgba(255,210,63,.45);background:#0c0b08;overflow:hidden;position:relative}
.rd-ticket::before,.rd-ticket::after{content:'';position:absolute;top:84px;width:22px;height:22px;border-radius:50%;background:var(--bg);border:1px solid rgba(255,210,63,.45)}
.rd-ticket::before{left:-12px}.rd-ticket::after{right:-12px}
.rd-ticket-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:18px 22px;border-bottom:2px dashed rgba(255,210,63,.35);background:linear-gradient(90deg,rgba(255,210,63,.12),rgba(255,210,63,.02))}
.rd-ticket-head .kick{color:var(--am)}
.rd-ticket-head b{display:block;margin-top:2px;font-family:var(--display);font-size:22px;color:var(--ink)}
.rd-ticket-prog{display:flex;align-items:center;gap:12px}
.rd-ticket-prog>b{font-family:var(--mono);font-size:16px;color:var(--am)}
.rd-ticket-bar{display:block;width:140px;height:6px;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden}
.rd-ticket-bar i{display:block;height:100%;width:0;background:var(--am);transition:width .4s var(--ease)}
.rd-tk{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:0;max-height:none}
.rd-tk .tk-grp{grid-column:1/-1;background:#121109;color:var(--am)}
.rd-tk .tk-grp span{display:inline-grid;place-items:center;width:22px;height:22px;margin-right:6px;border-radius:50%;background:var(--am);color:#0b0a05;font-size:10px}
.rd-tk button::before{border-color:rgba(255,210,63,.6)!important}
.rd-tk button[aria-pressed="true"]::before{background:var(--am)!important;border-color:var(--am)!important}
.rd-tk button:hover{background:rgba(255,210,63,.05)}
@media(max-width:640px){.rd-tk{grid-template-columns:minmax(0,1fr)}}
.rd-ticket-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:6px 20px;border-top:1px solid var(--line);font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}
.rd-ticket-foot .tk-reset{width:auto;border:0;padding:10px 0;text-transform:none;letter-spacing:0}

/* ===== AUSBILDUNG ELIGIBILITY · Eignungs-Ampel (bespoke) ===== */
.pg-elig{--pg-accent:#ffd23f;--pg-glow:rgba(255,210,63,.14);--ga:#00ff6a;--er:#ff5a4f;--ey:#ffd23f;--eg:#00ff6a}
.pg-elig .phero h1 .big{font-size:clamp(42px,5vw,96px);line-height:1}
.pg-elig .phero h1 .big em{display:block;color:var(--ey)}
.pg-elig .phero h1 .flap{font-size:clamp(22px,2.8vw,54px)}
/* the traffic light */
.ampel{border:1px solid var(--line-2);border-radius:var(--r-lg);background:#0a0a0a;overflow:hidden;box-shadow:0 40px 100px -40px rgba(255,90,79,.28);transition:box-shadow .6s}
.ampel[data-state="y"]{box-shadow:0 40px 100px -40px rgba(255,210,63,.35)}
.ampel[data-state="g"]{box-shadow:0 40px 100px -40px rgba(0,255,106,.35)}
.am-top{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;border-bottom:1px solid var(--line);background:#101010}
.am-top .kick b{color:var(--ey);font-weight:400}
.am-top a{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#0b0a05;background:var(--ey);padding:4px 10px;border-radius:999px;font-weight:700;white-space:nowrap}
.am-body{display:flex;align-items:center;gap:clamp(20px,3vw,40px);padding:clamp(22px,3vw,34px)}
.am-light{flex:none;display:flex;flex-direction:column;gap:12px;padding:14px;border-radius:40px;background:linear-gradient(#1a1a1a,#0f0f0f);border:1px solid var(--line-2);box-shadow:inset 0 2px 0 rgba(255,255,255,.05)}
.am-light i{display:block;width:56px;height:56px;border-radius:50%;transition:background .5s,box-shadow .5s}
.am-light .r{background:#2a1110}.am-light .y{background:#2a2410}.am-light .g{background:#0d2616}
.am-light.sm{flex-direction:row;gap:6px;padding:6px;border-radius:99px}
.am-light.sm i{width:16px;height:16px}
.ampel:not([data-state]) .r,[data-state="r"]>.am-body .am-light .r,.am-light[data-state="r"] .r,.am-light.sm:not([data-state]) .r{background:var(--er);box-shadow:0 0 0 4px rgba(255,90,79,.12),0 0 36px rgba(255,90,79,.7)}
[data-state="y"]>.am-body .am-light .y,.am-light[data-state="y"] .y{background:var(--ey);box-shadow:0 0 0 4px rgba(255,210,63,.12),0 0 36px rgba(255,210,63,.7)}
[data-state="g"]>.am-body .am-light .g,.am-light[data-state="g"] .g{background:var(--eg);box-shadow:0 0 0 4px rgba(0,255,106,.12),0 0 36px rgba(0,255,106,.7)}
.am-light.sm i{box-shadow:none!important}
.am-verdict{min-width:0}
.am-verdict .kick{color:var(--er);transition:color .4s}
.ampel[data-state="y"] .am-verdict .kick{color:var(--ey)}
.ampel[data-state="g"] .am-verdict .kick{color:var(--eg)}
.am-verdict b{display:block;margin-top:6px;font-family:var(--display);font-weight:600;font-size:clamp(28px,3vw,46px);line-height:1.02;letter-spacing:-.03em;color:var(--ink)}
.am-verdict p{margin-top:12px;font-size:14px;color:var(--ink-3)}
.am-verdict p span{font-family:var(--mono);color:var(--ink)}
.am-gates{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line)}
.am-gates li{border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.am-gates li:nth-child(3n){border-right:0}
.am-gates li:nth-last-child(-n+3){border-bottom:0}
.am-gates a{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:13px 16px;font-size:13.5px;color:var(--ink-2);transition:background .2s}
.am-gates a:hover{background:rgba(255,255,255,.03);color:var(--ink)}
.am-gates i{width:10px;height:10px;border-radius:50%;background:var(--er);box-shadow:0 0 10px rgba(255,90,79,.6);transition:all .4s}
.am-gates [data-state="y"] i{background:var(--ey);box-shadow:0 0 10px rgba(255,210,63,.6)}
.am-gates [data-state="g"] i{background:var(--eg);box-shadow:0 0 10px rgba(0,255,106,.6)}
.am-gates b{font-family:var(--mono);font-size:12px;font-weight:400;color:var(--ink-3)}
.am-gates [data-state="g"] b{color:var(--eg)}
.am-foot{padding:11px 18px;border-top:1px solid var(--line);font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:var(--ink-3);background:#0d0d0d}
@media(max-width:560px){
  .am-light i{width:40px;height:40px}.am-light{gap:9px;padding:10px}
  .am-gates{grid-template-columns:repeat(2,minmax(0,1fr))}
  .am-gates li{border-right:1px solid var(--line)!important;border-bottom:1px solid var(--line)!important}
  .am-gates li:nth-child(2n){border-right:0!important}
  .am-gates li:nth-last-child(-n+2){border-bottom:0!important}
  .am-top a{display:none}
}
/* the report: stacked inspection sheets */
.report{max-width:calc(1040px + 2 * var(--gutter));margin:0 auto;padding:clamp(40px,6vw,90px) var(--gutter) 0}
.ck{padding:clamp(44px,6vw,80px) 0;border-top:1px solid var(--line);scroll-margin-top:110px}
.ck:first-child{border-top:0;padding-top:0}
.ck-intro{font-family:var(--display);font-weight:600;font-size:clamp(28px,3.2vw,48px);line-height:1.05;letter-spacing:-.03em}
.ck>p{margin-top:14px;font-size:16px;line-height:1.75;color:var(--ink-2)}
.ck p strong,.ck li strong{color:var(--ink)}
.ck a:not(.btn){color:var(--ink);text-decoration:underline;text-decoration-color:rgba(255,210,63,.55);text-underline-offset:3px}
.ck-tag{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:clamp(14px,2vw,24px);margin-bottom:20px}
.ck-n{display:grid;place-items:center;width:58px;height:58px;border-radius:14px;border:1px solid rgba(255,210,63,.45);background:#12110a;font-family:var(--mono);font-weight:700;font-size:20px;color:var(--ey)}
.ck-tag.plain .ck-n{border-color:var(--line-2);background:#0f0f0f;color:var(--ink-2)}
.ck-tag .kick{color:var(--ey)}
.ck-tag.plain .kick{color:var(--ink-3)}
.ck-tag h2{margin-top:4px;font-family:var(--display);font-weight:600;font-size:clamp(24px,2.6vw,40px);line-height:1.1;letter-spacing:-.02em}
.ck-lamp{display:inline-flex;align-items:center;gap:9px;padding:8px 13px 8px 10px;border-radius:999px;border:1px solid var(--line-2);background:#0d0d0d;white-space:nowrap}
.ck-lamp i{width:12px;height:12px;border-radius:50%;background:var(--er);box-shadow:0 0 12px rgba(255,90,79,.65);transition:all .4s}
.ck-lamp b{font-family:var(--mono);font-size:12px;font-weight:400;color:var(--ink-2)}
[data-state="y"] .ck-lamp i{background:var(--ey);box-shadow:0 0 12px rgba(255,210,63,.65)}
[data-state="g"] .ck-lamp i{background:var(--eg);box-shadow:0 0 12px rgba(0,255,106,.65)}
[data-state="g"] .ck-lamp{border-color:rgba(0,255,106,.4)}
@media(max-width:640px){.ck-n{width:44px;height:44px;font-size:16px;border-radius:11px}.ck-tag{grid-template-columns:auto minmax(0,1fr)}.ck-lamp{grid-column:1/-1;justify-self:start}}
.el-h3{margin-top:34px;font-family:var(--display);font-weight:600;font-size:clamp(19px,1.5vw,22px);color:var(--ink)}
.el-note{margin-top:18px;padding:16px 18px;border-radius:var(--r);border:1px solid rgba(255,210,63,.35);background:rgba(255,210,63,.05)}
.el-note.warn{border-color:rgba(255,90,79,.45);background:rgba(255,90,79,.06)}
.el-note b{display:block;color:var(--ink);font-size:15px}
.el-note p{font-size:15px;line-height:1.65;color:var(--ink-2)}
.el-note b+p{margin-top:6px}
/* quick check */
.qc{display:flex;align-items:center;gap:clamp(18px,3vw,36px);padding:clamp(20px,3vw,30px);border-radius:var(--r-lg);border:1px solid rgba(255,210,63,.3);background:radial-gradient(120% 140% at 0 0,rgba(255,210,63,.1),transparent 60%),#0c0b08}
.qc-ring{position:relative;flex:none;width:128px;height:128px}
.qc-ring svg{width:100%;height:100%;transform:rotate(-90deg)}
.qc-ring circle{fill:none;stroke:rgba(255,255,255,.08);stroke-width:8}
.qc-ring .qc-fill{stroke:var(--ey);stroke-linecap:round;stroke-dasharray:326.7;stroke-dashoffset:326.7;transition:stroke-dashoffset .6s var(--ease)}
.qc-ring>div{position:absolute;inset:0;display:grid;place-content:center;text-align:center}
.qc-ring b{font-family:var(--mono);font-size:19px;color:var(--ink)}
.qc-ring span{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}
.qc-txt .kick{color:var(--ey)}
.qc-txt h2{margin-top:4px;font-family:var(--display);font-weight:600;font-size:clamp(24px,2.6vw,38px);line-height:1.1;letter-spacing:-.02em}
.qc-txt p{margin-top:8px;font-size:15px;line-height:1.65;color:var(--ink-2)}
@media(max-width:560px){.qc{flex-direction:column;align-items:flex-start}.qc-ring{width:104px;height:104px}}
/* ticks — green = passed */
.el-tk{margin-top:14px;border:1px solid var(--line);border-radius:var(--r);background:#0b0b0b;max-height:none;overflow:hidden}
.el-tk.two{grid-template-columns:repeat(2,minmax(0,1fr));background-image:linear-gradient(90deg,transparent calc(50% - .5px),rgba(255,255,255,.06) 0,rgba(255,255,255,.06) calc(50% + .5px),transparent 0)}
.el-tk button::before{border-color:rgba(255,210,63,.6)}
.el-tk button:hover{background:rgba(255,210,63,.05)}
.el-tk .tk-grp{grid-column:1/-1;display:flex;align-items:center;gap:10px;color:var(--ink-2)}
.el-tk .tk-grp::before{content:'';width:9px;height:9px;border-radius:50%;background:var(--er);box-shadow:0 0 8px rgba(255,90,79,.6);transition:all .4s}
.el-tk .tk-grp[data-state="y"]::before{background:var(--ey);box-shadow:0 0 8px rgba(255,210,63,.6)}
.el-tk .tk-grp[data-state="g"]::before{background:var(--eg);box-shadow:0 0 8px rgba(0,255,106,.6)}
.el-tk .tk-grp[data-n]::after{content:attr(data-n);margin-left:auto;color:var(--ink-3)}
@media(max-width:700px){.el-tk.two{grid-template-columns:minmax(0,1fr);background-image:none}}
/* 01 · stairs + three forms */
.el-stairs{list-style:none;margin:20px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;align-items:end}
.el-stairs li{padding:18px;border-radius:var(--r) var(--r) 6px 6px;border:1px solid var(--line);border-top:3px solid var(--ey);background:linear-gradient(rgba(255,210,63,.07),rgba(255,255,255,.01))}
.el-stairs li:nth-child(1){min-height:130px}.el-stairs li:nth-child(2){min-height:165px}.el-stairs li:nth-child(3){min-height:200px}
.el-stairs .kick{color:var(--ey)}
.el-stairs p{margin-top:8px;font-size:14.5px;line-height:1.55;color:var(--ink-2)}
@media(max-width:640px){.el-stairs{grid-template-columns:minmax(0,1fr)}.el-stairs li{min-height:0!important}.el-stairs li:nth-child(2){margin-left:14px}.el-stairs li:nth-child(3){margin-left:28px}}
.el-forms{margin-top:18px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:20px;border-radius:var(--r-lg);border:1px dashed var(--line-2)}
.el-forms-head,.el-forms-foot{grid-column:1/-1}
.el-forms-head b{font-size:15px}
.el-form{--c:var(--ey);position:relative;margin-top:14px;padding:22px 18px 18px;border-radius:4px 14px 14px 14px;border:1px solid var(--line-2);background:#0e0e0e}
.el-form.f2{--c:var(--magenta-soft)}.el-form.f3{--c:var(--green-soft)}
.el-form-tab{position:absolute;left:-1px;top:-24px;padding:4px 12px;border-radius:8px 8px 0 0;background:var(--c);color:#070707;font-family:var(--mono);font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.el-form>b{display:block;font-family:var(--display);font-size:17px;color:var(--c)}
.el-form p{margin-top:6px;font-size:14px;line-height:1.55;color:var(--ink-2)}
.el-forms-foot{font-size:14.5px;line-height:1.65;color:var(--ink-2)}
@media(max-width:760px){.el-forms{grid-template-columns:minmax(0,1fr);padding:16px}.el-form{margin-top:22px}}
/* 02 · three bars */
.el-bars{margin-top:20px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(10px,2vw,24px);padding:22px clamp(14px,2vw,26px);border-radius:var(--r-lg);border:1px solid var(--line);background:#0b0b0b}
.el-bar{text-align:center}
.el-bar-col{position:relative;height:190px;border-bottom:1px solid var(--line-2)}
.el-bar-col::before{content:'';position:absolute;left:18%;right:18%;bottom:0;height:var(--h);border-radius:10px 10px 0 0;background:var(--ey)}
.el-bar.q .el-bar-col::before{background:repeating-linear-gradient(135deg,rgba(255,210,63,.55) 0 8px,rgba(255,210,63,.18) 8px 16px);border:1px dashed rgba(255,210,63,.7);border-bottom:0}
.el-bar-col span{position:absolute;left:0;right:0;bottom:calc(var(--h) + 8px);font-family:var(--mono);font-weight:700;font-size:15px;color:var(--ink)}
.el-bar>b{display:block;margin-top:12px;font-size:15px}
.el-bar p{margin-top:4px;font-size:13px;line-height:1.45;color:var(--ink-3)}
.el-five{list-style:none;margin:14px 0 0;padding:0;counter-reset:f;display:grid;gap:8px}
.el-five li{counter-increment:f;position:relative;min-height:58px;padding:16px 16px 16px 64px;border-radius:12px;border:1px solid var(--line);font-size:15px;line-height:1.55;color:var(--ink-2)}
.el-five li::before{content:'?' counter(f);position:absolute;left:14px;top:11px;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;border:1px solid rgba(255,210,63,.5);font-family:var(--mono);font-size:12px;color:var(--ey)}
/* 03 · occupation */
.el-occ{margin-top:18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.el-occ>div{padding:20px;border-radius:var(--r);border:1px solid var(--line);background:rgba(255,255,255,.02)}
.el-occ>div.wide{grid-column:1/-1;border-color:rgba(255,210,63,.35)}
.el-occ-n{font-family:var(--mono);font-size:12px;color:var(--ey)}
.el-occ b{display:block;margin-top:6px;font-size:16px}
.el-occ p{margin-top:6px;font-size:14.5px;line-height:1.6;color:var(--ink-2)}
@media(max-width:640px){.el-occ{grid-template-columns:minmax(0,1fr)}}
/* 04 · clipboard */
.el-sign{position:relative;margin-top:30px;padding:34px clamp(18px,3vw,30px) 22px;border-radius:var(--r-lg);border:1px solid var(--line-2);background:#0e0e0d}
.el-sign::before{content:'';position:absolute;top:-12px;left:50%;width:120px;height:24px;margin-left:-60px;border-radius:8px;background:linear-gradient(#3a3a3a,#222);border:1px solid var(--line-2)}
.el-sign .kick{color:var(--ey)}
.el-sign ul{list-style:none;margin:14px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 24px}
.el-sign li{display:grid;grid-template-columns:6px minmax(0,1fr);gap:14px;padding:9px 0;border-bottom:1px dotted rgba(255,255,255,.12);font-size:14.5px;color:var(--ink-2)}
.el-sign li::before{content:'';width:6px;height:6px;margin-top:.62em;border-radius:50%;background:rgba(255,210,63,.85)}
.el-sign>p{margin-top:22px;padding-top:16px;border-top:1px dashed rgba(255,210,63,.35);font-size:14.5px;line-height:1.6;color:var(--ink-2)}
@media(max-width:640px){.el-sign ul{grid-template-columns:minmax(0,1fr)}}
/* 05 · tray */
.el-tray{margin-top:18px;border-radius:var(--r-lg);border:1px solid rgba(255,210,63,.35);background:#0c0b08;padding:6px}
.el-tray-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px 8px}
.el-tray-head .kick{color:var(--ey)}
.el-tray-head b{font-family:var(--mono);font-size:15px;color:var(--ey)}
.el-tray .el-tk{margin-top:4px}
/* APS split */
.el-split{margin-top:4px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.el-split>div{padding:20px;border-radius:var(--r);border:1px solid var(--line);background:rgba(255,255,255,.02)}
.el-split>div.rec{border-color:rgba(255,210,63,.4);background:rgba(255,210,63,.05)}
.el-split .kick{color:var(--ey)}
.el-split p{margin-top:8px;font-size:14.5px;line-height:1.65;color:var(--ink-2)}
@media(max-width:760px){.el-split{grid-template-columns:minmax(0,1fr)}}
/* 06 · money */
.el-thresh{margin-top:18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.el-thresh>div{padding:20px 22px;border-radius:var(--r);border:1px solid rgba(0,255,106,.3);background:rgba(0,255,106,.04)}
.el-thresh .kick{color:var(--eg)}
.el-thresh b{display:block;margin-top:6px;font-family:var(--mono);font-size:clamp(32px,3.4vw,48px);line-height:1;color:var(--ink)}
.el-thresh small{display:block;margin-top:8px;font-size:12.5px;color:var(--ink-3)}
.el-min{position:relative;margin-top:16px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;align-items:end;height:220px;padding:34px 16px 0;border-radius:var(--r-lg);border:1px solid var(--line);background:#0b0b0b}
.el-min::before{content:'€1,048 livelihood benchmark';position:absolute;left:16px;right:16px;top:34px;padding-bottom:4px;border-bottom:1px dashed rgba(0,255,106,.6);font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;color:var(--eg);transform:translateY(-100%)}
.el-min>div{display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:4px;padding:10px 4px;border-radius:10px 10px 0 0;background:linear-gradient(rgba(255,210,63,.3),rgba(255,210,63,.08));border:1px solid rgba(255,210,63,.45);border-bottom:0}
.el-min>div:nth-child(1){height:69.1%}.el-min>div:nth-child(2){height:81.5%}.el-min>div:nth-child(3){height:93.2%}.el-min>div:nth-child(4){height:96.8%}
.el-min span{font-size:11.5px;color:var(--ink-3)}
.el-min b{font-family:var(--mono);font-size:clamp(14px,1.6vw,19px);color:var(--ink)}
.el-trap{margin-top:22px;padding:22px clamp(18px,3vw,28px);border-radius:var(--r-lg);border:1px solid rgba(255,90,79,.5);background:radial-gradient(100% 120% at 100% 0,rgba(255,90,79,.1),transparent 60%),#0d0909}
.el-trap>b{display:block;font-size:16px;color:var(--ink)}
.el-trap p{margin-top:12px;font-size:15px;line-height:1.7;color:var(--ink-2)}
.el-gap{position:relative;margin:20px 0 34px;height:48px;border-radius:12px;background:rgba(255,255,255,.04);border:1px solid var(--line-2)}
.el-gap-min{position:absolute;left:0;top:0;bottom:0;width:var(--w);border-radius:11px 0 0 11px;background:var(--ey);display:flex;align-items:center;padding:0 12px}
.el-gap-min span{font-family:var(--mono);font-size:12px;font-weight:700;color:#0b0a05;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.el-gap-hole{position:absolute;left:var(--l);right:0;top:0;bottom:0;border-radius:0 11px 11px 0;background:repeating-linear-gradient(135deg,rgba(255,90,79,.5) 0 7px,rgba(255,90,79,.15) 7px 14px);display:grid;place-items:center}
.el-gap-hole span{font-family:var(--mono);font-size:12px;font-weight:700;color:#fff;white-space:nowrap}
.el-gap-line{position:absolute;right:-1px;top:-6px;bottom:-6px;border-right:2px solid var(--eg)}
.el-gap-line span{position:absolute;right:-2px;top:100%;margin-top:6px;font-family:var(--mono);font-size:11px;color:var(--eg);white-space:nowrap}
@media(max-width:560px){.el-thresh{grid-template-columns:minmax(0,1fr)}.el-min{height:200px;gap:6px;padding:34px 10px 0}.el-min::before{left:10px;right:10px}.el-min span{font-size:10px}.el-gap-min span{font-size:10.5px;white-space:normal;line-height:1.25}.el-gap-min{padding:0 8px}.el-gap-hole span{font-size:10.5px}}
/* 07 · two doors */
.el-doors{margin-top:22px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.el-door{--c:var(--eg);position:relative;padding:34px clamp(18px,2.4vw,26px) 24px;border-radius:120px 120px var(--r) var(--r);border:1px solid var(--c);background:linear-gradient(color-mix(in srgb,var(--c) 10%,transparent),transparent 45%),#0c0c0c}
.el-door.b{--c:var(--ey)}
.el-door::after{content:'';position:absolute;right:7px;top:58%;width:10px;height:10px;border-radius:50%;background:var(--c);box-shadow:0 0 12px var(--c);opacity:.7}
.el-door-q{display:block;text-align:center;font-family:var(--mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--c)}
.el-door>b{display:block;margin-top:10px;text-align:center;font-family:var(--display);font-size:clamp(19px,1.6vw,23px);color:var(--ink)}
.el-door p{margin-top:12px;font-size:14.5px;line-height:1.65;color:var(--ink-2)}
.el-door p.ok{padding:10px 12px;border-radius:10px;background:rgba(0,255,106,.08);color:var(--ink)}
.el-self{margin-top:14px;display:grid;gap:6px}
.el-self button{position:relative;padding:10px 12px 10px 40px;border-radius:10px;border:1px solid var(--line-2);text-align:left;font-size:14px;color:var(--ink);transition:background .2s,border-color .2s}
.el-self button::before{content:'';position:absolute;left:12px;top:50%;width:16px;height:16px;margin-top:-8px;border-radius:50%;border:1.5px solid rgba(255,210,63,.6)}
.el-self button[aria-pressed="true"]{border-color:rgba(0,255,106,.45);background:rgba(0,255,106,.06)}
.el-self button[aria-pressed="true"]::before{background:var(--eg);border-color:var(--eg);box-shadow:0 0 10px rgba(0,255,106,.6)}
.el-self-out{margin-top:6px!important;font-family:var(--mono);font-size:12px!important;color:var(--ink-3)!important}
.el-self.all .el-self-out{color:var(--eg)!important}
@media(max-width:760px){.el-doors{grid-template-columns:minmax(0,1fr)}.el-door{border-radius:90px 90px var(--r) var(--r)}.el-door::after{display:none}}
/* am I ready */
.el-ready{margin-top:18px;border-radius:var(--r-lg);border:1px solid var(--line-2);background:#0b0b0b;overflow:hidden}
.el-ready-head{display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:16px;padding:16px 18px;border-bottom:1px solid var(--line);background:#101010}
.el-ready-head .kick{display:block}
.el-ready-head b{font-family:var(--mono);font-size:18px;color:var(--ink)}
.el-ready-bar{display:block;height:6px;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden}
.el-ready-bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--er),var(--ey) 55%,var(--eg));transition:width .5s var(--ease)}
.el-ready .el-tk{margin:0;border:0;border-radius:0}
.el-ready-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:4px 18px;border-top:1px solid var(--line);font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:var(--ink-3)}
.el-ready-foot .tk-reset{width:auto;border:0;padding:10px 0}
.el-verdict{margin-top:18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.el-verdict>div{padding:20px;border-radius:var(--r);border:1px solid rgba(255,90,79,.4);background:rgba(255,90,79,.04)}
.el-verdict>div.go{border-color:rgba(0,255,106,.4);background:rgba(0,255,106,.04)}
.el-verdict .lamp{display:inline-block;width:12px;height:12px;margin-right:10px;border-radius:50%;background:var(--er);box-shadow:0 0 12px var(--er);vertical-align:1px}
.el-verdict .lamp.g{background:var(--eg);box-shadow:0 0 12px var(--eg)}
.el-verdict b{font-size:16px}
.el-verdict ul{margin:12px 0 0;padding-left:18px;display:grid;gap:6px;font-size:14.5px;line-height:1.55;color:var(--ink-2)}
.el-final{list-style:none;margin:14px 0 0;padding:0;counter-reset:v;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.el-final li{counter-increment:v;padding:16px;border-radius:var(--r);border:1px solid var(--line);background:rgba(255,255,255,.02)}
.el-final li::before{content:counter(v);display:grid;place-items:center;width:28px;height:28px;margin-bottom:12px;border-radius:50%;background:var(--eg);color:#041008;font-family:var(--mono);font-size:12px;font-weight:700}
.el-final b{display:block;font-size:15px}
.el-final p{margin-top:6px;font-size:13.5px;line-height:1.55;color:var(--ink-2)}
@media(max-width:980px){.el-final{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.el-verdict,.el-final{grid-template-columns:minmax(0,1fr)}.el-ready-head{grid-template-columns:auto minmax(0,1fr)}.el-ready-bar{grid-column:1/-1}}
/* mistakes */
.el-mist{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.el-mist li{position:relative;padding:14px 16px 14px 50px;border-radius:12px;border:1px solid var(--line);font-size:15px;line-height:1.6;color:var(--ink-2)}
.el-mist li::before{content:'✕';position:absolute;left:14px;top:14px;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:rgba(255,90,79,.15);color:var(--er);font-size:12px;font-weight:700}
.el-mist b{color:var(--ink)}
.pg-elig .g-src .kick{color:var(--ey)}
.pg-elig .acc{margin-top:6px}

/* ===== AUSBILDUNG APPLICATION · Die Bewerbungsmappe (bespoke) ===== */
.pg-apply{--pg-accent:#ffd23f;--pg-glow:rgba(255,210,63,.14);--ga:#ffd23f;--pa:#ffd23f;--paper:#f2ede2;--pink:#1c1813;--kraft:#b48a52;--kraft-2:#94703f}
.pg-apply .phero h1 .big{font-size:clamp(42px,5vw,96px);line-height:1}
.pg-apply .phero h1 .big em{display:block;color:var(--pa)}
.pg-apply .phero h1 .flap{font-size:clamp(22px,2.8vw,54px)}
/* hero card with a kraft envelope */
.mappe{--a:0;--l:0;--n:0;border:1px solid var(--line-2);border-radius:var(--r-lg);background:#0b0a08;overflow:hidden;box-shadow:0 40px 100px -40px rgba(255,210,63,.3)}
.mp-top{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;border-bottom:1px solid var(--line);background:#11100b}
.mp-top .kick b{color:var(--pa);font-weight:400}
.mp-state{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);white-space:nowrap}
.mappe.sealed .mp-state{color:#0b0a05;background:var(--pa);padding:3px 9px;border-radius:999px;font-weight:700}
.env{position:relative;height:290px;max-width:400px;margin:26px auto 18px;width:calc(100% - 40px)}
.env-back{position:absolute;left:0;right:0;bottom:0;height:190px;border-radius:8px;background:linear-gradient(#7a5b31,#664b27)}
.env-flap{position:absolute;left:0;right:0;top:100px;height:104px;clip-path:polygon(0 0,100% 0,50% 100%);background:linear-gradient(#8a6a3c,#a07a45);transform-origin:50% 0;transform:rotateX(180deg);transition:transform .7s var(--ease);z-index:0}
.env-sheet{--p:var(--a);position:absolute;bottom:14px;width:52%;height:182px;padding:14px 14px 0;border-radius:4px;background:var(--paper);box-shadow:0 10px 30px rgba(0,0,0,.45);transition:transform .7s var(--ease);z-index:1}
.env-sheet.s1{left:1%;transform:translateY(calc((1 - var(--p)) * -92px)) rotate(-7deg)}
.env-sheet.s2{--p:var(--l);left:24%;transform:translateY(calc((1 - var(--p)) * -102px)) rotate(1deg)}
.env-sheet.s3{--p:var(--n);left:47%;transform:translateY(calc((1 - var(--p)) * -86px)) rotate(6deg)}
.env-sheet b{display:block;font-family:var(--mono);font-size:10px;letter-spacing:.06em;white-space:nowrap;text-transform:uppercase;color:#3b2f1d}
.env-sheet i{display:block;height:5px;margin-top:9px;border-radius:2px;background:rgba(40,32,20,calc(.1 + var(--p) * .45));transition:background .6s}
.env-sheet i:nth-child(2){width:88%}.env-sheet i:nth-child(3){width:94%}.env-sheet i:nth-child(4){width:70%}.env-sheet i:nth-child(5){width:82%}.env-sheet i:nth-child(6){width:46%}
.env-front{position:absolute;left:0;right:0;bottom:0;height:150px;border-radius:0 0 8px 8px;clip-path:polygon(0 0,50% 46%,100% 0,100% 100%,0 100%);background:linear-gradient(160deg,var(--kraft),var(--kraft-2));z-index:3;transition:clip-path .6s var(--ease),height .6s var(--ease)}
.env-front::after{content:'';position:absolute;inset:0;background:linear-gradient(20deg,rgba(0,0,0,.18),transparent 40%)}
.env-seal{position:absolute;left:50%;top:176px;width:92px;height:92px;margin-left:-46px;display:grid;place-content:center;text-align:center;border-radius:50%;border:3px double #0b0a05;background:var(--pa);color:#0b0a05;font-family:var(--mono);font-weight:700;font-size:15px;letter-spacing:.06em;text-transform:uppercase;line-height:1.1;transform:rotate(-14deg) scale(0);transition:transform .5s cubic-bezier(.3,1.6,.5,1) .35s;z-index:6;box-shadow:0 10px 30px rgba(0,0,0,.5)}
.env-seal small{display:block;margin-top:3px;font-size:8.5px;letter-spacing:.08em}
.mappe.sealed .env-flap{transform:rotateX(0);z-index:5}
.mappe.sealed .env-front{height:190px;clip-path:polygon(0 0,50% 0,100% 0,100% 100%,0 100%);border-radius:8px}
.mappe.sealed .env-seal{transform:rotate(-14deg) scale(1)}
.env-sheet{transition:transform .7s var(--ease),opacity .3s}
.mappe.sealed .env-sheet{opacity:0;transition:transform .7s var(--ease),opacity .3s .45s}
@media(max-width:560px){.mp-top .kick{font-size:10px;letter-spacing:.08em}}
.mp-rows{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.mp-rows li+li{border-top:1px solid var(--line)}
.mp-rows a{display:grid;grid-template-columns:minmax(0,1fr) auto 90px;align-items:center;gap:14px;padding:11px 18px;font-size:14px;color:var(--ink-2);transition:background .2s}
.mp-rows a:hover{background:rgba(255,210,63,.04);color:var(--ink)}
.mp-rows small{font-size:12px;color:var(--ink-3)}
.mp-rows b{font-family:var(--mono);font-size:12.5px;font-weight:400;color:var(--ink)}
.mp-rows em{display:block;height:5px;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden}
.mp-rows em i{display:block;height:100%;width:0;background:var(--pa);transition:width .5s var(--ease)}
.mp-foot{padding:11px 18px;border-top:1px solid var(--line);font-size:12.5px;color:var(--ink-3);background:#0d0c0a}
@media(max-width:560px){.env{height:250px;margin-top:18px}.env-back{height:165px}.env-flap{top:85px;height:90px}.env-sheet{height:160px;padding:10px 8px 0}.env-sheet b{font-size:8.5px}.mappe.sealed .env-front{height:165px}.env-front{height:130px}.env-seal{top:150px;width:80px;height:80px;margin-left:-40px;font-size:13px}.mp-rows a{grid-template-columns:minmax(0,1fr) auto 56px;gap:10px;padding:11px 14px}}
/* body: a folder with register tabs */
.mappe-body{max-width:calc(1080px + 2 * var(--gutter));margin:0 auto;padding:clamp(40px,6vw,90px) var(--gutter) 0}
.bw{padding:clamp(40px,6vw,80px) 0 0;scroll-margin-top:110px}
.bw:first-child{padding-top:0}
.bw-head{margin-bottom:18px}
.bw-tab{display:inline-block;padding:7px 16px 6px;border-radius:10px 10px 0 0;background:var(--pa);color:#0b0a05;font-family:var(--mono);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.bw-head h2{padding-top:16px;border-top:2px solid var(--pa);font-family:var(--display);font-weight:600;font-size:clamp(26px,2.8vw,42px);line-height:1.08;letter-spacing:-.025em}
.bw>p,.ap-doc-txt>p{margin-top:14px;font-size:16px;line-height:1.75;color:var(--ink-2)}
.bw p strong,.bw li strong{color:var(--ink)}
.bw a:not(.btn){color:var(--ink);text-decoration:underline;text-decoration-color:rgba(255,210,63,.55);text-underline-offset:3px}
.ap-h3{margin-top:32px;font-family:var(--display);font-weight:600;font-size:clamp(19px,1.5vw,23px);color:var(--ink)}
.ap-note{margin-top:18px;padding:16px 18px;border-radius:var(--r);border:1px solid rgba(255,210,63,.35);background:rgba(255,210,63,.05)}
.ap-note.warn{border-color:rgba(255,120,100,.45);background:rgba(255,120,100,.06)}
.ap-note b{display:block;color:var(--ink);font-size:15px}
.ap-note p{font-size:15px;line-height:1.65;color:var(--ink-2)}
.ap-note b+p,.ap-note p+p{margin-top:8px}
/* paper bits */
.ap-trio{margin-top:20px;display:flex;align-items:center;gap:14px}
.ap-paper{flex:1;min-width:0;padding:16px 16px 18px;border-radius:4px;background:var(--paper);color:var(--pink);box-shadow:0 14px 34px -12px rgba(0,0,0,.7)}
.ap-paper:nth-child(1){transform:rotate(-2deg)}.ap-paper:nth-child(5){transform:rotate(2deg)}
.ap-paper .kick{color:#7a6446;font-size:10px}
.ap-paper b{display:block;margin-top:4px;font-family:var(--display);font-size:clamp(18px,1.8vw,24px);letter-spacing:-.02em}
.ap-paper i{display:block;height:5px;margin-top:9px;border-radius:2px;background:rgba(40,32,20,.16)}
.ap-paper i:nth-of-type(2){width:80%}.ap-paper i:nth-of-type(3){width:55%}
.ap-plus{flex:none;font-family:var(--mono);font-size:26px;color:var(--pa)}
@media(max-width:640px){.ap-trio{flex-direction:column;align-items:stretch;gap:4px}.ap-plus{text-align:center;font-size:18px;line-height:1}.ap-paper{transform:none!important;display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:12px 14px}.ap-paper i{display:none}.ap-paper b{order:-1;margin:0}}
/* recruiting timeline */
.ap-when{position:relative;margin-top:16px;padding:22px 0 4px}
.ap-when-rail{position:absolute;left:0;right:0;top:30px;height:4px;border-radius:99px;background:rgba(255,255,255,.08)}
.ap-when-rail i{position:absolute;inset:0;border-radius:inherit;background:linear-gradient(90deg,rgba(255,210,63,.25),var(--pa))}
.ap-when ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.ap-when li{position:relative;padding-top:30px}
.ap-when li::before{content:'';position:absolute;left:0;top:0;width:20px;height:20px;border-radius:50%;background:var(--bg);border:3px solid var(--pa)}
.ap-when li.w4::before{background:var(--pa)}
.ap-when .kick{color:var(--pa)}
.ap-when b{display:block;margin-top:6px;font-size:15.5px}
.ap-when p{margin-top:4px;font-size:13.5px;line-height:1.55;color:var(--ink-3)}
@media(max-width:760px){.ap-when{padding:0}.ap-when-rail{left:8px;right:auto;top:10px;bottom:10px;width:4px;height:auto}.ap-when ol{grid-template-columns:minmax(0,1fr);gap:18px}.ap-when li{padding:0 0 0 36px}.ap-when li::before{top:2px}}
/* the three documents */
.ap-doc{margin-top:34px;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(20px,3vw,44px);align-items:start}
.ap-doc+.ap-doc{padding-top:34px;border-top:1px dashed var(--line-2)}
.ap-doc-n{font-family:var(--mono);font-size:12px;color:var(--pa)}
.ap-doc-txt .ap-h3{margin-top:6px}
.ap-card{position:sticky;top:150px;border-radius:var(--r-lg);border:1px solid rgba(255,210,63,.3);background:#0c0b08;overflow:hidden}
.ap-card-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px 10px}
.ap-card-head .kick{color:var(--pa)}
.ap-card-head b{font-family:var(--mono);font-size:15px;color:var(--pa)}
.ap-bar{display:block;height:4px;margin:0 18px 12px;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden}
.ap-bar i{display:block;height:100%;width:0;background:var(--pa);transition:width .45s var(--ease)}
.ap-tk{max-height:none;overflow:visible}
.ap-tk button::before{border-color:rgba(255,210,63,.6)}
.ap-tk button:hover{background:rgba(255,210,63,.05)}
.ap-tk button[aria-pressed="true"]::after{border-color:#0b0a05}
@media(max-width:900px){.ap-doc{grid-template-columns:minmax(0,1fr)}.ap-card{position:static}}
.ap-letter{margin-top:18px;padding:22px 24px 20px;border-radius:4px;background:var(--paper);color:var(--pink);box-shadow:0 20px 44px -16px rgba(0,0,0,.75);transform:rotate(-.6deg)}
.ap-letter-meta{display:grid;grid-template-columns:1fr;justify-items:start;gap:6px}
.ap-letter-meta i{display:block;width:34%;height:5px;border-radius:2px;background:rgba(40,32,20,.18)}
.ap-letter-meta i+i{width:24%}
.ap-letter-meta span{justify-self:end;margin-top:4px;font-family:var(--mono);font-size:11px;color:#7a6446}
.ap-letter-sub{margin-top:14px;font-weight:700;font-size:14px}
.ap-letter ol{margin:12px 0 0;padding-left:22px;display:grid;gap:6px}
.ap-letter li b{font-family:var(--display);font-size:clamp(18px,1.7vw,22px);background:linear-gradient(transparent 58%,rgba(255,210,63,.75) 58%,rgba(255,210,63,.75) 90%,transparent 90%)}
.ap-letter-foot{margin-top:14px;font-size:13.5px;font-style:italic;color:#6a5a44}
.ap-cv{position:relative;margin-top:18px;padding:22px 24px;border-radius:4px;background:var(--paper);color:var(--pink);box-shadow:0 20px 44px -16px rgba(0,0,0,.75)}
.ap-cv-photo{position:absolute;right:22px;top:22px;width:70px;height:86px;display:grid;place-items:center;text-align:center;border:1.5px dashed rgba(40,32,20,.35);border-radius:4px;font-size:10.5px;line-height:1.3;color:#7a6446}
.ap-cv-photo b{color:#8a5a00}
.ap-cv-name b{display:block;font-family:var(--display);font-size:20px}
.ap-cv-name span{font-family:var(--mono);font-size:11px;color:#7a6446}
.ap-cv dl{margin-top:20px;display:grid;grid-template-columns:78px minmax(0,1fr);gap:0;border-top:1px solid rgba(40,32,20,.18)}
.ap-cv dt,.ap-cv dd{padding:7px 0;border-bottom:1px solid rgba(40,32,20,.12);font-size:13.5px}
.ap-cv dt{font-family:var(--mono);font-size:11px;color:#7a6446}
.ap-cv dd{font-weight:600}
.ap-copies{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:8px}
.ap-copies li{position:relative;padding:11px 14px 11px 46px;border-radius:10px;border:1px solid var(--line);font-size:15px;color:var(--ink-2)}
.ap-copies li::before,.ap-copies li::after{content:'';position:absolute;left:14px;top:13px;width:14px;height:17px;border-radius:2px;border:1.5px solid rgba(255,210,63,.7)}
.ap-copies li::after{left:19px;top:9px;background:var(--bg)}
.ap-orig{padding:24px;border-radius:var(--r-lg);border:1px solid rgba(255,120,100,.4);background:rgba(255,120,100,.05)}
.ap-orig-pair{display:flex;gap:14px;margin-bottom:18px}
.ap-orig-pair span{padding:6px 12px;border:2px solid;border-radius:6px;font-family:var(--mono);font-weight:700;font-size:13px;letter-spacing:.14em;text-transform:uppercase}
.ap-orig-pair .o{color:#ff7a66;transform:rotate(-6deg);text-decoration:line-through;text-decoration-thickness:2px}
.ap-orig-pair .c{color:var(--pa);transform:rotate(4deg)}
.ap-orig b{display:block;font-size:16px}
.ap-orig p{margin-top:8px;font-size:14.5px;line-height:1.65;color:var(--ink-2)}
/* sorted slips */
.ap-sort{margin-top:20px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.ap-slip{position:relative;padding:22px 20px 20px;border-radius:var(--r);border:1px solid var(--line-2);background:#0e0d0b}
.ap-slip>b{display:block;padding-right:110px;font-size:16px}
.ap-slip p{margin-top:10px;font-size:14.5px;line-height:1.65;color:var(--ink-2)}
.ap-stamp{--c:var(--pa);position:absolute;right:16px;top:16px;padding:4px 9px;border:2px solid var(--c);border-radius:5px;color:var(--c);font-family:var(--mono);font-weight:700;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;transform:rotate(5deg);opacity:.95}
.ap-stamp.s-cond{--c:#7cd4ff}.ap-stamp.s-ask{--c:#ff8a7a}.ap-stamp.s-rel{--c:var(--green-soft)}
@media(max-width:760px){.ap-sort{grid-template-columns:minmax(0,1fr)}}
/* the vacancy, annotated */
.ap-ad{margin-top:20px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(16px,3vw,36px);align-items:start}
.ap-ad-post{padding:24px;border-radius:var(--r-lg);border:1px solid var(--line-2);background:#0e0e0e}
.ap-ad-post .kick{color:var(--ink-3)}
.ap-ad-title{display:block;margin:8px 0 14px;font-family:var(--display);font-size:clamp(19px,1.7vw,24px);line-height:1.2}
.ap-ad-line{display:block;height:6px;margin:8px 0;border-radius:3px;background:rgba(255,255,255,.07)}
.ap-ad-line.s{width:62%}
.ap-ad-mark{display:flex;align-items:center;gap:10px;margin:10px 0;font-size:14px;color:var(--ink-3)}
.ap-ad-mark i,.ap-ad-notes li::before{flex:none;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--pa);color:#0b0a05;font-style:normal;font-family:var(--mono);font-size:11.5px;font-weight:700}
.ap-ad-mark u{text-decoration:none;color:var(--ink);background:rgba(255,210,63,.14);padding:1px 6px;border-radius:4px}
.ap-ad-notes{list-style:none;margin:0;padding:0;counter-reset:n;display:grid;gap:10px}
.ap-ad-notes li{counter-increment:n;position:relative;padding:14px 16px 14px 54px;border-radius:12px;border:1px solid var(--line)}
.ap-ad-notes li::before{content:counter(n);position:absolute;left:16px;top:14px}
.ap-ad-notes b{font-size:15px}
.ap-ad-notes p{margin-top:4px;font-size:14px;line-height:1.6;color:var(--ink-2)}
@media(max-width:800px){.ap-ad{grid-template-columns:minmax(0,1fr)}}
/* pre-submit, three columns */
.ap-pre{margin-top:18px;border-radius:var(--r-lg);border:1px solid rgba(255,210,63,.35);background:#0c0b08;overflow:hidden}
.ap-pre-head{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:20px;padding:16px 18px;border-bottom:1px solid var(--line);background:#11100b}
.ap-pre-head .kick{display:block;color:var(--pa)}
.ap-pre-head b{font-family:var(--mono);font-size:18px;color:var(--ink)}
.ap-pre-head .ap-bar{margin:0}
.ap-cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:0}
.ap-col{min-width:0;border-right:1px solid var(--line)}
.ap-col:last-child{border-right:0}
.ap-cols .tk-grp{display:flex;justify-content:space-between;gap:10px;color:var(--ink-2);background:#12110b}
.ap-cols .tk-grp[data-n]::after{content:attr(data-n);color:var(--ink-3)}
.ap-cols .tk-grp.done{color:var(--pa)}
.ap-cols .tk-grp.done::after{content:'✓ ' attr(data-n);color:var(--pa)}
.ap-pre-foot{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 12px;padding:4px 18px;border-top:1px solid var(--line);font-family:var(--mono);font-size:11px;letter-spacing:.04em;color:var(--ink-3)}
.ap-pre-foot .tk-reset{width:auto;border:0;padding:10px 0}
@media(max-width:900px){.ap-cols{grid-template-columns:minmax(0,1fr)}.ap-col{border-right:0}}
/* two ways to submit */
.ap-ways{margin-top:8px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(18px,3vw,40px)}
.ap-way>p{margin-top:10px;font-size:15.5px;line-height:1.7;color:var(--ink-2)}
.ap-way .ap-h3{margin-top:22px}
.ap-win,.ap-mail{margin-top:18px;border-radius:14px;border:1px solid var(--line-2);background:#0e0e0e;overflow:hidden}
.ap-win-bar{display:flex;align-items:center;gap:6px;padding:10px 12px;border-bottom:1px solid var(--line);background:#141414}
.ap-win-bar i{width:9px;height:9px;border-radius:50%;background:rgba(255,255,255,.18)}
.ap-win-bar span{margin-left:8px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--mono);font-size:11px;color:var(--ink-3)}
.ap-steps{list-style:none;margin:0;padding:18px 14px;display:flex;flex-wrap:wrap;gap:6px 4px;counter-reset:s}
.ap-steps li{counter-increment:s;display:flex;align-items:center;gap:4px;font-family:var(--mono);font-size:11px;color:var(--ink-2)}
.ap-steps li::before{content:counter(s);display:grid;place-items:center;width:20px;height:20px;border-radius:50%;border:1px solid rgba(255,210,63,.55);color:var(--pa);font-size:10px}
.ap-steps li:not(:last-child)::after{content:'→';margin:0 2px;color:var(--ink-3)}
.ap-steps li.end{padding:2px 8px;border-radius:99px;background:var(--pa);color:#0b0a05;font-weight:700}
.ap-steps li.end::before{display:none}
.ap-mail-row{display:grid;grid-template-columns:62px minmax(0,1fr);gap:10px;align-items:baseline;padding:10px 14px;border-bottom:1px solid var(--line);font-size:13px}
.ap-mail-row span{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3)}
.ap-mail-row em{font-style:normal;color:var(--ink-3);font-family:var(--mono);font-size:12px}
.ap-mail-row.sub p{font-family:var(--mono);font-size:12.5px;line-height:1.5;color:var(--ink)}
.ap-mail-row mark{background:rgba(255,210,63,.16);color:var(--pa);padding:0 3px;border-radius:3px}
.ap-mail-body{padding:14px}
.ap-mail-body i{display:block;height:6px;margin:0 0 8px;border-radius:3px;background:rgba(255,255,255,.07)}
.ap-mail-body i.s{width:40%}
.ap-mail-att{display:flex;align-items:center;gap:10px;margin:0 14px 14px;padding:9px 12px;border-radius:10px;border:1px solid var(--line-2);background:#131313}
.ap-mail-att b{padding:3px 6px;border-radius:4px;background:#d7372d;color:#fff;font-family:var(--mono);font-size:10px}
.ap-mail-att span{font-size:12.5px;color:var(--ink-2)}
.ap-boxes{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:6px}
.ap-boxes li{position:relative;padding-left:24px;font-size:14.5px;line-height:1.55;color:var(--ink-2)}
.ap-boxes li::before{content:'';position:absolute;left:6px;top:.62em;width:6px;height:6px;border-radius:50%;background:rgba(255,210,63,.85)}
@media(max-width:860px){.ap-ways{grid-template-columns:minmax(0,1fr)}}
/* after: spreadsheet + waiting bar */
.ap-sheet{margin-top:16px;overflow-x:auto;border-radius:12px;border:1px solid var(--line-2);background:#0d0e0d}
.ap-sheet table{width:100%;min-width:680px;border-collapse:collapse;font-size:13.5px}
.ap-sheet th,.ap-sheet td{padding:9px 12px;border-right:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06);text-align:left;white-space:nowrap}
.ap-sheet th{font-weight:600;color:var(--ink);background:#141514;font-size:13px}
.ap-sheet th i{display:block;margin-bottom:3px;font-style:normal;font-family:var(--mono);font-weight:400;font-size:10px;color:var(--ink-3)}
.ap-sheet td{color:var(--ink-2)}
.ap-sheet .rn{width:36px;text-align:center;font-family:var(--mono);font-size:10.5px;color:var(--ink-3);background:#121312}
.ap-sheet tr.blank td{height:36px}
.ap-sheet .st{padding:2px 8px;border-radius:99px;background:rgba(255,210,63,.14);color:var(--pa);font-size:12px}
.ap-wait{margin-top:18px}
.ap-wait-bar{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;border-radius:12px;overflow:hidden;border:1px solid var(--line-2);font-family:var(--mono);font-size:11.5px}
.ap-wait-bar span{padding:12px 14px}
.ap-wait-bar .d0{background:#171717;color:var(--ink)}
.ap-wait-bar .hold{text-align:center;color:var(--ink-2);background:repeating-linear-gradient(135deg,rgba(255,255,255,.04) 0 8px,transparent 8px 16px);font-style:italic}
.ap-wait-bar .d28{background:var(--pa);color:#0b0a05;font-weight:700}
.ap-wait-legend{margin-top:12px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.ap-wait-legend>div{padding:16px;border-radius:var(--r);border:1px solid var(--line)}
.ap-wait-legend>div:last-child{border-color:rgba(255,210,63,.4)}
.ap-wait-legend b{font-size:15px}
.ap-wait-legend p{margin-top:6px;font-size:14px;line-height:1.6;color:var(--ink-2)}
@media(max-width:760px){.ap-wait-legend{grid-template-columns:minmax(0,1fr)}.ap-wait-bar{font-size:10.5px}.ap-wait-bar span{padding:10px 8px}}
/* not yet */
.ap-later{position:relative;margin-top:18px;padding:30px clamp(18px,3vw,28px) 22px;border-radius:var(--r-lg);border:2px dashed rgba(255,120,100,.4);background:rgba(255,120,100,.03)}
.ap-later-stamp{position:absolute;right:18px;top:-16px;padding:6px 12px;border:2px solid #ff8a7a;border-radius:6px;background:var(--bg);color:#ff8a7a;font-family:var(--mono);font-weight:700;font-size:10.5px;line-height:1.3;letter-spacing:.1em;text-transform:uppercase;text-align:center;transform:rotate(4deg)}
.ap-later ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 22px}
.ap-later li{position:relative;padding:9px 0 9px 30px;border-bottom:1px dotted rgba(255,255,255,.1);font-size:14.5px;line-height:1.55;color:var(--ink-2)}
.ap-later li::before{content:'Later';position:absolute;left:0;top:11px;width:22px;height:16px;font-size:0;border-radius:3px;border:1.5px solid rgba(255,138,122,.6);background:linear-gradient(transparent 45%,rgba(255,138,122,.6) 45% 55%,transparent 55%)}
@media(max-width:700px){.ap-later ul{grid-template-columns:minmax(0,1fr)}.ap-later-stamp{right:12px}}
/* returned to sender */
.ap-return{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.ap-return li{position:relative;padding:40px 18px 16px;border-radius:12px;border:1px solid var(--line);background:#0e0d0c;font-size:14.5px;line-height:1.6;color:var(--ink-2)}
.ap-return li::before{content:'↩ Zurück an Absender';position:absolute;left:16px;top:12px;padding:2px 7px;border:1.5px solid #ff8a7a;border-radius:4px;color:#ff8a7a;font-family:var(--mono);font-weight:700;font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;transform:rotate(-3deg)}
.ap-return b{color:var(--ink)}
@media(max-width:700px){.ap-return{grid-template-columns:minmax(0,1fr)}}
/* ready: the postmark */
.ap-ready{margin-top:18px;display:grid;grid-template-columns:240px minmax(0,1fr);gap:clamp(18px,3vw,40px);align-items:start}
.ap-post{--r:0;position:sticky;top:150px;width:220px;height:220px;margin:0 auto}
.ap-post-ring{position:absolute;inset:0;border-radius:50%;background:conic-gradient(var(--pa) calc(var(--r) * 360deg),rgba(255,255,255,.08) 0);-webkit-mask:radial-gradient(closest-side,transparent calc(100% - 8px),#000 calc(100% - 7px));mask:radial-gradient(closest-side,transparent calc(100% - 8px),#000 calc(100% - 7px));transition:background .4s}
.ap-post-in{position:absolute;inset:18px;display:grid;place-content:center;text-align:center;border-radius:50%;border:2px dashed rgba(255,255,255,.18);transition:all .5s var(--ease)}
.ap-post-in span{font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3)}
.ap-post-in b{display:block;margin:4px 0;font-family:var(--mono);font-size:26px;color:var(--ink)}
.ap-post-in em{font-style:normal;font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}
.ap-post.done .ap-post-in{border:3px solid var(--pa);background:rgba(255,210,63,.1);transform:rotate(-10deg)}
.ap-post.done .ap-post-in b,.ap-post.done .ap-post-in em{color:var(--pa)}
.ap-ready .ap-tk{border:1px solid rgba(255,210,63,.3);border-radius:var(--r-lg);background:#0c0b08;overflow:hidden}
@media(max-width:760px){.ap-ready{grid-template-columns:minmax(0,1fr)}.ap-post{position:relative;top:0;width:180px;height:180px}}
.pg-apply .g-src .kick{color:var(--pa)}
.pg-apply .acc{margin-top:4px}
.ap-fine{margin-top:36px;padding:18px 20px;border-radius:var(--r);border:1px dashed var(--line-2)}
.ap-fine p{margin-top:8px;font-size:13px;line-height:1.7;color:var(--ink-3)}
.ap-fine p strong{color:var(--ink-2)}

/* ===== AUSBILDUNG PROFESSION FINDER · Die Berufe-Kartei (bespoke) ===== */
.pg-berufe{--pg-accent:#ffd23f;--pg-glow:rgba(255,210,63,.14);--pa:#ffd23f;--lv1:#7dffb0;--lv2:#ffd23f;--lv3:#ff8a7a}
.pg-berufe .phero h1 .big{font-size:clamp(40px,4.6vw,88px);line-height:1}
.pg-berufe .phero h1 .big em{display:block;font-style:normal;color:var(--pa)}
.pg-berufe .phero h1 .flap{font-size:clamp(22px,2.8vw,54px)}
/* the card-index cabinet */
.kartei{border:1px solid var(--line-2);border-radius:var(--r-lg);background:#0b0b0c;overflow:hidden;box-shadow:0 40px 100px -40px rgba(255,210,63,.28)}
.ka-top{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;border-bottom:1px solid var(--line);background:#111112}
.ka-top .kick b{color:var(--pa);font-weight:400}
.ka-live{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:#0b0a05;background:var(--pa);padding:3px 9px;border-radius:999px;font-weight:700;white-space:nowrap}
.ka-cab{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:18px;background:linear-gradient(#141416,#0e0e10)}
.ka-dr{--c:var(--pa);position:relative;display:flex;flex-direction:column;align-items:center;gap:10px;padding:14px 10px 12px;border-radius:8px;border:1px solid rgba(255,255,255,.1);border-top:3px solid color-mix(in srgb,var(--c) 45%,transparent);background:linear-gradient(#1d1d20,#151517);box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 6px 14px -8px rgba(0,0,0,.8);cursor:pointer;transition:transform .35s var(--ease),box-shadow .35s,border-color .3s,opacity .3s}
.ka-dr:hover{border-top-color:var(--c);transform:translateY(-1px)}
.ka-lbl{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:4px 8px;border-radius:3px;background:#ebe6da;color:#1a1714;font-family:var(--mono);font-size:10.5px;font-weight:700;letter-spacing:.04em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-shadow:inset 0 0 0 1px rgba(0,0,0,.2)}
.ka-lbl i{font-style:normal}
.ka-dr em{display:block;width:44%;height:7px;border-radius:99px;background:linear-gradient(#3a3a3e,#26262a);box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 2px 3px rgba(0,0,0,.6)}
.ka-dr b{position:absolute;right:7px;top:5px;font-family:var(--mono);font-size:10.5px;font-weight:400;color:var(--ink-3)}
.ka-dr::before{content:'';position:absolute;left:12%;right:12%;top:-3px;height:0;border-radius:3px 3px 0 0;background:repeating-linear-gradient(90deg,#ebe6da 0 10px,#d9d2c2 10px 12px);transition:height .35s var(--ease),top .35s var(--ease)}
.ka-dr[aria-pressed="true"]{transform:translateY(6px);border-top-color:var(--c);box-shadow:0 0 0 1px var(--c),0 14px 30px -10px color-mix(in srgb,var(--c) 60%,transparent)}
.ka-dr[aria-pressed="true"]::before{height:10px;top:-13px}
.ka-dr[aria-pressed="true"] b{color:var(--c)}
.ka-dr.empty{opacity:.4}
.ka-foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 16px;padding:13px 18px;border-top:1px solid var(--line);font-size:12.5px;color:var(--ink-3);background:#0d0d0e}
.ka-foot a{color:var(--ink);text-decoration:underline;text-decoration-color:rgba(255,210,63,.55);text-underline-offset:3px;white-space:nowrap}
@media(max-width:560px){.ka-lbl i{display:none}.ka-cab{gap:7px;padding:12px}.ka-dr{padding:12px 6px 10px;gap:8px}.ka-lbl{font-size:9.5px;padding:3px 6px;gap:4px}.ka-dr b{right:5px;top:3px;font-size:9.5px}}
/* body */
.pf-body{max-width:calc(1120px + 2 * var(--gutter));margin:0 auto;padding:clamp(40px,6vw,90px) var(--gutter) 0}
.pf{padding:clamp(48px,6vw,90px) 0 0;scroll-margin-top:110px}
.pf:first-child{padding-top:0}
.pf-head{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:end;gap:clamp(14px,2vw,26px);margin-bottom:18px;padding-bottom:16px;border-bottom:1px solid var(--line)}
.pf-idx{font-family:var(--mono);font-weight:700;font-size:clamp(44px,5vw,76px);line-height:.85;color:transparent;-webkit-text-stroke:1.5px var(--pa)}
.pf-head .kick{color:var(--pa)}
.pf-head h2{margin-top:6px;font-family:var(--display);font-weight:600;font-size:clamp(26px,2.8vw,42px);line-height:1.08;letter-spacing:-.025em}
.pf>p{margin-top:14px;font-size:16px;line-height:1.75;color:var(--ink-2)}
.pf p strong,.pf li strong{color:var(--ink)}
.pf a:not(.btn):not(.pf-tool-go):not(.pf-next a){color:var(--ink);text-decoration:underline;text-decoration-color:rgba(255,210,63,.55);text-underline-offset:3px}
.pf-h3{margin-top:34px;font-family:var(--display);font-weight:600;font-size:clamp(19px,1.5vw,23px)}
.pf-note{margin-top:18px;padding:16px 18px;border-radius:var(--r);border:1px solid rgba(255,210,63,.35);background:rgba(255,210,63,.05)}
.pf-note.warn{border-color:rgba(255,138,122,.45);background:rgba(255,138,122,.06)}
.pf-note b{display:block;font-size:15px;color:var(--ink)}
.pf-note p{font-size:15px;line-height:1.65;color:var(--ink-2)}
.pf-note b+p,.pf-note p+p{margin-top:8px}
.pf-mist{position:relative;margin-top:20px;padding:22px 22px 20px;border-radius:var(--r-lg);border:1px solid rgba(255,138,122,.45);background:rgba(255,138,122,.05)}
.pf-mist-stamp{position:absolute;right:18px;top:-14px;padding:4px 10px;border:2px solid var(--lv3);border-radius:6px;background:var(--bg);color:var(--lv3);font-family:var(--mono);font-weight:700;font-size:11px;letter-spacing:.1em;text-transform:uppercase;transform:rotate(4deg)}
.pf-mist b{display:block;font-size:16px}
.pf-mist p{margin-top:8px;font-size:15px;line-height:1.65;color:var(--ink-2)}
/* start with yourself */
.pf-enjoy{margin-top:18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.pf-enjoy button{display:grid;grid-template-columns:40px minmax(0,1fr) auto;grid-template-rows:auto auto;column-gap:14px;align-items:center;padding:12px 16px 12px 12px;border-radius:12px;border:1px solid var(--line);background:rgba(255,255,255,.02);text-align:left;transition:border-color .2s,background .2s,transform .2s}
.pf-enjoy button:hover{border-color:rgba(255,210,63,.5);background:rgba(255,210,63,.05)}
.pf-enjoy .e{grid-row:1/3;display:grid;place-items:center;width:40px;height:40px;border-radius:10px;background:#161617;font-size:19px}
.pf-enjoy b{font-size:15px;font-weight:600;color:var(--ink)}
.pf-enjoy em{grid-column:2;font-style:normal;font-family:var(--mono);font-size:11px;letter-spacing:.04em;color:var(--pa)}
.pf-enjoy button::after{content:'→';grid-column:3;grid-row:1/3;color:var(--ink-3);transition:transform .2s,color .2s}
.pf-enjoy button:hover::after{color:var(--pa);transform:translateX(3px)}
@media(max-width:700px){.pf-enjoy{grid-template-columns:minmax(0,1fr)}}
/* filters */
.pf-filter{margin-top:20px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 24px;padding:20px;border-radius:var(--r-lg);border:1px solid var(--line-2);background:#0c0c0d}
.pf-fg{grid-column:1/-1}
.pf-fg-half{grid-column:auto}
.pf-fl{display:block;margin-bottom:9px;font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}
.pf-chips{display:flex;flex-wrap:wrap;gap:6px}
.pf-chip{display:inline-flex;align-items:center;gap:7px;padding:7px 13px;border-radius:999px;border:1px solid var(--line-2);font-size:13.5px;color:var(--ink-2);transition:all .2s}
.pf-chip:hover{border-color:rgba(255,210,63,.5);color:var(--ink)}
.pf-chip[aria-pressed="true"]{background:var(--pa);border-color:var(--pa);color:#0b0a05;font-weight:600}
.pf-chip[aria-pressed="true"] .lvm i{background:#0b0a05!important;opacity:1}
.pf-ffoot{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:12px;padding-top:14px;border-top:1px solid var(--line)}
.pf-count{font-family:var(--mono);font-size:13px;color:var(--ink-3)}
.pf-count b{font-size:18px;color:var(--pa)}
.pf-clear{padding:8px 14px;border-radius:999px;border:1px solid var(--line-2);font-size:13px;color:var(--ink-2);transition:all .2s}
.pf-clear:hover{color:var(--ink);border-color:var(--ink-3)}
.pf-clear.armed{border-color:var(--lv3);color:var(--lv3)}
@media(max-width:760px){.pf-filter{grid-template-columns:minmax(0,1fr);padding:16px}.pf-fg-half{grid-column:1/-1}}
/* level meter */
.lvm{display:inline-flex;align-items:flex-end;gap:2px;height:14px}
.lvm i{width:4px;border-radius:1px;background:rgba(255,255,255,.18)}
.lvm i:nth-child(1){height:6px}.lvm i:nth-child(2){height:10px}.lvm i:nth-child(3){height:14px}
.lvm.l1 i:nth-child(-n+1){background:var(--lv1)}
.lvm.l2 i:nth-child(-n+2){background:var(--lv2)}
.lvm.l3 i{background:var(--lv3)}
/* the index cards */
.pf-empty{margin-top:16px;padding:22px;border-radius:var(--r);border:1px dashed var(--line-2);text-align:center;color:var(--ink-2);font-size:15px}
.pf-empty b{display:block;color:var(--ink);margin-bottom:4px}
.pf-grid{margin-top:18px;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}
.kk{--c:var(--pa);position:relative;display:flex;flex-direction:column;padding:16px 18px 18px;border-radius:12px;border:1px solid var(--line-2);border-top:3px solid var(--c);background:linear-gradient(color-mix(in srgb,var(--c) 6%,transparent),transparent 40%),#0f0f10;animation:kkIn .45s var(--ease) both}
.kk[hidden]{display:none!important}
@keyframes kkIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.kk::after{content:'';position:absolute;left:50%;bottom:-1px;width:18px;height:9px;margin-left:-9px;border-radius:9px 9px 0 0;background:var(--bg);border:1px solid var(--line-2);border-bottom:0}
.kk-top{display:flex;justify-content:space-between;align-items:center;gap:10px}
.kk-tab{padding:2px 9px;border-radius:5px;background:color-mix(in srgb,var(--c) 16%,transparent);color:var(--c);font-family:var(--mono);font-size:10.5px;font-weight:700;letter-spacing:.06em;white-space:nowrap}
.kk-ct{font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);white-space:nowrap}
.kk-name{margin-top:12px;padding-bottom:10px;border-bottom:1.5px solid color-mix(in srgb,var(--c) 55%,transparent);font-family:var(--display);font-weight:600;font-size:18px;line-height:1.25;letter-spacing:-.01em;color:var(--ink);overflow-wrap:anywhere}
.kk-do{margin-top:10px;font-size:14px;line-height:1.55;color:var(--ink-2)}
.kk-do strong{color:var(--ink)}
.kk-lines{margin:12px 0 0;display:grid}
.kk-lines div{display:grid;grid-template-columns:52px minmax(0,1fr);gap:10px;padding:7px 0;border-top:1px dotted rgba(255,255,255,.12)}
.kk-lines dt{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);padding-top:2px}
.kk-lines dd{font-size:13px;line-height:1.5;color:var(--ink-2)}
.kk-foot{margin-top:auto;padding-top:14px;display:flex;justify-content:space-between;align-items:center;gap:10px}
.kk-lv{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;color:var(--ink-2)}
.kk-add{flex:none;padding:6px 11px;border-radius:999px;border:1px solid rgba(255,210,63,.5);font-family:var(--mono);font-size:11px;color:var(--pa);transition:all .2s}
.kk-add:hover{background:rgba(255,210,63,.1)}
.kk-add.in{background:var(--pa);color:#0b0a05;font-weight:700}
@media(max-width:400px){.pf-grid{grid-template-columns:minmax(0,1fr)}}
/* comparison */
.pf-score{margin-top:18px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.pf-sc{padding:16px;border-radius:var(--r-lg);border:1px solid var(--line-2);background:#0c0c0d;transition:border-color .3s,box-shadow .3s}
.pf-sc.lead{border-color:var(--pa);box-shadow:0 20px 50px -30px rgba(255,210,63,.6)}
.pf-sc-head{display:flex;align-items:center;gap:10px}
.pf-sc-l{flex:none;display:grid;place-items:center;width:32px;height:32px;border-radius:8px;border:1px solid rgba(255,210,63,.5);font-family:var(--mono);font-weight:700;color:var(--pa)}
.pf-sc.lead .pf-sc-l{background:var(--pa);color:#0b0a05}
.pf-sc-name{flex:1;min-width:0;padding:8px 10px;border-radius:8px;border:1px solid var(--line-2);background:#131314;color:var(--ink);font:500 14px var(--body)}
.pf-sc-name:focus{outline:none;border-color:var(--pa)}
.pf-sc-tot{display:flex;align-items:center;gap:12px;margin:12px 0 4px}
.pf-sc-tot b{font-family:var(--mono);font-size:16px;color:var(--ink);white-space:nowrap}
.pf-sc-bar{flex:1;height:6px;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden}
.pf-sc-bar i{display:block;height:100%;width:0;background:var(--pa);transition:width .4s var(--ease)}
.pf-q{list-style:none;margin:6px 0 0;padding:0;display:grid}
.pf-q li{padding:9px 0;border-top:1px solid rgba(255,255,255,.06)}
.pf-q li>span:first-child{display:block;font-size:13px;line-height:1.4;color:var(--ink-2)}
.pf-pips{display:flex;gap:5px;margin-top:7px}
.pf-pips button{flex:1;height:26px;border-radius:6px;border:1px solid var(--line-2);font-family:var(--mono);font-size:11px;color:var(--ink-3);transition:all .15s}
.pf-pips button:hover{border-color:rgba(255,210,63,.6);color:var(--ink)}
.pf-pips button[aria-pressed="true"]{background:rgba(255,210,63,.22);border-color:rgba(255,210,63,.5);color:var(--ink)}
.pf-pips button.cur{background:var(--pa);border-color:var(--pa);color:#0b0a05;font-weight:700}
.pf-score-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:10px;font-family:var(--mono);font-size:11px;color:var(--ink-3)}
.pf-decide{margin-top:22px;padding:24px clamp(18px,3vw,30px);border-radius:var(--r-lg);border:1px solid rgba(255,210,63,.4);background:radial-gradient(120% 140% at 0 0,rgba(255,210,63,.12),transparent 60%),#0c0b08}
.pf-decide .kick{color:var(--pa)}
.pf-decide b{display:block;margin-top:8px;font-family:var(--display);font-weight:600;font-size:clamp(20px,2vw,28px);line-height:1.2;letter-spacing:-.02em}
.pf-decide p{margin-top:10px;font-size:15px;line-height:1.65;color:var(--ink-2)}
@media(max-width:900px){.pf-score{grid-template-columns:minmax(0,1fr)}}
/* German level cards */
.pf-lv{margin-top:18px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.pf-lv-c{--c:var(--lv1);padding:20px;border-radius:var(--r);border:1px solid color-mix(in srgb,var(--c) 40%,transparent);background:color-mix(in srgb,var(--c) 5%,#0c0c0d)}
.pf-lv-c.l2{--c:var(--lv2)}.pf-lv-c.l3{--c:var(--lv3)}
.pf-lv-c .lvm{height:22px;gap:3px}
.pf-lv-c .lvm i{width:7px}.pf-lv-c .lvm i:nth-child(1){height:9px}.pf-lv-c .lvm i:nth-child(2){height:15px}.pf-lv-c .lvm i:nth-child(3){height:22px}
.pf-lv-c b{display:block;margin-top:12px;font-size:16px;color:var(--c)}
.pf-lv-c p{margin-top:8px;font-size:14.5px;line-height:1.65;color:var(--ink-2)}
@media(max-width:860px){.pf-lv{grid-template-columns:minmax(0,1fr)}}
/* salary */
.pf-sal{margin-top:18px;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(18px,3vw,36px);align-items:center}
.pf-sal-vars{display:flex;flex-wrap:wrap;gap:8px;padding:22px;border-radius:var(--r-lg);border:1px dashed var(--line-2)}
.pf-sal-vars span{padding:7px 12px;border-radius:999px;background:#151516;border:1px solid var(--line);font-family:var(--mono);font-size:12px;color:var(--ink-2)}
.pf-sal-vars span:nth-child(odd){transform:rotate(-2deg)}.pf-sal-vars span:nth-child(3n){transform:rotate(2deg)}
.pf-sal-vars::before{content:'€ ?';display:block;width:100%;margin-bottom:6px;font-family:var(--mono);font-weight:700;font-size:28px;color:var(--pa)}
.pf-sal-txt p{font-size:15.5px;line-height:1.7;color:var(--ink-2)}
.pf-sal-txt p+p{margin-top:12px}
@media(max-width:760px){.pf-sal{grid-template-columns:minmax(0,1fr)}}
/* research tools */
.pf-tools{list-style:none;margin:18px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.pf-tools li{display:flex;flex-direction:column;padding:20px;border-radius:var(--r-lg);border:1px solid var(--line-2);background:#0e0e0f}
.pf-tool-n{font-family:var(--mono);font-weight:700;font-size:28px;line-height:1;color:transparent;-webkit-text-stroke:1px var(--pa)}
.pf-tools li>b{margin-top:10px;font-size:17px}
.pf-tools p{margin-top:8px;font-size:14.5px;line-height:1.65;color:var(--ink-2)}
.pf-tool-go{align-self:flex-start;margin-top:auto;padding:9px 14px;border-radius:999px;background:var(--pa);color:#0b0a05;font-weight:600;font-size:13.5px;transform:translateY(14px);margin-bottom:14px}
.pf-tool-go:hover{filter:brightness(1.08)}
.pf-rec{margin-top:12px;display:flex;flex-wrap:wrap;gap:6px}
.pf-rec span{width:100%;font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)}
.pf-rec em{font-style:normal;padding:4px 9px;border-radius:5px;border:1px dashed rgba(255,210,63,.45);font-size:12.5px;color:var(--ink)}
@media(max-width:760px){.pf-tools{grid-template-columns:minmax(0,1fr)}}
/* shortlist */
.pf-podium{margin-top:22px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;align-items:end}
.pf-podium>div{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;padding:18px 16px 0;border-radius:var(--r) var(--r) 0 0;border:1px solid var(--line-2);border-bottom:0;background:linear-gradient(rgba(255,210,63,.06),rgba(255,255,255,.01))}
.pf-podium .m{font-size:30px}
.pf-podium b{margin-top:6px;font-size:16px}
.pf-podium p{margin-top:4px;font-size:13.5px;line-height:1.5;color:var(--ink-2)}
.pf-podium i{display:block;width:100%;margin-top:14px;padding:14px 0 12px;border-top:1px solid var(--line);font-style:normal;font-family:var(--mono);font-weight:700;font-size:28px;color:transparent;-webkit-text-stroke:1px var(--pa)}
.pf-podium .t1{border-color:rgba(255,210,63,.5)}
.pf-podium .t1 i{padding:40px 0 30px}.pf-podium .t2 i{padding:22px 0 18px}

.pf-routes{margin-top:14px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.pf-routes>div{padding:18px;border-radius:var(--r);border:1px solid var(--line);background:rgba(255,255,255,.02)}
.pf-routes .kick{color:var(--pa)}
.pf-routes ol{list-style:none;margin:12px 0 0;padding:0;counter-reset:r;display:grid;gap:18px}
.pf-routes li{counter-increment:r;position:relative;padding-left:34px;font-size:14px;line-height:1.45;color:var(--ink)}
.pf-routes li::before{content:counter(r);position:absolute;left:0;top:-2px;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--pa);color:#0b0a05;font-family:var(--mono);font-size:11px;font-weight:700}
.pf-routes li:not(:last-child)::after{content:'';position:absolute;left:11px;top:24px;height:calc(100% - 6px);border-left:2px dotted rgba(255,210,63,.5)}
.pf-path{list-style:none;margin:16px 0 0;padding:0;counter-reset:p;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}
.pf-path li{counter-increment:p;position:relative;padding:44px 10px 14px;border-radius:12px;border:1px solid var(--line);font-size:13px;line-height:1.45;color:var(--ink-2)}
.pf-path li::before{content:counter(p);position:absolute;left:10px;top:12px;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;border:1px solid rgba(255,210,63,.55);font-family:var(--mono);font-size:11px;color:var(--pa)}
.pf-path li:last-child{border-color:rgba(255,210,63,.5);background:rgba(255,210,63,.05)}
.pf-path li:last-child::before{background:var(--pa);color:#0b0a05}
.pf-next{margin-top:18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.pf-next a{display:block;padding:20px;border-radius:var(--r-lg);border:1px solid var(--line-2);background:#0e0e0f;transition:border-color .2s,transform .2s}
.pf-next a:hover{border-color:rgba(255,210,63,.55);transform:translateY(-2px)}
.pf-next .kick{color:var(--pa)}
.pf-next b{display:block;margin-top:8px;font-family:var(--display);font-size:20px;color:var(--ink)}
.pf-next p{margin-top:6px;font-size:14px;line-height:1.6;color:var(--ink-2)}
@media(max-width:980px){.pf-path{grid-template-columns:repeat(2,minmax(0,1fr))}.pf-path li:last-child{grid-column:1/-1}}
@media(max-width:760px){.pf-routes,.pf-next{grid-template-columns:minmax(0,1fr)}.pf-podium{gap:6px}.pf-podium>div{padding:14px 8px 0}.pf-podium p{font-size:12px}.pf-podium b{font-size:14px}}
.pg-berufe .g-src .kick{color:var(--pa)}
.pg-berufe .acc{margin-top:4px}
.pf-fine{margin-top:36px;padding:18px 20px;border-radius:var(--r);border:1px dashed var(--line-2)}
.pf-fine p{margin-top:8px;font-size:13px;line-height:1.7;color:var(--ink-3)}
.pf-fine p strong{color:var(--ink-2)}
.pf-toast{position:fixed;left:50%;bottom:24px;z-index:120;max-width:calc(100% - 32px);padding:11px 18px;border-radius:999px;background:var(--pa);color:#0b0a05;font-size:14px;font-weight:600;box-shadow:0 14px 40px rgba(0,0,0,.5);transform:translate(-50%,140%);opacity:0;transition:transform .35s var(--ease),opacity .35s;pointer-events:none}
.pf-toast.on{transform:translate(-50%,0);opacity:1}
.pf-tabs{display:none}
@media(max-width:900px){
  .pf-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:18px;padding:5px;border-radius:14px;border:1px solid var(--line-2);background:#0c0c0d;position:sticky;top:150px;z-index:5}
  .pf-tabs button{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 4px;border-radius:10px;font-family:var(--mono);color:var(--ink-3)}
  .pf-tabs b{font-size:15px;color:var(--ink-2)}
  .pf-tabs span{font-size:11px}
  .pf-tabs [aria-pressed="true"]{background:var(--pa);color:#0b0a05}
  .pf-tabs [aria-pressed="true"] b{color:#0b0a05}
  .pf-score{margin-top:10px}
  .pf-sc{display:none}
  .pf-sc.on{display:block}
}

/* ===== STUDY TIMELINE PLANNER · Der Countdown-Kalender (bespoke) ===== */
.pg-kal{--pg-accent:#00ff6a;--pg-glow:rgba(0,255,106,.14);--ga:#00ff6a;--kg:#00ff6a;--kr:#ff5a4f;--cal:#f3efe6;
  --p1:#1f6b45;--p2:#26915a;--p3:#2fb86f;--p4:#3fe08a;--p5:#7dffb0;--p6:#ffb020;--p7:#00ff6a}
.pg-kal .phero h1 .big{font-size:clamp(44px,5.4vw,104px);line-height:1}
.pg-kal .phero h1 .big em{display:block;font-style:normal;color:var(--kg)}
.pg-kal .phero h1 .flap{font-size:clamp(22px,2.8vw,54px)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
/* hero calendar */
.kal{border:1px solid var(--line-2);border-radius:var(--r-lg);background:#0a0b0a;overflow:hidden;box-shadow:0 40px 100px -40px rgba(0,255,106,.28)}
.kal-top{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;border-bottom:1px solid var(--line);background:#101211}
.kal-top .kick b{color:var(--kg);font-weight:400}
.kal-live{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:#041008;background:var(--kg);padding:3px 9px;border-radius:999px;font-weight:700}
.kal-set{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:16px 18px 0}
.kal-seg{display:inline-flex;padding:3px;border-radius:999px;border:1px solid var(--line-2);background:#111312}
.kal-seg button{padding:7px 14px;border-radius:999px;font-size:13.5px;color:var(--ink-2);transition:all .2s}
.kal-seg button[aria-pressed="true"]{background:var(--kg);color:#041008;font-weight:600}
.kal select,.kb-mine select{appearance:none;-webkit-appearance:none;padding:8px 34px 8px 14px;border-radius:999px;border:1px solid var(--line-2);background:#111312 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%2300ff6a' stroke-width='1.5'/%3E%3C/svg%3E") no-repeat right 14px center;color:var(--ink);font:500 13.5px var(--body);cursor:pointer}
.kal-count{display:flex;align-items:center;gap:16px;padding:18px 18px 6px}
.kal-count>b{flex:none;min-width:78px;font-family:var(--mono);font-weight:700;font-size:clamp(52px,5vw,72px);line-height:.9;color:var(--kg);letter-spacing:-.04em}
.kal-count span{display:block;font-size:15px;font-weight:600;color:var(--ink)}
.kal-count em{display:block;margin-top:4px;font-style:normal;font-size:13.5px;color:var(--ink-3)}
.kal.has-year .kal-count em{color:var(--ink-2)}
.kal-strip{position:relative;margin:14px 18px 0;padding-bottom:4px}
.kal-months{display:grid;grid-template-columns:repeat(16,minmax(0,1fr));border:1px solid var(--line-2);border-radius:8px 8px 0 0;overflow:hidden}
.kal-months span{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:44px;padding-bottom:6px;border-right:1px solid rgba(255,255,255,.06);background:#101211;font-family:var(--mono)}
.kal-months span:last-child{border-right:0;background:rgba(0,255,106,.12)}
.kal-months b{font-size:10px;font-weight:400;color:var(--ink-2)}
.kal-months b.s{display:none}
.kal-months small{position:absolute;top:4px;left:3px;font-size:8.5px;color:var(--kg)}
.kal-months span.y{box-shadow:inset 2px 0 0 rgba(0,255,106,.45)}
.kal-bands{display:grid;grid-template-columns:repeat(16,minmax(0,1fr));gap:0;height:22px;border:1px solid var(--line-2);border-top:0;border-radius:0 0 8px 8px;overflow:hidden}
.kal-bands i{display:grid;place-items:center;font-style:normal;font-family:var(--mono);font-size:10.5px;font-weight:700;color:#041008;border-right:1px solid rgba(0,0,0,.35)}
.kal-bands .p1{grid-column:1/4;background:var(--p1);color:#cfe}.kal-bands .p2{grid-column:4/7;background:var(--p2);color:#eaffef}.kal-bands .p3{grid-column:7/10;background:var(--p3)}.kal-bands .p4{grid-column:10/13;background:var(--p4)}.kal-bands .p5{grid-column:13/15;background:var(--p5)}.kal-bands .p6{grid-column:15/16;background:var(--p6)}.kal-bands .p7{grid-column:16/17;background:var(--p7);border-right:0}
.kal-now{position:absolute;top:-8px;bottom:-4px;width:2px;margin-left:-1px;background:var(--kr);box-shadow:0 0 12px var(--kr);transition:left .6s var(--ease)}
.kal-now em{position:absolute;top:-16px;left:50%;transform:translateX(-50%);padding:1px 6px;border-radius:4px;background:var(--kr);color:#fff;font-style:normal;font-family:var(--mono);font-size:9.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
.kal-now[hidden]{display:none}
.kal-legend{list-style:none;margin:16px 0 0;padding:0;border-top:1px solid var(--line)}
.kal-legend li{display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:12px;padding:8px 18px;border-bottom:1px solid rgba(255,255,255,.05);font-size:13.5px;color:var(--ink-2);transition:background .3s}
.kal-legend i{display:grid;place-items:center;width:22px;height:22px;border-radius:6px;font-style:normal;font-family:var(--mono);font-size:10.5px;font-weight:700;color:#041008;background:var(--pc,var(--kg))}
.kal-legend li[data-ph="1"]{--pc:var(--p1)}.kal-legend li[data-ph="2"]{--pc:var(--p2)}.kal-legend li[data-ph="3"]{--pc:var(--p3)}.kal-legend li[data-ph="4"]{--pc:var(--p4)}.kal-legend li[data-ph="5"]{--pc:var(--p5)}.kal-legend li[data-ph="6"]{--pc:var(--p6)}.kal-legend li[data-ph="7"]{--pc:var(--p7)}
.kal-legend li[data-ph="1"] i,.kal-legend li[data-ph="2"] i{color:#eaffef}
.kal-legend b{font-family:var(--mono);font-size:11.5px;font-weight:400;color:var(--ink-3);text-align:right}
.kal-legend li.past{opacity:.45}
.kal-legend li.now{background:rgba(0,255,106,.08);color:var(--ink)}
.kal-legend li.now b{color:var(--kg)}
.kal-legend li.now span::after{content:' · now';color:var(--kr);font-family:var(--mono);font-size:11px}
.kal-foot{padding:11px 18px;font-size:12px;color:var(--ink-3);background:#0d0e0d}
@media(max-width:560px){
  .kal-months b.l{display:none}.kal-months b.s{display:block}
  .kal-months span{height:38px}.kal-months small{font-size:7.5px;left:1px}
  .kal-legend li{padding:8px 14px;gap:10px}.kal-legend b{font-size:10.5px}
  .kal-count{padding:16px 14px 4px}.kal-set,.kal-strip{margin-left:14px;margin-right:14px;padding-left:0;padding-right:0}.kal-set{padding-top:14px}
}
/* body: dated sections */
.kal-body{max-width:calc(1100px + 2 * var(--gutter));margin:0 auto;padding:clamp(40px,6vw,90px) var(--gutter) 0}
.kb{padding:clamp(48px,6vw,86px) 0 0;scroll-margin-top:110px}
.kb:first-child{padding-top:0}
.kb-head{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:clamp(14px,2vw,24px);margin-bottom:18px}
.kb-date{display:flex;flex-direction:column;align-items:center;width:64px;border-radius:10px;overflow:hidden;background:var(--cal);box-shadow:0 10px 24px -10px rgba(0,0,0,.8)}
.kb-date i{order:-1;width:100%;padding:3px 0;background:var(--kg);color:#041008;font-style:normal;font-family:var(--mono);font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;text-align:center}
.kb-date b{padding:6px 0 7px;font-family:var(--mono);font-size:24px;line-height:1;color:#111}
.kb-head .kick{color:var(--kg)}
.kb-head h2{margin-top:4px;font-family:var(--display);font-weight:600;font-size:clamp(26px,2.8vw,42px);line-height:1.08;letter-spacing:-.025em}
.kb>p{margin-top:14px;font-size:16px;line-height:1.75;color:var(--ink-2)}
.kb p strong,.kb li strong{color:var(--ink)}
.kb a:not(.btn):not(.kb-extra a){color:var(--ink);text-decoration:underline;text-decoration-color:rgba(0,255,106,.5);text-underline-offset:3px}
.kb-h3{margin-top:32px;font-family:var(--display);font-weight:600;font-size:clamp(18px,1.5vw,22px)}
.kb-fine,.kb-hint{font-size:14px!important;color:var(--ink-3)!important}
.kb-hint{padding:10px 14px;border-radius:10px;border:1px dashed rgba(0,255,106,.35)}
.kb-note{margin-top:18px;padding:16px 18px;border-radius:var(--r);border:1px solid rgba(0,255,106,.3);background:rgba(0,255,106,.04)}
.kb-note.warn{border-color:rgba(255,176,32,.4);background:rgba(255,176,32,.05)}
.kb-note b{display:block;font-size:15px}
.kb-note p{margin-top:6px;font-size:15px;line-height:1.65;color:var(--ink-2)}
@media(max-width:560px){.kb-date{width:52px}.kb-date b{font-size:19px}.kb-date i{font-size:8px}}
/* chain */
.kb-chain{list-style:none;margin:18px 0 0;padding:0;display:flex;flex-wrap:wrap;align-items:center;gap:0}
.kb-chain li{position:relative;margin:5px 0;padding:8px 14px;border:2px solid rgba(0,255,106,.55);border-radius:999px;font-size:13.5px;color:var(--ink);background:#0d100e}
.kb-chain li:not(:last-child){margin-right:14px}
.kb-chain li:not(:last-child)::after{content:'';position:absolute;right:-16px;top:50%;width:16px;height:8px;margin-top:-4px;border:2px solid rgba(0,255,106,.55);border-radius:999px;box-sizing:border-box}
.kb-chain li.end{background:var(--kg);border-color:var(--kg);color:#041008;font-weight:600}
/* seasons */
.kb-seasons{margin-top:4px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.kb-season{display:flex;gap:16px;align-items:flex-start;padding:18px;border-radius:var(--r-lg);border:1px solid var(--line-2);background:#0e0f0e}
.kb-season.w{border-color:rgba(124,212,255,.35)}.kb-season.s{border-color:rgba(0,255,106,.35)}
.kb-season .kick{color:var(--ink)}
.kb-season p{margin-top:6px;font-size:14.5px;line-height:1.65;color:var(--ink-2)}
.kb-tile{flex:none;display:flex;flex-direction:column;width:74px;border-radius:10px;overflow:hidden;background:var(--cal);text-align:center;box-shadow:0 10px 24px -10px rgba(0,0,0,.8)}
.kb-tile span{padding:3px 0;background:#7cd4ff;color:#041008;font-family:var(--mono);font-size:9.5px;font-weight:700}
.kb-season.s .kb-tile span{background:var(--kg)}
.kb-tile b{padding:8px 0;font-size:28px}
.kb-five{list-style:none;margin:14px 0 0;padding:0;counter-reset:q;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.kb-five li{counter-increment:q;padding:16px;border-radius:var(--r);border:1px solid var(--line);background:rgba(255,255,255,.02)}
.kb-five li::before{content:'Q' counter(q);display:block;font-family:var(--mono);font-size:12px;color:var(--kg)}
.kb-five b{display:block;margin-top:6px;font-size:15px;line-height:1.35}
.kb-five p{margin-top:6px;font-size:13.5px;line-height:1.55;color:var(--ink-2)}
@media(max-width:1000px){.kb-five{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.kb-seasons,.kb-five{grid-template-columns:minmax(0,1fr)}}
/* the seven calendar sheets */
.kb-sheets{list-style:none;margin:18px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.sheet{--pc:var(--p3);position:relative;padding-top:12px;border-radius:12px;background:#0e100f;border:1px solid var(--line-2);transition:opacity .4s,border-color .4s,box-shadow .4s}
.sheet[data-ph="1"]{--pc:var(--p1)}.sheet[data-ph="2"]{--pc:var(--p2)}.sheet[data-ph="4"]{--pc:var(--p4)}.sheet[data-ph="5"]{--pc:var(--p5)}.sheet[data-ph="6"]{--pc:var(--p6)}.sheet[data-ph="7"]{--pc:var(--p7)}
.sheet::before{content:'';position:absolute;left:18px;right:18px;top:-7px;height:14px;background:radial-gradient(circle at 7px 7px,#2a2d2b 4px,transparent 4.5px) 0 0/28px 14px repeat-x}
.sheet-head{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:center;margin:0 12px;padding:12px;border-radius:8px;background:var(--pc);color:#041008}
.sheet[data-ph="1"] .sheet-head,.sheet[data-ph="2"] .sheet-head{color:#eaffef}
.sheet-head>i{display:grid;place-items:center;width:34px;height:34px;border-radius:8px;background:rgba(0,0,0,.2);font-style:normal;font-family:var(--mono);font-weight:700;font-size:16px}
.sheet-head .kick{display:block;color:inherit;opacity:.85;font-size:10.5px}
.sheet-head b{display:block;margin-top:2px;font-family:var(--display);font-size:17px;line-height:1.2}
.sheet-here{display:none}
.sheet ul{list-style:none;margin:0;padding:12px 16px 16px;display:grid;gap:7px}
.sheet ul li{position:relative;padding-left:18px;font-size:13.5px;line-height:1.5;color:var(--ink-2)}
.sheet ul li::before{content:'';position:absolute;left:0;top:7px;width:8px;height:8px;border-radius:2px;border:1.5px solid var(--pc)}
.sheet.past{opacity:.45}
.sheet.now{border-color:var(--kr);box-shadow:0 0 0 1px var(--kr),0 24px 50px -24px rgba(255,90,79,.6)}
.sheet.now .sheet-here{display:block;grid-column:1/-1;justify-self:start;padding:2px 8px;border-radius:4px;background:var(--kr);color:#fff;font-style:normal;font-family:var(--mono);font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
@media(max-width:1000px){.kb-sheets{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.kb-sheets{grid-template-columns:minmax(0,1fr);gap:18px}}
/* intake planner */
.kb-plan{margin-top:16px;border-radius:var(--r);border:1px solid var(--line-2);overflow:hidden}
.kb-plan-h,.kb-plan-r{display:grid;grid-template-columns:200px minmax(0,1fr);gap:16px;padding:11px 16px}
.kb-plan-h{background:#111312;font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)}
.kb-plan-r{border-top:1px solid rgba(255,255,255,.06);font-size:14.5px;color:var(--ink-2)}
.kb-plan-r span:first-child{font-family:var(--mono);font-size:13px;color:var(--kg)}
.kb-plan-r.dl{background:rgba(255,90,79,.06)}.kb-plan-r.dl span:first-child{color:var(--kr)}
.kb-plan-r.go{background:rgba(0,255,106,.06)}
@media(max-width:600px){.kb-plan-h{display:none}.kb-plan-r{grid-template-columns:minmax(0,1fr);gap:2px}}
.kb-dates{margin-top:14px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.kb-dl{display:flex;gap:16px;align-items:flex-start;padding:18px;border-radius:var(--r-lg);border:1px solid rgba(255,90,79,.35);background:rgba(255,90,79,.04)}
.kb-dl .kick{color:var(--kr)}
.kb-dl>div>b{display:block;margin-top:4px;font-family:var(--display);font-size:22px}
.kb-dl p{margin-top:6px;font-size:14px;line-height:1.6;color:var(--ink-2)}
.kb-tear{flex:none;position:relative;display:flex;flex-direction:column;width:64px;border-radius:8px;overflow:hidden;background:var(--cal);text-align:center;box-shadow:0 10px 24px -10px rgba(0,0,0,.8)}
.kb-tear span{padding:3px 0;background:#d7372d;color:#fff;font-family:var(--mono);font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.kb-tear b{padding:6px 0 8px;font-family:var(--mono);font-size:22px;line-height:1;color:#111}
@media(max-width:640px){.kb-dates{grid-template-columns:minmax(0,1fr)}}
/* extra stops */
.kb-extra{margin-top:16px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.kb-extra a{position:relative;display:flex;flex-direction:column;padding:34px 16px 16px;border-radius:var(--r-lg);border:1px dashed rgba(0,255,106,.4);background:#0d0f0e;transition:border-color .2s,transform .2s}
.kb-extra a:hover{border-style:solid;border-color:var(--kg);transform:translateY(-2px)}
.kb-plus{position:absolute;left:16px;top:-11px;padding:3px 9px;border-radius:999px;background:var(--kg);color:#041008;font-family:var(--mono);font-size:10.5px;font-weight:700}
.kb-extra .kick{color:var(--ink-3)}
.kb-extra b{margin-top:6px;font-size:15px;line-height:1.4;color:var(--ink)}
.kb-extra em{margin-top:auto;padding-top:12px;font-style:normal;font-size:13.5px;color:var(--kg)}
@media(max-width:1000px){.kb-extra{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.kb-extra{grid-template-columns:minmax(0,1fr);gap:18px}}
/* countdown: tear-off days, deadline circled */
.kb-back{list-style:none;margin:18px 0 0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.kb-back li{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;padding:16px 12px;border-radius:var(--r);border:1px solid var(--line)}
.kb-back li .kick{margin-top:12px;color:var(--ink)}
.kb-back p{margin-top:4px;font-size:13.5px;line-height:1.5;color:var(--ink-2)}
.kb-back li:not(:last-child)::after{content:'';position:absolute;right:-8px;top:44px;width:6px;height:6px;border-top:2px solid var(--line-2);border-right:2px solid var(--line-2);transform:rotate(45deg)}
.kb-back li .kb-tear span{background:#3a3d3b}
.kb-back li.go{border-color:rgba(0,255,106,.5);background:rgba(0,255,106,.05)}
.kb-back li.go .kb-tear span{background:var(--kg);color:#041008}
.kb-back li.go .kick{color:var(--kg)}
.kb-back li.dl .kb-tear span{background:#d7372d}
.kb-back li.dl .kick{color:var(--kr)}
.kb-back li.dl .kb-tear::after{content:'';position:absolute;inset:-6px -8px;border:2.5px solid var(--kr);border-radius:50% 45% 55% 50%;transform:rotate(-8deg)}
.kb-back li.dl .kb-tear{overflow:visible}
.kb-back li.dl .kb-tear span{border-radius:8px 8px 0 0}
@media(max-width:760px){.kb-back{grid-template-columns:minmax(0,1fr)}.kb-back li{display:grid;grid-template-columns:64px minmax(0,1fr);column-gap:16px;align-items:center;text-align:left}.kb-back li .kb-tear{grid-row:1/3}.kb-back li .kick{margin-top:0;align-self:end}.kb-back li p{align-self:start}.kb-back li:not(:last-child)::after{display:none}}
/* ordered priorities */
.kb-order{list-style:none;margin:16px 0 0;padding:0;counter-reset:o;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.kb-order li{counter-increment:o;display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:12px;border:1px solid var(--line);font-size:14.5px;line-height:1.45;color:var(--ink)}
.kb-order li::before{content:counter(o);flex:none;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;border:1px solid rgba(0,255,106,.55);font-family:var(--mono);font-size:11px;color:var(--kg)}
.kb-arrive{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:16px;align-items:start}
.kb-arrive .kb-order{grid-template-columns:minmax(0,1fr)}
.kb-anm{margin-top:16px;padding:20px;border-radius:var(--r-lg);border:1px solid rgba(0,255,106,.35);background:rgba(0,255,106,.04)}
.kb-anm>b{display:block;margin-top:14px;font-size:16px}
.kb-anm p{margin-top:6px;font-size:14.5px;line-height:1.65;color:var(--ink-2)}
.kb-tear.big{width:92px}.kb-tear.big span{background:var(--kg);color:#041008;font-size:9px}.kb-tear.big b{font-size:34px;padding-bottom:0}.kb-tear.big small{padding-bottom:8px;font-family:var(--mono);font-size:10px;color:#444}
@media(max-width:900px){.kb-order{grid-template-columns:minmax(0,1fr)}.kb-arrive{grid-template-columns:minmax(0,1fr)}}
.kb-cats{margin-top:16px;display:flex;flex-wrap:wrap;gap:8px}
.kb-cats span{padding:9px 14px;border-radius:12px;border:1px solid var(--line-2);background:#0e0f0e;font-size:14px;color:var(--ink)}
/* personal timeline */
.kb-mine{margin-top:18px;display:grid;grid-template-columns:300px minmax(0,1fr);border-radius:var(--r-lg);border:1px solid rgba(0,255,106,.35);background:#0b0d0c;overflow:hidden}
.kb-mine-set{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:20px;border-right:1px solid var(--line);background:#0e110f}
.kb-mine-set .kick{margin-top:6px;color:var(--kg)}
.kb-mine-set .kick:first-child{margin-top:0}
.kb-stage{display:flex;flex-wrap:wrap;gap:6px}
.kb-stage button{padding:6px 11px;border-radius:999px;border:1px solid var(--line-2);font-size:12.5px;color:var(--ink-2)}
.kb-stage button[aria-pressed="true"]{background:var(--kg);border-color:var(--kg);color:#041008;font-weight:600}
.kb-mine-prog{display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:14px;padding:16px 18px;border-bottom:1px solid var(--line)}
.kb-mine-prog .kick{color:var(--kg)}
.kb-mine-prog b{font-family:var(--mono);font-size:16px}
.kb-bar{display:block;height:6px;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden}
.kb-bar i{display:block;height:100%;width:0;background:var(--kg);transition:width .45s var(--ease)}
.kb-tk{max-height:none;overflow:visible;border-top:0}
.kb-tk button{padding-right:16px}
.kb-tk button em{display:block;margin-top:3px;font-style:normal;font-family:var(--mono);font-size:10.5px;letter-spacing:.04em;color:var(--kg);text-decoration:none}
.kb-tk button[aria-pressed="true"] em{color:var(--ink-3)}
.kb-mine-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:4px 18px;border-top:1px solid var(--line);font-family:var(--mono);font-size:11px;color:var(--ink-3)}
.kb-mine-foot .tk-reset{width:auto;border:0;padding:10px 0}
@media(max-width:860px){.kb-mine{grid-template-columns:minmax(0,1fr)}.kb-mine-set{border-right:0;border-bottom:1px solid var(--line)}}
/* mistakes, advice */
.kb-mist{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.kb-mist li{position:relative;padding:14px 16px 14px 48px;border-radius:12px;border:1px solid var(--line);font-size:14.5px;line-height:1.6;color:var(--ink-2)}
.kb-mist li::before{content:'✕';position:absolute;left:14px;top:14px;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:rgba(255,90,79,.14);color:var(--kr);font-size:11px;font-weight:700}
@media(max-width:700px){.kb-mist{grid-template-columns:minmax(0,1fr)}}
.kb-advice{display:grid;grid-template-columns:260px minmax(0,1fr);gap:clamp(18px,3vw,40px);align-items:center;padding:clamp(20px,3vw,34px);border-radius:var(--r-lg);border:1px solid rgba(0,255,106,.35);background:radial-gradient(100% 140% at 0 0,rgba(0,255,106,.1),transparent 60%),#0b0d0c}
.kb-advice .kick{color:var(--kg)}
.kb-advice h2{margin-top:6px;font-family:var(--display);font-weight:600;font-size:clamp(24px,2.4vw,36px);line-height:1.1;letter-spacing:-.02em}
.kb-advice p{margin-top:12px;font-size:15.5px;line-height:1.75;color:var(--ink-2)}
.kb-advice-sheet{display:grid;grid-template-columns:repeat(3,1fr);gap:0;padding:12px;border-radius:6px;background:var(--cal);transform:rotate(-3deg);box-shadow:0 20px 40px -16px rgba(0,0,0,.8)}
.kb-advice-sheet span{padding:5px 4px;border-bottom:2px solid #1f6b45;font-family:var(--mono);font-size:9px;font-weight:700;color:#1f6b45;text-transform:uppercase}
.kb-advice-sheet i{grid-column:1/-1;height:18px;border-bottom:1px solid rgba(0,0,0,.12);background:linear-gradient(90deg,transparent 33%,rgba(0,0,0,.08) 33% calc(33% + 1px),transparent 0 66%,rgba(0,0,0,.08) 66% calc(66% + 1px),transparent 0)}
@media(max-width:760px){.kb-advice{grid-template-columns:minmax(0,1fr)}.kb-advice-sheet{max-width:240px}}
.pg-kal .g-src .kick{color:var(--kg)}
.pg-kal .acc{margin-top:4px}

/* ===== APS CHECKLIST · Die Prüfstelle (bespoke) ===== */
.pg-aps2{--pg-accent:#00ff6a;--pg-glow:rgba(0,255,106,.14);--ga:#00ff6a;--sg:#00ff6a;--sa:#ffb020;--sr:#ff5a4f}
.pg-aps2 .phero h1 .big{font-size:clamp(44px,5.4vw,104px);line-height:1}
.pg-aps2 .phero h1 .big em{display:block;font-style:normal;color:var(--sg)}
.pg-aps2 .phero h1 .flap{font-size:clamp(26px,3.2vw,60px)}
/* route check */
.pruef{border:1px solid var(--line-2);border-radius:var(--r-lg);background:#0a0b0a;overflow:hidden;box-shadow:0 40px 100px -40px rgba(0,255,106,.28)}
.pr-top{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;border-bottom:1px solid var(--line);background:#101211}
.pr-top .kick b{color:var(--sg);font-weight:400}
.pr-n{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:#041008;background:var(--sg);padding:3px 9px;border-radius:999px;font-weight:700;white-space:nowrap}
.pr-body{padding:6px 18px 4px}
.pr-q{padding:12px 0;border-bottom:1px dashed rgba(255,255,255,.08);animation:kkIn .35s var(--ease) both}
.pr-q[hidden]{display:none}
.pr-ql{display:block;margin-bottom:8px;font-size:13.5px;line-height:1.45;color:var(--ink-2)}
.pr-opts{display:flex;gap:6px}
.pr-opts.wrap{flex-wrap:wrap}
.pr-opts button{flex:1;padding:9px 12px;border-radius:10px;border:1px solid var(--line-2);background:#111312;font-size:13.5px;color:var(--ink);text-align:center;transition:all .2s}
.pr-opts.wrap button{flex:1 1 40%}
.pr-opts button:hover{border-color:rgba(0,255,106,.5)}
.pr-opts button[aria-pressed="true"]{background:var(--sg);border-color:var(--sg);color:#041008;font-weight:600}
.pr-out{--c:var(--ink-3);display:flex;align-items:center;gap:16px;margin:12px 18px 14px;padding:16px;border-radius:14px;border:1px dashed var(--line-2);transition:border-color .3s,background .3s}
.pruef[data-result="ok"] .pr-out{--c:var(--sg);border:1px solid rgba(0,255,106,.5);background:rgba(0,255,106,.06)}
.pruef[data-result="warn"] .pr-out{--c:var(--sa);border:1px solid rgba(255,176,32,.5);background:rgba(255,176,32,.06)}
.pruef[data-result="no"] .pr-out{--c:var(--sr);border:1px solid rgba(255,90,79,.5);background:rgba(255,90,79,.06)}
.pr-stamp{flex:none;display:grid;place-items:center;width:66px;height:66px;border-radius:50%;border:3px double var(--c);color:var(--c);font-family:var(--mono);font-weight:700;font-size:18px;transform:rotate(-10deg);transition:all .35s var(--ease)}
.pruef[data-result] .pr-stamp{animation:prStampIn .45s cubic-bezier(.3,1.6,.5,1)}
@keyframes prStampIn{from{transform:rotate(-30deg) scale(1.6);opacity:0}to{transform:rotate(-10deg) scale(1);opacity:1}}
.pr-out .kick{color:var(--c)}
.pr-out b{display:block;margin-top:3px;font-size:16px;line-height:1.3;color:var(--ink)}
.pr-out p{margin-top:5px;font-size:13.5px;line-height:1.55;color:var(--ink-2)}
.pr-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 18px;border-top:1px solid var(--line);font-size:12px;color:var(--ink-3);background:#0d0e0d}
.pr-foot button{flex:none;padding:6px 12px;border-radius:999px;border:1px solid var(--line-2);font-size:12.5px;color:var(--ink-2)}
@media(max-width:560px){.pr-opts{flex-wrap:wrap}.pr-opts button{flex:1 1 40%}.pr-stamp{width:54px;height:54px;font-size:15px}.pr-foot{flex-direction:column;align-items:flex-start}}
/* body */
.ap2-body{max-width:calc(1080px + 2 * var(--gutter));margin:0 auto;padding:clamp(40px,6vw,90px) var(--gutter) 0}
.pz{padding:clamp(48px,6vw,86px) 0 0;scroll-margin-top:110px}
.pz:first-child{padding-top:0}
.pz-head{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:clamp(14px,2vw,24px);margin-bottom:18px}
.pz-stamp{--c:var(--sg);display:grid;place-items:center;width:62px;height:62px;border-radius:50%;border:3px double var(--c);transform:rotate(-12deg);box-shadow:inset 0 0 0 5px rgba(0,0,0,.4),inset 0 0 0 6px color-mix(in srgb,var(--c) 35%,transparent)}
.pz-stamp.hot{--c:var(--sa)}.pz-stamp.no{--c:var(--sr)}
.pz-stamp b{font-family:var(--mono);font-size:19px;color:var(--c)}
.pz-head .kick{color:var(--sg)}
.pz-head h2{margin-top:4px;font-family:var(--display);font-weight:600;font-size:clamp(26px,2.8vw,42px);line-height:1.08;letter-spacing:-.025em}
.pz>p{margin-top:14px;font-size:16px;line-height:1.75;color:var(--ink-2)}
.pz p strong,.pz li strong{color:var(--ink)}
.pz a:not(.btn){color:var(--ink);text-decoration:underline;text-decoration-color:rgba(0,255,106,.5);text-underline-offset:3px}
.pz-fine{font-size:14px!important;color:var(--ink-3)!important}
.pz-note{margin-top:16px;padding:16px 18px;border-radius:var(--r);border:1px solid rgba(0,255,106,.3);background:rgba(0,255,106,.04)}
.pz-note b{display:block;font-size:15px}
.pz-note p{margin-top:6px;font-size:15px;line-height:1.65;color:var(--ink-2)}
@media(max-width:560px){.pz-stamp{width:50px;height:50px}.pz-stamp b{font-size:16px}}
/* 01 is / isn't */
.pz-is{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:12px}
.pz-is>div{padding:20px;border-radius:var(--r-lg);border:1px solid var(--line-2)}
.pz-is-yes{border-color:rgba(0,255,106,.45)!important;background:rgba(0,255,106,.05)}
.pz-is-yes .kick{color:var(--sg)}
.pz-is-yes b{display:block;margin-top:6px;font-family:var(--display);font-size:clamp(19px,1.8vw,24px);line-height:1.25}
.pz-is-yes p{margin-top:8px;font-size:14.5px;line-height:1.65;color:var(--ink-2)}
.pz-is-no .kick{color:var(--sr)}
.pz-is-no ul{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:8px}
.pz-is-no li{font-size:15px;color:var(--ink-2);text-decoration:line-through;text-decoration-color:rgba(255,90,79,.6)}
.pz-is-no li::before{content:'✕ ';color:var(--sr);display:inline-block;text-decoration:none;margin-right:4px}
@media(max-width:700px){.pz-is{grid-template-columns:minmax(0,1fr)}}
/* 02 the 70% rule */
.pz-70{margin-top:16px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:clamp(16px,3vw,32px);align-items:center;padding:22px;border-radius:var(--r-lg);border:1px solid rgba(0,255,106,.4);background:radial-gradient(100% 140% at 0 0,rgba(0,255,106,.1),transparent 60%),#0b0d0c}
.pz-70-num{display:flex;align-items:flex-start;font-family:var(--mono);font-weight:700;color:var(--sg);line-height:.85}
.pz-70-num b{font-size:clamp(72px,9vw,120px);letter-spacing:-.06em}
.pz-70-num span{font-size:clamp(28px,3vw,40px);margin-top:8px}
.pz-70 .kick{color:var(--sg)}
.pz-70 p{margin-top:8px;font-size:15px;line-height:1.7;color:var(--ink-2)}
.pz-routes{margin-top:14px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.pz-route{--c:var(--sg);position:relative;padding:18px 18px 16px;border-radius:var(--r);border:1px solid color-mix(in srgb,var(--c) 40%,transparent);background:color-mix(in srgb,var(--c) 4%,#0c0d0c)}
.pz-route.warn{--c:var(--sa)}.pz-route.no{--c:var(--sr)}
.pz-v{float:right;margin:-4px -4px 6px 10px;padding:3px 9px;border:2px solid var(--c);border-radius:6px;color:var(--c);font-family:var(--mono);font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;transform:rotate(4deg)}
.pz-route b{display:block;font-size:16px;line-height:1.35}
.pz-route small{font-weight:400;color:var(--ink-3);font-size:13px}
.pz-route p{margin-top:6px;font-size:14px;line-height:1.6;color:var(--ink-2)}
@media(max-width:700px){.pz-70{grid-template-columns:minmax(0,1fr)}.pz-routes{grid-template-columns:minmax(0,1fr)}}
/* 03 */
.pz-pre{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:8px}
.pz-pre li{display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px;align-items:start;padding:12px 14px;border-radius:12px;border:1px solid var(--line);font-size:15px;line-height:1.6;color:var(--ink-2)}
.pz-pre li>span{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:#141614;font-size:17px}
.pz-procs{grid-column:2;display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.pz-procs em{font-style:normal;padding:4px 10px;border-radius:6px;border:1px dashed rgba(0,255,106,.45);font-family:var(--mono);font-size:11.5px;color:var(--ink)}
/* 04 ten documents as file slips */
.pz-docs{list-style:none;margin:16px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.pz-docs li{position:relative;padding:16px 18px 16px 64px;border-radius:12px;border:1px solid var(--line-2);background:#0e0f0e}
.pz-docs li::after{content:'';position:absolute;right:-1px;top:-1px;width:18px;height:18px;background:linear-gradient(225deg,var(--bg) 50%,#1d201e 50%);border-left:1px solid var(--line-2);border-bottom:1px solid var(--line-2);border-radius:0 12px 0 4px}
.pz-dn{position:absolute;left:16px;top:16px;display:grid;place-items:center;width:34px;height:34px;border-radius:8px;border:1px solid rgba(0,255,106,.45);font-family:var(--mono);font-size:12.5px;font-weight:700;color:var(--sg)}
.pz-docs b{display:block;font-size:16px}
.pz-docs p{margin-top:6px;font-size:14px;line-height:1.6;color:var(--ink-2)}
.pz-tag{float:right;margin:0 10px 6px 10px;padding:2px 8px;border-radius:5px;font-style:normal;font-family:var(--mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;background:rgba(255,255,255,.06);color:var(--ink-3)}
.pz-docs li.hot{border-color:rgba(255,176,32,.5)}
.pz-docs li.hot .pz-tag{background:var(--sa);color:#0b0a05;font-weight:700}
.pz-docs li.hot .pz-dn{border-color:var(--sa);color:var(--sa)}
.pz-docs li.opt{border-style:dashed}
.pz-docs li:last-child:nth-child(odd){grid-column:1/-1}
@media(max-width:760px){.pz-docs{grid-template-columns:minmax(0,1fr)}.pz-tag{float:none;display:inline-block;margin:0 0 6px}}
/* 05 cost & time */
.pz-cost{margin-top:4px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}
.pz-receipt{position:relative;padding:22px 22px 30px;border-radius:12px 12px 0 0;background:#f2efe6;color:#141414;-webkit-mask:radial-gradient(circle at 10px 100%,transparent 8px,#000 8.5px) -10px 100%/20px 12px repeat-x,linear-gradient(#000,#000) 0 0/100% calc(100% - 11px) no-repeat;mask:radial-gradient(circle at 10px 100%,transparent 8px,#000 8.5px) -10px 100%/20px 12px repeat-x,linear-gradient(#000,#000) 0 0/100% calc(100% - 11px) no-repeat}
.pz-receipt .kick{color:#555}
.pz-receipt>b{display:block;margin:6px 0 12px;font-family:var(--mono);font-size:clamp(36px,4vw,52px);letter-spacing:-.03em}
.pz-receipt-l{display:flex;justify-content:space-between;padding:7px 0;border-top:1px dashed rgba(0,0,0,.25);font-family:var(--mono);font-size:12.5px}
.pz-receipt-l em{font-style:normal;font-weight:700}
.pz-receipt p{margin-top:12px;font-size:13.5px;line-height:1.6;color:#333}
.pz-receipt a{color:#0a5a2c!important;text-decoration-color:#0a5a2c!important}
.pz-time{padding:22px;border-radius:var(--r-lg);border:1px solid var(--line-2);background:#0e0f0e}
.pz-time .kick{color:var(--sa)}
.pz-time>b{display:block;margin-top:6px;font-family:var(--mono);font-size:clamp(32px,3.6vw,46px);color:var(--sa)}
.pz-time-f{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px}
.pz-time-f span{padding:6px 11px;border-radius:8px;border:1px solid var(--line-2);font-size:13px;color:var(--ink)}
.pz-time-f i{font-style:normal;font-family:var(--mono);color:var(--sa)}
.pz-time p{margin-top:12px;font-size:14px;line-height:1.65;color:var(--ink-2)}
@media(max-width:760px){.pz-cost{grid-template-columns:minmax(0,1fr)}}
/* 06 steps with the parcel label */
.pz-steps{list-style:none;margin:16px 0 0;padding:0;counter-reset:st;position:relative}
.pz-steps::before{content:'';position:absolute;left:17px;top:10px;bottom:10px;border-left:2px dashed rgba(0,255,106,.35)}
.pz-steps>li{counter-increment:st;position:relative;padding:0 0 22px 56px}
.pz-steps>li::before{content:counter(st);position:absolute;left:0;top:-3px;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#0b0d0c;border:2px solid var(--sg);font-family:var(--mono);font-size:13px;font-weight:700;color:var(--sg)}
.pz-steps>li.parcel::before{content:'📦';font-size:15px}
.pz-steps>li.end::before{content:'✓';background:var(--sg);color:#041008}
.pz-steps b{display:block;font-size:16px}
.pz-steps p{margin-top:4px;font-size:14.5px;line-height:1.6;color:var(--ink-2)}
.pz-label{max-width:420px;margin-top:10px;padding:16px 18px;border-radius:8px;background:#f2efe6;color:#141414;border-left:8px solid var(--sg);box-shadow:0 14px 30px -14px rgba(0,0,0,.8);transform:rotate(-.8deg)}
.pz-label .kick{color:#666}
.pz-label address{margin-top:4px;font-style:normal;font-family:var(--mono);font-size:13px;line-height:1.6;font-weight:700}
.pz-label a{display:inline-block;margin-top:8px;font-size:12.5px;color:#0a5a2c!important;text-decoration-color:#0a5a2c!important}
/* 07 dMAT */
.pz-who{margin-top:16px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}
.pz-who>div{padding:20px;border-radius:var(--r-lg)}
.pz-who-yes{border:1px solid rgba(255,176,32,.5);background:rgba(255,176,32,.05)}
.pz-who-yes .kick{color:var(--sa)}
.pz-who p{margin-top:8px;font-size:14.5px;line-height:1.6;color:var(--ink-2)}
.pz-fields{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.pz-fields em{font-style:normal;padding:6px 11px;border-radius:8px;background:var(--sa);color:#0b0a05;font-size:13px;font-weight:600}
.pz-who-no{border:1px solid rgba(0,255,106,.4);background:rgba(0,255,106,.04)}
.pz-who-no .kick{color:var(--sg)}
.pz-who-no ul{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:8px}
.pz-who-no li{position:relative;padding-left:24px;font-size:14px;line-height:1.55;color:var(--ink-2)}
.pz-who-no li::before{content:'✓';position:absolute;left:0;color:var(--sg);font-weight:700}
.pz-facts{margin-top:12px;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}
.pz-facts div{padding:14px;border-radius:12px;border:1px solid var(--line-2);text-align:center}
.pz-facts b{display:block;font-family:var(--mono);font-size:clamp(20px,2.2vw,28px);color:var(--ink)}
.pz-facts span{display:block;margin-top:4px;font-size:12.5px;line-height:1.4;color:var(--ink-3)}
.pz-vs{margin-top:16px;display:grid;grid-template-columns:auto auto auto minmax(0,1fr);gap:12px;align-items:center;padding:16px 18px;border-radius:var(--r);border:1px dashed var(--line-2)}
.pz-vs span{padding:6px 12px;border-radius:8px;background:#151716;font-family:var(--mono);font-weight:700;font-size:14px}
.pz-vs i{font-style:normal;font-size:22px;color:var(--sr)}
.pz-vs p{font-size:14px;line-height:1.6;color:var(--ink-2)}
@media(max-width:860px){.pz-who{grid-template-columns:minmax(0,1fr)}.pz-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.pz-facts div:last-child:nth-child(odd){grid-column:1/-1}.pz-vs{grid-template-columns:auto auto auto}.pz-vs p{grid-column:1/-1}}
/* dossier: sheets that get stamped */
.pz-dossier{margin-top:16px;border-radius:var(--r-lg);border:1px solid rgba(0,255,106,.35);background:#0b0d0c;overflow:hidden}
.pz-dossier-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;padding:16px 18px;border-bottom:1px solid var(--line);background:#0f1210}
.pz-dossier-head .kick{display:block;color:var(--sg)}
.pz-dossier-head b{font-family:var(--mono);font-size:18px}
.pz-bar{display:block;height:6px;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden}
.pz-bar i{display:block;height:100%;width:0;background:var(--sg);transition:width .45s var(--ease)}
.pz-ready{padding:4px 10px;border:2px solid var(--line-2);border-radius:6px;font-family:var(--mono);font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);transition:all .35s}
.pz-ready.on{border-color:var(--sg);color:var(--sg);transform:rotate(-4deg);box-shadow:0 0 20px rgba(0,255,106,.3)}
.pz-sheets{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;padding:18px;max-height:none;overflow:visible;border-top:0}
.pz-sheets button{position:relative;display:flex;align-items:flex-end;min-height:108px;padding:14px!important;border:1px solid var(--line-2)!important;border-radius:6px 14px 6px 6px;background:linear-gradient(#141614,#101210)!important;font:600 14px/1.35 var(--body);color:var(--ink);text-align:left;overflow:hidden;transition:border-color .3s,transform .2s}
.pz-sheets button:hover{transform:translateY(-2px);border-color:rgba(0,255,106,.45)!important}
.pz-sheets button::before{content:'';position:absolute!important;left:14px!important;top:16px!important;width:48%!important;height:5px!important;margin:0!important;border:0!important;border-radius:2px!important;background:rgba(255,255,255,.08)!important;box-shadow:0 11px 0 rgba(255,255,255,.06),0 22px 0 rgba(255,255,255,.05)}
.pz-sheets button::after{content:'Geprüft ✓';position:absolute!important;right:10px;top:12px!important;left:auto!important;width:auto!important;height:auto!important;margin:0!important;padding:3px 8px;border:2.5px solid var(--sg)!important;border-radius:6px;color:var(--sg);font-family:var(--mono);font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;transform:rotate(-12deg) scale(1.8)!important;opacity:0;transition:transform .35s cubic-bezier(.3,1.6,.5,1),opacity .2s}
.pz-sheets button[aria-pressed="true"]{border-color:rgba(0,255,106,.55)!important;text-decoration:none;color:var(--ink)}
.pz-sheets button[aria-pressed="true"]::after{content:'Geprüft ✓';opacity:1;transform:rotate(-12deg) scale(1)!important;border-left:2.5px solid var(--sg)!important;border-bottom:2.5px solid var(--sg)!important;width:auto!important;height:auto!important;top:12px!important;left:auto!important;margin:0!important}
.pz-dossier-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:4px 18px;border-top:1px solid var(--line);font-family:var(--mono);font-size:11px;color:var(--ink-3)}
.pz-dossier-foot .tk-reset{width:auto;border:0;padding:10px 0}
@media(max-width:560px){.pz-sheets{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:12px}.pz-sheets button{min-height:96px;font-size:13px}.pz-dossier-head{grid-template-columns:auto minmax(0,1fr)}.pz-ready{grid-column:1/-1;justify-self:start}}
/* 08 mistakes, 09 advice */
.pz-mist{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.pz-mist li{position:relative;padding:14px 16px 14px 50px;border-radius:12px;border:1px solid var(--line);font-size:14.5px;line-height:1.6;color:var(--ink-2)}
.pz-mist li::before{content:'✕';position:absolute;left:14px;top:14px;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;border:2px solid var(--sr);color:var(--sr);font-size:11px;font-weight:700;transform:rotate(-10deg)}
.pz-mist b{color:var(--ink)}
@media(max-width:700px){.pz-mist{grid-template-columns:minmax(0,1fr)}}
.pz-advice{display:grid;grid-template-columns:320px minmax(0,1fr);gap:clamp(18px,3vw,40px);align-items:center;padding:clamp(20px,3vw,34px);border-radius:var(--r-lg);border:1px solid rgba(0,255,106,.35);background:radial-gradient(100% 140% at 100% 0,rgba(0,255,106,.1),transparent 60%),#0b0d0c}
.pz-advice .kick{color:var(--sg)}
.pz-advice h2{margin-top:6px;font-family:var(--display);font-weight:600;font-size:clamp(24px,2.4vw,36px);line-height:1.1;letter-spacing:-.02em}
.pz-advice p{margin-top:12px;font-size:15.5px;line-height:1.75;color:var(--ink-2)}
.pz-finder{border-radius:12px;border:1px solid var(--line-2);background:#121412;overflow:hidden;box-shadow:0 20px 40px -20px rgba(0,0,0,.8)}
.pz-finder-bar{display:flex;align-items:center;gap:6px;padding:9px 12px;border-bottom:1px solid var(--line);background:#181b19}
.pz-finder-bar i{width:9px;height:9px;border-radius:50%;background:rgba(255,255,255,.18)}
.pz-finder-bar span{margin-left:8px;font-size:12.5px;font-weight:600;color:var(--ink)}
.pz-finder ul{list-style:none;margin:0;padding:6px 0}
.pz-finder li{padding:6px 14px;font-family:var(--mono);font-size:12.5px;color:var(--ink-2)}
.pz-finder li:nth-child(odd){background:rgba(255,255,255,.02)}
.pz-finder li.pdf{color:var(--sg)}
.pz-finder li.pdf em{font-style:normal;margin-left:6px;font-family:var(--body);font-size:11.5px;color:var(--ink-3)}
@media(max-width:760px){.pz-advice{grid-template-columns:minmax(0,1fr)}}
.pg-aps2 .acc{margin-top:4px}

/* ===== UNIVERSITY APPLICATION · Routenwahl & Bewerbungsboard (bespoke) ===== */
.pg-bew{--pg-accent:#00ff6a;--pg-glow:rgba(0,255,106,.14);--ga:#00ff6a;--bg1:#00ff6a;--bu:#7cd4ff;--bd:#b99cff;--ba:#ffb020;--br:#ff5a4f}
.pg-bew .phero h1 .big{font-size:clamp(42px,5vw,96px);line-height:1}
.pg-bew .phero h1 .big em{display:block;font-style:normal;color:var(--bg1)}
.pg-bew .phero h1 .flap{font-size:clamp(20px,2.4vw,48px)}
/* route map */
.rw{border:1px solid var(--line-2);border-radius:var(--r-lg);background:#0a0b0a;overflow:hidden;box-shadow:0 40px 100px -40px rgba(0,255,106,.28)}
.rw-top{padding:14px 18px;border-bottom:1px solid var(--line);background:#101211}
.rw-top .kick b{color:var(--bg1);font-weight:400}
.rw-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;padding:14px 18px 0}
.rw-tabs button{display:flex;flex-direction:column;align-items:center;gap:2px;padding:9px 4px;border-radius:12px;border:1px solid var(--line-2);font-size:12.5px;color:var(--ink-2);transition:all .25s}
.rw-tabs b{font-family:var(--mono);font-size:16px;color:var(--ink)}
.rw-tabs button[aria-pressed="true"]{background:var(--bg1);border-color:var(--bg1);color:#041008}
.rw-tabs button[aria-pressed="true"] b{color:#041008}
.rw-map{position:relative;height:190px;margin:10px 18px 0}
.rw-lines{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.rw-lines path{fill:none;stroke:rgba(255,255,255,.08);stroke-width:2;stroke-dasharray:4 6;transition:stroke .4s}
.rw-map[data-map="a"] .l-a,.rw-map[data-map="b"] .l-b,.rw-map[data-map="c"] .l-c1,.rw-map[data-map="c"] .l-c2,.rw-map[data-map="d"] .l-d{stroke:var(--bg1);stroke-width:3;stroke-dasharray:8 8;animation:rwFlow 1s linear infinite;filter:drop-shadow(0 0 6px rgba(0,255,106,.6))}
@keyframes rwFlow{to{stroke-dashoffset:-16}}
@media(prefers-reduced-motion:reduce){.rw-lines path{animation:none!important}}
.rw-node{position:absolute;z-index:1;transform:translate(-50%,-50%);padding:7px 12px;border-radius:10px;border:1px solid var(--line-2);background:#121412;font-family:var(--mono);font-size:11.5px;font-weight:700;color:var(--ink-3);white-space:nowrap;transition:all .35s}
.rw-node.you{left:12.5%;top:50%}.rw-node.ua{left:50%;top:20%}.rw-node.hs{left:50%;top:80%}.rw-node.uni{left:87.5%;top:50%}
.rw-map .you,.rw-map .uni{color:var(--ink);border-color:rgba(255,255,255,.3)}
.rw-map .uni{background:var(--bg1);color:#041008;border-color:var(--bg1)}
.rw-map[data-map="a"] .ua,.rw-map[data-map="c"] .ua{color:var(--bu);border-color:var(--bu);box-shadow:0 0 18px rgba(124,212,255,.35)}
.rw-map[data-map="d"] .hs{color:var(--bd);border-color:var(--bd);box-shadow:0 0 18px rgba(185,156,255,.35)}
.rw-map[data-map="b"] .ua,.rw-map[data-map="b"] .hs,.rw-map[data-map="a"] .hs,.rw-map[data-map="c"] .hs,.rw-map[data-map="d"] .ua{opacity:.35}
.rw-map[data-map="c"] .you::after{content:'+ VPD';position:absolute;left:50%;top:100%;margin-top:6px;transform:translateX(-50%);padding:2px 6px;border-radius:4px;background:var(--bu);color:#041008;font-size:9.5px}
.rw-out{min-height:132px;padding:6px 18px 14px}
.rw-out>div{padding:14px 16px;border-radius:12px;border:1px solid rgba(0,255,106,.3);background:rgba(0,255,106,.04);animation:kkIn .35s var(--ease) both}
.rw-out .kick{color:var(--bg1)}
.rw-out b{display:block;margin-top:4px;font-size:16px}
.rw-out p{margin-top:5px;font-size:13.5px;line-height:1.55;color:var(--ink-2)}
.rw-foot{display:flex;justify-content:space-between;gap:12px;padding:11px 18px;border-top:1px solid var(--line);font-size:12.5px;color:var(--ink-3);background:#0d0e0d}
.rw-foot a{color:var(--ink);text-decoration:underline;text-decoration-color:rgba(0,255,106,.5);text-underline-offset:3px;white-space:nowrap}
@media(max-width:560px){.rw-map{height:160px;margin:8px 12px 0}.rw-node{padding:5px 8px;font-size:10px}.rw-node.you{left:11%}.rw-node.uni{left:88%}.rw-tabs{padding:12px 12px 0}.rw-out{padding:6px 12px 12px}.rw-out{min-height:170px}}
/* body: portal form */
.bw2-body{max-width:calc(1080px + 2 * var(--gutter));margin:0 auto;padding:clamp(40px,6vw,90px) var(--gutter) 0}
.bf{padding:clamp(48px,6vw,86px) 0 0;scroll-margin-top:110px}
.bf:first-child{padding-top:0}
.bf-head{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:end;gap:clamp(14px,2vw,22px);margin-bottom:18px;padding-bottom:14px;border-bottom:2px solid rgba(0,255,106,.25)}
.bf-no{--c:var(--bg1);display:grid;place-items:center;min-width:56px;height:44px;padding:0 10px;border-radius:10px 10px 0 0;background:color-mix(in srgb,var(--c) 14%,transparent);border:1px solid color-mix(in srgb,var(--c) 45%,transparent);border-bottom:0;margin-bottom:-16px;font-family:var(--mono);font-weight:700;font-size:18px;color:var(--c)}
.bf-no.hot{--c:var(--ba)}.bf-no.no{--c:var(--br)}
.bf-head .kick{color:var(--bg1)}
.bf-head h2{margin-top:4px;font-family:var(--display);font-weight:600;font-size:clamp(26px,2.8vw,42px);line-height:1.08;letter-spacing:-.025em}
.bf>p{margin-top:14px;font-size:16px;line-height:1.75;color:var(--ink-2)}
.bf p strong,.bf li strong{color:var(--ink)}
.bf a:not(.btn):not(.bf-next a){color:var(--ink);text-decoration:underline;text-decoration-color:rgba(0,255,106,.5);text-underline-offset:3px}
.bf-h3{margin-top:32px;font-family:var(--display);font-weight:600;font-size:clamp(18px,1.5vw,22px)}
.bf-fine{font-size:14px!important;color:var(--ink-3)!important}
.bf-note{margin-top:16px;padding:16px 18px;border-radius:var(--r);border:1px solid rgba(0,255,106,.3);background:rgba(0,255,106,.04)}
.bf-note.warn{border-color:rgba(255,176,32,.4);background:rgba(255,176,32,.05)}
.bf-note b{display:block;font-size:15px}
.bf-note p{margin-top:6px;font-size:15px;line-height:1.65;color:var(--ink-2)}
.bf-ticks{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:7px}
.bf-ticks.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.bf-ticks li{position:relative;padding-left:24px;font-size:15px;line-height:1.55;color:var(--ink-2)}
.bf-ticks li::before{content:'';position:absolute;left:6px;top:.66em;width:6px;height:6px;border-radius:50%;background:rgba(0,255,106,.8)}
@media(max-width:640px){.bf-ticks.two{grid-template-columns:minmax(0,1fr)}}
/* 01 form fields */
.bf-form{margin-top:14px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.bf-field{display:flex;flex-direction:column;gap:6px;padding:12px 14px;border-radius:10px;border:1px solid var(--line-2);background:#0e0f0e}
.bf-field:last-child{grid-column:1/-1}
.bf-field label{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--bg1)}
.bf-field span{padding-bottom:6px;border-bottom:1px dashed rgba(255,255,255,.18);font-size:14.5px;line-height:1.5;color:var(--ink)}
@media(max-width:640px){.bf-form{grid-template-columns:minmax(0,1fr)}}
/* 02 stepper */
.bf-stepper{list-style:none;margin:18px 0 0;padding:0;display:grid;grid-template-columns:repeat(11,minmax(0,1fr));counter-reset:j;position:relative}
.bf-stepper::before{content:'';position:absolute;left:4.5%;right:4.5%;top:13px;height:2px;background:linear-gradient(90deg,rgba(0,255,106,.25),var(--bg1))}
.bf-stepper li{counter-increment:j;position:relative;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;font-size:12px;line-height:1.3;color:var(--ink-2)}
.bf-stepper li::before{content:counter(j);display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#0b0d0c;border:2px solid var(--bg1);font-family:var(--mono);font-size:11px;color:var(--bg1);z-index:1}
.bf-stepper li.end::before{background:var(--bg1);color:#041008}
@media(max-width:900px){.bf-stepper{grid-template-columns:minmax(0,1fr);gap:10px}.bf-stepper::before{left:13px;right:auto;top:10px;bottom:10px;width:2px;height:auto}.bf-stepper li{flex-direction:row;text-align:left;font-size:14px}}
.bf-extras{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.bf-extras span{padding:6px 12px;border-radius:999px;border:1px dashed rgba(255,176,32,.55);font-size:13px;color:var(--ink)}
.bf-extras.dim span{border-color:var(--line-2);border-style:solid;color:var(--ink-2)}
/* 03 spreadsheet columns */
.bf-cols{margin-top:14px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line-2);border-radius:10px;overflow:hidden;background:#0d0e0d}
.bf-cols span{display:flex;gap:10px;align-items:baseline;padding:10px 12px;border-right:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06);font-size:13.5px;color:var(--ink)}
.bf-cols span:nth-child(4n){border-right:0}
.bf-cols i{flex:none;font-style:normal;font-family:var(--mono);font-size:10.5px;color:var(--bg1)}
@media(max-width:860px){.bf-cols{grid-template-columns:repeat(2,minmax(0,1fr))}.bf-cols span:nth-child(4n){border-right:1px solid rgba(255,255,255,.06)}.bf-cols span:nth-child(2n){border-right:0}}
/* 04 languages */
.bf-lang{margin-top:16px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.bf-lang>div{position:relative;padding:20px 20px 20px 78px;border-radius:var(--r-lg);border:1px solid var(--line-2);background:#0e0f0e}
.bf-flag{position:absolute;left:18px;top:20px;display:grid;place-items:center;width:44px;height:44px;border-radius:10px;background:var(--bg1);color:#041008;font-family:var(--mono);font-weight:700;font-size:15px}
.bf-lang>div:last-child .bf-flag{background:var(--bu)}
.bf-lang .kick{color:var(--ink)}
.bf-lang p{margin-top:8px;font-size:14.5px;line-height:1.65;color:var(--ink-2)}
@media(max-width:760px){.bf-lang{grid-template-columns:minmax(0,1fr)}}
/* 06 folders + translation */
.bf-folders{margin-top:18px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.bf-folders>div{position:relative;margin-top:14px;padding:22px 18px 18px;border-radius:4px 14px 14px 14px;border:1px solid rgba(0,255,106,.35);background:#0e100f}
.bf-folders>div.opt{border-style:dashed;border-color:var(--line-2)}
.bf-tab{position:absolute;left:-1px;top:-26px;padding:5px 12px;border-radius:10px 10px 0 0;border:1px solid rgba(0,255,106,.35);border-bottom:0;background:#0e100f;font-family:var(--mono);font-size:11.5px;color:var(--bg1)}
.bf-folders>div.opt .bf-tab{border-style:dashed;border-color:var(--line-2);color:var(--ink-2)}
.bf-folders p{font-size:14.5px;line-height:1.6;color:var(--ink-2)}
@media(max-width:760px){.bf-folders{grid-template-columns:minmax(0,1fr);gap:26px}}
.bf-tr{margin-top:14px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:20px;align-items:center;padding:18px;border-radius:var(--r-lg);border:1px solid var(--line-2)}
.bf-tr-docs{display:flex;align-items:center;gap:8px}
.bf-tr-docs span{display:flex;flex-direction:column;justify-content:flex-end;width:92px;height:112px;padding:10px;border-radius:4px 12px 4px 4px;background:#f2efe6;color:#141414;font-family:var(--mono);font-size:11.5px;font-weight:700}
.bf-tr-docs span.t{background:#dff7e9}
.bf-tr-docs small{margin-top:3px;font-weight:400;font-size:9.5px;color:#555}
.bf-tr-docs i{font-style:normal;font-family:var(--mono);font-size:20px;color:var(--bg1)}
.bf-tr p{font-size:14.5px;line-height:1.65;color:var(--ink-2)}
@media(max-width:700px){.bf-tr{grid-template-columns:minmax(0,1fr)}}
/* 07 routes */
.bf-routes{margin-top:16px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.bf-routes>div{position:relative;padding:20px 20px 18px;border-radius:var(--r-lg);border:1px solid var(--line-2);background:#0e0f0e}
.bf-rl{position:absolute;right:18px;top:16px;font-family:var(--mono);font-weight:700;font-size:34px;line-height:1;color:transparent;-webkit-text-stroke:1.5px var(--bg1)}
.bf-routes .kick{color:var(--bg1)}
.bf-routes b{display:block;margin-top:4px;font-size:17px}
.bf-flow{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:12px}
.bf-flow em{font-style:normal;padding:4px 9px;border-radius:7px;border:1px solid var(--line-2);font-family:var(--mono);font-size:11px;color:var(--ink)}
.bf-flow em.u{border-color:var(--bu);color:var(--bu)}.bf-flow em.d{border-color:var(--bd);color:var(--bd)}.bf-flow em.h{background:var(--bg1);border-color:var(--bg1);color:#041008;font-weight:700}
.bf-flow i{font-style:normal;color:var(--ink-3)}
.bf-routes p{margin-top:12px;font-size:14px;line-height:1.6;color:var(--ink-2)}
@media(max-width:760px){.bf-routes{grid-template-columns:minmax(0,1fr)}}
/* 08 deadline bar */
.bf-dl{margin-top:16px}
.bf-dl-bar{display:grid;grid-template-columns:1.1fr 2.2fr .8fr auto;border-radius:12px;overflow:hidden;border:1px solid var(--line-2);font-family:var(--mono);font-size:11.5px}
.bf-dl-bar span{display:flex;flex-direction:column;justify-content:center;padding:12px 12px;min-height:56px}
.bf-dl-bar small{margin-top:2px;font-size:10px;opacity:.8}
.bf-dl-bar .go{background:var(--bg1);color:#041008;font-weight:700}
.bf-dl-bar .proc{background:repeating-linear-gradient(135deg,rgba(124,212,255,.14) 0 8px,rgba(124,212,255,.06) 8px 16px);color:var(--bu)}
.bf-dl-bar .buf{background:#141614;color:var(--ink-3)}
.bf-dl-bar .end{background:#d7372d;color:#fff;font-weight:700}
.bf-stats{margin-top:12px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.bf-stats>div{padding:20px;border-radius:var(--r-lg);border:1px solid var(--line-2);background:#0e0f0e}
.bf-stats .kick{color:var(--bg1)}
.bf-stats b{display:block;margin-top:6px;font-family:var(--mono);font-size:clamp(28px,3vw,40px);color:var(--ink)}
.bf-stats p{margin-top:8px;font-size:14px;line-height:1.6;color:var(--ink-2)}
@media(max-width:700px){.bf-stats{grid-template-columns:minmax(0,1fr)}.bf-dl-bar{grid-template-columns:minmax(0,1fr)}.bf-dl-bar span{min-height:0}}
/* 09 */
.bf-inbox{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:12px}
.bf-inbox span{padding:14px;border-radius:12px;border:1px solid var(--line-2);background:#0e0f0e;font-size:13.5px;color:var(--ink)}
@media(max-width:760px){.bf-inbox{grid-template-columns:repeat(2,minmax(0,1fr))}}
.bf-calm{margin-top:18px;padding:20px;border-radius:var(--r-lg);border:1px solid rgba(0,255,106,.35);background:radial-gradient(100% 140% at 0 0,rgba(0,255,106,.08),transparent 60%),#0b0d0c}
.bf-calm>b{font-size:16px}
.bf-calm ol{list-style:none;margin:14px 0 0;padding:0;counter-reset:c;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.bf-calm li{counter-increment:c;padding:12px;border-radius:10px;border:1px solid var(--line);font-size:13.5px;line-height:1.45;color:var(--ink)}
.bf-calm li::before{content:counter(c);display:block;margin-bottom:6px;font-family:var(--mono);font-size:12px;color:var(--bg1)}
.bf-calm p{margin-top:14px;font-size:14.5px;line-height:1.65;color:var(--ink-2)}
@media(max-width:760px){.bf-calm ol{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* 10 letters */
.bf-letters{margin-top:14px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.bf-letters>div{--c:var(--bg1);position:relative;padding:44px 18px 18px;border-radius:8px;background:#f2efe6;color:#141414;overflow:hidden;box-shadow:0 14px 30px -14px rgba(0,0,0,.8)}
.bf-letters>div::before{content:'';position:absolute;left:0;right:0;top:0;height:28px;background:linear-gradient(135deg,transparent 49.5%,rgba(0,0,0,.12) 50%,transparent 51%),linear-gradient(225deg,transparent 49.5%,rgba(0,0,0,.12) 50%,transparent 51%);background-size:50% 100%;background-position:0 0,100% 0;background-repeat:no-repeat}
.bf-letters>div::after{content:'';position:absolute;right:14px;top:10px;width:14px;height:14px;border-radius:50%;background:var(--c)}
.bf-letters .no{--c:var(--br)}.bf-letters .cond{--c:var(--ba)}
.bf-letters .kick{color:#666}
.bf-letters b{display:block;margin-top:4px;font-family:var(--display);font-size:18px;line-height:1.25}
.bf-next{margin-top:14px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.bf-next a{display:flex;flex-direction:column;gap:6px;padding:18px;border-radius:var(--r-lg);border:1px solid var(--line-2);background:#0e0f0e;transition:border-color .2s,transform .2s}
.bf-next a:hover{border-color:rgba(0,255,106,.5);transform:translateY(-2px)}
.bf-next .kick{color:var(--bg1)}
.bf-next b{font-size:16px;color:var(--ink)}
.bf-next span:last-child{font-size:13px;color:var(--ink-3)}
@media(max-width:760px){.bf-letters,.bf-next{grid-template-columns:minmax(0,1fr)}}
/* board */
.bb{margin-top:16px;border-radius:var(--r-lg);border:1px solid rgba(0,255,106,.35);background:#0b0d0c;overflow:hidden}
.bb-add{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr) auto;gap:10px;align-items:end;padding:16px 18px;border-bottom:1px solid var(--line);background:#0f1210}
.bb-add label{display:flex;flex-direction:column;gap:5px;min-width:0}
.bb-add label span{font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--bg1)}
.bb-add input,.bb-add select{width:100%;min-width:0;padding:9px 11px;border-radius:9px;border:1px solid var(--line-2);background:#131513;color:var(--ink);font:500 14px var(--body);color-scheme:dark}
.bb-add input:focus,.bb-add select:focus{outline:none;border-color:var(--bg1)}
.bb-add button{padding:10px 16px;border-radius:9px;background:var(--bg1);color:#041008;font-weight:700;font-size:14px}
.bb-head,.bb-rows li{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,.9fr) minmax(0,1.3fr) minmax(0,1fr) minmax(0,1fr) 36px;gap:12px;align-items:center;padding:10px 18px}
.bb-head{font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);border-bottom:1px solid var(--line)}
.bb-rows{list-style:none;margin:0;padding:0}
.bb-rows li{border-bottom:1px solid rgba(255,255,255,.06);font-size:14px;animation:kkIn .3s var(--ease) both}
.bb-rows small{display:none}
.bb-p{font-weight:600;color:var(--ink);overflow-wrap:anywhere}
.bb-r{font-family:var(--mono);font-size:12px;color:var(--bu)}
.bb-sb,.bb-d{font-family:var(--mono);font-size:12.5px;color:var(--ink-2)}
.bb-sb{color:var(--bg1)}
.bb-sb em{display:block;margin-top:2px;font-style:normal;font-family:var(--body);font-size:11.5px;color:var(--ink-3)}
.bb-rows li.soon .bb-sb{color:var(--ba)}.bb-rows li.soon .bb-sb em{color:var(--ba)}
.bb-rows li.late .bb-sb,.bb-rows li.late .bb-sb em{color:var(--br)}
.bb-rows li.past{opacity:.55}.bb-rows li.past .bb-sb em{color:var(--br)}
.bb-rows li.done .bb-sb{color:var(--ink-3)}
.bb-s button{padding:5px 10px;border-radius:999px;border:1px solid var(--line-2);font-size:12px;color:var(--ink);white-space:nowrap}
.bb-rows li.done .bb-s button{background:var(--bg1);border-color:var(--bg1);color:#041008;font-weight:600}
.bb-x button{width:30px;height:30px;border-radius:8px;color:var(--ink-3)}
.bb-x button:hover{color:var(--br);background:rgba(255,90,79,.1)}
.bb-empty{padding:26px 18px;text-align:center;font-size:14px;color:var(--ink-3)}
.bb-foot{display:flex;justify-content:space-between;gap:12px;padding:10px 18px;border-top:1px solid var(--line);font-family:var(--mono);font-size:11px;color:var(--ink-3)}
@media(max-width:860px){
  .bb-add{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.bb-add label:first-child{grid-column:1/-1}.bb-add button{grid-column:1/-1}
  .bb-head{display:none}
  .bb-rows li{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 36px;gap:8px 12px;padding:14px 16px}
  .bb-p{grid-column:1/3}.bb-x{grid-column:3;grid-row:1}
  .bb-r{grid-column:1/-1}
  .bb-rows small{display:block;font-family:var(--mono);font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3)}
  .bb-s{grid-column:1/-1}
  .bb-sb,.bb-d{align-self:start}
}
/* checklist */
.bc{margin-top:16px;border-radius:var(--r-lg);border:1px solid rgba(0,255,106,.35);background:#0b0d0c;overflow:hidden}
.bc-head{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:18px;padding:16px 18px;border-bottom:1px solid var(--line);background:#0f1210}
.bc-head .kick{display:block;color:var(--bg1)}
.bc-head b{font-family:var(--mono);font-size:18px}
.bc-bar{display:block;height:6px;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden}
.bc-bar i{display:block;height:100%;width:0;background:var(--bg1);transition:width .45s var(--ease)}
.bc-tk{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-height:none;overflow:visible;border-top:0}
.bc-tk .tk-grp{grid-column:1/-1;color:var(--bg1);background:#101410}
@media(max-width:700px){.bc-tk{grid-template-columns:minmax(0,1fr)}}
.bc-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:4px 18px;border-top:1px solid var(--line);font-family:var(--mono);font-size:11px;color:var(--ink-3)}
.bc-foot .tk-reset{width:auto;border:0;padding:10px 0}
/* 11–15 */
.bf-vs{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:14px;align-items:stretch}
.bf-vs>div{padding:20px;border-radius:var(--r-lg);border:1px solid var(--line-2);background:#0e0f0e}
.bf-vs .kick{color:var(--bg1)}
.bf-vs ul{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:7px}
.bf-vs li{position:relative;padding-left:20px;font-size:14.5px;line-height:1.5;color:var(--ink-2)}
.bf-vs li::before{content:'›';position:absolute;left:4px;color:var(--bg1);font-weight:700}
.bf-vs-mid{align-self:center;font-family:var(--mono);font-weight:700;font-size:20px;color:var(--ink-3)}
@media(max-width:760px){.bf-vs{grid-template-columns:minmax(0,1fr)}.bf-vs-mid{justify-self:center}}
.bf-special{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.bf-special>div{padding:20px;border-radius:var(--r-lg);border:1px solid var(--line-2);background:#0e0f0e;scroll-margin-top:120px}
.bf-special>div:target{border-color:var(--bg1);box-shadow:0 0 0 1px var(--bg1)}
.bf-special .kick{color:var(--bg1)}
.bf-special p{margin-top:8px;font-size:14.5px;line-height:1.65;color:var(--ink-2)}
@media(max-width:860px){.bf-special{grid-template-columns:minmax(0,1fr)}}
.bf-mist{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.bf-mist li{position:relative;padding:14px 16px 14px 48px;border-radius:12px;border:1px solid var(--line);font-size:14.5px;line-height:1.6;color:var(--ink-2)}
.bf-mist li::before{content:'✕';position:absolute;left:14px;top:14px;display:grid;place-items:center;width:22px;height:22px;border-radius:6px;background:rgba(255,90,79,.14);color:var(--br);font-size:11px;font-weight:700}
.bf-mist b{color:var(--ink)}
@media(max-width:700px){.bf-mist{grid-template-columns:minmax(0,1fr)}}
.bf-advice{display:grid;grid-template-columns:320px minmax(0,1fr);gap:clamp(18px,3vw,40px);align-items:center;padding:clamp(20px,3vw,34px);border-radius:var(--r-lg);border:1px solid rgba(0,255,106,.35);background:radial-gradient(100% 140% at 0 0,rgba(0,255,106,.1),transparent 60%),#0b0d0c}
.bf-advice .kick{color:var(--bg1)}
.bf-advice h2{margin-top:6px;font-family:var(--display);font-weight:600;font-size:clamp(24px,2.4vw,36px);line-height:1.1}
.bf-advice p{margin-top:12px;font-size:15.5px;line-height:1.75;color:var(--ink-2)}
.bf-sheet{border-radius:8px;overflow:hidden;border:1px solid var(--line-2);background:#101210;transform:rotate(-2deg);box-shadow:0 20px 40px -18px rgba(0,0,0,.8)}
.bf-sheet>div{display:grid;grid-template-columns:repeat(5,minmax(0,1fr))}
.bf-sheet span{padding:7px 6px;background:#161916;border-right:1px solid var(--line);border-bottom:1px solid var(--line);font-family:var(--mono);font-size:9px;color:var(--bg1);text-transform:uppercase;letter-spacing:.04em;overflow:hidden;text-overflow:ellipsis}
.bf-sheet i{height:26px;border-right:1px solid rgba(255,255,255,.05);border-bottom:1px solid rgba(255,255,255,.05);background:linear-gradient(transparent 11px,rgba(255,255,255,.1) 11px 15px,transparent 15px) 6px 0/60% 100% no-repeat}
.bf-sheet i.ok{background:linear-gradient(transparent 8px,var(--bg1) 8px 18px,transparent 18px) 6px 0/70% 100% no-repeat}
.bf-sheet i.wait{background:linear-gradient(transparent 8px,var(--ba) 8px 18px,transparent 18px) 6px 0/70% 100% no-repeat}
@media(max-width:760px){.bf-advice{grid-template-columns:minmax(0,1fr)}}
.bf-tree{list-style:none;margin:16px 0 0;padding:0;counter-reset:t;display:grid;gap:10px}
.bf-tree li{counter-increment:t;display:grid;grid-template-columns:36px minmax(0,1fr) minmax(0,1fr);gap:8px 14px;align-items:start;padding:14px 16px;border-radius:12px;border:1px solid var(--line-2);background:#0e0f0e}
.bf-tree li::before{content:counter(t);grid-row:1/3;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;border:1px solid rgba(0,255,106,.5);font-family:var(--mono);font-size:12px;color:var(--bg1)}
.bf-tree b{grid-column:2/4;font-size:15.5px}
.bf-tree .y,.bf-tree .n{padding:8px 12px;border-radius:9px;font-size:13.5px;line-height:1.5}
.bf-tree .y{background:rgba(0,255,106,.07);color:var(--ink)}
.bf-tree .n{background:rgba(255,176,32,.06);color:var(--ink-2)}
@media(max-width:700px){.bf-tree li{grid-template-columns:32px minmax(0,1fr)}.bf-tree li::before{grid-row:1/4}.bf-tree b{grid-column:2}.bf-tree .y,.bf-tree .n{grid-column:2}}
.pg-bew .g-src .kick{color:var(--bg1)}
.pg-bew .acc{margin-top:4px}

/* ===== STUDENT VISA · Termin-Mappe & Wartenummer (bespoke) ===== */
.pg-vis{--pg-accent:#00ff6a;--pg-glow:rgba(0,255,106,.14);--ga:#00ff6a;--vg:#00ff6a;--va:#ffb020;--vr:#ff5a4f;--vb:#7cd4ff;--paper:#f2efe6}
.pg-vis .phero h1 .big{font-size:clamp(42px,5vw,96px);line-height:1}
.pg-vis .phero h1 .big em{display:block;font-style:normal;color:var(--vg)}
.pg-vis .phero h1 .flap{font-size:clamp(26px,3.2vw,60px)}
/* hero: index dividers in hand-over order */
.tm{border:1px solid var(--line-2);border-radius:var(--r-lg);background:#0a0b0a;overflow:hidden;box-shadow:0 40px 100px -40px rgba(0,255,106,.28);transition:box-shadow .5s}
.tm.full{box-shadow:0 0 0 1px var(--vg),0 40px 100px -40px rgba(0,255,106,.55)}
.tm-top{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;border-bottom:1px solid var(--line);background:#101211}
.tm-top .kick b{color:var(--vg);font-weight:400}
.tm-count{font-family:var(--mono);font-size:13px;color:var(--vg);white-space:nowrap}
.tm-hint{padding:12px 18px 0;font-size:13px;color:var(--ink-3)}
.tm-stack{list-style:none;margin:12px 18px 14px;padding:0;counter-reset:d}
.tm-stack li{--i:0;counter-increment:d}
.tm-stack li:nth-child(2){--i:1}.tm-stack li:nth-child(3){--i:2}.tm-stack li:nth-child(4){--i:3}.tm-stack li:nth-child(5){--i:4}.tm-stack li:nth-child(6){--i:5}.tm-stack li:nth-child(7){--i:6}.tm-stack li:nth-child(8){--i:7}.tm-stack li:nth-child(9){--i:8}.tm-stack li:nth-child(10){--i:9}.tm-stack li:nth-child(11){--i:10}.tm-stack li:nth-child(12){--i:11}.tm-stack li:nth-child(13){--i:12}.tm-stack li:nth-child(14){--i:13}
.tm-stack button{position:relative;display:block;width:100%;height:27px;border-top:1px solid rgba(255,255,255,.1);background:linear-gradient(#141614,#0f110f);cursor:pointer}
.tm-stack button span{position:absolute;top:-1px;bottom:3px;left:calc((100% - 52%) * var(--i) / 13);width:52%;display:flex;align-items:center;gap:8px;padding:0 10px;border-radius:0 0 8px 8px;border:1px solid var(--line-2);border-top:0;background:#1a1d1a;font-family:var(--mono);font-size:11px;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:background .3s,color .3s,border-color .3s,transform .2s}
.tm-stack button span::before{content:counter(d,decimal-leading-zero);font-size:9.5px;color:var(--ink-3)}
.tm-stack button:hover span{border-color:rgba(0,255,106,.5);color:var(--ink);transform:translateY(1px)}
.tm-stack li.key button span{border-color:rgba(255,176,32,.5)}
.tm-stack button[aria-pressed="true"] span{background:var(--vg);border-color:var(--vg);color:#041008;font-weight:700}
.tm-stack button[aria-pressed="true"] span::before{content:'✓';color:#041008}
.tm-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 18px;border-top:1px solid var(--line);background:#0d0e0d;font-size:12.5px}
.tm-state{font-family:var(--mono);font-size:11.5px;color:var(--ink-3)}
.tm.full .tm-state{color:var(--vg)}
.tm-foot a{color:var(--ink);text-decoration:underline;text-decoration-color:rgba(0,255,106,.5);text-underline-offset:3px}
@media(max-width:560px){.tm-stack{margin:10px 12px 12px}.tm-stack button span{width:64%;left:calc((100% - 64%) * var(--i) / 13);font-size:10.5px}}
/* body: queue tickets */
.vs-body{max-width:calc(1080px + 2 * var(--gutter));margin:0 auto;padding:clamp(40px,6vw,90px) var(--gutter) 0}
.vq{padding:clamp(48px,6vw,86px) 0 0;scroll-margin-top:110px}
.vq:first-child{padding-top:0}
.vq-head{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:clamp(14px,2vw,24px);margin-bottom:18px}
.vq-no{--c:var(--vg);position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;width:70px;height:64px;border-radius:6px;background:var(--paper);color:#111;transform:rotate(-3deg);box-shadow:0 10px 24px -10px rgba(0,0,0,.8);-webkit-mask:radial-gradient(circle at 0 50%,transparent 6px,#000 6.5px) left/51% 100% no-repeat,radial-gradient(circle at 100% 50%,transparent 6px,#000 6.5px) right/51% 100% no-repeat;mask:radial-gradient(circle at 0 50%,transparent 6px,#000 6.5px) left/51% 100% no-repeat,radial-gradient(circle at 100% 50%,transparent 6px,#000 6.5px) right/51% 100% no-repeat}
.vq-no::after{content:'';position:absolute;left:0;right:0;top:0;height:6px;background:var(--c)}
.vq-no.hot{--c:var(--va)}.vq-no.no{--c:var(--vr)}
.vq-no small{margin-top:4px;font-family:var(--mono);font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:#666}
.vq-no b{font-family:var(--mono);font-size:24px;line-height:1}
.vq-head .kick{color:var(--vg)}
.vq-head h2{margin-top:4px;font-family:var(--display);font-weight:600;font-size:clamp(26px,2.8vw,42px);line-height:1.08;letter-spacing:-.025em}
.vq>p{margin-top:14px;font-size:16px;line-height:1.75;color:var(--ink-2)}
.vq p strong,.vq li strong{color:var(--ink)}
.vq a:not(.btn){color:var(--ink);text-decoration:underline;text-decoration-color:rgba(0,255,106,.5);text-underline-offset:3px}
.vq-note{margin-top:16px;padding:16px 18px;border-radius:var(--r);border:1px solid rgba(0,255,106,.3);background:rgba(0,255,106,.04)}
.vq-note b{display:block;font-size:15px}
.vq-note p{margin-top:6px;font-size:15px;line-height:1.65;color:var(--ink-2)}
@media(max-width:560px){.vq-no{width:58px;height:54px}.vq-no b{font-size:20px}}
/* 01 flow */
.vq-flow{list-style:none;margin:16px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}
.vq-flow li{position:relative;padding:16px 18px;border:1px solid var(--line-2);background:#0e0f0e}
.vq-flow li:first-child{border-radius:14px 0 0 14px}.vq-flow li:last-child{border-radius:0 14px 14px 0;border-color:rgba(0,255,106,.5);background:rgba(0,255,106,.06)}
.vq-flow li+li{border-left:0}
.vq-flow li:not(:last-child)::after{content:'→';position:absolute;right:-13px;top:50%;margin-top:-13px;z-index:1;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--vg);color:#041008;font-weight:700;font-size:13px}
.vq-flow .kick{color:var(--ink-3)}
.vq-flow b{display:block;margin-top:4px;font-size:16px}
@media(max-width:640px){.vq-flow{grid-template-columns:minmax(0,1fr)}.vq-flow li{border-radius:0!important;border-left:1px solid var(--line-2)!important}.vq-flow li+li{border-top:0}.vq-flow li:first-child{border-radius:14px 14px 0 0!important}.vq-flow li:last-child{border-radius:0 0 14px 14px!important}.vq-flow li:not(:last-child)::after{content:'↓';right:auto;left:50%;top:auto;bottom:-13px;margin:0 0 0 -13px}}
/* 02 news */
.vq-news{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.vq-news>div{position:relative;padding:22px 20px 20px;border-radius:var(--r-lg);border:1px solid var(--line-2);background:#0e0f0e}
.vq-news .yes{border-color:rgba(0,255,106,.45)}
.vq-badge{position:absolute;right:16px;top:-12px;padding:3px 10px;border-radius:999px;font-family:var(--mono);font-size:10.5px;font-weight:700;background:var(--vg);color:#041008}
.vq-news .no .vq-badge{background:#2a2d2b;color:var(--ink-2)}
.vq-news b{display:block;font-size:17px}
.vq-news p{margin-top:8px;font-size:14.5px;line-height:1.65;color:var(--ink-2)}
@media(max-width:800px){.vq-news{grid-template-columns:minmax(0,1fr);gap:22px}}
/* 03 */
.vq-pre{list-style:none;margin:14px 0 0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.vq-pre li{display:flex;flex-direction:column;gap:10px;padding:16px 14px;border-radius:12px;border:1px dashed rgba(0,255,106,.4);font-size:14px;line-height:1.5;color:var(--ink-2)}
.vq-pre li b{font-size:22px}
@media(max-width:900px){.vq-pre{grid-template-columns:repeat(2,minmax(0,1fr))}.vq-pre li:last-child{grid-column:1/-1}}
/* 04 documents */
.vq-docs{list-style:none;margin:16px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.vq-docs li{position:relative;padding:16px 18px 16px 62px;border-radius:12px;border:1px solid var(--line-2);background:#0e0f0e}
.vq-dn{position:absolute;left:16px;top:16px;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#171a17;border:1px solid rgba(0,255,106,.45);font-family:var(--mono);font-size:11.5px;font-weight:700;color:var(--vg)}
.vq-docs b{display:block;font-size:16px}
.vq-docs p{margin-top:6px;font-size:14px;line-height:1.6;color:var(--ink-2)}
.vq-tag{float:right;margin:0 0 6px 10px;padding:2px 8px;border-radius:5px;font-style:normal;font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.06em;background:rgba(255,255,255,.06);color:var(--ink-3)}
.vq-docs li.opt{border-style:dashed}
.vq-docs li.hot{border-color:rgba(255,176,32,.55);background:rgba(255,176,32,.04)}
.vq-docs li.hot .vq-tag{background:var(--va);color:#0b0a05;font-weight:700}
.vq-docs li.hot .vq-dn{border-color:var(--va);color:var(--va)}
@media(max-width:760px){.vq-docs{grid-template-columns:minmax(0,1fr)}.vq-tag{float:none;display:inline-block;margin:0 0 6px}}
.vq-order{margin-top:18px;padding:20px;border-radius:var(--r-lg);border:1px solid rgba(0,255,106,.35);background:#0b0d0c}
.vq-order .kick{color:var(--vg)}
.vq-order>p{margin-top:6px;font-size:14.5px;line-height:1.6;color:var(--ink-2)}
.vq-order ol{list-style:none;margin:14px 0 0;padding:0;counter-reset:o;display:flex;flex-wrap:wrap;gap:0}
.vq-order ol li{counter-increment:o;position:relative;margin:0 -4px 6px 0;padding:8px 16px 8px 12px;border-radius:8px 8px 0 0;border:1px solid var(--line-2);border-bottom:3px solid var(--vg);background:#141714;font-size:13px;color:var(--ink)}
.vq-order ol li::before{content:counter(o) ' ';font-family:var(--mono);font-size:10.5px;color:var(--vg)}
.vq-order ol li:nth-child(6){border-bottom-color:var(--va)}
/* 05 money */
.vq-block{margin-top:16px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(16px,3vw,32px);align-items:center;padding:22px;border-radius:var(--r-lg);border:1px solid rgba(255,176,32,.45);background:radial-gradient(100% 140% at 0 0,rgba(255,176,32,.08),transparent 60%),#0c0b08}
.vq-block .kick{color:var(--va)}
.vq-block-txt>b{display:block;margin-top:6px;font-family:var(--mono);font-size:clamp(36px,4vw,54px);line-height:1;color:var(--ink)}
.vq-block-txt small{font-family:var(--body);font-size:14px;color:var(--ink-3)}
.vq-block-txt p{margin-top:10px;font-size:14.5px;line-height:1.65;color:var(--ink-2)}
.vq-months{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}
.vq-months i{display:flex;align-items:flex-end;justify-content:center;height:52px;padding-bottom:6px;border-radius:6px;background:linear-gradient(transparent 20%,rgba(255,176,32,.55) 20%);font-style:normal;font-family:var(--mono);font-size:10.5px;color:#0b0a05;font-weight:700}
.vq-months span{grid-column:1/-1;margin-top:6px;text-align:center;font-family:var(--mono);font-size:13px;color:var(--va)}
@media(max-width:760px){.vq-block{grid-template-columns:minmax(0,1fr)}}
.vq-alt{margin-top:12px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.vq-alt>div{padding:18px;border-radius:var(--r);border:1px solid var(--line-2);background:#0e0f0e}
.vq-alt b{display:block;font-size:15px}
.vq-alt p{margin-top:6px;font-size:14px;line-height:1.6;color:var(--ink-2)}
@media(max-width:860px){.vq-alt{grid-template-columns:minmax(0,1fr)}}
/* 06 fee / time */
.vq-cost{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}
.vq-fee{padding:22px 22px 30px;border-radius:12px 12px 0 0;background:var(--paper);color:#141414;-webkit-mask:radial-gradient(circle at 10px 100%,transparent 8px,#000 8.5px) -10px 100%/20px 12px repeat-x,linear-gradient(#000,#000) 0 0/100% calc(100% - 11px) no-repeat;mask:radial-gradient(circle at 10px 100%,transparent 8px,#000 8.5px) -10px 100%/20px 12px repeat-x,linear-gradient(#000,#000) 0 0/100% calc(100% - 11px) no-repeat}
.vq-fee .kick{color:#555}
.vq-fee>b{display:block;margin:6px 0 12px;font-family:var(--mono);font-size:clamp(40px,4.4vw,58px)}
.vq-fee-l{display:flex;justify-content:space-between;gap:10px;padding:7px 0;border-top:1px dashed rgba(0,0,0,.25);font-family:var(--mono);font-size:12.5px}
.vq-fee-l em{font-style:normal;font-weight:700;text-align:right}
.vq-fee p{margin-top:12px;font-size:13.5px;line-height:1.6;color:#333}
.vq-fee a{color:#0a5a2c!important;text-decoration-color:#0a5a2c!important}
.vq-time{padding:22px;border-radius:var(--r-lg);border:1px solid var(--line-2);background:#0e0f0e}
.vq-time .kick{color:var(--va)}
.vq-time>b{display:block;margin-top:6px;font-family:var(--display);font-size:clamp(26px,2.8vw,36px);line-height:1.1;color:var(--va)}
.vq-time p{margin-top:10px;font-size:14px;line-height:1.65;color:var(--ink-2)}
@media(max-width:760px){.vq-cost{grid-template-columns:minmax(0,1fr)}}
/* 07 steps */
.vq-steps{list-style:none;margin:16px 0 0;padding:0;counter-reset:s;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.vq-steps li{counter-increment:s;position:relative;padding:44px 16px 16px;border-radius:12px;border:1px solid var(--line-2);background:#0e0f0e}
.vq-steps li::before{content:counter(s);position:absolute;left:16px;top:14px;font-family:var(--mono);font-weight:700;font-size:20px;color:transparent;-webkit-text-stroke:1px var(--vg)}
.vq-steps b{display:block;font-size:15px;line-height:1.35}
.vq-steps p{margin-top:6px;font-size:13.5px;line-height:1.55;color:var(--ink-2)}
.vq-steps li.lock{border-color:rgba(255,176,32,.55);background:rgba(255,176,32,.05)}
.vq-steps li.lock::before{content:'✈';-webkit-text-stroke:0;color:var(--va)}
.vq-steps li.lock::after{content:'Only after the visa';position:absolute;right:12px;top:14px;padding:2px 7px;border-radius:5px;background:var(--va);color:#0b0a05;font-family:var(--mono);font-size:9.5px;font-weight:700;text-transform:uppercase}
@media(max-width:960px){.vq-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.vq-steps{grid-template-columns:minmax(0,1fr)}}
/* checklist */
.vc{margin-top:16px;border-radius:var(--r-lg);border:1px solid rgba(0,255,106,.35);background:#0b0d0c;overflow:hidden}
.vc-head{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:18px;padding:16px 18px;border-bottom:1px solid var(--line);background:#0f1210}
.vc-head .kick{display:block;color:var(--vg)}
.vc-head b{font-family:var(--mono);font-size:18px}
.vc-bar{display:block;height:6px;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden}
.vc-bar i{display:block;height:100%;width:0;background:var(--vg);transition:width .45s var(--ease)}
.vc-tk{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-height:none;overflow:visible;border-top:0}
@media(max-width:700px){.vc-tk{grid-template-columns:minmax(0,1fr)}}
.vc-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:4px 18px;border-top:1px solid var(--line);font-family:var(--mono);font-size:11px;color:var(--ink-3)}
.vc-foot .tk-reset{width:auto;border:0;padding:10px 0}
/* mistakes, advice, interview */
.vq-mist{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.vq-mist li{position:relative;padding:14px 16px 14px 48px;border-radius:12px;border:1px solid var(--line);font-size:14.5px;line-height:1.6;color:var(--ink-2)}
.vq-mist li::before{content:'✕';position:absolute;left:14px;top:14px;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:rgba(255,90,79,.14);color:var(--vr);font-size:11px;font-weight:700}
.vq-mist li.big{grid-column:1/-1;padding:20px 20px 20px 60px;border-color:rgba(255,90,79,.5);background:rgba(255,90,79,.05);font-size:15.5px}
.vq-mist li.big::before{content:'✈';left:18px;top:19px;width:28px;height:28px;font-size:14px}
.vq-mist b{color:var(--ink)}
@media(max-width:700px){.vq-mist{grid-template-columns:minmax(0,1fr)}}
.vq-advice{padding:clamp(20px,3vw,34px);border-radius:var(--r-lg);border:1px solid rgba(0,255,106,.35);background:radial-gradient(100% 140% at 0 0,rgba(0,255,106,.1),transparent 60%),#0b0d0c}
.vq-advice .kick{color:var(--vg)}
.vq-advice h2{margin-top:6px;font-family:var(--display);font-weight:600;font-size:clamp(24px,2.4vw,36px);line-height:1.1}
.vq-advice>p{margin-top:12px;font-size:15.5px;line-height:1.75;color:var(--ink-2)}
.vq-three{margin-top:16px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.vq-three>div{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:18px;border-radius:4px 14px 14px 14px;border:1px solid rgba(0,255,106,.35);background:#0f120f}
.vq-fold{font-size:26px}
.vq-three b{font-family:var(--mono);font-size:12px;color:var(--vg)}
.vq-three span:not(.vq-fold){font-size:16px;font-weight:600;color:var(--ink)}
.vq-three em{margin-top:4px;font-style:normal;font-size:12.5px;color:var(--ink-3)}
@media(max-width:700px){.vq-three{grid-template-columns:minmax(0,1fr)}}
.vq-talk{margin-top:16px;display:flex;flex-direction:column;gap:8px;max-width:720px}
.vq-talk p{max-width:78%;padding:11px 15px;border-radius:16px;font-size:14.5px;line-height:1.5}
.vq-talk .me{align-self:flex-end;border-bottom-right-radius:4px;background:rgba(0,255,106,.1);border:1px solid rgba(0,255,106,.3);color:var(--ink)}
.vq-talk .them{align-self:flex-start;border-bottom-left-radius:4px;background:#171a17;border:1px solid var(--line-2);color:var(--ink-2);font-style:italic}
@media(max-width:560px){.vq-talk p{max-width:92%}}
.vq-fine{margin-top:26px;padding:18px 20px;border-radius:var(--r);border:1px dashed var(--line-2)}
.vq-fine .kick{color:var(--ink-3)}
.vq-fine p{margin-top:6px;font-size:13.5px;line-height:1.7;color:var(--ink-3)}
.pg-vis .acc{margin-top:4px}

/* ===== PRE-DEPARTURE · Bordkarte & Gate signs (bespoke) ===== */
.pg-abf{--pg-accent:#00ff6a;--pg-glow:rgba(0,255,106,.14);--ga:#00ff6a;--ag:#00ff6a;--paper:#f2efe6}
.pg-abf .phero h1 .big{font-size:clamp(44px,5.4vw,104px);line-height:1}
.pg-abf .phero h1 .big em{display:block;font-style:normal;color:var(--ag)}
.pg-abf .phero h1 .flap{font-size:clamp(24px,3vw,58px)}
/* the pass */
.bp{display:grid;grid-template-columns:minmax(0,1fr) 128px;border-radius:var(--r-lg);background:var(--paper);color:#141414;box-shadow:0 40px 100px -40px rgba(0,255,106,.35);position:relative;transition:box-shadow .5s}
.bp.ready{box-shadow:0 0 0 2px var(--ag),0 40px 100px -40px rgba(0,255,106,.6)}
.bp::before,.bp::after{content:'';position:absolute;right:117px;width:22px;height:22px;border-radius:50%;background:var(--bg)}
.bp::before{top:-11px}.bp::after{bottom:-11px}
.bp .kick{color:#6a6a66}
.bp-main{padding:18px 20px 18px;border-right:2px dashed rgba(0,0,0,.2)}
.bp-top{display:flex;justify-content:space-between;align-items:center;gap:10px}
.bp-top .kick b{color:#0a7a3a;font-weight:700}
.bp-note{font-family:var(--mono);font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;color:#8a8a86;white-space:nowrap}
.bp-route{display:grid;grid-template-columns:auto 1fr auto;align-items:end;gap:14px;margin-top:18px}
.bp-route b{display:block;margin-top:2px;font-family:var(--display);font-weight:700;font-size:clamp(28px,3vw,40px);line-height:1;letter-spacing:-.03em}
.bp-route .r{text-align:right}
.bp-plane{position:relative;align-self:center;text-align:center;font-size:20px;color:#0a7a3a}
.bp-plane::before{content:'';position:absolute;left:0;right:0;top:50%;border-top:2px dotted rgba(0,0,0,.25);z-index:0}
.bp-fields{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:12px;margin-top:18px;padding-top:14px;border-top:1px solid rgba(0,0,0,.12)}
.bp-fields b{display:block;margin-top:3px;font-family:var(--mono);font-size:15px;color:#141414}
.bp-date input{margin-top:3px;width:100%;min-width:0;padding:6px 8px;border-radius:7px;border:1px solid rgba(0,0,0,.25);background:#fff;color:#141414;font:600 13px var(--mono);color-scheme:light}
.bp-phase{margin-top:14px;padding:10px 12px;border-radius:8px;background:rgba(10,122,58,.08);font-size:13px;line-height:1.5;color:#2a2a28}
.bp-stub{display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:8px;padding:18px 12px;text-align:center}
.bp-stub b{font-family:var(--mono);font-size:20px}
.bp-code{display:flex;align-items:stretch;gap:2px;height:110px;padding:6px 0}
.bp-code i{width:var(--w);background:rgba(0,0,0,.14);transition:background .3s}
.bp-code i.on{background:#141414}
.bp-stub a{font-size:12px;color:#0a7a3a;text-decoration:underline;text-underline-offset:3px}
@media(max-width:600px){.bp{grid-template-columns:minmax(0,1fr)}.bp::before,.bp::after{display:none}.bp-main{border-right:0;border-bottom:2px dashed rgba(0,0,0,.2)}.bp-stub{flex-direction:row;padding:12px 18px}.bp-code{height:34px;padding:0}.bp-fields{grid-template-columns:1fr 1fr}.bp-date{grid-column:1/-1}}
/* body: gate signs */
.ab-body{max-width:calc(1080px + 2 * var(--gutter));margin:0 auto;padding:clamp(40px,6vw,90px) var(--gutter) 0}
.gt{padding:clamp(48px,6vw,86px) 0 0;scroll-margin-top:110px}
.gt:first-child{padding-top:0}
.gt-sign{display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:0;margin-bottom:18px;border-radius:10px;overflow:hidden;background:#141614;border:1px solid var(--line-2)}
.gt-pic{--c:var(--ag);display:grid;place-items:center;width:62px;height:100%;min-height:74px;background:var(--c);color:#041008;font-size:24px;font-weight:700;font-family:var(--mono)}
.gt-pic.hot{--c:var(--caution)}.gt-pic.stop{--c:var(--stop);color:#fff}
.gt-gate{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:72px;height:100%;padding:0 12px;border-right:1px solid var(--line-2);font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}
.gt-gate b{font-size:24px;letter-spacing:0;color:var(--ag)}
.gt-sign>div{padding:12px 18px}
.gt-sign .kick{color:var(--ag)}
.gt-sign h2{margin-top:3px;font-family:var(--display);font-weight:600;font-size:clamp(22px,2.4vw,36px);line-height:1.12;letter-spacing:-.02em}
.gt>p{margin-top:14px;font-size:16px;line-height:1.75;color:var(--ink-2)}
.gt p strong,.gt li strong{color:var(--ink)}
.gt a:not(.btn){color:var(--ink);text-decoration:underline;text-decoration-color:rgba(0,255,106,.5);text-underline-offset:3px}
.gt-h3{margin-top:28px;font-family:var(--display);font-weight:600;font-size:clamp(18px,1.5vw,22px)}
.gt-fine{font-size:14px!important;color:var(--ink-3)!important}
.gt-note{margin-top:16px;padding:16px 18px;border-radius:var(--r);border:1px solid rgba(0,255,106,.3);background:rgba(0,255,106,.04)}
.gt-note.warn{border-color:color-mix(in srgb,var(--caution) 50%,transparent);background:color-mix(in srgb,var(--caution) 6%,transparent)}
.gt-note.stop{border-color:color-mix(in srgb,var(--stop) 50%,transparent);background:color-mix(in srgb,var(--stop) 6%,transparent)}
.gt-note b{display:block;font-size:15px}
.gt-note p{margin-top:6px;font-size:15px;line-height:1.65;color:var(--ink-2)}
@media(max-width:560px){.gt-sign{grid-template-columns:auto minmax(0,1fr)}.gt-gate{display:none}.gt-pic{width:52px;font-size:20px}.gt-sign>div{padding:10px 14px}}
.gt-checks{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:8px}
.gt-checks li{position:relative;padding:10px 14px 10px 36px;border-radius:10px;border:1px solid var(--line);font-size:15px;line-height:1.55;color:var(--ink-2)}
.gt-checks li::before{content:'';position:absolute;left:17px;top:calc(10px + .66em);width:6px;height:6px;border-radius:50%;background:rgba(0,255,106,.8)}
/* 01 */
.gt-path{list-style:none;margin:16px 0 0;padding:0;counter-reset:p;display:flex;flex-wrap:wrap;gap:6px 0;align-items:center}
.gt-path li{counter-increment:p;position:relative;display:flex;align-items:center;gap:8px;padding:7px 12px;margin-right:26px;border-radius:999px;border:1px solid var(--line-2);font-size:13.5px;color:var(--ink)}
.gt-path li::before{content:counter(p);font-family:var(--mono);font-size:11px;color:var(--ag)}
.gt-path li:not(:last-child)::after{content:'›';position:absolute;right:-18px;color:var(--ink-3)}
.gt-path li.end{background:var(--ag);border-color:var(--ag);color:#041008;font-weight:600}
.gt-path li.end::before{content:'✈';color:#041008}
/* 03 hold */
.gt-hold{margin-top:16px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:16px;align-items:center;padding:16px 18px;border-radius:var(--r);border:1px solid color-mix(in srgb,var(--caution) 55%,transparent);background:color-mix(in srgb,var(--caution) 6%,transparent)}
.gt-hold-b{padding:8px 12px;border-radius:6px;background:#111;color:var(--caution);font-family:var(--mono);font-weight:700;font-size:16px;letter-spacing:.2em;border:1px solid color-mix(in srgb,var(--caution) 55%,transparent)}
.gt-hold b{display:block;font-size:15px}
.gt-hold p{margin-top:5px;font-size:14.5px;line-height:1.6;color:var(--ink-2)}
@media(max-width:560px){.gt-hold{grid-template-columns:minmax(0,1fr)}.gt-hold-b{justify-self:start}}
/* 04 money */
.gt-money{margin-top:12px;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:12px}
.gt-money>div{padding:20px;border-radius:var(--r-lg);border:1px solid var(--line-2);background:#0e0f0e}
.gt-money>div.big{border-color:rgba(0,255,106,.4)}
.gt-money .kick{color:var(--ag)}
.gt-money b{display:block;margin-top:6px;font-family:var(--mono);font-size:clamp(24px,2.6vw,34px);color:var(--ink)}
.gt-money small{font-size:14px;color:var(--ink-3)}
.gt-money p{margin-top:8px;font-size:14px;line-height:1.6;color:var(--ink-2)}
@media(max-width:700px){.gt-money{grid-template-columns:minmax(0,1fr)}}
.gt-wallet{margin-top:14px;display:flex;flex-wrap:wrap;gap:8px}
.gt-wallet span{padding:9px 13px;border-radius:10px;background:#141614;border:1px solid var(--line-2);font-size:13.5px;color:var(--ink)}
.gt-exits{margin-top:18px}
.gt-exit{position:relative;padding:44px 20px 20px;border-radius:var(--r-lg);border:1px solid color-mix(in srgb,var(--stop) 55%,transparent);background:color-mix(in srgb,var(--stop) 5%,#0c0b0b)}
.gt-exit-sign{position:absolute;left:0;right:0;top:0;padding:7px 18px;background:#d7372d;color:#fff;font-family:var(--mono);font-size:11.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;border-radius:var(--r-lg) var(--r-lg) 0 0}
.gt-exit b{display:block;font-size:16px}
.gt-exit p{margin-top:8px;font-size:14.5px;line-height:1.65;color:var(--ink-2)}
/* 05 */
.gt-neq{margin-top:18px;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:14px;align-items:center;padding:18px;border-radius:var(--r-lg);border:1px solid color-mix(in srgb,var(--caution) 50%,transparent)}
.gt-neq>div{padding:14px;border-radius:12px;background:#141614;text-align:center}
.gt-neq .kick{color:var(--ink-3)}
.gt-neq b{display:block;margin-top:4px;font-size:16px}
.gt-neq i{font-style:normal;font-size:34px;color:var(--caution)}
.gt-neq p{grid-column:1/-1;font-size:14.5px;line-height:1.6;color:var(--ink-2)}
/* 06 */
.gt-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}
.gt-two>div{padding:18px;border-radius:var(--r-lg);border:1px dashed var(--line-2);background:#0e0f0e}
.gt-two>div.ok{border-style:solid;border-color:rgba(0,255,106,.4)}
.gt-two .kick{color:var(--ink)}
.gt-two ul{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:7px}
.gt-two li{position:relative;padding-left:20px;font-size:14.5px;line-height:1.5;color:var(--ink-2)}
.gt-two li::before{content:'›';position:absolute;left:4px;color:var(--ag);font-weight:700}
@media(max-width:700px){.gt-two{grid-template-columns:minmax(0,1fr)}}
/* 07, 11 tags */
.gt-tags{margin-top:14px;display:flex;flex-wrap:wrap;gap:8px}
.gt-tags span{position:relative;padding:7px 12px 7px 24px;border-radius:4px 10px 10px 4px;background:#f2efe6;color:#141414;font-size:13px;font-weight:600}
.gt-tags span::before{content:'';position:absolute;left:8px;top:50%;width:7px;height:7px;margin-top:-3.5px;border-radius:50%;background:var(--bg)}
/* 08 */
.gt-docs{margin-top:14px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.gt-docs>div{padding:18px;border-radius:12px;border:1px solid var(--line-2);background:#0e0f0e}
.gt-docs .kick{color:var(--ag)}
.gt-docs p{margin-top:6px;font-size:14px;line-height:1.6;color:var(--ink-2)}
.gt-backup{margin-top:16px;display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px;align-items:center}
.gt-backup p{font-size:15px;line-height:1.7;color:var(--ink-2)}
.gt-finder{border-radius:12px;border:1px solid var(--line-2);background:#121412;overflow:hidden}
.gt-finder-bar{display:flex;align-items:center;gap:6px;padding:9px 12px;border-bottom:1px solid var(--line);background:#181b19}
.gt-finder-bar i{width:9px;height:9px;border-radius:50%;background:rgba(255,255,255,.18)}
.gt-finder-bar span{margin-left:8px;font-size:12.5px;font-weight:600}
.gt-finder ul{list-style:none;margin:0;padding:6px 0}
.gt-finder li{padding:5px 14px;font-family:var(--mono);font-size:12.5px;color:var(--ink-2)}
.gt-finder li:nth-child(odd){background:rgba(255,255,255,.02)}
@media(max-width:760px){.gt-docs,.gt-backup{grid-template-columns:minmax(0,1fr)}}
/* 09 phone */
.gt-phone{margin-top:14px;display:grid;grid-template-columns:200px minmax(0,1fr);gap:22px;align-items:start}
.gt-phone .gt-checks{margin-top:0}
.gt-screen{display:flex;flex-direction:column;gap:8px;padding:16px 16px 60px;border-radius:26px;border:6px solid #262926;background:#0b0d0c;min-height:300px;position:relative}
.gt-screen::after{content:'';position:absolute;left:50%;bottom:12px;width:60px;height:4px;margin-left:-30px;border-radius:9px;background:#333}
.gt-screen-bar{align-self:flex-start;padding:2px 8px;border-radius:5px;background:color-mix(in srgb,var(--caution) 18%,transparent);color:var(--caution);font-family:var(--mono);font-size:10.5px}
.gt-screen b{margin-top:40px;font-size:17px}
.gt-screen em{font-style:normal;font-size:13px;color:var(--ink-3)}
@media(max-width:700px){.gt-phone{grid-template-columns:minmax(0,1fr)}.gt-screen{min-height:0;padding-bottom:34px;max-width:260px}.gt-screen b{margin-top:10px}}
/* 10 pills */
.gt-pills{margin-top:16px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:18px;align-items:center;padding:18px;border-radius:var(--r-lg);border:1px solid var(--line-2);background:#0e0f0e}
.gt-strips{display:flex;gap:8px}
.gt-strips span{display:flex;align-items:flex-end;justify-content:center;width:62px;height:84px;padding-bottom:6px;border-radius:8px;background:radial-gradient(circle,#dfe3df 6px,transparent 6.5px) 0 0/20px 20px,linear-gradient(#2b2f2c,#202421);font-family:var(--mono);font-size:9.5px;color:var(--ink);border:1px solid var(--line-2)}
.gt-pills p{font-size:15px;line-height:1.65;color:var(--ink-2)}
@media(max-width:600px){.gt-pills{grid-template-columns:minmax(0,1fr)}.gt-strips span{width:30%;flex:1}}
/* 11 bags */
.gt-bags{margin-top:18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.gt-bags>div{position:relative;margin-top:14px;padding:22px 20px 20px;border-radius:18px;border:2px solid var(--line-2);background:#0e0f0e}
.gt-bags>div.cabin{border-color:rgba(0,255,106,.5)}
.gt-handle{position:absolute;left:50%;top:-16px;width:70px;height:16px;margin-left:-35px;border:2px solid var(--line-2);border-bottom:0;border-radius:10px 10px 0 0}
.gt-bags .cabin .gt-handle{border-color:rgba(0,255,106,.5)}
.gt-bags .kick{color:var(--ink)}
.gt-bags ul{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:7px}
.gt-bags li{position:relative;padding-left:20px;font-size:14.5px;color:var(--ink-2)}
.gt-bags li::before{content:'›';position:absolute;left:4px;color:var(--ag);font-weight:700}
@media(max-width:700px){.gt-bags{grid-template-columns:minmax(0,1fr);gap:26px}}
/* 12 countdown */
.gt-count{list-style:none;margin:16px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.gt-count li{padding:18px;border-radius:var(--r-lg);border:1px solid var(--line-2);background:#0e0f0e;transition:border-color .3s,opacity .3s}
.gt-count .gt-t{display:block;font-family:var(--mono);font-weight:700;font-size:clamp(18px,1.8vw,24px);color:var(--ink)}
.gt-count p{margin-top:6px;font-size:14px;line-height:1.55;color:var(--ink-2)}
.gt-count em{display:block;margin-top:8px;font-style:normal;font-family:var(--mono);font-size:12px;color:var(--ag)}
.gt-count li.go .gt-t{color:var(--ag)}
.gt-count li.now{border-color:var(--ag);box-shadow:0 0 0 1px var(--ag)}
.gt-count li.now::before{content:'You are here';display:inline-block;margin-bottom:8px;padding:2px 8px;border-radius:4px;background:var(--ag);color:#041008;font-family:var(--mono);font-size:10px;font-weight:700;text-transform:uppercase}
.gt-count li.past{opacity:.45}
@media(max-width:700px){.gt-count{grid-template-columns:minmax(0,1fr)}}
/* checklist */
.ac{margin-top:16px;border-radius:var(--r-lg);border:1px solid rgba(0,255,106,.35);background:#0b0d0c;overflow:hidden}
.ac-head{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:18px;padding:16px 18px;border-bottom:1px solid var(--line);background:#0f1210}
.ac-head .kick{display:block;color:var(--ag)}
.ac-head b{font-family:var(--mono);font-size:18px}
.ac-bar{display:block;height:6px;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden}
.ac-bar i{display:block;height:100%;width:0;background:var(--ag);transition:width .45s var(--ease)}
.ac-tk{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-height:none;overflow:visible;border-top:0}
.ac-tk .tk-grp{grid-column:1/-1;color:var(--ag);background:#101410}
@media(max-width:700px){.ac-tk{grid-template-columns:minmax(0,1fr)}}
.ac-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:4px 18px;border-top:1px solid var(--line);font-family:var(--mono);font-size:11px;color:var(--ink-3)}
.ac-foot .tk-reset{width:auto;border:0;padding:10px 0}
/* 13, 14 */
.gt-mist{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.gt-mist li{position:relative;padding:40px 16px 16px;border-radius:12px;border:1px solid var(--line);font-size:14px;line-height:1.55;color:var(--ink-2)}
.gt-mist li::before{content:'✕';position:absolute;left:14px;top:12px;display:grid;place-items:center;width:22px;height:22px;border-radius:5px;background:var(--stop);color:#fff;font-size:11px;font-weight:700}
.gt-mist b{color:var(--ink)}
@media(max-width:900px){.gt-mist{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.gt-mist{grid-template-columns:minmax(0,1fr)}}
.gt-advice{padding:clamp(20px,3vw,34px);border-radius:var(--r-lg);border:1px solid rgba(0,255,106,.35);background:radial-gradient(100% 140% at 0 0,rgba(0,255,106,.1),transparent 60%),#0b0d0c}
.gt-advice .kick{color:var(--ag)}
.gt-advice h2{margin-top:6px;font-family:var(--display);font-weight:600;font-size:clamp(24px,2.4vw,36px);line-height:1.1}
.gt-advice p{margin-top:12px;font-size:15.5px;line-height:1.75;color:var(--ink-2)}
.pg-abf .g-src .kick{color:var(--ag)}
.pg-abf .acc{margin-top:4px}

/* ===== FIRST WEEK · Ankunftstafel & priority lanes (bespoke) ===== */
.pg-ank{--pg-accent:#00ff6a;--pg-glow:rgba(0,255,106,.14);--ga:#00ff6a;--kg:#00ff6a;--if:#7cd4ff}
.pg-ank .phero h1 .big{font-size:clamp(40px,4.8vw,92px);line-height:1}
.pg-ank .phero h1 .big em{display:block;font-style:normal;color:var(--kg)}
.pg-ank .phero h1 .flap{font-size:clamp(22px,2.8vw,54px)}
/* arrivals board */
.ak{border:1px solid var(--line-2);border-radius:var(--r-lg);background:#0a0b0a;overflow:hidden;box-shadow:0 40px 100px -40px rgba(0,255,106,.28);font-family:var(--mono)}
.ak-top{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;border-bottom:1px solid var(--line);background:#101211}
.ak-top .kick b{color:var(--kg);font-weight:400}
.ak-count{font-size:13px;color:var(--kg)}
.ak-anm{display:grid;grid-template-columns:auto minmax(0,1fr);gap:16px;align-items:center;padding:14px 18px;border-bottom:1px solid var(--line);background:linear-gradient(90deg,rgba(0,255,106,.08),transparent)}
.ak-anm label{display:flex;flex-direction:column;gap:5px}
.ak-anm input{padding:7px 10px;border-radius:8px;border:1px solid var(--line-2);background:#131513;color:var(--ink);font:500 13px var(--mono);color-scheme:dark}
.ak-anm b{display:block;margin-top:4px;font-size:15px;color:var(--ink)}
.ak-anm em{display:block;margin-top:3px;font-style:normal;font-family:var(--body);font-size:12.5px;color:var(--kg)}
.ak.soon .ak-anm em{color:var(--caution)}
.ak.late .ak-anm{background:linear-gradient(90deg,color-mix(in srgb,var(--stop) 14%,transparent),transparent)}
.ak.late .ak-anm em{color:var(--stop)}
.ak-head,.ak-rows button{display:grid;grid-template-columns:74px minmax(0,1fr) 96px;gap:12px;align-items:center;padding:0 18px}
.ak-head{height:30px;font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);border-bottom:1px solid var(--line)}
.ak-rows{list-style:none;margin:0;padding:0}
.ak-rows button{width:100%;min-height:46px;padding-top:9px;padding-bottom:9px;border-bottom:1px solid rgba(255,255,255,.05);text-align:left;transition:background .2s}
.ak-rows button:hover{background:rgba(0,255,106,.04)}
.ak-p{padding:3px 0;border-radius:4px;background:color-mix(in srgb,var(--stop) 16%,transparent);color:var(--stop);font-size:10.5px;font-weight:700;text-align:center;letter-spacing:.06em;text-transform:uppercase}
.ak-p.w{background:color-mix(in srgb,var(--caution) 16%,transparent);color:var(--caution)}
.ak-t{font-family:var(--body);font-size:13.5px;line-height:1.35;color:var(--ink)}
.ak-s{justify-self:end;padding:4px 8px;border-radius:4px;background:#1a1c1a;color:var(--ink-3);font-size:11px;font-weight:700;letter-spacing:.04em;white-space:nowrap}
.ak-rows button[aria-pressed="true"] .ak-s{background:var(--kg);color:#041008;animation:akFlip .45s var(--ease)}
.ak-rows button[aria-pressed="true"] .ak-t{color:var(--ink-3);text-decoration:line-through;text-decoration-color:rgba(255,255,255,.25)}
@keyframes akFlip{0%{transform:rotateX(90deg)}100%{transform:none}}
.ak-foot{display:flex;justify-content:space-between;gap:12px;padding:11px 18px;font-family:var(--body);font-size:12.5px;color:var(--ink-3);background:#0d0e0d}
.ak-foot a{color:var(--ink);text-decoration:underline;text-decoration-color:rgba(0,255,106,.5);text-underline-offset:3px;white-space:nowrap}
@media(max-width:560px){.ak-head{display:none}.ak-rows button{grid-template-columns:58px minmax(0,1fr) auto;gap:10px;padding:10px 14px}.ak-p{font-size:9.5px}.ak-anm{grid-template-columns:minmax(0,1fr);padding:14px}.ak-s{font-size:10px;padding:3px 6px}}
/* body: priority lanes */
.ak-body{max-width:calc(1080px + 2 * var(--gutter));margin:0 auto;padding:clamp(40px,6vw,90px) var(--gutter) 0}
.ar{padding:clamp(48px,6vw,86px) 0 0;scroll-margin-top:110px}
.ar:first-child{padding-top:0}
.ar-head{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:end;gap:16px;margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid var(--line)}
.ar-lane{--c:var(--kg);display:inline-grid;place-items:center;min-width:86px;padding:8px 12px;border-radius:8px;background:color-mix(in srgb,var(--c) 14%,transparent);border:1px solid color-mix(in srgb,var(--c) 55%,transparent);color:var(--c);font-family:var(--mono);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.ar-lane.first,.ar-lane.sos{--c:var(--stop)}.ar-lane.week{--c:var(--caution)}.ar-lane.wait{--c:var(--ok)}.ar-lane.if{--c:var(--if)}
.ar-head .kick{color:var(--ink-3)}
.ar-head h2{margin-top:4px;font-family:var(--display);font-weight:600;font-size:clamp(26px,2.8vw,42px);line-height:1.08;letter-spacing:-.025em}
.ar>p,.ar-p{margin-top:14px;font-size:16px;line-height:1.75;color:var(--ink-2)}
.ar p strong,.ar li strong{color:var(--ink)}
.ar a:not(.btn):not(.ar-sos a){color:var(--ink);text-decoration:underline;text-decoration-color:rgba(0,255,106,.5);text-underline-offset:3px}
.ar-h3{margin-top:30px;font-family:var(--display);font-weight:600;font-size:clamp(18px,1.5vw,22px)}
.ar-fine{font-size:14px!important;color:var(--ink-3)!important}
.ar-note{margin-top:16px;padding:16px 18px;border-radius:var(--r);border:1px solid rgba(0,255,106,.3);background:rgba(0,255,106,.04)}
.ar-note.warn{border-color:color-mix(in srgb,var(--caution) 50%,transparent);background:color-mix(in srgb,var(--caution) 6%,transparent)}
.ar-note b{display:block;font-size:15px}
.ar-note p{margin-top:6px;font-size:15px;line-height:1.65;color:var(--ink-2)}
@media(max-width:560px){.ar-head{grid-template-columns:minmax(0,1fr);gap:10px}.ar-lane{justify-self:start;min-width:0}}
.ar-checks{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:7px}
.ar-checks.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.ar-checks li{position:relative;padding-left:24px;font-size:15px;line-height:1.55;color:var(--ink-2)}
.ar-checks li::before{content:'';position:absolute;left:6px;top:.66em;width:6px;height:6px;border-radius:50%;background:rgba(0,255,106,.8)}
@media(max-width:640px){.ar-checks.two{grid-template-columns:minmax(0,1fr)}}
.ar-two{margin-top:14px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.ar-two>div{padding:18px;border-radius:var(--r-lg);border:1px solid var(--line-2);background:#0e0f0e}
.ar-two .kick{color:var(--kg)}
.ar-two ul{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:7px}
.ar-two li{position:relative;padding-left:20px;font-size:14.5px;line-height:1.5;color:var(--ink-2)}
.ar-two li::before{content:'›';position:absolute;left:4px;color:var(--kg);font-weight:700}
.ar-two p{margin-top:8px;font-size:14.5px;line-height:1.65;color:var(--ink-2)}
@media(max-width:700px){.ar-two{grid-template-columns:minmax(0,1fr)}}
/* 01 lanes */
.ar-lanes{margin-top:16px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.ar-lanes>div{--c:var(--stop);padding:16px;border-radius:var(--r);border:1px solid color-mix(in srgb,var(--c) 45%,transparent);border-left:5px solid var(--c);background:color-mix(in srgb,var(--c) 4%,#0c0c0c)}
.ar-lanes .week{--c:var(--caution)}.ar-lanes .wait{--c:var(--ok)}
.ar-lanes .ar-lane{--c:inherit;min-width:0;padding:3px 8px;font-size:10px;color:var(--c);border-color:color-mix(in srgb,var(--c) 55%,transparent);background:transparent}
.ar-lanes b{display:block;margin-top:10px;font-size:16px}
.ar-lanes p{margin-top:4px;font-size:13.5px;color:var(--ink-2)}
@media(max-width:700px){.ar-lanes{grid-template-columns:minmax(0,1fr)}}
/* 03 the 14 days */
.ar-cal{margin-top:16px;padding:18px;border-radius:var(--r-lg);border:1px solid color-mix(in srgb,var(--stop) 40%,transparent);background:#0c0c0c}
.ar-cal-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 14px;font-size:13.5px;color:var(--ink-2)}
.ar-cal-head .kick{color:var(--stop)}
.ar-days{list-style:none;margin:14px 0 0;padding:0;display:grid;grid-template-columns:repeat(15,minmax(0,1fr));gap:4px}
.ar-days li{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 2px 18px;border-radius:8px;background:#161816;border:1px solid var(--line);font-family:var(--mono)}
.ar-days small{font-size:9px;color:var(--ink-3);text-transform:uppercase}
.ar-days b{font-size:15px;color:var(--ink)}
.ar-days em{position:absolute;bottom:4px;left:0;right:0;text-align:center;font-style:normal;font-size:8px;letter-spacing:.04em;text-transform:uppercase}
.ar-days li.we{background:repeating-linear-gradient(135deg,#1c1f1c 0 5px,#141614 5px 10px)}
.ar-days li.in{border-color:var(--kg)}.ar-days li.in em{color:var(--kg)}
.ar-days li.end{background:#d7372d;border-color:#d7372d}.ar-days li.end b,.ar-days li.end em,.ar-days li.end small{color:#fff}
.ar-days li.today{box-shadow:0 0 0 2px var(--caution)}
.ar-days li.gone{opacity:.45}
@media(max-width:760px){.ar-days{grid-template-columns:repeat(8,minmax(0,1fr))}.ar-days li{padding-bottom:8px}.ar-days em{display:none}}
/* 04 M10 */
.ar-m10{margin-top:16px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:0}
.ar-m10-n{padding:12px 16px;border-radius:10px;border:1px solid var(--line-2);background:#141614;font-weight:600;font-size:14.5px}
.ar-m10-n.uni{background:var(--kg);color:#041008;border-color:var(--kg)}
.ar-m10-line{position:relative;height:2px;margin:0 6px;background:repeating-linear-gradient(90deg,var(--kg) 0 8px,transparent 8px 14px);animation:rwFlow 1s linear infinite}
.ar-m10-line em{position:absolute;left:50%;top:-24px;transform:translateX(-50%);white-space:nowrap;font-style:normal;font-family:var(--mono);font-size:11px;color:var(--kg)}
/* 05 */
.ar-uni{list-style:none;margin:14px 0 0;padding:0;counter-reset:u;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.ar-uni li{counter-increment:u;display:flex;gap:10px;align-items:center;padding:12px 14px;border-radius:12px;border:1px solid var(--line);font-size:14px;line-height:1.4;color:var(--ink)}
.ar-uni li::before{content:counter(u);flex:none;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;border:1px solid color-mix(in srgb,var(--if) 60%,transparent);font-family:var(--mono);font-size:11px;color:var(--if)}
@media(max-width:860px){.ar-uni{grid-template-columns:minmax(0,1fr)}}
/* 06 */
.ar-receipt{margin-top:14px;max-width:560px;padding:16px 20px 22px;border-radius:10px 10px 0 0;background:var(--paper,#f2efe6);color:#141414;-webkit-mask:radial-gradient(circle at 8px 100%,transparent 6px,#000 6.5px) -8px 100%/16px 10px repeat-x,linear-gradient(#000,#000) 0 0/100% calc(100% - 9px) no-repeat;mask:radial-gradient(circle at 8px 100%,transparent 6px,#000 6.5px) -8px 100%/16px 10px repeat-x,linear-gradient(#000,#000) 0 0/100% calc(100% - 9px) no-repeat}
.ar-receipt .kick{color:#666}
.ar-receipt ul{list-style:none;margin:10px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}
.ar-receipt li{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px dashed rgba(0,0,0,.2);font-family:var(--mono);font-size:12.5px}
@media(max-width:560px){.ar-receipt ul{grid-template-columns:minmax(0,1fr)}}
/* 07 */
.ar-seq{list-style:none;margin:16px 0 0;padding:0;counter-reset:q;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}
.ar-seq li{counter-increment:q;position:relative;padding:16px 18px;border:1px solid var(--line-2);background:#0e0f0e}
.ar-seq li:first-child{border-radius:14px 0 0 14px}.ar-seq li:last-child{border-radius:0 14px 14px 0}
.ar-seq li+li{border-left:0}
.ar-seq li::before{content:counter(q);font-family:var(--mono);font-size:12px;color:var(--if)}
.ar-seq b{display:block;margin-top:4px;font-size:15px}
.ar-seq span{display:block;margin-top:3px;font-size:13px;color:var(--ink-3)}
@media(max-width:700px){.ar-seq{grid-template-columns:minmax(0,1fr)}.ar-seq li{border-radius:0!important;border-left:1px solid var(--line-2)!important}.ar-seq li+li{border-top:0}.ar-seq li:first-child{border-radius:14px 14px 0 0!important}.ar-seq li:last-child{border-radius:0 0 14px 14px!important}}
/* 08 post */
.ar-post{margin-top:14px;display:grid;grid-template-columns:200px minmax(0,1fr);gap:22px;align-items:start}
.ar-post .ar-checks{margin-top:0}
.ar-box{position:relative;height:170px;border-radius:10px 10px 4px 4px;background:linear-gradient(#2a2e2b,#1d201e);border:1px solid var(--line-2)}
.ar-box::before{content:'';position:absolute;left:16px;right:16px;top:28px;height:10px;border-radius:5px;background:#0b0c0b}
.ar-box-name{position:absolute;left:16px;right:16px;top:54px;padding:6px 8px;border-radius:3px;background:var(--paper,#f2efe6);color:#141414;font-family:var(--mono);font-size:11px;font-weight:700;text-align:center}
.ar-box i{position:absolute;right:14px;bottom:14px;width:10px;height:10px;border-radius:50%;background:#555}
.ar-letter{margin-top:16px;padding:18px;border-radius:6px;background:var(--paper,#f2efe6);color:#141414}
.ar-letter .kick{color:#666}
.ar-letter b{display:block;margin-top:4px;font-family:var(--display);font-size:18px}
.ar-letter p{margin-top:6px;font-size:14px;line-height:1.6;color:#333}
.ar .ar-letter strong{color:#111}
@media(max-width:700px){.ar-post{grid-template-columns:minmax(0,1fr)}.ar-box{height:120px;max-width:220px}}
.ar-docs{margin-top:12px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.ar-docs>div{padding:16px;border-radius:12px;border:1px solid var(--line-2);background:#0e0f0e}
.ar-docs .kick{color:var(--kg)}
.ar-docs p{margin-top:6px;font-size:14px;line-height:1.6;color:var(--ink-2)}
@media(max-width:700px){.ar-docs{grid-template-columns:minmax(0,1fr)}}
.ar-finder{margin-top:12px;max-width:420px;border-radius:12px;border:1px solid var(--line-2);background:#121412;overflow:hidden}
.ar-finder-bar{display:flex;align-items:center;gap:6px;padding:9px 12px;border-bottom:1px solid var(--line);background:#181b19}
.ar-finder-bar i{width:9px;height:9px;border-radius:50%;background:rgba(255,255,255,.18)}
.ar-finder-bar span{margin-left:8px;font-size:12.5px;font-weight:600}
.ar-finder ul{list-style:none;margin:0;padding:6px 0}
.ar-finder li{padding:5px 14px;font-family:var(--mono);font-size:12.5px;color:var(--ink-2)}
/* 09 */
.ar-map{margin-top:4px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.ar-map>div{padding:18px;border-radius:var(--r-lg);border:1px solid var(--line-2);background:#0e0f0e}
.ar-map>div.pins{background:radial-gradient(circle at 20% 30%,rgba(0,255,106,.06),transparent 40%),linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px) 0 0/100% 26px,#0e0f0e}
.ar-map .kick{color:var(--caution)}
.ar-map ul{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:7px}
.ar-map li{position:relative;padding-left:22px;font-size:14.5px;line-height:1.5;color:var(--ink-2)}
.ar-map li::before{content:'›';position:absolute;left:4px;color:var(--caution);font-weight:700}
.ar-map .pins li::before{content:'';left:2px;top:5px;width:10px;height:10px;border-radius:50% 50% 50% 0;background:var(--caution);transform:rotate(-45deg)}
@media(max-width:700px){.ar-map{grid-template-columns:minmax(0,1fr)}}
/* 10 SOS */
.ar-sos{margin-top:4px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.ar-sos a{display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px;padding:22px 16px;border-radius:var(--r-lg);border:1px solid var(--line-2);background:#0e0f0e;transition:transform .2s,border-color .2s}
.ar-sos a:hover{transform:translateY(-2px);border-color:rgba(255,255,255,.3)}
.ar-sos a.red{border-color:var(--stop);background:color-mix(in srgb,var(--stop) 10%,#0e0f0e)}
.ar-sos .kick{color:var(--ink-3)}
.ar-sos b{font-family:var(--mono);font-size:clamp(36px,4vw,54px);line-height:1;color:var(--ink)}
.ar-sos a.red b{color:var(--stop)}
.ar-sos span:last-child{font-size:13px;color:var(--ink-2)}
@media(max-width:640px){.ar-sos{grid-template-columns:minmax(0,1fr)}}
.ar-contacts{margin-top:10px;display:flex;flex-wrap:wrap;gap:8px}
.ar-contacts span{padding:8px 12px;border-radius:10px;border:1px solid var(--line-2);font-size:13.5px;color:var(--ink)}
.ar-contacts span::before{content:'☎ ';color:var(--kg)}
/* 11 parked */
.ar-park{margin-top:14px;display:flex;flex-wrap:wrap;gap:8px;padding:16px;border-radius:var(--r-lg);border:1px dashed color-mix(in srgb,var(--ok) 45%,transparent)}
.ar-park span{padding:8px 13px;border-radius:999px;background:color-mix(in srgb,var(--ok) 8%,transparent);border:1px solid color-mix(in srgb,var(--ok) 35%,transparent);font-size:13.5px;color:var(--ink-2)}
.ar-park span::before{content:'⏸ ';color:var(--ok)}
/* checklist */
.fw{margin-top:16px;border-radius:var(--r-lg);border:1px solid rgba(0,255,106,.35);background:#0b0d0c;overflow:hidden}
.fw-head{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:18px;padding:16px 18px;border-bottom:1px solid var(--line);background:#0f1210}
.fw-head .kick{display:block;color:var(--kg)}
.fw-head b{font-family:var(--mono);font-size:18px}
.fw-bar{display:block;height:6px;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden}
.fw-bar i{display:block;height:100%;width:0;background:var(--kg);transition:width .45s var(--ease)}
.fw-tk{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-height:none;overflow:visible;border-top:0}
.fw-tk .tk-grp{grid-column:1/-1;background:#101210}
.fw-tk .tk-grp.first{color:var(--stop)}.fw-tk .tk-grp.week{color:var(--caution)}.fw-tk .tk-grp.wait{color:var(--ok)}
@media(max-width:700px){.fw-tk{grid-template-columns:minmax(0,1fr)}}
.fw-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:4px 18px;border-top:1px solid var(--line);font-family:var(--mono);font-size:11px;color:var(--ink-3)}
.fw-foot .tk-reset{width:auto;border:0;padding:10px 0}
/* 12, 13 */
.ar-mist{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.ar-mist li{position:relative;padding:14px 16px 14px 48px;border-radius:12px;border:1px solid var(--line);font-size:14.5px;line-height:1.6;color:var(--ink-2)}
.ar-mist li::before{content:'✕';position:absolute;left:14px;top:14px;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:color-mix(in srgb,var(--stop) 16%,transparent);color:var(--stop);font-size:11px;font-weight:700}
.ar-mist b{color:var(--ink)}
@media(max-width:700px){.ar-mist{grid-template-columns:minmax(0,1fr)}}
.ar-advice{display:grid;grid-template-columns:300px minmax(0,1fr);gap:clamp(18px,3vw,40px);align-items:center;padding:clamp(20px,3vw,34px);border-radius:var(--r-lg);border:1px solid rgba(0,255,106,.35);background:radial-gradient(100% 140% at 0 0,rgba(0,255,106,.1),transparent 60%),#0b0d0c}
.ar-advice .kick{color:var(--kg)}
.ar-advice h2{margin-top:6px;font-family:var(--display);font-weight:600;font-size:clamp(24px,2.4vw,36px);line-height:1.1}
.ar-advice p{margin-top:12px;font-size:15.5px;line-height:1.75;color:var(--ink-2)}
.ar-advice-vs{display:grid;gap:10px}
.ar-advice-vs>div{display:flex;flex-wrap:wrap;gap:6px;padding:14px;border-radius:12px;border:1px solid var(--line-2)}
.ar-advice-vs span{width:100%;font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase}
.ar-advice-vs .no span{color:var(--stop)}.ar-advice-vs .yes span{color:var(--kg)}
.ar-advice-vs em{font-style:normal;padding:4px 9px;border-radius:6px;background:#161816;font-size:12.5px;color:var(--ink-2)}
.ar-advice-vs .no em{text-decoration:line-through;text-decoration-color:color-mix(in srgb,var(--stop) 60%,transparent)}
.ar-advice-vs .yes{border-color:rgba(0,255,106,.45)}
.ar-advice-vs .yes em.one{background:var(--kg);color:#041008;font-weight:600}
@media(max-width:760px){.ar-advice{grid-template-columns:minmax(0,1fr)}}
.pg-ank .g-src .kick{color:var(--kg)}
.pg-ank .acc{margin-top:4px}

/* ===== GERMAN LEVEL TEST · Antwortbogen (bespoke) ===== */
.pg-lt{--pg-accent:#e98cff;--pg-glow:rgba(224,0,255,.18);--lm:#e98cff;--lm2:#e000ff;--sheet:#f4efe6;--print:#c2188f}
.pg-lt .phero h1 .big{font-size:clamp(42px,5vw,96px);line-height:1}
.pg-lt .phero h1 .big em{display:block;font-style:normal;color:var(--lm)}
.pg-lt .phero h1 .flap{font-size:clamp(20px,2.4vw,46px)}
/* the answer sheet */
.ab{border-radius:14px;background:var(--sheet);color:#1a1414;box-shadow:0 40px 100px -40px rgba(224,0,255,.35),0 20px 50px -30px rgba(0,0,0,.8);overflow:hidden;transform:rotate(-.6deg)}
.ab-top{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;border-bottom:2px solid var(--print)}
.ab-top .kick{color:#7a5a6e}
.ab-top .kick b{color:var(--print);font-weight:700}
.ab-count{font-family:var(--mono);font-size:14px;color:var(--print);white-space:nowrap}
@media(max-width:560px){.ab-top .ab-en{display:none}}
.ab-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}
.ab-col{padding:14px 14px 16px;border-right:1px dashed rgba(194,24,143,.35)}
.ab-col:last-child{border-right:0}
.ab-lv{display:block;margin-bottom:10px;font-family:var(--mono);font-weight:700;font-size:13px;letter-spacing:.1em;color:var(--print);text-align:center}
.ab-col ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 6px;justify-items:center}
.ab-col button{position:relative;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;border:1.5px solid rgba(194,24,143,.55);background:transparent;font-family:var(--mono);font-size:11.5px;color:var(--print);transition:transform .2s,background .3s}
.ab-col button:disabled{cursor:default;opacity:.8}
.ab-col button:not(:disabled):hover{transform:scale(1.08)}
.ab-col li.now button{border-width:2.5px;border-color:var(--lm2);box-shadow:0 0 0 4px rgba(224,0,255,.18);opacity:1}
.ab-col li.ok button{background:#137a3c;border-color:#137a3c;color:#fff}
.ab-col li.ok button::after{content:'✓';position:absolute;right:-5px;top:-6px;width:16px;height:16px;border-radius:50%;background:#0b4d25;color:#fff;font-size:9px;display:grid;place-items:center}
.ab-col li.no button{background:#c43a30;border-color:#c43a30;color:#fff}
.ab-col li.no button::after{content:'✕';position:absolute;right:-5px;top:-6px;width:16px;height:16px;border-radius:50%;background:#7e1f18;color:#fff;font-size:8px;display:grid;place-items:center}
.ab-key{display:flex;flex-wrap:wrap;gap:6px 16px;padding:10px 18px 14px;border-top:1px dashed rgba(194,24,143,.35);font-family:var(--mono);font-size:10.5px;color:#7a5a6e}
.ab-key span{display:inline-flex;align-items:center;gap:6px}
.ab-key i{width:11px;height:11px;border-radius:50%}
.ab-key .k-ok{background:#12a150}.ab-key .k-no{background:#d8443a}.ab-key .k-now{border:2px solid var(--lm2)}
@media(max-width:560px){.ab{transform:none}.ab-col{padding:12px 6px 14px}.ab-col button{width:30px;height:30px;font-size:10.5px}}
/* body */
.lt-body{max-width:calc(900px + 2 * var(--gutter));margin:0 auto;padding:clamp(40px,6vw,80px) var(--gutter) 0}
.lt-hn{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:start;padding:16px 18px;border-radius:var(--r);border:1px solid rgba(233,140,255,.35);background:rgba(224,0,255,.05);font-size:15px;line-height:1.65;color:var(--ink-2)}
.lt-hn b,.lt-hn em{color:var(--ink)}
.lt-hn-mark{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--lm);color:#1a0620;font-weight:700;font-family:var(--mono)}
/* the exam room */
.lt-room{padding-top:clamp(28px,4vw,48px);scroll-margin-top:100px}
.lt-card{padding:clamp(20px,3vw,34px);border-radius:var(--r-lg);border:1px solid var(--line-2);background:radial-gradient(120% 120% at 100% 0,rgba(224,0,255,.08),transparent 55%),#0d0c0e;box-shadow:0 30px 80px -40px rgba(224,0,255,.35)}
.lt-card.in .lt-q,.lt-card.in .lt-opts{animation:kkIn .35s var(--ease) both}
.lt-card-top{display:flex;justify-content:space-between;align-items:center;gap:12px}
.lt-qn{font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3)}
.lt-tag{padding:4px 12px;border-radius:999px;font-family:var(--mono);font-size:12px;font-weight:700;background:rgba(233,140,255,.15);color:var(--lm);border:1px solid rgba(233,140,255,.45)}
.lt-tag[data-lv="A2"]{background:rgba(233,140,255,.28)}
.lt-tag[data-lv="B1"]{background:var(--lm);color:#1a0620}
.lt-bar{display:block;height:4px;margin-top:14px;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden}
.lt-bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--lm2),var(--lm));transition:width .45s var(--ease)}
.lt-q{margin-top:22px;font-family:var(--display);font-weight:500;font-size:clamp(22px,2.6vw,34px);line-height:1.25;letter-spacing:-.015em;color:var(--ink)}
.lt-opts{margin-top:20px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.lt-opt{display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px;align-items:center;padding:14px 16px;border-radius:14px;border:1px solid var(--line-2);background:#141316;text-align:left;font-size:16px;color:var(--ink);transition:border-color .2s,background .2s,transform .15s}
.lt-opt:hover:not(:disabled){border-color:rgba(233,140,255,.6);background:#1a171c;transform:translateY(-1px)}
.lt-opt:disabled{cursor:default}
.lt-l{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:#1f1d22;font-family:var(--mono);font-size:13px;font-weight:700;color:var(--lm)}
.lt-opt.right{border-color:var(--ok);background:color-mix(in srgb,var(--ok) 10%,#141316)}
.lt-opt.right .lt-l{background:var(--ok);color:#041008}
.lt-opt.wrong{border-color:var(--stop);background:color-mix(in srgb,var(--stop) 10%,#141316)}
.lt-opt.wrong .lt-l{background:var(--stop);color:#fff}
.lt-opt:disabled:not(.right):not(.wrong){opacity:.45}
.lt-fb{display:none;margin-top:16px;padding:14px 16px;border-radius:12px;font-size:15px;line-height:1.6;color:var(--ink-2)}
.lt-fb.show{display:block;animation:kkIn .3s var(--ease) both}
.lt-fb.ok{border:1px solid color-mix(in srgb,var(--ok) 40%,transparent);background:color-mix(in srgb,var(--ok) 6%,transparent)}
.lt-fb.ok b{color:var(--ok)}
.lt-fb.no{border:1px solid rgba(233,140,255,.4);background:rgba(224,0,255,.06)}
.lt-fb.no b{color:var(--lm)}
.lt-nav{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}
.lt-keys{font-family:var(--mono);font-size:11px;color:var(--ink-3)}
.lt-keys kbd{display:inline-block;padding:1px 6px;border-radius:4px;border:1px solid var(--line-2);font-family:var(--mono);font-size:10.5px;color:var(--ink-2)}
.lt-next{padding:11px 18px;border-radius:999px;background:var(--lm);color:#1a0620;font-weight:700;font-size:14.5px;transition:opacity .2s,transform .2s}
.lt-next:disabled{opacity:.3;cursor:not-allowed}
.lt-next:not(:disabled):hover{transform:translateY(-1px)}
.lt-rule{margin-top:12px;font-size:13px;color:var(--ink-3);text-align:center}
@media(max-width:640px){.lt-opts{grid-template-columns:minmax(0,1fr)}.lt-keys{display:none}.lt-nav{justify-content:flex-end}.lt-next{width:100%}}
/* result */
.lt-res{margin-top:clamp(36px,5vw,60px);padding:clamp(22px,3vw,36px);border-radius:var(--r-lg);border:1px solid rgba(233,140,255,.5);background:radial-gradient(120% 140% at 0 0,rgba(224,0,255,.14),transparent 55%),#0d0c0e;scroll-margin-top:100px;animation:kkIn .5s var(--ease) both}
.lt-res[hidden]{display:none}
.lt-res-head .kick{color:var(--lm)}
.lt-res-head h2{margin-top:6px;font-family:var(--display);font-weight:600;font-size:clamp(34px,4.4vw,60px);line-height:1;letter-spacing:-.03em}
.lt-res-line{margin-top:12px;font-size:16px;line-height:1.7;color:var(--ink-2);max-width:680px}
.lt-res-score{display:inline-block;margin-top:14px;padding:5px 12px;border-radius:999px;background:#1f1d22;font-family:var(--mono);font-size:13px;color:var(--ink)}
.lt-ladder{margin-top:22px;display:grid;gap:10px}
.lt-rung{display:grid;grid-template-columns:44px minmax(0,1fr) 56px;gap:14px;align-items:center}
.lt-rung-lv{font-family:var(--mono);font-weight:700;font-size:14px;color:var(--ink-2)}
.lt-rung-bar{position:relative;height:16px;border-radius:99px;background:rgba(255,255,255,.07);overflow:visible}
.lt-rung-bar i{display:block;height:100%;width:0;border-radius:99px;background:rgba(233,140,255,.45);transition:width .8s var(--ease)}
.lt-rung.solid .lt-rung-bar i{background:linear-gradient(90deg,var(--lm2),var(--lm))}
.lt-rung.solid .lt-rung-lv{color:var(--lm)}
.lt-seven{position:absolute;left:70%;top:-4px;bottom:-4px;width:2px;background:var(--ink)}
.lt-rung b{font-family:var(--mono);font-size:14px;color:var(--ink);text-align:right}
.lt-ladder-note{font-size:12.5px;color:var(--ink-3)}
.lt-honest{margin-top:20px;padding:16px 18px;border-radius:var(--r);border:1px solid color-mix(in srgb,var(--caution) 45%,transparent);background:color-mix(in srgb,var(--caution) 5%,transparent);font-size:14.5px;line-height:1.65;color:var(--ink-2)}
.lt-honest b{color:var(--ink)}
.lt-steps{margin-top:18px;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}
.lt-step{display:flex;flex-direction:column;gap:6px;padding:18px;border-radius:var(--r-lg);border:1px solid var(--line-2);background:#141316;transition:border-color .2s,transform .2s}
.lt-step:hover{border-color:rgba(233,140,255,.6);transform:translateY(-2px)}
.lt-step-n{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--lm)}
.lt-step b{font-size:16px;color:var(--ink)}
.lt-step p{font-size:14px;line-height:1.55;color:var(--ink-2)}
.lt-step em{margin-top:auto;font-style:normal;font-size:13px;color:var(--lm)}
.lt-again{margin-top:20px;display:flex;flex-wrap:wrap;gap:10px}
/* how it works */
.lt-how{margin-top:clamp(48px,6vw,80px)}
.lt-how .kick{color:var(--lm)}
.lt-how h2{margin-top:6px;font-family:var(--display);font-weight:600;font-size:clamp(24px,2.6vw,36px);line-height:1.1}
.lt-how-steps{list-style:none;margin:16px 0 0;padding:0;counter-reset:h;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.lt-how-steps li{counter-increment:h;padding:18px;border-radius:var(--r);border:1px solid var(--line-2);background:#0f0e10}
.lt-how-steps li::before{content:counter(h);display:grid;place-items:center;width:28px;height:28px;margin-bottom:10px;border-radius:50%;border:1px solid rgba(233,140,255,.55);font-family:var(--mono);font-size:12px;color:var(--lm)}
.lt-how-steps b{display:block;font-size:15.5px}
.lt-how-steps p{margin-top:6px;font-size:14px;line-height:1.55;color:var(--ink-2)}
@media(max-width:760px){.lt-how-steps{grid-template-columns:minmax(0,1fr)}}

/* ===== A1 VOCABULARY QUIZ · Stempelkarte (bespoke) ===== */
.pg-sk{--pg-accent:#3ee8ff;--pg-glow:rgba(62,232,255,.13);--cy:#3ee8ff;--paper:#f2efe6;--teal:#0b7285;--teal-2:#0e8aa1}
.pg-sk .phero h1 .big{font-size:clamp(40px,4.6vw,88px);line-height:1.02}
.pg-sk .phero h1 .big em{display:block;font-style:normal;color:var(--cy)}
.pg-sk .phero h1 .flap{font-size:clamp(20px,2.4vw,46px)}
/* the stamp card */
.skc{position:relative;padding:18px 20px 16px;border-radius:16px;background:var(--paper);color:#152326;box-shadow:0 40px 100px -40px rgba(62,232,255,.35),0 20px 50px -30px rgba(0,0,0,.8);transform:rotate(.8deg)}
.skc::before{content:'';position:absolute;left:0;right:0;top:0;height:6px;border-radius:16px 16px 0 0;background:repeating-linear-gradient(90deg,var(--teal) 0 18px,transparent 18px 24px)}
.skc-top{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;padding-top:6px}
.skc-brand{display:block;font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:#5b6d70}
.skc-title{display:block;margin-top:2px;font-family:var(--display);font-weight:700;font-size:clamp(20px,2vw,26px);letter-spacing:-.02em;color:var(--teal)}
.skc-count{font-family:var(--mono);font-size:14px;color:#5b6d70;white-space:nowrap}
.skc-count b{font-size:26px;color:var(--teal)}
.skc-line{margin-top:6px;padding-bottom:12px;border-bottom:1.5px dashed rgba(11,114,133,.4);font-family:var(--mono);font-size:12px;color:#34494c}
.skc-line span{color:#6d7f82}
.skc-grid{list-style:none;margin:14px 0 0;padding:0;display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:8px 6px;justify-items:center}
.skc-grid button{position:relative;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;border:1.5px dashed rgba(11,114,133,.45);background:transparent;font-family:var(--mono);font-size:11px;color:#5b8a92;transition:transform .2s}
.skc-grid button:hover{transform:scale(1.1);border-style:solid}
.skc-grid li.full button,.skc-grid li.ring button{color:transparent;border-style:solid}
.skc-grid li.full button{background:var(--teal);border-color:var(--teal);box-shadow:inset 0 0 0 3px var(--paper),inset 0 0 0 4px rgba(255,255,255,.35)}
.skc-grid li.ring button{border:2.5px double var(--teal)}
.skc-grid li.full button::after,.skc-grid li.ring button::after{content:'✓';position:absolute;inset:0;display:grid;place-items:center;font-size:17px;font-weight:700;font-family:var(--body,sans-serif);animation:skStamp .4s cubic-bezier(.3,1.6,.5,1) both}
.skc-grid li.full button::after{color:#fff}
.skc-grid li.ring button::after{color:var(--teal)}
.skc-grid li:nth-child(3n) button::after{rotate:-14deg}.skc-grid li:nth-child(3n+1) button::after{rotate:9deg}
.skc-grid li:nth-child(10n) button{border-color:rgba(11,114,133,.8)}
.skc-foot{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;margin-top:14px;padding-top:12px;border-top:1.5px dashed rgba(11,114,133,.4);font-family:var(--mono);font-size:10.5px;color:#5b6d70}
.skc-key{display:inline-flex;align-items:center;gap:6px}
.skc-key i{width:12px;height:12px;border-radius:50%}
.skc-key .k-full{background:var(--teal)}.skc-key .k-ring{border:2.5px double var(--teal)}
.skc-first{margin-left:auto}
.skc-first b{color:var(--teal);font-size:13px}
@keyframes skStamp{from{opacity:0;transform:scale(1.9)}to{opacity:1;transform:none}}
@media(max-width:560px){.skc{transform:none;padding:16px 14px 14px}.skc-grid{gap:7px 3px}.skc-grid button{width:28px;height:28px;font-size:9.5px}.skc-grid li.full button::after,.skc-grid li.ring button::after{font-size:14px}.skc-line span{display:none}.skc-first{margin-left:0;width:100%}}
/* sticky bar */
.sk-bar{position:sticky;top:88px;z-index:40;background:rgba(5,5,5,.86);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-block:1px solid var(--line)}
.sk-bar-in{max-width:calc(1060px + 2 * var(--gutter));margin:0 auto;padding:10px var(--gutter);display:flex;align-items:center;gap:14px}
.sk-bar-l{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--cy)}
.sk-track{flex:1;height:6px;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden}
.sk-track i{display:block;height:100%;width:0;border-radius:99px;background:linear-gradient(90deg,#0e8aa1,var(--cy));transition:width .45s var(--ease)}
.sk-bar-n{font-family:var(--mono);font-size:13px;color:var(--ink-2);white-space:nowrap}
.sk-bar-n b{color:var(--ink)}
.sk-restart{padding:6px 12px;border-radius:999px;border:1px solid var(--line-2);font-family:var(--mono);font-size:12px;color:var(--ink-2);transition:border-color .2s,color .2s}
.sk-restart:hover{border-color:var(--cy);color:var(--ink)}
/* body */
.sk-body{max-width:calc(1060px + 2 * var(--gutter));margin:0 auto;padding:clamp(32px,5vw,64px) var(--gutter) 0}
.sk-how{list-style:none;margin:0;padding:0;counter-reset:h;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.sk-how li{counter-increment:h;display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 12px;padding:14px 16px;border-radius:var(--r);border:1px solid var(--line-2);background:#0d0f10}
.sk-how li::before{content:counter(h);grid-row:span 2;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;border:1.5px dashed rgba(62,232,255,.6);font-family:var(--mono);font-size:12px;color:var(--cy)}
.sk-how b{font-size:15px;color:var(--ink)}
.sk-how span{font-size:13.5px;line-height:1.5;color:var(--ink-2)}
.sk-row{margin-top:clamp(40px,5vw,64px);scroll-margin-top:150px}
.sk-row-h{display:flex;align-items:baseline;gap:14px;padding-bottom:12px;border-bottom:1px solid var(--line)}
.sk-row-k{font-family:var(--display);font-weight:600;font-size:clamp(24px,2.6vw,34px);letter-spacing:-.02em;color:var(--ink)}
.sk-row-r{font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}
.sk-row-c{margin-left:auto;padding:3px 10px;border-radius:999px;border:1px dashed rgba(62,232,255,.45);font-family:var(--mono);font-size:12px;color:var(--cy);white-space:nowrap}
.sk-row.is-full .sk-row-c{border-style:solid;background:var(--cy);color:#03161a}
.sk-row.is-full .sk-row-c::before{content:'✓ '}
.sk-qs{margin-top:16px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}
.sk-q{position:relative;padding:18px 18px 16px;border-radius:var(--r-lg);border:1px solid var(--line-2);background:#0d0f10;scroll-margin-top:170px;transition:border-color .3s}
.sk-q.is-full,.sk-q.is-ring{border-color:rgba(62,232,255,.35)}
.sk-q.flash{animation:skFlash 1.2s var(--ease)}
@keyframes skFlash{0%,40%{box-shadow:0 0 0 3px rgba(62,232,255,.55)}100%{box-shadow:0 0 0 0 rgba(62,232,255,0)}}
.sk-q-top{display:flex;justify-content:space-between;align-items:center}
.sk-num{font-family:var(--mono);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3)}
.sk-slot{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;border:1.5px dashed rgba(62,232,255,.35)}
.sk-slot i{font-style:normal;font-weight:700;font-size:17px;color:transparent}
.sk-q.is-full .sk-slot{border:0;background:var(--cy);rotate:-10deg;animation:skStamp .4s cubic-bezier(.3,1.6,.5,1) both}
.sk-q.is-full .sk-slot i{color:#03161a}
.sk-q.is-ring .sk-slot{border:3px double var(--cy);rotate:8deg;animation:skStamp .4s cubic-bezier(.3,1.6,.5,1) both}
.sk-q.is-ring .sk-slot i{color:var(--cy)}
.sk-qt{margin-top:8px;font-family:var(--display);font-weight:500;font-size:clamp(18px,1.6vw,21px);line-height:1.3;letter-spacing:-.01em;color:var(--ink)}
.sk-opts{margin-top:14px;display:grid;gap:8px}
.sk-opt{padding:11px 14px;border-radius:12px;border:1px solid var(--line-2);background:#141618;text-align:left;font-size:15px;line-height:1.4;color:var(--ink);transition:border-color .2s,background .2s,transform .15s}
.sk-opt:hover:not(:disabled){border-color:rgba(62,232,255,.6);background:#171b1d;transform:translateX(2px)}
.sk-opt:disabled{cursor:default}
.sk-opt.right{border-color:var(--ok);background:color-mix(in srgb,var(--ok) 10%,#141618)}
.sk-opt.right::after{content:' ✓';color:var(--ok);font-weight:700}
.sk-opt.wrong{border-color:color-mix(in srgb,var(--stop) 60%,transparent);background:color-mix(in srgb,var(--stop) 7%,#141618);color:var(--ink-3);text-decoration:line-through;text-decoration-color:var(--stop)}
.sk-q.is-full .sk-opt:not(.right):not(.wrong),.sk-q.is-ring .sk-opt:not(.right):not(.wrong){opacity:.4}
.sk-fb{display:none;margin-top:12px;padding:12px 14px;border-radius:12px;font-size:14.5px;line-height:1.6;color:var(--ink-2)}
.sk-fb.show{display:block;animation:kkIn .3s var(--ease) both}
.sk-fb.ok{border:1px solid color-mix(in srgb,var(--ok) 40%,transparent);background:color-mix(in srgb,var(--ok) 6%,transparent);color:var(--ink)}
.sk-fb.tip{border:1px solid rgba(62,232,255,.4);background:rgba(62,232,255,.05)}
.sk-fb.tip b{color:var(--cy)}
/* card full */
.sk-done{margin-top:clamp(40px,5vw,64px);display:grid;grid-template-columns:auto minmax(0,1fr);gap:clamp(20px,3vw,40px);align-items:center;padding:clamp(22px,3vw,36px);border-radius:var(--r-lg);border:1px solid rgba(62,232,255,.5);background:radial-gradient(120% 140% at 0 0,rgba(62,232,255,.12),transparent 55%),#0d0f10;scroll-margin-top:150px;animation:kkIn .5s var(--ease) both}
.sk-done[hidden]{display:none}
.sk-done-stamp{display:grid;place-items:center;align-content:center;width:150px;height:150px;border-radius:50%;border:5px double var(--cy);color:var(--cy);rotate:-12deg;animation:skStamp .55s cubic-bezier(.3,1.6,.5,1) both}
.sk-done-stamp b{font-family:var(--display);font-weight:700;font-size:40px;letter-spacing:.04em;text-transform:uppercase;line-height:1}
.sk-done-stamp i{margin-top:4px;font-style:normal;font-family:var(--mono);font-size:13px}
.sk-done .kick{color:var(--cy)}
.sk-done h2{margin-top:6px;font-family:var(--display);font-weight:600;font-size:clamp(30px,3.6vw,48px);line-height:1.05;letter-spacing:-.02em}
.sk-done p{margin-top:10px;font-size:16px;line-height:1.7;color:var(--ink-2);max-width:620px}
.sk-done-first b{color:var(--cy)}
.sk-done-act{margin-top:18px;display:flex;flex-wrap:wrap;gap:10px}
@media(max-width:860px){.sk-qs{grid-template-columns:minmax(0,1fr)}.sk-how{grid-template-columns:minmax(0,1fr)}}
@media(max-width:560px){.sk-bar-l{display:none}.sk-bar-in{gap:10px}.sk-row-r{display:none}.sk-done{grid-template-columns:minmax(0,1fr)}.sk-done-stamp{width:110px;height:110px}.sk-done-stamp b{font-size:30px}}
@media (prefers-reduced-motion:reduce){.skc-grid button::after,.sk-slot,.sk-done-stamp,.sk-q.flash{animation:none!important}}

/* ===== A1 VOCABULARY PACK · Das Wörterbuch (bespoke) ===== */
.pg-vk{--pg-accent:#3ee8ff;--pg-glow:rgba(62,232,255,.13);--cy:#3ee8ff;--paper:#f2efe6;--teal:#0b7285;--der:#34e07a;--die:#e98cff;--das:#ffb020;--der-p:#12813f;--die-p:#a4169a;--das-p:#9a5b00}
.pg-vk .phero h1 .big{font-size:clamp(40px,4.6vw,88px);line-height:1.02}
.pg-vk .phero h1 .big em{display:block;font-style:normal;color:var(--cy)}
.pg-vk .phero h1 .flap{font-size:clamp(20px,2.4vw,46px)}
.a-der{color:var(--der);font-weight:600}.a-die{color:var(--die);font-weight:600}.a-das{color:var(--das);font-weight:600}
.d-der,.d-die,.d-das{display:inline-block;width:10px;height:10px;border-radius:50%}
.d-der{background:var(--der)}.d-die{background:var(--die)}.d-das{background:var(--das)}
/* hero: the dictionary page */
.vk-book{position:relative;padding-right:34px}
.vk-book-page{position:relative;min-height:330px;padding:22px 24px 18px;border-radius:14px 4px 4px 14px;background:var(--paper);color:#172426;box-shadow:0 40px 100px -40px rgba(62,232,255,.35),0 20px 50px -30px rgba(0,0,0,.8),inset 10px 0 18px -14px rgba(0,0,0,.35);display:flex;flex-direction:column}
.vk-book-page::after{content:'';position:absolute;top:10px;bottom:10px;right:-7px;width:7px;border-radius:0 3px 3px 0;background:repeating-linear-gradient(180deg,#e5e0d2 0 2px,#d6d0bf 2px 3px)}
.vk-book-top{display:flex;justify-content:space-between;padding-bottom:10px;border-bottom:1.5px solid rgba(11,114,133,.35);font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#5b6d70}
.vk-book-top b{color:var(--teal)}
.vk-book-w{margin-top:26px;font-family:var(--display);font-weight:600;font-size:clamp(34px,3.6vw,54px);line-height:1.05;letter-spacing:-.02em;color:#101a1c;overflow-wrap:anywhere}
.vk-book-page .a-der{color:var(--der-p)}.vk-book-page .a-die{color:var(--die-p)}.vk-book-page .a-das{color:var(--das-p)}
.vk-book-pl{margin-top:8px;min-height:1.2em;font-family:var(--mono);font-size:13px;color:#5b6d70}
.vk-book-pl em,.vk-head-pl em,.vk-pl em{font-style:normal}
.vk-book-en{margin-top:12px;font-size:19px;color:#1f3033}
.vk-book-ex{margin-top:14px;padding-left:12px;border-left:3px solid var(--teal);font-style:italic;font-size:16px;color:#34494c}
.vk-book-foot{margin-top:auto;padding-top:18px;display:flex;justify-content:space-between;align-items:center;gap:10px}
.vk-book-foot a{font-family:var(--mono);font-size:11.5px;color:var(--teal);text-decoration:underline;text-underline-offset:3px}
.vk-book-nav{display:flex;gap:6px}
.vk-book-nav button{width:38px;height:38px;border-radius:50%;border:1.5px solid rgba(11,114,133,.5);color:var(--teal);font-size:16px;transition:background .2s,color .2s}
.vk-book-nav button:hover{background:var(--teal);color:#fff}
.vk-book-page[data-a="der"]{box-shadow:0 40px 100px -40px rgba(52,224,122,.3),0 20px 50px -30px rgba(0,0,0,.8),inset 10px 0 18px -14px rgba(0,0,0,.35)}
.vk-book-page.flip-r .vk-book-w,.vk-book-page.flip-r .vk-book-en,.vk-book-page.flip-r .vk-book-ex{animation:vkIn .35s var(--ease) both}
.vk-book-page.flip-l .vk-book-w,.vk-book-page.flip-l .vk-book-en,.vk-book-page.flip-l .vk-book-ex{animation:vkInL .35s var(--ease) both}
@keyframes vkIn{from{opacity:0;transform:translateX(14px)}to{opacity:1;transform:none}}
@keyframes vkInL{from{opacity:0;transform:translateX(-14px)}to{opacity:1;transform:none}}
.vk-thumbs{position:absolute;right:0;top:22px;list-style:none;margin:0;padding:0;display:grid;gap:3px}
.vk-thumbs li{width:26px;height:22px;border-radius:0 6px 6px 0;display:grid;place-items:center;font-family:var(--mono);font-size:9px;color:#03161a;background:var(--cy)}
.vk-thumbs li:nth-child(odd){background:#8ff2ff}
.vk-legend{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:14px;font-size:13px;color:var(--ink-2)}
.vk-legend span{display:inline-flex;align-items:center;gap:7px}
/* register bar */
.vk-reg{position:sticky;top:88px;z-index:40;background:rgba(5,5,5,.88);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-block:1px solid var(--line)}
.vk-reg-in{max-width:calc(1200px + 2 * var(--gutter));margin:0 auto;padding:8px var(--gutter);display:flex;align-items:center;gap:12px}
.vk-reg-parts{flex:none;display:flex;padding:3px;border-radius:999px;border:1px solid var(--line-2);background:#0b0c0d}
.vk-reg-parts button{padding:6px 12px;border-radius:999px;font-size:12.5px;color:var(--ink-3);white-space:nowrap;transition:background .2s,color .2s}
.vk-reg-parts button i{font-style:normal;font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;margin-right:4px}
.vk-reg-parts button[aria-pressed="true"]{background:var(--cy);color:#03161a}
.vk-reg-links{flex:1;min-width:0;display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;mask-image:linear-gradient(90deg,transparent,#000 14px,#000 calc(100% - 24px),transparent)}
.vk-reg-links::-webkit-scrollbar{display:none}
.vk-reg-links a{flex:none;padding:7px 12px;border-radius:999px;font-family:var(--mono);font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);border:1px solid transparent;transition:color .2s,border-color .2s}
.vk-reg-links a:hover{color:var(--ink)}
.vk-reg-links a.on{color:var(--cy);border-color:rgba(62,232,255,.45)}
.vk-reg-links a[hidden]{display:none}
.vk-reg-find{flex:none;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;border:1px solid var(--line-2);color:var(--ink-2);font-size:17px}
.vk-reg-find:hover{border-color:var(--cy);color:var(--cy)}
/* body + search */
.vk-body{max-width:calc(1100px + 2 * var(--gutter));margin:0 auto;padding:clamp(32px,5vw,60px) var(--gutter) 0}
.vk-find{padding:clamp(20px,3vw,30px);border-radius:var(--r-lg);border:1px solid rgba(62,232,255,.35);background:radial-gradient(120% 160% at 0 0,rgba(62,232,255,.1),transparent 55%),#0b0d0e;scroll-margin-top:160px}
.vk-find-l{display:block}
.vk-find-l .kick{color:var(--cy)}
.vk-find-l b{display:block;margin-top:4px;font-family:var(--display);font-weight:600;font-size:clamp(22px,2.4vw,30px);letter-spacing:-.02em}
.vk-find-f{position:relative;margin-top:14px}
.vk-find-i{position:absolute;left:18px;top:50%;transform:translateY(-50%);font-size:20px;color:var(--cy);pointer-events:none}
.vk-find-f input{width:100%;height:58px;padding:0 52px 0 50px;border-radius:14px;border:1px solid var(--line-2);background:#060708;color:var(--ink);font-size:17px;outline:none;transition:border-color .2s,box-shadow .2s}
.vk-find-f input:focus{border-color:var(--cy);box-shadow:0 0 0 4px rgba(62,232,255,.15)}
.vk-find-f input::-webkit-search-cancel-button{display:none}
.vk-find-f button{position:absolute;right:10px;top:50%;transform:translateY(-50%);width:36px;height:36px;border-radius:50%;background:#1a1d1f;color:var(--ink-2)}
.vk-find-s{margin-top:10px;min-height:1.4em;font-size:14px;color:var(--ink-2)}
.vk-find-s b{color:var(--cy)}
.vk-find-s.is-empty b{color:var(--caution)}
.vk-find-hint{color:var(--ink-3)}
.vk-find-hint i{font-style:normal;font-family:var(--mono);font-size:12.5px;color:var(--ink-2)}
.vs-hide{display:none!important}
.pg-vk mark{background:rgba(62,232,255,.3);color:inherit;border-radius:3px;padding:0 1px}
/* start here */
.vk-start{margin-top:clamp(40px,5vw,64px);scroll-margin-top:160px}
.vk-start-head .kick{color:var(--cy)}
.vk-start-head h2{margin-top:6px;font-family:var(--display);font-weight:600;font-size:clamp(30px,3.6vw,48px);line-height:1.05;letter-spacing:-.025em}
.vk-start-head p{margin-top:12px;max-width:760px;font-size:16.5px;line-height:1.7;color:var(--ink-2)}
.vk-start-grid{margin-top:22px;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:14px}
.vk-say-k{display:block;font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--cy)}
.vk-rule,.vk-method{padding:20px 22px;border-radius:var(--r-lg);border:1px solid var(--line-2);background:#0d0f10}
.vk-rule-t{margin-top:10px;font-size:15.5px;line-height:1.65;color:var(--ink-2)}
.vk-rule-t b{color:var(--ink)}
.vk-rule-demo{margin-top:14px;display:grid;gap:8px}
.vk-rule-demo span{padding:10px 14px;border-radius:10px;font-family:var(--display);font-size:18px}
.vk-rule-demo .no{border:1px dashed var(--line-2);color:var(--ink-3);text-decoration:line-through;text-decoration-color:var(--stop)}
.vk-rule-demo .yes{border:1px solid rgba(233,140,255,.5);background:rgba(233,140,255,.06);color:var(--ink)}
.vk-note{margin-top:10px;font-size:13px;color:var(--ink-3)}
.vk-method ol{list-style:none;margin:12px 0 0;padding:0;counter-reset:m;display:grid;gap:2px}
.vk-method li{counter-increment:m;display:grid;grid-template-columns:30px minmax(0,1fr);gap:10px;align-items:center;padding:8px 0;border-bottom:1px dashed var(--line);font-size:15px;color:var(--ink-2)}
.vk-method li:last-child{border-bottom:0}
.vk-method li::before{content:counter(m);display:grid;place-items:center;width:26px;height:26px;border-radius:7px;background:#16191b;font-family:var(--mono);font-size:12px;color:var(--cy)}
.vk-warn{margin-top:14px;padding:16px 18px;border-radius:var(--r);border:1px solid color-mix(in srgb,var(--caution) 45%,transparent);background:color-mix(in srgb,var(--caution) 5%,transparent);font-size:14.5px;line-height:1.65;color:var(--ink-2)}
.vk-warn b{color:var(--ink)}
.vk-warn p{margin-top:4px}
.vk-warn a,.vk-info a,.vk-next a,.vk-lead a,.vk-sos a,.vk-fine a,.acc-body a{color:var(--cy);text-decoration:underline;text-underline-offset:3px}
.vk-start-foot{margin-top:16px;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;font-size:14px;color:var(--ink-3)}
.vk-start-foot a{color:var(--cy)}
.vk-openall{padding:9px 16px;border-radius:999px;border:1px solid rgba(62,232,255,.5);font-size:13.5px;color:var(--cy);transition:background .2s,color .2s}
.vk-openall:hover,.vk-openall[aria-pressed="true"]{background:var(--cy);color:#03161a}
/* part bands */
.vk-part{margin-top:clamp(56px,7vw,96px);padding:clamp(22px,3vw,34px) 0;border-top:2px solid var(--cy);position:relative;scroll-margin-top:150px}
.vk-part-k{position:absolute;top:-14px;left:0;padding:4px 12px;border-radius:0 0 8px 8px;background:var(--cy);color:#03161a;font-family:var(--mono);font-size:11.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.vk-part-t{margin-top:8px;font-family:var(--display);font-weight:600;font-size:clamp(40px,5.4vw,80px);line-height:1;letter-spacing:-.035em}
.vk-part-t em{font-style:normal;font-size:.36em;letter-spacing:-.01em;color:var(--ink-3);vertical-align:middle}
.vk-part.is-two p{margin-top:16px;max-width:760px;font-size:16.5px;line-height:1.7;color:var(--ink-2)}
/* category sections */
.vk-cat{margin-top:clamp(44px,5.5vw,76px);scroll-margin-top:150px}
.vk-cat-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:16px;align-items:end;padding-bottom:14px;border-bottom:1px solid var(--line)}
.vk-cat-no{display:grid;place-items:center;min-width:60px;height:60px;padding:0 8px;border-radius:12px 4px 4px 12px;background:#0f1314;border:1px solid rgba(62,232,255,.3);border-right:4px solid var(--cy);font-family:var(--mono);font-weight:700;font-size:22px;color:var(--cy)}
.vk-cat-head .kick{color:var(--ink-3)}
.vk-cat-head h2{margin-top:4px;font-family:var(--display);font-weight:600;font-size:clamp(24px,2.7vw,36px);line-height:1.1;letter-spacing:-.02em}
.vk-cat-n{font-family:var(--mono);font-size:12px;letter-spacing:.06em;color:var(--ink-3);white-space:nowrap;padding-bottom:4px}
.vk-lead{margin-top:16px;max-width:780px;font-size:16px;line-height:1.7;color:var(--ink-2)}
.vk-lead strong{color:var(--ink)}
.vk-cat.is-hv .vk-cat-no{border-right-color:var(--caution);color:var(--caution);border-color:color-mix(in srgb,var(--caution) 35%,transparent)}
.vk-cat.is-bonus .vk-cat-no{background:var(--cy);color:#03161a}
/* headword cards */
.vk-heads{margin-top:18px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.vk-head{position:relative;padding:18px 18px 16px;border-radius:var(--r-lg);border:1px solid var(--line-2);background:#0d0f10;overflow:hidden}
.vk-head-tab{position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--cy)}
.vk-head[data-a="der"] .vk-head-tab{background:var(--der)}.vk-head[data-a="die"] .vk-head-tab{background:var(--die)}.vk-head[data-a="das"] .vk-head-tab{background:var(--das)}
.vk-head-w{font-family:var(--display);font-weight:600;font-size:clamp(22px,2.2vw,28px);line-height:1.1;letter-spacing:-.015em;overflow-wrap:anywhere}
.vk-head-pl{margin-top:4px;font-family:var(--mono);font-size:12px;color:var(--ink-3)}
.vk-head-en{margin-top:8px;font-size:15px;color:var(--ink-2)}
.vk-head-ex{margin-top:10px;padding-top:10px;border-top:1px dashed var(--line);font-style:italic;font-size:14.5px;color:var(--ink-2)}
/* drawers */
.vk-drawer{margin-top:14px;border-radius:var(--r-lg);border:1px solid var(--line-2);background:#0b0d0e;overflow:hidden}
.vk-drawer>summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:14px;padding:16px 20px;font-weight:600;font-size:15.5px;color:var(--ink);transition:background .2s}
.vk-drawer>summary::-webkit-details-marker{display:none}
.vk-drawer>summary:hover{background:#101315}
.vk-dr-t::before{content:'';display:inline-block;width:14px;height:10px;margin-right:12px;border-radius:2px;background:linear-gradient(var(--cy) 0 2px,transparent 2px 4px,var(--cy) 4px 6px,transparent 6px 8px,var(--cy) 8px)}
.vk-dr-pm{position:relative;flex:none;width:32px;height:32px;border-radius:50%;border:1px solid var(--line-2);transition:transform .3s var(--ease),background .2s}
.vk-dr-pm::before,.vk-dr-pm::after{content:'';position:absolute;left:50%;top:50%;width:11px;height:1.5px;margin:-.75px 0 0 -5.5px;background:var(--ink);transition:transform .3s var(--ease)}
.vk-dr-pm::after{transform:rotate(90deg)}
.vk-drawer[open]>summary{border-bottom:1px solid var(--line)}
.vk-drawer[open] .vk-dr-pm{background:var(--cy);border-color:var(--cy);transform:rotate(180deg)}
.vk-drawer[open] .vk-dr-pm::before,.vk-drawer[open] .vk-dr-pm::after{background:#03161a}
.vk-drawer[open] .vk-dr-pm::after{transform:rotate(0)}
.vk-drawer-in{padding:14px 20px 18px}
.vk-drawer[open] .vk-drawer-in{animation:vkDrop .35s var(--ease) both}
@keyframes vkDrop{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.vk-copy{float:right;margin:0 0 8px 12px;padding:6px 12px;border-radius:999px;border:1px solid var(--line-2);font-family:var(--mono);font-size:11px;color:var(--ink-3);transition:border-color .2s,color .2s}
.vk-copy:hover{border-color:var(--cy);color:var(--cy)}
.vk-copy.is-done{border-color:var(--ok);color:var(--ok)}
.vk-drawer.is-amt{border-color:color-mix(in srgb,var(--caution) 35%,transparent)}
/* dictionary list */
.vk-list{list-style:none;margin:0;padding:0;clear:both}
.vk-e{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,1.3fr);gap:6px 18px;align-items:baseline;padding:10px 0 10px 14px;border-bottom:1px solid var(--line);position:relative}
.vk-e:last-child{border-bottom:0}
.vk-e::before{content:'';position:absolute;left:0;top:14px;width:6px;height:6px;border-radius:50%;background:#2a3336}
.vk-e[data-a="der"]::before{background:var(--der)}.vk-e[data-a="die"]::before{background:var(--die)}.vk-e[data-a="das"]::before{background:var(--das)}
.vk-w{font-family:var(--display);font-weight:500;font-size:17px;color:var(--ink);overflow-wrap:anywhere}
.vk-en{font-size:15px;color:var(--ink-2)}
.vk-ex{font-style:italic;font-size:14.5px;color:var(--ink-3)}
.vk-pl{font-family:var(--mono);font-size:12.5px;color:var(--ink-3)}
.vk-pl i{font-style:normal;opacity:.6}
.is-wpe .vk-e{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) minmax(0,1.1fr)}
.vk-why{font-size:13.5px;color:var(--ink-3)}
.vk-why::before{content:'Why it matters · ';font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--caution)}
.vk-list.is-we .vk-e,.vk-adj .vk-e{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
/* phrases */
.is-ph .vk-e{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);padding:12px 0 12px 14px}
.is-ph .vk-e:has(.vk-ctx){grid-template-columns:minmax(0,1.25fr) minmax(0,1fr) 150px}
.is-ph .vk-w{font-size:17.5px}
.vk-ctx{justify-self:end;padding:3px 10px;border-radius:999px;border:1px solid var(--line-2);font-family:var(--mono);font-size:10.5px;letter-spacing:.04em;color:var(--ink-3);text-align:right}
.vk-list.is-flat{margin-top:14px;padding:6px 20px;border-radius:var(--r-lg);border:1px solid var(--line-2);background:#0b0d0e}
/* numbers / days / adjectives / question words */
.vk-sub-h{clear:both;margin:14px 0 8px;font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--cy)}
.vk-sub-h:first-of-type{margin-top:4px}
.vk-nums{display:grid;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:8px}
.vk-nums .is-ord .vk-en{font-family:var(--body,inherit);font-size:13px;font-weight:400;color:var(--ink-3)}
.vk-nums .vk-e,.vk-days .vk-e,.vk-adj .vk-e{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#0f1213}
.vk-nums .vk-e::before,.vk-days .vk-e::before,.vk-adj .vk-e::before,.vk-qw .vk-e::before,.vk-letters .vk-e::before,.vk-qis .vk-e::before,.vk-top .vk-e::before{display:none}
.vk-nums .vk-en{order:-1;font-family:var(--mono);font-size:20px;font-weight:700;color:var(--cy)}
.vk-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}
.vk-days .vk-e:nth-child(n+6){background:#131a1c;border-color:rgba(62,232,255,.25)}
.vk-days .vk-w{font-size:15px}
.vk-days .vk-en{font-size:12.5px}
.vk-adj{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
.vk-qw{margin-top:16px;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.vk-qw .vk-e{display:flex;flex-direction:column;gap:4px;padding:16px;border:1px solid var(--line-2);border-radius:var(--r);background:#0d0f10}
.vk-qw .vk-w{font-size:24px;font-weight:600;color:var(--cy)}
/* sentences, chips, info */
.vk-say,.vk-chips,.vk-talk{margin-top:14px;padding:16px 20px;border-radius:var(--r-lg);border:1px solid var(--line);background:linear-gradient(180deg,#0d1112,#0a0c0d)}
.vk-say ul,.vk-talk ul{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:8px}
.vk-s{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:4px 18px;align-items:baseline}
.vk-s-de{font-family:var(--display);font-weight:500;font-size:17px;color:var(--ink)}
.vk-s-en{font-size:14.5px;color:var(--ink-3)}
.vk-chips ul{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.vk-chip{display:inline-flex;align-items:baseline;gap:8px;padding:7px 12px;border-radius:999px;border:1px solid var(--line-2);background:#101314}
.vk-chip>b{font-family:var(--display);font-weight:500;font-size:15px;color:var(--ink)}
.vk-chip span{font-size:13px;color:var(--ink-3)}
.vk-info{margin-top:14px;padding:14px 18px;border-radius:var(--r);border:1px solid rgba(62,232,255,.3);background:rgba(62,232,255,.04);font-size:14.5px;line-height:1.65;color:var(--ink-2)}
.vk-info>b:first-child{color:var(--ink)}
.vk-next{margin-top:12px;font-size:14px;line-height:1.6;color:var(--ink-3)}
/* talk bubbles */
.vk-bub{display:flex;flex-direction:column;gap:2px;max-width:75%;padding:10px 14px;border-radius:14px 14px 14px 4px;background:#151a1c}
.vk-bub.you{margin-left:auto;border-radius:14px 14px 4px 14px;background:rgba(62,232,255,.12);border:1px solid rgba(62,232,255,.3)}
.vk-bub-who{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3)}
/* crib sheet (50 phrases) */
.vk-crib{margin-top:18px;border-radius:14px;background:var(--paper);color:#172426;box-shadow:0 30px 80px -40px rgba(62,232,255,.3);overflow:hidden}
.vk-crib-top{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 20px;border-bottom:2px solid var(--teal);font-family:var(--mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--teal)}
.vk-crib-top .vk-print{color:var(--teal);border-color:rgba(11,114,133,.45)}
.vk-crib-grid{padding:18px 20px 20px;columns:3 240px;column-gap:28px;column-rule:1px dashed rgba(11,114,133,.3)}
.vk-crib-g{break-inside:avoid;margin-bottom:16px}
.vk-crib-g h3{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#5b6d70;margin-bottom:6px}
.vk-crib-g ol{list-style:none;margin:0;padding:0}
.vk-crib-i{display:grid;grid-template-columns:26px minmax(0,1fr);gap:6px;padding:5px 0;border-bottom:1px solid rgba(11,114,133,.12);font-family:var(--display);font-size:15.5px;color:#172426}
.vk-crib-i i{font-style:normal;font-family:var(--mono);font-size:11px;color:var(--teal);padding-top:3px}
.vk-print{padding:6px 12px;border-radius:999px;border:1px solid var(--line-2);font-family:var(--mono);font-size:11px;letter-spacing:.04em;text-transform:none;color:var(--ink-2)}
/* checklist */
.vk-ck-bar{margin-top:18px;display:flex;align-items:center;gap:14px}
.vk-ck-track{flex:1;height:8px;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden}
.vk-ck-track i{display:block;height:100%;width:0;border-radius:99px;background:linear-gradient(90deg,#0e8aa1,var(--cy));transition:width .45s var(--ease)}
.vk-ck-bar b{font-family:var(--mono);font-size:14px;white-space:nowrap}
.vk-ck-grid{margin-top:16px;display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:12px;align-items:start}
.vk-ck-g:first-child{grid-row:span 2}
.vk-ck-g:first-child .vk-ck-l{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:10px}
.vk-ck-g{padding:16px;border-radius:var(--r-lg);border:1px solid var(--line-2);background:#0d0f10}
.vk-ck-g h3{display:flex;align-items:center;gap:8px;font-size:15px;margin-bottom:8px}
.vk-ck-g h3 em{margin-left:auto;font-style:normal;font-family:var(--mono);font-size:11px;color:var(--ink-3)}
.vk-ck-l{display:grid;gap:4px}
.vk-ck{display:grid;grid-template-columns:22px minmax(0,1fr);gap:10px;align-items:start;width:100%;padding:8px 6px;border-radius:9px;text-align:left;font-size:14.5px;line-height:1.45;color:var(--ink-2);transition:background .2s,color .2s}
.vk-ck:hover{background:#141719}
.vk-ck-b{position:relative;width:20px;height:20px;border-radius:6px;border:1.5px solid var(--line-2);transition:background .2s,border-color .2s}
.vk-ck[aria-pressed="true"]{color:var(--ink)}
.vk-ck[aria-pressed="true"] .vk-ck-b{background:var(--cy);border-color:var(--cy)}
.vk-ck[aria-pressed="true"] .vk-ck-b::after{content:'✓';position:absolute;inset:0;display:grid;place-items:center;font-size:12px;font-weight:700;color:#03161a}
.vk-ck-act{margin-top:12px;display:flex;flex-wrap:wrap;gap:8px}
.vk-ck-reset{padding:6px 12px;border-radius:999px;border:1px solid var(--line-2);font-family:var(--mono);font-size:11px;color:var(--ink-3)}
.vk-ck-reset:hover{border-color:var(--stop);color:var(--stop)}
/* part two specials */
.vk-sit{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.vk-sit li{padding:7px 14px;border-radius:999px;border:1px dashed rgba(62,232,255,.4);font-size:13.5px;color:var(--ink-2)}
.vk-top{list-style:none;margin:18px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;counter-reset:none}
.vk-top-i{display:grid;grid-template-columns:48px minmax(0,1fr);grid-template-rows:auto auto;gap:2px 14px;padding:16px 18px;border:1px solid var(--line-2);border-radius:var(--r-lg);background:#0d0f10}
.vk-top-i>i{grid-row:span 2;font-style:normal;font-family:var(--mono);font-weight:700;font-size:26px;color:var(--cy);line-height:1}
.vk-top-i .vk-w{font-size:20px;font-weight:600}
.vk-dusie{margin-top:18px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) minmax(0,1fr);align-items:stretch;gap:0}
.vk-ds-mid{align-self:center}
.vk-ds-side{padding:18px;border-radius:var(--r-lg);border:1px solid var(--line-2);background:#0d0f10;text-align:center}
.vk-ds-side b{display:block;font-family:var(--display);font-size:44px;font-weight:600;line-height:1}
.vk-ds-side span{display:block;margin-top:8px;font-size:13px;color:var(--ink-3)}
.vk-ds-side.is-sie b{color:var(--ink)}
.vk-ds-side.is-du{border-color:rgba(62,232,255,.45)}
.vk-ds-side.is-du b{color:var(--cy)}
.vk-ds-mid{position:relative;text-align:center;padding:0 10px}
.vk-ds-mid span{position:relative;z-index:1;display:inline-block;padding:6px 12px;border-radius:999px;background:#050505;border:1px solid var(--line-2);font-family:var(--display);font-size:14.5px;color:var(--ink)}
.vk-ds-mid i{position:absolute;left:0;right:0;top:50%;height:2px;background:linear-gradient(90deg,var(--line-2),var(--cy))}
.vk-ds-mid i::after{content:'';position:absolute;right:-2px;top:-5px;border:6px solid transparent;border-left-color:var(--cy)}
.vk-stages{clear:both;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.vk-stage{padding:14px;border-radius:var(--r);border:1px solid var(--line);background:#0f1213}
.vk-stage-n{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--cy);color:#03161a;font-family:var(--mono);font-weight:700;font-size:12px}
.vk-stage h3{margin:8px 0 4px;font-size:16px}
.vk-stage .vk-e,.vk-call .vk-e{grid-template-columns:minmax(0,1fr);gap:2px}
.vk-stage .vk-w,.vk-call .vk-w{font-size:16px}
.vk-call{margin-top:16px;border-radius:24px;border:1px solid var(--line-2);background:#0b0d0e;overflow:hidden}
.vk-call-top{display:flex;align-items:center;gap:10px;padding:12px 20px;border-bottom:1px solid var(--line);font-family:var(--mono);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3)}
.vk-call-dot{width:9px;height:9px;border-radius:50%;background:var(--ok);box-shadow:0 0 10px var(--ok);animation:blink 1.6s infinite}
.vk-call{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.vk-call-top{grid-column:1/-1}
.vk-call-s{padding:16px 18px;border-right:1px dashed var(--line)}
.vk-call-s:last-child{border-right:0}
.vk-call-k{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--cy)}
.vk-duo{margin-top:14px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}
.vk-say-this,.vk-not-this{padding:18px 20px;border-radius:var(--r-lg)}
.vk-say-this{border:1px solid color-mix(in srgb,var(--ok) 45%,transparent);background:color-mix(in srgb,var(--ok) 5%,transparent)}
.vk-say-this .vk-say-k{color:var(--ok)}
.vk-say-this .vk-s-de{display:block;margin-top:10px;font-size:20px;line-height:1.35}
.vk-say-this .vk-s-en{display:block;margin-top:6px}
.vk-not-this{border:1px solid color-mix(in srgb,var(--stop) 45%,transparent);background:color-mix(in srgb,var(--stop) 5%,transparent)}
.vk-not-this .vk-say-k{color:var(--stop)}
.vk-not-this .vk-s-de{display:block;margin-top:10px;font-size:20px;color:var(--ink-3)}
.vk-not-this s{text-decoration-color:var(--stop)}
.vk-not-this p:last-child{margin-top:8px;font-size:14px;line-height:1.6;color:var(--ink-2)}
.vk-sos{margin-top:16px;padding:18px 20px;border-radius:var(--r-lg);border:1.5px solid var(--stop);background:color-mix(in srgb,var(--stop) 6%,#0b0b0b)}
.vk-sos-k{font-family:var(--mono);font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--stop)}
.vk-sos>p{margin-top:8px;font-size:14.5px;line-height:1.6;color:var(--ink-2)}
.vk-sos .vk-list.is-sos{background:#0b0b0b;border-color:color-mix(in srgb,var(--stop) 35%,transparent)}
.vk-sos .vk-e::before{background:var(--stop)}
/* patterns */
.vk-pats{margin-top:18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.vk-pat{padding:18px 20px;border-radius:var(--r-lg);border:1px solid var(--line-2);background:#0d0f10}
.vk-pat-f{font-family:var(--display);font-size:21px;font-weight:600;color:var(--ink)}
.vk-slot{display:inline-block;margin-left:8px;padding:2px 10px;border-radius:8px;border:1.5px dashed var(--cy);font-family:var(--mono);font-size:13px;font-weight:400;color:var(--cy);vertical-align:middle}
.vk-pat ul{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:8px}
.vk-pat .vk-s{grid-template-columns:minmax(0,1fr)}
/* pronunciation + index */
.vk-letters{margin-top:18px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.vk-letters .vk-e{display:flex;flex-direction:column;gap:8px;padding:16px;border:1px solid var(--line-2);border-radius:var(--r-lg);background:#0d0f10}
.vk-letters .vk-w{font-size:40px;font-weight:600;line-height:1;color:var(--cy)}
.vk-letters .vk-en{font-size:14px;line-height:1.5}
.vk-qi-head{margin-top:16px;display:grid;grid-template-columns:minmax(0,1fr) 30px minmax(0,1.1fr);gap:10px;padding:0 14px 6px;font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)}
.vk-qi-head span:last-child{grid-column:3}
.vk-qis{border-radius:var(--r-lg);border:1px solid var(--line-2);background:#0b0d0e;overflow:hidden}
.vk-qi{grid-template-columns:minmax(0,1fr) 30px minmax(0,1.1fr);padding:12px 14px;transition:background .2s}
.vk-qi:hover{background:#101315}
.vk-qi .vk-en{color:var(--ink-2)}
.vk-qi-a{color:var(--cy);font-family:var(--mono)}
/* tip + quiz */
.vk-tip{margin-top:clamp(48px,6vw,80px);display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:14px;scroll-margin-top:150px}
.vk-tip-q{padding:clamp(20px,3vw,32px);border-radius:var(--r-lg);border:1px solid var(--line-2);background:#0d0f10}
.vk-tip-q .kick{color:var(--cy)}
.vk-tip-q h2{margin-top:6px;font-family:var(--display);font-size:clamp(24px,2.6vw,34px);font-weight:600}
.vk-tip-q>p{margin-top:12px;font-size:16px;line-height:1.7;color:var(--ink-2)}
.vk-flow{list-style:none;margin:16px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.vk-flow li{padding:7px 12px;border-radius:10px;background:#151a1c;font-family:var(--display);font-size:15px}
.vk-flow li.is-root{background:var(--cy);color:#03161a;font-weight:600}
.vk-flow li+li::before{content:'→ ';color:var(--cy)}
.vk-tip-by{display:block;margin-top:14px;font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3)}

.vk-quiz{display:flex;flex-direction:column;gap:10px;padding:clamp(20px,3vw,28px);border-radius:var(--r-lg);background:var(--paper);color:#172426;transition:transform .25s var(--ease)}
.vk-quiz:hover{transform:translateY(-3px) rotate(-.5deg)}
.vk-quiz .kick{color:var(--teal)}
.vk-quiz b{font-family:var(--display);font-size:21px;line-height:1.25}
.vk-quiz span:not(.kick):not(.vk-quiz-card){font-size:14.5px;color:#34494c}
.vk-quiz em{margin-top:auto;font-style:normal;font-weight:700;color:var(--teal)}
.vk-quiz-k{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:#5b6d70}
.vk-quiz-card{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:5px}
.vk-quiz-card i{aspect-ratio:1;border-radius:50%;border:1.5px dashed rgba(11,114,133,.5)}
.vk-quiz-card i:nth-child(-n+4){background:var(--teal);border-style:solid;border-color:var(--teal)}
/* sources + faq */
.vk-src{margin-top:16px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:start}
.vk-src-g{padding:14px;border-radius:var(--r-lg);border:1px solid var(--line-2);background:#0d0f10}
.vk-src-g h3{margin-bottom:6px;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--cy)}
.vk-src-g a{display:flex;justify-content:space-between;gap:10px;padding:9px 4px;border-bottom:1px solid var(--line);font-size:14.5px;color:var(--ink-2);transition:color .2s}
.vk-src-g a:last-child{border-bottom:0}
.vk-src-g a:hover{color:var(--cy)}
.vk-fine{margin-top:14px;font-size:13px;line-height:1.6;color:var(--ink-3)}
.vk-cat.is-faq .acc{margin-top:8px}
.vk-body.is-searching .vk-cat{margin-top:28px}
.vk-body.is-searching .vk-lead,.vk-body.is-searching .vk-info,.vk-body.is-searching .vk-next,.vk-body.is-searching .vk-warn,.vk-body.is-searching .vk-dusie,.vk-body.is-searching .vk-copy,.vk-body.is-searching .vk-fine,.vk-body.is-searching .vk-sos>p,.vk-body.is-searching .vk-not-this>p:last-child{display:none}
@media(max-width:980px){.vk-heads{grid-template-columns:minmax(0,1fr)}.vk-ck-grid,.vk-src{grid-template-columns:minmax(0,1fr)}.vk-ck-g:first-child{grid-row:auto}.vk-ck-g:first-child .vk-ck-l{grid-template-columns:minmax(0,1fr)}.vk-letters{grid-template-columns:repeat(2,minmax(0,1fr))}.vk-tip{grid-template-columns:minmax(0,1fr)}}
@media(max-width:760px){
 .vk-start-grid,.vk-top,.vk-pats,.vk-duo,.vk-stages,.vk-call{grid-template-columns:minmax(0,1fr)}
 .vk-call-s{border-right:0;border-bottom:1px dashed var(--line)}
 .vk-e,.is-wpe .vk-e,.is-ph .vk-e,.is-ph .vk-e:has(.vk-ctx){grid-template-columns:minmax(0,1fr) auto;gap:2px 12px}
 .vk-e .vk-en{grid-column:1}
 .vk-e .vk-ex,.vk-e .vk-why{grid-column:1/-1}
 .is-wpe .vk-w{grid-column:1/-1}
 .is-wpe .vk-en{grid-column:1;grid-row:2}
 .is-wpe .vk-pl{grid-column:2;grid-row:2;text-align:right}
 .vk-ctx{grid-column:1/-1;justify-self:start;margin-top:4px}
 .vk-s{grid-template-columns:minmax(0,1fr)}
 .vk-days{grid-template-columns:repeat(4,minmax(0,1fr))}
 .vk-nums{grid-template-columns:repeat(auto-fill,minmax(76px,1fr));gap:6px}
 .vk-nums .vk-e{padding:8px 10px}
 .vk-nums .vk-w{font-size:14px}
 .vk-nums .vk-en{font-size:17px}
 .vk-dusie{grid-template-columns:minmax(0,1fr);gap:10px}
 .vk-ds-mid i{display:none}
 .vk-qi,.vk-qi-head{grid-template-columns:minmax(0,1fr)}
 .vk-qi-head{display:none}
 .vk-qi-a{display:none}
 .vk-qi .vk-en{font-family:var(--mono);font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}
 .vk-bub{max-width:90%}
 .vk-cat-head{grid-template-columns:auto minmax(0,1fr)}
 .vk-cat-n{grid-column:2;padding:0}
 .vk-cat-no{min-width:48px;height:48px;font-size:18px}
}
@media(max-width:560px){.vk-reg-parts button i{display:none}.vk-reg-find{display:none}.vk-book{padding-right:28px}.vk-book-page{min-height:300px;padding:18px}.vk-thumbs li{width:22px;height:18px;font-size:8px}.vk-copy{float:none;display:block;margin:0 0 10px auto}.vk-drawer-in{padding:12px 14px 14px}.vk-drawer>summary{padding:14px}}
@media (prefers-reduced-motion:reduce){.vk-book-page *,.vk-drawer-in,.vk-call-dot{animation:none!important}}
@media print{
 .pg-vk .nav,.pg-vk .official,.pg-vk .phero,.vk-reg,.vk-find,.pg-vk .closer,.pg-vk footer,.vk-print,.vk-ck-reset,.vk-copy{display:none!important}
 .pg-vk .vk-cat:not(#phrases):not(#checklist),.pg-vk .vk-start,.pg-vk .vk-part,.pg-vk .vk-tip{display:none!important}
 .vk-crib{box-shadow:none}
 .pg-vk .vk-cat-head h2,.pg-vk .vk-ck-g h3,.pg-vk .vk-ck,.pg-vk .vk-ck-bar b{color:#111!important}
 .pg-vk .vk-lead{color:#333}
 .vk-ck-g{background:#fff;border-color:#bbb}
 .vk-ck-b{border-color:#555!important}
 .vk-ck[aria-pressed="true"] .vk-ck-b{background:#0b7285!important}
 .vk-ck-track{background:#ddd}
 .vk-cat-no{background:#fff}
}

/* ===== Offers: 1-1 counselling + Speaking Club (links go to What's coming) ===== */
.offer-line{margin-top:18px;font-size:14.5px;color:var(--ink-3)}
.offer-line a{color:var(--ink);font-weight:600;text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--pg-accent,var(--green))}
.offer-line a:hover{color:var(--pg-accent,var(--green))}
.lt-honest a{color:var(--ink);font-weight:600;text-decoration:underline;text-underline-offset:3px}
.community+.story-cta{margin-top:14px}
.cs-card{scroll-margin-top:120px}
.cs-card:target{border-color:rgba(0,255,106,.55);box-shadow:0 0 0 1px rgba(0,255,106,.35),0 30px 80px -40px rgba(0,255,106,.35)}

/* ===== WHAT'S COMING · Die Abfahrtstafel (bespoke) ===== */
.pg-cs{--pg-accent:#00ff6a;--pg-glow:rgba(0,255,106,.12);--dep:#ffd23f;--dep-bg:#0a0c08}
.pg-cs .phero h1 .big{font-size:clamp(40px,4.8vw,90px);line-height:1.02}
.pg-cs .phero h1 .big em{display:block;font-style:normal;color:var(--green)}
.pg-cs .phero-sub a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.pg-cs .phero-sub b{color:var(--ink)}
.dep{border-radius:14px;background:var(--dep-bg);border:1px solid #2a2c22;box-shadow:0 40px 100px -40px rgba(255,210,63,.25),inset 0 0 0 6px #121409;overflow:hidden;font-family:var(--mono)}
.dep-top{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;background:#14160c;border-bottom:1px solid #2a2c22;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--dep)}
.dep-clock{color:#8d8a6a}
.dep-head,.dep-row{display:grid;grid-template-columns:78px minmax(0,1fr) 56px;gap:12px;align-items:center;padding:10px 18px}
.dep-head{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#6f6c55;border-bottom:1px dashed #2a2c22}
.dep-row{border-bottom:1px solid #1c1e14;transition:background .2s}
.dep-row:last-child{border-bottom:0}
.dep-row:hover{background:#15170d}
.dep-st{font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#8d8a6a}
.dep-row.is-now .dep-st{color:var(--green);animation:blink 1.8s infinite}
.dep-sv b{display:block;font-family:var(--display);font-weight:600;font-size:17px;color:var(--dep)}
.dep-row.is-now .dep-sv b{color:#fff}
.dep-sv i{display:block;font-style:normal;font-size:11.5px;color:#8d8a6a}
.dep-row.is-now .dep-sv i{color:var(--green)}
.dep-gl{justify-self:end;display:grid;place-items:center;width:36px;height:36px;border-radius:8px;background:#1c1e14;font-size:16px;font-weight:700;color:#fff}
.dep-row.is-now .dep-gl{background:var(--green);color:#041008}
.cs-body{max-width:calc(1100px + 2 * var(--gutter));margin:0 auto;padding:clamp(28px,4vw,48px) var(--gutter) clamp(60px,8vw,110px)}
.cs-lane{display:flex;align-items:baseline;gap:14px;margin:clamp(28px,4vw,48px) 0 16px;padding-bottom:12px;border-bottom:1px solid var(--line)}
.cs-lane:first-child{margin-top:0}
.cs-lane-k{padding:4px 12px;border-radius:6px;background:#1c1e14;font-family:var(--mono);font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--dep)}
.cs-lane-k.is-now{background:var(--green);color:#041008}
.cs-lane-t{font-family:var(--display);font-weight:600;font-size:clamp(24px,2.6vw,34px);letter-spacing:-.02em}
.cs-live{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:0;margin-top:14px;border-radius:var(--r-lg);border:1px solid rgba(0,255,106,.35);background:#0b0d0c;overflow:hidden;scroll-margin-top:120px;transition:box-shadow .3s,border-color .3s}
.cs-live:target{border-color:var(--green);box-shadow:0 0 0 1px var(--green),0 30px 80px -40px rgba(0,255,106,.4)}
.cs-live-main{padding:clamp(20px,3vw,32px)}
.cs-badge-now{display:inline-block;padding:4px 10px;border-radius:999px;border:1px solid rgba(0,255,106,.5);font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--green)}
.cs-live h2{margin-top:12px;font-family:var(--display);font-weight:600;font-size:clamp(28px,3.2vw,42px);line-height:1.05;letter-spacing:-.025em}
.cs-live h2 em{font-style:normal;color:var(--ink-3);font-size:.6em}
.cs-what{margin-top:12px;font-size:17px;line-height:1.55;color:var(--ink)}
.cs-live-main>p:not(.cs-what):not(.cs-fine){margin-top:8px;font-size:15px;line-height:1.65;color:var(--ink-2)}
.cs-steps{list-style:none;margin:18px 0 0;padding:0;counter-reset:s;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.cs-steps li{counter-increment:s;padding:12px;border-radius:12px;border:1px solid var(--line-2);background:#101312}
.cs-steps li::before{content:counter(s);display:grid;place-items:center;width:24px;height:24px;margin-bottom:8px;border-radius:50%;background:var(--green);color:#041008;font-family:var(--mono);font-size:12px;font-weight:700}
.cs-steps b{display:block;font-size:14.5px}
.cs-steps span{display:block;margin-top:2px;font-size:12.5px;line-height:1.45;color:var(--ink-3)}
.cs-fine{margin-top:14px;font-size:13px;line-height:1.55;color:var(--ink-3)}
.cs-fine b{color:var(--ink-2)}
.cs-ticket{position:relative;display:flex;flex-direction:column;justify-content:center;gap:4px;padding:clamp(20px,3vw,32px);background:var(--paper,#f2efe6);color:#132016;border-left:2px dashed rgba(0,0,0,.25)}
.cs-ticket::before,.cs-ticket::after{content:'';position:absolute;left:-12px;width:22px;height:22px;border-radius:50%;background:#050505}
.cs-ticket::before{top:-11px}.cs-ticket::after{bottom:-11px}
.cs-ticket-k{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#5a6a5e}
.cs-ticket-p{font-family:var(--display);font-weight:700;font-size:clamp(44px,5vw,64px);line-height:1;letter-spacing:-.03em;color:#0a5a2a}
.cs-ticket-u{font-size:14px;color:#3d4d41}
.cs-ticket .btn{margin-top:16px;align-self:flex-start;background:#0b0d0c;color:#fff}
.cs-facts{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:6px}
.cs-facts li{display:grid;grid-template-columns:110px minmax(0,1fr);gap:12px;padding:9px 0;border-bottom:1px dashed var(--line);font-size:14.5px}
.cs-facts b{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--green);padding-top:3px}
.cs-facts span{color:var(--ink-2);line-height:1.5}
.cs-plans{display:flex;flex-direction:column;gap:8px;padding:clamp(20px,3vw,28px);background:#0f1311;border-left:1px solid var(--line)}
.cs-plan{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;gap:0 12px;padding:12px 14px;border-radius:12px;background:var(--paper,#f2efe6);color:#132016}
.cs-plan-n{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#5a6a5e}
.cs-plan b{grid-row:span 2;align-self:center;font-family:var(--display);font-size:26px;font-weight:700;color:#0a5a2a}
.cs-plan>span:not(.cs-plan-n){font-size:14px;font-weight:600}
.cs-plan i{grid-column:1;font-style:normal;font-size:12px;color:#5a6a5e}
.cs-plan.is-mid{outline:2px solid var(--green);outline-offset:2px}
.cs-plans .btn{margin-top:6px;justify-content:center}
.cs-later{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.cs-later.is-two{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:8px}
@media(max-width:900px){.cs-later.is-two{grid-template-columns:minmax(0,1fr)}}
.cs-soon h2 em{font-style:normal;font-weight:400;color:var(--ink-3)}
.cs-soon{display:flex;flex-direction:column;gap:8px;padding:20px;border-radius:var(--r-lg);border:1px solid var(--line-2);background:#0b0c0b;scroll-margin-top:120px}
.cs-soon:target{border-color:var(--dep)}
.cs-soon-top{display:flex;justify-content:space-between;align-items:center;font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase}
.cs-gl{color:var(--ink-3)}
.cs-status{padding:3px 8px;border-radius:5px;background:#1c1e14;color:var(--dep)}
.cs-soon h2{margin-top:6px;font-family:var(--display);font-weight:600;font-size:22px}
.cs-soon .cs-what{margin-top:0;font-size:15px;color:var(--ink-2)}
.cs-soon p:not(.cs-what){font-size:13.5px;line-height:1.55;color:var(--ink-3)}
.cs-price{margin-top:auto;padding-top:10px;font-family:var(--display);font-size:20px;font-weight:600;color:var(--dep)}
.cs-note{margin-top:clamp(36px,5vw,56px);padding:clamp(20px,3vw,28px);border-radius:var(--r-lg);border:1px dashed var(--line-2);text-align:center}
.cs-note p{max-width:720px;margin:0 auto;font-size:15px;line-height:1.7;color:var(--ink-2)}
.cs-note p a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.cs-note .hero-actions{justify-content:center;margin-top:18px}
@media(max-width:900px){.cs-live{grid-template-columns:minmax(0,1fr)}.cs-ticket{border-left:0;border-top:2px dashed rgba(0,0,0,.25)}.cs-ticket::before,.cs-ticket::after{display:none}.cs-plans{border-left:0;border-top:1px solid var(--line)}.cs-later{grid-template-columns:minmax(0,1fr)}}
@media(max-width:560px){.cs-steps{grid-template-columns:minmax(0,1fr)}.cs-facts li{grid-template-columns:minmax(0,1fr);gap:2px}.dep-head,.dep-row{grid-template-columns:58px minmax(0,1fr) 40px;padding:10px 12px}.dep-gl{width:30px;height:30px;font-size:14px}}
@media (prefers-reduced-motion:reduce){.dep-row.is-now .dep-st{animation:none}}

/* ===== CONTACT · Der Info-Schalter (bespoke) ===== */
.pg-ct{--pg-accent:#00ff6a;--pg-glow:rgba(0,255,106,.1);--info:#3d8bff}
.pg-ct .phero h1 .big{font-size:clamp(40px,4.8vw,90px);line-height:1.02}
.pg-ct .phero h1 .big em{display:block;font-style:normal;color:var(--green)}
.desk{border-radius:16px;border:1px solid var(--line-2);background:#0b0d0e;overflow:hidden;box-shadow:0 40px 100px -40px rgba(61,139,255,.3)}
.desk-sign{display:flex;align-items:center;gap:12px;padding:14px 18px;background:var(--info);color:#fff;font-family:var(--display);font-weight:600;font-size:20px}
.desk-i{display:grid;place-items:center;width:34px;height:34px;border-radius:8px;background:#fff;color:var(--info);font-family:Georgia,serif;font-style:italic;font-weight:700;font-size:22px}
.desk-wait{display:grid;grid-template-columns:auto auto;justify-content:start;align-items:baseline;gap:4px 12px;padding:18px;border-bottom:1px dashed var(--line)}
.desk-k{grid-column:1/-1;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)}
.desk-wait b{font-family:var(--mono);font-size:clamp(46px,5vw,64px);line-height:1;color:var(--green);text-shadow:0 0 18px rgba(0,255,106,.35)}
.desk-u{font-size:16px;color:var(--ink-2)}
.desk-mail{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:18px}
.desk-addr{font-family:var(--display);font-size:clamp(18px,1.8vw,22px);font-weight:600;color:var(--ink);overflow-wrap:anywhere}
.desk-addr:hover{color:var(--green)}
.desk-copy{padding:6px 12px;border-radius:999px;border:1px solid var(--line-2);font-family:var(--mono);font-size:11px;color:var(--ink-2)}
.desk-copy.is-done{border-color:var(--green);color:var(--green)}
.ct-body{max-width:calc(880px + 2 * var(--gutter));margin:0 auto;padding:clamp(28px,4vw,48px) var(--gutter) clamp(60px,8vw,110px)}
.ct-sec{display:grid;grid-template-columns:56px minmax(0,1fr);gap:0 18px;padding:clamp(22px,3vw,32px) 0;border-top:1px solid var(--line)}
.ct-sec>.kick{grid-row:span 10;padding-top:8px;font-family:var(--mono);font-size:13px;color:var(--green)}
.ct-sec h2{font-family:var(--display);font-weight:600;font-size:clamp(24px,2.6vw,32px);letter-spacing:-.02em}
.ct-sec>p{margin-top:8px;font-size:15.5px;line-height:1.7;color:var(--ink-2)}
.ct-sec>p a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.ct-routes{margin-top:16px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.ct-route{display:flex;flex-direction:column;gap:4px;padding:18px;border-radius:var(--r-lg);border:1px solid var(--line-2);background:#0d0f10;transition:border-color .2s,transform .2s}
.ct-route:hover{border-color:var(--green);transform:translateY(-2px)}
.ct-route-k{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)}
.ct-route b{font-family:var(--display);font-size:19px;overflow-wrap:anywhere}
.ct-route i{font-style:normal;font-size:13.5px;color:var(--green)}
.ct-route.is-wa i{color:#25d366}
.ct-card{margin-top:14px;border-radius:var(--r-lg);border:1px solid var(--line-2);background:#0d0f10}
.ct-card div{display:grid;grid-template-columns:130px minmax(0,1fr);gap:12px;padding:14px 18px;border-bottom:1px solid var(--line)}
.ct-card div:last-child{border-bottom:0}
.ct-card dt{font-family:var(--mono);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);padding-top:2px}
.ct-card dd{margin:0;font-size:15.5px;color:var(--ink)}
.ct-card a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.ct-links{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:8px}
.ct-links a{display:grid;grid-template-columns:minmax(0,auto) minmax(0,1fr) auto;align-items:baseline;gap:12px;padding:14px 18px;border-radius:12px;border:1px solid var(--line-2);background:#0d0f10;transition:border-color .2s}
.ct-links a:hover{border-color:var(--green)}
.ct-links b{font-size:16px}
.ct-links span{font-size:14px;color:var(--ink-3)}
.ct-links i{font-style:normal;color:var(--green)}
.ct-offers{margin-top:14px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.ct-offers a{display:flex;flex-direction:column;gap:4px;padding:16px 18px;border-radius:12px;border:1px dashed rgba(0,255,106,.45);background:rgba(0,255,106,.03);transition:background .2s}
.ct-offers a:hover{background:rgba(0,255,106,.08)}
.ct-offers span{font-size:14px;color:var(--ink-3)}
.ct-offers b{font-size:16px;color:var(--ink)}
@media(max-width:640px){.ct-sec{grid-template-columns:minmax(0,1fr)}.ct-sec>.kick{grid-row:auto;padding:0 0 4px}.ct-routes,.ct-offers{grid-template-columns:minmax(0,1fr)}.ct-card div{grid-template-columns:minmax(0,1fr);gap:2px}.ct-links a{grid-template-columns:minmax(0,1fr) auto}.ct-links span{grid-column:1;grid-row:2}}

/* ===== LEGAL (Impressum · Privacy · Terms) · shared document rail ===== */
.pg-lg{--pg-accent:#c9d4d8;--pg-glow:rgba(201,212,216,.08);--silver:#c9d4d8}
.flap.is-s i{color:#e6eef0}
.pg-lg .phero h1 .big{font-size:clamp(40px,4.6vw,86px);line-height:1.02}
.pg-lg .phero h1 .big em{display:block;font-style:normal;color:var(--silver);opacity:.7}
.lg-upd{display:inline-flex;align-items:center;gap:8px;margin-top:18px;padding:6px 12px;border-radius:999px;border:1px solid var(--line-2);font-family:var(--mono);font-size:12px;color:var(--ink-2)}
.lg-dot{width:7px;height:7px;border-radius:50%;background:var(--green)}
.lg{max-width:calc(1120px + 2 * var(--gutter));margin:0 auto;padding:clamp(28px,4vw,48px) var(--gutter) clamp(60px,8vw,110px);display:grid;grid-template-columns:240px minmax(0,1fr);gap:clamp(28px,4vw,56px);align-items:start}
.lg-toc{position:sticky;top:110px;display:flex;flex-direction:column;gap:2px;padding-left:14px;border-left:1px solid var(--line)}
.lg-toc-k{margin-bottom:10px;font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}
.lg-toc a{display:grid;grid-template-columns:28px minmax(0,1fr);gap:6px;padding:6px 0;font-size:13.5px;line-height:1.35;color:var(--ink-3);transition:color .2s}
.lg-toc a i{font-style:normal;font-family:var(--mono);font-size:11px;padding-top:2px}
.lg-toc a:hover,.lg-toc a.on{color:var(--ink)}
.lg-toc a.on i{color:var(--green)}
.lg-doc{max-width:760px;min-width:0}
.lg-note{margin-bottom:8px;padding:14px 18px;border-radius:var(--r);border:1px solid color-mix(in srgb,var(--caution) 45%,transparent);background:color-mix(in srgb,var(--caution) 5%,transparent)}
.lg-note b{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--caution)}
.lg-note p{margin-top:4px;font-size:14.5px;line-height:1.6;color:var(--ink-2)}
.lg-sec{padding:clamp(22px,3vw,30px) 0;border-bottom:1px solid var(--line);scroll-margin-top:110px}
.lg-sec h2{display:flex;align-items:baseline;gap:12px;font-family:var(--display);font-weight:600;font-size:clamp(22px,2.2vw,28px);line-height:1.2;letter-spacing:-.015em;scroll-margin-top:110px}
.lg-n{flex:none;display:inline-grid;place-items:center;min-width:34px;height:30px;padding:0 6px;border-radius:7px;border:1px solid var(--line-2);font-family:var(--mono);font-size:13px;color:var(--silver)}
.lg-sec p,.lg-sec li{font-size:15.5px;line-height:1.75;color:var(--ink-2)}
.lg-sec p{margin-top:12px}
.lg-sec h3{margin-top:20px;font-size:17px;color:var(--ink)}
.lg-sec strong,.lg-sec b{color:var(--ink)}
.lg-sec a{color:var(--ink);text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--line-2)}
.lg-sec a:hover{text-decoration-color:var(--green)}
.lg-sec ul{margin:12px 0 0;padding:0;list-style:none;display:grid;gap:8px}
.lg-sec ul li{position:relative;padding-left:22px}
.lg-sec ul li::before{content:'';position:absolute;left:4px;top:.72em;width:7px;height:7px;border-radius:2px;background:var(--silver);opacity:.6}
.lg-sec .table-scroll{margin-top:14px;overflow-x:auto;border-radius:12px;border:1px solid var(--line-2)}
.lg-sec table{width:100%;border-collapse:collapse;font-size:14.5px}
.lg-sec th,.lg-sec td{padding:11px 14px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line);color:var(--ink-2);line-height:1.55}
.lg-sec tr:last-child td,.lg-sec tr:last-child th{border-bottom:0}
.lg-sec th{font-family:var(--mono);font-size:11.5px;font-weight:400;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);background:#0d0f10}
.lg-sec td:first-child{color:var(--ink)}
.lg-sec td{overflow-wrap:anywhere}
/* impressum: the nameplate */
.plate{position:relative;padding:26px 30px 20px;border-radius:10px;background:linear-gradient(145deg,#e3e8ea,#b9c3c7 55%,#d7dee1);color:#1c2427;box-shadow:inset 0 1px 0 #fff,inset 0 -2px 0 rgba(0,0,0,.2),0 40px 90px -40px rgba(201,212,216,.35)}
.plate-rivet{position:absolute;width:10px;height:10px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#fff,#8c979b 60%,#5d676b)}
.plate-rivet.r1{top:10px;left:10px}.plate-rivet.r2{top:10px;right:10px}.plate-rivet.r3{bottom:10px;left:10px}.plate-rivet.r4{bottom:10px;right:10px}
.plate-top{display:flex;justify-content:space-between;padding-bottom:10px;border-bottom:2px solid #1c2427;font-family:var(--mono);font-size:11.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.plate dl{margin:10px 0 0}
.plate dl div{display:grid;grid-template-columns:130px minmax(0,1fr);gap:10px;padding:9px 0;border-bottom:1px solid rgba(28,36,39,.25)}
.plate dt{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#46535a;padding-top:3px}
.plate dd{margin:0;font-family:var(--display);font-size:17px;font-weight:600;line-height:1.35}
.plate a{color:#1c2427;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.plate-foot{display:flex;justify-content:space-between;margin-top:12px;font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:#46535a}
/* privacy: the luggage tag */
.bag{position:relative;padding:22px 24px;border-radius:14px 14px 14px 40px;background:var(--paper,#f2efe6);color:#1b2326;box-shadow:0 40px 90px -40px rgba(201,212,216,.3)}
.bag-top{display:flex;justify-content:space-between;align-items:center;padding-bottom:10px;border-bottom:1.5px dashed rgba(27,35,38,.3);font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#56646a}
.bag-hole{width:18px;height:18px;border-radius:50%;background:#050505;box-shadow:inset 0 0 0 3px #c8c3b4}
.bag ul{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:4px}
.bag li{padding:8px 0 8px 26px;position:relative;border-bottom:1px solid rgba(27,35,38,.1);font-size:15px}
.bag li::before{content:'✓';position:absolute;left:2px;top:8px;font-weight:700;color:#0a7a3a}
.bag li.no::before{content:'✕';color:#b3261e}
.bag li b{color:#0d1417}
.bag-link{display:inline-block;margin-top:12px;font-weight:600;color:#0b5566;text-decoration:underline;text-underline-offset:3px}
/* terms: the ticket stub */
.stub{position:relative;border-radius:14px;background:var(--paper,#f2efe6);color:#1b2326;box-shadow:0 40px 90px -40px rgba(201,212,216,.3);overflow:hidden}
.stub-top{display:flex;justify-content:space-between;padding:14px 20px;background:#1b2326;color:#e6eef0;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.stub ol{list-style:none;margin:0;padding:8px 20px 4px}
.stub li{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;gap:0 12px;padding:10px 0;border-bottom:1px solid rgba(27,35,38,.12)}
.stub li b{font-family:var(--display);font-size:17px}
.stub li span{grid-column:1;font-size:14px;color:#46535a}
.stub li a{grid-row:span 2;align-self:center;padding:3px 8px;border-radius:6px;border:1px solid rgba(27,35,38,.3);font-family:var(--mono);font-size:12px;color:#1b2326}
.stub-perf{height:0;margin:6px 0;border-top:2px dashed rgba(27,35,38,.25);position:relative}
.stub-perf::before,.stub-perf::after{content:'';position:absolute;top:-11px;width:20px;height:20px;border-radius:50%;background:#050505}
.stub-perf::before{left:-10px}.stub-perf::after{right:-10px}
.stub-foot{padding:10px 20px 16px;font-size:14px;color:#46535a}
.stub-foot a{font-weight:600;color:#0b5566;text-decoration:underline;text-underline-offset:3px}
.pg-trm .lg-sec:has(#nature){margin:8px 0;padding:clamp(20px,3vw,28px);border:1px solid rgba(201,212,216,.35);border-radius:var(--r-lg);background:#0d0f10}
@media(max-width:980px){.lg{grid-template-columns:minmax(0,1fr)}.lg-toc{position:static;flex-direction:row;flex-wrap:wrap;gap:6px;padding:0;border:0}.lg-toc-k{width:100%;margin-bottom:2px}.lg-toc a{display:inline-flex;gap:6px;padding:6px 10px;border-radius:999px;border:1px solid var(--line-2);font-size:12.5px}}
@media(max-width:560px){.plate{padding:22px 18px 16px}.plate dl div{grid-template-columns:minmax(0,1fr);gap:2px}.lg-sec h2{font-size:21px}.lg-sec th,.lg-sec td{padding:9px 10px;font-size:13.5px}}

/* ===== 404 · Zug fällt aus (bespoke) ===== */
.pg-404{--pg-accent:#ffd23f;--pg-glow:rgba(255,210,63,.1)}
.pg-404 .phero h1 .big{font-size:clamp(40px,4.8vw,90px);line-height:1.02}
.pg-404 .phero h1 .big em{font-style:normal;color:#ffd23f}
.nf-code{display:block;margin-bottom:10px;font-family:var(--mono);font-size:clamp(70px,10vw,150px);font-weight:700;line-height:.9;color:transparent;-webkit-text-stroke:1.5px rgba(255,210,63,.45)}
.nf-board{border-radius:14px;background:#0a0c08;border:1px solid #2a2c22;box-shadow:inset 0 0 0 6px #121409,0 40px 100px -40px rgba(255,210,63,.25);overflow:hidden}
.nf-top{display:flex;justify-content:space-between;padding:14px 18px;background:#14160c;font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#ffd23f}
.nf-blink{color:var(--stop);animation:blink 1.4s infinite}
.nf-msg{padding:16px 18px;border-bottom:1px dashed #2a2c22;font-size:15px;color:#cfcbb0}
.nf-msg b{color:#fff}
.nf-alt{list-style:none;margin:0;padding:6px 0}
.nf-alt a{display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 18px;transition:background .2s}
.nf-alt a:hover{background:#15170d}
.nf-gl{display:grid;place-items:center;width:32px;height:32px;border-radius:7px;background:#1c1e14;font-family:var(--mono);font-size:13px;font-weight:700;color:#fff}
.nf-alt b{font-family:var(--display);font-size:17px;color:#ffd23f}
.nf-alt i{font-style:normal;color:#8d8a6a}
@media (prefers-reduced-motion:reduce){.nf-blink{animation:none}}

/* Rev 38: date fields show the same focus ring as the rest of the site */
input[type="date"]:focus-visible,input[type="date"]:focus{outline:2px solid var(--green);outline-offset:2px}

/* ==========================================================================
   Rev 38 · legibility and touch targets (shared by every page)
   ========================================================================== */
/* WCAG 2.2: every link or button is at least 24 px tall */
.crumbs a{padding-block:4px;margin-block:-4px}
.g-src a,.acc-body a.vlink,.bp-stub a,.ka-foot a,.metro-foot a,.pz-label a,.rd-way a,.tm-foot a,.rung-link,.cnote a{min-height:24px;display:inline-flex;align-items:center}
.ctoggle{min-height:24px}
.rd-sheet-top .rd-clear{min-height:24px;min-width:24px;padding-inline:6px}
/* phones: no information-carrying text below 11 px */
@media(max-width:600px){
 .rb-row .s,.vlink small,.course dl dt,.wc-note span,.ab-key span,.ab-col button,
 .tk-grp,.tk-list .tk-grp,.tk-grp span,.rd-tk .tk-grp span,
 .ap-cv-photo span,.ap-mail-att b,.ap-mail-row span,.ap-paper .kick,.ap-stamp,.ap-wait-bar span,.ap-col .kick b,.ap-sheet th i,.ap-sheet td.rn,
 .bf-cols span i,.bf-field label,.bb-add label span,.go small,
 .claim-head span,.el-form-tab,.el-gap-hole span,.el-gap-min span,.el-min span,
 .ar-lane,.ar-lanes .ar-lane,.itin-meta .tag,.ka-live,.kal-live,.kb-plus,.metro-live,
 .kk-ct,.kk-tab,.kk-lines dt,.mp-top .kick,.mp-state,.vq-badge,.pack-foot span,.pb-y,
 .pf-fl,.pf-rec span,.plate-foot span,.pr-n,.ps-foot span,.ps-head span,.pz-ready,.pz-v,
 .rb-head span,.rd-vt-sign span,.rung-meta .tag,.sheet-head .kick,.skc-first,.skc-key,.skc-brand,
 .trade-beruf,.vq-months i,.story-tag,.pz-tag,.vq-tag,.vk-bub-who,.vk-ctx,
 .kal-legend b,.kal-legend i,.kb-tk button em,.ltag-meta em,.ltag-meta i,.gate .lv small,.indep,
 .rd-sheet-scroll th,.skc-grid button,.skc-grid button span,.tm-stack button span,.ak-rows button span,.ak-p,.ak-s,
 .vq-no small,.ar-days li small,.kb-date i{font-size:11px}
}

/* ==========================================================================
   Rev 39 · Study polish
   ========================================================================== */
/* Route cards on wide screens: the text keeps its reading width on the left, and the card's
   links stand on the right like a ticket stub, instead of leaving half the card empty */
@media(min-width:1100px){
  .itin-body:has(>.itin-links){display:grid;grid-template-columns:minmax(0,1fr) minmax(244px,284px);column-gap:clamp(28px,3vw,56px);align-items:start}
  .itin-body:has(>.itin-links)>*{grid-column:1}
  .itin-body p{max-width:none}
  .itin-body:has(>.itin-links)>.itin-links{grid-column:2;grid-row:1/span 8;align-self:stretch;flex-direction:column;align-items:flex-start;justify-content:center;gap:14px;margin-top:0;padding-left:clamp(20px,2vw,28px);border-left:1px dashed var(--line-2)}
}
/* Hero board at in-between widths (two-column hero, narrow board, 961–1280 px): the "what" text wraps
   onto a second line instead of being cut off. Phones keep their own three-column board. */
.rboard{container-type:inline-size}
@media(min-width:561px){
  @container (max-width:500px){
    .rb-head,.rb-row{grid-template-columns:30px minmax(0,.85fr) minmax(0,1fr) 88px;gap:10px;padding:0 16px}
    .rb-row{height:auto;min-height:48px;padding-block:7px}
    .rb-row .w{white-space:normal;overflow:visible;line-height:1.35;font-size:11.5px}
    .rb-row .d{font-size:12.5px;letter-spacing:.04em}
  }
  /* narrower still (about 980–1080 px): the same three columns as on phones; every stop's card below has the detail */
  @container (max-width:440px){
    .rb-head,.rb-row{grid-template-columns:30px minmax(0,1fr) 96px}
    .rb-head .w,.rb-row .w{display:none}
    .rboard-top{flex-wrap:wrap}
  }
}
/* Shared header (every page): between 961 and about 990 px the six menu links and the "Free German test"
   button didn't fit, so "Learn German" broke onto two lines and the button ran off the screen */
.nav-links a{white-space:nowrap}
@media(min-width:961px) and (max-width:1100px){
  .nav-links a{padding-inline:8px;font-size:13.5px}
  .nav-links a[aria-current="page"]::after,.nav-links a.in-section::after{left:8px;right:8px}
}
/* Phones: the video links in the route stack (picture above, text below) instead of squeezing the text into a narrow strip */
@media(max-width:520px){
  .itin-body .vlink{grid-template-columns:minmax(0,1fr);gap:10px;padding:8px 8px 12px}
  .itin-body .vlink>span:last-child{padding:0 4px}
}
/* ==========================================================================
   Rev 44 · Space Mono tidy (shared by every page): boxes where the site's typewriter font, Space Mono, didn't fit its
   text (labels cut off or overlapping, single words on their own line). Nothing else changes.
   ========================================================================== */
/* APS · route cards: "in India", "(any board)", "(Master's applicants)" stay together instead of splitting next to the stamp */
.pz-route small{white-space:nowrap}
/* A1 Pack · top 10 on phones: number on the left, phrase and translation on the right (as on desktop) */
@media(max-width:760px){
 .vk-top .vk-e.vk-top-i{grid-template-columns:48px minmax(0,1fr)}
 .vk-top .vk-top-i .vk-en{grid-column:2}
}
/* A1 Pack · crib sheet header: the print button keeps its label on one line */
.vk-crib-top{flex-wrap:wrap}
.vk-print{white-space:nowrap}
/* Checklists · reset buttons keep their label on one line */
.tk-reset{white-space:nowrap}
/* Ausbildung Roadmap · metro card: the badge and "Linie A" stay on one line (on phones the badge moves under the title); in a narrow card (the hero on laptops) the station names get the room
   they need: smaller names, or below 470 px the vertical line that phones already use. Phones keep their own rules. */
.metro{container-type:inline-size}
.metro-live,.metro-top .kick b{white-space:nowrap}
@media(max-width:400px){.metro-top{flex-wrap:wrap}}
@media(min-width:561px){
 @container (max-width:561px){
   .metro-map{padding-left:14px;padding-right:14px}
   .metro-rail{left:calc(14px + (100% - 28px) / 14);right:calc(14px + (100% - 28px) / 14)}
   .metro-train{left:calc(14px + (100% - 28px) / 14 + (100% - 28px) * 6 / 7 * var(--p))}
   .metro-stops b{font-size:11px;letter-spacing:0}
 }
 @container (max-width:470px){
   .metro-map{padding:18px 18px 18px 56px}
   .metro-rail{left:31px;right:auto;top:30px;bottom:30px;width:6px;height:auto}
   .metro-done{width:auto;right:0;height:calc(var(--p) * 100%);bottom:auto}
   .metro-train{left:34px;top:calc(18px + (100% - 36px) * 6 / 7 * var(--p) + (100% - 36px) / 14 - 17px);transition:top .8s var(--ease)}
   .metro-stops{grid-template-columns:minmax(0,1fr);gap:4px}
   .metro-stops a{flex-direction:row;text-align:left;gap:12px;min-height:40px;position:relative}
   .metro-stops i{position:absolute;left:-34px;margin:0}
   .metro-stops b{margin:0;font-size:14px;letter-spacing:.02em}
 }
}
/* First Week and University Application · counters stay on one line (on narrow phones the board's hint moves under it) */
.ak-count,.bb-foot span:first-child{white-space:nowrap}
.bb-foot{flex-wrap:wrap}
/* Visa · document folder: every tab is wide enough for its full label */
.tm-stack button span{--tw:min(100%,max(52%,220px));width:var(--tw);left:calc((100% - var(--tw)) * var(--i) / 13)}
@media(max-width:560px){.tm-stack button span{--tw:min(100%,max(64%,220px))}}
/* First Week · calendar: the Move-in / Deadline labels fit inside their day (tighter letters below 980 px); below 900 px
   there is no room for them, so they're hidden as on phones */
@media(max-width:979px){.ar-days em{letter-spacing:0}}
@media(max-width:899px){.ar-days li{padding-bottom:8px}.ar-days em{display:none}}
/* Profession Finder · in a narrow card index (the hero on laptops, and phones) the drawers use their compact labels, the
   count sits clear of the label, and on the smallest phones the drawers go two to a row */
.kartei{container-type:inline-size}
@container (max-width:530px){
 .ka-lbl i{display:none}.ka-cab{gap:7px;padding:12px}.ka-dr{padding:12px 6px 10px;gap:8px}.ka-lbl{font-size:9.5px;padding:3px 6px;gap:4px;letter-spacing:0}.ka-dr b{right:5px;top:2px;font-size:9.5px;line-height:1}
}
@container (max-width:380px){.ka-dr{padding-left:4px;padding-right:4px}.ka-lbl{padding:3px 4px}}
@container (max-width:300px){.ka-cab{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* Learn German · level tags: two even lines instead of a single word on its own */
.rung-meta .tag{text-wrap:balance}
/* Pre-Departure · pass: "Pre-departure pass" no longer breaks at its hyphen, the note moves under the title when there's
   no room beside it, and in a narrow pass (the hero on laptops) the date gets its own row so Countdown and Status fit */
.bp-top{flex-wrap:wrap}
.bp-top .kick b{white-space:nowrap}
.bp-main{container-type:inline-size}
@container (max-width:360px){.bp-fields{grid-template-columns:1fr 1fr}.bp-date{grid-column:1/-1}}
/* Home · on phones the label and title of a card stay clear of its round stamp (stamp: 18 px from the edge, 84 px wide;
   card padding 24 px; plus 10 px air). Wider screens already have the room. */
@media(max-width:419px){.bcard:not(.bcard-big)>.stamp~.kick,.bcard:not(.bcard-big)>.stamp~h3{padding-right:88px}}
/* University Application · sheet illustration: column headers fit */
.bf-sheet>div{grid-template-columns:1.24fr 1.02fr 1.13fr .81fr .81fr}
.bf-sheet span{padding:7px 4px;letter-spacing:.02em}
@media(max-width:380px){.bf-sheet span{font-size:8px;letter-spacing:0}}
/* University Application · "Translation" fits inside its tile */
.bf-tr-docs span{width:100px}
/* Learn German, Essentials, Ausbildung, Resources, Eligibility, Roadmap, Application · small footer lines: two even lines instead of one word on its own */
.spass-foot span:first-child,.pack-foot span:first-child,.ps-foot span:first-child,.claim-foot span:first-child,.el-ready-foot span,.rd-ticket-foot span,.ap-pre-foot span{text-wrap:balance}
/* Phones · nothing wider than the screen (found while checking 320–430 px):
   - Study and Ausbildung "What you need" tabs share the full width instead of running past the edge (Study from 360 px
     down, Ausbildung from 340 px down, so the page could be dragged sideways) or breaking "German level" onto two lines
   - below 360 px, the Impressum heading "Verbraucherstreitbeilegung" and the Roadmap word "Wohnungsgeberbestätigung"
     get a little more room, and the Eligibility traffic-light note stays on two lines */
@media(max-width:430px){
 .blk-head>div:has(>.seg[aria-label="What you need"]){width:100%}
 .seg[aria-label="What you need"]{display:flex;width:100%}
 .seg[aria-label="What you need"] button{flex:1 1 auto;padding:0 8px;white-space:nowrap}
}
@media(max-width:359px){.seg[aria-label="What you need"] button{padding:0 6px;font-size:12.5px}}
@media(max-width:359px){
 .am-foot{letter-spacing:.02em}
 .lg-sec h2{font-size:18px;gap:8px}
 .rd-after li{padding:14px 12px 14px 48px}.rd-after li::before{left:10px}.rd-after p{font-size:13.5px}
}

/* ===== WIDE BODY · Germany Timeline Planner (body aligned with hero + footer) ===== */
.pg-kal .kal-body{max-width:var(--max)}
@media(min-width:1180px){
 .pg-kal .kb{display:grid;grid-template-columns:minmax(260px,.3fr) minmax(0,1fr);column-gap:clamp(40px,5vw,110px);align-items:start}
 .pg-kal .kb>*{grid-column:2;min-width:0}
 .pg-kal .kb>.kb-head{grid-column:1;grid-row:1 / span 40;position:sticky;top:150px;margin-bottom:0;grid-template-columns:minmax(0,1fr);align-items:start;gap:14px}
 .pg-kal .kb>.kb-head h2{font-size:clamp(26px,2.2vw,40px)}
 .pg-kal .kb>.kb-advice{grid-column:1 / -1}
 .pg-kal .kb>p,.pg-kal .kb>.kb-note,.pg-kal .kb>.kb-hint,.pg-kal .kb-plan,.pg-kal .kb-mine{max-width:none}
 .pg-kal .kb>p{max-width:78ch}
 .pg-kal .kb>:first-child:not(.kb-head),.pg-kal .kb>.kb-head+*{margin-top:0}
 .pg-kal .kb-mist{grid-template-columns:repeat(3,minmax(0,1fr))}
 .pg-kal .kb-order{grid-template-columns:repeat(4,minmax(0,1fr))}
 .pg-kal .kb-arrive .kb-order{grid-template-columns:repeat(2,minmax(0,1fr))}
 .pg-kal .kb-src,.pg-kal .g-src{grid-template-columns:repeat(3,minmax(0,1fr))}
 .pg-kal #faq .acc{max-width:1100px}
 .pg-kal .kb-tk{grid-template-columns:repeat(2,minmax(0,1fr))}
 .pg-kal .kb-tk button:nth-child(odd){border-right:1px solid rgba(255,255,255,.05)}
}

/* ===== WIDE BODY · APS Checklist (body aligned with hero + footer) ===== */
.pg-aps2 .ap2-body{max-width:var(--max)}
@media(min-width:1180px){
 .pg-aps2 .pz{display:grid;grid-template-columns:minmax(260px,.3fr) minmax(0,1fr);column-gap:clamp(40px,5vw,110px);align-items:start}
 .pg-aps2 .pz>*{grid-column:2;min-width:0}
 .pg-aps2 .pz>.pz-head{grid-column:1;grid-row:1 / span 40;position:sticky;top:150px;margin-bottom:0;grid-template-columns:minmax(0,1fr);align-items:start;gap:14px}
 .pg-aps2 .pz>.pz-head h2{font-size:clamp(26px,2.2vw,40px)}
 .pg-aps2 .pz>.pz-head+*{margin-top:0}
 .pg-aps2 .pz>p{max-width:78ch}
 .pg-aps2 .pz>.pz-advice{grid-column:1 / -1}
 .pg-aps2 #faq .acc{max-width:1100px}

 .pg-aps2 .pz-mist{grid-template-columns:repeat(3,minmax(0,1fr))}
 .pg-aps2 .pz-docs{grid-template-columns:repeat(3,minmax(0,1fr))}
 .pg-aps2 .pz-docs li:last-child:nth-child(odd){grid-column:auto}
 .pg-aps2 .pz-routes{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* ===== WIDE BODY · University Application Checklist (body aligned with hero + footer) ===== */
.pg-bew .bw2-body{max-width:var(--max)}
@media(min-width:1180px){
 .pg-bew .bf{display:grid;grid-template-columns:minmax(260px,.3fr) minmax(0,1fr);column-gap:clamp(40px,5vw,110px);align-items:start}
 .pg-bew .bf>*{grid-column:2;min-width:0}
 .pg-bew .bf>.bf-head{grid-column:1;grid-row:1 / span 40;position:sticky;top:150px;margin-bottom:0;grid-template-columns:minmax(0,1fr);align-items:start;gap:14px}
 .pg-bew .bf>.bf-head h2{font-size:clamp(26px,2.2vw,40px)}
 .pg-bew .bf>.bf-head+*{margin-top:0}
 .pg-bew .bf>p{max-width:78ch}
 .pg-bew .bf>.bf-advice{grid-column:1 / -1}
 .pg-bew #faq .acc{max-width:1100px}

 .pg-bew .bf>.bf-head{padding-bottom:14px}
 .pg-bew .bf-form{grid-template-columns:repeat(6,minmax(0,1fr))}
 .pg-bew .bf-field{grid-column:span 2}
 .pg-bew .bf-field:nth-last-child(-n+2){grid-column:span 3}
 .pg-bew .bf-no{justify-self:start}
 .pg-bew .bf-mist{grid-template-columns:repeat(3,minmax(0,1fr))}
}

/* ===== WIDE BODY · Student Visa Checklist (body aligned with hero + footer) ===== */
.pg-vis .vs-body{max-width:var(--max)}
@media(min-width:1180px){
 .pg-vis .vq{display:grid;grid-template-columns:minmax(260px,.3fr) minmax(0,1fr);column-gap:clamp(40px,5vw,110px);align-items:start}
 .pg-vis .vq>*{grid-column:2;min-width:0}
 .pg-vis .vq>.vq-head{grid-column:1;grid-row:1 / span 40;position:sticky;top:150px;margin-bottom:0;grid-template-columns:minmax(0,1fr);align-items:start;gap:14px}
 .pg-vis .vq>.vq-head h2{font-size:clamp(26px,2.2vw,40px)}
 .pg-vis .vq>.vq-head+*{margin-top:0}
 .pg-vis .vq>p{max-width:78ch}
 .pg-vis .vq>.vq-advice{grid-column:1 / -1}
 .pg-vis #faq .acc{max-width:1100px}
 .pg-vis .vq-no{justify-self:start}
}

/* ===== WIDE BODY · Pre-Departure Checklist (body aligned with hero + footer) ===== */
.pg-abf .ab-body{max-width:var(--max)}
@media(min-width:1180px){
 .pg-abf .gt{display:grid;grid-template-columns:minmax(260px,.3fr) minmax(0,1fr);column-gap:clamp(40px,5vw,110px);align-items:start}
 .pg-abf .gt>*{grid-column:2;min-width:0}
 .pg-abf .gt>.gt-sign{grid-column:1;grid-row:1 / span 40;position:sticky;top:150px;margin-bottom:0;grid-template-columns:minmax(0,1fr);align-items:start;gap:14px}
 .pg-abf .gt>.gt-sign h2{font-size:clamp(26px,2.2vw,40px)}
 .pg-abf .gt>.gt-sign+*{margin-top:0}
 .pg-abf .gt>p{max-width:78ch}
 .pg-abf .gt>.gt-advice{grid-column:1 / -1}
 .pg-abf .gt>.gt-sign{grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:0}
 .pg-abf .gt>.gt-sign h2{font-size:clamp(20px,1.5vw,28px);hyphens:auto;-webkit-hyphens:auto;overflow-wrap:break-word}
}

/* ===== WIDE BODY · First Week in Germany Checklist (body aligned with hero + footer) ===== */
.pg-ank .ak-body{max-width:var(--max)}
@media(min-width:1180px){
 .pg-ank .ar{display:grid;grid-template-columns:minmax(260px,.3fr) minmax(0,1fr);column-gap:clamp(40px,5vw,110px);align-items:start}
 .pg-ank .ar>*{grid-column:2;min-width:0}
 .pg-ank .ar>.ar-head{grid-column:1;grid-row:1 / span 40;position:sticky;top:150px;margin-bottom:0;grid-template-columns:minmax(0,1fr);align-items:start;gap:14px}
 .pg-ank .ar>.ar-head h2{font-size:clamp(26px,2.2vw,40px)}
 .pg-ank .ar>.ar-head+*{margin-top:0}
 .pg-ank .ar>p{max-width:78ch}
 .pg-ank .ar>.ar-advice{grid-column:1 / -1}
 .pg-ank .ar>.ar-head{padding-bottom:14px}
 .pg-ank .ar-lane{justify-self:start}
 .pg-ank .ar-mist{grid-template-columns:repeat(3,minmax(0,1fr))}
}

/* ===== WIDE BODY · Ausbildung Roadmap (body aligned with hero + footer) ===== */
.pg-road .rroute{max-width:var(--max)}
@media(min-width:1180px){
 .pg-road .stop{display:grid;grid-template-columns:minmax(260px,.3fr) minmax(0,1fr);column-gap:clamp(40px,5vw,110px);align-items:start}
 .pg-road .stop>*{grid-column:2;min-width:0}
 .pg-road .stop>.stop-sign{grid-column:1;grid-row:1 / span 40;position:sticky;top:150px;margin-bottom:0;grid-template-columns:minmax(0,1fr);align-items:start;gap:14px}
 .pg-road .stop>.stop-sign h2{font-size:clamp(26px,2.2vw,40px)}
 .pg-road .stop>.stop-sign+*{margin-top:0}
 .pg-road .stop>p{max-width:78ch}
 
 .pg-road .stop>.stop-sign{gap:18px;align-items:center;top:168px}
 .pg-road .stop>.stop-sign>div{flex:1}
 .pg-road .rd-why{grid-template-columns:repeat(3,minmax(0,1fr))}
 .pg-road .g-src{grid-template-columns:repeat(3,minmax(0,1fr))}
}
/* Roadmap · B1 or B2 level cards (were unstyled) */
.pg-road .rd-levels{margin-top:14px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.pg-road .rd-lv{padding:18px;border-radius:var(--r);border:1px solid var(--line);background:rgba(255,255,255,.02)}
.pg-road .rd-lv.hi{border-color:rgba(255,210,63,.45);background:rgba(255,210,63,.05)}
.pg-road .rd-lv-meter{display:flex;gap:4px;margin-bottom:12px}
.pg-road .rd-lv-meter i{width:28px;height:8px;border-radius:99px;background:rgba(255,255,255,.1)}
.pg-road .rd-lv-meter i.on{background:var(--am)}
.pg-road .rd-lv b{display:block;font-size:16px;color:var(--ink)}
.pg-road .rd-lv p{margin-top:6px;font-size:14.5px;line-height:1.6;color:var(--ink-2)}
@media(max-width:640px){.pg-road .rd-levels{grid-template-columns:minmax(0,1fr)}}

/* ===== WIDE BODY · Ausbildung Eligibility Checklist (body aligned with hero + footer) ===== */
.pg-elig .report{max-width:var(--max)}
@media(min-width:1180px){
 .pg-elig .ck{display:grid;grid-template-columns:minmax(260px,.3fr) minmax(0,1fr);column-gap:clamp(40px,5vw,110px);align-items:start}
 .pg-elig .ck>*{grid-column:2;min-width:0}
 .pg-elig .ck>.ck-tag{grid-column:1;grid-row:1 / span 40;position:sticky;top:150px;margin-bottom:0;grid-template-columns:minmax(0,1fr);align-items:start;gap:14px}
 .pg-elig .ck>.ck-tag h2{font-size:clamp(26px,2.2vw,40px)}
 .pg-elig .ck>.ck-tag+*{margin-top:0}
 .pg-elig .ck>p{max-width:78ch}
 
 .pg-elig #intro>.ck-intro{grid-column:1;grid-row:1 / span 40;position:sticky;top:168px;font-size:clamp(28px,2.4vw,44px)}
 .pg-elig #intro>.ck-intro+p{margin-top:0}
 .pg-elig #quick-check>.qc,.pg-elig #quick-check>.tk-list{grid-column:1 / -1}
 .pg-elig #quick-check>.tk-list{grid-template-columns:repeat(2,minmax(0,1fr))}
 .pg-elig .ck>.ck-tag .ck-lamp{justify-self:start}
 .pg-elig .ck>.ck-tag{top:168px}
}

/* ===== WIDE BODY · Ausbildung Application Checklist (body aligned with hero + footer) ===== */
.pg-apply .mappe-body{max-width:var(--max)}
@media(min-width:1180px){
 .pg-apply .bw{display:grid;grid-template-columns:minmax(260px,.3fr) minmax(0,1fr);column-gap:clamp(40px,5vw,110px);align-items:start}
 .pg-apply .bw>*{grid-column:2;min-width:0}
 .pg-apply .bw>.bw-head{grid-column:1;grid-row:1 / span 40;position:sticky;top:150px;margin-bottom:0;grid-template-columns:minmax(0,1fr);align-items:start;gap:14px}
 .pg-apply .bw>.bw-head h2{font-size:clamp(26px,2.2vw,40px)}
 .pg-apply .bw>.bw-head+*{margin-top:0}
 .pg-apply .bw>p{max-width:78ch}
 
 .pg-apply .bw>.bw-head{top:168px}
 .pg-apply .g-src{grid-template-columns:repeat(3,minmax(0,1fr))}
}

/* ===== WIDE BODY · Ausbildung Profession Finder (body aligned with hero + footer) ===== */
.pg-berufe .pf-body{max-width:var(--max)}
@media(min-width:1180px){
 .pg-berufe .pf{display:grid;grid-template-columns:minmax(260px,.3fr) minmax(0,1fr);column-gap:clamp(40px,5vw,110px);align-items:start}
 .pg-berufe .pf>*{grid-column:2;min-width:0}
 .pg-berufe .pf>.pf-head{grid-column:1;grid-row:1 / span 40;position:sticky;top:150px;margin-bottom:0;grid-template-columns:minmax(0,1fr);align-items:start;gap:14px}
 .pg-berufe .pf>.pf-head h2{font-size:clamp(26px,2.2vw,40px)}
 .pg-berufe .pf>.pf-head+*{margin-top:0}
 .pg-berufe .pf>p{max-width:78ch}
 
 .pg-berufe .pf>.pf-head{top:168px}
 .pg-berufe .g-src{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(min-width:1180px){
 /* finder: the filter panel becomes a sticky sidebar under the step heading */
 .pg-berufe #finder>.pf-head{grid-row:1;position:static}
 .pg-berufe #finder>.pf-filter{grid-column:1;grid-row:2 / span 40;position:sticky;top:168px;margin-top:22px;grid-template-columns:minmax(0,1fr);gap:16px;padding:18px;max-height:calc(100vh - 190px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
 .pg-berufe #finder>.pf-filter .pf-fg-half{grid-column:1/-1}
 .pg-berufe #finder>.pf-filter .pf-chip{padding:6px 11px;font-size:13px}
 .pg-berufe #finder>.pf-filter .pf-ffoot{flex-wrap:wrap;position:sticky;bottom:-18px;z-index:1;margin:0 -18px -18px;padding:14px 18px;background:#0c0c0d}
 .pg-berufe #finder>.pf-head+*{margin-top:0}
}

/* ===== WIDE BODY · German Level Test (body aligned with hero + footer) ===== */
.pg-lt .lt-body{max-width:var(--max)}
@media(min-width:1180px){
 .pg-lt .lt-body{display:grid;grid-template-columns:minmax(260px,.3fr) minmax(0,1fr);column-gap:clamp(40px,5vw,110px);align-items:start}
 .pg-lt .lt-body>*{grid-column:2;min-width:0}
 .pg-lt .lt-honest-top{grid-column:1;grid-row:1 / span 2;position:sticky;top:168px;padding-top:clamp(28px,4vw,48px)}
 .pg-lt .lt-room{grid-row:1}
 .pg-lt .lt-res{grid-row:2}
 .pg-lt .lt-how{grid-column:1 / -1;display:grid;grid-template-columns:minmax(260px,.3fr) minmax(0,1fr);column-gap:clamp(40px,5vw,110px);align-items:start}
 .pg-lt .lt-how>*{grid-column:1}
 .pg-lt .lt-how>.lt-how-steps{grid-column:2;grid-row:1 / span 3;margin-top:0}
 .pg-lt .lt-how h2{font-size:clamp(26px,2.2vw,36px)}
 .pg-lt .lt-q{font-size:clamp(26px,2vw,36px)}
}

/* ===== WIDE BODY · A1 Vocabulary Quiz (body aligned with hero + footer) ===== */
.pg-sk .sk-body,.pg-sk .sk-bar-in{max-width:var(--max)}
@media(min-width:1180px){
 .pg-sk .sk-row{display:grid;grid-template-columns:minmax(260px,.3fr) minmax(0,1fr);column-gap:clamp(40px,5vw,110px);align-items:start}
 .pg-sk .sk-row>.sk-row-h{position:sticky;top:190px;flex-direction:column;align-items:flex-start;gap:8px;padding-bottom:16px}
 .pg-sk .sk-row>.sk-row-h .sk-row-k{font-size:clamp(30px,2.6vw,44px)}
 .pg-sk .sk-row>.sk-row-h .sk-row-c{margin-left:0;margin-top:6px}
 .pg-sk .sk-row>.sk-qs{margin-top:0}
}
@media(min-width:1600px){
 .pg-sk .sk-opts{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* ===== WIDE BODY · A1 Vocabulary Pack (body aligned with hero + footer) ===== */
.pg-vk .vk-body,.pg-vk .vk-reg-in{max-width:var(--max)}
@media(min-width:1180px){
 .pg-vk .vk-cat{display:grid;grid-template-columns:minmax(260px,.3fr) minmax(0,1fr);column-gap:clamp(40px,5vw,110px);align-items:start}
 .pg-vk .vk-cat>*{grid-column:2;min-width:0}
 .pg-vk .vk-cat>.vk-cat-head{grid-column:1;grid-row:1 / span 40;position:sticky;top:150px;margin-bottom:0;grid-template-columns:minmax(0,1fr);align-items:start;gap:14px}
 .pg-vk .vk-cat>.vk-cat-head h2{font-size:clamp(26px,2.2vw,40px)}
 .pg-vk .vk-cat>.vk-cat-head+*{margin-top:0}
 .pg-vk .vk-cat>p{max-width:78ch}
 
 .pg-vk .vk-cat>.vk-cat-head{top:190px;grid-template-columns:minmax(0,1fr);border-bottom:1px solid var(--line);padding-bottom:16px;gap:12px}
 .pg-vk .vk-cat>.vk-cat-head .vk-cat-no{justify-self:start}
 .pg-vk .vk-cat>.vk-cat-head .vk-cat-n{padding-bottom:0}
 .pg-vk .vk-start{display:grid;grid-template-columns:minmax(260px,.3fr) minmax(0,1fr);column-gap:clamp(40px,5vw,110px);align-items:start}
 .pg-vk .vk-start>*{grid-column:2;min-width:0}
 .pg-vk .vk-start>.vk-start-head{grid-column:1;grid-row:1 / span 6;position:sticky;top:190px}
 .pg-vk .vk-start>.vk-start-head h2{font-size:clamp(28px,2.4vw,42px)}
 .pg-vk .vk-start>.vk-start-grid{margin-top:0}
 .pg-vk .vk-cat>.vk-cat-head>*{min-width:0}
 .pg-vk .vk-cat>.vk-lead{margin-top:0}
}

/* ===== Dropdown lists readable (2 Oct 2026): the open option list of a <select> must be dark with light text.
   Windows browsers draw the list white when the select itself is transparent, so give the options their own colours. ===== */
select{color-scheme:dark}
select option,select optgroup{background-color:#141615;color:#f2efe6}
select option:checked{background-color:#2a2e2c;color:#fff}

/* ===== Home testimonials: three cards (11 Oct 2026). Wide screens: three columns sized to the quotes;
   tablet: two columns with the third card across the full width; phones unchanged (one column). ===== */
@media(min-width:861px){.story-grid>.story:nth-child(3):last-child{grid-column:1 / -1}}
@media(min-width:1180px){
 .story-grid:has(>.story:nth-child(3)){grid-template-columns:minmax(0,.8fr) minmax(0,1.25fr) minmax(0,1fr)}
 .story-grid>.story:nth-child(3):last-child{grid-column:auto}
 .story-grid:has(>.story:nth-child(3)) figcaption{display:grid;grid-template-columns:42px auto;justify-content:start;align-items:center;gap:12px}
 .story-grid:has(>.story:nth-child(3)) .story-tag{grid-column:2;justify-self:start;margin-left:0}
}

/* ===== Cost calculator: tick-to-include rows and the calculated TCS line (16 Oct 2026) ===== */
.ctoggle.cneed{font-size:15px;font-weight:600;color:var(--ink)}
.cin-ro{background:transparent;border-style:dashed}
.cin-ro b{flex:1;min-width:0;height:44px;display:flex;align-items:center;justify-content:flex-end;padding-right:12px;font:500 15px var(--mono);color:var(--ink)}
