/* Pflegestatik: gemeinsame Styles aller Seiten. Kein Build-Schritt. */
/* Schriften lokal, keine Verbindung zu Google. Lizenz: SIL Open Font License 1.1, siehe fonts/. */
@font-face{font-family:'Hanken Grotesk';font-style:normal;font-weight:400 800;font-display:swap;src:url(fonts/hanken-grotesk-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Hanken Grotesk';font-style:normal;font-weight:400 800;font-display:swap;src:url(fonts/hanken-grotesk-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/ibm-plex-mono-400-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/ibm-plex-mono-400-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/ibm-plex-mono-500-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/ibm-plex-mono-500-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
:root{--accent:#5AD6C4}
html{scroll-behavior:smooth}
body{margin:0;background:#111a29}
a{color:#c9d2df}a:hover{color:var(--accent)}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}

/* ===== Grundgerüst ===== */
.site{background:#111a29;color:#c9d2df;font-family:'Hanken Grotesk', 'Helvetica Neue', Helvetica, sans-serif;font-size:17px;line-height:1.5;font-weight:500}
.site-header{position:sticky;top:0;z-index:30;background:#111a29;border-bottom:1px solid #22344f}
.progress{height:3px;background:#1a2740}
.progress-bar{height:3px;width:100%;background:var(--accent);transform-origin:left;transform:scaleX(0)}
.header-row{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:12px clamp(16px, 4vw, 40px)}
.brand,.brand:hover{display:flex;align-items:center;gap:10px;text-decoration:none;color:#eef1f5;font-weight:800;font-size:21px;letter-spacing:-0.02em}
.fill-accent{fill:var(--accent)}
.stroke-accent{stroke:var(--accent)}
.accent{color:var(--accent)}
.muted,.muted:hover{color:#8a97aa}
.ps-nav{display:flex;gap:clamp(18px, 2.2vw, 32px);font-family:'IBM Plex Mono', ui-monospace, monospace;font-size:12px;letter-spacing:0.06em;text-transform:uppercase}
.hnav-link{text-decoration:none;padding:14px 0;white-space:nowrap}
.btn-head,.btn-head:hover{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border-radius:10px;background:var(--accent);color:#111a29;text-decoration:none;font-family:'IBM Plex Mono', ui-monospace, monospace;font-size:12px;font-weight:500;letter-spacing:0.06em;text-transform:uppercase;white-space:nowrap}

.header-actions{display:flex;align-items:center;gap:8px}
.btn-kunde,.btn-kunde:hover{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border-radius:10px;border:1px solid #2c4062;background:#16263f;color:#eef1f5;text-decoration:none;font-family:'IBM Plex Mono', ui-monospace, monospace;font-size:12px;font-weight:500;letter-spacing:0.06em;text-transform:uppercase;white-space:nowrap;box-sizing:border-box}
.btn-kunde:hover{border-color:var(--accent)}
.btn-kunde[aria-current="page"]{border-color:var(--accent)}
.btn-kunde svg{flex:none;color:var(--accent)}
.btn-head-icon{display:none;flex:none}
.ps-burger{display:none;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:44px;height:44px;padding:0;box-sizing:border-box;border:1px solid #2c4062;border-radius:10px;background:#16263f;color:#eef1f5;cursor:pointer}
.ps-burger span{display:block;width:18px;height:1.75px;border-radius:2px;background:currentColor;transition:transform .2s ease, opacity .2s ease}
.ps-burger:hover,.ps-burger[aria-expanded="true"]{border-color:var(--accent)}
.ps-burger[aria-expanded="true"] span:nth-child(1){transform:translateY(6.75px) rotate(45deg)}
.ps-burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.ps-burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-6.75px) rotate(-45deg)}
@media (max-width:700px){
  .ps-burger{display:inline-flex}
}
@media (max-width:560px){
  .btn-kunde,.btn-kunde:hover,.btn-head,.btn-head:hover{width:44px;padding:0;justify-content:center}
  .btn-head-icon{display:block}
  .btn-kunde-text,.btn-head-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
}
@media (max-width:380px){
  .header-row{gap:10px;padding-left:12px;padding-right:12px}
  .brand,.brand:hover{gap:8px;font-size:18px}
  .header-actions{gap:6px}
  .btn-kunde,.btn-kunde:hover,.btn-head,.btn-head:hover,.ps-burger{width:40px;height:40px;min-height:40px}
}

/* Menü unter der Kopfzeile (Smartphone) */
.ps-mm{position:absolute;top:100%;left:0;right:0;z-index:45;box-sizing:border-box;max-height:calc(100vh - 70px);max-height:calc(100dvh - 70px);overflow-y:auto;overscroll-behavior:contain;padding:8px clamp(16px, 4vw, 40px) 26px;background:#111a29;border-bottom:1px solid #22344f;box-shadow:0 26px 60px rgba(4,9,18,0.55);animation:ps-mm-auf .18s ease-out}
.ps-mm[hidden]{display:none}
@keyframes ps-mm-auf{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.ps-mm-nav{display:grid}
.ps-mm-nav a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px;border-bottom:1px solid #1d2c45;color:#eef1f5;text-decoration:none;font-weight:700;font-size:21px;line-height:1.2;letter-spacing:-0.01em}
.ps-mm-nav a svg{flex:none;color:var(--accent)}
.ps-mm-nav a:hover{color:var(--accent)}
.ps-mm-nav a.ps-sub{position:relative;justify-content:flex-start;min-height:44px;padding-left:20px;border-bottom-color:transparent;color:#a9b4c4;font-size:16px;font-weight:500;letter-spacing:0}
.ps-mm-nav a.ps-sub::before{content:"";position:absolute;left:2px;top:50%;width:9px;height:1.5px;background:#3a5078}
.ps-mm-nav a.ps-sub-ende{border-bottom-color:#1d2c45;padding-bottom:6px;min-height:50px}
.ps-mm-nav a.ps-sub[aria-current="page"]{color:var(--accent)}
.ps-mm-nav a.ps-sub[aria-current="page"]::before{background:var(--accent)}
.ps-mm-kontakt{display:grid;gap:6px;padding-top:22px;font-family:'IBM Plex Mono', ui-monospace, monospace;font-size:13px;letter-spacing:0.04em}
.ps-mm-kontakt a{color:#c9d2df}
html.mm-offen{overflow:hidden}
@media (prefers-reduced-motion:reduce){.ps-mm{animation:none}.ps-burger span{transition:none}}

/* ===== Etiketten und Nummern ===== */
.label{font-family:'IBM Plex Mono', ui-monospace, monospace;font-size:12px;letter-spacing:0.06em;text-transform:uppercase;color:#8a97aa}
.label--dunkel{color:#4b566a}
.label--erbt{color:inherit}
.nr{font-family:'IBM Plex Mono', ui-monospace, monospace;font-size:12px;color:#8a97aa}

/* ===== Einstieg ===== */
.hero{position:relative;isolation:isolate;overflow:hidden;padding:clamp(64px, 9vw, 120px) clamp(16px, 4vw, 40px) clamp(96px, 12vw, 180px);display:flex;flex-direction:column;align-items:center;gap:28px;text-align:center}
.hero > :not(.lastabtrag, .hero-stadt){position:relative;z-index:1}

/* Stadt im Einstieg: Schleife aus dem Vertriebspartner-Film, flach abgedunkelt (kein Verlauf). Startet per main.js
   erst nach dem Laden, bei reduzierter Bewegung bleibt das Standbild (poster). */
.hero-stadt{position:absolute;inset:0;z-index:0;pointer-events:none;background:#111a29}
.hero-stadt video{display:block;width:100%;height:100%;object-fit:cover}
.hero-stadt::after{content:"";position:absolute;inset:0;background:rgba(17,26,41,0.8)}
/* Über dem Stadtbild etwas heller, damit der Kontrast hält (Etikett 12 px: mind. 4,5:1, graue Zeile: mind. 3:1) */
.hero > .label{color:#a9b4c4}
.hero-title .muted{color:#9aa6b8}

/* Siegel im Einstieg (links oben); auf dem Handy mittig über dem Etikett */
.hero > .siegel{position:absolute;z-index:2;top:clamp(20px, 3vw, 36px);left:clamp(16px, 4vw, 40px);width:clamp(112px, 10vw, 150px);height:auto;filter:drop-shadow(0 14px 28px rgba(4,9,18,0.5));transition:transform .4s cubic-bezier(.2,.8,.2,1)}
.hero > .siegel:hover{transform:rotate(-4deg) scale(1.04)}
.siegel-skala{transform-origin:80px 80px;animation:siegel-drehen 60s linear infinite}
@keyframes siegel-drehen{to{transform:rotate(360deg)}}
@media (max-width:820px){
  .hero > .siegel{position:relative;top:auto;left:auto;width:92px;margin-bottom:-6px}
}
@media (prefers-reduced-motion:reduce){.siegel-skala{animation:none}.hero > .siegel{transition:none}}

/* Lastabtrag: Fachwerkbogen auf dem Baugrund hinter der Überschrift. Bewusst mit Verlauf (Ausnahme). */
.lastabtrag{position:absolute;left:0;right:0;bottom:0;z-index:0;display:block;width:100%;height:clamp(300px, 40vw, 580px);pointer-events:none}
.la-puls,.la-puls-schein{stroke:var(--accent);stroke-linecap:round;stroke-dasharray:46 1000;stroke-dashoffset:46;opacity:0;animation:la-lastabtrag 7s infinite}
.la-puls{stroke-width:2.6}
.la-puls-schein{stroke-width:12;stroke-opacity:0.28}
.la-auflager{stroke:#cfcdca;stroke-opacity:0.45;animation:la-auflager 7s infinite}
.la-streifen{stroke:#eef1f5;stroke-opacity:0.8;stroke-width:1.4;stroke-linecap:round;stroke-dasharray:70 1000;stroke-dashoffset:70;opacity:0;animation:la-streifen 11s linear 2.5s infinite}
.la-licht{animation:la-atmen 9s ease-in-out infinite alternate}
@keyframes la-lastabtrag{
  0%{stroke-dashoffset:46;opacity:0;animation-timing-function:cubic-bezier(.32,0,.72,.7)}
  6%{opacity:1}
  80%{opacity:1}
  86%{stroke-dashoffset:-954;opacity:0}
  100%{stroke-dashoffset:-954;opacity:0}
}
@keyframes la-auflager{
  0%,82%{stroke:#cfcdca;stroke-opacity:0.45}
  87%{stroke:var(--accent);stroke-opacity:1}
  100%{stroke:#cfcdca;stroke-opacity:0.45}
}
@keyframes la-streifen{
  0%{stroke-dashoffset:70;opacity:0}
  3%{opacity:1}
  30%{opacity:1}
  36%{stroke-dashoffset:-930;opacity:0}
  100%{stroke-dashoffset:-930;opacity:0}
}
@keyframes la-atmen{from{opacity:0.72}to{opacity:1}}
@media (max-width:700px){
  .hero{padding-bottom:96px}
  .lastabtrag{left:-25%;right:auto;width:150%;height:auto;aspect-ratio:1440 / 520}
}
@media (prefers-reduced-motion:reduce){
  .la-puls,.la-puls-schein,.la-streifen{display:none}
  .la-auflager,.la-licht{animation:none}
}
.hero-title{margin:0;max-width:15ch;font-weight:800;font-size:clamp(42px, 6.4vw, 88px);line-height:1.04;letter-spacing:-0.03em;color:#eef1f5;text-wrap:balance}
.hero-lead{margin:0;max-width:46ch;font-size:19px;color:#a9b4c4}
.hero-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}

/* ===== Knöpfe ===== */
.btn{display:inline-flex;align-items:center;gap:14px;min-height:48px;padding:0 6px 0 18px;border-radius:12px;text-decoration:none;font-family:'IBM Plex Mono', ui-monospace, monospace;font-size:12px;letter-spacing:0.06em;text-transform:uppercase}
.btn--ghost,.btn--ghost:hover{border:1px solid #2c4062;background:#16263f;color:#eef1f5}
.btn--accent,.btn--accent:hover{background:var(--accent);color:#111a29}
.btn-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px}
.btn-icon--ghost{background:#22344f}
.btn-icon--dark{background:#111a29}

/* ===== Szenen ===== */
.track{height:1900px;position:relative}
.ps-stage{position:sticky;top:64px;height:min(calc(100vh - 64px), 800px)}
.ps-panel{position:absolute;inset:0 12px 12px;border-radius:22px;overflow:hidden;background:#b9b6b5;transform-origin:50% 0}
.ps-view{position:absolute;inset:0}
.scene-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.scene-img--1{object-position:42% 60%}
.scene-img--2{object-position:40% 60%}
.scene-canvas{position:absolute;inset:0;display:block;width:100%;height:100%}
.ps-side{position:absolute;top:20px;bottom:20px;width:min(430px, 40%)}
.ps-side--rechts{right:20px}
.ps-side--links{left:20px}
.chips{display:flex;flex-wrap:wrap;gap:6px;font-family:'IBM Plex Mono', ui-monospace, monospace;font-size:12px;letter-spacing:0.06em;text-transform:uppercase}
.chips--rechts{justify-content:flex-end}
.chip{display:inline-flex;align-items:center;min-height:36px;padding:0 14px;border-radius:9px;background:#16263f;color:#c9d2df}
.chip--aktiv{background:#eef1f5;color:#111a29}
.ps-cap{position:absolute;left:0;right:0;border-radius:16px;background:#111a29;padding:22px 24px 24px;display:grid;gap:10px}
.ps-cap--unten{bottom:0}
.ps-cap--oben{top:54px}
.ps-cap--aus{opacity:0;visibility:hidden}
.cap-title{margin:0;font-weight:800;font-size:clamp(26px, 2.6vw, 36px);line-height:1.08;letter-spacing:-0.02em;color:#eef1f5}
.cap-text{margin:0;color:#a9b4c4}

/* ===== Laufband ===== */
.ticker{overflow:hidden;padding:26px 0;border-top:1px solid #22344f;border-bottom:1px solid #22344f;margin-top:28px}
.ps-run{display:flex;width:max-content;gap:56px;padding-right:56px;font-family:'IBM Plex Mono', ui-monospace, monospace;font-size:14px;letter-spacing:0.08em;text-transform:uppercase;color:#8a97aa;white-space:nowrap}

/* ===== Abschnittsköpfe ===== */
.section-head{display:flex;flex-direction:column;align-items:center;gap:22px;text-align:center}
.section-head--lasten{margin-bottom:clamp(40px, 5vw, 64px)}
.section-head--haus{padding:0 clamp(16px, 4vw, 40px) clamp(36px, 4vw, 56px)}
.section-title{margin:0;font-weight:800;font-size:clamp(36px, 5vw, 68px);line-height:1.06;letter-spacing:-0.03em;text-wrap:balance}
.section-title--lasten{max-width:16ch}
.section-title--haus{max-width:17ch;color:#eef1f5}

/* ===== Lasten (Stapelkarten) ===== */
.lasten{margin:12px;border-radius:22px;background:#cfcdca;color:#16263f;padding:clamp(64px, 8vw, 110px) clamp(16px, 4vw, 40px) clamp(56px, 7vw, 96px)}
.hell-auf-grau{color:#f4f2ef}
.card-info{padding:28px;display:flex;flex-direction:column;gap:10px;background:#22344f}
.card-title{margin:0;font-weight:700;font-size:24px;line-height:1.15;letter-spacing:-0.01em;color:#eef1f5}
.card-text{margin:0;font-size:16px;color:#a9b4c4}
.card-nr{margin-top:auto;font-family:'IBM Plex Mono', ui-monospace, monospace;font-size:13px;color:#8a97aa}
.ps-pane{padding:28px;display:flex;flex-direction:column;justify-content:center;gap:14px}

/* Vier Lasten: gestapelte Karten im Wechsel (Vorbild effortel), rechts bzw. links eine animierte Bildfläche */
.stack{max-width:1040px;margin:0 auto;display:flex;flex-direction:column;gap:36px}
.ps-card{position:sticky;display:grid;border-radius:20px;overflow:hidden;background:#16263f;color:#c9d2df;transform-origin:50% 0}
.ps-card--a{grid-template-columns:minmax(0, 1fr) minmax(0, 2.5fr)}
.ps-card--b{grid-template-columns:minmax(0, 2.5fr) minmax(0, 1fr)}
.ps-card--1{top:92px}
.ps-card--2{top:108px}
.ps-card--3{top:124px}
.ps-card--4{top:140px}
.ps-pane{padding:18px;display:flex;flex-direction:column;gap:12px}

/* Bildfläche: Bühne 600 x 400, per Skript auf die Breite skaliert */
.lv{position:relative;width:100%;aspect-ratio:3 / 2;overflow:hidden;border-radius:14px;border:1px solid #22344f;background-color:#111a29;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Ccircle cx='1.5' cy='1.5' r='1' fill='%23233652'/%3E%3C/svg%3E");visibility:hidden}
.lv.lv-bereit{visibility:visible}
.lv-buehne{position:absolute;left:0;top:0;width:600px;height:400px;transform-origin:0 0;transform:scale(var(--s, 1));perspective:1200px}
.lv-raum{position:absolute;inset:0;transform-style:preserve-3d;transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.lv-fenster{position:absolute;left:24px;top:22px;width:552px;height:356px;border-radius:14px;background:#eceae6;box-shadow:0 30px 60px rgba(4,9,18,0.5), 0 0 0 1px rgba(255,255,255,0.05)}
.lv-kopf{display:flex;align-items:center;gap:10px;height:40px;padding:0 14px;border-bottom:1px solid #dcd8d2;font-family:'Hanken Grotesk', 'Helvetica Neue', Helvetica, sans-serif;font-weight:700;font-size:13px;color:#16263f}
.lv-punkte{display:flex;gap:5px}
.lv-punkte i{display:block;width:8px;height:8px;border-radius:50%;background:#cfcbc5}
.lv-kopf-chip{margin-left:auto;padding:4px 8px;border-radius:6px;background:#e0ddd8;color:#4b566a;font-family:'IBM Plex Mono', ui-monospace, monospace;font-size:10px;font-weight:500;letter-spacing:0.06em;text-transform:uppercase}
.lv-teil{position:absolute;left:0;top:0;transition:transform .8s cubic-bezier(.2,.8,.2,1), opacity .5s ease, background-color .4s ease, color .4s ease, border-color .4s ease;will-change:transform}
.lv-sofort .lv-teil,.lv-sofort .lv-teil *{transition:none !important}
.lv-mini{font-family:'IBM Plex Mono', ui-monospace, monospace;font-size:10px;font-weight:500;letter-spacing:0.08em;text-transform:uppercase;color:#4b566a}
.lv-haken{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:var(--accent);color:#111a29;opacity:0;transform:scale(.4);transition:opacity .3s ease, transform .4s cubic-bezier(.3,1.6,.5,1)}
.lv-ok .lv-haken,.lv-haken.lv-ok{opacity:1;transform:none}

/* Dokumentation */
.lv-eintrag{width:160px;height:44px;box-sizing:border-box;display:flex;align-items:center;gap:8px;padding:0 9px;border-radius:10px;background:#fff;box-shadow:0 8px 18px rgba(22,38,63,0.16), 0 0 0 1px rgba(22,38,63,0.06);font-family:'Hanken Grotesk', 'Helvetica Neue', Helvetica, sans-serif;font-size:11.5px;font-weight:700;color:#16263f}
.lv-eintrag .lv-haken{position:absolute;top:-7px;right:-7px;box-shadow:0 0 0 2px #eceae6}
.lv-ico{flex:none;display:grid;place-items:center;width:24px;height:24px;border-radius:7px;background:#16263f;color:var(--accent)}
.lv-zeilen{display:grid;gap:5px;min-width:0}
.lv-zeilen b{font-weight:700;white-space:nowrap}
.lv-zeilen i{display:block;width:62px;height:4px;border-radius:2px;background:#e3e0db}

/* Dienstplan */
.lv-schicht{width:74px;height:38px;box-sizing:border-box;display:grid;place-items:center;border-radius:9px;background:#dfe5ee;border:1.5px solid transparent;font-family:'Hanken Grotesk', 'Helvetica Neue', Helvetica, sans-serif;font-size:13px;font-weight:800;color:#16263f;box-shadow:0 4px 10px rgba(22,38,63,0.1)}
.lv-schicht.p2{background:#d4dce9}.lv-schicht.p3{background:#e4e0da}.lv-schicht.p4{background:#dae3e1}.lv-schicht.p5{background:#e2dfe8}.lv-schicht.p6{background:#d9dfd6}
.lv-schicht.lv-ausfall{background:transparent;border:1.5px dashed #8a97aa;color:#8a97aa;box-shadow:none;text-decoration:line-through}
.lv-schicht.lv-springer{background:#16263f;border-color:var(--accent);color:var(--accent)}
.lv-luecke{width:74px;height:38px;box-sizing:border-box;display:grid;place-items:center;border-radius:9px;border:1.5px dashed #16263f;font-family:'IBM Plex Mono', ui-monospace, monospace;font-size:10px;letter-spacing:0.08em;text-transform:uppercase;color:#16263f}
.lv-zug{animation:lv-zug .9s ease-in-out 2}
@keyframes lv-zug{50%{box-shadow:0 0 0 6px rgba(22,38,63,0.18)}}

/* Prüfung */
.lv-punkt{width:270px;height:40px;box-sizing:border-box;display:flex;align-items:center;gap:12px;padding:0 12px;border-radius:10px;background:#fff;box-shadow:0 6px 14px rgba(22,38,63,0.12);font-family:'Hanken Grotesk', 'Helvetica Neue', Helvetica, sans-serif;font-size:13px;font-weight:700;color:#16263f}
.lv-box{flex:none;display:grid;place-items:center;width:20px;height:20px;box-sizing:border-box;border-radius:6px;border:1.5px solid #8a97aa;color:transparent;transition:background-color .3s ease, border-color .3s ease, color .3s ease}
.lv-punkt.lv-ok .lv-box{background:var(--accent);border-color:var(--accent);color:#111a29}
.lv-offen{margin-left:auto;padding:3px 7px;border-radius:6px;border:1.5px dashed #8a97aa;font-family:'IBM Plex Mono', ui-monospace, monospace;font-size:9.5px;letter-spacing:0.08em;text-transform:uppercase;color:#4b566a;opacity:0;transition:opacity .4s ease}
.lv-punkt.lv-warn .lv-offen{opacity:1}
.lv-ring{width:190px;height:190px}
.lv-ring-wert{transition:stroke-dashoffset .7s cubic-bezier(.2,.8,.2,1), stroke .4s ease}
.lv-ring-text{font-family:'IBM Plex Mono', ui-monospace, monospace;font-size:10px;letter-spacing:0.08em;text-transform:uppercase;fill:#4b566a}
.lv-toast{width:236px;height:58px;box-sizing:border-box;display:flex;align-items:center;gap:12px;padding:0 14px;border-radius:12px;background:#16263f;color:#eef1f5;box-shadow:0 18px 36px rgba(4,9,18,0.45);font-family:'Hanken Grotesk', 'Helvetica Neue', Helvetica, sans-serif;font-size:13px;font-weight:700}
.lv-toast small{display:block;margin-top:2px;font-family:'IBM Plex Mono', ui-monospace, monospace;font-size:10px;font-weight:500;letter-spacing:0.06em;text-transform:uppercase;color:#a9b4c4}
.lv-toast .lv-ico{width:30px;height:30px;border-radius:9px;background:#22344f}
.lv-wackeln{animation:lv-wackeln .5s ease-in-out 2}
@keyframes lv-wackeln{25%{margin-left:-5px}75%{margin-left:5px}}

/* Personal */
.lv-linien{position:absolute;left:0;top:0;width:600px;height:400px;overflow:visible}
.lv-linien line{transition:opacity .5s ease;stroke-width:1.5}
.lv-person{display:grid;place-items:center;border-radius:50%;background:#dfe5ee;font-family:'Hanken Grotesk', 'Helvetica Neue', Helvetica, sans-serif;font-weight:800;color:#16263f;box-shadow:0 8px 18px rgba(22,38,63,0.16)}
.lv-person.lv-leitung{background:#16263f;color:#eef1f5}
.lv-person.lv-matt{opacity:.45}
.lv-lastring{position:absolute;width:118px;height:118px;transition:opacity .5s ease, border-color .4s ease;box-sizing:border-box;border-radius:50%;border:2px dashed #16263f;opacity:0}
.lv-lastring.lv-an{opacity:1;animation:lv-puls 1.1s ease-in-out infinite}
.lv-lastring.lv-ruhig{opacity:1;border:2px solid var(--accent);animation:none}
@keyframes lv-puls{50%{transform:scale(1.08)}}
.lv-aufgabe{height:28px;box-sizing:border-box;display:flex;align-items:center;gap:7px;padding:0 11px;border-radius:14px;background:#fff;box-shadow:0 6px 14px rgba(22,38,63,0.14);font-family:'Hanken Grotesk', 'Helvetica Neue', Helvetica, sans-serif;font-size:11.5px;font-weight:700;color:#16263f;white-space:nowrap}
.lv-aufgabe::before{content:"";width:6px;height:6px;border-radius:50%;background:#16263f}
.lv-aufgabe.lv-ok::before{background:var(--accent)}

/* Leiste unter der Bildfläche: Statik-Etikett und Schalter */
.lv-leiste{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px}
.lv-schalter{display:inline-flex;padding:3px;border-radius:10px;background:#111a29;border:1px solid #2c4062}
.lv-schalter button{min-height:34px;padding:0 12px;border:0;border-radius:7px;background:transparent;color:#a9b4c4;font-family:'IBM Plex Mono', ui-monospace, monospace;font-size:11px;font-weight:500;letter-spacing:0.06em;text-transform:uppercase;cursor:pointer;transition:background-color .25s ease, color .25s ease}
.lv-schalter button:hover{color:#eef1f5}
.lv-schalter button[aria-pressed="true"]{background:var(--accent);color:#111a29}
@media (prefers-reduced-motion:reduce){
  .lv-teil,.lv-raum,.lv-haken,.lv-box,.lv-offen,.lv-linien line{transition:none !important}
  .lv-lastring.lv-an,.lv-zug,.lv-wackeln{animation:none}
}

/* ===== Ergebnis ===== */
.haus{padding:clamp(64px, 8vw, 110px) 0 0}

/* ===== Aufruf zum Erstgespräch ===== */
.cta-section{padding:clamp(56px, 7vw, 96px) clamp(16px, 4vw, 40px) 0}
.cta{max-width:1000px;margin:0 auto;border-radius:22px;background:var(--accent);color:#111a29;padding:clamp(28px, 4vw, 48px) clamp(20px, 4vw, 48px) 12px;display:flex;flex-direction:column;gap:22px}
.cta-title{margin:0;max-width:16ch;font-weight:800;font-size:clamp(34px, 5vw, 64px);line-height:1.05;letter-spacing:-0.03em;text-wrap:balance}
.cta-lead{margin:0;max-width:46ch;font-size:19px}
.ps-ctabar{margin:14px clamp(-36px, -3vw, -8px) 0;display:grid;grid-template-columns:minmax(0, 1fr) 88px;gap:6px;text-decoration:none}
.ctabar-text{display:flex;align-items:center;min-height:88px;padding:0 28px;border-radius:16px;background:#111a29;color:#eef1f5;font-weight:800;font-size:clamp(22px, 3vw, 34px);letter-spacing:-0.02em}
.ctabar-icon{display:flex;align-items:center;justify-content:center;border-radius:16px;background:#111a29}

/* ===== Partner ===== */
.partner{padding:clamp(48px, 6vw, 72px) clamp(16px, 4vw, 40px) 0;text-align:center}
.partner-titel{margin:0 0 26px;font-weight:500}
.partner-liste{max-width:1000px;margin:0 auto;padding:28px 0;list-style:none;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:28px clamp(48px, 8vw, 96px);border-top:1px solid #22344f;border-bottom:1px solid #22344f}
.partner-liste img{display:block;width:auto;height:40px;opacity:0.88;transition:opacity .2s ease}
.partner-liste .partner-pflegaris{height:46px}
.partner-liste .partner-dokuone{height:34px}
.partner-liste li:hover img{opacity:1}
@media (max-width:560px){.partner-liste .partner-pflegaris{height:38px}.partner-liste .partner-dokuone{height:28px}}

/* ===== Fußzeile ===== */
.site-footer{padding:clamp(48px, 6vw, 80px) clamp(16px, 4vw, 40px) 96px}
.ps-foot{max-width:1000px;margin:0 auto;display:grid;grid-template-columns:repeat(4, minmax(0, 1fr));gap:28px;font-size:15px;color:#8a97aa}
.foot-col{display:grid;gap:6px;align-content:start}
.foot-col a[aria-current="page"]{color:var(--accent)}
.page-body--ende{padding-bottom:clamp(48px, 6vw, 80px)}
@media (max-width:1000px){.ps-foot{grid-template-columns:repeat(2, minmax(0, 1fr))}}
.foot-brand{color:#eef1f5;font-weight:800;font-size:19px;letter-spacing:-0.02em}

/* ===== Schwebende Navigation ===== */
.dock{position:sticky;bottom:16px;z-index:25;height:0;display:flex;justify-content:center;align-items:flex-end;opacity:0;pointer-events:none;transition:opacity 0.3s}
.ps-dock{position:relative;display:flex;align-items:center;gap:4px;padding:5px;border-radius:14px;background:#16263f;border:1px solid #2c4062;font-family:'IBM Plex Mono', ui-monospace, monospace;font-size:12px;letter-spacing:0.06em;text-transform:uppercase;white-space:nowrap}
.dock-top{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:10px;background:#111a29}
.dock-cta,.dock-cta:hover{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border-radius:10px;background:var(--accent);color:#111a29;text-decoration:none}

/* ===== Zugänglichkeit ===== */
.skip-link{position:absolute;left:16px;top:-80px;z-index:100;padding:12px 18px;border-radius:10px;background:var(--accent);color:#111a29;font-family:'IBM Plex Mono', ui-monospace, monospace;font-size:12px;letter-spacing:0.06em;text-transform:uppercase;text-decoration:none}
.skip-link:focus,.skip-link:hover{top:12px;color:#111a29}
.hnav-link[aria-current="page"],.ps-ddbtn.is-current,.ps-dl[aria-current="page"],.ps-mm-nav a[aria-current="page"]{color:var(--accent)}

/* ===== Unterseiten ===== */
.page-hero{padding:clamp(56px, 8vw, 104px) clamp(16px, 4vw, 40px) clamp(32px, 4vw, 56px);display:flex;flex-direction:column;align-items:center;gap:24px;text-align:center}
.page-title{margin:0;max-width:18ch;font-weight:800;font-size:clamp(38px, 5.4vw, 72px);line-height:1.05;letter-spacing:-0.03em;color:#eef1f5;text-wrap:balance;hyphens:auto}
.page-body{max-width:1000px;margin:0 auto;padding:0 clamp(16px, 4vw, 40px);display:grid;gap:16px}
.page-section{padding-top:clamp(48px, 6vw, 80px)}
.sub-title{margin:0;font-weight:800;font-size:clamp(24px, 2.6vw, 32px);line-height:1.1;letter-spacing:-0.02em;color:#eef1f5}
.platzhalter{border:1px dashed #3a5078;border-radius:20px;padding:28px;display:grid;gap:10px}
.platzhalter p{margin:0;max-width:60ch;color:#a9b4c4}
.luecke{font-family:'IBM Plex Mono', ui-monospace, monospace;font-size:0.82em;letter-spacing:0.02em;color:var(--accent)}

/* Leistungskarten */
.leistungen-grid{display:flex;flex-wrap:wrap;gap:16px}
.leistungen-grid > .leistung{flex:1 1 280px}
.leistungen-grid--klein > .leistung{flex-basis:200px}
.leistung,.leistung:hover{display:flex;flex-direction:column;gap:12px;min-height:220px;padding:28px;border-radius:20px;background:#16263f;color:#c9d2df;text-decoration:none;transition:background .15s ease}
.leistung:hover{background:#1b2c48}
.leistung--klein,.leistung--klein:hover{min-height:150px;padding:22px 24px}
.leistung-title{margin:0;font-weight:700;font-size:24px;line-height:1.15;letter-spacing:-0.01em;color:#eef1f5}
.leistung--klein .leistung-title{font-size:19px}
.leistung-text{margin:0;font-size:16px;color:#a9b4c4}
.leistung-foot{margin-top:auto;display:flex;justify-content:flex-end}
.leistung:hover .leistung-foot svg{transform:translateX(4px)}
.leistung-foot svg{transition:transform .15s ease}

/* Kontakt */
.kontakt-grid{display:grid;grid-template-columns:minmax(0, 2fr) minmax(0, 1fr);gap:16px;align-items:start}
.formcard,.kontakt-info{background:#16263f;border-radius:20px;padding:clamp(20px, 3vw, 32px);display:grid;gap:20px}
.feld{display:grid;gap:8px}
.feld label,.check label{font-size:15px;font-weight:700;color:#eef1f5}
.check label{font-weight:500;color:#c9d2df}
.pflicht{font-weight:500;color:#a9b4c4}
.feld input,.feld textarea{box-sizing:border-box;width:100%;min-height:48px;padding:12px 14px;border:1px solid #3a5078;border-radius:10px;background:#111a29;color:#eef1f5;font:inherit;font-size:16px}
.feld textarea{min-height:160px;resize:vertical}
.feld input:focus-visible,.feld textarea:focus-visible{border-radius:10px;outline-offset:2px}
.feld input:user-invalid,.feld textarea:user-invalid{border-color:#f0a8a8}
.check{display:grid;grid-template-columns:22px minmax(0, 1fr);gap:12px;align-items:start}
.check input{width:20px;height:20px;margin:2px 0 0;accent-color:var(--accent)}
button.btn--accent{border:0;cursor:pointer;justify-self:start;font-weight:500}
.form-hinweis{margin:0;font-size:14px;color:#a9b4c4}
.form-status{margin:0;min-height:1.5em;font-size:15px;color:#eef1f5}
.form-status:empty{display:none}
.info-block{display:grid;gap:4px}
.info-block a{color:#eef1f5}
.info-block a:hover{color:var(--accent)}
.info-block address{font-style:normal;color:#c9d2df}
.info-block .info-text{margin:0 0 2px;font-size:15px;color:#a9b4c4}

/* Impressum und Datenschutz */
.legal{max-width:1000px;margin:0 auto;padding:0 clamp(16px, 4vw, 40px) clamp(24px, 4vw, 48px)}
.legal-block{display:grid;grid-template-columns:minmax(0, 1fr) minmax(0, 2fr);gap:10px 36px;padding:28px 0;border-top:1px solid #22344f}
.legal-block h2{margin:0;font-size:18px;font-weight:700;line-height:1.4;color:#eef1f5}
.legal-block p{margin:0 0 12px;color:#c9d2df;max-width:62ch}
.legal-block p:last-child{margin-bottom:0}

@media (max-width:820px){
  .kontakt-grid,.legal-block{grid-template-columns:minmax(0, 1fr)}
}

/* ===== Navigation: Dropdown und Handymenü ===== */
.ps-dl{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border-radius:10px;text-decoration:none}
.ps-ddbtn{display:inline-flex;align-items:center;gap:7px;padding:14px 0;border:0;background:none;color:#c9d2df;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer}
.ps-ddbtn:hover,.ps-ddbtn[aria-expanded="true"]{color:var(--accent)}
.ps-ddbtn svg{transition:transform .25s cubic-bezier(.2,.8,.2,1)}
.ps-ddbtn[aria-expanded="true"] svg{transform:rotate(45deg)}
.ps-dd[hidden]{display:none}
/* Leistungen-Dropdown nach dem Vorbild von effortel: schwebendes Kachelpanel, Seite dahinter abgedunkelt */
.ps-dd{position:absolute;top:calc(100% + 10px);left:50%;z-index:40;width:min(980px, calc(100vw - 48px));box-sizing:border-box;padding:6px;border-radius:18px;border:1px solid #2c4062;background-color:#111a29;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Ccircle cx='1.5' cy='1.5' r='1' fill='%231d2e48'/%3E%3C/svg%3E");box-shadow:0 30px 80px rgba(4,9,18,0.6);transform:translate(-50%, -8px) scale(.985);transform-origin:50% 0;opacity:0;visibility:hidden;transition:opacity .18s ease, transform .24s cubic-bezier(.2,.8,.2,1), visibility 0s linear .24s}
.ps-dd::before{content:"";position:absolute;left:0;right:0;top:-14px;height:14px}
.ps-dd.ist-offen{opacity:1;visibility:visible;transform:translate(-50%, 0) scale(1);transition:opacity .18s ease, transform .24s cubic-bezier(.2,.8,.2,1)}
.ps-dd-grid{display:grid;grid-template-columns:minmax(0, 1.25fr) minmax(0, 1fr) minmax(0, 1fr);grid-template-rows:repeat(3, minmax(112px, auto));gap:6px}
.ps-dd-feature,.ps-dd-kachel{position:relative;display:flex;flex-direction:column;border-radius:13px;border:1px solid #22344f;background:#16263f;color:#eef1f5;text-decoration:none;transition:background-color .2s ease, border-color .2s ease}
.ps-dd-feature:hover,.ps-dd-kachel:hover{background:#1b2c48;border-color:#2c4062;color:#eef1f5}
.ps-dd-feature[aria-current="page"],.ps-dd-kachel[aria-current="page"]{border-color:var(--accent)}
.ps-dd-feature{grid-row:1 / 4;grid-column:1;justify-content:space-between;padding:22px 22px 0;overflow:hidden}
.ps-dd-ftitel{display:block;font-size:20px;font-weight:700;line-height:1.2;letter-spacing:-0.01em}
.ps-dd-fsub{display:block;margin-top:6px;max-width:30ch;font-size:14px;line-height:1.45;color:#a9b4c4}
.ps-dd-bild{position:relative;display:block;height:190px;margin-top:20px}
.ps-dd-karte{position:absolute;display:block;border-radius:11px;background:#eceae6;box-shadow:0 16px 34px rgba(4,9,18,0.5);transition:transform .45s cubic-bezier(.2,.8,.2,1)}
.ps-dd-karte--a{left:0;bottom:-14px;width:66%;padding:14px 12px 8px;box-sizing:border-box}
.ps-dd-karte--a svg{display:block;width:100%;height:auto}
.ps-dd-karte--b{right:0;top:6px;width:46%;padding:12px;box-sizing:border-box;display:grid;gap:9px}
.ps-dd-zeile{display:flex;align-items:center;gap:8px}
.ps-dd-zeile i{flex:none;width:12px;height:12px;border-radius:50%;background:var(--accent)}
.ps-dd-zeile b{display:block;height:6px;width:100%;border-radius:3px;background:#d6d2cc}
.ps-dd-zeile b.kurz{width:62%}
.ps-dd-feature:hover .ps-dd-karte--a{transform:translate(4px, -6px) rotate(-1.5deg)}
.ps-dd-feature:hover .ps-dd-karte--b{transform:translate(-4px, 4px) rotate(2deg)}
.ps-dd-kachel{justify-content:space-between;gap:18px;padding:16px}
.ps-dd-kachel--breit{grid-column:2 / 4}
.ps-dd-ico{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;border:1px solid #2c4062;background:#111a29;color:var(--accent);transition:transform .25s cubic-bezier(.2,.8,.2,1)}
.ps-dd-kachel:hover .ps-dd-ico{transform:translateY(-2px)}
.ps-dd-nr{position:absolute;top:16px;right:16px;font-family:'IBM Plex Mono', ui-monospace, monospace;font-size:11px;letter-spacing:0.06em;color:#8a97aa}
.ps-dd-titel{font-size:15px;font-weight:700;line-height:1.3}
.ps-dd-feature:focus-visible,.ps-dd-kachel:focus-visible{outline-offset:-3px;border-radius:13px}
.ps-schleier{position:fixed;inset:0;z-index:29;background:rgba(9,14,24,0.55);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);opacity:0;visibility:hidden;transition:opacity .22s ease, visibility 0s linear .22s}
.ps-schleier.ist-an{opacity:1;visibility:visible;transition:opacity .22s ease}
@media (prefers-reduced-motion:reduce){.ps-dd,.ps-dd.ist-offen,.ps-schleier,.ps-dd-karte,.ps-dd-ico{transition:none}}
@media (max-width:1240px){.ps-nav{display:none !important}.ps-dd,.ps-schleier{display:none !important}}
@media (max-width:820px){.ps-dl{padding:0 9px}}
@media (max-width:700px){.ps-dl{display:none}}
@keyframes ps-run{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.ps-run{animation:ps-run 38s linear infinite}
@media (prefers-reduced-motion:reduce){.ps-run{animation:none}}
@media (max-width:820px){
  .ps-nav{display:none !important}
  .ps-stage{height:auto !important;min-height:min(100vh, 760px)}
  .ps-panel{position:relative !important;inset:auto !important;display:flex !important;flex-direction:column !important;margin:0 12px !important;background:#16263f !important}
  .ps-view{position:relative !important;inset:auto !important;width:100% !important;height:auto !important;aspect-ratio:4/3}
  .ps-side{position:relative !important;inset:auto !important;width:auto !important;padding:16px !important;min-height:250px}
  .ps-cap{left:16px !important;right:16px !important;top:76px !important;bottom:auto !important;background:transparent !important;padding:0 !important}
  .ps-card{grid-template-columns:repeat(1, minmax(0, 1fr)) !important;position:relative !important;top:auto !important}
  .ps-pane{order:2 !important;padding:0 12px 16px}
  .ps-ctabar{grid-template-columns:minmax(0, 1fr) 64px !important}
  .ps-foot{grid-template-columns:repeat(1, minmax(0, 1fr)) !important}
}

/* ===== Fachwissen (Übersicht und Beiträge, erzeugt von werkzeuge/fachwissen.py) ===== */
.fw-hero{padding-bottom:clamp(28px, 3vw, 44px)}
.fw-titel{max-width:22ch;font-size:clamp(34px, 4.6vw, 60px)}
.fw-pfad{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;font-family:'IBM Plex Mono', ui-monospace, monospace;font-size:12px;letter-spacing:0.06em;text-transform:uppercase;color:#8a97aa}
.fw-pfad a{color:#a9b4c4;text-decoration:none}
.fw-pfad a:hover{color:var(--accent)}
.fw-meta{margin:0;font-family:'IBM Plex Mono', ui-monospace, monospace;font-size:13px;letter-spacing:0.04em;color:#8a97aa}
.fw-wrap{max-width:1120px;margin:0 auto;padding:0 clamp(16px, 4vw, 40px) clamp(24px, 4vw, 48px);display:grid;grid-template-columns:240px minmax(0, 1fr);gap:56px;align-items:start}
.fw-toc{position:sticky;top:100px;display:grid;gap:12px}
.fw-toc ol{margin:0;padding:0;list-style:none;display:grid;border-left:1px solid #22344f}
.fw-toc a{display:block;margin-left:-1px;padding:7px 0 7px 14px;border-left:1px solid transparent;font-size:15px;line-height:1.35;color:#a9b4c4;text-decoration:none}
.fw-toc a:hover{border-left-color:var(--accent);color:#eef1f5}
.fw-text{max-width:68ch;font-size:18px;line-height:1.7;color:#c9d2df}
.fw-text h2{margin:56px 0 16px;font-weight:800;font-size:clamp(24px, 2.4vw, 30px);line-height:1.2;letter-spacing:-0.02em;color:#eef1f5;scroll-margin-top:100px}
.fw-text h2:first-child{margin-top:0}
.fw-text h3{margin:32px 0 10px;font-size:20px;font-weight:700;line-height:1.3;color:#eef1f5}
.fw-text p{margin:0 0 18px}
.fw-text ul,.fw-text ol{margin:0 0 18px;padding-left:1.3em}
.fw-text li{margin:0 0 8px;padding-left:4px}
.fw-text li::marker{color:var(--accent)}
.fw-text a{color:#eef1f5;text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:3px}
.fw-text a:hover{color:var(--accent)}
.fw-text strong{color:#eef1f5}
.fw-hinweis{margin:0 0 24px;padding:18px 22px;border-left:3px solid var(--accent);border-radius:0 12px 12px 0;background:#16263f}
.fw-hinweis p{margin:0}
.fw-text .fw-quellen{font-size:15px;line-height:1.55;overflow-wrap:anywhere}
.fw-text .fw-rechtlich{margin:40px 0 0;padding-top:20px;border-top:1px solid #22344f;font-size:14px;line-height:1.6;color:#8a97aa}
.fw-text .fw-leistung{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:24px;padding:22px 24px;border-radius:20px;background:#16263f;text-decoration:none;transition:background .15s ease}
.fw-text .fw-leistung:hover{background:#1b2c48;color:#eef1f5}
.fw-leistung-name{display:block;margin-top:6px;font-weight:700;font-size:22px;line-height:1.2;color:#eef1f5}
.fw-leistung svg{flex:none;transition:transform .15s ease}
.fw-leistung:hover svg{transform:translateX(4px)}
.fw-weitere{padding-top:clamp(32px, 4vw, 56px)}
.fw-karte .leistung-title{font-size:21px}
.fw-karte-foot{justify-content:space-between;align-items:center;gap:12px}
.fw-stand{font-family:'IBM Plex Mono', ui-monospace, monospace;font-size:12px;letter-spacing:0.06em;text-transform:uppercase;color:#8a97aa}
@media (max-width:900px){
  .fw-wrap{grid-template-columns:minmax(0, 1fr);gap:28px}
  .fw-toc{position:static;padding:20px 22px;border-radius:16px;background:#16263f}
  .fw-toc ol{border-left:0}
  .fw-toc a{margin-left:0;padding-left:0;border-left:0}
  .fw-text{font-size:17px}
}
.fw-tragwerk{margin:56px 0;padding:clamp(22px, 3vw, 36px);border:1px solid #2c4062;border-radius:20px;background:#16263f}
.fw-tragwerk > .label{margin-bottom:14px}
.fw-text .fw-tragwerk h2{margin-top:0}
.fw-tragwerk p:last-child,.fw-tragwerk ul:last-child{margin-bottom:0}

/* ===== Vertriebspartner ===== */
.vp-titel{hyphens:manual}
.vp-einleitung{margin:0 0 clamp(16px, 3vw, 32px);max-width:62ch;font-size:18px;color:#c9d2df}
.vp-einleitung a,.vp-direkt a{color:#eef1f5;text-decoration-color:var(--accent);text-underline-offset:3px}
.vp-vorteil,.vp-vorteil:hover{background:#16263f;cursor:default}
.vp-direkt{margin:4px 0 0;color:#c9d2df}
.vp-film{margin:0 0 clamp(24px, 4vw, 48px)}
.vp-film video{display:block;width:100%;height:auto;aspect-ratio:16/9;border:1px solid #2c4062;border-radius:20px;background:#16263f}
.vp-film video::cue{font-family:'Hanken Grotesk', system-ui, sans-serif;background:rgba(17,26,41,.82);color:#eef1f5}
.vp-film figcaption{margin-top:12px;font-family:'IBM Plex Mono', ui-monospace, monospace;font-size:12px;letter-spacing:0.06em;text-transform:uppercase;color:#a9b4c4}
.feld-paar{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:20px}
.feld select{box-sizing:border-box;width:100%;min-height:48px;padding:12px 40px 12px 14px;border:1px solid #3a5078;border-radius:10px;background:#111a29 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='M2.5 4.5L6 8l3.5-3.5' stroke='%23a9b4c4' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 14px center;color:#eef1f5;font:inherit;font-size:16px;-webkit-appearance:none;appearance:none}
.feld select:user-invalid{border-color:#f0a8a8}
.feld-hilfe{margin:0;font-size:14px;color:#a9b4c4}
@media (max-width:560px){.feld-paar{grid-template-columns:minmax(0, 1fr)}}
.vp-vorteile > .leistung{flex:1 1 360px}
.feld textarea[rows="3"]{min-height:96px}

/* ===== Über uns ===== */
.uu-warum,.uu-team-kopf{padding-left:clamp(16px, 5vw, 72px);padding-right:clamp(16px, 5vw, 72px)}
.uu-titel{margin:0;font-weight:800;font-size:clamp(20px, 2vw, 26px);letter-spacing:-0.01em;color:#a9b4c4}
.uu-h2{margin:0;font-weight:800;font-size:clamp(30px, 4vw, 56px);line-height:1.02;letter-spacing:-0.03em;color:#eef1f5}
.uu-warum{padding-top:clamp(56px, 7vw, 104px);padding-bottom:clamp(56px, 7vw, 104px)}
.uu-warum-kopf,.uu-team-kopf{display:grid;gap:14px;margin-bottom:clamp(32px, 5vw, 64px)}

/* Fachwerkträger über die ganze Breite, zeichnet sich von links nach rechts (Klasse ist-sichtbar aus main.js) */
.uu-traeger{position:relative}
.uu-fachwerk{display:block;width:100%;height:clamp(56px, 7vw, 96px);overflow:visible}
.uu-fachwerk path{fill:none;stroke:#3a5078;stroke-width:1.2;vector-effect:non-scaling-stroke;stroke-linecap:round}
.uu-fachwerk .uu-gurt{stroke:#cfcdca;stroke-opacity:0.55;stroke-width:1.6}
.uu-traeger[data-zeichnen] .uu-fachwerk{clip-path:inset(0 100% 0 0);transition:clip-path 1.6s cubic-bezier(.6,0,.2,1)}
.uu-traeger.ist-sichtbar .uu-fachwerk{clip-path:inset(0 0 0 0)}
.uu-auflager{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3, minmax(0, 1fr))}
.uu-auflager li{position:relative;display:grid;gap:12px;align-content:start;padding:44px clamp(16px, 2.6vw, 40px) 0;border-left:1px solid #22324f}
.uu-auflager li:first-child{border-left:0}
.uu-knoten{position:absolute;top:-1px;left:50%;width:0;height:0;border-left:14px solid transparent;border-right:14px solid transparent;border-bottom:22px solid #3a5078;transform:translateX(-50%);transition:border-bottom-color .5s ease}
.uu-traeger.ist-sichtbar .uu-knoten{border-bottom-color:var(--accent)}
.uu-traeger.ist-sichtbar li:nth-child(1) .uu-knoten{transition-delay:.7s}
.uu-traeger.ist-sichtbar li:nth-child(2) .uu-knoten{transition-delay:1.1s}
.uu-traeger.ist-sichtbar li:nth-child(3) .uu-knoten{transition-delay:1.5s}
.uu-nr{font-family:'IBM Plex Mono', ui-monospace, monospace;font-size:12px;letter-spacing:0.08em;color:#8a97aa}
.uu-auflager h3{margin:0;font-weight:800;font-size:clamp(22px, 2.2vw, 30px);line-height:1.1;letter-spacing:-0.02em;color:#eef1f5}
.uu-auflager p{margin:0;max-width:38ch;font-size:17px;color:#c9d2df}

/* Personen: volle Breite, Bild bis an den Rand */
.uu-team{padding-top:clamp(56px, 7vw, 104px);border-top:1px solid #22324f}
.uu-mensch{display:grid;grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);min-height:min(88vh, 820px);background:#16263f;border-top:1px solid #2c4062}
.uu-mensch:last-child{border-bottom:1px solid #2c4062}
.uu-mensch--links .uu-bild{order:-1}
.uu-mensch-text{display:grid;align-content:center;gap:20px;padding:clamp(40px, 6vw, 96px) clamp(16px, 5vw, 72px)}
.uu-name{margin:0;font-weight:800;font-size:clamp(56px, 8.4vw, 136px);line-height:0.92;letter-spacing:-0.045em;color:#eef1f5}
.uu-intro{margin:0;max-width:52ch;font-size:18px;color:#c9d2df}
.uu-daten{margin:8px 0 0;display:grid;border-top:1px solid #2c4062}
.uu-daten > div{display:grid;grid-template-columns:minmax(110px, 0.32fr) minmax(0, 1fr);gap:16px;padding:12px 0;border-bottom:1px solid #2c4062}
.uu-daten dt{font-family:'IBM Plex Mono', ui-monospace, monospace;font-size:12px;letter-spacing:0.06em;text-transform:uppercase;color:#8a97aa;padding-top:3px}
.uu-daten dd{margin:0;color:#eef1f5}
.uu-bild{position:relative;margin:0;overflow:hidden;background:#111a29}
.uu-bild img{position:absolute;inset:-6% 0;width:100%;height:112%;object-fit:cover;transform:translate3d(0, var(--uu-versatz, 0px), 0);will-change:transform}
.uu-bild figcaption{position:absolute;left:16px;bottom:14px;font-family:'IBM Plex Mono', ui-monospace, monospace;font-size:11px;letter-spacing:0.08em;color:#a9b4c4;background:rgba(17,26,41,0.7);padding:4px 8px;border-radius:6px}
@media (max-width:900px){
  .uu-auflager{grid-template-columns:minmax(0, 1fr);gap:36px;margin-top:8px;border-left:1px solid #3a5078;margin-left:14px}
  .uu-fachwerk{display:none}
  .uu-auflager li{border-left:0;padding:0 0 0 28px}
  .uu-knoten{top:4px;left:-1px;border-left-width:9px;border-right-width:9px;border-bottom-width:14px}
  .uu-mensch,.uu-mensch--links{grid-template-columns:minmax(0, 1fr);min-height:0}
  .uu-mensch .uu-bild{order:-1;aspect-ratio:4 / 5;max-height:72vh}
  .uu-daten > div{grid-template-columns:minmax(0, 1fr);gap:4px}
}
@media (prefers-reduced-motion:reduce){
  .uu-traeger[data-zeichnen] .uu-fachwerk{clip-path:none;transition:none}
  .uu-knoten{transition:none}
  .uu-bild img{transform:none}
}

/* ===== Gründung (volle Breite, Bauzeitenplan) ===== */
/* Inhalt höchstens 1240 px breit und mittig; Trennlinien der Abschnitte laufen weiter über die ganze Breite */
.bk,.gr-plan,.gr-last,.gr-weiter{--gr-rand:max(clamp(16px, 5vw, 72px), calc((100% - 1240px) / 2));padding-left:var(--gr-rand);padding-right:var(--gr-rand)}
.bk{padding-top:clamp(56px, 8vw, 112px);padding-bottom:clamp(48px, 6vw, 88px);display:grid;gap:24px;position:relative;isolation:isolate;overflow:hidden}
/* Hintergrundbild Baustelle (Miniaturwelt), Baustelle rechts, links Nachthimmel für den Text. Flache Abdeckung, kein Verlauf. */
.bk > :not(.bk-bild){position:relative;z-index:1}
.bk-bild{position:absolute;inset:0;z-index:0;pointer-events:none;background:#111a29;-webkit-mask-image:linear-gradient(to bottom, #000 0%, #000 64%, rgba(0,0,0,0.55) 85%, transparent 100%);mask-image:linear-gradient(to bottom, #000 0%, #000 64%, rgba(0,0,0,0.55) 85%, transparent 100%)}
.bk-bild img{display:block;width:100%;height:100%;object-fit:cover;object-position:70% 70%}
.bk-bild::after{content:"";position:absolute;inset:0;background:rgba(17,26,41,var(--bk-abdeckung, 0.68))}
@media (max-width:900px){.bk-bild{--bk-abdeckung:0.8}}
@media (min-width:901px){
  .bk{min-height:min(46vw, 780px);box-sizing:border-box;align-content:center}
  .bk .bk-titel{max-width:12.5ch;font-size:clamp(44px, 5.2vw, 88px)}
  .bk .bk-lead{max-width:40ch}
}
.bk .bk-lead{color:#eef1f5}
.bk > .label{color:#dfe5ee}
.bk-titel{margin:0;max-width:20ch;font-weight:800;font-size:clamp(38px, 6.2vw, 96px);line-height:1.02;letter-spacing:-0.035em;color:#eef1f5;text-wrap:balance}
.bk-titel em{font-style:normal;color:var(--accent)}
.bk-lead{margin:0;max-width:56ch;font-size:clamp(18px, 1.6vw, 21px);color:#c9d2df}
.bk-aktion{margin-top:8px}
.gr-h2{margin:0;font-weight:800;font-size:clamp(30px, 4vw, 56px);line-height:1.02;letter-spacing:-0.03em;color:#eef1f5}
.gr-plan,.gr-last{padding-top:clamp(56px, 7vw, 104px);padding-bottom:clamp(40px, 5vw, 72px)}
.gr-plan-kopf{display:grid;gap:14px;margin-bottom:clamp(32px, 5vw, 64px)}
.gr-plan-kopf p{margin:0;max-width:56ch;font-size:18px;color:#c9d2df}

/* Phasen mit Fortschrittslinie links (Höhe per --gr-fortschritt aus main.js) */
.gr-phasen{position:relative;list-style:none;margin:0;padding:0 0 0 clamp(36px, 5vw, 72px)}
.gr-phasen::before,.gr-phasen::after{content:"";position:absolute;left:clamp(8px, 1.5vw, 20px);top:0;width:2px;border-radius:2px}
.gr-phasen::before{bottom:0;background:#22324f}
.gr-phasen::after{height:calc(var(--gr-fortschritt, 0) * 100%);background:var(--accent)}
.gr-phase{position:relative;display:grid;grid-template-columns:minmax(0, 0.9fr) minmax(0, 1.1fr);gap:clamp(20px, 4vw, 72px);padding:clamp(32px, 4vw, 56px) 0;border-top:1px solid #22324f}
.gr-phase:first-child{border-top:0;padding-top:0}
.gr-knoten{position:absolute;top:clamp(36px, 4.4vw, 60px);left:calc(-1 * clamp(36px, 5vw, 72px) + clamp(8px, 1.5vw, 20px) + 1px);width:18px;height:18px;margin-left:-9px;border-radius:50%;background:#111a29;border:2px solid #3a5078;box-sizing:border-box;transition:border-color .3s ease, background .3s ease}
.gr-phase:first-child .gr-knoten{top:4px}
.gr-phase.ist-erreicht .gr-knoten{border-color:var(--accent);background:var(--accent)}
.gr-phase-kopf{display:grid;gap:12px;align-content:start}
.gr-nr{font-weight:800;font-size:clamp(64px, 9vw, 140px);line-height:0.8;letter-spacing:-0.05em;color:#22324f;transition:color .4s ease}
.gr-phase.ist-erreicht .gr-nr{color:#2c4062}
.gr-titel{margin:0;font-weight:800;font-size:clamp(26px, 3vw, 40px);line-height:1.05;letter-spacing:-0.025em;color:#eef1f5}
.gr-phase-text{display:grid;gap:18px;align-content:start}
.gr-phase-text > p{margin:0;max-width:56ch;font-size:18px;color:#c9d2df}
.gr-liste{margin:0;padding:0;list-style:none;display:grid;border-top:1px solid #2c4062}
.gr-liste li{position:relative;padding:12px 0 12px 28px;border-bottom:1px solid #2c4062;color:#eef1f5}
.gr-liste li::before{content:"";position:absolute;left:2px;top:19px;width:10px;height:10px;border:1.6px solid var(--accent);border-radius:2px;box-sizing:border-box}
.gr-hinweis{margin:0;padding:14px 16px;border-left:2px solid var(--accent);background:#16263f;border-radius:0 10px 10px 0;font-size:15px;color:#c9d2df}
.gr-mehr,.gr-mehr:hover{display:inline-flex;align-items:center;gap:10px;justify-self:start;font-family:'IBM Plex Mono', ui-monospace, monospace;font-size:12px;letter-spacing:0.06em;text-transform:uppercase;color:#eef1f5;text-decoration:none;border-bottom:1px solid var(--accent);padding-bottom:4px}
.gr-mehr svg{color:var(--accent);transition:transform .15s ease}
.gr-mehr:hover svg{transform:translateX(3px)}

/* Lastverteilung */
.gr-last{border-top:1px solid #22324f}
.gr-last-raster{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));border:1px solid #2c4062;border-radius:20px;overflow:hidden}
.gr-last-spalte{display:grid;gap:18px;align-content:start;padding:clamp(24px, 3.5vw, 48px)}
.gr-last-spalte--wir{background:#16263f;border-left:1px solid #2c4062}
.gr-last-kopf{display:flex;align-items:center;gap:14px}
.gr-last-kopf h3{margin:0;font-weight:800;font-size:clamp(24px, 2.4vw, 32px);letter-spacing:-0.02em;color:#eef1f5}
.gr-last-zeichen{width:0;height:0;border-left:11px solid transparent;border-right:11px solid transparent;border-bottom:18px solid var(--accent)}
.gr-last-zeichen--sie{border-bottom-color:#cfcdca}

/* Weiterlesen */
.gr-weiter{padding-top:clamp(24px, 3vw, 40px)}
.gr-weiter-karte,.gr-weiter-karte:hover{position:relative;display:grid;gap:10px;padding:clamp(24px, 3.5vw, 44px) clamp(24px, 3.5vw, 44px) clamp(24px, 3.5vw, 44px);padding-right:clamp(64px, 8vw, 120px);border:1px solid #2c4062;border-radius:20px;text-decoration:none;color:#c9d2df;transition:background .15s ease}
.gr-weiter-karte:hover{background:#16263f}
.gr-weiter-titel{font-weight:800;font-size:clamp(22px, 2.4vw, 32px);line-height:1.12;letter-spacing:-0.02em;color:#eef1f5;max-width:30ch}
.gr-weiter-text{max-width:60ch}
.gr-weiter-pfeil{position:absolute;right:clamp(24px, 3.5vw, 44px);top:50%;transform:translateY(-50%);transition:transform .15s ease}
.gr-weiter-karte:hover .gr-weiter-pfeil{transform:translate(4px, -50%)}

@media (max-width:900px){
  .gr-phase{grid-template-columns:minmax(0, 1fr)}
  .gr-nr{font-size:64px}
  .gr-last-raster{grid-template-columns:minmax(0, 1fr)}
  .gr-last-spalte--wir{border-left:0;border-top:1px solid #2c4062}
}
@media (prefers-reduced-motion:reduce){
  .gr-knoten,.gr-nr{transition:none}
}

/* Fachwissen-Übersicht: Beitragskarten rücken bis knapp unter den Bordstein im Kopfbild */
.fw-liste{position:relative;z-index:1}
@media (min-width:901px){.fw-liste{margin-top:-56px}}

/* Über uns: Bild-Kopf mit Team-Reihe; „Über uns“ als kleine H1 über dem großen Satz */
.bk .uu-titel{color:#c9d2df}

/* ===== Karriere (Inhalt höchstens 1240 px, wie Bild-Kopf) ===== */
.ka-abschnitt{--ka-rand:max(clamp(16px, 5vw, 72px), calc((100% - 1240px) / 2));padding:clamp(56px, 7vw, 104px) var(--ka-rand) 0;display:grid;gap:18px}
.ka-h2{margin:0;font-weight:800;font-size:clamp(30px, 4vw, 56px);line-height:1.02;letter-spacing:-0.03em;color:#eef1f5}
.ka-h2 em{font-style:normal;color:var(--accent)}
.ka-mission{grid-template-columns:minmax(0, 1fr)}
.ka-mission-text{display:grid;gap:16px;max-width:64ch;margin-top:8px}
.ka-mission-text p{margin:0;font-size:18px;color:#c9d2df}
.ka-mission-text .ka-gross{font-size:clamp(21px, 2vw, 26px);line-height:1.35;color:#eef1f5}
.ka-einleitung{margin:0;max-width:60ch;font-size:18px;color:#c9d2df}
.ka-werte{list-style:none;margin:16px 0 0;padding:0;display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));border-top:1px solid #2c4062;border-left:1px solid #2c4062}
.ka-wert{display:grid;gap:10px;align-content:start;padding:clamp(22px, 2.6vw, 34px);border-right:1px solid #2c4062;border-bottom:1px solid #2c4062}
.ka-wert-nr{font-family:'IBM Plex Mono', ui-monospace, monospace;font-size:12px;letter-spacing:0.08em;color:var(--accent)}
.ka-wert h3{margin:0;font-weight:800;font-size:clamp(20px, 1.8vw, 24px);line-height:1.15;letter-spacing:-0.015em;color:#eef1f5}
.ka-wert p{margin:0;color:#c9d2df}
.ka-bild-platz{display:grid;place-items:center;border:1px dashed #3a5078;box-sizing:border-box}
.ka-initiativ{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;margin-top:8px;padding:clamp(22px, 3vw, 36px);border-radius:20px;background:#16263f;border:1px solid #2c4062}
.ka-initiativ h3{margin:0 0 6px;font-weight:800;font-size:clamp(22px, 2vw, 28px);color:#eef1f5}
.ka-initiativ p{margin:0;max-width:56ch;color:#c9d2df}
@media (max-width:900px){.ka-werte{grid-template-columns:minmax(0, 1fr)}}
@media (min-width:901px) and (max-width:1180px){.ka-werte{grid-template-columns:repeat(2, minmax(0, 1fr))}}

/* Karriere: Arbeitsplatz im Zickzack, Bilder als liegendes Oval (Kreis in die Breite gezogen) */
.ka-bilder{display:grid;gap:clamp(40px, 6vw, 96px);margin-top:clamp(16px, 3vw, 40px)}
.ka-bild{margin:0;display:grid;grid-template-columns:minmax(0, 1.15fr) minmax(0, 0.85fr);align-items:center;gap:clamp(24px, 5vw, 80px)}
.ka-bild:nth-of-type(even){grid-template-columns:minmax(0, 0.85fr) minmax(0, 1.15fr)}
.ka-bild-platz{display:grid;place-items:center;border:1px dashed #3a5078;box-sizing:border-box}
.ka-bild-text{display:grid;gap:12px}
.ka-bild-text h3{margin:0;font-weight:800;font-size:clamp(26px, 3vw, 40px);line-height:1.05;letter-spacing:-0.025em;color:#eef1f5}
.ka-bild-text p{margin:0;max-width:40ch;font-size:18px;color:#c9d2df}
@media (max-width:900px){
  .ka-bild,.ka-bild:nth-of-type(even){grid-template-columns:minmax(0, 1fr);gap:20px}
}
/* Organische Bildform (Vorbild HubSpot „Our Mission“): Bild in weicher Freiform, dahinter eine blasse zweite Form */
.ka-formen{position:absolute;width:0;height:0}
.ka-form{position:relative;isolation:isolate}
.ka-bild:nth-of-type(even) .ka-form{order:2}
.ka-form::before{content:"";position:absolute;z-index:-1;inset:14% -4% -10% 8%;background:#1a2a44;clip-path:url(#ka-form-9)}
.ka-bild:nth-of-type(even) .ka-form::before{inset:16% 8% -10% -5%}
.ka-form img{display:block;width:100%;height:auto;aspect-ratio:6 / 5;object-fit:cover;clip-path:url(#ka-form-1);filter:drop-shadow(0 24px 40px rgba(0,0,0,0.35))}
.ka-bild:nth-of-type(2) .ka-form img{clip-path:url(#ka-form-2)}
.ka-bild:nth-of-type(3) .ka-form img{clip-path:url(#ka-form-3)}
@media (max-width:900px){.ka-bild:nth-of-type(even) .ka-form{order:0}}
/* Gestrichelte Verbindung zwischen den Arbeitsplatz-Bildern, zeichnet sich beim Scrollen (main.js) */
.ka-bilder{position:relative}
.ka-bild{position:relative;z-index:1}
.ka-weg{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:0}
.ka-weg-linie{fill:none;stroke:var(--accent);stroke-width:2;stroke-dasharray:2 10;stroke-linecap:round;opacity:0.85}
.ka-weg-zug{fill:none;stroke:#fff;stroke-width:12;stroke-linecap:round}
@media (prefers-reduced-motion:reduce){.ka-weg-zug{stroke-dashoffset:0 !important}}
@media (max-width:900px){.ka-weg{display:none}}
.ka-form .ka-bild-platz{aspect-ratio:6 / 5;border-radius:42% 58% 55% 45% / 48% 42% 58% 52%}
.ka-bild:nth-of-type(4) .ka-form img{clip-path:url(#ka-form-2)}
.ka-bild:nth-of-type(5) .ka-form img{clip-path:url(#ka-form-1)}
.ka-gemeinsam .ka-gross{margin:8px 0 0;max-width:34ch;font-size:clamp(22px, 2.4vw, 32px);line-height:1.3;font-weight:700;color:#eef1f5}
.ka-keine-stellen{display:grid;gap:6px;margin-top:8px;padding:clamp(22px, 3vw, 32px);border:1px solid #2c4062;border-radius:20px}
.ka-keine-stellen p{margin:0;color:#c9d2df}
.ka-keine-stellen .ka-keine-titel{font-weight:700;font-size:20px;color:#eef1f5}

/* Über uns: Inhalt unter dem Kopf wie auf den anderen Seiten höchstens 1240 px breit und mittig */
.uu-warum,.uu-team-kopf{--uu-rand:max(clamp(16px, 5vw, 72px), calc((100% - 1240px) / 2));padding-left:var(--uu-rand);padding-right:var(--uu-rand)}
.uu-team{border-top:0;padding-left:max(clamp(16px, 5vw, 72px), calc((100% - 1240px) / 2));padding-right:max(clamp(16px, 5vw, 72px), calc((100% - 1240px) / 2))}
.uu-team .uu-team-kopf{padding-left:0;padding-right:0}
.uu-mensch{min-height:0;border:1px solid #2c4062;border-radius:24px;overflow:hidden}
.uu-mensch + .uu-mensch{margin-top:24px}
.uu-mensch:last-child{border-bottom:1px solid #2c4062}
.uu-mensch-text{padding:clamp(32px, 4.5vw, 64px) clamp(24px, 4vw, 56px)}
.uu-name{font-size:clamp(48px, 6vw, 96px)}
.uu-mensch .uu-bild{min-height:clamp(420px, 44vw, 620px)}
.uu-warum{border-top:0}
.ka-initiativ .ka-ds{margin-top:8px;font-size:14px;color:#a9b4c4}
.ka-initiativ .ka-ds a{color:#eef1f5;text-decoration-color:var(--accent);text-underline-offset:3px}

/* ===== Vier Lasten am Schreibtisch: Animationen auf dem Monitor, wechseln beim Scrollen (main.js) =====
   Bildschirm im Bild (lasten-schreibtisch-*.webp, 1855 x 1384): links 22.96 %, oben 19.87 %, Breite 49.06 %, Höhe 37.72 % */
.la-szene{max-width:1240px;margin:clamp(24px, 4vw, 48px) auto 0}
.la-bild{position:relative}
.la-foto{display:block;width:100%;height:auto;border-radius:20px;box-shadow:0 30px 60px -30px rgba(17,26,41,0.6)}
.la-info{display:grid;gap:10px;align-content:start;color:#16263f}
.la-nr{font-family:'IBM Plex Mono', ui-monospace, monospace;font-size:12px;letter-spacing:0.08em;color:#4b566a}
.la-titel{margin:0;font-weight:800;font-size:clamp(28px, 3vw, 40px);line-height:1.05;letter-spacing:-0.025em;color:#16263f}
.la-text{margin:0;font-size:18px;color:#2c3a52}
.la-info .lv-leiste{margin-top:10px}
.la-info .lv-leiste .label{color:#4b566a}
.la-schritte{display:none}
.la-pane .lv{border:0;border-radius:2px}
@media (min-width:901px){
  .la-szene{height:400vh;max-width:none;margin-left:calc(-1 * clamp(16px, 4vw, 40px));margin-right:calc(-1 * clamp(16px, 4vw, 40px))}
  .la-buehne{position:sticky;top:73px;height:calc(100vh - 85px);overflow:hidden;border-radius:22px}
  .la-bild{position:absolute;inset:0}
  .la-foto{width:100%;height:100%;object-fit:cover;object-position:50% 50%;border-radius:0;box-shadow:none}
  .la-pane{position:absolute;inset:0;padding:0;opacity:0;visibility:hidden;transition:opacity .45s ease, visibility 0s linear .45s}
  .la-pane.ist-aktiv{opacity:1;visibility:visible;transition:opacity .45s ease}
  .la-pane .lv{position:absolute;left:var(--sx, 32.85%);top:var(--sy, 22.04%);width:var(--sw, 33.85%);height:var(--sh, 34.34%);aspect-ratio:auto;background-size:cover}
  .la-pane .lv .lv-buehne{left:50%;top:50%;transform:translate(-50%, -50%) scale(var(--s, 1));transform-origin:50% 50%}
  .la-info{position:absolute;left:clamp(24px, 3vw, 48px);top:50%;transform:translateY(-50%);width:min(340px, 26vw);padding:clamp(20px, 2vw, 30px);border-radius:18px;background:rgba(17,26,41,0.86);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#eef1f5;box-shadow:0 20px 50px -20px rgba(0,0,0,0.6)}
  .la-info .la-nr{color:var(--accent)}
  .la-info .la-titel{color:#eef1f5}
  .la-info .la-text{color:#c9d2df;font-size:17px}
  .la-info .lv-leiste .label{color:#a9b4c4}
  .la-schritte{display:flex;position:absolute;left:clamp(24px, 3vw, 48px);bottom:28px;z-index:2;gap:8px;margin:0;padding:0;list-style:none}
  .la-schritte li{width:28px;height:4px;border-radius:2px;background:rgba(238,241,245,0.35);transition:background .3s ease}
  .la-schritte li.ist-aktiv{background:var(--accent)}
}
@media (max-width:900px){
  .la-pane{padding:0;margin-top:28px;display:grid;gap:14px}
  .la-pane .lv{order:2}
}
@media (min-width:901px){.la-info .lv-leiste{flex-wrap:wrap}.la-info .lv-leiste .label{white-space:normal}}
@media (min-width:901px) and (max-width:1400px){
  .la-info{top:auto;bottom:64px;transform:none;width:min(300px, 27vw);padding:18px 20px}
  .la-info .la-titel{font-size:26px}
  .la-info .la-text{font-size:15px}
}
@media (min-width:901px) and (max-width:1180px){.la-foto{object-position:15% 50%}}

/* ===== Coming soon (bald.html): Film füllt den ersten Bildschirm und blendet beim Scrollen weich aus (main.js) ===== */
.bald-film{position:sticky;top:73px;z-index:0;height:calc(100vh - 73px);height:calc(100svh - 73px);overflow:hidden;background:#111a29;opacity:var(--bald-sicht, 1)}
.bald-video{display:block;width:100%;height:100%;object-fit:cover}
.bald-film::after{content:"";position:absolute;left:0;right:0;bottom:0;height:35%;background:linear-gradient(to bottom, rgba(17,26,41,0), #111a29);pointer-events:none}
.bald-video::cue{font-family:'Hanken Grotesk', system-ui, sans-serif;background:rgba(17,26,41,0.82);color:#eef1f5}
.bald-ton{position:absolute;z-index:2;right:clamp(16px, 3vw, 40px);top:clamp(16px, 2vw, 28px);display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:0 16px;border:1px solid #2c4062;border-radius:10px;background:rgba(17,26,41,0.85);color:#eef1f5;font-family:'IBM Plex Mono', ui-monospace, monospace;font-size:12px;letter-spacing:0.06em;text-transform:uppercase;cursor:pointer}
.bald-ton:hover{border-color:var(--accent)}
.bald-ton .bald-ton-an{display:none}
.bald-ton[aria-pressed="true"] .bald-ton-an{display:inline}
.bald-ton[aria-pressed="true"] .bald-ton-aus{display:none}
.bald-weiter{position:absolute;z-index:2;left:50%;bottom:clamp(96px, 12vh, 140px);transform:translateX(-50%);display:grid;place-items:center;width:44px;height:44px;border-radius:50%;border:1px solid #2c4062;background:rgba(17,26,41,0.85);color:#eef1f5}
.bald-inhalt{position:relative;z-index:1;margin-top:-18vh;--bald-rand:max(clamp(16px, 5vw, 72px), calc((100% - 1240px) / 2));padding:clamp(48px, 7vw, 96px) var(--bald-rand) clamp(56px, 7vw, 96px);display:grid;gap:22px;background:linear-gradient(to bottom, rgba(17,26,41,0), #111a29 18vh)}
.bald-inhalt .label{color:#dfe5ee}
.bald-inhalt .bk-lead{color:#c9d2df;max-width:58ch}
.bald-leistungen{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:12px;margin-top:12px}
.bald-leistung,.bald-leistung:hover{display:flex;align-items:center;gap:14px;padding:18px 20px;border:1px solid #2c4062;border-radius:14px;background:#16263f;color:#eef1f5;text-decoration:none;font-weight:700;transition:border-color .15s ease}
.bald-leistung:hover{border-color:var(--accent)}
.bald-leistung svg{margin-left:auto}
.bald-nr{font-family:'IBM Plex Mono', ui-monospace, monospace;font-size:12px;font-weight:500;color:var(--accent)}
.bald-aktion{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin-top:12px}
.bald-tel{color:#eef1f5;font-weight:700;text-underline-offset:3px;text-decoration-color:var(--accent)}
@media (max-width:900px){.bald-leistungen{grid-template-columns:minmax(0, 1fr)}}
.bald-untertitel{position:absolute;z-index:2;left:50%;bottom:calc(18vh + 96px);transform:translateX(-50%);width:min(92vw, 900px);margin:0;text-align:center;pointer-events:none}
.bald-untertitel span{display:inline;padding:4px 10px;line-height:1.7;border-radius:6px;background:rgba(17,26,41,0.82);color:#eef1f5;font-size:clamp(15px, 1.6vw, 22px);font-weight:600;-webkit-box-decoration-break:clone;box-decoration-break:clone;white-space:pre-line}
.bald-untertitel:empty{display:none}
@media (max-width:700px){.bald-untertitel{bottom:calc(18vh + 80px)}}

/* bald.html als eigenständige Seite: nur Logo oben, Film, Newsletter, Pflichtlinks unten */
.bald-kopf{position:fixed;top:0;left:0;right:0;z-index:20;height:73px;display:flex;align-items:center;padding:0 clamp(16px, 3vw, 40px);background:rgba(17,26,41,0.92);border-bottom:1px solid #22344f}
.bald-seite .bald-film{top:73px;margin-top:73px}
.bald-news{position:relative;z-index:1;margin-top:-18vh;--bald-rand:max(clamp(16px, 5vw, 72px), calc((100% - 1000px) / 2));padding:clamp(48px, 7vw, 96px) var(--bald-rand) clamp(48px, 6vw, 80px);display:grid;gap:22px;background:linear-gradient(to bottom, rgba(17,26,41,0), #111a29 18vh)}
.bald-news .label{color:#dfe5ee}
.bald-news .bk-lead{color:#c9d2df;max-width:58ch}
.bald-form{margin-top:8px}
.bald-fuss{display:flex;flex-wrap:wrap;justify-content:center;gap:24px;padding:28px 16px 40px;border-top:1px solid #22324f;font-size:14px;color:#8a97aa}
.bald-fuss a{color:#c9d2df}

/* Paket Coming soon: Rechtsseiten */
.bald-recht .bald-kopf a.bald-marke{text-decoration:none}
.bald-recht-inhalt{max-width:820px;margin:0 auto;padding:calc(73px + clamp(40px, 6vw, 80px)) clamp(16px, 4vw, 40px) clamp(48px, 6vw, 80px);display:grid;gap:14px;color:#c9d2df}
.bald-recht-inhalt .label{color:#dfe5ee}
.bald-recht-inhalt h1{margin:0 0 8px}
.bald-recht-inhalt h2{margin:22px 0 0;font-weight:800;font-size:22px;color:#eef1f5}
.bald-recht-inhalt p{margin:0;line-height:1.6}
.bald-recht-inhalt a{color:#eef1f5;text-decoration-color:var(--accent);text-underline-offset:3px}
.bald-was{display:grid;gap:12px;margin-top:8px}
.bald-was p{margin:0;max-width:62ch;color:#c9d2df}
.bald-was-liste{margin:4px 0 0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:10px 24px}
.bald-was-liste li{position:relative;padding-left:22px;color:#c9d2df}
.bald-was-liste li::before{content:"";position:absolute;left:0;top:9px;width:9px;height:9px;border:1.6px solid var(--accent);border-radius:2px;box-sizing:border-box}
.bald-was-liste strong{color:#eef1f5}
.bald-transkript{border:1px solid #2c4062;border-radius:14px;padding:14px 18px;color:#c9d2df}
.bald-transkript summary{cursor:pointer;font-family:'IBM Plex Mono', ui-monospace, monospace;font-size:12px;letter-spacing:0.06em;text-transform:uppercase;color:#eef1f5}
.bald-transkript p{margin:12px 0 0;max-width:68ch;line-height:1.6}
@media (max-width:700px){.bald-was-liste{grid-template-columns:minmax(0, 1fr)}}
.bald-team{display:grid;gap:12px;margin-top:8px}
.bald-team p{margin:0;max-width:64ch;color:#c9d2df;line-height:1.6}
.bald-team-liste{margin:4px 0;padding:0;list-style:none;display:grid;gap:10px}
.bald-team-liste li{position:relative;padding:14px 16px 14px 44px;border:1px solid #2c4062;border-radius:12px;background:#16263f;color:#c9d2df}
.bald-team-liste li::before{content:"";position:absolute;left:16px;top:20px;width:12px;height:12px;border-radius:50%;background:var(--accent)}
.bald-team-liste strong{color:#eef1f5}
