/* ==========================================================================
   STZ Konfliktmanagement — Design-System „Blueprint & Nachtkapitel“
   --------------------------------------------------------------------------
   Fundament (Outsource Consultants): Papiergrau, 0px-Ecken, monumentale
     Grotesk, Mono-Annotationen, vollflächige Blueprint-Blau-Bänder.
   Nachtkapitel (Moxie/Becklyn): fast schwarz, Pergament-Schrift, IBM Plex
     Serif 300 für Überschriften, Pillen-Buttons nur hier.
   Signal (dot connect): Orange ausschließlich als Eskalations-/Hinweisfarbe,
     nie als Button-Füllung, nie als Fließtext.
   ========================================================================== */

/* ---------- Schriften (selbst gehostet, DSGVO-freundlich) ---------- */
@font-face{font-family:"IBM Plex Sans";src:url(/assets/fonts/ibm-plex-sans-latin-400-normal.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"IBM Plex Sans";src:url(/assets/fonts/ibm-plex-sans-latin-400-italic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"IBM Plex Sans";src:url(/assets/fonts/ibm-plex-sans-latin-500-normal.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"IBM Plex Sans";src:url(/assets/fonts/ibm-plex-sans-latin-600-normal.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"IBM Plex Mono";src:url(/assets/fonts/ibm-plex-mono-latin-400-normal.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"IBM Plex Mono";src:url(/assets/fonts/ibm-plex-mono-latin-500-normal.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"IBM Plex Serif";src:url(/assets/fonts/ibm-plex-serif-latin-300-normal.woff2) format("woff2");font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:"IBM Plex Serif";src:url(/assets/fonts/ibm-plex-serif-latin-300-italic.woff2) format("woff2");font-weight:300;font-style:italic;font-display:swap}
@font-face{font-family:"IBM Plex Serif";src:url(/assets/fonts/ibm-plex-serif-latin-500-normal.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"IBM Plex Serif";src:url(/assets/fonts/ibm-plex-serif-latin-600-normal.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}

/* ---------- Tokens ---------- */
:root{
  /* Papier / Blueprint */
  --paper:#e9e7e1;        /* Seitenhintergrund */
  --paper-2:#f3f2ee;      /* angehobenes Blatt (Abbildungen, Karten) */
  --white:#ffffff;
  --ink:#0b0c10;          /* Haupttext */
  --ink-2:#34373f;        /* Fließtext sekundär */
  --ink-3:#5b5e66;        /* Annotationen (AA auf --paper) */
  --rule:#c8c5bc;         /* Haarlinie */
  --rule-2:#d9d6ce;

  /* Blueprint-Blau: Interaktion, Schlüsselüberschriften, Vollflächen-Bänder */
  --blue:#1925aa;
  --blue-deep:#0d1355;
  --blue-ink:#e9e7e1;     /* Text auf Blau */
  --blue-soft:#d9dbee;    /* Blau-Tönung für Diagrammflächen */

  /* Signal: Eskalation, Hot-Zone, Live-Marker. Nur dekorativ/semantisch. */
  --signal:#fd5321;
  --signal-soft:#fde0d6;

  /* Ampel der Konflikt-Map (semantisch) */
  --z-ok:#3f7d55;
  --z-warn:#c08a12;
  --z-crit:var(--signal);

  /* Nachtkapitel */
  --night:#08090c;
  --night-2:#121318;
  --night-3:#1b1c22;
  --night-rule:#2d2e31;
  --parch:#f4efd4;
  --parch-2:#aca78f;
  --night-blue:#84acfb;   /* CTA im Nachtkapitel */

  /* Schrift */
  --sans:"IBM Plex Sans",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --mono:"IBM Plex Mono",ui-monospace,"SFMono-Regular",Menlo,monospace;
  --serif:"IBM Plex Serif",Georgia,"Times New Roman",serif;

  --fs-display:clamp(3.4rem,10.6vw,11rem);
  --fs-h1:clamp(2.75rem,7.2vw,6.6rem);
  --fs-h2:clamp(2rem,4.4vw,3.9rem);
  --fs-h3:clamp(1.35rem,1.9vw,1.7rem);
  --fs-lead:clamp(1.15rem,1.55vw,1.42rem);
  --fs-body:1.0625rem;
  --fs-small:.9375rem;
  --fs-mono:.75rem;

  /* Raster */
  --max:1360px;
  --gutter:clamp(16px,3.6vw,48px);
  --gap:24px;
  --section:clamp(72px,10vw,152px);
  --header-h:68px;

  --ease:cubic-bezier(.2,.7,.1,1);
  --ease-io:cubic-bezier(.7,0,.2,1);
}

/* ---------- Basis ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--header-h) + 16px)}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
body{margin:0;background:var(--paper);color:var(--ink);font:400 var(--fs-body)/1.58 var(--sans);
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;overflow-x:clip}
img,svg,video{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration-thickness:1px;text-underline-offset:.22em}
:where(p){margin:0;text-wrap:pretty}
:where(h1,h2,h3,h4){margin:0}
h1,h2,h3,h4{font-weight:500;text-wrap:balance}
:where(ul,ol){margin:0;padding:0}
button,input,select,textarea{font:inherit;color:inherit}
::selection{background:var(--blue);color:var(--blue-ink)}
:focus-visible{outline:2px solid var(--blue);outline-offset:3px}
.night :focus-visible{outline-color:var(--night-blue)}
.skip{position:absolute;left:-999px;top:8px;z-index:100;background:var(--blue);color:var(--blue-ink);padding:10px 14px;font:500 var(--fs-mono)/1 var(--mono);text-transform:uppercase}
.skip:focus{left:8px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.wrap{width:100%;max-width:var(--max);margin-inline:auto;padding-inline:var(--gutter)}
.grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap)}
.section{padding-block:var(--section)}
.section--tight{padding-block:calc(var(--section) * .6)}
.section + .section:not(.band):not(.night){padding-top:0}

/* ---------- Typo-Rollen ---------- */
.mono,.eyebrow,.meta{font-family:var(--mono);font-size:var(--fs-mono);line-height:1.35;letter-spacing:.04em;text-transform:uppercase;font-weight:400}
.eyebrow{display:flex;align-items:center;gap:12px;color:var(--ink-3)}
.eyebrow b{font-weight:500;color:var(--ink)}
.eyebrow .dot{width:8px;height:8px;background:var(--signal);flex:none}
.display{font-size:var(--fs-display);line-height:.9;letter-spacing:-.058em;font-weight:500;margin-left:-.04em}
.h1{font-size:var(--fs-h1);line-height:.95;letter-spacing:-.05em;font-weight:500;margin-left:-.03em}
.h2{font-size:var(--fs-h2);line-height:1;letter-spacing:-.04em;font-weight:500}
.h3{font-size:var(--fs-h3);line-height:1.18;letter-spacing:-.02em;font-weight:500}
.lead{font-size:var(--fs-lead);line-height:1.42;letter-spacing:-.012em;color:var(--ink-2);max-width:40ch}
.prose{max-width:68ch;color:var(--ink-2)}
.prose strong{color:var(--ink);font-weight:500}
.prose h3{color:var(--ink);margin:2em 0 .6em}
.prose ul{list-style:none;margin:0 0 1.2em}
.prose li{position:relative;padding-left:1.6em;margin:.45em 0}
.prose li::before{content:"";position:absolute;left:0;top:.72em;width:.8em;height:1px;background:var(--blue)}
.prose a{color:var(--blue)}
.blue-text{color:var(--blue)}
.small{font-size:var(--fs-small)}
.muted{color:var(--ink-3)}
.num{font-variant-numeric:tabular-nums}

/* ---------- Buttons ---------- */
.btn{--bg:var(--blue);--fg:var(--blue-ink);--bd:var(--blue);
  display:inline-flex;align-items:center;gap:14px;min-height:48px;padding:14px 20px;background:var(--bg);color:var(--fg);
  border:1px solid var(--bd);border-radius:0;font:500 var(--fs-mono)/1 var(--mono);letter-spacing:.06em;text-transform:uppercase;
  text-decoration:none;cursor:pointer;position:relative;overflow:hidden;isolation:isolate;transition:color .35s var(--ease),border-color .35s var(--ease)}
.btn::before{content:"";position:absolute;inset:0;background:var(--ink);transform:translateY(101%);transition:transform .45s var(--ease);z-index:-1}
.btn:hover::before,.btn:focus-visible::before{transform:none}
.btn:hover{--bd:var(--ink)}
.btn .arr{width:16px;height:16px;flex:none;transition:transform .45s var(--ease)}
.btn:hover .arr{transform:translateX(4px)}
.btn--ghost{--bg:transparent;--fg:var(--ink);--bd:var(--ink)}
.btn--ghost:hover{--fg:var(--paper)}
.btn--paper{--bg:var(--paper);--fg:var(--blue);--bd:var(--paper)}
.btn--paper::before{background:var(--ink)}
.btn--paper:hover{--fg:var(--paper)}
.btn--onblue{--bg:transparent;--fg:var(--blue-ink);--bd:var(--blue-ink)}
.btn--onblue::before{background:var(--blue-ink)}
.btn--onblue:hover{--fg:var(--blue)}
.btn--sm{min-height:38px;padding:10px 14px}
.btn-row{display:flex;flex-wrap:wrap;gap:12px}
.link{display:inline-flex;align-items:center;gap:10px;font:500 var(--fs-mono)/1.2 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--blue);text-decoration:none;
  background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat;padding-bottom:4px;transition:background-size .45s var(--ease)}
.link:hover{background-size:100% 1px}
.link .arr{width:14px;height:14px;transition:transform .45s var(--ease)}
.link:hover .arr{transform:translateX(3px)}

/* Nachtkapitel-Buttons (Pillen, Moxie) */
.night .btn{--bg:var(--night-blue);--fg:var(--night);--bd:var(--night-blue);border-radius:999px;padding-inline:24px}
.night .btn::before{background:var(--parch)}
.night .btn:hover{--bd:var(--parch);--fg:var(--night)}
.night .btn--ghost{--bg:transparent;--fg:var(--parch);--bd:var(--parch)}
.night .btn--ghost:hover{--fg:var(--night)}
.night .link{color:var(--night-blue)}

/* ---------- Header ---------- */
.site-header{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--paper) 88%,transparent);
  -webkit-backdrop-filter:saturate(1.2) blur(12px);backdrop-filter:saturate(1.2) blur(12px);border-bottom:1px solid var(--rule);transition:transform .45s var(--ease)}
.site-header.is-hidden{transform:translateY(-100%)}
.site-header .bar{display:flex;align-items:center;gap:28px;height:var(--header-h)}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;min-width:0;flex:none}
.brand img{width:34px;height:34px;mix-blend-mode:multiply;flex:none}
.brand span{font:500 .6875rem/1.25 var(--mono);letter-spacing:.04em;text-transform:uppercase;color:var(--ink)}
.brand span i{display:block;font-style:normal;color:var(--ink-3);font-weight:400}
.nav{margin-left:auto;display:flex;align-items:center;gap:2px}
.nav > ul{display:flex;list-style:none;gap:2px}
.nav > ul > li{position:relative}
.nav a.top,.nav button.top{display:flex;align-items:center;gap:6px;height:var(--header-h);padding:0 12px;background:none;border:0;cursor:pointer;
  font:400 var(--fs-mono)/1 var(--mono);letter-spacing:.05em;text-transform:uppercase;text-decoration:none;color:var(--ink);position:relative}
.nav .top::after{content:"";position:absolute;left:12px;right:12px;bottom:18px;height:1px;background:var(--blue);transform:scaleX(0);transform-origin:left;transition:transform .4s var(--ease)}
.nav .top:hover::after,.nav .top[aria-current="page"]::after,.nav li.is-active > .top::after,.nav li.open > .top::after{transform:none}
.nav .top svg{width:9px;height:9px;transition:transform .3s var(--ease)}
.nav li.open > .top svg{transform:rotate(180deg)}
.nav .drop{position:absolute;top:calc(100% - 1px);left:0;min-width:320px;background:var(--paper-2);border:1px solid var(--ink);padding:8px;
  opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .25s,transform .35s var(--ease),visibility 0s .35s}
.nav li.open > .drop,.nav li:focus-within > .drop{opacity:1;visibility:visible;transform:none;transition:opacity .25s,transform .35s var(--ease)}
@media (hover:hover){.nav li:hover > .drop{opacity:1;visibility:visible;transform:none;transition:opacity .25s,transform .35s var(--ease)}}
.drop a{display:grid;grid-template-columns:28px 1fr;gap:4px 10px;padding:12px;text-decoration:none;border-bottom:1px solid var(--rule-2)}
.drop a:last-child{border-bottom:0}
.drop a .n{grid-row:span 2;font:400 var(--fs-mono)/1.5 var(--mono);color:var(--ink-3)}
.drop a b{font-weight:500;font-size:.98rem;letter-spacing:-.01em}
.drop a small{font-size:.82rem;color:var(--ink-3);line-height:1.35}
.drop a:hover{background:var(--blue);color:var(--blue-ink)}
.drop a:hover small,.drop a:hover .n{color:var(--blue-ink)}
.nav .cta{margin-left:14px}
.menu-btn{display:none;margin-left:auto;align-items:center;gap:10px;height:44px;padding:0 14px;border:1px solid var(--ink);background:transparent;cursor:pointer;
  font:500 var(--fs-mono)/1 var(--mono);letter-spacing:.06em;text-transform:uppercase}
.menu-btn i{display:grid;gap:4px}
.menu-btn i::before,.menu-btn i::after{content:"";width:16px;height:1.5px;background:currentColor;transition:transform .35s var(--ease)}
.menu-open .menu-btn i::before{transform:translateY(2.75px) rotate(45deg)}
.menu-open .menu-btn i::after{transform:translateY(-2.75px) rotate(-45deg)}

/* Vollbild-Menü (mobil) */
.overlay{position:fixed;inset:0;z-index:45;background:var(--blue);color:var(--blue-ink);padding:calc(var(--header-h) + 24px) var(--gutter) 32px;
  overflow-y:auto;clip-path:inset(0 0 100% 0);transition:clip-path .6s var(--ease-io);visibility:hidden}
.menu-open .overlay{clip-path:inset(0);visibility:visible}
.menu-open .site-header{background:var(--blue);color:var(--blue-ink);border-color:transparent}
.menu-open .site-header .brand span,.menu-open .site-header .brand span i{color:var(--blue-ink)}
.menu-open .site-header .brand img{mix-blend-mode:normal;filter:invert(1);opacity:.95}
.menu-open .menu-btn{border-color:var(--blue-ink);color:var(--blue-ink)}
.overlay h2{font:400 var(--fs-mono)/1 var(--mono);letter-spacing:.06em;text-transform:uppercase;opacity:.7;margin:28px 0 10px;padding-top:16px;border-top:1px solid rgba(233,231,225,.3)}
.overlay h2:first-child{margin-top:0}
.overlay a{display:block;font-size:clamp(1.6rem,7vw,2.4rem);line-height:1.15;letter-spacing:-.035em;text-decoration:none;padding:4px 0}
.overlay .contact{margin-top:32px;font:400 var(--fs-mono)/1.8 var(--mono);text-transform:uppercase;letter-spacing:.05em}
.overlay .contact a{font:inherit;display:inline}
body.menu-open{overflow:hidden}

/* ---------- Hero (Start) ---------- */
.hero{position:relative;padding-top:clamp(36px,5vw,72px);padding-bottom:clamp(48px,6vw,96px);overflow:hidden}
.hero .blueprint{position:absolute;inset:0;z-index:-1;pointer-events:none;
  background-image:linear-gradient(var(--rule-2) 1px,transparent 1px),linear-gradient(90deg,var(--rule-2) 1px,transparent 1px);
  background-size:calc(100% / 12) 96px;background-position:-1px -1px;
  -webkit-mask-image:linear-gradient(180deg,#000 0,#000 55%,transparent 100%);mask-image:linear-gradient(180deg,#000 0,#000 55%,transparent 100%);opacity:.75}
.hero-top{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-bottom:clamp(28px,4vw,56px)}
.hero h1{position:relative;z-index:2}
.hero-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);row-gap:40px;margin-top:clamp(28px,4vw,56px);align-items:start}
.hero-copy{grid-column:1 / span 5}
.hero-copy .lead{margin-bottom:32px}
.hero-fig{grid-column:7 / span 6;margin-top:clamp(-220px,-14vw,-40px)}
.hero-note{grid-column:1 / span 5;align-self:end}

/* Mini-Kennzahlen */
.kv{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--ink)}
.kv div{padding:14px 12px 0 0}
.kv b{display:block;font:500 clamp(1.5rem,2.4vw,2rem)/1 var(--sans);letter-spacing:-.04em}
.kv span{display:block;margin-top:8px}

/* ---------- Abbildungen (Blueprint-Rahmen) ---------- */
.fig{position:relative;background:var(--paper-2);border:1px solid var(--ink);padding:clamp(16px,2.2vw,28px)}
.fig-head,.fig-cap{display:flex;justify-content:space-between;gap:16px;font:400 var(--fs-mono)/1.4 var(--mono);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3)}
.fig-head{padding-bottom:12px;margin-bottom:16px;border-bottom:1px solid var(--rule)}
.fig-cap{padding-top:12px;margin-top:16px;border-top:1px solid var(--rule)}
.fig-head b,.fig-cap b{color:var(--ink);font-weight:500}
.fig--bare{background:transparent}
.fig svg text{font-family:var(--sans)}
.fig svg .t-mono{font-family:var(--mono);text-transform:uppercase;letter-spacing:.04em}
.live{display:inline-flex;align-items:center;gap:8px}
.live::before{content:"";width:7px;height:7px;background:var(--signal);animation:blink 1.6s steps(2) infinite}
@keyframes blink{50%{opacity:.15}}

/* Konfliktlandschaft (Hero-Karte) */
.cmap{width:100%;aspect-ratio:1/1;touch-action:pan-y}
.cmap .grid-minor{stroke:var(--rule);stroke-width:1}
.cmap .grid-major{stroke:#a9a69c;stroke-width:1}
.cmap .axis{stroke:var(--ink);stroke-width:1.5}
.cmap .iso{fill:none;stroke-width:1.25;stroke-dasharray:5 5}
.cmap .iso-warn{stroke:var(--blue)}
.cmap .iso-crit{stroke:var(--signal)}
.cmap .zone-crit{fill:var(--signal);opacity:.09}
.cmap .zone-warn{fill:var(--blue);opacity:.05}
.cmap .lbl{font:400 11px/1 var(--mono);fill:var(--ink-3);text-transform:uppercase;letter-spacing:.04em}
.cmap .lbl-strong{fill:var(--ink)}
.cmap .lbl-blue{fill:var(--blue)}
.cmap .lbl-sig{fill:#c63a10}
.cmap .p circle.core{stroke:var(--ink);stroke-width:1.5;fill:var(--paper-2);transition:fill .5s,stroke .5s}
.cmap .p.z-warn circle.core{fill:var(--blue);stroke:var(--blue)}
.cmap .p.z-crit circle.core{fill:var(--signal);stroke:var(--signal)}
.cmap .p .ring{fill:none;stroke:var(--signal);opacity:0}
.cmap .p.z-crit .ring{animation:ring 2.2s var(--ease) infinite}
@keyframes ring{0%{opacity:.8;r:8px}100%{opacity:0;r:30px}}
.cmap .p text{font:500 11px/1 var(--mono);fill:var(--ink);text-transform:uppercase;letter-spacing:.03em;paint-order:stroke;stroke:var(--paper-2);stroke-width:4px;stroke-linejoin:round}
.cmap .xh line{stroke:var(--ink);stroke-width:1;stroke-dasharray:2 3}
.cmap .xh rect{fill:var(--ink)}
.cmap .xh text{font:500 11px/1 var(--mono);fill:var(--paper);letter-spacing:.03em}
.cmap .trail{fill:none;stroke:var(--ink-3);stroke-width:1;stroke-dasharray:1 3;opacity:.6}
.legend{display:flex;flex-wrap:wrap;gap:8px 18px}
.legend span{display:inline-flex;align-items:center;gap:8px}
.legend i{width:10px;height:10px;border:1.5px solid var(--ink);background:var(--paper-2)}
.legend i.w{background:var(--blue);border-color:var(--blue)}
.legend i.c{background:var(--signal);border-color:var(--signal)}

/* ---------- Ticker ---------- */
.ticker{border-block:1px solid var(--ink);overflow:hidden;white-space:nowrap;background:var(--paper)}
.ticker-track{display:inline-flex;gap:0;animation:tick 48s linear infinite;padding-block:14px}
.ticker span{font:400 var(--fs-mono)/1 var(--mono);letter-spacing:.06em;text-transform:uppercase;display:inline-flex;align-items:center;gap:22px;padding-right:22px}
.ticker span::after{content:"";width:6px;height:6px;background:var(--blue)}
.ticker span:nth-child(4n)::after{background:var(--signal)}
@keyframes tick{to{transform:translateX(-50%)}}
.ticker:hover .ticker-track{animation-play-state:paused}

/* ---------- Abschnittskopf ---------- */
.shead{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);row-gap:20px;margin-bottom:clamp(40px,5vw,72px)}
.shead .idx{grid-column:1 / -1;display:flex;align-items:center;gap:16px}
.shead .idx::after{content:"";flex:1;height:1px;background:currentColor;opacity:.35;transform-origin:left;transform:scaleX(var(--draw,1));transition:transform 1.2s var(--ease)}
.shead h2{grid-column:1 / span 8}
.shead p{grid-column:9 / span 4;align-self:end;margin:0;color:var(--ink-2)}
.shead--wide h2{grid-column:1 / span 10}

/* ---------- Statements (Warum) ---------- */
.statements{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);border-top:1px solid var(--ink)}
.statement{grid-column:span 6;padding:28px 0 0;display:grid;grid-template-columns:72px 1fr;gap:0 16px}
.statement + .statement{border-left:1px solid var(--rule);padding-left:var(--gap)}
.statement .n{font:400 var(--fs-mono)/1.6 var(--mono);color:var(--ink-3)}
.statement h3{margin-bottom:16px}
.statement p{color:var(--ink-2);margin:0}
.callout{margin-top:clamp(40px,5vw,72px);display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap)}
.callout .prose{grid-column:4 / span 7}
.callout .tag{grid-column:1 / span 3}

/* ---------- Leistungs-Akkordeon ---------- */
.acc{border-top:1px solid var(--ink)}
.acc details{border-bottom:1px solid var(--ink)}
.acc summary{list-style:none;display:grid;grid-template-columns:72px minmax(0,1fr) auto;align-items:center;gap:16px;padding:22px 0;cursor:pointer;position:relative}
.acc summary::-webkit-details-marker{display:none}
.acc summary::before{content:"";position:absolute;inset:0 calc(var(--gutter) * -1);background:var(--blue);transform:scaleY(0);transform-origin:bottom;transition:transform .5s var(--ease);z-index:-1}
.acc details{position:relative;isolation:isolate}
.acc summary:hover::before{transform:scaleY(1)}
.acc summary:hover{color:var(--blue-ink)}
.acc summary:hover .n{color:var(--blue-ink)}
.acc summary .n{font:400 var(--fs-mono)/1 var(--mono);color:var(--ink-3)}
.acc summary h3{font-size:clamp(1.6rem,3.6vw,3.1rem);letter-spacing:-.045em;line-height:1;font-weight:500}
.acc summary .plus{width:40px;height:40px;border:1px solid currentColor;display:grid;place-items:center;transition:transform .5s var(--ease)}
.acc summary .plus::before,.acc summary .plus::after{content:"";grid-area:1/1;width:14px;height:1.5px;background:currentColor}
.acc summary .plus::after{transform:rotate(90deg);transition:transform .5s var(--ease)}
.acc details[open] summary .plus::after{transform:rotate(0)}
.acc .body{display:grid;grid-template-columns:72px repeat(11,minmax(0,1fr));column-gap:var(--gap);padding:4px 0 36px}
.acc .body .prose{grid-column:2 / span 6}
.acc .body .aside{grid-column:9 / span 4;display:flex;flex-direction:column;gap:16px;align-items:flex-start}

/* ---------- Vollflächen-Band (Blau) ---------- */
.band{background:var(--blue);color:var(--blue-ink);position:relative;overflow:hidden}
.band .eyebrow,.band .muted{color:rgba(233,231,225,.72)}
.band .eyebrow b{color:var(--blue-ink)}
.band ::selection{background:var(--paper);color:var(--blue)}
.band .lead,.band .prose{color:rgba(233,231,225,.86)}
.band-lines{position:absolute;inset:0;pointer-events:none;opacity:.22;
  background-image:linear-gradient(90deg,rgba(233,231,225,.55) 1px,transparent 1px);background-size:calc(100% / 12) 100%}
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:var(--gap);border-top:1px solid rgba(233,231,225,.5)}
.stat{padding-top:24px}
.stat b{display:block;font:500 clamp(2.6rem,5.2vw,5rem)/.9 var(--sans);letter-spacing:-.06em;font-variant-numeric:tabular-nums}
.stat span{display:block;margin-top:16px;max-width:22ch}
.band-quote{font-size:clamp(1.8rem,4.2vw,3.6rem);line-height:1.04;letter-spacing:-.04em;max-width:22ch;margin:0 0 clamp(48px,6vw,96px)}

/* ---------- Nachtkapitel ---------- */
.night{background:var(--night);color:var(--parch);position:relative;overflow:hidden}
.night .eyebrow{color:var(--parch-2)}
.night .eyebrow b{color:var(--parch)}
.night .lead,.night .prose{color:color-mix(in srgb,var(--parch) 78%,transparent)}
.night .prose strong{color:var(--parch)}
.night .prose li::before{background:var(--night-blue)}
.night .shead .idx{color:var(--parch-2)}
.night .shead p{color:color-mix(in srgb,var(--parch) 72%,transparent)}
.serif{font-family:var(--serif);font-weight:300;letter-spacing:-.025em;line-height:1.04}
.night .h2.serif{font-size:clamp(2.3rem,5.2vw,4.6rem)}
.night .h1.serif{font-size:clamp(2.8rem,7vw,6.2rem);letter-spacing:-.035em;line-height:1}
.night ::selection{background:var(--parch);color:var(--night)}
.tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gap)}
.tool{position:relative;display:flex;flex-direction:column;border:1px solid var(--night-rule);border-radius:14px;padding:clamp(20px,2.4vw,32px);
  text-decoration:none;background:linear-gradient(180deg,var(--night-2),var(--night));transition:border-color .5s var(--ease),transform .6s var(--ease)}
.tool:hover{border-color:var(--parch-2);transform:translateY(-4px)}
.tool .top{display:flex;justify-content:space-between;gap:12px;margin-bottom:24px}
.tool h3{font-family:var(--serif);font-weight:300;font-size:clamp(1.9rem,3vw,2.7rem);letter-spacing:-.03em;line-height:1.02;margin:24px 0 12px}
.tool p{color:color-mix(in srgb,var(--parch) 70%,transparent);margin:0 0 24px;max-width:46ch}
.tool .go{margin-top:auto;display:flex;align-items:center;justify-content:space-between;padding-top:20px;border-top:1px solid var(--night-rule)}
.tool .go .circle{width:48px;height:48px;border-radius:50%;border:1px solid var(--parch);display:grid;place-items:center;transition:background .4s,color .4s}
.tool:hover .go .circle{background:var(--night-blue);border-color:var(--night-blue);color:var(--night)}
.tool .viz{aspect-ratio:16/10;border-radius:8px;border:1px solid var(--night-rule);background:var(--night);overflow:hidden;position:relative}
.tool .viz svg{width:100%;height:100%}
.pill{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--night-rule);border-radius:999px;padding:6px 12px;font:400 .6875rem/1 var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--parch-2)}
.pill.on::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--signal)}
.trust{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap);margin-top:clamp(40px,5vw,64px);padding-top:24px;border-top:1px solid var(--night-rule)}
.trust div{display:grid;grid-template-columns:28px 1fr;gap:12px;color:color-mix(in srgb,var(--parch) 72%,transparent);font-size:var(--fs-small)}
.trust svg{width:20px;height:20px;color:var(--night-blue)}

/* ---------- Seminare ---------- */
.sem-list{border-top:1px solid var(--ink)}
.sem{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(0,5fr) minmax(0,3fr) 56px;gap:var(--gap);align-items:center;padding:26px 0;border-bottom:1px solid var(--rule);
  text-decoration:none;position:relative;isolation:isolate}
.sem::before{content:"";position:absolute;inset:0 calc(var(--gutter) * -1);background:var(--paper-2);opacity:0;transition:opacity .35s;z-index:-1}
.sem:hover::before{opacity:1}
.sem .when b{display:block;font:500 clamp(1.25rem,1.8vw,1.6rem)/1.05 var(--sans);letter-spacing:-.03em}
.sem .when span{display:block;margin-top:6px}
.sem h3{font-size:clamp(1.25rem,1.9vw,1.6rem);line-height:1.15;letter-spacing:-.025em}
.sem p{margin:8px 0 0;color:var(--ink-3);font-size:var(--fs-small)}
.sem .facts{display:flex;flex-wrap:wrap;gap:6px}
.chip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--rule);padding:6px 9px;font:400 .6875rem/1 var(--mono);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2);background:var(--paper)}
.chip--blue{background:var(--blue);border-color:var(--blue);color:var(--blue-ink)}
.chip--sig{border-color:var(--signal);color:#b5390f}
.sem .go{width:48px;height:48px;border:1px solid var(--ink);display:grid;place-items:center;transition:background .35s,color .35s,transform .45s var(--ease)}
.sem:hover .go{background:var(--blue);border-color:var(--blue);color:var(--blue-ink);transform:rotate(-45deg)}
.sem .go svg{width:16px;height:16px}
.sem-extra{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gap);margin-top:var(--gap)}
.card{border:1px solid var(--ink);padding:clamp(20px,2.4vw,32px);background:var(--paper-2);display:flex;flex-direction:column;gap:14px;text-decoration:none;position:relative}
.card h3{font-size:var(--fs-h3);letter-spacing:-.025em}
.card p{margin:0;color:var(--ink-2)}
.card .link{margin-top:auto}
.card--blue{background:var(--blue);color:var(--blue-ink);border-color:var(--blue)}
.card--blue p{color:rgba(233,231,225,.85)}
.card--blue .link{color:var(--blue-ink)}

/* Seminar-Detail */
.sem-hero .facts-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);margin-top:clamp(36px,4vw,56px)}
.sem-hero .facts-row div{padding:18px 16px 18px 0}
.sem-hero .facts-row div + div{border-left:1px solid var(--rule);padding-left:16px}
.sem-hero .facts-row b{display:block;font:500 clamp(1.8rem,3.6vw,3rem)/1 var(--sans);letter-spacing:-.05em}
.sem-hero .facts-row span{display:block;margin-top:8px}
.sem-body{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);row-gap:56px}
.sem-main{grid-column:1 / span 7}
.sem-side{grid-column:9 / span 4}
.sticky{position:sticky;top:calc(var(--header-h) + 24px)}
.dates{border:1px solid var(--ink);background:var(--paper-2)}
.dates .hd{padding:16px 20px;border-bottom:1px solid var(--ink);display:flex;justify-content:space-between}
.date{padding:18px 20px;border-bottom:1px solid var(--rule)}
.date b{display:block;font-size:1.15rem;letter-spacing:-.02em;font-weight:500}
.date .where{color:var(--ink-2);font-size:var(--fs-small);margin:6px 0 10px}
.date.past{display:none}
.dates .ft{padding:20px;display:grid;gap:10px}
.dates .ft .btn{justify-content:space-between}
.agenda{border-top:1px solid var(--ink)}
.agenda .blk{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:var(--gap);padding:24px 0;border-bottom:1px solid var(--rule)}
.agenda .blk h4{font-weight:500;font-size:1.1rem;letter-spacing:-.015em;margin-top:8px}
.agenda .blk ul{list-style:none;counter-reset:a}
.agenda .blk li{counter-increment:a;display:grid;grid-template-columns:36px 1fr;padding:7px 0;border-bottom:1px dashed var(--rule-2);color:var(--ink-2)}
.agenda .blk li:last-child{border-bottom:0}
.agenda .blk li::before{content:counter(a,decimal-leading-zero);font:400 var(--fs-mono)/1.9 var(--mono);color:var(--blue)}
.banner-label{display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--blue);color:var(--blue-ink);padding:16px 20px;margin-bottom:32px}
.banner-label b{font-size:1.3rem;letter-spacing:-.02em;font-weight:500}

/* Trainer */
.people{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap)}
.people--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.person{display:flex;flex-direction:column;gap:14px}
.person figure{margin:0;position:relative;overflow:hidden;background:var(--paper-2);aspect-ratio:4/5;border:1px solid var(--ink)}
.person figure img{width:100%;height:100%;object-fit:cover;object-position:50% 20%;transition:transform 1.2s var(--ease)}
.person:hover figure img{transform:scale(1.03)}
.person figure figcaption{position:absolute;left:0;bottom:0;background:var(--ink);color:var(--paper);padding:8px 10px}
.person h3{font-size:1.35rem;letter-spacing:-.025em}
.person ul{list-style:none;color:var(--ink-2);font-size:var(--fs-small)}
.person li{padding:7px 0;border-top:1px solid var(--rule)}

/* ---------- Seitenkopf (Unterseiten) ---------- */
.page-hero{padding-top:clamp(40px,6vw,96px);padding-bottom:clamp(40px,5vw,80px);position:relative}
.crumbs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:clamp(28px,4vw,56px);color:var(--ink-3)}
.crumbs a{text-decoration:none}
.crumbs a:hover{color:var(--blue)}
.crumbs span[aria-hidden]{opacity:.5}
.page-hero .h1{max-width:15ch}
.page-hero .sub{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);margin-top:clamp(28px,3.6vw,48px)}
.page-hero .sub .lead{grid-column:6 / span 6;max-width:none}
.page-hero .sub .tagline{grid-column:1 / span 4}

/* Zwei-Spalten-Text + Abbildung */
.split{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);row-gap:48px;align-items:start}
.split > .l{grid-column:1 / span 5}
.split > .r{grid-column:7 / span 6}
.split--rev > .l{grid-column:8 / span 5;order:2}
.split--rev > .r{grid-column:1 / span 6;order:1}
.split > .full{grid-column:1 / -1}
.aside-note{border-left:2px solid var(--blue);padding:4px 0 4px 18px;color:var(--ink-2);font-size:var(--fs-small)}
.aside-note.sig{border-color:var(--signal)}

/* Diagramm-Bausteine */
.d-stack{position:relative;padding:28px 28px 0 0}
.d-stack .back{position:absolute;inset:0 0 28px 28px;background:var(--blue);color:var(--blue-ink);padding:14px 18px;font-weight:500;letter-spacing:-.02em;text-align:right}
.d-stack .back ul{position:absolute;right:14px;top:58px;display:grid;gap:9px;list-style:none}
.d-stack .back li{width:18px;height:28px;background:var(--paper)}
.d-stack .front{position:relative;background:var(--paper-2);border:1px solid var(--ink);margin-right:40px;padding:18px}
.d-stack .front h4{color:var(--blue);font-weight:500;font-size:1.15rem;letter-spacing:-.02em;margin-bottom:12px}
.d-stack .front ol{list-style:none;display:grid;gap:6px}
.d-stack .front li{border:1px solid var(--blue);padding:8px 12px;font-size:var(--fs-small);background:var(--white);transition:background .3s,color .3s}
.d-stack .front li:hover{background:var(--blue);color:var(--blue-ink)}
.d-tree{display:grid;grid-template-columns:1fr 1fr;gap:14px 18px;position:relative}
.d-tree .node{border:1px solid var(--ink);padding:14px;text-align:center;background:var(--paper-2);font-size:var(--fs-small);line-height:1.3;position:relative}
.d-tree .root{grid-column:1 / -1;font-size:1.4rem;font-weight:500;letter-spacing:-.03em;color:var(--blue);border-width:1.5px}
.d-tree .hot{background:var(--blue);color:var(--blue-ink);border-color:var(--blue)}
.d-tree .leaf{grid-column:span 1;background:var(--blue-soft);border-color:var(--blue)}
.d-tree .leafs{grid-column:2;display:grid;grid-template-columns:1fr;gap:14px}
.d-tree svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}
.d-cross{display:grid;grid-template-columns:1fr 1.25fr 1fr;grid-template-rows:auto auto auto;gap:14px}
.d-cross > div{background:var(--blue-soft);padding:20px 12px;text-align:center;font-size:var(--fs-small);line-height:1.3;display:grid;place-items:center}
.d-cross > div b{display:block;font-weight:500;font-size:1rem;color:var(--blue)}
.d-cross .c{background:var(--blue);color:var(--blue-ink);grid-column:2;grid-row:2;position:relative}
.d-cross .c b{color:var(--blue-ink);font-size:1.15rem}
.d-cross .n{grid-column:2;grid-row:1}.d-cross .w{grid-column:1;grid-row:2}.d-cross .e{grid-column:3;grid-row:2}.d-cross .s{grid-column:2;grid-row:3}
.d-quad{display:grid;grid-template-columns:1fr 1fr;border:1.5px solid var(--blue);position:relative}
.d-quad > div{padding:clamp(18px,2.4vw,30px) 18px;text-align:center;color:var(--blue);font-size:var(--fs-small);line-height:1.38;min-height:150px;display:grid;place-items:center}
.d-quad > div:nth-child(1),.d-quad > div:nth-child(3){border-right:1px solid var(--blue)}
.d-quad > div:nth-child(1),.d-quad > div:nth-child(2){border-bottom:1px solid var(--blue)}
.d-quad > div b{display:block;font-size:1.15rem;font-weight:500;letter-spacing:-.02em}
.d-quad .core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:var(--blue);color:var(--blue-ink);padding:14px 22px;text-align:center;min-height:0;display:block;border:0!important;width:max-content;max-width:72%}
.d-quad .core b{font-size:1.15rem}
.d-quad .core span{display:block;font:400 var(--fs-mono)/1.5 var(--mono);text-transform:uppercase;letter-spacing:.04em;opacity:.8;margin-top:4px}
.d-house{display:grid;gap:10px}
.d-house .roof{background:var(--blue);color:var(--blue-ink);clip-path:polygon(50% 0,100% 100%,0 100%);text-align:center;padding:36px 20% 16px}
.d-house .roof b{display:block;font-size:clamp(1.3rem,2.2vw,1.9rem);letter-spacing:-.03em;font-weight:500}
.d-house .pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.d-house .pillar{border:1.5px solid var(--blue);padding:12px;display:grid;gap:8px;text-align:center}
.d-house .pillar b{color:var(--blue);font-weight:500;font-size:.95rem;line-height:1.25;min-height:2.5em;display:grid;place-items:center}
.d-house .pillar span{background:var(--blue-soft);padding:10px 6px;font-size:.85rem}
.d-house .pillar span + span{background:#bfc3e4}
.d-house .base{background:var(--blue);color:var(--blue-ink);text-align:center;padding:16px}
.d-house .base b{display:block;font-size:clamp(1.15rem,2vw,1.6rem);font-weight:500;letter-spacing:-.02em}

/* Glasl-Treppe */
.glasl{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:4px;align-items:start}
.glasl button{all:unset;cursor:pointer;display:flex;flex-direction:column;justify-content:space-between;gap:10px;background:var(--paper-2);border:1px solid var(--ink);padding:10px;
  min-height:120px;transition:background .35s,color .35s,transform .5s var(--ease)}
.glasl button:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.glasl button .n{font:500 1.5rem/1 var(--sans);letter-spacing:-.04em}
.glasl button .t{font-size:.78rem;line-height:1.25}
.glasl button[aria-pressed="true"],.glasl button:hover{background:var(--ink);color:var(--paper)}
.glasl button.lv-2{border-color:var(--blue)}
.glasl button.lv-2[aria-pressed="true"],.glasl button.lv-2:hover{background:var(--blue)}
.glasl button.lv-3{border-color:var(--signal)}
.glasl button.lv-3[aria-pressed="true"],.glasl button.lv-3:hover{background:var(--signal);color:var(--ink)}
.glasl-bands{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin-bottom:8px}
.glasl-bands span{border-top:2px solid var(--ink);padding-top:8px}
.glasl-bands span:nth-child(2){border-color:var(--blue)}
.glasl-bands span:nth-child(3){border-color:var(--signal)}
.glasl-out{margin-top:20px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:var(--gap);border-top:1px solid var(--ink);padding-top:20px;min-height:120px}
.glasl-out h4{font-size:1.5rem;font-weight:500;letter-spacing:-.03em}

/* ---------- Medien: Buch & Podcast ---------- */
.media{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);row-gap:48px}
.book{grid-column:1 / span 6;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:var(--gap);align-items:end}
.book .cover{position:relative;perspective:1200px}
.book .cover img{width:100%;border:1px solid var(--rule)}
.book h3{font-size:1.4rem;letter-spacing:-.025em;margin:10px 0 12px}
.pods{grid-column:8 / span 5;display:grid;gap:12px}
.pod{border:1px solid var(--ink);background:var(--paper-2)}
.pod .row{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:16px;align-items:center;padding:16px}
.pod .ep{font:500 1.6rem/1 var(--sans);letter-spacing:-.04em;color:var(--blue)}
.pod h4{font-weight:500;font-size:1.02rem;line-height:1.3;letter-spacing:-.01em}
.pod .play{width:48px;height:48px;border-radius:50%;border:1px solid var(--ink);display:grid;place-items:center;background:transparent;cursor:pointer;transition:background .3s,color .3s}
.pod .play:hover{background:var(--ink);color:var(--paper)}
.pod .embed{border-top:1px solid var(--ink)}
.pod iframe{display:block;width:100%;height:152px;border:0}
.consent-note{padding:0 16px 14px;color:var(--ink-3);font-size:.8rem}

/* ---------- Foto-Strecke ---------- */
.photo{position:relative;margin:0;overflow:hidden;background:var(--ink)}
.photo img{width:100%;height:100%;object-fit:cover}
.photo figcaption{position:absolute;left:0;bottom:0;right:0;display:flex;justify-content:space-between;gap:16px;padding:14px var(--gutter);color:var(--paper);
  background:linear-gradient(transparent,rgba(8,9,12,.6))}
.parallax img{transform:none}
.photo--wide{aspect-ratio:21/9}
.photo--tall{aspect-ratio:4/5}
.photo--frame{border:1px solid var(--ink)}

/* ASCENSO-Teaser (Munro: atmosphärische Fotografie) */
.vista{position:relative;min-height:min(64vh,620px);display:grid;align-items:end;color:var(--paper);overflow:hidden;isolation:isolate}
.vista > .photo{position:absolute;inset:0;z-index:-1}
.vista > .photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,9,12,.18) 0%,rgba(8,9,12,.3) 40%,rgba(8,9,12,.86) 100%)}
.vista .inner{padding-block:clamp(40px,6vw,88px)}
.vista .eyebrow{color:rgba(244,239,212,.82)}
.vista .eyebrow b{color:var(--paper)}
.vista h2{max-width:16ch}
.vista p{max-width:52ch;color:rgba(244,239,212,.88)}

/* ---------- Kontakt-CTA ---------- */
.cta-block{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);row-gap:32px;align-items:end}
.cta-block h2{grid-column:1 / span 8}
.cta-block .r{grid-column:9 / span 4;display:grid;gap:16px}
.contact-lines{font:400 .8125rem/1.9 var(--mono);text-transform:uppercase;letter-spacing:.04em}
.contact-lines a{text-decoration:none;border-bottom:1px solid currentColor;text-transform:none}

/* Formulare */
.form{display:grid;gap:18px}
.field{display:grid;gap:8px}
.field label{font:500 var(--fs-mono)/1.2 var(--mono);text-transform:uppercase;letter-spacing:.05em}
.field input,.field textarea,.field select{width:100%;border:0;border-bottom:1px solid var(--ink);background:transparent;padding:12px 0;font-size:1.1rem;border-radius:0;transition:border-color .3s}
.field textarea{min-height:140px;resize:vertical;border:1px solid var(--ink);padding:12px}
.field input:focus,.field textarea:focus,.field select:focus{outline:0;border-color:var(--blue);box-shadow:0 1px 0 0 var(--blue)}
.check{display:grid;grid-template-columns:22px 1fr;gap:12px;font-size:var(--fs-small);color:var(--ink-2);align-items:start}
.check input{width:20px;height:20px;accent-color:var(--blue);margin:2px 0 0}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.form-msg{font-size:var(--fs-small);min-height:1.4em}
.form-msg.ok{color:var(--z-ok)}
.form-msg.err{color:#b5390f}
.night .field input,.night .field textarea{border-color:var(--parch-2);color:var(--parch)}
.night .field input:focus,.night .field textarea:focus{border-color:var(--night-blue);box-shadow:0 1px 0 0 var(--night-blue)}
.night .check{color:color-mix(in srgb,var(--parch) 75%,transparent)}
.night .check input{accent-color:var(--night-blue)}

/* ---------- Vita / Publikationen ---------- */
.timeline{border-top:1px solid var(--parch-2)}
.timeline li{list-style:none;display:grid;grid-template-columns:140px minmax(0,1fr);gap:var(--gap);padding:16px 0;border-bottom:1px solid var(--night-rule)}
.timeline .y{font:400 .8125rem/1.6 var(--mono);color:var(--night-blue);letter-spacing:.03em}
.pubs{border-top:1px solid var(--ink)}
.pubs li{list-style:none;display:grid;grid-template-columns:90px minmax(0,1fr);gap:var(--gap);padding:16px 0;border-bottom:1px solid var(--rule)}
.pubs .y{font:500 1.15rem/1.3 var(--sans);letter-spacing:-.02em;color:var(--blue)}
.pubs b{font-weight:500;color:var(--ink)}
.pubs span{color:var(--ink-3);font-size:var(--fs-small)}
.quote-rot{min-height:9.5em}
.quote-rot blockquote{margin:0;font-family:var(--serif);font-weight:300;font-size:clamp(1.6rem,3.2vw,2.8rem);line-height:1.15;letter-spacing:-.025em}
.quote-rot cite{display:block;margin-top:18px;font:400 var(--fs-mono)/1 var(--mono);font-style:normal;text-transform:uppercase;letter-spacing:.05em;color:var(--parch-2)}
.quote-rot .q{transition:opacity .6s,transform .8s var(--ease)}
.quote-rot .q.out{opacity:0;transform:translateY(10px)}
.logos{display:flex;flex-wrap:wrap;gap:10px}
.logos a{border:1px solid var(--rule);padding:12px 16px;text-decoration:none;font:400 var(--fs-mono)/1 var(--mono);text-transform:uppercase;letter-spacing:.04em;transition:border-color .3s,color .3s}
.logos a:hover{border-color:var(--blue);color:var(--blue)}

/* ---------- Footer ---------- */
.site-footer{background:var(--blue-deep);color:var(--blue-ink);position:relative;overflow:hidden}
.site-footer a{text-decoration:none}
.site-footer a:hover{text-decoration:underline}
.f-top{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);row-gap:40px;padding-block:clamp(56px,7vw,104px) 40px}
.f-top .claim{grid-column:1 / span 5}
.f-top .claim p{font-size:clamp(1.4rem,2.4vw,2rem);line-height:1.12;letter-spacing:-.03em;margin:0 0 28px}
.f-col{grid-column:span 2}
.f-col:first-of-type{grid-column:7 / span 2}
.f-col h3{font:400 var(--fs-mono)/1 var(--mono);text-transform:uppercase;letter-spacing:.06em;opacity:.6;margin-bottom:16px}
.f-col ul{list-style:none;display:grid;gap:8px;font-size:var(--fs-small)}
.f-word{font:500 min(9vw,7.6rem)/.78 var(--sans);letter-spacing:-.06em;white-space:nowrap;margin:0 0 -.1em -.04em;color:transparent;-webkit-text-stroke:1px rgba(233,231,225,.35);user-select:none}
.f-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;padding-block:20px;border-top:1px solid rgba(233,231,225,.25);font:400 .6875rem/1.5 var(--mono);text-transform:uppercase;letter-spacing:.05em;opacity:.8}
.f-bottom ul{display:flex;gap:20px;list-style:none}

/* ---------- Bewegung ---------- */
[data-reveal]{opacity:0;transform:translateY(28px);transition:opacity .9s var(--ease),transform 1.1s var(--ease);transition-delay:calc(var(--d,0) * 90ms)}
[data-reveal].in{opacity:1;transform:none}
[data-reveal="fade"]{transform:none}
[data-reveal="clip"]{opacity:1;transform:none;clip-path:inset(0 0 100% 0);transition:clip-path 1.2s var(--ease-io)}
[data-reveal="clip"].in{clip-path:inset(0)}
.split-words .w{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.08em;margin-bottom:-.08em}
.split-words .w > span{display:inline-block;transform:translateY(105%);transition:transform 1s var(--ease);transition-delay:calc(var(--i) * 45ms + 80ms)}
.split-words.in .w > span{transform:none}
.draw path,.draw line,.draw ellipse,.draw circle.stroke{stroke-dasharray:var(--len,1200);stroke-dashoffset:var(--len,1200);transition:stroke-dashoffset 1.8s var(--ease);transition-delay:calc(var(--d,0) * 120ms)}
.in .draw path,.in .draw line,.in .draw ellipse,.in .draw circle.stroke,.draw.in path,.draw.in line,.draw.in ellipse,.draw.in circle.stroke{stroke-dashoffset:0}
.pop{transform:scale(.6);opacity:0;transform-box:fill-box;transform-origin:center;transition:transform .9s var(--ease),opacity .6s;transition-delay:calc(var(--d,0) * 140ms + 200ms)}
.in .pop,.pop.in{transform:none;opacity:1}
.js .shead .idx{--draw:0}
.js .shead.in .idx{--draw:1}
.no-js [data-reveal]{opacity:1;transform:none;clip-path:none}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;transition-delay:0ms!important}
  [data-reveal]{opacity:1;transform:none;clip-path:none}
  .split-words .w > span{transform:none}
  .ticker-track{animation:none}
}

/* ---------- Responsive ---------- */
@media (max-width:1280px){
  .nav{display:none}
  .menu-btn{display:inline-flex}
  .hero-copy{grid-column:1 / span 6}
  .hero-fig{grid-column:7 / span 6;margin-top:0}
}
@media (max-width:900px){
  .hero-copy,.hero-fig,.hero-note{grid-column:1 / -1}
  .shead h2,.shead p,.shead--wide h2{grid-column:1 / -1}
  .statement{grid-column:1 / -1}
  .statement + .statement{border-left:0;padding-left:0;border-top:1px solid var(--rule);margin-top:28px}
  .callout .prose,.callout .tag{grid-column:1 / -1}
  .acc .body{grid-template-columns:1fr}
  .acc .body .prose,.acc .body .aside{grid-column:1 / -1}
  .acc summary{grid-template-columns:44px minmax(0,1fr) auto}
  .stats{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:36px}
  .tools{grid-template-columns:1fr}
  .trust{grid-template-columns:1fr}
  .sem{grid-template-columns:minmax(0,1fr) 48px;row-gap:14px}
  .sem .when{grid-column:1 / -1}
  .sem .facts{grid-column:1}
  .sem .go{grid-row:2 / span 2;grid-column:2;align-self:start}
  .sem-extra{grid-template-columns:1fr}
  .sem-hero .facts-row{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sem-hero .facts-row div:nth-child(3){border-left:0;padding-left:0}
  .sem-hero .facts-row div:nth-child(n+3){border-top:1px solid var(--rule)}
  .sem-main,.sem-side{grid-column:1 / -1}
  .agenda .blk{grid-template-columns:1fr;gap:8px}
  .people,.people--2{grid-template-columns:1fr 1fr}
  .page-hero .sub .lead,.page-hero .sub .tagline{grid-column:1 / -1}
  .page-hero .sub .tagline{margin-bottom:20px}
  .split > .l,.split > .r,.split--rev > .l,.split--rev > .r{grid-column:1 / -1;order:initial}
  .book,.pods{grid-column:1 / -1}
  .cta-block h2,.cta-block .r{grid-column:1 / -1}
  .f-top .claim{grid-column:1 / -1}
  .f-col,.f-col:first-of-type{grid-column:span 6}
  .glasl{grid-template-columns:repeat(3,minmax(0,1fr))}
  .glasl-bands{display:none}
  .glasl-out{grid-template-columns:1fr}
  .photo--wide{aspect-ratio:4/3}
  .timeline li{grid-template-columns:96px minmax(0,1fr)}
  .pubs li{grid-template-columns:64px minmax(0,1fr)}
}
@media (max-width:560px){
  :root{--gap:16px;--header-h:60px}
  .brand span i{display:none}
  .people,.people--2{grid-template-columns:1fr}
  .kv{grid-template-columns:1fr 1fr 1fr}
  .kv b{font-size:1.35rem}
  .book{grid-template-columns:1fr}
  .book .cover{max-width:220px}
  .d-house .pillars{grid-template-columns:1fr}
  .d-cross{grid-template-columns:1fr 1fr}
  .d-cross .n{grid-column:1 / -1;grid-row:auto}.d-cross .w,.d-cross .e{grid-column:auto;grid-row:auto}.d-cross .c{grid-column:1 / -1;grid-row:auto;order:-1}.d-cross .s{grid-column:1 / -1;grid-row:auto}
  .d-quad{grid-template-columns:1fr}
  .d-quad > div{border-right:0!important;border-bottom:1px solid var(--blue);min-height:0}
  .d-quad .core{position:static;transform:none;max-width:none;width:auto;order:-1}
  .menu-btn span{display:none}
  .f-col,.f-col:first-of-type{grid-column:1 / -1}
}
@media print{
  .site-header,.site-footer,.ticker,.overlay,.no-print{display:none!important}
  body{background:#fff}
  [data-reveal]{opacity:1!important;transform:none!important;clip-path:none!important}
}

/* ---------- Ergänzungen Startseite ---------- */

/* Werkzeug-Vorschau: Heatmap */
.heat{width:100%;height:100%;padding:6% 5%}
.heat rect{fill:var(--night-3);opacity:0;transition:opacity .5s,fill .5s;transition-delay:calc(var(--i) * 45ms)}
.heat .h-w{fill:rgba(132,172,251,.38)}
.heat .h-c{fill:var(--signal)}
.in .heat rect,.tool.in .heat rect{opacity:1}
.tool:hover .heat .h-c{animation:heatp 1.6s ease-in-out infinite}
@keyframes heatp{50%{opacity:.55}}
.heat .h-dot{fill:var(--parch);animation:hdot 9s var(--ease-io) infinite}
@keyframes hdot{0%{transform:translate(64px,147px)}25%{transform:translate(166px,113px)}50%{transform:translate(268px,62px)}75%{transform:translate(200px,96px)}100%{transform:translate(64px,147px)}}
.heat .h-l{font:400 8.5px/1 var(--mono);fill:var(--parch-2);text-transform:uppercase;letter-spacing:.05em}
/* Werkzeug-Vorschau: Kosten */
.costviz{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;gap:14px;padding:7%}
.costviz .mono{color:var(--parch-2);font-size:.6875rem}
.costviz b{font:300 clamp(2rem,4.2vw,3.4rem)/1 var(--serif);letter-spacing:-.03em;color:var(--parch)}
.bars4{display:flex;height:14px;gap:3px}
.bars4 i{width:0;transition:width 1.6s var(--ease)}
.in .bars4 i{width:var(--w)}
.bars4 i:nth-child(1){background:var(--parch)}
.bars4 i:nth-child(2){background:var(--parch-2)}
.bars4 i:nth-child(3){background:var(--night-blue)}
.bars4 i:nth-child(4){background:transparent;border:1px dashed var(--parch-2)}
.legend4{display:flex;justify-content:space-between;gap:8px;font-size:.625rem!important}

/* ---------- Werkzeug-Seiten ---------- */
.page-hero.night .crumbs a:hover{color:var(--parch)}
.page-hero.night .sub .tagline{display:flex;flex-wrap:wrap;gap:8px;align-content:start}
.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap);margin-top:clamp(48px,6vw,88px);border-top:1px solid var(--night-rule)}
.step{padding-top:22px;display:flex;flex-direction:column;gap:10px}
.step .n{font:300 clamp(2.4rem,4vw,3.4rem)/1 var(--serif);color:var(--night-blue);letter-spacing:-.03em}
.step h3{font-size:1.2rem;letter-spacing:-.02em}
.step p{margin:0;color:color-mix(in srgb,var(--parch) 70%,transparent);font-size:var(--fs-small)}
.step .mono{color:var(--parch-2);margin-top:auto}
.app-stage{padding-top:clamp(40px,5vw,72px)}
.app-frame{border:1px solid var(--ink);background:var(--paper)}
.app-bar{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:12px 16px;border-bottom:1px solid var(--ink);background:var(--paper-2);color:var(--ink-3)}
.app-bar b{color:var(--ink);font-weight:500}
konflikt-map{display:block;min-height:640px}
.zones{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap)}
.zone{border-top:3px solid var(--ink);padding-top:20px;display:flex;flex-direction:column;gap:12px}
.zone.z-ok{border-color:var(--z-ok)}.zone.z-warn{border-color:var(--blue)}.zone.z-crit{border-color:var(--signal)}
.zone h3{font-size:var(--fs-h3);letter-spacing:-.025em}
.zone p{margin:0;color:var(--ink-2)}
.zone b{font-weight:500;margin-top:auto;color:var(--ink)}
.faq summary h3{font-size:clamp(1.15rem,1.9vw,1.6rem);letter-spacing:-.02em;line-height:1.2}
.calc section{padding:clamp(56px,7vw,104px) 0}
.calc section#methodik{padding-top:clamp(56px,7vw,104px)}

/* L.U.N.A.-Abbildung */
.luna{display:grid;gap:18px}
.luna-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:8px;align-items:center;color:var(--blue)}
.luna-flow span{border:1.5px solid var(--blue);padding:8px 10px;text-align:center;font-size:.66rem;line-height:1.35}
.luna-flow i{font-style:normal}
.luna-body{display:grid;grid-template-columns:minmax(0,1.1fr) 70px minmax(0,1fr);gap:12px;align-items:center}
.luna-in{list-style:none;display:grid;gap:6px}
.luna-in li{background:#dcdad3;padding:8px 10px;text-align:center}
.luna-in b{display:block;font-weight:500;color:var(--blue)}
.luna-in small{font-size:.72rem;color:var(--ink-3)}
.luna-funnel svg{width:100%;height:auto}
.luna-loops{list-style:none;display:grid;gap:10px}
.luna-loops li{display:grid;grid-template-columns:34px 1fr;column-gap:10px;align-items:center;color:var(--blue);font-size:1.05rem}
.luna-loops li b{font-weight:600;font-size:1.3rem}
.luna-loops li small{grid-column:2;font-size:.75rem;color:var(--ink-3)}
.luna-loops .ring{grid-row:span 2;width:34px;height:34px;border-radius:50%;border:3px solid #8ea3d8;border-right-color:transparent;transition:transform 1.2s var(--ease)}
.luna-loops li:nth-child(2) .ring{transform:rotate(90deg)}
.luna-loops li:nth-child(3) .ring{transform:rotate(180deg)}
.luna-loops li:nth-child(4) .ring{transform:rotate(270deg)}
.fig:hover .luna-loops .ring{transform:rotate(360deg)}

/* Prof. Knobloch */
.kn-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);row-gap:40px;align-items:end;padding:clamp(28px,4vw,56px) 0 clamp(56px,7vw,104px)}
.kn-text{grid-column:1 / span 7}
.kn-portrait{grid-column:9 / span 4;margin:0;position:relative;border:1px solid var(--night-rule);border-radius:14px;overflow:hidden;aspect-ratio:4/5}
.kn-portrait img{width:100%;height:100%;object-fit:cover}
.kn-portrait figcaption{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:space-between;gap:12px;padding:14px;background:linear-gradient(transparent,rgba(8,9,12,.85));color:var(--parch)}
.kn-why{margin-top:clamp(56px,7vw,104px);display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);border-top:1px solid var(--night-rule);padding-top:28px}
.kn-why .mono{grid-column:1 / span 3}
.kn-why .serif{grid-column:4 / span 9;font-size:clamp(1.6rem,3.2vw,2.8rem);margin:0}
.branchen{list-style:none;border-top:1px solid var(--ink)}
.branchen li{display:grid;grid-template-columns:56px 1fr;align-items:baseline;padding:18px 0;border-bottom:1px solid var(--rule);font-size:clamp(1.4rem,2.6vw,2.2rem);letter-spacing:-.035em;line-height:1.1}

/* Kontakt */
.big-link{display:inline-block;font-size:clamp(1.4rem,2.6vw,2.2rem);letter-spacing:-.035em;line-height:1.15;text-decoration:none;margin-top:6px;background:linear-gradient(var(--blue),var(--blue)) 0 100%/0 2px no-repeat;transition:background-size .5s var(--ease)}
.big-link:hover{background-size:100% 2px;color:var(--blue)}
.contact-card{display:flex;flex-direction:column;align-items:flex-start}

@media (max-width:900px){
  .steps,.steps--4,.zones{grid-template-columns:1fr}
  .kn-text,.kn-portrait{grid-column:1 / -1}
  .kn-portrait{max-width:420px}
  .kn-why .mono,.kn-why .serif{grid-column:1 / -1}
  .kn-why .mono{margin-bottom:16px}
  .tools[style]{grid-template-columns:1fr!important}
  .sem-extra[style]{grid-template-columns:1fr!important}
  .luna-body{grid-template-columns:1fr 50px 1fr}
  .luna-flow{grid-template-columns:1fr;text-align:center}
  .luna-flow i{transform:rotate(90deg)}
}
@media (max-width:560px){
  .cmap .lbl{font-size:17px}
  .cmap .p text{font-size:17px}
  .cmap .xh text{font-size:16px}
}

/* ==========================================================================
   Entschlackung v2: ruhiger Hero, Leistungen, Personen, keine Überlappungen
   ========================================================================== */
.hero{padding-top:clamp(40px,5vw,80px);padding-bottom:0;overflow:visible}
.hero-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);row-gap:28px;margin-top:clamp(24px,3vw,40px);align-items:end}
.hero-h1{grid-column:1 / span 8;font-size:clamp(2.1rem,5.4vw,5.2rem);hyphens:manual}
.hero-copy{grid-column:9 / span 4;padding-bottom:6px}
.hero-copy .lead{margin-bottom:24px}
.hero-photo{margin-top:clamp(36px,4.4vw,64px);position:relative}
.hero-photo img{width:100%;aspect-ratio:21/9;object-fit:cover;object-position:50% 35%}
.hero-photo figcaption{margin-top:10px;color:var(--ink-3)}
.svc{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap)}
.svc-item{display:flex;flex-direction:column;gap:14px;padding-top:22px;border-top:1px solid var(--ink);text-decoration:none}
.svc-item h3{font-size:var(--fs-h3);letter-spacing:-.025em;line-height:1.15}
.svc-item p{margin:0;color:var(--ink-2)}
.svc-item .link{margin-top:auto;padding-top:8px}
.svc-item:hover h3{color:var(--blue)}
.kv--wide{margin-top:clamp(40px,5vw,64px)}
.kv--wide b{font-size:clamp(1.8rem,3vw,2.6rem)}
.tools-strip{display:flex;flex-wrap:wrap;align-items:end;gap:20px 48px;border-top:1px solid var(--rule);padding-top:28px}
.tools-strip > div{margin-right:auto}
/* Seminarliste im blauen Band */
.band .sem-list{border-color:rgba(233,231,225,.6)}
.band .sem{border-color:rgba(233,231,225,.25)}
.band .sem::before{background:rgba(233,231,225,.08)}
.band .sem p,.band .sem .muted{color:rgba(233,231,225,.75)}
.band .chip{background:transparent;border-color:rgba(233,231,225,.45);color:var(--blue-ink)}
.band .chip--blue{background:var(--blue-ink);border-color:var(--blue-ink);color:var(--blue)}
.band .sem .go{border-color:var(--blue-ink)}
.band .sem:hover .go{background:var(--blue-ink);color:var(--blue);border-color:var(--blue-ink)}
/* Mobiles Menü */
.overlay nav > a{display:block;font-size:clamp(1.6rem,7vw,2.3rem);line-height:1.15;letter-spacing:-.035em;text-decoration:none;padding:10px 0;border-bottom:1px solid rgba(233,231,225,.25)}
.overlay .sub{display:grid;gap:2px;padding:6px 0 12px 14px;border-bottom:1px solid rgba(233,231,225,.25)}
.overlay .sub a{font-size:1.05rem;letter-spacing:-.01em;padding:4px 0;opacity:.85;text-decoration:none}
.overlay nav > a:has(+ .sub){border-bottom:0}
@media (max-width:900px){
  .hero-h1,.hero-copy{grid-column:1 / -1}
  .hero-photo img{aspect-ratio:4/3}
  .svc{grid-template-columns:1fr;row-gap:36px}
}
.nav a.top,.nav button.top{white-space:nowrap;padding:0 10px}
.nav .top::after{left:10px;right:10px}
.people--2{max-width:880px}
.card--photo{position:relative;color:var(--paper);overflow:hidden;justify-content:flex-end;min-height:300px;isolation:isolate}
.card--photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform 1.2s var(--ease)}
.card--photo:hover img{transform:scale(1.04)}
.card--photo::after{content:"";position:absolute;inset:0;background:linear-gradient(rgba(8,9,12,.05) 20%,rgba(8,9,12,.78));z-index:-1}
.card--photo .link{color:var(--paper)}
.more-pubs{margin-top:20px}
.more-pubs summary{list-style:none;cursor:pointer}
.more-pubs summary::-webkit-details-marker{display:none}
.more-pubs[open] summary{margin-bottom:8px}

/* ==========================================================================
   v3 · Spacing- & Typo-System
   Basis: 17px / 1.6 ≈ 27px Zeilenhöhe → Schrittweite 4/8 px.
   Skala: 4 · 8 · 12 · 16 · 24 · 32 · 48 · 64 · 96 · 128
   Regel: Abstände entstehen nur aus Nachbarschaft (Element A + Element B),
   nie aus Einzel-Margins im Markup.
   ========================================================================== */
:root{
  --s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:32px;--s7:48px;--s8:64px;--s9:96px;--s10:128px;
  --section:clamp(72px,8.5vw,128px);
  --block:clamp(40px,4.4vw,64px);      /* Abschnittskopf → Inhalt, Block → Block */
}
:where(figure){margin:0}
body{line-height:1.6}

/* --- Typografie --- */
.mono,.eyebrow,.meta{letter-spacing:.08em}
.eyebrow{line-height:1.4}
.h1{line-height:1;letter-spacing:-.035em}
.h2{line-height:1.05;letter-spacing:-.03em}
.h3{line-height:1.2;letter-spacing:-.015em}
.display{letter-spacing:-.045em}
.lead{line-height:1.45;max-width:44ch}
.prose{max-width:62ch}
.btn{letter-spacing:.08em}
.chip{letter-spacing:.06em}
.nav a.top,.nav button.top{letter-spacing:.07em}
.link{letter-spacing:.08em}

/* --- Fluss-Abstände (Nachbarschaft, Spezifität 0) --- */
:where(.eyebrow,.crumbs) + :where(h1,h2,.h1,.h2,.h3){margin-top:var(--s5)}
:where(h1,h2,.h1,.h2) + :where(p,.lead,.prose,ul,ol,div,figure,img,.aside-note){margin-top:var(--s5)}
:where(h1,h2,.h1,.h2,.h3) + :where(.btn-row,.link,.btn){margin-top:var(--s6)}
:where(.h3,h3) + :where(p,.prose,ul){margin-top:var(--s3)}
:where(.lead) + :where(.prose,p,.small){margin-top:var(--s5)}
:where(p,.lead,.prose,ul,ol,.aside-note,.timeline,.pubs,.logos,.branchen,.d-quad,.small) + :where(.btn-row,.link,.btn){margin-top:var(--s6)}
:where(.eyebrow) + :where(.prose,.lead,.agenda,.aside-note,.logos,.branchen,.timeline,p){margin-top:var(--s4)}
:where(.prose,.lead,.agenda,.aside-note,p,.branchen,.banner-label) + :where(.eyebrow,.mono){margin-top:var(--s7)}
:where(.prose) > * + *{margin-top:1em}
.prose > .eyebrow:not(:first-child){margin-top:var(--s7)}
.prose > .eyebrow + *{margin-top:var(--s3)}

/* Raster und Karten steuern Abstände über gap → keine Fluss-Margins */
.shead > *,.hero-grid > *,.sub > *,.kn-grid > *,.grid > *,.split > *,.svc > *,.people > *,.statements > *,
.media > *,.kv > *,.sem > *,.stats > *,.tools > *,.tools-strip > *,.f-top > *,.cta-block > *,.sem-body > *,
.zones > *,.steps > *,.sem-extra > *,.facts-row > *,.card > *,.svc-item > *,.person > *,.tool > *,.step > *,
.zone > *,.statement > *,.statement > div > *,.pod *,.date > *,.d-quad > *,.d-cross > *,.glasl-out > *,.form > *,.luna *{margin-top:0}
.statement > div > p{margin-top:var(--s3)}

/* --- Abschnittsrhythmus --- */
.section{padding-block:var(--section)}
.section + .section:not(.band):not(.night){padding-top:var(--section)}
.section:not(.band):not(.night) + .section:not(.band):not(.night){padding-top:0}
.page-hero:not(.night) + .section:not(.band):not(.night){padding-top:0}
.section--tight{padding-block:var(--section)}
.page-hero{padding-top:clamp(32px,4.5vw,72px);padding-bottom:clamp(48px,6vw,88px)}
.crumbs{margin-bottom:var(--s7)}
.page-hero .sub{margin-top:var(--s7);align-items:start}
.shead{margin-bottom:var(--block);row-gap:var(--s5)}
.shead p{max-width:44ch}

/* --- Bausteine --- */
.hero{padding-bottom:var(--s7)}
.hero-grid{margin-top:var(--s6);row-gap:var(--s6)}
.hero-copy .lead{margin-bottom:0}
.hero-photo{margin-top:var(--s8)}
.hero-photo figcaption{margin-top:var(--s3)}
.statements{column-gap:var(--gap)}
.statement{grid-template-columns:56px 1fr;padding-top:var(--s5)}
.statement + .statement{padding-left:var(--s6)}
.svc{gap:var(--s7) var(--gap)}
.svc-item{gap:var(--s4);padding-top:var(--s5)}
.svc-item .link{padding-top:var(--s2)}
.people{gap:var(--s7) var(--gap)}
.person{gap:var(--s4)}
.person h3{margin-top:var(--s2)}
.person ul{font-size:.9375rem;line-height:1.45}
.person li{padding:var(--s2) 0}
.kv--wide{margin-top:var(--block);padding-top:0}
.kv div{padding-top:var(--s5)}
.kv span{margin-top:var(--s2)}
.sem{align-items:start;padding:var(--s6) 0}
.sem .go{align-self:center}
.sem p{margin-top:var(--s2)}
.sem-list + .btn-row,.sem-list + .sem-extra{margin-top:var(--s6)}
.sem-extra{gap:var(--gap)}
.split + .sem-list{margin-top:var(--block)}
.band .split{margin-bottom:0}
.media{row-gap:var(--s7);align-items:start}
.book{align-items:start;grid-template-columns:minmax(0,180px) minmax(0,1fr);gap:var(--s6)}
.book h3{margin:var(--s3) 0 var(--s5);font-size:1.3rem;line-height:1.25}
.pods{gap:var(--s3)}
.pods > .mono{margin-bottom:var(--s2)}
.pods > .small{margin-top:var(--s2)}
.vista .inner{padding-block:var(--s9) var(--s8)}
.vista h2{margin-block:var(--s5) 0}
.vista h2 + .btn-row{margin-top:var(--s6)}
.tools-strip{padding-top:var(--s6)}
.tools-strip .h3{margin-top:var(--s2)}
.cta-block{row-gap:var(--s6)}
.cta-block .r{gap:var(--s5)}
.fig{padding:var(--s5)}
.fig-head{margin-bottom:var(--s5);padding-bottom:var(--s3)}
.fig-cap{margin-top:var(--s5);padding-top:var(--s3)}
.banner-label{margin-bottom:var(--s7)}
.kn-hero{padding-top:clamp(32px,4.5vw,72px)}
.kn-grid{padding:var(--s6) 0 var(--section)}
.contact-card > .mono:not(:first-child){margin-top:var(--s6)}
.contact-card > .mono + *{margin-top:var(--s2)}
.contact-card > .link{margin-top:var(--s5)}
.form{gap:var(--s5)}
.sem-body{row-gap:var(--block)}
.agenda .blk{padding:var(--s5) 0}
.agenda .blk h4{margin-top:var(--s2)}
.steps{margin-top:var(--block)}
.page-hero .btn-row{margin-top:var(--s6)}
.more-pubs{margin-top:var(--s5)}
.logos{margin-top:var(--s3)}
.branchen + .mono{margin-top:var(--s7)}
.f-top{padding-block:var(--s9) var(--s7)}
.f-top .claim p{margin-bottom:var(--s5)}
.f-col h3{margin-bottom:var(--s4)}

@media (max-width:900px){
  .statement + .statement{padding-left:0;margin-top:var(--s6)}
  .book{grid-template-columns:120px minmax(0,1fr)}
  .page-hero .sub{row-gap:var(--s4)}
}
/* Hero: Headline über volle Breite, darunter Lead links und Aktionen rechts – gemeinsame Grundlinie */
.hero-h1{grid-column:1 / -1}
.hero-copy{grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--s5) var(--s7);padding-bottom:0}
.hero-copy .lead{max-width:48ch}
.hero-copy .btn-row{margin-top:0}
.shead .idx{white-space:nowrap}
.shead .idx::after{min-width:48px}
.person ul{flex:1}
.person .link{margin-top:auto;align-self:flex-start}
.cta-block h2{font-size:var(--fs-h2);line-height:1.05;letter-spacing:-.03em}
.cta-block{align-items:end}
.d-stack{padding:56px 32px 0 0}
.d-stack .back{inset:0 0 32px 32px;padding:16px 20px}
.d-stack .back ul{top:72px}

.sem-hero .h1{font-size:clamp(2.2rem,4.6vw,4.2rem)}
.statement h3{margin-bottom:0}
/* Kontakt: Adresse darf nicht umbrechen */
.big-link{font-size:clamp(1.2rem,1.8vw,1.6rem);overflow-wrap:anywhere}
/* Quadranten-Diagramm: Titel als eigene Kopfzeile statt schwebend über dem Inhalt */
.d-quad .core{position:static;transform:none;grid-column:1 / -1;order:-1;width:auto;max-width:none;padding:var(--s4) var(--s5);border-bottom:1px solid var(--blue)!important}
.d-quad > div:not(.core){min-height:132px;padding:var(--s5) var(--s4)}
.d-quad > div:nth-child(1),.d-quad > div:nth-child(2){border-bottom:1px solid var(--blue)}
.d-quad > div:nth-child(3),.d-quad > div:nth-child(4){border-bottom:0}
.d-quad > div:nth-child(1),.d-quad > div:nth-child(3){border-right:1px solid var(--blue)}
.d-quad > div:nth-child(2),.d-quad > div:nth-child(4){border-right:0}
/* Lange deutsche Komposita: Silbentrennung statt Überlauf */
h1,h2,.h1,.h2,.h3{overflow-wrap:break-word;hyphens:auto;-webkit-hyphens:auto;hyphenate-limit-chars:10 4 4}
@media (max-width:560px){
  .statement{grid-template-columns:36px 1fr}
  .eyebrow{flex-wrap:wrap;row-gap:4px}
}
/* Semantik-Korrekturen behalten die Optik */
.eyebrow:is(h2){font-weight:400;font-size:var(--fs-mono)}
.agenda .blk .blk-t{font-weight:500;font-size:1.1rem;letter-spacing:-.015em;margin-top:var(--s2);line-height:1.3}
.glasl-out .glasl-t{font-size:1.5rem;font-weight:500;letter-spacing:-.03em;line-height:1.2}
.d-stack .front .d-title{color:var(--blue);font-weight:500;font-size:1.15rem;letter-spacing:-.02em;margin-bottom:12px}
.step h2{font-size:1.2rem;letter-spacing:-.02em;line-height:1.25}
.prose h2.h3{color:var(--ink);margin:2em 0 .6em}
/* Klickflächen ≥ 44px ohne Layoutverschiebung */
.link,.big-link{position:relative}
.link::after,.big-link::after{content:"";position:absolute;inset:-13px -8px}

/* ==========================================================================
   v4 · Header & Hero
   ========================================================================== */
.site-header .bar{align-items:stretch;gap:var(--s6)}
.brand{align-self:center}
.nav{align-self:stretch;margin-left:auto}
.nav > ul{height:100%;align-items:stretch;gap:0}
.nav a.top,.nav button.top{height:100%;padding:0 14px;font-size:.75rem;color:var(--ink);transition:color .25s}
.nav a.top:hover,.nav button.top:hover,.nav li.open > .top{color:var(--blue)}
.nav .top::after{left:14px;right:14px;bottom:-1px;height:2px;background:var(--blue)}
.nav .cta{display:none}
/* Kontakt: bündiger Block über volle Header-Höhe */
.hdr-cta{align-self:stretch;display:flex;text-decoration:none;margin-block:-1px;margin-left:var(--s3)}
.hdr-cta .t{display:flex;align-items:center;padding:0 22px;background:var(--ink);color:var(--paper);font:500 .75rem/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;transition:background .35s var(--ease)}
.hdr-cta .sq{width:var(--header-h);display:grid;place-items:center;background:var(--blue);color:var(--blue-ink);transition:background .35s var(--ease)}
.hdr-cta .sq .arr{width:18px;height:18px;transition:transform .45s var(--ease)}
.hdr-cta:hover .t,.hdr-cta.is-active .t{background:var(--blue-deep)}
.hdr-cta:hover .sq .arr{transform:rotate(-45deg)}
.hdr-cta:focus-visible{outline-offset:-3px}
.menu-btn{align-self:center}

/* Mega-Menü */
.nav > ul > li.has-drop{position:static}
.mega{position:absolute;left:0;right:0;top:100%;background:var(--paper-2);border-top:1px solid var(--rule);border-bottom:1px solid var(--ink);
  box-shadow:0 40px 60px -40px rgba(11,12,16,.35);opacity:0;visibility:hidden;transform:translateY(-6px);
  transition:opacity .25s,transform .4s var(--ease),visibility 0s .4s}
.nav li.open > .mega,.nav li:focus-within > .mega{opacity:1;visibility:visible;transform:none;transition:opacity .25s,transform .4s var(--ease)}
@media (hover:hover){.nav li.has-drop:hover > .mega{opacity:1;visibility:visible;transform:none;transition:opacity .25s,transform .4s var(--ease)}}
.mega-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);padding-block:var(--s7)}
.mega-intro{grid-column:1 / span 4}
.mega-lead{margin-top:var(--s4);font-size:1.35rem;line-height:1.3;letter-spacing:-.015em;max-width:26ch;color:var(--ink)}
.mega-links{grid-column:5 / span 5;border-top:1px solid var(--ink)}
.mega-link{display:grid;grid-template-columns:44px minmax(0,1fr) 20px;align-items:center;gap:var(--s3);padding:var(--s4) 0;border-bottom:1px solid var(--rule);text-decoration:none}
.mega-link .n{font:400 var(--fs-mono)/1 var(--mono);color:var(--ink-3)}
.mega-link b{display:block;font-weight:500;font-size:1.15rem;letter-spacing:-.015em}
.mega-link small{display:block;margin-top:2px;color:var(--ink-3);font-size:.9rem}
.mega-link .arr{width:18px;height:18px;opacity:0;transform:translateX(-6px);transition:opacity .3s,transform .45s var(--ease)}
.mega-link:hover{color:var(--blue)}
.mega-link:hover .arr{opacity:1;transform:none}
.mega-teaser{grid-column:10 / span 3;display:flex;flex-direction:column;gap:var(--s3);padding:var(--s5);background:var(--blue);color:var(--blue-ink);text-decoration:none}
.mega-teaser .mono{opacity:.75}
.mega-teaser p{font-size:1.05rem;line-height:1.4}
.mega-teaser .link{color:var(--blue-ink);margin-top:auto}

/* Hero: geschlossener erster Bildschirm */
.hero--split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:min(calc(100svh - var(--header-h)),860px);padding:0;overflow:hidden}
.hero--split .hero-text{display:flex;flex-direction:column;padding:var(--s7) var(--s8) var(--s6) max(var(--gutter),calc((100vw - var(--max)) / 2 + var(--gutter)))}
.hero--split .hero-text > .eyebrow{margin-bottom:auto}
.hero--split .hero-h1{font-size:clamp(2.4rem,4.3vw,4.6rem);grid-column:auto}
.hero--split .lead{max-width:40ch}
.hero-facts{margin-top:auto;display:grid;grid-template-columns:repeat(3,max-content);gap:var(--s7);padding-top:var(--s5);border-top:1px solid var(--ink)}
:where(.btn-row) + .hero-facts{margin-top:auto}
.hero-text .btn-row + .hero-facts{margin-top:auto}
.hero-facts b{display:block;font:500 clamp(1.5rem,2.2vw,2rem)/1 var(--sans);letter-spacing:-.04em}
.hero-facts span{display:block;margin-top:var(--s2)}
.hero-media{position:relative;min-height:100%}
.hero-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:72% 35%}
.hero-media figcaption{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:space-between;gap:var(--s4);padding:var(--s5);color:var(--paper);background:linear-gradient(transparent,rgba(8,9,12,.55))}
.hero + .section{padding-top:var(--s9)}
.hero-text .btn-row{margin-top:var(--s6)}
.hero-text .lead{margin-top:var(--s5)}
.hero-text .hero-h1{margin-top:var(--s7)}
.hero-text .btn-row{margin-bottom:var(--s7)}

@media (max-width:1280px){
  .hdr-cta{margin-left:auto}
  .menu-btn{margin-left:var(--s4)}
}
@media (max-width:900px){
  .hero--split{grid-template-columns:1fr;min-height:0}
  .hero--split .hero-text{padding:var(--s7) var(--gutter) var(--s6)}
  .hero--split .hero-text > .eyebrow{margin-bottom:0}
  .hero-media{aspect-ratio:4/3;min-height:0}
  .hero-facts{gap:var(--s5)}
}
@media (max-width:560px){
  .hdr-cta .t{display:none}
  .hdr-cta{margin-left:auto}
  .hero-facts{grid-template-columns:repeat(3,minmax(0,1fr))}
  .hero-facts b{font-size:1.35rem}
}
.hero--split .hero-h1{font-size:clamp(2.2rem,3.7vw,4rem);hyphens:manual;-webkit-hyphens:manual}
@media (max-width:560px){
  .hdr-cta{display:none}
  .menu-btn{margin-left:auto}
  .hero--split .hero-h1{font-size:1.85rem}
}

/* ==========================================================================
   v5 · Apple-Prinzipien (dosiert): ruhige Navigation, Pillen-Buttons,
   zentrierter Hero, weich gerundete Medien. Blueprint-Linien bleiben.
   ========================================================================== */
:root{--radius-media:14px;--radius-card:14px}

/* Buttons: Pille, Satzschreibung, ruhiger Farbwechsel statt Wisch-Effekt */
.btn{border-radius:999px;font:500 .9375rem/1 var(--sans);letter-spacing:-.005em;text-transform:none;
  min-height:46px;padding:13px 24px;gap:8px;transition:background-color .25s,color .25s,border-color .25s}
.btn::before{display:none}
.btn .arr{display:none}
.btn:hover{--bg:var(--blue-deep);--bd:var(--blue-deep)}
.btn--ghost{--bg:transparent;--fg:var(--ink);--bd:rgba(11,12,16,.28)}
.btn--ghost:hover{--bg:var(--ink);--fg:var(--paper);--bd:var(--ink)}
.btn--paper{--bg:var(--paper);--fg:var(--blue);--bd:var(--paper)}
.btn--paper:hover{--bg:#fff;--fg:var(--blue-deep);--bd:#fff}
.btn--onblue{--bg:transparent;--fg:var(--blue-ink);--bd:rgba(233,231,225,.55)}
.btn--onblue:hover{--bg:var(--blue-ink);--fg:var(--blue);--bd:var(--blue-ink)}
.btn--sm{min-height:36px;padding:9px 18px;font-size:.875rem}
.night .btn{padding-inline:24px}
.night .btn:hover{--bg:var(--parch);--bd:var(--parch);--fg:var(--night)}
.night .btn--ghost{--bd:rgba(244,239,212,.4)}
.btn-row{gap:var(--s3)}

/* Textlinks: ruhig in Satzschrift statt Mono-Versalien */
.link{font:500 .9375rem/1.3 var(--sans);letter-spacing:-.005em;text-transform:none;gap:6px}

/* Header: schlank, Satzschrift, kleiner Kontakt-Button */
:root{--header-h:64px}
.site-header{background:color-mix(in srgb,var(--paper) 80%,transparent);border-bottom-color:rgba(11,12,16,.1)}
.site-header .bar{align-items:center;gap:var(--s5)}
.nav{align-self:stretch}
.nav a.top,.nav button.top{font:400 .9rem/1 var(--sans);letter-spacing:-.005em;text-transform:none;padding:0 13px;color:var(--ink-2)}
.nav a.top:hover,.nav button.top:hover,.nav li.open > .top,.nav li.is-active > .top{color:var(--ink)}
.nav .top::after{height:2px;bottom:-1px;left:13px;right:13px}
.hdr-cta{align-self:center;margin:0 0 0 var(--s3)}
.menu-btn{border-radius:999px;border-color:rgba(11,12,16,.28);height:38px;font:500 .875rem/1 var(--sans);letter-spacing:0;text-transform:none}
.mega{border-bottom-color:rgba(11,12,16,.12);border-radius:0 0 var(--radius-card) var(--radius-card)}
.mega-teaser{border-radius:var(--radius-card)}

/* Hero: zentrierter Stapel, darunter das Bild */
.hero--center{padding:var(--s9) 0 0;text-align:center;overflow:visible}
.hero-stack{display:flex;flex-direction:column;align-items:center}
.hero-stack .eyebrow{justify-content:center}
.hero--center .hero-h1{margin-top:var(--s5);font:600 clamp(2.3rem,5.6vw,5.4rem)/1.04 var(--sans);letter-spacing:-.035em;max-width:none;hyphens:manual;-webkit-hyphens:manual;text-wrap:balance}
.hero-sub{margin-top:var(--s5);font-size:clamp(1.15rem,1.7vw,1.5rem);line-height:1.35;letter-spacing:-.012em;color:var(--ink-2);max-width:36ch}
.hero-stack .btn-row{margin-top:var(--s6);justify-content:center}
.hero-shot{margin-top:var(--s8)}
.hero-shot img{width:100%;aspect-ratio:2.2/1;object-fit:cover;object-position:60% 35%;border-radius:var(--radius-media);box-shadow:0 30px 60px -30px rgba(11,12,16,.35)}
.hero + .section{padding-top:var(--section)}

/* Medien & Karten: weich gerundet */
.person figure,.photo--frame,.card,.card--photo,.dates,.pod,.fig,.kn-portrait,.tool,.hero-photo img,.vista-card{border-radius:var(--radius-card)}
.person figure,.photo--frame,.card,.card--photo,.dates,.pod,.fig{overflow:hidden}
.person figure{border:0;box-shadow:0 20px 40px -28px rgba(11,12,16,.4)}
.person figure figcaption{left:12px;bottom:12px;border-radius:999px;padding:6px 12px}
.fig{border-color:rgba(11,12,16,.18)}
.card{border-color:rgba(11,12,16,.18)}
.dates{border-color:rgba(11,12,16,.18)}
.dates .hd{border-bottom-color:rgba(11,12,16,.18)}
.dates .ft .btn{justify-content:center}
.pod{border-color:rgba(11,12,16,.18)}
.book .cover img{border-radius:6px;border:0;box-shadow:0 20px 40px -24px rgba(11,12,16,.45)}
.sem .go{border-radius:50%;border-color:rgba(11,12,16,.28)}
.chip{border-radius:999px}
.vista{border-radius:0}

@media (max-width:900px){
  .hero--center{padding-top:var(--s8)}
  .hero-shot img{aspect-ratio:4/3}
  .hero-shot{margin-top:var(--s7)}
}
@media (max-width:560px){
  .hero--center .hero-h1{font-size:1.8rem}
  .hdr-cta{display:none}
}

/* ==========================================================================
   v6 · Startseiten-Look für alle Seiten + Bewegung
   ========================================================================== */
/* Seitenkopf: zentrierter Stapel wie auf der Startseite */
.page-hero{text-align:center;padding-top:var(--s8);padding-bottom:var(--s8)}
.page-hero > .wrap{display:flex;flex-direction:column;align-items:center}
.page-hero .sub{display:contents}
.page-hero .crumbs{order:0;justify-content:center;margin:0 0 var(--s6)}
.page-hero > .wrap > .eyebrow,.page-hero .tagline{order:1;justify-content:center;margin:0 0 var(--s4)!important}
.page-hero .tagline{color:var(--ink-3)}
.page-hero.night .tagline{color:var(--parch-2)}
.page-hero .tagline:has(.pill){display:flex;gap:var(--s2);justify-content:center;order:4;margin:var(--s5) 0 0!important}
.page-hero h1,.page-hero .h1{order:2;margin:0!important;font:600 clamp(2.3rem,5vw,4.6rem)/1.05 var(--sans);letter-spacing:-.035em;max-width:18ch;text-wrap:balance}
.page-hero.night .h1.serif{font:300 clamp(2.4rem,5.4vw,4.8rem)/1.04 var(--serif);letter-spacing:-.03em}
.page-hero .lead{order:3;margin:var(--s5) auto 0!important;font-size:clamp(1.1rem,1.5vw,1.35rem);max-width:46ch}
.page-hero .btn-row{order:5;justify-content:center;margin-top:var(--s6)!important}
.page-hero .facts-row,.page-hero .steps{order:6;align-self:stretch;text-align:left;margin-top:var(--s8)!important}
.sem-hero .h1{font-size:clamp(2.1rem,4.2vw,3.9rem);max-width:22ch}
.page-hero + .section:not(.band):not(.night){padding-top:var(--s7)}
.page-hero:has(+ .section) .hero-shot{margin-bottom:0}
.page-hero .hero-shot{margin-top:var(--s8)}
.page-hero:has(.hero-shot){padding-bottom:0}
.page-hero:has(.hero-shot) + .section:not(.band):not(.night){padding-top:var(--section)}

/* Bewegung 1: Wörter blenden mit leichter Unschärfe ein (Apple-artig) */
.split-words .w > span{filter:blur(8px);opacity:0;transition:transform 1s var(--ease),filter .9s var(--ease),opacity .7s var(--ease);transition-delay:calc(var(--i) * 45ms + 80ms)}
.split-words.in .w > span{filter:none;opacity:1}

/* Bewegung 2: Bilder wachsen beim Scrollen in den Rahmen */
.hero-shot img,.zoom-in img{transform:scale(var(--zs,.94));transform-origin:50% 0;transition:transform .2s linear;will-change:transform}

/* Bewegung 3: Scroll-Fortschritt als Signal-Linie (dot connect) */
.progress{position:fixed;left:0;right:0;top:0;height:2px;background:var(--signal);transform:scaleX(var(--sp,0));transform-origin:left;z-index:60;pointer-events:none}

/* Bewegung 4: Signalpunkte pulsieren */
.eyebrow .dot{position:relative}
.eyebrow .dot::after{content:"";position:absolute;inset:0;background:var(--signal);animation:pulse 2.4s var(--ease) infinite}
@keyframes pulse{0%{transform:scale(1);opacity:.7}70%,100%{transform:scale(2.8);opacity:0}}

/* Bewegung 5: Lichtkegel folgt der Maus in Nachtkapiteln (Moxie/Becklyn) */
.night{--mx:50%;--my:30%}
.night::before{content:"";position:absolute;inset:0;pointer-events:none;z-index:0;
  background:radial-gradient(600px circle at var(--mx) var(--my),rgba(132,172,251,.10),transparent 60%);transition:opacity .6s;opacity:0}
.night:hover::before{opacity:1}
.night > *{position:relative;z-index:1}

/* Bewegung 6: Blaue Bänder – Rasterlinien wandern langsam (Blueprint) */
.band{background-image:linear-gradient(90deg,rgba(233,231,225,.07) 1px,transparent 1px);background-size:calc(100% / 12) 100%;animation:drift 18s linear infinite}
@keyframes drift{to{background-position:calc(100% / 12) 0}}

/* Bewegung 7: Personen, Karten und Seminar-Zeilen */
.person figure{transition:transform .8s var(--ease),box-shadow .8s var(--ease)}
.person:hover figure{transform:translateY(-6px);box-shadow:0 30px 50px -28px rgba(11,12,16,.5)}
.sem{transition:padding .5s var(--ease)}
.sem:hover{padding-left:var(--s3)}
.card,.svc-item{transition:transform .6s var(--ease)}
.card:hover{transform:translateY(-4px)}
.svc-item{position:relative}
.svc-item::before{content:"";position:absolute;left:0;top:-1px;height:1px;width:100%;background:var(--blue);transform:scaleX(0);transform-origin:left;transition:transform .7s var(--ease)}
.svc-item:hover::before{transform:scaleX(1)}

/* Bewegung 8: Abbildungen zeichnen sich (Blueprint) */
[data-reveal].fig{opacity:1;transform:none;clip-path:inset(0 0 100% 0 round var(--radius-card));transition:clip-path 1.2s var(--ease-io)}
[data-reveal].fig.in{clip-path:inset(0 0 0 0 round var(--radius-card))}

@media (prefers-reduced-motion:reduce){
  .split-words .w > span{filter:none;opacity:1}
  .hero-shot img,.zoom-in img{transform:none}
  .progress,.night::before{display:none}
  .band{animation:none}
  [data-reveal].fig{clip-path:none}
}
.page-hero .sub .lead{max-width:46ch;grid-column:auto}
@media (max-width:1280px){.site-header .hdr-cta{margin-left:auto}.menu-btn{margin-left:var(--s3)}}
@media (max-width:900px){
  .kn-text{text-align:center;display:flex;flex-direction:column;align-items:center}
  .kn-text .eyebrow{justify-content:center}
  .kn-text .btn-row{justify-content:center}
  .kn-portrait{margin-inline:auto}
  .kn-hero .crumbs{justify-content:center}
}

/* ==========================================================================
   v7 · Reveal-Fix & Scrollytelling
   ========================================================================== */
/* Clip-Reveals nicht mehr auf dem beobachteten Element selbst (sonst meldet der
   IntersectionObserver es nie als sichtbar → weiße Flächen). Stattdessen das Bild darin. */
[data-reveal="clip"]{clip-path:none!important;opacity:1;transform:none}
[data-reveal="clip"] > img{clip-path:inset(0 0 100% 0);transition:clip-path 1.2s var(--ease-io)}
[data-reveal="clip"].in > img{clip-path:inset(0)}
[data-reveal].fig{clip-path:none!important;opacity:0;transform:translateY(24px);transition:opacity .9s var(--ease),transform 1.1s var(--ease)}
[data-reveal].fig.in{opacity:1;transform:none}
.no-js [data-reveal="clip"] > img{clip-path:none}

/* Scrollytelling: Visual bleibt stehen, Schritte scrollen vorbei */
.story{position:relative}
.story-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap)}
.story-visual{grid-column:7 / span 6;grid-row:1}
.story-steps{grid-column:1 / span 5;grid-row:1}
.story-sticky{position:sticky;top:calc(var(--header-h) + var(--s6));height:calc(100svh - var(--header-h) - var(--s8));min-height:440px;display:flex;align-items:center}
.story-sticky > *{width:100%}
.story-step{min-height:72svh;display:flex;flex-direction:column;justify-content:center;padding-block:var(--s7);opacity:.28;transition:opacity .6s var(--ease)}
.story-step:first-child{min-height:56svh}
.story-step.is-active{opacity:1}
.story-step .n{font:400 var(--fs-mono)/1 var(--mono);letter-spacing:.08em;color:var(--blue);display:flex;align-items:center;gap:var(--s3)}
.story-step .n::after{content:"";height:1px;width:48px;background:currentColor;opacity:.4}
.story-step h3{margin-top:var(--s4);font-size:clamp(1.5rem,2.4vw,2.1rem);line-height:1.12;letter-spacing:-.025em;font-weight:500}
.story-step p{margin-top:var(--s4);color:var(--ink-2);max-width:46ch}
.story-step p strong{color:var(--ink);font-weight:500}
.story-dots{display:flex;gap:6px;margin-top:var(--s5)}
.story-dots i{width:22px;height:3px;border-radius:2px;background:var(--rule);transition:background .4s}
.story[data-active="1"] .story-dots i:nth-child(-n+1),.story[data-active="2"] .story-dots i:nth-child(-n+2),
.story[data-active="3"] .story-dots i:nth-child(-n+3),.story[data-active="4"] .story-dots i:nth-child(-n+4){background:var(--blue)}

/* Schichtenstapel (Strategisch): baut sich mit jedem Schritt auf */
.stack{background:var(--paper-2);border:1px solid rgba(11,12,16,.14);border-radius:var(--radius-card);padding:var(--s5);display:grid;gap:var(--s3);box-shadow:0 30px 60px -40px rgba(11,12,16,.35)}
.stack-head{display:flex;justify-content:space-between;font:400 var(--fs-mono)/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);padding-bottom:var(--s3);border-bottom:1px solid var(--rule)}
.lyr{border-radius:10px;border:1px solid var(--rule);background:var(--paper);overflow:hidden;opacity:.35;transform:translateY(10px);transition:opacity .6s var(--ease),transform .7s var(--ease),border-color .5s,background .5s}
.lyr-h{display:flex;align-items:center;gap:var(--s3);padding:14px 16px;font-weight:500;letter-spacing:-.01em}
.lyr-h .k{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font:500 .75rem/1 var(--mono);background:var(--rule-2);color:var(--ink-2);transition:background .5s,color .5s;flex:none}
.lyr-b{display:grid;grid-template-rows:0fr;transition:grid-template-rows .7s var(--ease)}
.lyr-b > div{min-height:0;overflow:hidden}
.lyr-b .in{padding:0 16px 16px}
.lyr.on{opacity:1;transform:none}
.lyr.cur{border-color:var(--blue);background:#fff}
.lyr.cur .lyr-b{grid-template-rows:1fr}
.lyr.on .lyr-h .k{background:var(--blue);color:var(--blue-ink)}
.lyr.cur.sig{border-color:var(--signal)}
.lyr.cur.sig .lyr-h .k,.lyr.on.sig .lyr-h .k{background:var(--signal);color:var(--ink)}
.tags{display:flex;flex-wrap:wrap;gap:6px}
.tags span{border:1px solid var(--rule);border-radius:999px;padding:6px 10px;font-size:.85rem;background:var(--paper-2)}
.tags span.sig{border-color:var(--signal);color:#a8340c;background:var(--signal-soft)}
.cols2{display:grid;grid-template-columns:1fr 1fr;gap:var(--s4)}
.cols2 b{display:block;font:400 var(--fs-mono)/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin-bottom:var(--s2)}
.cols2 ul{list-style:none;display:grid;gap:4px;font-size:.88rem;color:var(--ink-2)}
.mini-cross{display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:6px;text-align:center;font-size:.8rem}
.mini-cross span{background:var(--blue-soft);border-radius:6px;padding:10px 4px}
.mini-cross .c{background:var(--blue);color:var(--blue-ink);font-weight:500}
.mini-cross .e1{grid-column:2}.mini-cross .e5{grid-column:2}

/* Konfliktlandschaft: Matrix erklärt sich in Stufen */
.cmap-stage .cmap .p,.cmap-stage .cmap .trail,.cmap-stage .cmap .zone-warn,.cmap-stage .cmap .zone-crit,.cmap-stage .cmap .iso,.cmap-stage .cmap .ax-x,.cmap-stage .cmap .ax-y{transition:opacity .7s var(--ease)}
.story[data-active="1"] .cmap-stage .cmap :is(.p,.trail,.zone-warn,.zone-crit,.iso,.ax-y),
.story[data-active="2"] .cmap-stage .cmap :is(.p,.trail,.zone-warn,.zone-crit,.iso),
.story[data-active="3"] .cmap-stage .cmap :is(.p,.trail){opacity:0}
.story[data-active="1"] .cmap-stage .cmap .ax-x,.story[data-active="2"] .cmap-stage .cmap .ax-y{fill:var(--blue)}
.cmap-stage .fig-cap .legend{transition:opacity .6s}
.story[data-active="1"] .cmap-stage .fig-cap .legend,.story[data-active="2"] .cmap-stage .fig-cap .legend{opacity:.25}

@media (max-width:900px){
  .story-grid{display:block}
  .story-visual{position:sticky;top:var(--header-h);z-index:2;background:var(--paper);padding-block:var(--s3);margin-inline:calc(var(--gutter) * -1);padding-inline:var(--gutter)}
  .story-sticky{position:static;height:auto;min-height:0;display:block}
  .story-step{min-height:60svh;opacity:.35}
  .lyr-b .in{font-size:.9rem}
  .stack{padding:var(--s4);gap:var(--s2)}
  .lyr-h{padding:10px 12px}
  .cmap-stage .cmap{max-height:46svh}
}
@media (prefers-reduced-motion:reduce){.story-step{opacity:1}.lyr{opacity:1;transform:none}}
.story-step:first-child{justify-content:flex-start;padding-top:var(--s5)}
.story-step:last-child{min-height:80svh}
.story .h3{font-size:clamp(1.5rem,2.4vw,2.1rem);line-height:1.12;letter-spacing:-.025em;font-weight:500;margin-top:var(--s4)}
.story-step .btn-row{margin-top:var(--s6)}
.cmap-stage{background:var(--paper-2)}
.cmap-stage .fig-head .story-dots{margin-top:0}
.story-step{min-height:62svh}
.story-step:last-child{min-height:70svh}
@media (max-width:900px){.story-step{min-height:44svh}.story-step:last-child{min-height:50svh}}
@media (max-width:900px){
  .cmap-stage{padding:var(--s2);box-shadow:0 20px 40px -30px rgba(11,12,16,.4)}
  .cmap-stage .fig-head,.cmap-stage .fig-cap{display:none}
  .cmap-stage .cmap{max-height:36svh;width:auto;margin-inline:auto;display:block}
  .story-visual{box-shadow:0 12px 20px -18px rgba(11,12,16,.35)}
  .stack .lyr:not(.cur) .lyr-h{padding-block:8px}
}
@media (max-width:900px){.story-visual{top:0}}

/* Kontakt-Abschluss: der Satz wird zu zwei Wegen */
.cta-v2{display:flex;flex-direction:column;align-items:center;text-align:center}
.cta-v2 .eyebrow{justify-content:center}
.cta-v2 .h2{margin-top:var(--s5);max-width:20ch}
.cta-ways{margin-top:var(--s7);display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:var(--s5);width:min(100%,880px)}
.way{display:grid;grid-template-columns:48px 1fr;grid-template-rows:auto auto;column-gap:var(--s4);row-gap:6px;align-items:center;text-align:left;
  padding:var(--s5);border-radius:var(--radius-card);border:1px solid rgba(233,231,225,.28);background:rgba(233,231,225,.06);color:var(--blue-ink);text-decoration:none;
  transition:background .35s var(--ease),color .35s var(--ease),border-color .35s,transform .5s var(--ease)}
.way .ic{grid-row:span 2;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:rgba(233,231,225,.12);transition:background .35s,color .35s}
.way .ic svg{width:22px;height:22px}
.way .t{font-size:clamp(1.1rem,1.6vw,1.35rem);font-weight:500;letter-spacing:-.015em;line-height:1.2}
.way .v{display:flex;align-items:center;gap:6px;font-size:.95rem;opacity:.8}
.way .v .arr{width:14px;height:14px;transition:transform .45s var(--ease)}
.way:hover{background:var(--paper);color:var(--blue);border-color:var(--paper);transform:translateY(-3px)}
.way:hover .ic{background:var(--blue);color:var(--blue-ink)}
.way:hover .v .arr{transform:translateX(4px)}
.cta-ways .or{font:400 var(--fs-mono)/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;opacity:.7}
.cta-mail{margin-top:var(--s6);font-size:.95rem;opacity:.75}
.cta-mail a{color:inherit;text-underline-offset:.25em}
@media (max-width:760px){
  .cta-ways{grid-template-columns:1fr;gap:var(--s3)}

}

/* ==========================================================================
   v8 · Whitepaper-Landingpage (/whitepaper)
   ========================================================================== */
.wp-get{padding-top:0}
.wp-card{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(28px,5vw,80px);align-items:center;
  background:var(--paper-2);border:1px solid var(--rule);border-radius:var(--radius-card);padding:clamp(24px,4.5vw,64px);position:relative;overflow:hidden}
.wp-card::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.55;
  background-image:linear-gradient(var(--rule-2) 1px,transparent 1px),linear-gradient(90deg,var(--rule-2) 1px,transparent 1px);background-size:48px 48px;
  -webkit-mask-image:linear-gradient(90deg,#000 0,#000 30%,transparent 55%);mask-image:linear-gradient(90deg,#000 0,#000 30%,transparent 55%)}
.wp-cover{position:relative;perspective:1400px}
.wp-cover img{display:block;width:min(100%,380px);margin-inline:auto;height:auto;border-radius:6px;
  box-shadow:0 1px 0 var(--rule),0 30px 60px -28px rgba(13,19,85,.45),0 12px 24px -16px rgba(11,12,16,.3);
  transform:rotateY(-14deg) rotateX(4deg) rotateZ(-1deg);transform-origin:60% 50%;transition:transform 1s var(--ease)}
.wp-card:hover .wp-cover img{transform:rotateY(-4deg) rotateX(1deg) rotateZ(0)}
.wp-meta{list-style:none;margin:var(--s5) 0 0;padding:0;display:flex;justify-content:center;gap:var(--s4);flex-wrap:wrap;color:var(--ink-3);font-size:var(--fs-mono);text-transform:uppercase;letter-spacing:.05em}
.wp-meta b{color:var(--ink);font-weight:500}
.wp-form{position:relative}
.wp-form .h3{margin-top:var(--s3);max-width:22ch}
.wp-form > .muted{margin-top:var(--s3)}
.wp-form .form{margin-top:var(--s5)}
.wp-form .row2{display:grid;grid-template-columns:1fr 1fr;gap:var(--s4)}

.wp-steps{list-style:none;margin:var(--s7) 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--ink)}
.wp-steps li{padding:var(--s5) var(--s4) var(--s4) 0;display:grid;align-content:start;gap:var(--s2)}
.wp-steps li + li{border-left:1px solid var(--rule);padding-left:var(--s4)}
.wp-steps .n{color:var(--blue)}
.wp-steps b{font:500 clamp(2rem,3.6vw,3.2rem)/1 var(--sans);letter-spacing:-.05em;color:var(--ink);margin-top:var(--s3);font-variant-numeric:tabular-nums}
.wp-steps h3{font-size:1.15rem;font-weight:500;letter-spacing:-.01em;margin-top:var(--s2)}
.wp-steps p{color:var(--ink-2);font-size:.98rem}

/* KSPI-Schnellcheck */
.kspi .ks-grid{margin-top:var(--s7);display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(24px,4vw,64px);border-radius:var(--radius-card);border-color:var(--rule)}
.ks-sliders{display:grid;gap:var(--s3)}
.ks-s{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr) 24px;align-items:center;gap:var(--s3);font-size:.95rem}
.ks-s .t{color:var(--ink)}
.ks-s output{text-align:right;color:var(--blue);font-weight:500}
.ks-s input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:6px;border-radius:3px;outline-offset:6px;cursor:pointer;
  background:linear-gradient(90deg,var(--blue) 0 var(--p,50%),var(--rule-2) var(--p,50%) 100%)}
.ks-s input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:20px;border-radius:50%;background:var(--white);border:2px solid var(--blue);box-shadow:0 2px 6px rgba(13,19,85,.25);transition:transform .2s}
.ks-s input[type=range]::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:var(--white);border:2px solid var(--blue)}
.ks-s input[type=range]:active::-webkit-slider-thumb{transform:scale(1.15)}
.ks-w{border:0;margin:var(--s6) 0 0;padding:var(--s5) 0 0;border-top:1px solid var(--rule)}
.ks-w legend{float:left;width:100%;margin-bottom:var(--s3);font-size:var(--fs-mono);text-transform:uppercase;letter-spacing:.05em;color:var(--ink-3)}
.seg{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;clear:both}
.seg label{position:relative}
.seg input{position:absolute;opacity:0;inset:0;cursor:pointer}
.seg span{display:grid;place-items:center;height:44px;border-radius:999px;border:1px solid var(--rule);font:500 1rem/1 var(--mono);color:var(--ink-2);background:var(--white);transition:background .25s,color .25s,border-color .25s}
.seg input:checked + span{background:var(--blue);border-color:var(--blue);color:var(--blue-ink)}
.seg input:focus-visible + span{outline:2px solid var(--blue);outline-offset:2px}
.ks-w .small{margin-top:var(--s2)}
.ks-out{display:grid;align-content:start;gap:var(--s4)}
.ks-kpis{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ink);border-bottom:1px solid var(--rule)}
.ks-kpis div{padding:var(--s3) 0}
.ks-kpis div + div{border-left:1px solid var(--rule);padding-left:var(--s4)}
.ks-kpis .mono{display:block;color:var(--ink-3);font-size:var(--fs-mono);text-transform:uppercase;letter-spacing:.05em}
.ks-kpis b{display:block;margin-top:6px;font:500 clamp(1.8rem,3vw,2.6rem)/1 var(--sans);letter-spacing:-.04em;color:var(--ink);font-variant-numeric:tabular-nums}
.ks-map svg{width:100%;height:auto;display:block}
.ks-map .z-g{fill:#dbe9dc}.ks-map .z-y{fill:#f7e8b6}.ks-map .z-o{fill:var(--signal-soft)}
.ks-map text{font:400 10px var(--mono);fill:var(--ink-3);text-anchor:middle}
.ks-map .cx{fill:var(--blue);font-weight:500}.ks-map .ty{text-anchor:end}.ks-map .ax{letter-spacing:.1em}
.ks-map #ks-pt{transition:transform .6s var(--ease)}
.ks-map .pt{fill:var(--signal)}.ks-map .halo{fill:var(--signal);opacity:.22;animation:ksp 2.4s var(--ease) infinite;transform-box:fill-box;transform-origin:center}
@keyframes ksp{0%,100%{transform:scale(1)}50%{transform:scale(1.35);opacity:.1}}
.ks-say{font-size:.98rem;color:var(--ink-2)}
.ks-say b{color:var(--ink);font-weight:500}
.ks-flag{display:flex;gap:10px;align-items:center;font-size:.92rem;color:#a8340c;border:1px solid var(--signal);background:#fff5f1;border-radius:10px;padding:10px 14px}
.btn-row.center{justify-content:center;margin-top:var(--s7)}
.wp-author img{width:100%;height:auto;display:block;border-radius:var(--radius-card)}

@media (max-width:980px){
  .wp-card,.kspi .ks-grid{grid-template-columns:1fr}
  .wp-cover img{width:min(70%,300px)}
  .wp-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .wp-steps li:nth-child(3){border-left:0;padding-left:0}
  .wp-steps li:nth-child(n+3){border-top:1px solid var(--rule)}
}
@media (max-width:560px){
  .wp-form .row2{grid-template-columns:1fr}
  .wp-steps{grid-template-columns:1fr}
  .wp-steps li + li{border-left:0;padding-left:0;border-top:1px solid var(--rule)}
  .ks-s{grid-template-columns:1fr 24px}
  .ks-s input{grid-column:1 / -1;grid-row:2}
}
@media (prefers-reduced-motion:reduce){.ks-map .halo{animation:none}.wp-cover img{transform:none}}

/* Whitepaper auf Startseite & Teaser */
.pubcol{grid-column:1 / span 6;display:grid;gap:var(--s6);align-content:start}
.pubcol .book{grid-column:auto}
.book--wp{text-decoration:none;color:inherit}
.book--wp .cover img{border-radius:4px;box-shadow:0 18px 30px -22px rgba(13,19,85,.5);transition:transform .6s var(--ease)}
.book--wp:hover .cover img{transform:translateY(-4px) rotate(-1deg)}
.wp-teaser-sec{padding-top:0}
.wp-teaser{display:grid;grid-template-columns:110px minmax(0,1fr) auto;gap:clamp(20px,3vw,40px);align-items:center;text-decoration:none;color:inherit;
  border:1px solid var(--rule);border-radius:var(--radius-card);background:var(--paper-2);padding:clamp(18px,2.6vw,32px);transition:border-color .3s,transform .5s var(--ease)}
.wp-teaser img{width:100%;height:auto;border-radius:4px;box-shadow:0 14px 24px -18px rgba(13,19,85,.55);transform:rotate(-2deg);transition:transform .6s var(--ease)}
.wp-teaser .h3{margin-top:var(--s2);max-width:30ch}
.wp-teaser .muted{margin-top:var(--s2)}
.wp-teaser:hover{border-color:var(--blue);transform:translateY(-2px)}
.wp-teaser:hover img{transform:rotate(0)}
@media (max-width:980px){.pubcol{grid-column:1 / -1}}
@media (max-width:700px){.wp-teaser{grid-template-columns:80px minmax(0,1fr)}.wp-teaser .btn{grid-column:1 / -1;justify-self:start}}

/* v9 · Feedback Okt 2026 */
/* Schichtenstapel: Risikoarten als gleich breite Felder, Basisstrukturen als echtes Kreuz */
.tags.tri{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.tags.tri span{display:grid;place-items:center;text-align:center;border-radius:6px;padding:10px 6px;line-height:1.25;min-height:52px}
.mini-cross{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(3,auto)}
.mini-cross span{display:grid;place-items:center;min-height:40px}
.mini-cross .x-t{grid-area:1 / 2}.mini-cross .x-l{grid-area:2 / 1}.mini-cross .c{grid-area:2 / 2}.mini-cross .x-r{grid-area:2 / 3}.mini-cross .x-b{grid-area:3 / 2}
@media (max-width:560px){.tags.tri span{font-size:.75rem;min-height:44px}}
.tel-hint{margin-top:-8px}
/* Überschriften: nur an gesetzten Trennstellen (&shy;) trennen – keine „Konfliktma-nagement“-Brüche */
h1,h2,.h1,.h2{hyphens:manual;-webkit-hyphens:manual}
.h1-gov{max-width:none}
.h1-gov .br{display:block}
@media (max-width:760px){.h1-gov{font-size:clamp(2rem,8vw,3rem)}}

/* Werkzeug 03 · B2X-Risikobewertung */
.b2x{padding-top:0}
.b2x-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(20px,3vw,40px);align-items:start}
.b2x-in{display:grid;gap:var(--s5)}
.b2x-step{border-radius:var(--radius-card);border-color:var(--rule);margin:0;min-width:0;display:grid;gap:var(--s4)}
.b2x-step legend{float:left;width:100%;display:flex;align-items:center;gap:var(--s3);font-size:1.2rem;font-weight:500;letter-spacing:-.015em;color:var(--ink);margin-bottom:var(--s1)}
.b2x-step legend .n{color:var(--blue);font-size:var(--fs-mono)}
.b2x-step legend + *{clear:both}
.b2x-step .row2{display:grid;grid-template-columns:1fr 1fr;gap:var(--s4)}
.b2x-step select{appearance:none;-webkit-appearance:none;background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10'%3E%3Cpath d='M1 3l4 4 4-4' fill='none' stroke='%230b0c10' stroke-width='1.4'/%3E%3C/svg%3E") no-repeat right 2px center/12px;padding-right:20px;font-size:1rem}
.b2x-lab{font-size:var(--fs-mono);text-transform:uppercase;letter-spacing:.05em;color:var(--ink-3);margin-bottom:-6px}
.sph{display:flex;flex-wrap:wrap;gap:8px}
.sph-c{position:relative}
.sph-c input{position:absolute;opacity:0;inset:0;cursor:pointer}
.sph-c span{display:inline-flex;gap:6px;align-items:center;border:1px solid var(--rule);border-radius:999px;padding:9px 14px;background:var(--white);font-size:.92rem;transition:background .25s,border-color .25s,color .25s}
.sph-c b{font:500 .8rem/1 var(--mono)}
.sph-c input:checked + span{background:var(--blue);border-color:var(--blue);color:var(--blue-ink)}
.sph-c input:focus-visible + span{outline:2px solid var(--blue);outline-offset:2px}
.dims{display:grid}
.dim{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) 84px;gap:var(--s4);align-items:center;padding:var(--s3) 0;border-top:1px solid var(--rule-2)}
.dim-t b{display:block;font-weight:500;color:var(--ink);font-size:.95rem}
.dim-t span{display:block;font-size:.82rem;color:var(--ink-3);line-height:1.35;margin-top:2px}
.dim-b{display:grid;grid-template-columns:1fr 18px;gap:10px;align-items:center}
.dim-b output{color:var(--blue);font-weight:500;text-align:right}
.dim.is-flag .dim-b output{color:#a8340c}
.dim-b input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:6px;border-radius:3px;cursor:pointer;background:linear-gradient(90deg,var(--blue) 0 var(--p,50%),var(--rule-2) var(--p,50%) 100%)}
.dim-b input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:20px;border-radius:50%;background:var(--white);border:2px solid var(--blue);box-shadow:0 2px 6px rgba(13,19,85,.25)}
.dim-b input[type=range]::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:var(--white);border:2px solid var(--blue)}
.dim.is-flag .dim-b input[type=range]{background:linear-gradient(90deg,var(--signal) 0 var(--p,50%),var(--rule-2) var(--p,50%) 100%)}
.dim-g{display:flex;align-items:center;gap:6px}
.dim-g input{width:100%;border:0;border-bottom:1px solid var(--ink);background:transparent;padding:6px 0;font:500 1rem/1 var(--mono);text-align:right}
.dim-g input:focus{outline:0;border-color:var(--blue)}
.dims-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;border-top:1px solid var(--rule-2);padding-top:var(--s3)}
.dims-foot .mono{font-size:var(--fs-mono);text-transform:uppercase;letter-spacing:.05em;color:var(--ink-3)}
.dims-foot .mono.warn{color:#a8340c}
.seg--txt{grid-template-columns:repeat(4,1fr)}
.b2x-out{position:sticky;top:96px}
.b2x-dash{border-radius:var(--radius-card);border-color:var(--rule);display:grid;gap:var(--s4)}
.b2x-head{display:flex;justify-content:space-between;gap:12px;font-size:var(--fs-mono);text-transform:uppercase;letter-spacing:.05em}
.b2x-head .mono:first-child{color:var(--blue)}
.b2x-head #o-name{text-transform:none;letter-spacing:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:60%}
.b2x-flags{display:flex;gap:8px;flex-wrap:wrap}
.flag{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--rule);border-radius:999px;padding:7px 12px;font:500 .75rem/1 var(--mono);text-transform:uppercase;letter-spacing:.04em;background:var(--white)}
.flag.on{border-color:var(--signal);color:#a8340c;background:#fff5f1}
.flag.on::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--signal)}
.flag--q.low{border-color:var(--z-warn);color:#7a5a06;background:#fbf3dc}
.b2x-notes{list-style:none;margin:0;padding:0;display:grid;gap:6px;font-size:.9rem;color:var(--ink-2)}
.b2x-notes li{padding-left:14px;position:relative}
.b2x-notes li::before{content:"";position:absolute;left:0;top:.6em;width:6px;height:1px;background:var(--ink-3)}
.b2x-notes .sig{color:#a8340c}
@media (max-width:980px){.b2x-grid{grid-template-columns:1fr}.b2x-out{position:static}}
@media (max-width:620px){.dim{grid-template-columns:1fr 72px}.dim-t{grid-column:1 / -1}.b2x-step .row2{grid-template-columns:1fr}}
@media print{
  .hdr,.site-header,header,footer,.cta,.page-hero,.b2x ~ .section,.progress,.b2x-dash .btn-row{display:none!important}
  .b2x-grid{grid-template-columns:1fr 1fr}.b2x-out{position:static}
  .fig{break-inside:avoid}
}
.tool--soon .viz{opacity:.8}
.tools-strip .soon{font-size:.65rem;text-transform:uppercase;letter-spacing:.06em;border:1px solid var(--rule);border-radius:999px;padding:3px 7px;margin-left:4px;color:var(--ink-3)}
.hero--center .btn-row{flex-wrap:wrap;justify-content:center}
h3,.h3{hyphens:auto;-webkit-hyphens:auto}
.h1-gov{font-size:clamp(2.1rem,5.4vw,4.6rem)}
@media (max-width:760px){.h1-gov{font-size:clamp(1.9rem,8.4vw,2.8rem)}}
.seg{grid-template-columns:repeat(5,minmax(0,1fr))}
.seg--txt{grid-template-columns:repeat(4,minmax(0,1fr))}
.tools-h1{grid-column:1 / span 9}
@media (max-width:760px){.tools-h1{grid-column:1 / -1}}
.b2x-step legend{min-width:0;hyphens:auto;-webkit-hyphens:auto;overflow-wrap:anywhere}
@media (max-width:560px){.b2x-step legend{font-size:1.05rem}.b2x-step{padding:var(--s4)}}
.lyr-b .in{hyphens:auto;-webkit-hyphens:auto}
.lyr-b .cols2 > *{min-width:0}
@media (max-width:560px){.lyr-b .cols2{grid-template-columns:1fr;gap:10px}}
.page-hero .h1.h1-gov{max-width:none}
/* Schicht 3 (Konflikte als Unternehmensrisiken) in Blau statt Signal-Orange – Feedback Okt 2026 */
.tags span.hi{border-color:var(--blue);color:var(--blue);background:var(--blue-soft)}

/* ==========================================================================
   v10 · Landingpage „Führung im Dialog“ (/fuehrung) – Coaching zur Unternehmensführung
   ========================================================================== */
.fd-hero{padding-bottom:0}
.fd-hero .sub .tagline{justify-content:center}
.fd-fig{margin-top:clamp(40px,6vw,80px);padding-bottom:clamp(48px,6vw,96px)}
.fd-net{width:100%;height:auto;display:block;overflow:visible}
.fd-fig figcaption{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:var(--s5);padding-top:var(--s4);border-top:1px solid var(--night-rule);
  font-size:var(--fs-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--parch-2)}
.fd-fig figcaption span:first-child{color:var(--parch)}
@media (prefers-reduced-motion:reduce){.fd-flow{display:none}}

.fd-def .wrap{display:grid;gap:var(--s5);justify-items:center;text-align:center}
.fd-def .idx{color:var(--ink-3)}
.fd-quote{margin:0;max-width:24ch;font:500 clamp(1.9rem,4.2vw,3.6rem)/1.08 var(--sans);letter-spacing:-.035em;color:var(--ink)}

.fd-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap);margin-top:var(--s7)}
.fd-card{display:flex;flex-direction:column;gap:var(--s3);padding:clamp(22px,2.6vw,36px);background:var(--paper-2);border:1px solid var(--rule);border-radius:var(--radius-card);
  transition:transform .6s var(--ease),border-color .3s}
.fd-card:hover{transform:translateY(-4px);border-color:var(--blue)}
.fd-card .n{color:var(--blue);font-size:var(--fs-mono);text-transform:uppercase;letter-spacing:.08em}
.fd-card h3{font-size:clamp(1.4rem,2.2vw,1.8rem);font-weight:500;letter-spacing:-.025em;color:var(--ink)}
.fd-card p{color:var(--ink-2)}
.fd-focus{margin-top:auto;padding-top:var(--s4);border-top:1px solid var(--rule);font-size:var(--fs-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3)!important}

.fd-skills{list-style:none;margin:var(--s5) 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.fd-skills li{display:flex;align-items:center;gap:12px;border:1px solid var(--night-rule);border-radius:14px;padding:14px 16px;color:var(--parch);font-size:1rem;background:rgba(244,239,212,.03)}
.fd-skills .mono{color:var(--night-blue);font-size:.7rem}

.fd-steps{list-style:none;margin:var(--s7) 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--gap);position:relative}
.fd-steps::before{content:"";position:absolute;left:0;right:0;top:19px;height:1px;background:var(--rule)}
.fd-steps li{position:relative;display:grid;align-content:start;gap:var(--s2)}
.fd-steps .k{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--blue);color:var(--blue-ink);font-size:.75rem;position:relative;box-shadow:0 0 0 8px var(--paper)}
.fd-steps .t{margin-top:var(--s3);font-size:var(--fs-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--blue)}
.fd-steps h3{font-size:1.2rem;font-weight:500;letter-spacing:-.015em;color:var(--ink)}
.fd-steps p{color:var(--ink-2);font-size:.98rem}

.fd-sit{display:grid;border-top:1px solid var(--ink)}
.fd-sit a{display:flex;justify-content:space-between;align-items:center;gap:var(--s4);padding:var(--s5) 0;border-bottom:1px solid var(--rule);text-decoration:none;color:var(--ink);
  font-size:clamp(1.15rem,1.8vw,1.5rem);letter-spacing:-.015em;transition:color .3s,padding .5s var(--ease)}
.fd-sit a .arr{width:20px;height:20px;flex:none;transition:transform .45s var(--ease)}
.fd-sit a:hover{color:var(--blue);padding-left:10px}
.fd-sit a:hover .arr{transform:translateX(6px)}

.fd-coach{align-items:center}
.fd-coach .photo img{width:100%;height:100%;object-fit:cover}

.fd-pod{display:grid;grid-template-columns:180px minmax(0,1fr);gap:clamp(20px,3vw,40px);align-items:center;padding:clamp(18px,2.6vw,32px);
  background:var(--night);color:var(--parch);border-radius:var(--radius-card)}
.fd-pod img{width:100%;height:auto;border-radius:10px;display:block}
.fd-pod .eyebrow{color:var(--parch-2)}
.fd-pod .h3{margin-top:var(--s2);color:var(--parch);font:300 clamp(1.5rem,2.6vw,2.2rem)/1.1 var(--serif);letter-spacing:-.02em}
.fd-pod .muted{margin-top:var(--s3);color:color-mix(in srgb,var(--parch) 72%,transparent)}

.fd-cta .split{align-items:center}
.fd-cta .h2{margin-top:var(--s4)}
.fd-cta .lead{margin-top:var(--s4)}
.fd-cta .btn-row{margin-top:var(--s6)}
.fd-agenda{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.fd-agenda li{display:flex;gap:16px;align-items:center;padding:20px 22px;border:1px solid rgba(233,231,225,.28);border-radius:var(--radius-card);background:rgba(233,231,225,.06);font-size:1.1rem}
.fd-agenda .mono{font-size:.75rem;opacity:.75}

@media (max-width:980px){
  .fd-three{grid-template-columns:1fr}
  .fd-steps{grid-template-columns:1fr 1fr;row-gap:var(--s7)}
  .fd-steps::before{display:none}
}
@media (max-width:620px){
  .fd-steps,.fd-skills{grid-template-columns:1fr}
  .fd-pod{grid-template-columns:1fr}
  .fd-pod img{max-width:220px}
  .fd-net text{font-size:20px}
}

/* Startseite: vierte Leistung */
.svc--4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:1100px){.svc--4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:620px){.svc--4{grid-template-columns:1fr}}
#dk-h{font-size:clamp(2rem,3.6vw,3.3rem);line-height:1.08}
.fd-pod .eyebrow b{color:var(--parch)}
.split > .l > .idx + .h2,.split > .r > .idx + .h2{margin-top:var(--s4)}
.prose .fd-skills li{padding-left:16px}
.prose .fd-skills li::before{display:none}

/* v11 · Coaching & Qualifizierung (Hub-Karte auf /qualifizierung) */
.q-coach{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:clamp(24px,4vw,64px);align-items:center;text-decoration:none;
  background:var(--night);color:var(--parch);border-radius:var(--radius-card);padding:clamp(28px,4.5vw,64px);transition:transform .6s var(--ease)}
.q-coach:hover{transform:translateY(-4px)}
.q-coach .eyebrow{color:var(--parch-2)}.q-coach .eyebrow b{color:var(--parch)}
.q-coach .h2{margin-top:var(--s4);color:var(--parch)}
.q-coach p:not(.eyebrow){margin-top:var(--s4);color:color-mix(in srgb,var(--parch) 78%,transparent);max-width:52ch}
.q-coach .btn{margin-top:var(--s6)}
.q-coach-s{list-style:none;margin:0;padding:0;display:grid;gap:10px;font-size:.85rem;text-transform:uppercase;letter-spacing:.08em}
.q-coach-s li{display:flex;gap:14px;align-items:center;border:1px solid var(--night-rule);border-radius:14px;padding:16px 18px;color:var(--parch)}
.q-coach-s span{color:var(--night-blue)}
@media (max-width:860px){.q-coach{grid-template-columns:1fr}}
.pod--aux{display:grid;grid-template-columns:72px minmax(0,1fr);gap:16px;align-items:center}
.pod--aux img{width:72px;height:72px;border-radius:8px;object-fit:cover}
.pod--aux h4{margin-top:4px}

/* ==========================================================================
   v12 · Werkzeug 04 – Reifegrad-Check KIM (/werkzeuge/reifegrad, /reifegrad-check)
   ========================================================================== */
:root{--m-r:#e7b1a8;--m-o:#f2c9a3;--m-y:#f3e2a2;--m-g:#b9d8bf;--m-b:#aebdf0}
.c-r{background:var(--m-r);fill:var(--m-r)}.c-o{background:var(--m-o);fill:var(--m-o)}.c-y{background:var(--m-y);fill:var(--m-y)}
.c-g{background:var(--m-g);fill:var(--m-g)}.c-b{background:var(--m-b);fill:var(--m-b)}.c-n{background:transparent}
.rg{padding-top:0}
.rg-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:clamp(20px,3vw,40px);align-items:start}
.rg-setup{border-radius:var(--radius-card);border-color:var(--rule);display:grid;grid-template-columns:1fr 1fr;gap:var(--s4)}
.rg-scale{grid-column:1 / -1;border-top:1px solid var(--rule-2);padding-top:var(--s3)}
.rg-scale summary{cursor:pointer;font-size:var(--fs-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--blue)}
.rg-scale dl{margin:var(--s3) 0;display:grid;gap:6px}
.rg-scale dl div{display:grid;grid-template-columns:28px 1fr;gap:8px;font-size:.92rem}
.rg-scale dt{font:500 .85rem/1.6 var(--mono);color:var(--blue)}
.rg-scale dd{margin:0;color:var(--ink-2)}.rg-scale b{color:var(--ink);font-weight:500}
.rg-tabs{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:6px;margin:var(--s5) 0 var(--s4);scroll-margin-top:96px}
.rg-tabs button{position:relative;display:grid;place-items:center;height:48px;border:1px solid var(--rule);border-radius:12px;background:var(--paper-2);cursor:pointer;
  font:500 .95rem/1 var(--mono);color:var(--ink-2);overflow:hidden;transition:border-color .25s,background .25s,color .25s}
.rg-tabs button i{position:absolute;left:0;bottom:0;height:3px;width:var(--p,0%);background:var(--blue);transition:width .4s var(--ease)}
.rg-tabs button.is-done{background:var(--blue-soft);color:var(--blue)}
.rg-tabs button.is-cur{border-color:var(--blue);background:var(--blue);color:var(--blue-ink)}
.rg-tabs button.is-cur i{background:var(--blue-ink)}
.rg-tabs .rg-tab-res{font-size:1.1rem}.rg-tabs button:disabled{opacity:.4;cursor:not-allowed}
.rg-stage-h{display:grid;gap:var(--s2);margin-bottom:var(--s4)}
.rg-stage-h .mono{font-size:var(--fs-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--blue)}
.rg-stage-h p{color:var(--ink-2);max-width:62ch}
.rg-items{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.rg-item{border:1px solid var(--rule);border-radius:var(--radius-card);background:var(--paper-2);padding:clamp(16px,2vw,24px);display:grid;gap:var(--s3);transition:border-color .3s}
.rg-item.is-done{border-color:var(--blue-soft)}
.rg-item.is-low{border-color:var(--m-r)}
.rg-q{display:grid;grid-template-columns:30px 1fr;gap:10px}
.rg-q .mono{color:var(--blue);font-size:.8rem;padding-top:4px}
.rg-q p{color:var(--ink);font-size:1.02rem;line-height:1.45}
.rg-rate{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin-left:40px}
.rg-rate label{position:relative}
.rg-rate input{position:absolute;opacity:0;inset:0;cursor:pointer}
.rg-rate span{display:grid;place-items:center;gap:2px;min-height:54px;padding:6px 4px;border:1px solid var(--rule);border-radius:10px;background:var(--white);text-align:center;transition:background .2s,border-color .2s,color .2s}
.rg-rate b{font:500 1rem/1 var(--mono);color:var(--ink)}
.rg-rate small{font-size:.68rem;line-height:1.15;color:var(--ink-3)}
.rg-rate label:hover span{border-color:var(--blue)}
.rg-rate input:checked + span{background:var(--blue);border-color:var(--blue)}
.rg-rate input:checked + span b,.rg-rate input:checked + span small{color:var(--blue-ink)}
.rg-rate input:focus-visible + span{outline:2px solid var(--blue);outline-offset:2px}
.rg-ev{margin-left:40px}
.rg-ev summary{cursor:pointer;font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3)}
.rg-ev input{width:100%;margin-top:8px;border:0;border-bottom:1px solid var(--ink);background:transparent;padding:8px 0;font-size:.95rem}
.rg-ev input:focus{outline:0;border-color:var(--blue)}
.rg-ev .small{display:block;margin-top:6px}
.rg-nav{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:var(--s5)}
.rg-nav .mono{font-size:var(--fs-mono);color:var(--ink-3)}
.rg-side{position:sticky;top:96px}
.rg-live{border-radius:var(--radius-card);border-color:var(--rule);display:grid;gap:var(--s3)}
.rg-live-h{display:flex;justify-content:space-between;font-size:var(--fs-mono);text-transform:uppercase;letter-spacing:.06em}
.rg-live-h .mono:first-child{color:var(--blue)}
.rg-bars{display:grid;gap:7px}
.rg-bar{display:grid;grid-template-columns:16px 1fr 34px;gap:8px;align-items:center;font-size:.75rem}
.rg-bar i{position:relative;height:12px;border-radius:6px;background:var(--rule-2);overflow:hidden}
.rg-bar em{position:absolute;left:0;top:0;bottom:0;border-radius:6px;transition:width .5s var(--ease)}
.rg-bar u{position:absolute;top:-2px;bottom:-2px;width:1px;background:var(--ink)}
.rg-bar b{text-align:right;font-weight:500}
.rg-bar.is-cur .mono{color:var(--blue);font-weight:500}
.rg-legend{display:flex;flex-wrap:wrap;gap:6px 10px;font-size:.62rem;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-3)}
.rg-legend i{display:inline-block;width:9px;height:9px;border-radius:3px;margin-right:4px;vertical-align:-1px}
.rg-go{width:100%;justify-content:center}
.rg-go:disabled{opacity:.45;cursor:not-allowed}

.rg-result{background:var(--paper-2);border-top:1px solid var(--rule)}
.rs-kpis{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:var(--gap);margin-top:var(--s6)}
.rs-kpi{display:grid;gap:6px;align-content:start;padding:var(--s5);border:1px solid var(--rule);border-radius:var(--radius-card);background:var(--paper)}
.rs-kpi .mono{font-size:var(--fs-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3)}
.rs-kpi b{font:500 clamp(2rem,4vw,3.2rem)/1 var(--sans);letter-spacing:-.04em;color:var(--ink)}
.rs-kpi span:last-child{color:var(--ink-2);font-size:.95rem}
.rs-kpi--main{background:var(--blue);border-color:var(--blue)}
.rs-kpi--main .mono,.rs-kpi--main b,.rs-kpi--main span:last-child{color:var(--blue-ink)}
.rs-chart{margin-top:var(--s5);border-radius:var(--radius-card);border-color:var(--rule)}
.rs-chart svg{width:100%;height:auto;display:block;font-family:var(--mono)}
.rs-chart .gl{stroke:var(--rule-2)}.rs-chart .gate{stroke:var(--ink);stroke-dasharray:5 5}.rs-chart .cut{stroke:var(--blue);stroke-width:2}
.rs-chart text{font-size:11px;fill:var(--ink-3);text-anchor:middle}
.rs-chart .ty{text-anchor:end}.rs-chart .tv{fill:var(--ink);font-weight:500;font-size:12px}.rs-chart .tx{font-size:13px;fill:var(--ink)}
.rs-chart .tg.ok{fill:var(--blue);font-weight:500}.rs-chart .tg.no{fill:var(--ink-3)}
.rs-chart .tgate{text-anchor:end;fill:var(--ink)}
.rs-chart rect.off{opacity:.55}
.rs-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--gap);margin-top:var(--s6)}
.rs-grid .h3{margin-bottom:var(--s2)}
.rs-list{list-style:none;margin:var(--s4) 0 0;padding:0;display:grid;gap:8px}
.rs-list li{padding:12px 14px;border:1px solid var(--rule);border-radius:12px;background:var(--paper);font-size:.95rem;color:var(--ink)}
.rs-list li .mono{display:block;font-size:.7rem;color:var(--blue);margin-bottom:4px}
.rs-list li small{display:block;margin-top:4px;color:var(--ink-3);font-size:.8rem}
.rs-list .rs-gate{background:var(--blue-soft);border-color:var(--blue-soft)}
.rs-note{margin-top:var(--s6);max-width:80ch}
.rg-result .btn-row{margin-top:var(--s5)}
@media (max-width:1000px){.rg-grid{grid-template-columns:1fr}.rg-side{position:static;order:-1}.rs-kpis,.rs-grid{grid-template-columns:1fr}}
@media (max-width:620px){
  .rg-setup{grid-template-columns:1fr}
  .rg-tabs{grid-template-columns:repeat(9,minmax(0,1fr));gap:4px}.rg-tabs button{height:40px;font-size:.8rem}
  .rg-rate,.rg-ev{margin-left:0}
  .rg-rate small{display:none}.rg-rate span{min-height:44px}
}
@media print{
  .site-header,footer,.cta,.rg-hero,.rg,.progress,.rg-result .btn-row{display:none!important}
  .rg-result{display:block!important;background:#fff}
}
/* Reifegrad-Landingpage */
.rgl-story .story-step{min-height:50svh}
.rgl-story .story-step:first-child{min-height:44svh}
.rgl-stairs{border-radius:var(--radius-card);border-color:var(--rule);display:grid;gap:var(--s4)}
.rgl-bars{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:8px;align-items:end;height:clamp(220px,38svh,360px);border-bottom:1px solid var(--ink)}
.rgl-b{position:relative;height:var(--h);border-radius:8px 8px 0 0;background:var(--rule-2);transition:background .5s var(--ease),transform .6s var(--ease);transform-origin:bottom}
.rgl-b span{position:absolute;top:10px;left:0;right:0;text-align:center;font:500 .9rem/1 var(--mono);color:var(--ink-3)}
.rgl-b.on{background:var(--blue-soft)}.rgl-b.on span{color:var(--blue)}
.rgl-b.cur{background:var(--blue);transform:scaleY(1.03)}.rgl-b.cur span{color:var(--blue-ink)}
.rgl-persp{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;font-size:.66rem;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3);text-align:center}
.rgl-persp span{border-top:2px solid var(--rule);padding-top:8px}
.rgl-story[data-active="1"] .rgl-persp span:nth-child(1),.rgl-story[data-active="2"] .rgl-persp span:nth-child(1),
.rgl-story[data-active="3"] .rgl-persp span:nth-child(2),.rgl-story[data-active="4"] .rgl-persp span:nth-child(2),
.rgl-story[data-active="5"] .rgl-persp span:nth-child(3),.rgl-story[data-active="6"] .rgl-persp span:nth-child(3),
.rgl-story[data-active="7"] .rgl-persp span:nth-child(4),.rgl-story[data-active="8"] .rgl-persp span:nth-child(4){border-color:var(--blue);color:var(--blue)}
.rgl-example{margin-top:var(--s7);border-radius:var(--radius-card);border-color:var(--rule);display:grid;gap:var(--s4)}
.rgl-ex{position:relative;display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:10px;align-items:end;height:220px;border-bottom:1px solid var(--ink);margin-top:var(--s5)}
.rgl-ex div{position:relative;height:calc((var(--v) - 1) / 4 * 100%);border-radius:6px 6px 0 0}
.rgl-ex div b{position:absolute;top:-22px;left:0;right:0;text-align:center;font:500 .85rem/1 var(--mono);color:var(--ink)}
.rgl-ex div span{position:absolute;bottom:-24px;left:0;right:0;text-align:center;font:400 .8rem/1 var(--mono);color:var(--ink-3)}
.rgl-ex .is-gap{outline:2px solid var(--blue);outline-offset:3px}
.rgl-ex .is-off{opacity:.5}
.rgl-gate{position:absolute;left:0;right:0;bottom:62.5%;border-top:1px dashed var(--ink)}
.rgl-example .small{margin-top:var(--s4)}
.rgl-facts b{font-variant-numeric:tabular-nums}
@media (max-width:900px){.rgl-story .story-step{min-height:auto;padding-block:var(--s6)}}
.rg-tabs button:hover:not(.is-cur):not(:disabled){border-color:var(--blue)}.rg-tabs button:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
