
:root{--navy:#12182b;--navy2:#1b2440;--teal:#2fbdc0;--teal-d:#1e9ea1;--w:1120px;
  color-scheme:light;
  --page:#ffffff;--surface:#ffffff;--bg:#f5f7fa;--line:#e4e8ee;--line-h:#cfe0e6;
  --ink:#1b2432;--ink2:#47566b;--mute:#7a8496;--head:#12182b;--acc:#1e9ea1;
  --hdr:rgba(255,255,255,.96);--foot:#12182b;--btnd:#12182b;--mtn:#ffffff;
  --badge-bg:#12182b;--badge-tx:#2fbdc0;
  --sh1:rgba(18,24,43,.05);--sh2:rgba(18,24,43,.10)}
:root[data-theme="dark"]{
  color-scheme:dark;
  --page:#0f1524;--surface:#172033;--bg:#131b2c;--line:#2a344b;--line-h:#2f6a72;
  --ink:#e7ecf4;--ink2:#b5c0d2;--mute:#8792a6;--head:#f3f7fc;--acc:#54d6d9;
  --hdr:rgba(15,21,36,.94);--foot:#0a0f1c;--btnd:#26314a;--mtn:#0f1524;
  --badge-bg:rgba(47,189,192,.18);--badge-tx:#6ee0e3;
  --sh1:rgba(0,0,0,.34);--sh2:rgba(0,0,0,.50)}
@media(prefers-color-scheme:dark){
:root:not([data-theme="light"]){
  color-scheme:dark;
  --page:#0f1524;--surface:#172033;--bg:#131b2c;--line:#2a344b;--line-h:#2f6a72;
  --ink:#e7ecf4;--ink2:#b5c0d2;--mute:#8792a6;--head:#f3f7fc;--acc:#54d6d9;
  --hdr:rgba(15,21,36,.94);--foot:#0a0f1c;--btnd:#26314a;--mtn:#0f1524;
  --badge-bg:rgba(47,189,192,.18);--badge-tx:#6ee0e3;
  --sh1:rgba(0,0,0,.34);--sh2:rgba(0,0,0,.50)}
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;color:var(--ink);background:var(--page);line-height:1.6;transition:background-color .18s ease,color .18s ease;font-size:16.5px}
img{max-width:100%;height:auto}
a{color:var(--acc);text-decoration:none}
a:hover{text-decoration:underline}
.wrap{max-width:var(--w);margin:0 auto;padding:0 22px}
/* Header */
header{position:sticky;top:0;z-index:50;background:var(--hdr);backdrop-filter:blur(6px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;gap:26px;height:70px}
.brand{display:flex;align-items:center;gap:11px;font-weight:800;color:var(--head);font-size:18px;text-decoration:none}
.brand img{height:40px;width:auto}
.brand:hover{text-decoration:none}
nav.menu{margin-left:auto;display:flex;align-items:center;gap:22px}
nav.menu a{color:var(--ink2);font-weight:600;font-size:15px}
nav.menu a:hover{color:var(--head);text-decoration:none}
nav.menu a.on{color:var(--acc)}
nav.menu a.btn{color:#04222a}
nav.menu a.btn:hover{color:#fff}
.btn{display:inline-block;background:var(--teal);color:#04222a;font-weight:700;padding:11px 22px;border-radius:10px;border:2px solid var(--teal);transition:.15s}
.btn:hover{background:var(--teal-d);border-color:var(--teal-d);color:#fff;text-decoration:none}
.btn.ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.55)}
.btn.ghost:hover{border-color:var(--teal);color:var(--teal);background:transparent}
.btn.dark{background:var(--btnd);border-color:var(--btnd);color:#fff}
.btn.dark:hover{background:var(--navy2);border-color:var(--navy2);color:#fff}
#navtoggle{display:none}
label.burger{display:none;margin-left:auto;cursor:pointer;padding:8px}
label.burger span{display:block;width:24px;height:2.6px;background:var(--head);margin:5px 0;border-radius:2px}
/* Hero */
.hero{position:relative;background:linear-gradient(160deg,var(--navy) 0%,#0e2233 70%,#0f3038 100%);color:#fff;overflow:hidden}
.hero .wrap{position:relative;z-index:2;padding-top:84px;padding-bottom:120px}
.hero.small .wrap{padding-top:60px;padding-bottom:96px}
.eyebrow{color:var(--teal);letter-spacing:.24em;text-transform:uppercase;font-size:12.5px;font-weight:800;margin:0 0 14px}
h1{font-size:clamp(30px,4.6vw,50px);line-height:1.13;margin:0 0 18px;font-weight:800;letter-spacing:-.5px}
.hero p.sub{font-size:clamp(16px,2vw,19.5px);color:#cfe6ea;max-width:720px;margin:0 0 30px}
.hero .cta{display:flex;gap:14px;flex-wrap:wrap}
.mountains{position:absolute;left:0;right:0;bottom:-2px;z-index:1;pointer-events:none}
.trust{display:flex;gap:30px;flex-wrap:wrap;margin-top:38px;color:#9fc3c9;font-size:14px;font-weight:600}
.trust b{color:#fff;font-size:19px;display:block;font-weight:800}
/* Sections */
section{padding:74px 0}
section.alt{background:var(--bg)}
h2{font-size:clamp(24px,3vw,34px);line-height:1.2;margin:0 0 8px;color:var(--head);letter-spacing:-.3px}
h2:after{content:"";display:block;width:64px;height:4px;background:var(--teal);border-radius:2px;margin-top:12px}
h2.center{text-align:center}
h2.center:after{margin-left:auto;margin-right:auto}
.lead{font-size:18px;color:var(--ink2);max-width:820px;margin:16px 0 0}
.lead.center{margin-left:auto;margin-right:auto;text-align:center}
h3{font-size:20px;margin:0 0 8px;color:var(--head)}
/* Cards */
.grid{display:grid;gap:20px;margin-top:38px}
.g3{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}
.g2{grid-template-columns:repeat(auto-fit,minmax(340px,1fr))}
.card{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:26px 26px 22px;box-shadow:0 2px 10px var(--sh1);transition:.16s;display:flex;flex-direction:column}
.card:hover{transform:translateY(-3px);box-shadow:0 10px 26px var(--sh2);border-color:var(--line-h)}
.card .ico{width:50px;height:50px;border-radius:13px;background:rgba(47,189,192,.14);color:var(--acc);display:flex;align-items:center;justify-content:center;font-size:24px;margin-bottom:14px}
.card p{color:var(--ink2);margin:0 0 12px;font-size:15.5px}
.card .more{margin-top:auto;font-weight:700;font-size:15px}
/* Steps */
.steps{counter-reset:s;display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));margin-top:38px}
.step{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:24px 22px}
.step:before{counter-increment:s;content:counter(s);display:inline-flex;width:38px;height:38px;border-radius:50%;background:var(--badge-bg);color:var(--badge-tx);font-weight:800;align-items:center;justify-content:center;font-size:17px;margin-bottom:12px}
.step b{display:block;color:var(--head);font-size:17px;margin-bottom:5px}
.step p{margin:0;color:var(--ink2);font-size:14.5px}
/* Checkliste */
ul.checks{list-style:none;padding:0;margin:26px 0 0;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}
ul.checks li{padding-left:34px;position:relative;color:var(--ink2);font-size:16px}
ul.checks li:before{content:"✓";position:absolute;left:0;top:0;width:24px;height:24px;border-radius:50%;background:rgba(47,189,192,.16);color:var(--acc);font-weight:800;display:flex;align-items:center;justify-content:center;font-size:14px}
ul.checks li b{color:var(--head)}
/* Prose auf Unterseiten */
.prose{max-width:820px}
.prose p{color:var(--ink2);margin:0 0 16px;font-size:17px}
.prose h3{margin-top:34px}
.note{border-left:4px solid var(--teal);background:rgba(47,189,192,.08);padding:16px 20px;border-radius:0 12px 12px 0;margin:26px 0;color:var(--ink2)}
.note b{color:var(--head)}
/* FAQ */
details{border:1px solid var(--line);border-radius:12px;background:var(--surface);margin-bottom:12px;overflow:hidden}
details summary{cursor:pointer;padding:17px 20px;font-weight:700;color:var(--head);list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px}
details summary::-webkit-details-marker{display:none}
details summary:after{content:"+";font-size:22px;color:var(--acc);flex:0 0 auto}
details[open] summary:after{content:"–"}
details .a{padding:0 20px 18px;color:var(--ink2)}
/* CTA-Band */
.band{background:linear-gradient(135deg,var(--navy),#123a44);color:#fff;text-align:center}
.band h2{color:#fff}
.band h2:after{margin-left:auto;margin-right:auto}
.band p{color:#cfe6ea;max-width:680px;margin:16px auto 30px;font-size:17.5px}
/* Footer */
footer{background:var(--foot);color:#b9c4d6;font-size:14.5px}
footer .cols{display:grid;gap:34px;grid-template-columns:2fr 1fr 1fr 1.3fr;padding:56px 0 30px}
footer img{height:44px;margin-bottom:14px}
footer h4{color:#fff;font-size:14px;letter-spacing:.06em;text-transform:uppercase;margin:0 0 14px}
footer a{color:#b9c4d6;display:block;margin-bottom:9px}
footer a:hover{color:var(--teal)}
footer .legal{border-top:1px solid rgba(255,255,255,.12);padding:18px 0;display:flex;gap:20px;flex-wrap:wrap;justify-content:space-between;font-size:13px;color:#8b97ab}
footer .legal a{display:inline;color:#8b97ab;margin:0 12px 0 0}
/* Formular */
form .f{display:block;font-size:13px;font-weight:700;color:var(--ink2);margin:16px 0 6px}
form input,form select,form textarea{width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:10px;font:inherit;font-size:15.5px;background:var(--surface);color:var(--ink)}
form input:focus,form select:focus,form textarea:focus{outline:2px solid var(--teal);border-color:var(--teal)}
.f2{display:grid;gap:0 18px;grid-template-columns:1fr 1fr}
.kontaktgrid{display:grid;gap:40px;grid-template-columns:1.2fr 1fr;margin-top:38px;align-items:start}
.kbox{background:var(--bg);border:1px solid var(--line);border-radius:16px;padding:28px}
.kbox p{margin:0 0 14px;color:var(--ink2)}
.kbox b{color:var(--head)}
/* Gipfel-Check */
.gcwrap{display:grid;grid-template-columns:1fr .85fr;gap:34px;align-items:stretch;margin-top:38px}
.gcbox{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:28px;display:flex;flex-direction:column}
.gcprog{font-size:12.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--acc);margin-bottom:10px}
.gcq h3{font-size:21px;line-height:1.35;margin:0 0 22px}
.gcchips{display:flex;gap:10px;flex-wrap:wrap}
.gcchips button{font:inherit;font-weight:700;font-size:15.5px;padding:12px 26px;border-radius:12px;border:2px solid var(--line);background:var(--surface);color:var(--head);cursor:pointer;transition:.13s}
.gcchips button:hover{border-color:var(--teal);background:rgba(47,189,192,.08);transform:translateY(-1px)}
.gclog{margin-top:auto;padding-top:18px;font-size:12.5px;color:var(--mute);line-height:1.8}
.gclog span{display:inline-block;margin-right:12px;white-space:nowrap}
.gcmount{position:relative;background:linear-gradient(165deg,var(--navy) 0%,#0e2233 60%,#123a44 100%);border-radius:18px;overflow:hidden;min-height:440px}
.gcmount svg{position:absolute;inset:0;width:100%;height:100%}
#gcPaxG{transition:transform .8s cubic-bezier(.45,1.25,.5,1)}
#gcFlagT{opacity:0;transition:opacity .5s .35s}
#gcFlagT.da{opacity:1}
.gcalt{font-size:12px;color:#9fc3c9;position:absolute;left:14px;bottom:10px;z-index:2}
.gcres h3{font-size:22px;margin:0 0 6px}
.gcetappe{display:flex;gap:14px;border:1px solid var(--line);border-radius:14px;padding:16px 18px;margin-top:12px;align-items:flex-start}
.gcetappe .nr{flex:0 0 auto;width:34px;height:34px;border-radius:50%;background:var(--badge-bg);color:var(--badge-tx);display:flex;align-items:center;justify-content:center;font-weight:800}
.gcetappe b{color:var(--head)}
.gcetappe p{margin:3px 0 0;font-size:14px;color:var(--ink2)}
@media(max-width:900px){.gcwrap{grid-template-columns:1fr}.gcmount{min-height:300px;order:-1}}
/* Karriere-Levelpfad */
.lvlwrap{overflow-x:auto;margin-top:36px;padding-bottom:6px}
.lvlpath{display:flex;gap:10px;align-items:flex-end;min-width:660px}
.lvl{flex:1;text-align:center;min-width:100px}
.lvl .bar{border-radius:12px 12px 0 0;background:linear-gradient(180deg,var(--teal) -30%,var(--navy) 120%);color:#fff;font-weight:800;display:flex;align-items:flex-start;justify-content:center;padding-top:9px;font-size:15px;position:relative}
.lvl .flag{position:absolute;top:-30px;font-size:22px}
.lvl .t{font-size:12.5px;color:var(--ink2);margin-top:9px;line-height:1.4;font-weight:600}
.lvl .t b{display:block;color:var(--head);font-size:13px}
.lvlhint{font-size:13.5px;color:var(--mute);margin-top:14px}
/* Pax – Maskottchen */
.paxhero{position:absolute;right:4vw;bottom:-8px;z-index:1;width:clamp(200px,21vw,300px);filter:drop-shadow(0 14px 26px rgba(0,0,0,.35))}
.mountains{pointer-events:none}
@media(max-width:1100px){.paxhero{display:none}}
.paxstory{display:flex;gap:40px;align-items:center;background:var(--bg);border:1px solid var(--line);border-radius:18px;padding:30px 34px;margin-top:44px}
.paxstory img{width:150px;flex:0 0 auto}
.paxstory p{margin:0;color:var(--ink2)}
.paxstory b{color:var(--head)}
@media(max-width:700px){.paxstory{flex-direction:column;text-align:center}}
#paxBtn{position:fixed;right:20px;bottom:20px;z-index:90;width:66px;height:66px;border-radius:50%;background:var(--surface);border:3px solid var(--teal);box-shadow:0 8px 24px var(--sh2);cursor:pointer;padding:6px 0 0;display:flex;align-items:flex-start;justify-content:center;overflow:hidden;transition:.15s}
#paxBtn:hover{transform:translateY(-3px)}
#paxBtn img{height:78px;width:auto}
#paxPanel{position:fixed;right:20px;bottom:98px;z-index:91;width:min(340px,calc(100vw - 32px));background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:0 18px 50px var(--sh2);overflow:hidden;display:none}
#paxPanel.open{display:block}
.paxhead{display:flex;gap:12px;align-items:center;padding:13px 16px;background:var(--navy);color:#fff}
.paxhead img{height:46px}
.paxhead b{display:block;font-size:15px}
.paxhead span{font-size:12px;color:var(--teal);font-weight:700}
.paxbody{padding:14px 16px;max-height:min(430px,55vh);overflow-y:auto}
.paxbody p{margin:0 0 12px;color:var(--ink2);font-size:14.5px}
.paxbody a.paxopt{display:block;border:1px solid var(--line);border-radius:10px;padding:9px 12px;margin-bottom:7px;font-weight:600;font-size:14px;color:var(--head)}
.paxbody a.paxopt:hover{border-color:var(--teal);background:rgba(47,189,192,.07);text-decoration:none}
.paxbubble{position:fixed;right:98px;bottom:32px;z-index:90;background:var(--surface);border:2px solid var(--teal);border-radius:14px 14px 4px 14px;padding:9px 14px;font-size:14px;font-weight:700;color:var(--head);box-shadow:0 10px 26px var(--sh2);display:none;cursor:pointer}
.paxbubble.show{display:block}
/* Inline-CTA im Fliesstext */
.inlinecta{margin:40px 0;padding:24px 26px;border:2px solid var(--teal);border-radius:16px;background:rgba(47,189,192,.07);display:flex;gap:20px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.inlinecta p{margin:0;font-weight:700;color:var(--head);font-size:17px;line-height:1.45;flex:1 1 300px}
.inlinecta .btn{flex:0 0 auto}
/* Weiterlesen */
.weiter{margin-top:46px;border-top:1px solid var(--line);padding-top:26px}
.weiter h3{margin:0 0 16px;font-size:19px}
.weiter .wlist{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.weiter a.witem{display:block;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:18px 20px;color:var(--head);font-weight:700;font-size:16px;line-height:1.4;transition:.15s}
.weiter a.witem:hover{border-color:var(--teal);text-decoration:none;transform:translateY(-2px)}
.weiter a.witem span{display:block;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--teal-d);font-weight:800;margin-bottom:7px}
/* Sticky Mobile-CTA */
.stickycta{display:none}
/* Responsive */
@media(max-width:900px){
  footer .cols{grid-template-columns:1fr 1fr}
  .kontaktgrid{grid-template-columns:1fr}
  label.burger{display:block}
  nav.menu{position:fixed;inset:70px 0 auto 0;background:var(--surface);flex-direction:column;align-items:flex-start;padding:18px 24px 24px;gap:16px;border-bottom:1px solid var(--line);transform:translateY(-130%);transition:.2s;box-shadow:0 14px 30px rgba(18,24,43,.12)}
  #navtoggle:checked ~ nav.menu{transform:none}
  .themebtn{margin-left:auto}
  label.burger{margin-left:10px}
  .f2{grid-template-columns:1fr}
  .stickycta{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:95;gap:10px;padding:10px 14px;padding-bottom:calc(10px + env(safe-area-inset-bottom,0px));background:var(--surface);border-top:1px solid var(--line);box-shadow:0 -8px 26px var(--sh2)}
  .stickycta a{padding:12px 10px;font-size:15px;text-align:center;border-radius:10px}
  .stickycta a.sprimary{flex:1 1 auto}
  .stickycta a.scall{flex:0 0 auto;background:transparent;color:var(--head);border:2px solid var(--line);font-weight:700}
  .stickycta a.scall:hover{background:transparent;color:var(--head);border-color:var(--teal)}
  body{padding-bottom:78px}
  body.nosticky{padding-bottom:0}
  body.nosticky .stickycta{display:none}
  #paxBtn{bottom:94px}
  #paxPanel{bottom:172px}
  .paxbubble{bottom:106px}
  body.nosticky #paxBtn{bottom:20px}
  body.nosticky #paxPanel{bottom:98px}
  body.nosticky .paxbubble{bottom:32px}
  .inlinecta{padding:20px}
}
@media(max-width:560px){footer .cols{grid-template-columns:1fr}}
/* Bergkante geht in den Seitenhintergrund ueber (hell wie dunkel) */
.mountains path:last-of-type{fill:var(--mtn)}
/* Hell/Dunkel-Umschalter */
nav.menu{order:1}
.themebtn{order:2;flex:0 0 auto;margin-left:16px;width:40px;height:40px;padding:0;border-radius:11px;border:1px solid var(--line);background:var(--surface);color:var(--head);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:.15s}
.themebtn:hover{border-color:var(--teal);color:var(--acc)}
.themebtn svg{width:19px;height:19px;display:block}
.themebtn .i-sun{display:none}
label.burger{order:3}
.brand .lg-d{display:none}
:root[data-theme="dark"] .brand .lg-l{display:none}
:root[data-theme="dark"] .brand .lg-d{display:block}
:root[data-theme="dark"] .themebtn .i-moon{display:none}
:root[data-theme="dark"] .themebtn .i-sun{display:block}
@media(prefers-color-scheme:dark){
:root:not([data-theme="light"]) .brand .lg-l{display:none}
:root:not([data-theme="light"]) .brand .lg-d{display:block}
:root:not([data-theme="light"]) .themebtn .i-moon{display:none}
:root:not([data-theme="light"]) .themebtn .i-sun{display:block}
}
