  /* CASES: verstreute Kacheln mit Parallax (telescope-Stil) */
  .cz-intro{position:relative;overflow:hidden}
  .cz-intro>.wrap{position:relative;z-index:1}
  .cz-intro{position:relative}
  main>section.cz-intro>.cz-float{position:absolute;left:0;right:0;top:0;height:86vh;min-height:660px;pointer-events:none;z-index:0}
  .cf-t{position:absolute;pointer-events:auto;transform-origin:50% 50%;opacity:0;border-radius:6px;overflow:hidden;display:block;box-shadow:0 18px 40px rgba(0,0,0,.35);transition:box-shadow .3s ease;will-change:transform}
  .cf-t img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
  .cf-t span{position:absolute;left:10px;bottom:8px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#fff;text-shadow:0 1px 8px rgba(0,0,0,.6)}
  .cf-t span b{display:block;font-size:22px;font-weight:900;letter-spacing:-.02em}
  .cf-t:has(img) span b{display:none}
  .cf-a{background:linear-gradient(140deg,#1a1033,#4B2E9E)} .cf-b{background:#5B3CF6} .cf-c{background:#111;border:1px solid var(--line)}
  .cf-t:hover img{transform:scale(1.06)} .cf-t:hover{box-shadow:0 26px 60px rgba(91,60,246,.45)}
  @media(max-width:1100px){.cz-float{display:none}}
  /* Footer schlank: ohne Claim und Signet, Seiten links, Button Mitte, Social rechts */
  .lf-panel{min-height:0!important;display:grid;grid-template-columns:1fr auto 1fr;grid-template-areas:"l c r";align-items:start;gap:30px;padding:clamp(56px,6vw,80px) clamp(20px,4vw,70px)!important}
  .lf-panel>.lf-left{grid-area:l}.lf-panel>.lf-right{grid-area:r}.lf-panel>.lf-cta{grid-area:c;align-self:center}
  .lf-col{position:static!important;transform:none}
  .lf-cta{position:static!important;transform:none!important}.lf-cta:hover{transform:translateY(-2px)!important}
  @media(max-width:900px){.lf-panel{grid-template-columns:1fr;grid-template-areas:"l" "r" "c";justify-items:center}}
  /* Footer-Rahmen weiss statt violett */
  footer.lf{background:#fff!important}
  .lf-bottom{color:#111}.lf-legal a,.lf-legal button{color:#111}.lf-legal a:hover,.lf-legal button:hover{color:#4B2E9E}
  .lf-copy .lf-lock-d{display:none}.lf-copy .lf-lock-l{display:block}
  /* Dunkles Theme: Footer invertiert (Rahmen schwarz wie Seite, Flaeche hell) */
  html:not([data-theme="light"]) footer.lf{background:var(--bg)!important;--lf-bg:#F2EFEA}
  html:not([data-theme="light"]) .lf-topo{color:rgba(75,46,158,.12)}
  html:not([data-theme="light"]) .lf-lab{color:#6b6b6b}
  html:not([data-theme="light"]) .lf-col>a{color:#111}
  html:not([data-theme="light"]) .lf-col>a:hover,html:not([data-theme="light"]) .lf-col>a.lf-hi{color:#4B2E9E}
  html:not([data-theme="light"]) .lf-adr{color:#6b6b6b} html:not([data-theme="light"]) .lf-adr a{color:#3a3a3a} html:not([data-theme="light"]) .lf-adr a:hover{color:#4B2E9E}html:not([data-theme="light"]) .lf-bottom,html:not([data-theme="light"]) .lf-legal a,html:not([data-theme="light"]) .lf-legal button{color:#f0f0f0}
  html:not([data-theme="light"]) .lf-copy .lf-lock-l{filter:invert(1) hue-rotate(180deg)}
  header.on-light{--ink:#111;--muted:#444;--line:rgba(17,17,17,.18)}
  header.on-light .logo-img{display:none!important} header.on-light .nav-logo-light{display:block!important}
  header.on-light .nav-icon-dark{display:none!important} header.on-light .nav-icon-light{display:block!important}
  /* Footer: Hoehenlinien bewegen sich mit der Maus */
  .lf-topo{transition:color .6s ease;will-change:transform}
  .lf-topo path{transition:stroke-width .6s ease}
  footer.lf.hov .lf-topo{color:rgba(125,100,248,.28)}
  html:not([data-theme="light"]) footer.lf.hov .lf-topo{color:rgba(75,46,158,.30)}
  /* Footer Mitte: Abschluss-Frage der Seite + Button */
  .lf-midcta{grid-area:c;align-self:center;text-align:center;max-width:460px;margin:0 auto}
  .lf-midcta h2{font-size:clamp(24px,2.4vw,36px)!important;font-weight:900;letter-spacing:-.03em;line-height:1.08;margin:0 0 22px;color:#f0f0f0}
  html:not([data-theme="light"]) .lf-midcta h2{color:#111}
  .lf-midcta .lf-cta{position:static!important;transform:none!important;display:inline-flex}
  .lf-midcta .lf-cta:hover{transform:translateY(-2px)!important}

  /* Einheitlicher Abstand zwischen allen Sektionen */
  :root{--sec:clamp(74px,8.4vw,124px)}
  main>section:not(.csstack-sec):not(.hero):not(.cz-hero):not(.face-stage):not(.cz-open):not(.tcases):not(.cz-cover):not(.hd-sec):not(.rpsec){padding-top:var(--sec)!important;padding-bottom:var(--sec)!important}
  main>section.cz-cover{padding-bottom:var(--sec)!important}

  /* Oberer Seitenbereich: Hoehenlinien im Hintergrund */
  main>section.hd-sec{position:relative}
  .hd-topo{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;color:rgba(125,100,248,.13);transform:scale(1.1);transition:color .8s ease;will-change:transform;-webkit-mask-image:radial-gradient(120% 92% at 50% 45%,#000 45%,transparent 92%);mask-image:radial-gradient(120% 92% at 50% 45%,#000 45%,transparent 92%)}
  .hd-topo path{fill:none;stroke:currentColor;stroke-width:1.2}
  .hd-topo path:nth-child(2n){display:none}
  [data-theme="light"] .hd-topo{color:rgba(75,46,158,.12)}
  main>section.hd-sec>*:not(.hd-topo):not(.cz-float){position:relative;z-index:1}

  /* Einzug: erster Abschnitt jeder Seite startet ueberall gleich tief */
  :root{--top-in:clamp(52px,5.4vw,88px)}
  main>section.hd-sec,main>section.rpsec{padding-top:calc(var(--sec) + var(--top-in))!important}
  main>section.hd-sec:not(.cz-hero),main>section.rpsec{padding-bottom:var(--sec)!important}

  /* === CASES: gestapelte Vollbild-Panels === */
  .csstack{position:relative;display:block;margin:clamp(40px,5vw,72px) 0 0;
           width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}
  .csp{position:sticky;top:0;display:block;height:100svh;min-height:520px;overflow:hidden;background:#0E0E10;
       color:#fff;isolation:isolate;will-change:transform;cursor:pointer;
       border-radius:16px 16px 0 0;box-shadow:0 -26px 60px rgba(0,0,0,.55)}
  .csp:first-child{border-radius:0;box-shadow:none}
  .csp-bg{position:absolute;inset:0;z-index:-2;overflow:hidden;background:#0E0E10}
  .csp-img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.06);will-change:transform}
  .csp-bg::after{content:"";position:absolute;inset:0;
       background:linear-gradient(180deg,rgba(10,10,12,.55) 0%,rgba(10,10,12,.30) 42%,rgba(10,10,12,.88) 100%)}
  .csp-noimg .csp-bg{background:
       radial-gradient(120% 90% at 18% 8%,rgba(93,58,190,.55) 0%,rgba(93,58,190,0) 60%),
       radial-gradient(90% 80% at 92% 100%,rgba(138,79,192,.32) 0%,rgba(138,79,192,0) 62%),#111114}
  .csp-noimg .csp-bg::after{background:linear-gradient(180deg,rgba(10,10,12,0) 40%,rgba(10,10,12,.55) 100%)}
  .csp-topo{position:absolute;inset:-4%;width:108%;height:108%;color:rgba(125,100,248,.20);pointer-events:none}
  .csp-topo path{fill:none;stroke:currentColor;stroke-width:1.2}
  .csp-in{position:absolute;left:0;right:0;bottom:0;padding:clamp(34px,5vw,86px) clamp(22px,6vw,110px);
          max-width:1180px;margin:0 auto;text-align:left}
  .csp-no{font-size:12px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:#bda8ff;margin-bottom:14px}
  .csp-t{font-size:clamp(32px,5.4vw,76px);font-weight:900;letter-spacing:-.035em;line-height:1.02;margin:0 0 16px;color:#fff;max-width:17ch}
  .csp-p{font-size:clamp(15px,1.3vw,19px);line-height:1.55;color:rgba(255,255,255,.82);margin:0 0 20px;max-width:56ch}
  .csp-meta{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;margin-bottom:24px}
  .csp-tag{font-size:12.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#fff;
           border:1px solid rgba(255,255,255,.28);border-radius:99px;padding:6px 13px}
  .csp-imp{font-size:14px;font-weight:600;color:#cbbcff}
  .csp-run{display:inline-flex;align-items:center;gap:7px;font-size:11.5px;font-weight:800;letter-spacing:.09em;
        text-transform:uppercase;padding:5px 11px;border-radius:6px;color:#e6d8ff;
        background:rgba(18,12,38,.55);border:1px solid rgba(162,79,176,.65)}
  .csp-run::before{content:"";width:7px;height:7px;border-radius:50%;background:#b163c6}
  .csp-run.csp-mand{color:#dcd3ff;border-color:rgba(123,96,255,.75)}
  .csp-run.csp-mand::before{background:#7D64F8}
  .csp-go{display:inline-flex;align-items:center;gap:12px;font-size:15px;font-weight:700;letter-spacing:.04em;
          text-transform:uppercase;color:#fff;border-bottom:1px solid rgba(255,255,255,.35);padding-bottom:6px;
          transition:gap .25s ease,border-color .25s ease}
  .csp:hover .csp-go{gap:20px;border-color:#fff}
  .csp::before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:#08080A;opacity:0;transition:opacity .2s linear}
  @media(max-width:760px){.csp{height:86svh}.csp-t{max-width:none}}
  @media(prefers-reduced-motion:reduce){.csp{position:relative;height:auto;min-height:0}.csp-in{position:relative;max-width:none}}

  .cs-allwrap{display:flex;justify-content:center;margin:clamp(34px,4vw,60px) 0 0}
  .cs-all{display:inline-flex;align-items:center;gap:12px;font-size:15px;font-weight:700;letter-spacing:.06em;
          text-transform:uppercase;color:var(--ink);border:1px solid var(--line);border-radius:6px;
          padding:16px 30px;transition:border-color .2s ease,gap .25s ease,background .2s ease}
  .cs-all:hover{border-color:var(--purple);gap:18px}
  .csp{cursor:pointer}
  .csp-in{transition:none}
  .csp:hover .csp-t{text-decoration:underline;text-underline-offset:10px;text-decoration-thickness:2px;
                    text-decoration-color:rgba(255,255,255,.45)}

  main>section.csstack-sec{padding:0!important;overflow:visible;position:relative}
  .csstack-sec .cs-allwrap{padding-bottom:clamp(40px,5vw,72px)}


  /* === MODUS-FAHNE am rechten Rand === */
  .modeflag{position:fixed;right:0;top:30%;transform:translateY(-50%);z-index:150;
            display:block;padding:20px 10px 20px 11px;cursor:pointer;
            background:var(--bg);color:var(--ink);font-family:inherit;
            border:1px solid var(--nav-border);border-right:none;border-radius:6px 0 0 6px;
            writing-mode:vertical-rl;text-orientation:mixed;
            font-size:11px;font-weight:800;letter-spacing:.3em;text-transform:uppercase;
            transition:padding-left .3s ease,background .3s ease,color .3s ease;
            -webkit-appearance:none;appearance:none}
  .modeflag::before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--grad);opacity:.85}
  .modeflag:hover{padding-left:18px}
  .mf-w{display:block}
  .mf-tech{display:none}
  [data-theme="light"] .modeflag .mf-people{display:none}
  [data-theme="light"] .modeflag .mf-tech{display:block}
  @media(max-width:760px){.modeflag{font-size:10px;padding:14px 7px 14px 8px;letter-spacing:.22em}}
  @media(prefers-reduced-motion:reduce){.modeflag{transition:none}}
/* Ana: Bild links weiss, dort wirken die Hoehenlinien wie ein Fehler */
.csp[href="case-ana"] .csp-topo{display:none}
