/* devonNEXT — Main Landing Page Styles */
html,body{overflow-x:clip}

/* ======== SCROLL REVEAL ======== */
.rv{opacity:0;transform:translateY(24px);transition:opacity .7s var(--ease-out),transform .7s var(--ease-out)}
.rv.v{opacity:1;transform:none}
.rv-d1{transition-delay:.08s}
.rv-d2{transition-delay:.16s}
.rv-d3{transition-delay:.24s}
@media (prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}}

/* ======== HERO HEADLINE STAGGER ======== */
.hero h1{opacity:0;transform:translateY(14px);animation:heroH1 .7s var(--ease-out) .1s forwards}
.hero p.sub{opacity:0;transform:translateY(14px);animation:heroH1 .65s var(--ease-out) .28s forwards}
.hero-chip{opacity:0;transform:translateY(14px);animation:heroH1 .5s var(--ease-out) 0s forwards}
.hero-ctas{opacity:0;animation:heroH1 .6s var(--ease-out) .42s forwards}
.hero-proof{opacity:0;animation:heroH1 .6s var(--ease-out) .56s forwards}
@keyframes heroH1{to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){
  .hero h1,.hero p.sub,.hero-chip,.hero-ctas,.hero-proof{opacity:1;transform:none;animation:none}
}

/* ======== NAV ======== */
.skip-link{position:fixed;top:-60px;left:12px;z-index:300;background:var(--navy);color:#fff;padding:12px 18px;border-radius:0 0 10px 10px;font-family:var(--hd);font-weight:600;font-size:14px;text-decoration:none;transition:top .2s var(--ease)}
.skip-link:focus{top:0;outline:2px solid var(--or);outline-offset:2px}

/* ── Webinar-Anmelde-Overlay ── */
.wb-overlay{position:fixed;inset:0;z-index:250;background:rgba(12,28,54,.55);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:24px;animation:wbFade .25s var(--ease)}
@keyframes wbFade{from{opacity:0}to{opacity:1}}
.wb-modal{position:relative;width:100%;max-width:440px;max-height:calc(100vh - 48px);max-height:calc(100dvh - 48px);overflow-y:auto;-webkit-overflow-scrolling:touch;background:#fff;border-radius:18px;padding:36px 34px 30px;box-shadow:0 40px 90px -30px rgba(12,28,54,.6);animation:wbPop .3s var(--ease-out)}
@keyframes wbPop{from{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:none}}
.wb-close{position:absolute;top:14px;right:16px;width:34px;height:34px;border:none;background:none;font-size:24px;line-height:1;color:var(--n40);cursor:pointer;border-radius:8px;transition:background .2s,color .2s}
.wb-close:hover{background:var(--n05);color:var(--navy)}
.wb-badge{display:inline-block;font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--or-h);background:var(--or-soft);padding:5px 11px;border-radius:999px;margin-bottom:16px}
.wb-h{font-family:var(--hd);font-size:26px;font-weight:800;letter-spacing:-.025em;color:var(--navy);margin-bottom:10px;line-height:1.15}
.wb-p{font-size:15px;line-height:1.6;color:var(--n40);margin-bottom:22px}
.wb-form{display:flex;flex-direction:column;gap:12px}
.wb-label{font-family:var(--hd);font-size:13px;font-weight:600;color:var(--navy)}
.wb-form input{width:100%;font-family:inherit;font-size:15px;line-height:1.5;padding:13px 16px;border:1.5px solid var(--n15);border-radius:10px;background:#fff;color:var(--navy);transition:border-color .2s}
.wb-form input:focus{outline:none;border-color:var(--or)}
.wb-form .btn-primary{background:var(--or);border-color:var(--or);color:#fff;border-radius:999px;padding:15px 24px;font-size:15px;margin-top:4px}
.wb-submit{white-space:normal;line-height:1.25;min-width:0}
@media(max-width:420px){.wb-submit{font-size:14px;padding-left:16px;padding-right:16px}}
.wb-form .btn-primary:hover{background:var(--or-h);border-color:var(--or-h)}
.wb-fine{font-size:11.5px;line-height:1.5;color:var(--n30);margin-top:14px;text-align:center}
.wb-fine a{color:var(--or-h)}
.wb-done{text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px;padding:10px 0}
.wb-done-ic{width:52px;height:52px;border-radius:50%;background:var(--or-soft);color:var(--or);display:flex;align-items:center;justify-content:center;margin-bottom:6px}
.wb-done-ic svg{width:26px;height:26px}
.wb-done .btn-outline{margin-top:14px;border-radius:999px}

/* Auswahl-besprechen-Formular (baut auf .wb-* auf) */
.cfg2-form-modal{max-width:500px;text-align:left;padding-top:30px}
.cfg2-form-modal .wb-badge{margin-bottom:12px}
.cfg2-form-modal .wb-p{margin-bottom:16px}
.cfg2-form-recap{background:var(--warm,#FAF8F2);border:1px solid var(--n15);border-radius:12px;padding:12px 15px;margin-bottom:16px;display:flex;flex-direction:column;gap:6px}
.cfg2-recap-phase{display:flex;flex-wrap:wrap;align-items:baseline;gap:5px 9px}
.cfg2-recap-name{font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--or-h);flex:0 0 auto}
.cfg2-recap-items{font-size:13px;line-height:1.4;color:var(--navy)}
.cfg2-form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.cfg2-form-row > div{display:flex;flex-direction:column;gap:7px;min-width:0}
.cfg2-form-modal textarea{width:100%;font-family:inherit;font-size:15px;line-height:1.5;padding:13px 16px;border:1.5px solid var(--n15);border-radius:10px;background:#fff;color:var(--navy);resize:vertical;transition:border-color .2s}
.cfg2-form-modal textarea:focus{outline:none;border-color:var(--or)}
.cfg2-opt{font-weight:400;color:var(--n30)}
.cfg2-consent{display:flex;gap:10px;align-items:flex-start;font-size:12.5px;line-height:1.5;color:var(--n40);cursor:pointer;margin-top:2px}
.cfg2-consent input{margin-top:2px;flex-shrink:0;width:16px;height:16px;accent-color:var(--or)}
.cfg2-consent a{color:var(--or-h)}
.cfg2-form-err{font-size:13px;line-height:1.5;color:#C2410C;background:#FBEAE1;border-radius:8px;padding:10px 12px}
.cfg2-form-alt{margin-top:16px;padding-top:16px;border-top:1px solid var(--n10);text-align:center;font-size:13.5px;color:var(--n40)}
.cfg2-form-altlink{background:none;border:none;font-family:inherit;font-size:13.5px;font-weight:600;color:var(--or-h);cursor:pointer;padding:0;text-decoration:underline;text-underline-offset:2px}
.cfg2-form-altlink:hover{color:var(--or)}
@media(max-width:480px){.cfg2-form-row{grid-template-columns:1fr}}

@media(max-width:480px){.wb-modal{padding:30px 22px 24px}.wb-h{font-size:23px}}
nav.top{
  position:fixed;top:0;left:0;right:0;z-index:90;
  padding:18px 0;
  background:linear-gradient(180deg, rgba(255,255,255,.86) 0%, rgba(255,255,255,.72) 100%);
  backdrop-filter:saturate(1.6) blur(22px);
  -webkit-backdrop-filter:saturate(1.6) blur(22px);
  border-bottom:1px solid rgba(12,28,54,.05);
  box-shadow:0 1px 0 rgba(255,255,255,.6) inset;
  transition:padding .25s, background .3s, border-color .3s, box-shadow .3s;
}
nav.top::after{
  content:'';position:absolute;left:0;right:0;bottom:-1px;height:1px;
  background:linear-gradient(90deg, transparent 0%, rgba(0,166,160,0) 20%, rgba(0,166,160,.35) 50%, rgba(0,166,160,0) 80%, transparent 100%);
  opacity:0;transition:opacity .35s;pointer-events:none;
}
nav.top.scrolled{
  padding:12px 0;
  background:rgba(255,255,255,.94);
  border-bottom-color:rgba(12,28,54,.07);
  box-shadow:0 10px 30px -18px rgba(12,28,54,.18), 0 1px 0 rgba(255,255,255,.6) inset;
}
nav.top.scrolled::after{opacity:1}

/* Header: durchgehend fest weiß */
nav.top.nav-A{background:#fff;backdrop-filter:none;-webkit-backdrop-filter:none;border-bottom:1px solid rgba(12,28,54,.08)}
nav.top.nav-A::after{display:none}
nav.top .inner{display:flex;align-items:center;justify-content:space-between}
.logo{display:inline-flex;align-items:center;text-decoration:none;color:var(--navy);height:46px}
.logo-svg{height:46px;width:auto;display:block;image-rendering:-webkit-optimize-contrast}
.logo .logo-dark{display:none}
html[data-theme="dark"] .logo .logo-light{display:none}
html[data-theme="dark"] .logo .logo-dark{display:block}
.logo .s{color:var(--or);font-size:22px;margin-right:4px}
.logo .d{color:var(--navy);font-size:17px}
.logo .n{color:var(--or);font-size:17px}
.nav-links{display:flex;gap:30px;align-items:center}
.nav-link{font-size:15px;font-weight:600;color:var(--navy);cursor:pointer;transition:color .2s;background:none;border:none;font-family:inherit;padding:0;letter-spacing:-.005em}
.nav-link:hover{color:#00A6A0}
.nav-link-cta{color:#fff;background:var(--or);border-radius:999px;padding:9px 18px;font-weight:600;transition:background .2s,transform .2s}
.nav-link-cta:hover{color:#fff;background:var(--or-h);transform:translateY(-1px)}
@media(max-width:1024px){.nav-links{display:none}}
@media(min-width:1025px){.nav-burger{display:none!important}.mobile-menu,.mobile-menu-scrim{display:none!important}}
.mobile-menu{position:fixed;top:0;right:0;bottom:0;width:min(360px,86vw);background:#fff;z-index:99;transform:translateX(100%);transition:transform .3s;box-shadow:-12px 0 40px rgba(0,0,0,.12);overflow-y:auto;display:flex;flex-direction:column;padding:80px 24px 28px}
.mobile-menu.open{transform:translateX(0)}
.mobile-menu:not(.open){pointer-events:none}
.mobile-menu-inner{display:flex;flex-direction:column;gap:24px;height:100%}
.mobile-menu-links{display:flex;flex-direction:column;gap:4px}
.mobile-menu-link{background:none;border:0;padding:14px 0;text-align:left;font-family:var(--hd);font-size:18px;font-weight:600;color:var(--navy);display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--n10);cursor:pointer}
.mobile-menu-cta{margin-top:auto;width:100%;justify-content:center}
.mobile-menu-scrim{position:fixed;inset:0;background:rgba(12,28,54,.4);z-index:98;opacity:0;pointer-events:none;transition:opacity .3s}
.mobile-menu-scrim.on{opacity:1;pointer-events:auto}

/* Burger button */
.nav-actions{display:flex;align-items:center;gap:6px}
.nav-burger{
  display:inline-flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;
  width:44px;height:44px;padding:0 9px;border:none;background:none;cursor:pointer;
  -webkit-tap-highlight-color:transparent;
}
.nav-burger span{
  display:block;height:2px;width:100%;border-radius:2px;background:var(--navy);
  transition:transform .32s var(--ease), opacity .2s ease;transform-origin:center;
}
.nav-burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-burger.open span:nth-child(2){opacity:0}
.nav-burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ======== SIDEBAR / SECTION RAIL ======== */
.rail{
  position:fixed;left:28px;top:50%;transform:translateY(-50%);
  z-index:80;display:flex;flex-direction:column;gap:4px;
  opacity:0;transition:opacity .4s;
}
.rail.on{opacity:1}
.rail-item{
  display:flex;align-items:center;gap:12px;
  cursor:pointer;background:none;border:none;padding:6px 0;
  font-family:var(--hd);font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;
  color:var(--n20);transition:color .25s;
}
.rail-item .dot{width:22px;height:2px;background:var(--n15);border-radius:2px;transition:all .25s var(--ease)}
.rail-item .lbl{opacity:0;transform:translateX(-6px);transition:opacity .25s,transform .25s}
.rail-item:hover{color:var(--navy)}
.rail-item:hover .dot{background:var(--navy);width:30px}
.rail-item:hover .lbl{opacity:1;transform:none}
.rail-item.active{color:var(--or)}
.rail-item.active .dot{background:var(--or);width:40px;height:2px}
.rail-item.active .lbl{opacity:1;transform:none}
@media(max-width:1100px){.rail{display:none}}

/* ======== SCROLL PROGRESS ======== */
.prog{position:fixed;top:0;left:0;right:0;height:2px;background:transparent;z-index:95;pointer-events:none}
.prog-fill{height:100%;background:linear-gradient(90deg,var(--or),#FFB352);width:0%;transition:width .1s}

/* ======== HERO ======== */
.hero{
  position:relative;padding:150px 0 90px;overflow:hidden;
  background:
    radial-gradient(1200px 500px at 90% -10%, var(--or-soft) 0%, transparent 60%),
    linear-gradient(180deg, var(--wh) 0%, var(--n03) 100%);
}
.hero .slash-deco{right:-60px;top:40px;font-size:460px}
.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:center}
@media(max-width:1000px){.hero-grid{grid-template-columns:1fr;gap:50px}}

.hero-chip{
  display:inline-flex;align-items:center;gap:10px;
  padding:7px 14px 7px 8px;border-radius:100px;
  background:#fff;border:1px solid var(--n10);
  font-size:13px;color:var(--n40);font-weight:500;margin-bottom:28px;
  box-shadow:var(--sh-1);
}
.hero-chip .pulse{width:8px;height:8px;border-radius:50%;background:var(--or);box-shadow:0 0 0 0 var(--or-glow);animation:pulse 2s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(0,166,160,.5)}70%{box-shadow:0 0 0 10px rgba(0,166,160,0)}100%{box-shadow:0 0 0 0 rgba(0,166,160,0)}}

.hero h1{font-family:var(--hd);font-size:clamp(40px,5.4vw,68px);font-weight:700;line-height:1.02;letter-spacing:-0.035em;margin-bottom:28px;min-height:1.04em}
.hero h1 .em{color:var(--or);font-style:normal}
.hero h1 .nowrap{white-space:nowrap}
.tw-wrap{display:inline-block;min-height:1.04em}
.tw{display:inline;color:var(--navy)}
.tw-lead{color:var(--navy)}
.tw-tail{color:#00A6A0;font-weight:900}
.tw-caret{
  display:inline-block;width:3px;height:.9em;vertical-align:-.06em;
  background:#00A6A0;margin-left:4px;border-radius:1px;
  animation:twCaret 1s steps(2) infinite;
}
@keyframes twCaret{50%{opacity:0}}
@media (prefers-reduced-motion:reduce){
  .tw-caret{animation:none}
}
.hero h1 .u{
  display:inline;position:relative;
  background:linear-gradient(180deg,transparent 66%,var(--or-soft) 66%);
}
.hero p.sub{font-size:19px;line-height:1.6;color:var(--n40);max-width:52ch;margin-bottom:40px}
.hero-ctas{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin-bottom:34px}
.hero-proof{display:flex;gap:28px;align-items:center;flex-wrap:wrap;padding-top:22px;border-top:1px solid var(--n10)}
.hp-stat{display:flex;flex-direction:column;gap:2px}
.hp-stat .n{font-family:var(--hd);font-weight:800;font-size:26px;color:var(--navy);letter-spacing:-0.03em;line-height:1}
.hp-stat .l{font-size:12px;color:var(--n40)}
.hp-sep{width:1px;height:30px;background:var(--n10)}

/* Hero right — card stack */
.hero-right{position:relative;min-height:520px;display:flex;align-items:stretch}
@media(max-width:1000px){.hero-right{min-height:440px;width:100%;max-width:460px;margin:0 auto}}

/* Hero artefact — Zukunftsbild Magazin-Cover */
.hero-artefact{
  position:relative;width:100%;
  background:linear-gradient(180deg,#fff 0%,#fafbfc 100%);
  border:1px solid var(--n10);border-radius:var(--r-xl);
  box-shadow:var(--sh-3);padding:28px 28px 24px;
  display:flex;flex-direction:column;gap:18px;
  transform:rotate(-1deg);transition:transform .4s var(--ease);
}
.hero-artefact::before{
  content:'';position:absolute;inset:-8px -8px -8px -8px;
  background:linear-gradient(135deg,var(--or) 0%,transparent 60%);
  border-radius:calc(var(--r-xl) + 8px);z-index:-1;opacity:.12;
  filter:blur(18px);
}
.hero-artefact:hover{transform:rotate(0deg) translateY(-4px)}
.ha-top{display:flex;justify-content:space-between;align-items:center;padding-bottom:14px;border-bottom:1px dashed var(--n10)}
.ha-eyebrow{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:10.5px;color:var(--or);letter-spacing:.12em;text-transform:uppercase;font-weight:700}
.ha-eyebrow span{width:6px;height:6px;border-radius:50%;background:var(--or);box-shadow:0 0 8px var(--or-glow)}
.ha-index{font-family:var(--mono);font-size:10.5px;color:var(--n40);letter-spacing:.1em}
.ha-index strong{color:var(--navy);font-weight:700}

.ha-cover{padding:8px 0 4px}
.ha-cover-label{font-family:var(--mono);font-size:10px;color:var(--n40);letter-spacing:.2em;text-transform:uppercase;margin-bottom:10px}
.ha-headline{font-family:var(--hd);font-size:24px;font-weight:800;line-height:1.1;letter-spacing:-.02em;color:var(--navy);margin-bottom:16px;text-wrap:balance}
.ha-meta{display:flex;flex-direction:column;gap:0;border-top:1px solid var(--n05)}
.ha-meta-row{display:flex;justify-content:space-between;align-items:baseline;padding:9px 0;border-bottom:1px solid var(--n05);font-family:var(--hd);font-size:12.5px}
.ha-meta-row:last-child{border-bottom:none}
.ha-meta-row span{color:var(--n40);font-weight:500;letter-spacing:.02em;text-transform:uppercase;font-size:10.5px}
.ha-meta-row strong{color:var(--or);font-weight:800;font-size:15px;letter-spacing:-.01em}

.ha-quote{position:relative;background:var(--warm);border-radius:var(--r-md);padding:18px 18px 16px 44px;margin:0}
.ha-quote-mark{position:absolute;top:-4px;left:14px;font-family:var(--hd);font-size:54px;font-weight:800;color:var(--or);line-height:1;opacity:.9}
.ha-quote-text{font-family:var(--hd);font-size:14.5px;font-weight:500;line-height:1.45;color:var(--navy);font-style:italic;letter-spacing:-.005em}
.ha-quote-author{margin-top:8px;font-family:var(--mono);font-size:10.5px;color:var(--n40);letter-spacing:.08em;text-transform:uppercase}

.ha-chip{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;background:rgba(0,166,160,.08);border:1px solid rgba(0,166,160,.22);border-radius:100px;font-family:var(--hd);font-size:11.5px;font-weight:600;color:var(--or-h);letter-spacing:.02em}
.ha-chip-dot{width:6px;height:6px;border-radius:50%;background:var(--or);box-shadow:0 0 0 0 var(--or-glow);animation:pulse 2s infinite}

html[data-theme="dark"] .hero-artefact{background:linear-gradient(180deg,var(--n05) 0%,var(--n03) 100%);border-color:var(--n10)}
html[data-theme="dark"] .ha-quote{background:var(--n03)}

.stack-card{
  position:absolute;background:#fff;border:1px solid var(--n10);border-radius:var(--r-lg);
  box-shadow:var(--sh-2);padding:22px;
}
.sc-a{top:0;left:0;width:62%;z-index:3;transform:rotate(-2deg);animation:float1 8s ease-in-out infinite}
.sc-b{top:40px;right:0;width:58%;z-index:2;transform:rotate(3deg);animation:float2 9s ease-in-out infinite}
.sc-c{bottom:20px;left:14%;width:70%;z-index:1;transform:rotate(-1deg);background:var(--navy);color:#fff;border-color:var(--navy);animation:float3 10s ease-in-out infinite}
@keyframes float1{0%,100%{transform:rotate(-2deg) translateY(0)}50%{transform:rotate(-2deg) translateY(-8px)}}
@keyframes float2{0%,100%{transform:rotate(3deg) translateY(0)}50%{transform:rotate(3deg) translateY(6px)}}
@keyframes float3{0%,100%{transform:rotate(-1deg) translateY(0)}50%{transform:rotate(-1deg) translateY(-5px)}}
.sc-head{display:flex;align-items:center;gap:10px;margin-bottom:14px}
.sc-head .phase{width:28px;height:28px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-family:var(--hd);font-weight:800;font-size:11px;color:#fff;flex-shrink:0}
.sc-a .sc-head .phase{background:var(--navy)}
.sc-b .sc-head .phase{background:var(--or)}
.sc-c .sc-head .phase{background:#fff;color:var(--navy)}
.sc-head .t{font-family:var(--hd);font-weight:700;font-size:13px;letter-spacing:-.01em}
.sc-card-body{font-size:12px;line-height:1.55;color:var(--n40)}
.sc-c .sc-card-body{color:rgba(255,255,255,.8)}
.sc-progress{height:4px;border-radius:4px;background:var(--n05);overflow:hidden;margin-top:12px}
.sc-c .sc-progress{background:rgba(255,255,255,.14)}
.sc-progress > div{height:100%;background:var(--or);border-radius:4px;width:0;animation:grow 3s var(--ease-out) forwards}
@keyframes grow{to{width:var(--w,70%)}}

/* ======== TRUST STRIP ======== */
.trust-strip{padding:36px 0;background:var(--navy);color:#fff;overflow:hidden}
.trust-row{display:flex;align-items:center;gap:40px;flex-wrap:wrap;justify-content:space-between}
.trust-label{font-family:var(--hd);font-size:11px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.5)}
.trust-logos{display:flex;gap:40px;flex-wrap:wrap;align-items:center}
.trust-logo{font-family:var(--hd);font-weight:700;font-size:16px;color:rgba(255,255,255,.8);letter-spacing:-.02em;opacity:.8;transition:opacity .2s}
.trust-logo:hover{opacity:1}
.trust-stats{display:flex;gap:40px;flex-wrap:wrap}
.trust-stat .n{font-family:var(--hd);font-size:30px;font-weight:800;color:var(--or);letter-spacing:-.02em;line-height:1}
.trust-stat .l{font-size:12px;color:rgba(255,255,255,.7);margin-top:3px}

/* ======== DIAGNOSE / PAIN ======== */
.section{padding:var(--sp-sect) 0;position:relative}
.ds-hint{font-size:.82em;color:var(--n40);white-space:nowrap}
.hide-mobile{display:inline}
.show-mobile{display:none}
@media(max-width:640px){.hide-mobile{display:none}.show-mobile{display:inline}.ph-kicker{display:none}}
/* Gezielte Straffung: Reality & Referenzen enden auf hellem Grund mit viel Leerraum */
#reality{padding-bottom:calc(var(--sp-sect) * 0.5)}
#beweise{padding-bottom:calc(var(--sp-sect) * 0.5)}
.section.alt{background:var(--warm)}
.section.dark{background:var(--navy);color:#fff}
.section-head{max-width:720px;margin-bottom:36px}
.section-head .h-lg{margin-bottom:18px}
.section-head p{font-size:17px;line-height:1.65;color:var(--n40)}
.section.dark .section-head p{color:rgba(255,255,255,.75)}

.pain-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
@media(max-width:780px){.pain-grid{grid-template-columns:1fr}}
.pain-card{
  background:#fff;border:1px solid var(--n10);border-radius:var(--r-lg);
  padding:34px 30px;transition:all .35s var(--ease);position:relative;overflow:hidden;
}
.pain-card::before{content:'';position:absolute;top:0;left:0;width:3px;height:100%;background:var(--or);transform:scaleY(0);transform-origin:top;transition:transform .35s var(--ease)}
.pain-card:hover{transform:translateY(-4px);box-shadow:var(--sh-2);border-color:transparent}
.pain-card:hover::before{transform:scaleY(1)}
.pain-card .num{font-family:var(--mono);font-size:11px;color:var(--or);margin-bottom:14px;letter-spacing:.1em}
.pain-card h3{font-family:var(--hd);font-size:18px;font-weight:700;margin-bottom:10px;letter-spacing:-.01em}
.pain-card p{font-size:14.5px;color:var(--n40);line-height:1.65}

/* ======== ASSESSMENT ======== */
.assess-card{
  background:linear-gradient(135deg,var(--navy) 0%,#0e2442 70%,#1a3360 100%);
  color:#fff;border-radius:var(--r-xl);padding:56px 60px;position:relative;overflow:hidden;
  box-shadow:var(--sh-3);
}
.assess-card::before{content:'//';position:absolute;top:-40px;right:-20px;font-family:var(--hd);font-weight:900;font-size:340px;color:var(--or);opacity:.08;line-height:1;letter-spacing:-.1em;pointer-events:none}
.assess-card .inner{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1.1fr;gap:60px;align-items:center}
@media(max-width:860px){.assess-card{padding:40px 28px}.assess-card .inner{grid-template-columns:1fr;gap:36px}}
.assess-card h2{font-family:var(--hd);font-size:clamp(28px,3.2vw,40px);font-weight:700;line-height:1.1;letter-spacing:-.025em;margin-bottom:18px}
.assess-card h2 .em{color:var(--or)}
.assess-card p{color:rgba(255,255,255,.8);font-size:16px;line-height:1.6;margin-bottom:26px}

.assess-ui{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.12);border-radius:var(--r-lg);padding:24px;backdrop-filter:blur(8px)}
.assess-q{font-family:var(--hd);font-size:17px;font-weight:600;line-height:1.35;margin-bottom:18px;min-height:48px}
.assess-opts{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}
.assess-opt{
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);
  color:#fff;font-family:inherit;font-size:14px;font-weight:500;
  padding:13px 18px;border-radius:10px;cursor:pointer;text-align:left;
  transition:all .2s;display:flex;align-items:center;gap:12px;
}
.assess-opt:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.24);transform:translateX(4px)}
.assess-opt.sel{background:var(--or);border-color:var(--or);color:#fff}
.assess-opt .kbd{width:22px;height:22px;border-radius:5px;background:rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:11px;font-weight:700;flex-shrink:0}
.assess-opt.sel .kbd{background:rgba(255,255,255,.2)}
.assess-bar{display:flex;align-items:center;gap:14px;font-size:12px;color:rgba(255,255,255,.6)}
.assess-bar-track{flex:1;height:3px;background:rgba(255,255,255,.12);border-radius:3px;overflow:hidden}
.assess-bar-fill{height:100%;background:var(--or);border-radius:3px;transition:width .4s var(--ease)}

.assess-result{display:none}
.assess-result.on{display:block}
.assess-score{display:flex;align-items:flex-end;gap:16px;margin-bottom:16px}
.assess-score-n{font-family:var(--hd);font-size:64px;font-weight:800;color:var(--or);letter-spacing:-.03em;line-height:1}
.assess-score-t{font-family:var(--hd);font-size:14px;font-weight:600;color:#fff;padding-bottom:8px}
.assess-insight{font-size:14px;line-height:1.6;color:rgba(255,255,255,.85);margin-bottom:22px;padding:14px 16px;background:rgba(0,166,160,.1);border-left:3px solid var(--or);border-radius:4px}

/* ======== METHODE ======== */
.method-head{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:end;margin-bottom:-26px}
@media(max-width:780px){.method-head{grid-template-columns:1fr}}

.phase-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin-bottom:14px;background:var(--n05);padding:4px;border-radius:12px}
@media(max-width:780px){.phase-tabs{grid-template-columns:repeat(2,1fr)}}
/* Option C: Phase 1+2 linear, 3+4 als Kreislauf */
.phase-flow{display:flex;align-items:center;justify-content:center;gap:clamp(28px,4vw,56px);margin-bottom:-16px;width:100%}
.phase-flow > .phase-tab{flex:0 0 auto;min-width:150px;background:#E8F0EF;border:1px solid var(--n15);border-radius:12px;padding:16px 20px}
.phase-flow > .phase-tab .t{font-size:16px}
.phase-cycle{position:relative;flex:0 0 clamp(420px,48vw,560px);aspect-ratio:2/1;margin-left:-8px}
.phase-cycle-svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.pc-track{fill:none;stroke:rgba(0,166,160,.16);stroke-width:8;stroke-linecap:round}
.pc-flow{fill:none;stroke:var(--or);stroke-width:8;stroke-linecap:round;stroke-dasharray:150 850;animation:pcFlow 5.5s linear infinite}
@keyframes pcFlow{to{stroke-dashoffset:-1000}}
.phase-flow .phase-cycle-node{position:absolute!important;top:50%;transform:translate(-50%,-50%);z-index:2;background:#E8F0EF;border:1px solid var(--n15);border-radius:12px;padding:16px 16px;min-width:150px}
.phase-flow > .phase-tab.done,.phase-flow .phase-cycle-node.done{background:#E8F0EF}
.phase-flow > .phase-tab.done .n,.phase-flow .phase-cycle-node.done .n{color:var(--n40)}
.phase-flow > .phase-tab.done .t,.phase-flow .phase-cycle-node.done .t{color:#5C6A7D}
.phase-cycle-node .t{font-size:16px}
.pc-l{left:19.3%}.pc-r{left:80.7%}
.phase-chev{flex:0 0 auto;display:flex;align-items:center;color:var(--or);opacity:.55}
.phase-chev svg{width:20px;height:20px}
@media(prefers-reduced-motion:reduce){.pc-flow{animation:none;stroke-dasharray:none;opacity:.5}}
@media(max-width:760px){
  .method-head{margin-bottom:0}
  .phase-meta{display:none}
  .phase-flow{flex-direction:column;gap:6px;align-items:center}
  .phase-chev{display:none}
  .phase-flow > .phase-tab{width:100%;max-width:360px}
  .phase-cycle{flex:0 0 auto;margin-left:0;width:100%;max-width:360px;aspect-ratio:2.8/1;align-self:center}
  .phase-flow .phase-cycle-node{min-width:120px;padding:12px 10px}
  .phase-cycle-node .t{font-size:14px}
}
.phase-ki-bar{
  display:block;width:fit-content;max-width:100%;margin:0 auto 26px;
  padding:9px 22px;
  background:rgba(12,28,54,.025);
  border:1px solid var(--n10);
  border-radius:999px;
  color:var(--n50,#5A6577);
  font-family:var(--hd);
  font-size:13.5px;font-weight:500;
  line-height:1.4;
  text-align:center;
  letter-spacing:-.005em;
  white-space:nowrap;
}
.phase-ki-bar .phase-ki-icon{display:none}
.phase-p-mobile{display:none}
.phase-ki-bar .hl{color:var(--or-h);font-weight:700}
@media(max-width:860px){.phase-ki-bar{white-space:normal;border-radius:14px;max-width:680px}}
@media(max-width:560px){.phase-ki-bar{font-size:12px;line-height:1.32;padding:9px 16px;margin-bottom:20px}}
@media(max-width:640px){
  .phase-ki-bar{display:none}
  .phase-p-desktop{display:none}
  .phase-p-mobile{display:block}
  #methode{padding-bottom:0}
}
#methode{padding-bottom:0}
.phase-tab{
  background:transparent;border:none;cursor:pointer;
  padding:14px 10px;border-radius:8px;text-align:center;
  transition:all .25s var(--ease);font-family:inherit;
}
.phase-tab .n{font-family:var(--mono);font-size:10px;color:var(--n40);letter-spacing:.1em;margin-bottom:3px;transition:color .25s var(--ease)}
.phase-tab .t{font-family:var(--hd);font-size:14px;font-weight:700;color:#5C6A7D;letter-spacing:-.01em;transition:color .25s var(--ease)}
.phase-tab:hover:not(.on){background:#fff}
.phase-tab:hover:not(.on) .t{color:var(--navy)}
/* durchlaufene Phasen: dezent türkis markiert */
.phase-tab.done{background:rgba(0,166,160,.09)}
.phase-tab.done .n{color:var(--or-h)}
.phase-tab.done .t{color:var(--or-h)}
/* aktive Phase: markenkonforme Abstufung Navy → Türkis */
.phase-tab.on{background:var(--or);box-shadow:var(--sh-1)}
.phase-tab.on .n{color:rgba(255,255,255,.75)}
.phase-tab.on .t{color:#fff}
.phase-tab.on.pi0{background:#0C8079}
.phase-tab.on.pi1{background:#0C6463}
.phase-tab.on.pi2{background:#134C56}
.phase-tab.on.pi3{background:#20384F}

.phase-panel{
  background:#fff;border:1px solid var(--n10);border-radius:var(--r-xl);
  overflow:hidden;box-shadow:var(--sh-2);
}
.phase-progress{height:3px;background:var(--n05)}
.phase-progress-fill{height:100%;background:var(--navy);transition:width .5s var(--ease),background .4s}
.phase-body{padding:48px 52px;display:grid;grid-template-columns:1.1fr .9fr;gap:56px;min-height:360px}
@media(max-width:860px){.phase-body{grid-template-columns:1fr;gap:18px;padding:32px 26px}}
.phase-body.switching{opacity:0;transform:translateY(10px)}
.phase-body{transition:opacity .25s,transform .25s}
.phase-left .ph-kicker{font-family:var(--mono);font-size:13px;font-weight:600;letter-spacing:.13em;color:#0EA396;margin-bottom:14px}
.phase-left h3{font-family:var(--hd);font-size:clamp(22px,2.4vw,30px);font-weight:700;letter-spacing:-.02em;margin-bottom:18px;line-height:1.2}
.phase-left p{font-size:15.5px;line-height:1.7;color:var(--n40);margin-bottom:14px}
.phase-left p strong{color:var(--navy);font-weight:600}
.phase-meta{display:flex;gap:10px;margin-top:18px;flex-wrap:wrap}
@media(max-width:1000px){.phase-meta{display:none}}

/* Mobile-Accordion für die Phasen (nur ≤760px) */
.phase-accordion{display:none}
@media(max-width:760px){
  .phase-flow,.phase-panel{display:none}
  .phase-accordion{display:flex;flex-direction:column;gap:9px;margin-top:6px}
  .mph{border:1.5px solid var(--n15);border-radius:13px;overflow:hidden;background:#fff;transition:border-color .3s,box-shadow .3s}
  .mph.on{border-color:var(--or);box-shadow:0 14px 32px -22px rgba(12,28,54,.5)}
  .mph-head{display:flex;align-items:center;gap:12px;padding:14px 15px;width:100%;background:none;border:none;font-family:inherit;text-align:left;cursor:pointer;transition:background .3s}
  .mph.on .mph-head{padding:12px 15px}
  .mph.on.pi0 .mph-head{background:#0C8079}
  .mph.on.pi1 .mph-head{background:#0C6463}
  .mph.on.pi2 .mph-head{background:#134C56}
  .mph.on.pi3 .mph-head{background:#183E48}
  .mph.on .mph-num{background:rgba(255,255,255,.16)!important;color:#fff!important;border:1px solid rgba(255,255,255,.55)}
  .mph.on .mph-p{color:rgba(255,255,255,.7)}
  .mph.on .mph-n{color:#fff}
  .mph.on .mph-chev{color:#fff!important}
  .mph-in{padding:20px 15px 16px}
  .mph-num{width:36px;height:36px;border-radius:9px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-family:var(--hd);font-weight:800;font-size:15px;background:var(--n05);color:var(--n40);transition:all .3s}
  .mph.on.pi0 .mph-num{background:#0C8079;color:#fff}
  .mph.on.pi1 .mph-num{background:#0C6463;color:#fff}
  .mph.on.pi2 .mph-num{background:#134C56;color:#fff}
  .mph.on.pi3 .mph-num{background:#183E48;color:#fff}
  .mph-lab{flex:1;min-width:0}
  .mph-p{font-family:var(--mono);font-size:9.5px;letter-spacing:.11em;text-transform:uppercase;color:var(--n40);display:flex;align-items:center;gap:7px}
  .mph-loop{display:inline-flex;align-items:center;gap:3px;color:var(--or-h);font-size:9px;font-weight:600}
  .mph-loop svg{width:11px;height:11px}
  .mph-n{font-family:var(--hd);font-weight:700;font-size:16px;letter-spacing:-.01em;color:var(--navy);margin-top:2px}
  .mph-chev{width:20px;height:20px;flex-shrink:0;color:var(--n40);transition:transform .3s}
  .mph.on .mph-chev{transform:rotate(180deg);color:var(--or-h)}
  .mph-panel{max-height:0;overflow:hidden;transition:max-height .4s ease}
  .mph.on .mph-panel{max-height:560px}
  .mph-in{padding:11px 15px 16px}
  .mph-tagline{font-family:var(--hd);font-weight:700;font-size:15px;color:var(--navy);margin-bottom:7px}
  .mph-body{font-size:14px;color:var(--n40);line-height:1.6;margin-bottom:13px}
  .mph-body strong{color:var(--navy);font-weight:600}
  .mph-del{background:var(--n03);border-radius:10px;padding:13px 14px;margin-bottom:12px}
  .mph-del-h{font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--n40);margin-bottom:9px}
  .mph-del ul{margin:0;padding:0}
  .mph-del li{list-style:none;font-size:14px;color:var(--navy);padding-left:18px;position:relative;margin-bottom:7px}
  .mph-del li:last-child{margin-bottom:0}
  .mph-del li::before{content:'';position:absolute;left:0;top:10px;width:9px;height:1.5px;background:var(--or)}
  .mph-del li strong{font-weight:700}
  .mph-out-h{font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--or-h);margin-bottom:5px}
  .mph-out{font-family:var(--hd);font-weight:700;font-size:14.5px;line-height:1.4;color:var(--navy)}
}
@media(prefers-reduced-motion:reduce){.mph-panel{transition:none}.mph-chev{transition:none}}

.phase-right{background:var(--n03);border-radius:var(--r-lg);padding:28px;display:flex;flex-direction:column}
.phase-right .lbl{font-family:var(--mono);font-size:11.5px;font-weight:600;letter-spacing:.13em;color:var(--n40);margin-bottom:14px;text-transform:uppercase}
.phase-right ul{list-style:none;margin-bottom:22px;flex:1}
.phase-right li{font-size:14px;line-height:1.85;padding-left:22px;position:relative;color:var(--n50)}
.phase-right li::before{content:'';position:absolute;left:0;top:11px;width:10px;height:1.5px;background:var(--or)}
.phase-right .outcome{padding-top:18px;border-top:1px solid var(--n10)}
.phase-right .outcome-lbl{font-family:var(--mono);font-size:11.5px;font-weight:600;letter-spacing:.13em;color:var(--or);margin-bottom:6px;text-transform:uppercase}
.phase-right .outcome p{font-family:var(--hd);font-size:15px;font-weight:600;color:var(--navy);line-height:1.45}

.phase-nav{display:flex;justify-content:space-between;align-items:center;padding:16px 52px;border-top:1px solid var(--n10);background:var(--n03)}
@media(max-width:860px){.phase-nav{padding:14px 26px}}
.phase-btn{background:transparent;border:1px solid var(--n10);border-radius:8px;padding:9px 16px;font-size:13px;font-weight:600;color:var(--n40);cursor:pointer;font-family:inherit;transition:all .2s}
.phase-btn:hover:not(:disabled){border-color:var(--navy);color:var(--navy)}
.phase-btn:disabled{opacity:.3;cursor:default}
.phase-dots{display:flex;gap:8px}
.phase-dot{width:8px;height:8px;border-radius:50%;background:var(--n10);border:none;cursor:pointer;transition:all .3s var(--ease);padding:0}
.phase-dot.on{width:28px;border-radius:4px;background:var(--or)}

/* ======== CASES ======== */
.case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
@media(max-width:900px){.case-grid{grid-template-columns:1fr}}
.case{
  background:#fff;border:1px solid var(--n10);border-radius:var(--r-lg);
  overflow:hidden;transition:all .35s var(--ease);display:flex;flex-direction:column;
}
.case:hover{transform:translateY(-4px);box-shadow:var(--sh-3);border-color:transparent}
.case-img{aspect-ratio:4/3;background:var(--n05);position:relative;overflow:hidden}
.case-img img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}
.case:hover .case-img img{transform:scale(1.04)}
.case-img .badge{position:absolute;top:14px;left:14px;padding:5px 10px;background:rgba(255,255,255,.95);backdrop-filter:blur(8px);border-radius:6px;font-family:var(--hd);font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--navy);z-index:4}

/* Case-Video: Inline-Play + Overlay-Vergrößern */
.casevid-host{position:absolute;inset:0;width:100%;height:100%}
.casevid{position:absolute;inset:0;width:100%;height:100%;background:#0a1424;container-type:inline-size}
.casevid-video{width:100%;height:100%;object-fit:cover;display:block;cursor:pointer;background:#0a1424}
.casevid-play{position:absolute;top:62%;left:50%;transform:translate(-50%,-50%);z-index:3;width:56px;height:56px;border-radius:50%;border:none;cursor:pointer;background:rgba(8,16,34,.42);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);color:#fff;display:flex;align-items:center;justify-content:center;transition:background .2s,transform .2s}
.casevid-play:hover{background:var(--or);transform:translate(-50%,-50%) scale(1.06)}
.casevid-play svg{width:23px;height:23px;margin-left:3px}
.casevid-expand,.casevid-ctrls{position:absolute;bottom:12px;right:12px;z-index:4;display:flex;gap:8px;opacity:0;pointer-events:none;transition:opacity .2s}
.casevid.started .casevid-ctrls,.casevid:hover .casevid-ctrls{opacity:1;pointer-events:auto}
.casevid-mini{width:36px;height:36px;border-radius:9px;border:1px solid rgba(255,255,255,.26);cursor:pointer;background:rgba(8,16,34,.55);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);color:#fff;display:flex;align-items:center;justify-content:center;transition:background .2s,border-color .2s}
.casevid-mini:hover{background:var(--or);border-color:var(--or)}
.casevid-mini svg{width:17px;height:17px}
.casevid-cap{position:absolute;left:0;right:0;bottom:20px;z-index:3;display:flex;justify-content:center;padding:0 6%;pointer-events:none}
.casevid-cap span{display:inline-block;max-width:94%;text-align:center;background:rgba(8,16,34,.86);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);color:#fff;font-family:var(--bd);font-size:clamp(14px,3.3cqw,19px);font-weight:500;line-height:1.4;padding:6px 12px;border-radius:8px;text-wrap:balance}
.casevid-progress{position:absolute;left:0;right:0;bottom:0;height:3px;background:rgba(255,255,255,.18);z-index:4;pointer-events:none}
.casevid-progress span{display:block;height:100%;width:100%;transform-origin:left;background:var(--or);transition:transform .25s linear}
.casevid.faux-full{position:fixed;inset:0;width:100vw;height:100vh;z-index:99999;background:#000}
/* Vorfahren-Transforms neutralisieren, damit der position:fixed-Vollbild-Fallback den ganzen Screen füllt */
body.casevid-zoom .case,
body.casevid-zoom .case-grid,
body.casevid-zoom .rv{transform:none!important;transition:none!important}
/* Im Video-Vollbild: Seitenleiste, Webinar-Bar und Nav ausblenden */
body.casevid-zoom{overflow:hidden!important}
body.casevid-zoom .rail,
body.casevid-zoom .webinar-bar,
body.casevid-zoom nav.top{opacity:0!important;pointer-events:none!important;visibility:hidden!important}
.casevid.faux-full .casevid-video{object-fit:contain}
.casevid.faux-full .casevid-cap{bottom:40px}
.casevid.faux-full .casevid-cap span{font-size:clamp(16px,1.9vw,22px);padding:9px 17px;border-radius:10px;max-width:760px}
.casevid:fullscreen .casevid-cap span{font-size:clamp(16px,1.9vw,22px);padding:9px 17px;border-radius:10px;max-width:760px}
.casevid:fullscreen .casevid-cap{bottom:40px}
@media(max-width:600px){.casevid.faux-full .casevid-cap span,.casevid:fullscreen .casevid-cap span{font-size:15px;padding:8px 13px}}
.casevid:fullscreen{background:#000}
.casevid:fullscreen .casevid-video{object-fit:contain}
.case:hover .casevid-video{transform:none}
.case-body{padding:26px;flex:1;display:flex;flex-direction:column}
.case-body .ind{font-family:var(--mono);font-size:11px;color:var(--n40);letter-spacing:.08em;margin-bottom:10px}
.case-body h3{font-family:var(--hd);font-size:17px;font-weight:700;letter-spacing:-.01em;line-height:1.35;margin-bottom:14px}
.case-body .quote{font-size:13.5px;color:var(--n40);line-height:1.65;font-style:italic;margin-bottom:20px;flex:1}
.case-metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;padding-top:18px;border-top:1px solid var(--n10)}
.case-metric{}
.case-metric .mn{font-family:var(--hd);font-size:22px;font-weight:800;color:var(--or);letter-spacing:-.02em;line-height:1}
.case-metric .ml{font-size:11px;color:var(--n40);margin-top:3px}

/* ======== QUOTE BREAK ======== */
.quote-break{padding:var(--sp-sect) 0;text-align:center;background:var(--warm);position:relative;overflow:hidden}
.quote-break::before{content:'»';position:absolute;top:40px;left:50%;transform:translateX(-50%);font-family:var(--hd);font-size:320px;color:var(--or);opacity:.06;line-height:1}
.quote-break blockquote{font-family:var(--hd);font-size:clamp(26px,3.6vw,44px);font-weight:600;line-height:1.25;letter-spacing:-.02em;color:var(--navy);max-width:880px;margin:0 auto 24px;position:relative;z-index:1}
.quote-break .claim{font-family:var(--hd);font-size:14px;font-weight:700;letter-spacing:.3em;text-transform:uppercase;color:var(--or);position:relative;z-index:1}
.quote-break blockquote .em{color:var(--or-h)}
.qb-eyebrow{font-family:var(--hd);font-size:12px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--or);margin-bottom:18px;position:relative;z-index:1}
.qb-source{margin-top:16px;font-size:13.5px;color:var(--n30);position:relative;z-index:1}

/* ======== VIDEO REVEAL (Kino-Reveal in-page) ======== */
.vreveal{padding:8px 0 28px;background:var(--warm);position:relative}
.vreveal-panel{
  position:relative;max-width:980px;margin:0 auto;border-radius:18px;overflow:hidden;
  aspect-ratio:16/9;background:#0a1424;
  box-shadow:0 30px 70px -34px rgba(12,28,54,.7);
  opacity:0;transform:scale(.9) translateY(18px);
  transition:opacity 1.2s var(--ease-out), transform 1.4s var(--ease-out);
}
.vreveal-panel.in{opacity:1;transform:none}
.vreveal-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;cursor:pointer;background:#0a1424}
.vreveal-grad{position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,rgba(8,16,34,.42) 0%,transparent 30%,transparent 70%,rgba(8,16,34,.22) 100%)}
.vreveal-cap{position:absolute;left:0;right:0;bottom:42px;z-index:3;display:flex;justify-content:center;padding:0 7%;pointer-events:none}
.vreveal-cap span{display:inline-block;max-width:820px;text-align:center;background:rgba(8,16,34,.86);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);color:#fff;font-family:var(--bd);font-size:clamp(16px,1.9vw,21px);font-weight:500;line-height:1.4;padding:10px 18px;border-radius:10px;text-wrap:balance}
@media(max-width:600px){.vreveal-cap{bottom:34px}.vreveal-cap span{font-size:15px;padding:8px 13px}}
.vreveal-state{
  position:absolute;top:16px;left:16px;z-index:3;display:inline-flex;align-items:center;gap:7px;
  background:rgba(12,28,54,.55);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);
  color:#fff;border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:7px 13px;
  font-family:var(--hd);font-size:12px;font-weight:600;cursor:pointer;transition:background .2s;
}
.vreveal-state:hover{background:rgba(12,28,54,.72)}
.vreveal-state svg{width:14px;height:14px}
.vreveal-ctrls{position:absolute;bottom:16px;right:16px;z-index:3;display:flex;gap:9px}
.vreveal-btn{
  display:inline-flex;align-items:center;gap:8px;
  background:rgba(12,28,54,.62);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);
  color:#fff;border:1px solid rgba(255,255,255,.24);border-radius:999px;padding:9px 16px;
  font-family:var(--hd);font-size:13px;font-weight:600;cursor:pointer;transition:background .2s,border-color .2s;
}
.vreveal-btn:hover{background:var(--or);border-color:var(--or)}
.vreveal-btn svg{width:15px;height:15px}
.vreveal-progress{position:absolute;left:0;right:0;bottom:0;height:3px;background:rgba(255,255,255,.18);z-index:3;pointer-events:none}
.vreveal-progress span{display:block;height:100%;width:100%;transform-origin:left;background:var(--or);transition:transform .25s linear}
@media(prefers-reduced-motion:reduce){
  .vreveal-panel{opacity:1;transform:none;transition:none}
}
/* Vollbild: Panel füllt den Screen, Video wird vollständig gezeigt (letterbox auf schwarz) */
.vreveal-panel:fullscreen{width:100vw;height:100vh;aspect-ratio:auto;border-radius:0;background:#000;max-width:none}
.vreveal-panel:fullscreen .vreveal-video{object-fit:contain}
.vreveal-panel:-webkit-full-screen{width:100vw;height:100vh;aspect-ratio:auto;border-radius:0;background:#000;max-width:none}
.vreveal-panel:-webkit-full-screen .vreveal-video{object-fit:contain}
/* CSS-Vollbild-Fallback (wenn die echte Fullscreen-API blockiert ist, z. B. im iframe/Sandbox) */
.vreveal-panel.faux-full{position:fixed;inset:0;width:100vw;height:100vh;aspect-ratio:auto;border-radius:0;background:#000;max-width:none;margin:0;z-index:9999}
.vreveal-panel.faux-full .vreveal-video{object-fit:contain}
@media(max-width:600px){
  .vreveal{padding:4px 0 20px}
  .vreveal-state{top:11px;left:11px;padding:6px 11px;font-size:11px}
  .vreveal-ctrls{bottom:11px;right:11px;gap:7px}
  .vreveal-btn{padding:8px 13px;font-size:12px}
}

/* ======== FOUNDERS ======== */
.founders-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}
@media(max-width:800px){.founders-grid{grid-template-columns:1fr}}
.founder{
  background:#fff;border:1px solid var(--n10);border-radius:var(--r-xl);
  overflow:hidden;transition:all .35s var(--ease);
}
.founder:hover{box-shadow:var(--sh-3);border-color:transparent}
.founder-top{display:grid;grid-template-columns:164px 1fr;gap:24px;padding:32px;align-items:center}
@media(max-width:520px){.founder-top{grid-template-columns:1fr;text-align:center}}
.founder-photo{width:164px;height:164px;border-radius:50%;border:4px solid var(--or-soft);overflow:hidden;display:block;flex-shrink:0}
.founder-photo img{width:100%;height:100%;object-fit:cover;display:block}
.founder-photo.is-zoom img{transform:scale(1.16);transform-origin:center 38%}
@media(max-width:520px){.founder-photo{margin:0 auto}}
.founder-name{font-family:var(--hd);font-size:24px;font-weight:700;letter-spacing:-.02em;margin-bottom:4px;display:flex;align-items:center;gap:10px}
@media(max-width:520px){.founder-name{justify-content:center}}
.founder-name .li{opacity:.4;transition:opacity .2s;display:inline-flex}
.founder-name .li:hover{opacity:1;color:var(--or)}
.founder-name svg{width:16px;height:16px;fill:currentColor}
.founder-role{font-family:var(--hd);font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--or);margin-bottom:14px}
.founder-bio{font-size:14px;color:var(--n40);line-height:1.7}
.founder-foot{padding:20px 32px;background:var(--n03);border-top:1px solid var(--n10);display:grid;grid-template-columns:1fr 1fr;gap:16px}
.founder-stat .k{font-family:var(--mono);font-size:10px;letter-spacing:.1em;color:var(--n40);margin-bottom:3px;text-transform:uppercase}
.founder-stat .v{font-family:var(--hd);font-size:13px;font-weight:600;color:var(--navy);line-height:1.4}
.founder-quote{font-style:italic;font-size:14.5px;color:var(--navy);padding:0 32px 26px;border-left:3px solid var(--or);margin:0 32px 24px;padding:14px 0 14px 18px}

/* ======== KI STANCE ======== */
.ki-grid{display:grid;grid-template-columns:minmax(440px,1fr) minmax(0,0.86fr);gap:64px;align-items:stretch}
@media(max-width:880px){.ki-grid{grid-template-columns:1fr;gap:40px}}
.ki-left h2{color:#fff}
.ki-left h2 .em{color:var(--or)}
.ki-claim{display:flex;flex-direction:column;text-wrap:balance}
.ki-claim > span{display:block;white-space:nowrap}
.ki-claim > span:nth-child(2){white-space:normal}
@media(max-width:560px){.ki-claim > span{white-space:normal}}
.ki-left p{font-size:16px;line-height:1.7;color:rgba(255,255,255,.78);margin-bottom:14px}
.ki-zielbild{margin-top:26px;padding:22px 24px;border-left:3px solid var(--or);background:rgba(255,255,255,.04);border-radius:0 10px 10px 0}
.ki-zielbild h3{font-family:var(--hd);font-size:19px;font-weight:700;line-height:1.35;letter-spacing:-.015em;color:#fff;margin:0 0 10px;text-wrap:pretty}
.ki-zielbild p{margin:0;color:rgba(255,255,255,.8)}
/* KI-Abschnitt v2 — These oben, drei Ebenen, rotierende Pointe */
.ki2{max-width:900px;margin:0 auto;text-align:center}
.ki2-eye{color:var(--or);justify-content:center;margin-bottom:22px}
.ki2-claim{font-family:var(--hd);font-weight:700;font-size:clamp(32px,3.8vw,48px);line-height:1.08;letter-spacing:-.025em;color:#fff;text-wrap:balance;margin:0 auto}
.ki2-claim .ki2-nb{white-space:nowrap}
@media(max-width:640px){.ki2-claim{text-wrap:pretty}.ki2-claim .ki2-nb{white-space:normal}}
.ki2-claim .em{color:var(--or);font-style:normal}
.ki2-lead{font-size:clamp(18px,2vw,22px);line-height:1.6;color:#fff;font-weight:500;max-width:660px;margin:22px auto 0;text-wrap:pretty}
.ki2-levels{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:clamp(44px,6vh,68px) auto 0;text-align:left}
.ki2-level{position:relative;padding:22px 24px;border-top:2px solid rgba(0,166,160,.55);opacity:0;transform:translateY(16px)}
.ki2-levels.run .ki2-level{animation:ki2in .6s var(--ease) var(--d) forwards}
@keyframes ki2in{to{opacity:1;transform:none}}
.ki2-level-k{font-family:var(--mono);font-size:12.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--or);margin-bottom:9px}
.ki2-level-t{font-family:var(--hd);font-weight:600;font-size:clamp(15.5px,1.5vw,17px);line-height:1.45;letter-spacing:-.01em;color:#fff;text-wrap:pretty}
.ki2-poi{margin:clamp(44px,6vh,72px) auto 0;max-width:820px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.12);border-radius:var(--r-xl,22px);padding:clamp(30px,4vw,44px) clamp(24px,4vw,48px);text-align:left}
.ki2-poi-row{display:flex;align-items:center;gap:clamp(20px,3vw,34px);min-height:2.6em}
.ki2-poi-num{font-family:var(--hd);font-weight:800;font-size:clamp(50px,8vw,96px);line-height:.8;color:transparent;-webkit-text-stroke:1.5px rgba(0,166,160,.55);flex-shrink:0;animation:ki2poi .5s var(--ease)}
.ki2-poi-q{font-family:var(--hd);font-weight:700;font-size:clamp(17px,1.9vw,22px);line-height:1.42;letter-spacing:-.015em;color:#fff;margin:0;text-wrap:pretty;animation:ki2poi .5s var(--ease)}
@keyframes ki2poi{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.ki2-poi-mark{font-family:Georgia,serif;color:var(--or);font-size:1.3em;line-height:0;margin-right:4px}
.ki2-poi-dots{display:flex;gap:9px;justify-content:flex-start;margin-top:24px;padding-left:calc(clamp(50px,8vw,96px) + clamp(20px,3vw,34px))}
.ki2-poi-dot{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.25);border:none;cursor:pointer;padding:0;transition:all .3s var(--ease)}
.ki2-poi-dot.on{width:26px;border-radius:4px;background:var(--or)}
.ki2-slogan{margin:clamp(28px,4vh,44px) auto 0;text-align:center;font-family:var(--mono);font-size:14px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--or)}
.ki2-poi-dot:hover:not(.on){background:rgba(255,255,255,.45)}
@media(prefers-reduced-motion:reduce){.ki2-level{opacity:1;transform:none}.ki2-levels.run .ki2-level{animation:none}}
@media(max-width:760px){
  .ki2-levels{grid-template-columns:1fr;gap:0}
  .ki2-level{padding:18px 16px;border-top:none;border-bottom:1px solid rgba(255,255,255,.1);border-left:2px solid rgba(0,166,160,.55)}
  .ki2-level:last-child{border-bottom:none}
  .ki2-poi-q{min-height:0}
  .ki2-poi-row{gap:16px}
  .ki2-poi-num{font-size:clamp(38px,13vw,56px)}
  .ki2-poi-dots{padding-left:0;justify-content:center}
}
.ki-right{display:flex;flex-direction:column;justify-content:space-between;gap:16px}
.ki-card{
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.12);
  border-radius:var(--r-lg);padding:24px 28px;transition:all .3s var(--ease);
  margin-bottom:0;
}
.ki-card:hover{border-color:var(--or);background:rgba(0,166,160,.08);transform:translateX(4px)}
.ki-card .num{font-family:var(--mono);font-size:10px;color:var(--or);letter-spacing:.15em;margin-bottom:8px}
.ki-card h4{font-family:var(--hd);font-size:17px;font-weight:700;color:#fff;margin-bottom:8px}
.ki-card p{font-size:14px;color:rgba(255,255,255,.82);line-height:1.65}
.swipe-ind{display:none}

/* ======== CONFIG / PRICING ======== */
/* ──── Angebots-Konfigurator v2 (ohne Preise, phasenweise) ──── */
.cfg2-bulk{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:16px 22px;margin-bottom:30px}
.cfg2-title{max-width:640px;margin-left:auto;margin-right:auto;text-wrap:balance}
.cfg2-br-desk{display:none}
.faq-h-short{display:none}
@media(max-width:640px){.faq-h-full{display:none}.faq-h-short{display:inline}}
@media(min-width:641px){.cfg2-br-desk{display:inline}}
.cfg2-bulk-btn{
  display:inline-flex;align-items:center;gap:11px;
  padding:13px 22px;border-radius:999px;cursor:pointer;
  font-family:var(--hd);font-size:14.5px;font-weight:600;
  background:var(--or-soft);color:var(--or-h);border:1.5px solid transparent;
  transition:all .2s var(--ease);
}
.cfg2-bulk-btn .cfg2-bulk-dot{width:9px;height:9px;border-radius:50%;background:var(--n20);transition:all .2s}
.cfg2-bulk-btn.is-active{background:var(--or-soft);border-color:var(--or);color:var(--or-h)}
.cfg2-bulk-btn.is-active .cfg2-bulk-dot{background:var(--or);box-shadow:0 0 0 4px rgba(0,166,160,.18)}
.cfg2-bulk-link{
  background:none;border:none;cursor:pointer;
  font-family:var(--hd);font-size:14px;font-weight:600;color:var(--n40);
  padding:8px 2px;transition:color .2s;
}
.cfg2-bulk-link:hover{color:var(--navy)}
.cfg2-bulk-link:disabled{opacity:.4;cursor:default}

/* Angebots-Bereich: zusammenhängender, farblich hinterlegter Block */
.cfg2-section{
  background:
    radial-gradient(120% 80% at 50% 0%, rgba(0,166,160,.07), transparent 60%),
    linear-gradient(180deg,#F1F7F6 0%, #F7FAF9 55%, #FBFBFA 100%);
  border-top:1px solid rgba(0,166,160,.14);
  border-bottom:1px solid rgba(0,166,160,.14);
}

/* Angebots-Timeline (cfg3) — Phasen-Reise + Live-Zusammenfassung */
.cfg3{max-width:920px;margin:0 auto}
.cfg3-taphint{display:none;font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--or-h);text-align:center;margin-bottom:12px}
@media(max-width:760px){.cfg3-taphint{display:block}}
.cfg3-rail{display:flex;gap:0;position:relative;margin-bottom:28px}
.cfg3-node{flex:1;position:relative;background:none;border:none;cursor:pointer;font-family:inherit;text-align:center;padding:0 6px 4px;display:flex;flex-direction:column;align-items:center}
.cfg3-node::before{content:"";position:absolute;top:24px;left:0;right:0;height:2px;background:var(--n15);z-index:0}
.cfg3-node:first-child::before{left:50%}
.cfg3-node:last-child::before{right:50%}
.cfg3-dot{position:relative;z-index:1;width:50px;height:50px;border-radius:50%;background:#fff;border:2px solid var(--n15);color:var(--n40);font-family:var(--hd);font-weight:800;font-size:19px;display:flex;align-items:center;justify-content:center;margin-bottom:13px;transition:all .25s var(--ease)}
.cfg3-node{flex:1;position:relative;background:none;border:none;cursor:pointer;font-family:inherit;text-align:center;padding:0 6px 4px;display:flex;flex-direction:column;align-items:center}
.cfg3-node:hover .cfg3-dot{transform:translateY(-3px) scale(1.08);border-color:var(--or);box-shadow:0 0 0 4px rgba(0,166,160,.15),0 10px 22px -8px rgba(0,166,160,.65)}
.cfg3-node:hover .cfg3-num,
.cfg3-node:hover .cfg3-term,
.cfg3-node:hover .cfg3-cnt{transform:translateY(-3px)}
.cfg3-node.active .cfg3-dot{background:var(--navy);border-color:var(--navy);color:#fff;transform:scale(1.08)}
.cfg3-node.active .cfg3-dot::after{content:"";position:absolute;left:50%;bottom:-13px;transform:translateX(-50%);border-left:7px solid transparent;border-right:7px solid transparent;border-top:8px solid var(--or)}
.cfg3-node.has-sel .cfg3-dot{border-color:var(--or)}
.cfg3-node.active.has-sel .cfg3-dot{background:var(--or);border-color:var(--or)}
.cfg3-num{font-family:var(--mono);font-size:12.5px;font-weight:600;letter-spacing:.05em;color:var(--or-h);margin-top:6px;margin-bottom:4px;transition:transform .2s var(--ease)}
.cfg3-term{font-family:var(--hd);font-size:16px;font-weight:700;letter-spacing:-.01em;color:var(--navy);line-height:1.2;transition:transform .2s var(--ease)}
.cfg3-cnt{margin-top:8px;font-family:var(--hd);font-size:12px;font-weight:700;color:var(--or-h);background:var(--or-soft);padding:3px 10px;border-radius:999px;transition:transform .2s var(--ease)}
.cfg3-node:not(.active) .cfg3-term{color:var(--n50)}

/* Einmaliger Staggered-Aufbau (Anteaser beim Sichtbarwerden) */
.cfg3-teaser .cfg3-node{animation:cfg3Build .5s var(--ease) backwards}
.cfg3-teaser .cfg3-node:nth-child(1){animation-delay:.05s}
.cfg3-teaser .cfg3-node:nth-child(2){animation-delay:.16s}
.cfg3-teaser .cfg3-node:nth-child(3){animation-delay:.27s}
.cfg3-teaser .cfg3-node:nth-child(4){animation-delay:.38s}
@keyframes cfg3Build{from{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.cfg3-teaser .cfg3-node{animation:none}}

.cfg3-body{display:grid;grid-template-columns:1fr 300px;gap:22px;align-items:start}
.cfg3-panel{border:1px solid var(--n10);border-radius:var(--r-xl);background:#fff;padding:22px 22px 18px;box-shadow:0 1px 2px rgba(12,28,54,.04),0 14px 34px -26px rgba(12,28,54,.3);min-height:160px}
.cfg3-panel-head{margin-bottom:16px}
.cfg3-panel-name{font-family:var(--mono);font-size:13px;font-weight:600;letter-spacing:.03em;color:var(--or-h);margin-bottom:5px}
.cfg3-panel-desc{font-family:var(--hd);font-size:18px;font-weight:700;letter-spacing:-.015em;color:var(--navy);line-height:1.3}
.cfg3-items{display:flex;flex-direction:column;gap:10px;animation:cfgItemsIn .28s var(--ease)}

.cfg3-summary{position:sticky;top:18px;border:1px solid var(--n10);border-radius:var(--r-xl);background:linear-gradient(180deg,#fff,#FBFCFD);padding:18px 20px;box-shadow:0 14px 32px -26px rgba(12,28,54,.4)}
.cfg3-sum-h{font-family:var(--hd);font-size:17px;font-weight:800;letter-spacing:-.02em;color:var(--or);margin-bottom:14px;line-height:1.1}
.cfg3-sum-list{display:flex;flex-direction:column;gap:11px;margin-bottom:16px;overflow:visible}
.cfg3-sum-group{display:flex;flex-direction:column;gap:6px}
.cfg3-sum-ph{font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--n40)}
.cfg3-sum-item{display:flex;gap:9px;align-items:baseline;font-size:13.5px;color:var(--navy);line-height:1.35}
.cfg3-sum-item .d{flex-shrink:0;width:5px;height:5px;border-radius:50%;background:var(--or);transform:translateY(-2px)}
.cfg3-sum-empty{font-size:13.5px;color:var(--n40);font-style:italic}
.cfg3-sum-cta{width:100%;justify-content:center;background:var(--or);border-color:var(--or);color:#fff;border-radius:999px;padding:14px;font-size:15px;font-weight:600}
.cfg3-sum-cta:hover{background:var(--or-h);border-color:var(--or-h)}
.cfg3-sum-foot{margin-top:11px;text-align:center;font-size:12.5px;color:var(--n40)}

@media(max-width:760px){
  .cfg3-body{grid-template-columns:1fr;gap:18px}
  .cfg3-summary{position:static;border:none;background:none;box-shadow:none;padding:0}
  .cfg3-summary .cfg3-sum-h,
  .cfg3-summary .cfg3-sum-list{display:none}

  /* Option C: Timeline → beschriftete Pill-Tabs (2×2), klar antippbar */
  .cfg3-rail{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:20px}
  .cfg3-node{flex:none;flex-direction:row;align-items:center;gap:10px;text-align:left;
    padding:11px 12px;border:1.5px solid var(--n15);border-radius:12px;background:#fff;transition:border-color .2s,background .2s}
  .cfg3-node::before{display:none}
  .cfg3-node.active{border-color:var(--or);background:var(--or-soft)}
  .cfg3-node:hover .cfg3-dot{transform:none;box-shadow:none;border-color:var(--n15)}
  .cfg3-node:hover .cfg3-num,.cfg3-node:hover .cfg3-term,.cfg3-node:hover .cfg3-cnt{transform:none}
  .cfg3-dot{width:34px;height:34px;font-size:15px;border-radius:9px;flex-shrink:0;margin:0}
  .cfg3-node.active .cfg3-dot{transform:none}
  .cfg3-node.active .cfg3-dot::after{display:none}
  .cfg3-num{display:none}
  .cfg3-term{display:block;font-size:13.5px;line-height:1.15;margin:0;flex:1;min-width:0}
  .cfg3-node:not(.active) .cfg3-term{color:var(--navy)}
  .cfg3-cnt{display:none}
  .cfg3-node.active{background:var(--or);border-color:var(--or)}
  .cfg3-node.active .cfg3-term{color:#fff}
  .cfg3-node.active .cfg3-dot,
  .cfg3-node.active.has-sel .cfg3-dot{background:rgba(255,255,255,.2);border-color:#fff;color:#fff}
  /* Fließtext volle Breite, Kind-Badge oben rechts */
  .cfg2-item{position:relative}
  .cfg2-item-body{width:100%}
  .cfg2-kind{position:absolute;top:10px;right:15px;margin-top:0}
  .cfg2-item-name{padding-right:74px}
}
.cfg2-phases{display:flex;flex-direction:column;gap:14px;max-width:880px;margin:0 auto}
.cfg2-phase{border:1px solid var(--n10);border-radius:var(--r-xl);background:#fff;padding:24px 26px;box-shadow:0 1px 2px rgba(12,28,54,.04),0 14px 34px -24px rgba(12,28,54,.22)}
.cfg2-phase-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:0;width:100%;background:none;border:none;text-align:left;font-family:inherit;color:inherit;cursor:pointer;padding:0}
.cfg2-phase.open .cfg2-phase-head{margin-bottom:20px}
.cfg2-phase-meta{flex:1;min-width:0}
.cfg2-chev{display:flex;flex:0 0 auto;width:22px;height:22px;color:var(--or);transition:transform .3s var(--ease)}
.cfg2-chev svg{width:100%;height:100%}
.cfg2-phase.open .cfg2-chev{transform:rotate(180deg)}
.cfg2-phase-name{font-family:var(--mono);font-size:14px;font-weight:600;letter-spacing:.04em;color:var(--or-h);margin-bottom:7px}
.cfg2-phase-desc{font-family:var(--hd);font-size:19px;font-weight:700;letter-spacing:-.015em;color:var(--navy);line-height:1.3}
.cfg2-phase-count{
  flex-shrink:0;font-family:var(--hd);font-size:13px;font-weight:700;
  color:var(--or-h);background:var(--or-soft);
  padding:5px 12px;border-radius:999px;min-width:48px;text-align:center;
  font-variant-numeric:tabular-nums;
}
.cfg2-items{display:flex;flex-direction:column;gap:10px;animation:cfgItemsIn .28s var(--ease)}
@keyframes cfgItemsIn{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
.cfg2-item{
  display:flex;align-items:flex-start;gap:15px;width:100%;text-align:left;cursor:pointer;
  padding:16px 18px;border-radius:var(--r-lg);
  border:1.5px solid var(--n10);background:var(--n03);
  transition:border-color .2s, background .2s, opacity .2s;
}
.cfg2-item.on{border-color:var(--or);background:var(--or-soft)}
.cfg2-item:not(.on){opacity:.55}
.cfg2-item:hover{border-color:var(--or)}
.cfg2-check{
  flex-shrink:0;width:24px;height:24px;border-radius:7px;margin-top:1px;
  border:2px solid var(--n15);background:#fff;color:#fff;
  display:flex;align-items:center;justify-content:center;
  transition:all .2s var(--ease);
}
.cfg2-check svg{width:15px;height:15px;opacity:0;transform:scale(.6);transition:all .2s var(--ease)}
.cfg2-item.on .cfg2-check{background:var(--or);border-color:var(--or)}
.cfg2-item.on .cfg2-check svg{opacity:1;transform:scale(1)}
.cfg2-item-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px}
.cfg2-item-name{font-family:var(--hd);font-size:16px;font-weight:700;letter-spacing:-.01em;color:var(--navy)}
.cfg2-item-desc{font-size:14px;line-height:1.55;color:var(--n50)}
.cfg2-kind{
  flex-shrink:0;align-self:flex-start;margin-top:-1px;
  font-family:var(--mono);font-size:10px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;
  padding:4px 10px;border-radius:999px;white-space:nowrap;
}
.cfg2-kind-einmalig{background:var(--n05);color:var(--n40)}
.cfg2-kind-laufend{background:rgba(123,174,63,.14);color:#5a8a26}

.cfg2-note{
  display:flex;align-items:center;justify-content:center;gap:13px;max-width:880px;
  margin:44px auto 0;padding:40px 18px 0;
  border:none;background:none;box-shadow:none;border-radius:0;
  border-top:1px solid var(--n10);
  font-family:var(--hd);font-size:16px;font-weight:500;line-height:1.5;
  color:var(--navy);text-align:center;text-wrap:balance;letter-spacing:-.01em;
}
.cfg2-note strong{color:var(--navy);font-weight:700}
.cfg2-note-icon{flex-shrink:0;width:20px;height:20px;color:var(--or);display:inline-flex}
.cfg2-note-icon svg{width:100%;height:100%}

#pakete .section-head p{color:#3F4A5C}

/* Lead-in-Zeile unter dem Intro (verschobenes Nutzen-Statement, ohne Trennlinie) */
.cfg2-lead{
  display:flex;align-items:center;justify-content:center;gap:12px;max-width:760px;
  margin:0 auto 30px;
  font-family:var(--hd);font-size:17px;font-weight:500;line-height:1.5;
  color:var(--navy);text-align:center;text-wrap:balance;letter-spacing:-.01em;
}

.cfg2-cta{max-width:880px;margin:48px auto 0;padding-top:0;border-top:none;text-align:center}
.sub-br{display:inline}
@media(max-width:760px){.sub-br{display:none}}
#pakete .section-head h2{white-space:nowrap}
@media(max-width:620px){#pakete .section-head h2{white-space:normal}}
.ref-sub{white-space:nowrap}
#beweise .section-head{max-width:none}
@media(max-width:760px){.ref-sub{white-space:normal}#beweise .section-head{max-width:720px}}
.cfg2-cta-text{font-size:17px;line-height:1.6;color:var(--navy);max-width:60ch;margin:0 auto 26px;text-wrap:pretty}
.cfg2-cta-actions{display:flex;flex-wrap:wrap;gap:14px;justify-content:center}
.cfg2-cta .btn-primary{background:var(--or);border-color:var(--or);color:#fff;border-radius:999px;padding:17px 32px;font-size:16px;font-weight:600}
.cfg2-cta .btn-primary:hover{background:var(--or-h);border-color:var(--or-h);transform:translateY(-1px)}
.cfg2-cta .btn-outline{border-radius:999px;padding:17px 30px;font-size:16px;font-weight:600}
.cfg2-cta-foot{margin-top:22px;font-size:13.5px;color:var(--n40);line-height:1.5}

@media(max-width:600px){
  .cfg2-phase{padding:20px 18px}
  .cfg2-item{gap:12px;padding:14px 15px}
  .cfg2-item-name{font-size:15px}
  .cfg2-cta .btn-primary,.cfg2-cta .btn-outline{width:100%;justify-content:center}
}

/* ── (alt) bisheriger Preis-Konfigurator ── */
.cfg-bulk{
  display:flex;flex-wrap:wrap;gap:10px;
  margin-bottom:22px;
  padding:14px 16px;
  background:#fff;
  border:1px solid var(--n10);
  border-radius:var(--r-lg);
}
.cfg-bulk-btn{
  font-family:var(--mono);
  font-size:12px;font-weight:700;
  letter-spacing:.08em;text-transform:uppercase;
  padding:10px 16px;
  border-radius:99px;
  border:1.5px solid var(--n10);
  background:#fff;color:var(--navy);
  cursor:pointer;
  transition:all .18s var(--ease);
}
.cfg-bulk-btn:hover{border-color:var(--navy);transform:translateY(-1px)}
.cfg-bulk-btn.is-active{
  background:var(--navy);color:#fff;border-color:var(--navy);
}
.cfg-bulk-btn:focus-visible{outline:2px solid var(--grn);outline-offset:2px}
@media(max-width:560px){
  .cfg-bulk{padding:10px 12px}
  .cfg-bulk-btn{font-size:11px;padding:9px 12px;flex:1 1 auto;text-align:center}
}

.config{display:grid;grid-template-columns:1.1fr .9fr;gap:32px;align-items:start}
@media(max-width:960px){.config{grid-template-columns:1fr}}
.cfg-modules{display:flex;flex-direction:column;gap:12px}
.cfg-mod{
  background:#fff;border:1.5px solid var(--n10);border-radius:var(--r-lg);
  padding:22px 24px;cursor:pointer;transition:all .25s var(--ease);position:relative;overflow:hidden;
  text-align:left;width:100%;font-family:inherit;
}
.cfg-mod:hover{border-color:var(--navy)}
.cfg-mod.on{border-color:var(--or);background:var(--or-soft)}
.cfg-mod .mod-head{display:flex;align-items:center;gap:14px;margin-bottom:6px}
.cfg-mod .check{width:22px;height:22px;border:2px solid var(--n15);border-radius:6px;flex-shrink:0;transition:all .2s;display:flex;align-items:center;justify-content:center}
.cfg-mod.on .check{background:var(--or);border-color:var(--or)}
.cfg-mod.on .check::after{content:'';width:10px;height:6px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg) translate(1px,-1px)}
.cfg-mod .mod-t{font-family:var(--hd);font-size:16px;font-weight:700;letter-spacing:-.01em;flex:1}
.cfg-mod .mod-p{font-family:var(--hd);font-size:14px;font-weight:700;color:var(--navy)}
.cfg-mod.on .mod-p{color:var(--or-h)}
.cfg-mod .mod-d{font-size:13.5px;color:var(--n40);line-height:1.6;padding-left:36px}
.cfg-mod .mod-tag{display:inline-block;font-family:var(--mono);font-size:10px;letter-spacing:.1em;color:var(--n40);margin-left:36px;margin-top:8px;text-transform:uppercase}

.cfg-sum{
  position:sticky;top:100px;
  background:var(--navy);color:#fff;border-radius:var(--r-xl);padding:32px;
  box-shadow:var(--sh-3);
}
.cfg-sum h3{font-family:var(--hd);font-size:15px;font-weight:600;color:rgba(255,255,255,.85);margin-bottom:4px;letter-spacing:-.01em}
.cfg-sum .pkg{font-family:var(--hd);font-size:28px;font-weight:800;letter-spacing:-.025em;color:var(--or);margin-bottom:18px}
.cfg-sum-list{list-style:none;margin-bottom:22px;max-height:180px;overflow-y:auto}
.cfg-sum-list li{font-size:13.5px;color:rgba(255,255,255,.95);padding:8px 0;border-bottom:1px solid rgba(255,255,255,.12);display:flex;justify-content:space-between;align-items:center;gap:12px}
.cfg-sum-list li:last-child{border-bottom:none}
.cfg-sum-list li .s{color:#fff;font-weight:600}
.cfg-sum-empty{font-size:13px;color:rgba(255,255,255,.75);font-style:italic;padding:20px 0}
.cfg-sum-total{padding:18px 0;border-top:1px dashed rgba(255,255,255,.2);display:flex;justify-content:space-between;align-items:baseline;margin-bottom:14px}
.cfg-sum-total .tl{font-size:12px;color:rgba(255,255,255,.85);letter-spacing:.1em;text-transform:uppercase;font-family:var(--hd);font-weight:600}
.cfg-sum-total .tv{font-family:var(--hd);font-size:28px;font-weight:800;color:#fff;letter-spacing:-.025em}
.cfg-sum-total .tv .suf{font-size:13px;color:rgba(255,255,255,.8);font-weight:500;margin-left:4px}
.cfg-sum .btn-primary{width:100%;justify-content:center}
.cfg-sum .btn-outline{width:100%;justify-content:center;margin-top:14px;color:#fff;border:1.5px solid rgba(255,255,255,.3);background:transparent}
.cfg-sum .btn-outline:hover{border-color:#fff;background:rgba(255,255,255,.08)}
.cfg-sum .hint{font-size:12px;color:rgba(255,255,255,.85);text-align:center;margin-top:14px}

/* ======== BOOKING ======== */
.kl{max-width:680px;margin:0 auto;text-align:center}
.kl .h-lg{margin-bottom:16px}
.kl-lead{font-size:17px;line-height:1.65;color:var(--n40);max-width:56ch;margin:0 auto}
.kl-list{display:inline-block;text-align:left;margin:26px auto 0;max-width:460px}
.kl-list li{justify-content:flex-start}
.kl-actions{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;margin-top:34px}
.kl-actions .btn-primary{background:var(--or);border-color:var(--or);color:#fff;border-radius:999px;padding:17px 32px;font-size:16px;font-weight:600}
.kl-actions .btn-primary:hover{background:var(--or-h);border-color:var(--or-h);transform:translateY(-1px)}
.kl-actions .btn-outline{border-radius:999px;padding:17px 30px;font-size:16px;font-weight:600}
@media(max-width:560px){.kl-actions{flex-direction:column}.kl-actions .btn-primary,.kl-actions .btn-outline{width:100%;justify-content:center}}
.book-embed{padding:0;overflow:hidden;display:flex;flex-direction:column}
.book-iframe{width:100%;height:680px;border:0;display:block;background:#fff}
.book-embed-ph{padding:40px 32px;display:flex;flex-direction:column;align-items:flex-start;gap:14px;min-height:420px;justify-content:center}
.book-embed-badge{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--or-h);background:var(--or-soft);padding:5px 11px;border-radius:999px}
.book-embed-ph h3{font-family:var(--hd);font-size:22px;font-weight:700;color:var(--navy);letter-spacing:-.01em}
.book-embed-ph p{font-size:14.5px;line-height:1.6;color:var(--n40)}
.book-embed-ph code{font-family:var(--mono);font-size:12.5px;background:var(--n05);padding:2px 6px;border-radius:5px;color:var(--navy)}
.book-embed-ph .btn-primary{background:var(--or);border-color:var(--or);color:#fff;border-radius:999px;padding:14px 26px;margin-top:6px}
.book{display:grid;grid-template-columns:1fr 1fr;gap:56px}
@media(max-width:880px){.book{grid-template-columns:1fr;gap:32px}}
.book-left h2{margin-bottom:18px}
.book-left p{font-size:17px;line-height:1.65;color:#3F4A5C;margin-bottom:24px}
.book-list{list-style:none;margin-top:24px}
.book-list li{display:flex;gap:14px;font-size:15px;color:var(--navy);padding:12px 0;border-bottom:1px dashed var(--n10);align-items:flex-start}
.book-list li::before{content:'✓';color:var(--or);font-weight:700;font-size:16px;flex-shrink:0}
/* Webinar-Option (im Kennenlernen, nutzt freien Platz links) */
.book-webinar{
  display:flex;align-items:center;gap:16px;margin-top:28px;
  padding:18px 20px;border-radius:16px;
  background:#fff;border:1px solid var(--n10);
  text-decoration:none;position:relative;
  box-shadow:var(--sh-1);
  transition:transform .2s var(--ease), box-shadow .2s var(--ease), border-color .2s var(--ease);
}
.book-webinar::before{
  content:'';position:absolute;left:0;top:16px;bottom:16px;width:3px;border-radius:3px;background:var(--or);
}
.book-webinar:hover{transform:translateY(-2px);box-shadow:var(--sh-2);border-color:transparent}
.book-webinar-ic{flex-shrink:0;width:44px;height:44px;border-radius:12px;background:var(--or-soft);color:var(--or-h);display:flex;align-items:center;justify-content:center}
.book-webinar-ic svg{width:22px;height:22px}
.book-webinar-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.book-webinar-k{font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--or-h)}
.book-webinar-t{font-family:var(--hd);font-size:16px;font-weight:700;line-height:1.3;letter-spacing:-.01em;color:var(--navy)}
.book-webinar-s{font-size:13px;color:var(--n40)}
.book-webinar-arr{flex-shrink:0;color:var(--or);font-size:19px;font-weight:700;transition:transform .2s var(--ease)}
.book-webinar:hover .book-webinar-arr{transform:translateX(4px)}
@media(max-width:560px){.book-webinar{margin-top:22px}.book-webinar-s{display:none}}

/* ════════ WEBINAR-BAR (dynamisch, unten zentriert) ════════ */
.webinar-bar{
  position:fixed;left:50%;bottom:22px;z-index:80;
  transform:translate(-50%, 140%);
  display:flex;align-items:center;gap:16px;
  max-width:min(760px, calc(100vw - 28px));
  padding:13px 14px 13px 22px;
  background:var(--navy);color:#fff;
  border-radius:999px;
  box-shadow:0 22px 50px -16px rgba(12,28,54,.55), 0 0 0 1px rgba(255,255,255,.06) inset;
  opacity:0;pointer-events:none;
  transition:transform .5s var(--ease), opacity .4s var(--ease);
}
.webinar-bar.in{transform:translate(-50%,0);opacity:1;pointer-events:auto}
.webinar-bar-pulse{position:relative;flex-shrink:0;width:9px;height:9px;border-radius:50%;background:var(--or)}
.webinar-bar-pulse::after{content:'';position:absolute;inset:-5px;border-radius:50%;border:2px solid var(--or);animation:webPulse 2s ease-out infinite;opacity:0}
@keyframes webPulse{0%{transform:scale(.6);opacity:.8}100%{transform:scale(1.6);opacity:0}}
@media(prefers-reduced-motion:reduce){.webinar-bar-pulse::after{animation:none}}
.webinar-bar-body{flex:0 0 auto;min-width:0}
.webinar-bar-t{font-family:var(--hd);font-size:14px;font-weight:500;letter-spacing:-.01em;color:rgba(255,255,255,.82);white-space:nowrap;display:block}
.webinar-bar-t strong{color:#fff;font-weight:700}
.webinar-bar-cta{
  flex-shrink:0;display:inline-flex;align-items:center;gap:7px;
  background:var(--or);color:#fff;text-decoration:none;
  font-family:var(--hd);font-size:14px;font-weight:600;
  padding:11px 20px;border-radius:999px;white-space:nowrap;
  transition:background .2s, transform .2s;
}
.webinar-bar-cta:hover{background:var(--or-h);transform:translateY(-1px)}
.webinar-bar-close{
  flex-shrink:0;background:none;border:none;cursor:pointer;
  color:rgba(255,255,255,.5);font-size:22px;line-height:1;
  width:30px;height:30px;border-radius:50%;transition:color .2s, background .2s;
}
.webinar-bar-close:hover{color:#fff;background:rgba(255,255,255,.08)}
@media(max-width:600px){
  .webinar-bar{bottom:14px;gap:10px;padding:10px 10px 10px 18px}
  .webinar-bar-body{flex:1 1 auto;min-width:0}
  .webinar-bar-t{font-size:12.5px;white-space:normal;line-height:1.35}
  .webinar-bar-t strong{display:inline}
  .webinar-bar-cta{padding:10px 15px;font-size:13px}
}
.book-card{
  background:#fff;border:1px solid var(--n10);border-radius:var(--r-xl);padding:32px;
  box-shadow:var(--sh-2);
}
/* ── Buchungs-Chip (Antwortzeit) ── */
.book-chip{
  display:inline-flex;align-items:center;gap:10px;margin-top:26px;
  padding:11px 18px;border-radius:10px;background:var(--n05);
  font-family:var(--hd);font-size:14px;font-weight:600;color:var(--navy);
}
.book-chip svg{width:18px;height:18px;color:var(--or);flex-shrink:0}
/* ── Vorschau-Kalender ── */
.book-preview{display:flex;flex-direction:column;gap:20px}
.bp-cal{display:block;width:100%;text-align:left;background:none;border:none;cursor:pointer;padding:0}
.bp-month{display:flex;align-items:center;justify-content:center;gap:18px;margin-bottom:18px}
.bp-month .bp-m{font-family:var(--hd);font-size:19px;font-weight:700;color:var(--navy);letter-spacing:-.01em}
.bp-nav{font-size:22px;color:var(--n40);line-height:1}
.bp-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px 2px}
.bp-dow{font-family:var(--hd);font-size:11px;font-weight:600;letter-spacing:.06em;color:var(--n30);text-align:center;padding:6px 0 10px}
.bp-day{
  font-family:var(--hd);font-size:16px;font-weight:500;color:var(--navy);
  text-align:center;padding:11px 0;border-radius:9px;transition:background .15s;
}
.bp-day.other{color:transparent;pointer-events:none}
.bp-day.past{color:var(--n20)}
.bp-cal:hover .bp-day:not(.other):not(.past){background:var(--or-soft)}
.bp-cta{width:100%;justify-content:center;background:var(--navy);border-color:var(--navy);color:#fff;border-radius:12px;padding:18px;font-size:16px}
.bp-cta:hover{background:var(--navy-90);border-color:var(--navy-90);transform:translateY(-1px)}
.bp-foot{font-size:13px;color:var(--n30);text-align:center;line-height:1.5}
/* ── Bookings-Overlay ── */
.bk-overlay{
  position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;
  background:rgba(12,28,54,.55);backdrop-filter:blur(4px);padding:24px;
  animation:bkFade .2s var(--ease-out);
}
@keyframes bkFade{from{opacity:0}to{opacity:1}}
.bk-modal{
  background:#fff;border-radius:var(--r-xl);width:min(680px,100%);max-height:90vh;
  display:flex;flex-direction:column;overflow:hidden;box-shadow:0 40px 90px -30px rgba(0,0,0,.5);
  animation:bkPop .25s var(--ease-out);
}
@keyframes bkPop{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}
.bk-modal-head{display:flex;align-items:center;justify-content:space-between;padding:24px 26px 0}
.bk-modal-head h3{font-family:var(--hd);font-size:22px;font-weight:700;color:var(--navy);letter-spacing:-.01em}
.bk-close{background:none;border:none;cursor:pointer;font-size:26px;line-height:1;color:var(--n40);width:36px;height:36px;border-radius:8px;transition:background .15s}
.bk-close:hover{background:var(--n05);color:var(--navy)}
.bk-sub{padding:8px 26px 18px;font-size:14.5px;line-height:1.55;color:var(--n40)}
.bk-embed{flex:1;min-height:0;border-top:1px solid var(--n10)}
.bk-embed iframe{width:100%;height:min(620px,70vh);border:0;display:block}
@media(max-width:560px){.bk-modal-head h3{font-size:19px}.bk-embed iframe{height:74vh}}
.book-steps{display:flex;justify-content:space-between;margin-bottom:24px;position:relative}
.book-steps::before{content:'';position:absolute;top:14px;left:10%;right:10%;height:2px;background:var(--n10);z-index:0}
.book-step{display:flex;flex-direction:column;align-items:center;gap:6px;position:relative;z-index:1;flex:1}
.book-step .s-n{width:30px;height:30px;border-radius:50%;background:#fff;border:2px solid var(--n10);display:flex;align-items:center;justify-content:center;font-family:var(--hd);font-size:12px;font-weight:700;color:var(--n40);transition:all .3s}
.book-step.on .s-n{background:var(--or);border-color:var(--or);color:#fff;box-shadow:0 0 0 6px var(--or-glow)}
.book-step.done .s-n{background:var(--navy);border-color:var(--navy);color:#fff}
.book-step .s-l{font-size:11px;color:var(--n40);font-family:var(--hd);font-weight:600;letter-spacing:.05em;text-transform:uppercase}
.book-step.on .s-l{color:var(--or)}

.book-panel{min-height:340px}
.book-panel h3{font-family:var(--hd);font-size:20px;font-weight:700;margin-bottom:16px;letter-spacing:-.01em}

/* Calendar */
.cal-month{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
.cal-month .m{font-family:var(--hd);font-weight:700;font-size:15px}
.cal-month button{background:none;border:1px solid var(--n10);width:28px;height:28px;border-radius:6px;cursor:pointer;color:var(--n40)}
.cal-month button:hover{border-color:var(--navy);color:var(--navy)}
.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}
.cal-dow{font-family:var(--hd);font-size:10px;color:var(--n40);text-align:center;letter-spacing:.05em;padding:4px 0;text-transform:uppercase}
.cal-day{aspect-ratio:1;background:none;border:1px solid transparent;border-radius:8px;font-family:inherit;font-size:13px;font-weight:500;color:var(--navy);cursor:pointer;transition:all .15s}
.cal-day:hover:not(:disabled){background:var(--n05);border-color:var(--n10)}
.cal-day:disabled{color:var(--n15);cursor:default}
.cal-day.avail{color:var(--navy);font-weight:600}
.cal-day.avail::after{content:'';display:block;width:4px;height:4px;border-radius:50%;background:var(--or);margin:3px auto 0}
.cal-day.on{background:var(--navy);color:#fff;border-color:var(--navy)}
.cal-day.on::after{background:#fff}
.cal-day.other{color:var(--n15)}

/* Time slots */
.slot-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:16px}
.slot{background:#fff;border:1.5px solid var(--n10);border-radius:8px;padding:12px 10px;font-size:13px;font-weight:600;color:var(--navy);cursor:pointer;font-family:inherit;transition:all .15s;text-align:center}
.slot:hover{border-color:var(--navy)}
.slot.on{background:var(--or);border-color:var(--or);color:#fff}

.book-form{display:flex;flex-direction:column;gap:14px;margin-top:4px}
.book-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:520px){.book-row{grid-template-columns:1fr}}
.book-field label{font-family:var(--hd);font-size:11px;font-weight:600;letter-spacing:.08em;color:var(--n40);text-transform:uppercase;margin-bottom:6px;display:block}
.book-field input,.book-field textarea,.book-field select{
  width:100%;font-family:inherit;font-size:14px;padding:11px 14px;
  border:1.5px solid var(--n10);border-radius:8px;background:#fff;color:var(--navy);
  transition:border-color .15s;
}
.book-field input:focus,.book-field textarea:focus,.book-field select:focus{outline:none;border-color:var(--or)}
.book-field textarea{resize:vertical;min-height:80px;font-family:inherit}

.book-confirm{text-align:center;padding:30px 10px}
.book-confirm .ic{width:64px;height:64px;border-radius:50%;background:var(--or-soft);display:flex;align-items:center;justify-content:center;margin:0 auto 20px}
.book-confirm .ic svg{width:32px;height:32px;stroke:var(--or);stroke-width:3;fill:none}
.book-confirm h3{font-family:var(--hd);font-size:22px;font-weight:700;margin-bottom:10px}
.book-confirm p{font-size:15px;color:var(--n40);line-height:1.6;max-width:380px;margin:0 auto 14px}
.book-confirm .det{background:var(--n03);border-radius:10px;padding:16px;font-size:14px;color:var(--navy);margin:20px 0;text-align:left;font-weight:500;line-height:1.8}
.book-confirm .det .k{font-family:var(--mono);font-size:10px;color:var(--n40);letter-spacing:.1em;text-transform:uppercase;margin-right:10px;font-weight:400}

.book-btns{display:flex;justify-content:space-between;margin-top:20px;gap:10px}
.book-btn-back{background:transparent;border:none;color:var(--n40);font-size:13px;font-weight:600;cursor:pointer;font-family:inherit}
.book-btn-back:hover{color:var(--navy)}

/* ======== FAQ ======== */
.faq-wrap{max-width:780px;margin:0 auto}
.faq-item{border-bottom:1px solid var(--n10);padding:6px 0}
.faq-q{
  font-family:var(--hd);font-size:17px;font-weight:600;letter-spacing:-.01em;
  cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;
  padding:22px 0;background:none;border:none;width:100%;text-align:left;color:inherit;
}
.faq-q:hover{color:var(--or)}
.faq-q .ic{width:28px;height:28px;border-radius:50%;border:1.5px solid var(--n10);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .3s;color:var(--or)}
.faq-item.on .faq-q .ic{background:var(--or);border-color:var(--or);color:#fff;transform:rotate(45deg)}
.faq-a{max-height:0;overflow:hidden;transition:max-height .4s var(--ease),padding .3s;font-size:15px;color:var(--n40);line-height:1.7}
.faq-item.on .faq-a{max-height:400px;padding:0 0 22px}

/* ======== FINAL CTA ======== */
.final{
  padding:var(--sp-sect) 0;text-align:center;
  background:
    radial-gradient(800px 400px at 50% 0%, rgba(0,166,160,.18) 0%, transparent 60%),
    var(--navy);
  color:#fff;position:relative;overflow:hidden;
}
.final::before{content:'//';position:absolute;top:10%;left:50%;transform:translateX(-50%);font-family:var(--hd);font-size:600px;font-weight:900;color:var(--or);opacity:.04;line-height:1;letter-spacing:-.1em;pointer-events:none}
.final-in{position:relative;z-index:1;max-width:680px;margin:0 auto}
.final h2{font-family:var(--hd);font-size:clamp(36px,4.6vw,58px);font-weight:700;line-height:1.08;letter-spacing:-.03em;margin-bottom:22px;color:#fff}
.final h2 .em{color:var(--or)}
.final p{font-size:19px;color:rgba(255,255,255,.75);margin-bottom:38px;line-height:1.6}
.final .cta-row{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}
.final .btn-outline{color:#fff;border-color:rgba(255,255,255,.3)}
.final .btn-outline:hover{border-color:#fff;background:rgba(255,255,255,.08)}
.final-re{font-size:14px;color:rgba(255,255,255,.78);margin-top:26px;display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:center}
.final-re a{color:#fff;font-weight:600;text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--or);text-decoration-thickness:2px;border-radius:3px}
.final-re a:hover{color:var(--or)}
.final-re a:focus-visible{outline:2px solid var(--or);outline-offset:3px}

/* Footer */
footer{padding:40px 0;background:#000;color:rgba(255,255,255,.5)}
footer .fr{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;font-size:12px}
footer a{color:rgba(255,255,255,.5);transition:color .2s}
footer a:hover{color:var(--or)}
footer .f-links{display:flex;gap:24px}

/* ======== MODAL ======== */
.modal-overlay{position:fixed;inset:0;background:rgba(12,28,54,.6);backdrop-filter:blur(6px);z-index:200;display:none;align-items:center;justify-content:center;padding:20px}
.modal-overlay.on{display:flex}
.modal{background:#fff;border-radius:var(--r-xl);max-width:640px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 30px 80px rgba(0,0,0,.3)}
.modal-head{padding:26px 30px 0;display:flex;justify-content:space-between;align-items:flex-start;gap:20px}
.modal-head h3{font-family:var(--hd);font-size:22px;font-weight:700;letter-spacing:-.015em;line-height:1.25}
.modal-close{background:none;border:none;font-size:24px;cursor:pointer;color:var(--n40);line-height:1;padding:4px;border-radius:6px;transition:all .15s}
.modal-close:hover{background:var(--n05);color:var(--navy)}
.modal-body{padding:20px 30px 30px}

/* ======== MOBILE REFINEMENTS ======== */
@media(max-width:640px){
  .container{padding:0 20px}
  .section-head{margin-bottom:28px}

  /* Hero */
  .hero{padding:116px 0 72px}
  .hero .slash-deco{display:none}
  .hero h1{font-size:clamp(36px,9vw,46px);margin-bottom:22px;letter-spacing:-.025em}
  .hero p.sub{font-size:16px;margin-bottom:28px}
  .hero-ctas{gap:10px;margin-bottom:26px}
  .hero-ctas .btn-lg{width:100%;justify-content:center}
  .hero-proof{gap:18px;padding-top:18px}
  .hp-sep{display:none}
  .hero-chip{font-size:12px;padding:6px 12px 6px 7px;margin-bottom:22px}

  /* Stack cards: smaller, contained */
  .hero-right{height:340px;max-width:320px}
  .stack-card{padding:16px}
  .sc-head .t{font-size:12px}
  .sc-card-body{font-size:11px}

  /* Trust strip */
  .trust-strip{padding:28px 0}
  .trust-row{gap:22px}
  .trust-label{font-size:10px}
  .trust-logo{font-size:13px}
  .trust-logos{gap:22px}
  .trust-stats{gap:22px}
  .trust-stat .n{font-size:24px}

  /* Pain cards */
  .pain-card{padding:26px 22px}
  .pain-card h3{font-size:17px}

  /* Assessment */
  .assess-card{padding:32px 22px;border-radius:20px}
  .assess-card::before{font-size:200px;top:-20px}
  .assess-card .inner{gap:28px}
  .assess-card h2{font-size:26px}
  .assess-ui{padding:20px}
  .assess-q{font-size:15px;min-height:auto}
  .assess-opt{padding:12px 14px;font-size:13px}
  .assess-score-n{font-size:52px}

  /* Method / phases */
  .method-head{margin-bottom:32px}
  .phase-tabs{
    grid-template-columns:1fr 1fr;
    gap:8px;padding:6px;
  }
  .phase-tab{padding:14px 12px}
  .phase-tab .t{font-size:14px}
  .phase-body{padding:28px 22px;gap:8px}
  .phase-left h3{font-size:22px}
  .phase-left p{font-size:15px}
  .phase-right{padding:22px}
  .phase-nav{padding:12px 22px}
  .phase-btn{padding:8px 12px;font-size:12px}

  /* Cases */
  .case-body{padding:22px}
  .case-body h3{font-size:16px}
  .case-metrics{gap:10px;padding-top:14px}
  .case-metric .mn{font-size:20px}

  /* Quote break */
  .quote-break::before{font-size:220px;top:20px}
  .quote-break blockquote{font-size:24px}
  .quote-break .claim{font-size:12px;letter-spacing:.24em}

  /* Founders */
  .founder-top{padding:26px 22px;grid-template-columns:1fr;text-align:center;gap:18px}
  .founder-photo{margin:0 auto;width:140px;height:140px}
  .founder-name{justify-content:center;font-size:22px}
  .founder-bio{font-size:13.5px;text-align:left}
  .founder-quote{margin:0 22px 22px;padding:12px 0 12px 16px;font-size:13.5px}
  .founder-foot{padding:18px 22px;gap:12px}

  /* KI */
  .ki-grid{gap:32px}
  .ki-card{padding:20px 22px;margin-bottom:0}
  .ki-card h4{font-size:16px}
  .ki-card p{font-size:13.5px}

  /* Config */
  .config{gap:24px}
  .cfg-mod{padding:18px 20px}
  .cfg-mod .mod-t{font-size:15px}
  .cfg-mod .mod-d{font-size:13px;padding-left:36px}
  .cfg-sum{position:static;padding:26px 22px}
  .cfg-sum .pkg{font-size:24px}
  .cfg-sum-total .tv{font-size:24px}

  /* Booking */
  .book-card{padding:24px 20px}
  .book-panel{min-height:300px}
  .book-steps .s-l{font-size:9px;letter-spacing:.02em}
  .cal-grid{gap:2px}
  .cal-day{font-size:12px;border-radius:6px}
  .slot-grid{grid-template-columns:repeat(3,1fr);gap:6px}
  .slot{padding:10px 6px;font-size:12px}
  .book-field input,.book-field textarea,.book-field select{font-size:15px;padding:12px 13px}
  .book-btns .btn{flex:1;justify-content:center}

  /* FAQ */
  .faq-q{font-size:15.5px;padding:18px 0;gap:12px}
  .faq-a{font-size:14px}

  /* Final */
  .final::before{font-size:340px}
  .final h2{font-size:34px}
  .final p{font-size:16px;margin-bottom:28px}
  .final .btn-lg{width:100%;justify-content:center}
  .final .cta-row{flex-direction:column;gap:10px}

  /* Footer */
  footer .fr{flex-direction:column;align-items:flex-start}

  /* ── Mobile tightening (Scroll-Tiefe) ── */
  /* Gestapelte Karten-Grids: engere Abstände */
  .pain-grid{gap:14px}
  .founders-grid{gap:18px}
  .rc-grid{gap:12px}

  /* Konfigurator (pakete) — der längste Block · Mobile-Accordion */
  .cfg2-phases{gap:12px}
  .cfg2-phase{padding:18px 16px}
  .cfg2-phase.open .cfg2-phase-head{margin-bottom:14px}
  .cfg2-item{padding:13px 14px}
  .cfg2-lead{margin-bottom:24px;font-size:15.5px}
  .cfg2-cta{margin-top:36px;padding-top:0}
  .cfg2-cta-text{margin-bottom:22px}
  .cfg2-cta-foot{margin-top:18px}

  /* Artefakte / Lieferung */
  .art-body{padding:18px 20px}

  /* Newsletter */
  .nl-left,.nl-right{padding:28px 24px}
}

/* ======== INTERACTIONS & MICRO-ANIMATIONS (added) ======== */

/* Phase tab: relative + autoplay progress bar */
.phase-tab{position:relative;overflow:hidden}
.phase-tab-prog{
  position:absolute;left:0;right:0;bottom:0;height:3px;
  background:rgba(255,255,255,.85);box-shadow:0 0 6px rgba(255,255,255,.4);transform-origin:left center;
  transform:scaleX(0);animation:phaseProg 7s linear forwards;
}
@keyframes phaseProg{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.phase-tab.on:not(.p1):not(.p2):not(.p3) .phase-tab-prog{background:rgba(255,255,255,.8)}

/* Hero stack-cards — gentle float */
@keyframes floatA{0%,100%{transform:translate(0,0) rotate(-4deg)}50%{transform:translate(0,-6px) rotate(-4deg)}}
@keyframes floatB{0%,100%{transform:translate(0,0) rotate(0deg)}50%{transform:translate(0,-4px) rotate(0deg)}}
@keyframes floatC{0%,100%{transform:translate(0,0) rotate(5deg)}50%{transform:translate(0,-8px) rotate(5deg)}}
.stack-card.sc-a{animation:floatA 7s ease-in-out infinite}
.stack-card.sc-b{animation:floatB 6.5s ease-in-out .4s infinite}
.stack-card.sc-c{animation:floatC 7.5s ease-in-out .8s infinite}
@media (prefers-reduced-motion:reduce){
  .stack-card.sc-a,.stack-card.sc-b,.stack-card.sc-c{animation:none}
}

/* Case cards — hover elevation, image zoom, metric lift */
.case{transition:transform .45s var(--ease),border-color .25s,box-shadow .45s var(--ease)}
.case:hover{transform:translateY(-6px);box-shadow:var(--sh-3);border-color:var(--n15)}
.case-img{overflow:hidden}
.case:hover .case-img img{transform:scale(1.06)}
.case-metric{transition:transform .35s var(--ease)}
.case:hover .case-metric{transform:translateY(-2px)}
.case:hover .case-metric .mn{color:var(--or)}
.case .case-metric .mn{transition:color .3s}

/* KI cards — hover reveal arrow */
.ki-card{position:relative;padding-right:44px}
.ki-card::after{
  content:'→';position:absolute;right:20px;top:24px;
  font-family:var(--hd);font-size:18px;color:var(--or);
  opacity:0;transform:translateX(-6px);transition:all .3s var(--ease);
}
.ki-card:hover::after{opacity:1;transform:translateX(0)}

/* Booking step transitions */
.book-panel{position:relative}
.book-panel > *{animation:bookIn .35s var(--ease-out)}
@keyframes bookIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

/* Quote-break parallax — uses CSS custom prop set via JS */
.quote-break::before{
  transform:translateX(-50%) translateY(calc(var(--par,0) * 1px));
  will-change:transform;
  transition:none;
}

/* Logo echo in final CTA */
.final-logo-echo{
  position:absolute;bottom:14px;left:50%;transform:translateX(-50%);
  width:min(1180px,122vw);line-height:0;
  pointer-events:none;
  z-index:0;
}
.final-logo-echo img{
  display:block;width:100%;height:auto;
  opacity:.045;filter:brightness(0) invert(1);
}

/* Rail indicator — small visual refinement */
.rail-item{transition:opacity .3s}
.rail-item:hover .lbl{opacity:1;transform:translateX(0)}

@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}


/* ════════ ADDITIONS v2 ════════ */

/* Mobile section dots — replaces side-rail on mobile */
.msec{
  position:fixed;top:14px;right:18px;z-index:88;
  display:none;align-items:center;gap:8px;
  background:rgba(255,255,255,.92);backdrop-filter:blur(10px);
  border:1px solid var(--n10);border-radius:100px;
  padding:6px 12px 6px 8px;font-family:var(--hd);
  opacity:0;transform:translateY(-6px);transition:opacity .35s,transform .35s;
  box-shadow:var(--sh-1);
}
.msec.on{opacity:1;transform:none}
.msec-i{font-family:var(--mono);font-size:10px;font-weight:700;color:var(--or);background:var(--or-soft);padding:2px 6px;border-radius:6px;letter-spacing:.05em}
.msec-l{font-size:11px;font-weight:600;color:var(--navy);letter-spacing:.04em;text-transform:uppercase}
@media(max-width:1100px){.msec{display:flex}}
@media(max-width:1100px){.prog{height:3px;background:rgba(255,255,255,.5)}}

/* Quiz result actions */
.assess-actions{display:flex;gap:8px;flex-wrap:wrap}
.assess-action{
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.2);
  color:#fff;font-family:inherit;font-size:12px;font-weight:600;
  padding:9px 14px;border-radius:8px;cursor:pointer;
  display:inline-flex;align-items:center;gap:7px;transition:all .2s;
}
.assess-action:hover{background:rgba(0,166,160,.18);border-color:var(--or);color:#fff}
.assess-action svg{flex-shrink:0}

/* Booking consent checkbox */
.book-consent{
  display:flex;gap:10px;align-items:flex-start;
  font-size:12px;line-height:1.55;color:var(--n40);
  padding:10px 12px;background:var(--n03);border:1px solid var(--n10);
  border-radius:8px;cursor:pointer;
  margin:6px 0;
}
.book-consent input{
  margin-top:2px;width:16px;height:16px;flex-shrink:0;
  accent-color:var(--or);cursor:pointer;
}
.book-consent a{color:var(--or);text-decoration:underline}

/* ════════ COOKIE BANNER ════════ */
.cc-banner{
  position:fixed;left:16px;right:16px;bottom:16px;z-index:300;
  background:#fff;border:1px solid var(--n10);border-radius:14px;
  box-shadow:0 12px 48px rgba(12,28,54,.18),0 2px 8px rgba(12,28,54,.06);
  padding:18px 22px;
  animation:ccIn .45s var(--ease-out);
  max-width:760px;margin:0 auto;
}
@keyframes ccIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
.cc-inner{display:flex;gap:24px;align-items:center}
.cc-text{flex:1;min-width:0}
.cc-title{font-family:var(--hd);font-weight:700;font-size:14px;color:var(--navy);margin-bottom:6px;display:flex;align-items:center;gap:6px;letter-spacing:-.01em}
.cc-slash{color:var(--or);font-weight:900;letter-spacing:-.06em}
.cc-text p{font-size:12.5px;color:var(--n50);line-height:1.55;margin:0}
.cc-text strong{color:var(--navy);font-weight:600}
.cc-link{
  background:none;border:none;color:var(--or);text-decoration:underline;
  font:inherit;cursor:pointer;padding:0;font-weight:600;
}
.cc-details{margin-top:10px;padding:10px 12px;background:var(--n03);border-radius:8px;font-size:11.5px;color:var(--n50);line-height:1.6}
.cc-details > div{margin-bottom:4px}
.cc-details a{color:var(--or)}
.cc-actions{display:flex;gap:10px;align-items:center;flex-shrink:0}
.cc-secondary{
  font-size:12px;color:var(--n40);font-weight:500;text-decoration:none;
  padding:8px 4px;
}
.cc-secondary:hover{color:var(--navy)}
.cc-primary{
  background:var(--navy);color:#fff;border:none;
  font-family:var(--bd);font-size:13px;font-weight:600;
  padding:10px 20px;border-radius:8px;cursor:pointer;
  transition:all .2s;
}
.cc-primary:hover{background:#000}
@media(max-width:640px){
  .cc-banner{left:8px;right:8px;bottom:8px;padding:16px}
  .cc-inner{flex-direction:column;align-items:stretch;gap:14px}
  .cc-actions{justify-content:space-between;width:100%}
  .cc-primary{flex:1;padding:12px 18px}
}

/* ════════ ARTEFAKTE ════════ */
.art-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
@media(max-width:780px){.art-grid{grid-template-columns:1fr}}
.art-card{
  background:#fff;border:1px solid var(--n10);border-radius:var(--r-lg);
  overflow:hidden;display:flex;flex-direction:column;
  transition:all .35s var(--ease);
}
.art-card:hover{transform:translateY(-3px);box-shadow:var(--sh-2);border-color:var(--n15)}
.art-visual{aspect-ratio:3/2;background:var(--n03);overflow:hidden;border-bottom:1px solid var(--n10)}
.art-visual .art-svg{width:100%;height:100%;display:block}
.art-visual .art-img{width:100%;height:100%;object-fit:fill;display:block}

/* Bild-Slider in der Werkzeug-Kachel */
.art-slider{position:relative;width:100%;height:100%}
.art-slider-viewport{position:relative;width:100%;height:100%;overflow:hidden;background:#fff}
.art-slider-lead{width:100%;height:100%;background:#fff;animation:artSlideFade .4s ease}
.art-slider-lead .bf-anim{width:100%;height:100%;display:block}
.art-slider-img{width:100%;height:100%;object-fit:cover;background:#fff;display:block;animation:artSlideFade .4s ease}
@keyframes artSlideFade{from{opacity:.35}to{opacity:1}}
/* Dezenter Tinten-Wisch beim Reinscrollen (einmalig, erstes Bild) — Overlay schiebt sich weg */
.art-slider-viewport::after{content:"";position:absolute;inset:0;z-index:4;background:var(--n03,#F6F7F8);pointer-events:none;opacity:0}
.art-slider.wipe-arm .art-slider-viewport::after{opacity:1;transform:translateX(0)}
.art-slider.wipe-arm.wipe-go .art-slider-viewport::after{animation:inkWipe .85s cubic-bezier(.45,0,.2,1) forwards}
@keyframes inkWipe{from{transform:translateX(0)}to{transform:translateX(101%)}}
@media(prefers-reduced-motion:reduce){.art-slider.wipe-arm .art-slider-viewport::after{opacity:0!important;animation:none!important}}
.art-slider-counter{position:absolute;top:10px;right:10px;z-index:3;font-family:var(--mono);font-size:11px;font-weight:600;color:var(--navy);background:rgba(255,255,255,.88);border:1px solid var(--n10);padding:3px 9px;border-radius:999px;backdrop-filter:blur(3px)}
.art-slider-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.9);border:1px solid var(--n10);color:var(--navy);display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:opacity .25s,background .2s,color .2s;box-shadow:0 4px 12px -4px rgba(12,28,54,.3)}
.art-visual:hover .art-slider-arrow{opacity:1}
.art-slider-arrow:hover{background:var(--or);border-color:var(--or);color:#fff}
.art-slider-arrow.prev{left:10px}
.art-slider-arrow.next{right:10px}
.art-slider-arrow svg{width:16px;height:16px}
.art-slider-dots{position:absolute;bottom:11px;left:50%;transform:translateX(-50%);z-index:3;display:flex;gap:6px}
.art-slider-dot{width:7px;height:7px;border-radius:50%;background:var(--n15);border:none;cursor:pointer;padding:0;transition:all .25s}
.art-slider-dot.on{width:20px;border-radius:4px;background:var(--or)}
.art-slider-dot:hover:not(.on){background:var(--n30,#7B8597)}
.art-slider-tabs{position:absolute;left:0;right:0;bottom:0;z-index:3;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:0;background:rgba(255,255,255,.92);border-top:1px solid var(--n10);backdrop-filter:blur(4px)}
.art-slider-tab{font-family:var(--hd);font-weight:700;font-size:13px;letter-spacing:.01em;color:var(--n40);background:none;border:none;border-right:1px solid var(--n10);padding:9px 4px;cursor:pointer;transition:color .2s,background .2s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.art-slider-tab:last-child{border-right:none}
.art-slider-tab.on{color:var(--or);background:var(--or-soft,rgba(0,166,160,.1))}
.art-slider-tab:hover:not(.on){color:var(--navy)}

/* Labeled slider (N·E·X·T): Tab-Leiste UNTER dem Bild, überlagert nichts */
.art-visual--tabs{aspect-ratio:auto;overflow:visible}
.art-visual--tabs .art-slider{display:flex;flex-direction:column;height:auto}
.art-visual--tabs .art-slider-viewport{aspect-ratio:3/2;height:auto;flex:0 0 auto;border-bottom:1px solid var(--n10)}
.art-visual--tabs .art-slider-tabs{position:static;background:#fff;backdrop-filter:none}
@media(hover:none){.art-slider-arrow{opacity:1;background:rgba(255,255,255,.82);width:44px;height:44px}.art-slider-arrow.prev{left:8px}.art-slider-arrow.next{right:8px}}

/* Ink-Reveal: Bild-Kacheln „zeichnen" sich beim Scrollen von links nach rechts ein
   (nur .art-img; das Back-/Forecasting-SVG hat seine eigene Animation) */
@property --art-wipe{syntax:'<percentage>';inherits:false;initial-value:108%}
@keyframes artInkWipe{from{--art-wipe:0%}to{--art-wipe:108%}}
@media (prefers-reduced-motion:no-preference){
  @supports (mask-image:linear-gradient(#000,#000)) or (-webkit-mask-image:linear-gradient(#000,#000)){
    .art-card .art-img{
      -webkit-mask-image:linear-gradient(90deg,#000 0,#000 var(--art-wipe),transparent calc(var(--art-wipe) + 9%),transparent 100%);
              mask-image:linear-gradient(90deg,#000 0,#000 var(--art-wipe),transparent calc(var(--art-wipe) + 9%),transparent 100%);
    }
    .art-card.v .art-img{animation:artInkWipe 1.5s cubic-bezier(.55,.12,.3,1) forwards}
    .art-card.rv-d2.v .art-img{animation-delay:.15s}
    .art-card.rv-d3.v .art-img{animation-delay:.3s}
  }
}

/* Back-/Forecasting animierte Grafik */
.bf-anim{width:100%;height:100%;display:block;background:#FFFFFF;font-family:'Caveat',cursive}
.bf-axes path{stroke:#13233F;stroke-width:3;fill:none;stroke-linecap:round}
.bf-arrow{fill:#13233F}
.bf-fore{stroke:#E0322E;stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round}
.bf-back{stroke:#1E9E57;stroke-width:3.5;stroke-linecap:round}
.bf-steps{stroke:#13233F;stroke-width:1.6;opacity:.62}
.bf-h{font-family:'Caveat',cursive;font-weight:700;font-size:19px;letter-spacing:.02em}
.bf-s{font-family:'Caveat',cursive;font-weight:700;font-size:13px;fill:#2A3A56}
.bf-label-back .bf-h,.bf-label-ziel .bf-h{fill:#1E9E57}
.bf-label-fore .bf-h{fill:#E0322E}

/* Startzustand nur, wenn JS armiert hat (sonst sichtbarer Endzustand = print/no-JS/reduced-motion) */
.bf-anim.arm .bf-fore,
.bf-anim.arm .bf-back,
.bf-anim.arm .bf-steps,
.bf-anim.arm .bf-ul{stroke-dasharray:1;stroke-dashoffset:1}
.bf-anim.arm .bf-wp,
.bf-anim.arm .bf-ziel,
.bf-anim.arm .bf-h,
.bf-anim.arm .bf-s{opacity:0}
.bf-anim.arm .bf-wp,
.bf-anim.arm .bf-ziel{transform:scale(.4);transform-origin:center;transform-box:fill-box}

/* Abspielen — Reihenfolge: rote Linie → FORECASTING → grün rückwärts → schwarze Punkte → übrige Labels */
.bf-anim.arm.play .bf-fore{transition:stroke-dashoffset 1.4s cubic-bezier(.5,.1,.6,.9) .2s;stroke-dashoffset:0}
.bf-anim.arm.play .bf-label-fore .bf-h{transition-delay:1.7s}
.bf-anim.arm.play .bf-label-fore .bf-ul{transition-delay:1.7s}
.bf-anim.arm.play .bf-label-fore .bf-s{transition-delay:1.7s}
.bf-anim.arm.play .bf-ziel{transition:opacity .4s ease 2.2s, transform .5s cubic-bezier(.2,1.5,.4,1) 2.2s;opacity:1;transform:scale(1)}
.bf-anim.arm.play .bf-ziel{animation:bfPulse 1.4s ease-out 2.9s 1}
.bf-anim.arm.play .bf-back{transition:stroke-dashoffset 1.4s cubic-bezier(.25,.8,.35,1) 2.3s;stroke-dashoffset:0}
.bf-anim.arm.play .bf-steps{transition:stroke-dashoffset 1.2s ease-out 2.5s;stroke-dashoffset:0}
.bf-anim.arm.play .bf-wp{transition:opacity .35s ease, transform .45s cubic-bezier(.2,1.4,.4,1)}
.bf-anim.arm.play .bf-wp{opacity:1;transform:scale(1)}
.bf-anim.arm.play .bf-wp3{transition-delay:3.8s}
.bf-anim.arm.play .bf-wp2{transition-delay:4.0s}
.bf-anim.arm.play .bf-wp1{transition-delay:4.2s}
.bf-anim.arm.play .bf-ul{transition:stroke-dashoffset .5s ease-out;stroke-dashoffset:0}
.bf-anim.arm.play .bf-h,
.bf-anim.arm.play .bf-s{transition:opacity .5s ease;opacity:1}
.bf-anim.arm.play .bf-label-ziel .bf-h,
.bf-anim.arm.play .bf-label-ziel .bf-ul,
.bf-anim.arm.play .bf-label-ziel .bf-s{transition-delay:4.45s}
.bf-anim.arm.play .bf-label-back .bf-h{transition-delay:4.65s}
.bf-anim.arm.play .bf-label-back .bf-ul{transition-delay:4.65s}
.bf-anim.arm.play .bf-label-back .bf-s{transition-delay:4.65s}
@keyframes bfPulse{0%{filter:none}30%{filter:drop-shadow(0 0 6px rgba(30,158,87,.55))}100%{filter:none}}
@media (prefers-reduced-motion: reduce){
  .bf-anim .bf-axes path,.bf-anim .bf-fore,.bf-anim .bf-back,.bf-anim .bf-steps,.bf-anim .bf-ul{stroke-dashoffset:0!important}
  .bf-anim .bf-arrow,.bf-anim .bf-wp,.bf-anim .bf-ziel,.bf-anim .bf-h,.bf-anim .bf-s{opacity:1!important;transform:none!important}
}
.art-body{padding:24px 26px}
.art-label{font-family:var(--mono);font-size:10px;letter-spacing:.15em;color:var(--or);text-transform:uppercase;margin-bottom:10px}
.art-body h3{font-family:var(--hd);font-size:18px;font-weight:700;letter-spacing:-.01em;margin-bottom:6px;line-height:1.25}
.art-sub{font-family:var(--hd);font-size:13px;font-weight:500;color:var(--n40);margin-bottom:14px}
.art-body p{font-size:14px;line-height:1.65;color:var(--n50);margin:0}
@media(max-width:640px){
  .art-body{padding:20px 22px}
  .art-body h3{font-size:17px}
  .art-body p{font-size:15px}
}

/* ════════ NEWSLETTER ════════ */
.nl-section{padding:var(--sp-sect) 0;background:var(--warm)}
.nl-card{
  background:#fff;border:1px solid var(--n10);border-radius:var(--r-xl);
  display:grid;grid-template-columns:1.1fr .9fr;gap:0;overflow:hidden;
  box-shadow:var(--sh-2);
}
@media(max-width:880px){.nl-card{grid-template-columns:1fr}}
.nl-left{padding:48px 52px;background:linear-gradient(135deg,var(--navy) 0%,#152849 100%);color:#fff;position:relative;overflow:hidden}
.nl-left::before{content:'05';position:absolute;top:-20px;right:-30px;font-family:var(--hd);font-size:280px;font-weight:900;color:rgba(0,166,160,.07);line-height:1;letter-spacing:-.05em;pointer-events:none;z-index:0}
.nl-left .eye{position:relative;z-index:2}
.nl-left h2{font-family:var(--hd);font-size:clamp(28px,3.4vw,42px);font-weight:700;color:#fff;line-height:1.08;letter-spacing:-.025em;margin-bottom:18px;position:relative;z-index:2}
.nl-left h2 .em{color:var(--or)}
.nl-left p{font-size:15.5px;color:rgba(255,255,255,.78);line-height:1.65;margin-bottom:24px;position:relative;z-index:2}
.nl-list{list-style:none;padding:0;position:relative;z-index:2;margin:0}
.nl-list li{display:flex;gap:15px;align-items:center;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.1)}
.nl-list li:last-child{border-bottom:none}
.nl-list .nl-txt{font-family:var(--hd);font-size:15.5px;font-weight:500;letter-spacing:-.01em;color:#fff;line-height:1.35}
.nl-list .nl-num{font-family:var(--hd);font-size:12px;font-weight:700;color:#0C1C36;background:#3CC6C0;width:26px;height:26px;min-width:26px;display:inline-flex;align-items:center;justify-content:center;border-radius:7px;flex-shrink:0;letter-spacing:0}
.nl-right{padding:48px 52px;display:flex;flex-direction:column;justify-content:center;background:#fff}
@media(max-width:640px){.nl-left,.nl-right{padding:32px 26px}}
.nl-label{font-family:var(--hd);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--n40);display:block;margin-bottom:8px}
.nl-input{
  width:100%;font-family:inherit;font-size:15px;
  padding:14px 16px;border:1.5px solid var(--n10);border-radius:10px;
  background:#fff;color:var(--navy);margin-bottom:16px;
  transition:border-color .2s;
}
.nl-input:focus{outline:none;border-color:var(--or)}
.nl-consent{
  display:flex;gap:10px;align-items:flex-start;
  font-size:12px;color:var(--n50);line-height:1.55;
  margin-bottom:18px;cursor:pointer;
}
.nl-consent input{margin-top:2px;width:16px;height:16px;accent-color:var(--or);cursor:pointer;flex-shrink:0}
.nl-consent a{color:var(--or);text-decoration:underline}
.nl-meta{font-size:11px;color:var(--n30);text-align:center;margin-top:14px;letter-spacing:.02em}
.nl-done{text-align:center;padding:20px 10px}
.nl-check{width:64px;height:64px;border-radius:50%;background:var(--or-soft);color:var(--or);display:flex;align-items:center;justify-content:center;margin:0 auto 18px}
.nl-done h3{font-family:var(--hd);font-size:22px;font-weight:700;margin-bottom:10px;letter-spacing:-.01em}
.nl-done p{font-size:14.5px;color:var(--n40);line-height:1.6}

/* ════════ ZUKUNFTSBILD GENERATOR ════════ */
.fv-section{
  padding:var(--sp-sect) 0;
  /* unified with .section */
  background:
    radial-gradient(900px 500px at 10% 10%, var(--or-soft) 0%, transparent 60%),
    var(--warm);
  position:relative;overflow:hidden;
}
.fv-section::before{content:'2031';position:absolute;bottom:-60px;right:-40px;font-family:var(--hd);font-size:380px;font-weight:900;color:var(--navy);opacity:.04;letter-spacing:-.05em;line-height:.8;pointer-events:none}
.fv-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:60px;align-items:center;position:relative;z-index:1}
@media(max-width:880px){.fv-grid{grid-template-columns:1fr;gap:40px}}
.fv-left h2{font-family:var(--hd);font-size:clamp(36px,4.6vw,56px);font-weight:700;line-height:1.05;letter-spacing:-.03em;margin-bottom:22px}
.fv-left h2 .em{color:var(--or)}
.fv-left p{font-size:16.5px;line-height:1.7;color:var(--n50);margin-bottom:14px;max-width:48ch}
.fv-note{font-size:14.5px;color:var(--n40);padding:14px 18px;background:rgba(255,255,255,.6);border-left:3px solid var(--or);border-radius:4px;margin-top:18px}
.fv-note strong{color:var(--navy);font-weight:600}
.fv-meta{display:flex;gap:18px;flex-wrap:wrap;margin-top:24px}
.fv-meta-i{display:inline-flex;align-items:center;gap:7px;font-family:var(--mono);font-size:11px;color:var(--n50);letter-spacing:.04em}
.fv-meta-i .d{width:6px;height:6px;border-radius:50%;background:var(--grn);box-shadow:0 0 8px rgba(0,166,160,.4)}

.fv-right{}
.fv-form{
  background:#fff;border:1px solid var(--n10);border-radius:var(--r-xl);
  padding:36px;box-shadow:var(--sh-2);
}
@media(max-width:640px){.fv-form{padding:26px 22px}}
.fv-step{margin-bottom:18px}
.fv-step label{
  font-family:var(--hd);font-size:12px;font-weight:700;letter-spacing:.06em;
  text-transform:uppercase;color:var(--n40);display:block;margin-bottom:4px;
}
.fv-hint{
  font-family:var(--mono);font-size:10.5px;color:var(--n40);
  margin-bottom:8px;letter-spacing:.04em;
}
.fv-sub-box{
  margin-top:18px;
  padding:18px 22px;
  background:linear-gradient(180deg, rgba(0,166,160,.06) 0%, rgba(0,166,160,.10) 100%);
  border-left:3px solid var(--or);
  border-radius:8px;
  position:relative;
}
.fv-sub-box p{
  font-family:var(--hd);
  font-size:15px;line-height:1.55;color:var(--navy);
  font-weight:500;
  margin:0;
  letter-spacing:-.005em;
}
.fv-sub{
  font-size:14px;line-height:1.6;color:var(--n40);margin-top:10px;
  font-style:italic;
}
.fv-step textarea{
  width:100%;font-family:inherit;font-size:15px;line-height:1.5;
  padding:13px 16px;border:1.5px solid var(--n10);border-radius:10px;
  background:#fff;color:var(--navy);resize:vertical;
  transition:border-color .2s;min-height:60px;
}
.fv-step textarea:focus{outline:none;border-color:var(--or)}
.fv-step textarea::placeholder{color:var(--n40);font-style:italic}
.fv-step input{
  width:100%;font-family:inherit;font-size:15px;line-height:1.5;
  padding:13px 16px;border:1.5px solid var(--n10);border-radius:10px;
  background:#fff;color:var(--navy);
  transition:border-color .2s;
}
.fv-step input:focus{outline:none;border-color:var(--or)}
.fv-step input::placeholder{color:var(--n30)}
.fv-contact-row input{
  width:100%;font-family:inherit;font-size:15px;line-height:1.5;
  padding:13px 16px;border:1.5px solid var(--n10);border-radius:10px;
  background:#fff;color:var(--navy);
  transition:border-color .2s;
}
.fv-contact-row input:focus{outline:none;border-color:var(--or)}
.fv-contact-row input::placeholder{color:var(--n30)}
/* Sprung-Hinweis zwischen Heute- und Zukunfts-Fragen */
.fv-jump{
  display:flex;align-items:center;gap:11px;
  margin:2px 0 4px;padding:11px 15px;
  background:rgba(0,166,160,.06);
  border:1px solid rgba(0,166,160,.28);
  border-radius:9px;
  font-family:var(--hd);font-size:13.5px;font-weight:500;line-height:1.4;
  color:var(--navy);
}
.fv-jump-icon{flex-shrink:0;width:18px;height:18px;color:#00A6A0;display:inline-flex}
.fv-jump-icon svg{width:100%;height:100%}
/* Fragen-Nummer */
.fv-qn{
  display:inline-flex;align-items:center;justify-content:center;
  width:22px;height:22px;flex-shrink:0;
  margin-right:9px;
  border-radius:50%;
  background:var(--navy);color:#fff;
  font-family:var(--hd);font-size:12px;font-weight:700;
  vertical-align:baseline;
}
.fv-step label{display:flex;align-items:center}
/* Inline-Bestätigung am Button */
.fv-confirm{
  display:flex;align-items:flex-start;gap:11px;
  margin-top:14px;padding:14px 16px;
  background:rgba(0,166,160,.1);
  border:1px solid rgba(0,166,160,.35);
  border-radius:10px;
  font-size:14px;line-height:1.5;color:var(--navy);
  animation:fvOutIn .4s var(--ease-out);
}
.fv-confirm-icon{
  flex-shrink:0;width:22px;height:22px;border-radius:50%;
  background:#00A6A0;color:#fff;
  display:inline-flex;align-items:center;justify-content:center;
}
.fv-confirm-icon svg{width:13px;height:13px}

/* ── Wizard (eine Frage pro Schritt) ── */
.fv-wizard{display:flex;flex-direction:column;min-width:0}
.fv-prog{margin-bottom:26px}
.fv-prog-top{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:9px}
.fv-prog-label{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--n40)}
.fv-prog-count{font-family:var(--hd);font-size:13px;font-weight:700;color:var(--navy)}
.fv-prog-track{height:4px;border-radius:4px;background:var(--n10);overflow:hidden}
.fv-prog-fill{height:100%;border-radius:4px;background:#00A6A0;transition:width .45s var(--ease)}
.fv-stepwrap{animation:fvStepIn .42s var(--ease-out);min-height:212px;display:flex;flex-direction:column;justify-content:center}
@keyframes fvStepIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.fv-stepwrap{animation:none}}
.fv-qstep label{font-family:var(--hd);font-size:21px;font-weight:700;letter-spacing:-.02em;color:var(--navy);line-height:1.25;margin-bottom:10px}
.fv-qstep .fv-qn{width:26px;height:26px;font-size:13px;margin-right:11px}
.fv-qstep .fv-hint{font-size:14px;color:var(--n50);margin-bottom:14px;font-style:normal;line-height:1.5}
.fv-auto{min-height:58px;resize:none;overflow:hidden}
.fv-microhint{font-size:12px;color:var(--n40);margin-top:9px;font-family:var(--mono);letter-spacing:.02em}
.fv-topics{margin-top:18px;padding-top:16px;border-top:1px solid var(--n10)}
.fv-topics-label{font-size:13.5px;font-weight:600;color:var(--navy);margin-bottom:10px}
.fv-topics-label span{font-weight:400;color:var(--n40)}
.fv-topics-chips{display:flex;flex-wrap:wrap;gap:8px}
.fv-chip{font-family:var(--bd);font-size:13.5px;font-weight:500;color:var(--n50);background:#fff;border:1.5px solid var(--n15);border-radius:999px;padding:7px 15px;cursor:pointer;transition:all .18s}
.fv-chip:hover{border-color:var(--or);color:var(--navy)}
.fv-chip.on{background:var(--or);border-color:var(--or);color:#fff}
/* Sprung-Zwischenschritt */
.fv-jumpstep{display:flex;flex-direction:column;align-items:flex-start;gap:16px;padding:6px 0}
.fv-jumpstep-icon{width:46px;height:46px;border-radius:50%;background:rgba(0,166,160,.12);color:#00A6A0;display:flex;align-items:center;justify-content:center}
.fv-jumpstep-icon svg{width:24px;height:24px}
.fv-jumpstep-text{font-family:var(--hd);font-size:21px;font-weight:500;line-height:1.42;letter-spacing:-.015em;color:var(--navy);text-wrap:pretty;margin:0}
.fv-jumpstep-text strong{color:#008C86;font-weight:700}
/* Navigation */
.fv-nav{display:flex;align-items:center;gap:14px;margin-top:26px}
.fv-nav-spacer{flex:1}
.fv-nav .btn-primary{padding:14px 26px;font-size:15px;border-radius:999px;flex-shrink:0}
.fv-back{
  background:none;border:none;cursor:pointer;
  display:inline-flex;align-items:center;gap:7px;
  font-family:var(--hd);font-size:14px;font-weight:600;color:var(--n40);
  padding:8px 4px;transition:color .2s;
}
.fv-back .arr-l{transition:transform .25s var(--ease)}
.fv-back:hover{color:var(--navy)}
.fv-back:hover .arr-l{transform:translateX(-3px)}
@media(max-width:560px){
  .fv-jumpstep-text,.fv-qstep label{font-size:19px}
  .fv-nav .btn-primary{padding:13px 20px;font-size:14px}
}
/* Kontaktfeld */
.fv-contact{
  margin-top:4px;padding-top:18px;
  border-top:1px solid var(--n10);
  display:flex;flex-direction:column;gap:14px;
}
.fv-contact-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;min-width:0}
.fv-contactstep{min-width:0;max-width:100%}
.fv-step input,.fv-contact-row input,.fv-step textarea{min-width:0;max-width:100%}
.fv-contact-reassure{margin-top:12px;font-size:12.5px;line-height:1.5;color:var(--n40)}
@media(max-width:520px){.fv-contact-row{grid-template-columns:1fr}}
/* Bestätigungs-Ansicht */
.fv-thanks{text-align:center;display:flex;flex-direction:column;align-items:center}
.fv-thanks-icon{
  width:56px;height:56px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  background:rgba(0,166,160,.18);color:#3CC6C0;
  margin-bottom:18px;
}
.fv-thanks-icon svg{width:28px;height:28px}
.fv-thanks .fv-stamp{margin-bottom:16px}
.fv-thanks-h{font-family:var(--hd);font-size:23px;font-weight:700;letter-spacing:-.02em;color:#fff;margin-bottom:12px;line-height:1.2}
.fv-thanks-p{font-size:15px;line-height:1.6;color:rgba(255,255,255,.82);max-width:42ch;margin:0 auto}
.fv-restart{
  background:none;border:none;cursor:pointer;
  font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;
  color:rgba(255,255,255,.6);margin-top:22px;transition:color .2s;
}
.fv-restart:hover{color:#3CC6C0}
.fv-disclaimer{font-size:11px;color:var(--n30);text-align:center;margin-top:14px;line-height:1.5}
.fv-disclaimer a{color:var(--or)}
.fv-err{
  font-size:13px;color:var(--red);background:rgba(196,58,43,.08);
  padding:10px 14px;border-radius:8px;margin-bottom:14px;
  border-left:3px solid var(--red);
}
.fv-spin{
  width:14px;height:14px;border:2px solid rgba(255,255,255,.3);
  border-top-color:#fff;border-radius:50%;
  animation:fvSpin .9s linear infinite;display:inline-block;
}
@keyframes fvSpin{to{transform:rotate(360deg)}}

.fv-out{
  background:linear-gradient(135deg,var(--navy) 0%,#152849 100%);
  color:#fff;border-radius:var(--r-xl);padding:40px;
  position:relative;overflow:hidden;
  box-shadow:var(--sh-3);
  animation:fvOutIn .55s var(--ease-out);
}
@keyframes fvOutIn{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@media(max-width:640px){.fv-out{padding:30px 24px}}
.fv-out-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;position:relative;z-index:1}
.fv-stamp{font-family:var(--mono);font-size:10px;letter-spacing:.2em;color:var(--or);text-transform:uppercase;padding:4px 10px;background:rgba(0,166,160,.12);border-radius:5px}
.fv-out-deco{font-family:var(--hd);font-weight:900;font-size:32px;color:var(--or);letter-spacing:-.08em;line-height:1}
.fv-out-body{
  font-family:var(--hd);font-size:clamp(18px,2vw,22px);font-weight:500;
  line-height:1.55;color:#fff;letter-spacing:-.01em;
  margin-bottom:28px;text-wrap:pretty;
  position:relative;z-index:1;
}
.fv-out-actions{display:flex;gap:12px;flex-wrap:wrap;position:relative;z-index:1}
.fv-out-actions .btn-outline{color:#fff;border-color:rgba(255,255,255,.3)}
.fv-out-actions .btn-outline:hover{border-color:#fff;background:rgba(255,255,255,.08)}
.fv-out-foot{
  font-size:12.5px;color:rgba(255,255,255,.55);margin-top:24px;
  padding-top:20px;border-top:1px solid rgba(255,255,255,.1);
  font-style:italic;line-height:1.55;position:relative;z-index:1;
}

/* ════════ FUTURE-VISION — CTA + SHARE + FOOT (new) ════════ */
.fv-out-cta{
  position:relative;z-index:1;
  background:rgba(0,166,160,.10);
  border:1px solid rgba(0,166,160,.28);
  border-radius:var(--r-lg);
  padding:20px 22px;margin-bottom:18px;
}
.fv-out-cta-h{font-family:var(--hd);font-size:15px;font-weight:700;color:#fff;margin-bottom:6px;letter-spacing:-.01em}
.fv-out-cta-p{font-size:13px;line-height:1.55;color:rgba(255,255,255,.78);margin-bottom:14px}
.fv-out-share{
  position:relative;z-index:1;
  padding-top:18px;border-top:1px solid rgba(255,255,255,.08);
  margin-top:4px;
}
.fv-share-label{
  font-family:var(--mono);font-size:10.5px;font-weight:600;
  letter-spacing:.16em;text-transform:uppercase;
  color:rgba(255,255,255,.55);margin-bottom:10px;
}
.fv-share-row{
  display:flex;flex-wrap:wrap;gap:8px;
}
.fv-share-btn{
  display:inline-flex;align-items:center;gap:7px;
  padding:8px 12px;border-radius:8px;cursor:pointer;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);
  color:rgba(255,255,255,.78);font-family:var(--bd);font-size:12.5px;font-weight:500;
  transition:all .2s var(--ease);
}
.fv-share-btn:hover{background:rgba(255,255,255,.12);color:#fff;border-color:rgba(255,255,255,.2)}
.fv-share-btn svg{flex-shrink:0;opacity:.8}

/* Vorgeschmack-Hinweis: prominentes Banner über dem Text */
.fv-notice{
  position:relative;z-index:1;
  display:flex;align-items:flex-start;gap:14px;
  padding:16px 18px;margin:0 0 22px;
  background:linear-gradient(135deg, rgba(0,166,160,.16), rgba(0,166,160,.08));
  border:1px solid rgba(0,166,160,.32);
  border-left:3px solid var(--or);
  border-radius:10px;
  color:rgba(255,255,255,.92);
  font-size:13.5px;line-height:1.55;
}
.fv-notice strong{color:#fff;font-weight:700}
.fv-notice a{
  color:var(--or);font-weight:600;text-decoration:none;
  border-bottom:1px solid rgba(0,166,160,.5);
  white-space:nowrap;
}
.fv-notice a:hover{color:#fff;border-bottom-color:#fff}
.fv-notice-icon{
  flex-shrink:0;
  display:inline-flex;align-items:center;justify-content:center;
  width:24px;height:24px;border-radius:50%;
  background:var(--or);color:#fff;
  font-family:var(--hd);font-size:13px;font-weight:800;
  font-style:italic;
  margin-top:1px;
}
.fv-note{font-size:14px;line-height:1.6;color:var(--n40);margin-top:8px;padding:14px 18px;background:rgba(0,166,160,.06);border-left:2px solid var(--or);border-radius:4px}
.fv-meta{display:flex;flex-direction:column;gap:6px;margin-top:20px}
.fv-meta-i{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-family:var(--mono);color:var(--n40);letter-spacing:.02em}
.fv-meta-i .d{width:5px;height:5px;border-radius:50%;background:var(--or);display:inline-block}
.fv-quote{margin-top:26px;padding:22px 24px;background:rgba(255,255,255,.05);border-left:3px solid var(--or);border-radius:4px}
.fv-quote-text{font-family:var(--hd);font-size:19px;line-height:1.35;color:#fff;font-weight:500;font-style:italic}
.fv-quote-caption{margin-top:10px;font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--or);font-weight:700}

/* ════════ REALITY-CHECK ════════ */
.rc-section{padding:var(--sp-sect) 0;background:var(--warm);position:relative;overflow:hidden;cursor:ew-resize;touch-action:pan-y;user-select:none}
.rc-section.dragging{cursor:grabbing}
.rc-section .wrap{position:relative;z-index:1}
.rc-bg-wash{position:absolute;inset:0;pointer-events:none;z-index:0;background:linear-gradient(90deg,rgba(10,24,48,.04) 0%,rgba(10,24,48,.04) var(--rc-p,0%),rgba(0,166,160,.06) var(--rc-p,0%),rgba(0,166,160,.06) 100%);transition:background .15s linear}
.rc-slider-hint{margin-top:12px;text-align:center;font-family:var(--hd);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--n40);opacity:.7}
.rc-section::before{content:'NEXT';position:absolute;top:40px;right:-20px;font-family:var(--hd);font-size:clamp(180px,20vw,320px);font-weight:900;color:var(--or);opacity:.04;letter-spacing:-.05em;line-height:.8;pointer-events:none}
.section-head{text-align:center;max-width:720px;margin:0 auto 44px}
.section-head .eye{justify-content:center}
.section-head p{font-size:17px;color:var(--n40);line-height:1.6;margin-top:14px;max-width:60ch;margin-left:auto;margin-right:auto}

.rc-slider-wrap{max-width:780px;margin:0 auto 48px;padding:0 10px}
.rc-slider-labels{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;font-family:var(--hd);font-size:13px;font-weight:700;letter-spacing:.02em}
.rc-lbl{display:inline-flex;align-items:center;gap:8px;color:var(--n30);transition:color .3s}
.rc-lbl.on{color:var(--navy)}
.rc-lbl.r{color:var(--n30)}
.rc-lbl.r.on{color:var(--or)}
.rc-lbl .d{width:8px;height:8px;border-radius:50%;background:currentColor;display:inline-block;opacity:.6}
.rc-lbl-mid{font-family:var(--mono);font-size:14px;font-weight:700;color:var(--navy);background:#fff;padding:4px 12px;border-radius:100px;box-shadow:var(--sh-1);border:1px solid var(--n10)}

.rc-slider{
  -webkit-appearance:none;appearance:none;width:100%;height:6px;border-radius:100px;
  background:linear-gradient(to right,var(--navy) 0%,var(--navy) var(--p,50%),var(--or) var(--p,50%),var(--or) 100%);
  outline:none;cursor:pointer;
}
.rc-slider::-webkit-slider-thumb{
  -webkit-appearance:none;appearance:none;width:28px;height:28px;border-radius:50%;
  background:#fff;border:3px solid var(--or);cursor:grab;
  box-shadow:0 4px 14px rgba(0,166,160,.35);transition:transform .15s;
}
.rc-slider::-webkit-slider-thumb:hover{transform:scale(1.12)}
.rc-slider::-webkit-slider-thumb:active{cursor:grabbing;transform:scale(1.05)}
.rc-slider::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:#fff;border:3px solid var(--or);cursor:grab;box-shadow:0 4px 14px rgba(0,166,160,.35)}

.rc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
@media(max-width:920px){.rc-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.rc-grid{grid-template-columns:1fr}}

.rc-card{
  background:#fff;border:1px solid var(--n10);border-radius:var(--r-lg);
  padding:24px 22px;position:relative;overflow:hidden;
  transition:all .4s var(--ease);
}
.rc-card:hover{box-shadow:var(--sh-2);transform:translateY(-2px);border-color:var(--n15)}
.rc-letter{
  font-family:var(--hd);font-size:88px;font-weight:900;color:var(--n15);
  line-height:.9;letter-spacing:-.06em;margin-bottom:4px;
  transition:color .6s var(--ease),text-shadow .6s var(--ease),transform .6s var(--ease);
  transform-origin:left bottom;
  text-shadow:0 2px 12px rgba(0,166,160,.2);
}
.rc-label{font-family:var(--hd);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--n40);margin-bottom:16px}
.rc-card.letter-on .rc-letter{color:var(--or);text-shadow:0 0 32px var(--or-glow);transform:scale(1.02)}
.rc-card.letter-on{border-color:rgba(246,147,28,.25)}
.rc-state-row{display:none}
.rc-pill{
  flex:1;text-align:center;font-family:var(--mono);font-size:10px;font-weight:700;
  letter-spacing:.08em;text-transform:uppercase;padding:5px 8px;border-radius:4px;
  background:var(--n03);color:var(--n30);transition:all .3s;
}
.rc-pill.on{background:rgba(12,28,54,.08);color:var(--navy)}
.rc-pill.right.on{background:rgba(0,166,160,.14);color:var(--or-h)}
.rc-title{
  font-family:var(--hd);font-size:16px;font-weight:700;line-height:1.25;
  color:var(--navy);margin-bottom:8px;letter-spacing:-.01em;
  transition:color .3s;
}
.rc-body{font-size:14.5px;line-height:1.6;color:var(--n50);margin-bottom:14px}
.rc-bar{height:3px;background:var(--n05);border-radius:100px;overflow:hidden}
.rc-bar-fill{height:100%;background:linear-gradient(to right,var(--navy),var(--or));transition:width .4s var(--ease)}

/* ════════ KI-HALTUNG (new short section) ════════ */
.ki-haltung-section{padding:var(--sp-sect) 0;background:var(--wh);border-top:1px solid var(--n05);border-bottom:1px solid var(--n05)}
.kih{max-width:780px;margin:0 auto;text-align:center}
.kih .eye{justify-content:center;color:var(--or)}
.kih-body{font-size:18px;line-height:1.7;color:var(--n50);margin-top:18px;text-wrap:pretty;max-width:68ch;margin-left:auto;margin-right:auto}

/* ════════ DEVON NARRATIVE ════════ */
.devon-section{padding:var(--sp-sect) 0;background:var(--warm-2);position:relative;overflow:hidden}
.devon-section.is-open{padding-bottom:var(--sp-sect)}

/* Mobile: schwere Vertikal-Paddings straffen (muss NACH den Basisregeln stehen, um zu gewinnen) */
@media(max-width:640px){
  .devon-section.is-open{padding-bottom:var(--sp-sect)}
  .section-head{margin-bottom:26px}

  /* Cases & Artefakte: horizontales Swipe-Karussell statt gestapelt
     (steht NACH .case-grid/.art-grid-Basisregeln, damit display:flex gewinnt) */
  .case-grid,
  .art-grid{
    display:flex;
    grid-template-columns:none;
    gap:14px;
    overflow-x:auto;
    overflow-y:visible;
    scroll-snap-type:x mandatory;
    scroll-padding-left:22px;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    margin-left:-22px;
    margin-right:-22px;
    padding:6px 22px 18px;
  }
  .case-grid::-webkit-scrollbar,
  .art-grid::-webkit-scrollbar{display:none}
  .case-grid > .case,
  .art-grid > .art-card{
    flex:0 0 84%;
    scroll-snap-align:start;
  }
  /* Karten im Karussell immer sichtbar (Observer triggert sonst nicht für rechts liegende Karten) */
  .case-grid > .case.rv,
  .art-grid > .art-card.rv{opacity:1;transform:none}

  /* KI-Boxen: horizontales Swipe-Karussell (Option B) — mit Dots + Hinweis */
  .ki-right{
    display:flex;
    flex-direction:row;
    gap:12px;
    overflow-x:auto;
    overflow-y:visible;
    scroll-snap-type:x mandatory;
    scroll-padding-left:22px;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    margin-left:-22px;
    margin-right:-22px;
    padding:4px 22px 4px;
  }
  .ki-right::-webkit-scrollbar{display:none}
  .ki-right > .ki-card{
    flex:0 0 80%;
    scroll-snap-align:start;
    margin-bottom:0;
    padding-right:20px;
  }
  .ki-right > .ki-card::after{content:none}
  .swipe-ind{display:flex;flex-direction:column;align-items:center;gap:10px;margin-top:14px}
  .swipe-dots{display:flex;gap:7px}
  .swipe-dot{width:6px;height:6px;border-radius:50%;background:rgba(12,28,54,.2);transition:all .25s var(--ease)}
  .swipe-dot.on{background:var(--or);width:18px;border-radius:3px}
  .swipe-hint{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--n40)}
  /* Auf dunkler Sektion (KI) hell invertieren */
  .section.dark .swipe-dot{background:rgba(255,255,255,.22)}
  .section.dark .swipe-dot.on{background:var(--or)}
  .section.dark .swipe-hint{color:rgba(255,255,255,.4)}
}

.devon-section::before{content:'380M';position:absolute;top:50%;left:-30px;transform:translateY(-50%);font-family:var(--hd);font-size:clamp(160px,18vw,260px);font-weight:900;color:var(--navy);opacity:.03;letter-spacing:-.05em;line-height:.8;pointer-events:none}
.devon-block{max-width:720px;margin:0 auto;position:relative;z-index:1}
.devon-block h2{margin-bottom:18px}
.devon-block p{font-size:16.5px;line-height:1.7;color:var(--n50);margin-bottom:14px;text-wrap:pretty}
.devon-block p strong{color:var(--navy);font-weight:700}

/* aufklappbare Box */
.devon-toggle{
  width:100%;
  color:var(--navy);-webkit-text-fill-color:currentColor;
  display:flex;align-items:center;justify-content:space-between;gap:24px;
  background:#fff;
  border:1px solid var(--n10);
  border-radius:16px;
  padding:28px 32px;
  cursor:pointer;
  text-align:left;
  transition:border-color .25s var(--ease-out), background .25s var(--ease-out), box-shadow .25s var(--ease-out);
  font-family:inherit;
}
.devon-toggle:hover{border-color:var(--or);background:#fefefe;box-shadow:0 8px 24px rgba(12,28,54,.06)}
.devon-toggle .eye{margin-bottom:8px}
.devon-toggle h2{margin-bottom:0;color:var(--navy);-webkit-text-fill-color:var(--navy)}
.devon-toggle-text{flex:1;min-width:0}
.devon-toggle-icon{
  flex:0 0 44px;width:44px;height:44px;
  display:flex;align-items:center;justify-content:center;
  border-radius:50%;
  background:var(--or);color:#fff;
  transition:transform .35s var(--ease-out);
}
.devon-toggle.open .devon-toggle-icon{transform:rotate(180deg)}
.devon-content{
  max-height:0;
  overflow:hidden;
  transition:max-height .45s var(--ease-out);
}
.devon-content.open{max-height:760px}
.devon-content-inner{
  padding:24px 32px 8px;
}
.devon-content-inner p{color:#3F4A5C}
.devon-verbund{margin-top:18px;padding-top:16px;border-top:1px solid var(--n10);font-size:14.5px;color:#3F4A5C;line-height:1.6}
.devon-verbund strong{color:var(--navy);font-weight:700}
@media(max-width:640px){
  .devon-toggle{padding:22px 20px;gap:14px}
  .devon-toggle-icon{flex-basis:36px;width:36px;height:36px}
  .devon-content-inner{padding:18px 20px 4px}
}

/* ════════ NEWSLETTER consent (new) ════════ */
.nl-consent{display:flex;gap:10px;align-items:flex-start;margin:14px 0;font-size:12px;line-height:1.55;color:var(--n40);cursor:pointer}
.nl-consent input{margin-top:2px;flex-shrink:0;accent-color:var(--or)}
.nl-consent a{color:var(--or);text-decoration:underline}

/* ════════ FOOTER (rich) ════════ */
footer{padding:60px 0 30px;background:var(--navy);color:rgba(255,255,255,.6)}
.footer-grid{display:grid;grid-template-columns:1.2fr 2fr;gap:48px;margin-bottom:40px}
@media(max-width:780px){.footer-grid{grid-template-columns:1fr;gap:32px}}
.footer-brand{}
.footer-logo{display:inline-flex;align-items:center;font-family:var(--hd);font-weight:800;letter-spacing:-.04em;margin-bottom:9px}
.footer-logo .s{color:var(--or);font-size:24px;margin-right:5px}
.footer-logo .d{color:#fff;font-size:18px}
.footer-logo .n{color:var(--or);font-size:18px}
.footer-claim{font-size:13px;color:rgba(255,255,255,.75);max-width:260px;line-height:1.55}
.footer-tagline{font-family:var(--hd);font-weight:700;font-size:11.5px;letter-spacing:.045em;text-transform:uppercase;color:rgba(255,255,255,.9);line-height:1.3;margin:0 0 13px;white-space:nowrap}
@media(max-width:400px){.footer-tagline{font-size:10.5px;letter-spacing:.02em}}
.footer-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}
@media(max-width:560px){.footer-cols{grid-template-columns:1fr 1fr}}
.fc-h{font-family:var(--hd);font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:#fff;margin-bottom:14px}
.footer-col a{
  display:block;font-size:14px;color:rgba(255,255,255,.82);
  padding:5px 0;transition:color .2s;
}
.footer-col a:hover{color:var(--or)}
.footer-col a[href*="devon-sport"]{max-width:none;white-space:nowrap}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:24px;border-top:1px solid rgba(255,255,255,.08);font-size:11.5px;color:rgba(255,255,255,.4);letter-spacing:.04em}
.footer-bottom > div:first-child{color:#fff}
.footer-tag{font-family:var(--hd);font-style:italic;color:var(--or);font-weight:500}

/* Footer · devon Markenwelt (eigene Spalte, je Marke eine Zeile) */
.footer-col-brands{grid-column:1 / -1;margin-top:6px}
.footer-col-brands .fb-item{display:block;font-family:var(--bd);font-size:14px;font-weight:400;color:rgba(255,255,255,.82);padding:5px 0;white-space:nowrap;text-decoration:none;transition:color .2s}
.footer-col-brands a.fb-item:hover{color:var(--or)}
@media(max-width:560px){.footer-col-brands .fb-item{font-size:12.5px}}

/* Made-with-Mut Siegel — solide auf der Sektionskante */
.devon-seal-mount{position:relative;height:0;z-index:10;pointer-events:none}
.devon-seal-row{max-width:1180px;margin:0 auto;padding:0 clamp(24px,6vw,80px);display:flex;justify-content:flex-end}
.devon-seal-badge{
  width:116px;height:116px;margin-top:-58px;margin-right:4%;
  border-radius:50%;overflow:hidden;
  box-shadow:0 14px 34px -16px rgba(12,28,54,.4);
}
.devon-seal-badge .devon-seal-svg{display:block;width:100%;height:100%}
@media(max-width:560px){
  .devon-seal-row{padding:0 18px}
  .devon-seal-badge{width:92px;height:92px;margin-top:-46px;margin-right:2%}
}

/* Made with Mut — kompakt, Footer unten rechts */
.mwm-mini{display:inline-flex;align-items:center;gap:7px;font-family:var(--hd);font-size:13px;font-weight:600;letter-spacing:-.01em;color:rgba(255,255,255,.78);line-height:1}
.mwm-mini strong{font-weight:800;color:var(--or)}
.mwm-mini-slash{height:13px;width:auto;flex-shrink:0}
.mwm-mini-slash polygon{fill:var(--or)}
.footer-verbund{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px 26px;margin-top:40px;padding-top:24px;border-top:1px solid rgba(255,255,255,.1)}
.footer-verbund .fv-label{font-family:var(--mono);font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:rgba(255,255,255,.55)}
.footer-verbund a{font-family:var(--hd);font-size:15px;font-weight:500;color:rgba(255,255,255,.85);text-decoration:none;transition:color .2s}
.footer-verbund a:hover{color:var(--or)}
.footer-verbund a.fv-next{color:var(--or)}
.footer-verbund a.fv-next:hover{color:var(--or-h)}
@media(max-width:560px){
  .footer-bottom{flex-direction:column;gap:8px;align-items:flex-start}
}

/* ════════ REALITY CHECK V2 — Slider 4 Boxen Alltag → NEXT ════════ */
.rc-v2{
  padding:110px 0;
  position:relative;
  transition:background .4s var(--ease-out);
  overflow:hidden;
}
.rc-v2 .section-head h2{transition:color .4s var(--ease-out)}
.rc-v2 .section-head p{transition:color .4s var(--ease-out)}

/* ─── Reality-Check · Horizontaler Before/After Comparison-Slider (HELLER HINTERGRUND) ─── */
.ba-section{background:#F6F5F2; color:var(--navy)}
.ba-section .section-head .eye{color:var(--or)}
.ba-section .section-head h2{color:var(--navy)}
.ba-section .section-head p{color:var(--n40)}

.ba-wrap{
  position:relative;
  width:100%;
  border-radius:18px;
  overflow:hidden;
  margin-top:36px;
  background:#0C1C36; /* Basisebene Alltag = navy */
  border:1px solid rgba(12,28,54,.12);
  box-shadow:0 18px 50px -22px rgba(12,28,54,.28);
  user-select:none;
  touch-action:none;
  isolation:isolate;
}

.ba-side{
  position:relative;
  width:100%;
  padding:48px 56px 56px;
  display:flex;flex-direction:column;justify-content:center;align-items:flex-start;
}
.ba-side.ba-before{
  color:#fff; /* Alltag auf navy */
}
.ba-side.ba-after{
  position:absolute;inset:0;
  background:#FFFFFF;
  color:var(--navy);
  will-change:clip-path;
  transition:clip-path .06s linear;
}
@media(max-width:780px){
  .ba-side{padding:32px 22px 38px}
}

.ba-corner-tag{
  display:inline-flex;align-items:center;height:32px;
  font-family:var(--mono);font-size:11px;font-weight:700;
  letter-spacing:.18em;text-transform:uppercase;
  padding:0 14px;border-radius:99px;
  margin:0 0 20px;
}
.ba-tag-l{background:rgba(255,255,255,.10); color:rgba(255,255,255,.85); border:1px solid rgba(255,255,255,.22)}
.ba-tag-r{background:rgba(0,166,160,.14); color:var(--grn); border:1px solid rgba(0,166,160,.42)}
.ba-corner-logo{display:block;height:26px;width:auto;margin:3px 0 23px}

/* Handschriftliche Anleitung am Handle */
.ba-stage{position:relative;margin-top:clamp(90px,10vh,112px)}
.ba-stage > .ba-wrap{margin-top:0}
.ba-cue{
  position:absolute;left:0;top:0;
  transform:translateY(-100%);
  display:flex;flex-direction:column;align-items:flex-start;gap:0;
  padding:0 0 8px 4px;z-index:8;pointer-events:none;
  transition:opacity .45s var(--ease-out), transform .45s var(--ease-out);
}
.ba-cue.off{opacity:0;transform:translateY(-100%) translateY(-8px)}
.ba-cue-txt{
  font-family:'Caveat',cursive;font-weight:700;
  font-size:clamp(25px,2.7vw,34px);line-height:.95;
  color:var(--or);transform:rotate(-4deg);white-space:nowrap;
}
.ba-cue-arrow{width:48px;height:36px;color:var(--or);margin:-2px 0 0 38px}
@media(max-width:560px){
  .ba-stage{margin-top:clamp(66px,8vh,82px)}
  .ba-cue-arrow{width:40px;height:30px;margin-left:30px}
}

.ba-grid{
  display:grid;grid-template-columns:1fr 1fr;gap:18px;width:100%;
}
@media(max-width:780px){.ba-grid{grid-template-columns:1fr;gap:12px}}

.ba-card{
  padding:22px 22px 24px;
  border-radius:12px;
  min-height:200px;
  display:flex;flex-direction:column;
}
.ba-card-before{
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.10);
}
.ba-card-after{
  background:#F6F5F2;
  border:1px solid rgba(12,28,54,.08);
}
.ba-card h3{
  font-family:var(--hd);font-size:18px;font-weight:800;
  line-height:1.25;letter-spacing:-.012em;margin-bottom:10px;
}
.ba-card p{font-size:15.5px;line-height:1.62}
.ba-card-before p{color:rgba(255,255,255,.72)}
.ba-card-after p{color:#3F4A5C}

.ba-num{
  font-family:var(--mono);font-size:17px;letter-spacing:0;
  color:var(--or);font-weight:700;margin-bottom:10px;line-height:1;
  display:inline-flex;align-items:flex-end;gap:3px;
}
.ba-num-slash{width:13px;height:17px;fill:var(--or);display:block;margin-bottom:1px}

.ba-letter-row{display:flex;align-items:baseline;gap:12px;margin-bottom:8px}
.ba-letter{
  font-family:var(--hd);font-size:42px;font-weight:800;
  line-height:1;color:var(--grn);letter-spacing:-.04em;
}
.ba-ax-label{
  font-family:var(--mono);font-size:12px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--navy);font-weight:700;opacity:.8;
}

/* Trennlinie + Handle */
.ba-divider{
  position:absolute;top:0;bottom:0;
  width:2px;
  background:linear-gradient(180deg, rgba(0,166,160,.3) 0%, var(--grn) 50%, rgba(0,166,160,.3) 100%);
  pointer-events:none;
  z-index:5;
}
.ba-handle{
  position:absolute;top:50%;left:50%;
  transform:translate(-50%,-50%);
  width:52px;height:52px;border-radius:50%;
  background:#fff;color:var(--navy);
  border:3px solid var(--grn);
  display:flex;align-items:center;justify-content:center;
  cursor:grab;
  pointer-events:auto;
  box-shadow:0 6px 22px rgba(0,0,0,.35), 0 0 0 6px rgba(255,255,255,.06);
  transition:transform .15s var(--ease);
}
.ba-handle:hover{transform:translate(-50%,-50%) scale(1.06)}
.ba-handle:active{cursor:grabbing;transform:translate(-50%,-50%) scale(.97)}
.ba-handle:focus-visible{outline:none;box-shadow:0 6px 22px rgba(0,0,0,.35), 0 0 0 4px var(--grn)}

.ba-hint{
  position:absolute;left:50%;bottom:14px;
  transform:translateX(-50%);
  font-family:var(--mono);font-size:11px;letter-spacing:.18em;
  text-transform:uppercase;font-weight:600;
  text-shadow:none;
  pointer-events:none;z-index:4;
}

/* Bedürfnis-Liste · entfernt */

/* ════════ HERO · Hauptmotiv mit dezentem NEXT-Streifen ════════ */
.hero-photo-stack{
  position:relative;
  width:100%;
}
.hp-main{
  position:relative;
  margin:0;
  width:100%;
  aspect-ratio: 4 / 5;
  border-radius:18px;
  overflow:hidden;
  background:
    radial-gradient(120% 70% at 18% 30%, rgba(255,255,255,.10), transparent 55%),
    linear-gradient(155deg, #0C1C36 0%, #0E2545 55%, #1a3a6e 100%);
  border:1px solid rgba(255,255,255,.10);
  box-shadow:0 32px 80px -32px rgba(12,28,54,.65), 0 2px 0 rgba(255,255,255,.06) inset;
  isolation:isolate;
}
.hp-ph::before{
  content:"";position:absolute;inset:0;z-index:0;
  background:
    radial-gradient(80% 60% at 100% 0%, rgba(232,118,46,.18), transparent 70%),
    radial-gradient(60% 50% at 0% 100%, rgba(0,166,160,.16), transparent 70%);
  pointer-events:none;
}
.hp-ph-grid{
  position:absolute;inset:0;z-index:1;pointer-events:none;
  display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;
}
.hp-ph-grid span{
  border-right:1px dashed rgba(255,255,255,.07);
  border-bottom:1px dashed rgba(255,255,255,.07);
}
.hp-ph-grid span:nth-child(2),.hp-ph-grid span:nth-child(4){border-right:none}
.hp-ph-grid span:nth-child(3),.hp-ph-grid span:nth-child(4){border-bottom:none}

.hp-ph-meta{
  position:absolute;top:18px;right:20px;
  z-index:2;
  display:flex;flex-direction:column;gap:4px;align-items:flex-end;
  color:#fff;text-align:right;
}
.hp-ph-tag{
  font-family:var(--mono);font-size:10.5px;font-weight:700;
  letter-spacing:.18em;text-transform:uppercase;color:var(--or);
}
.hp-ph-spec{
  font-family:var(--mono);font-size:10.5px;color:rgba(255,255,255,.6);
  letter-spacing:.04em;
}
.hp-ph-corner{
  position:absolute;top:18px;left:20px;z-index:2;
  font-family:var(--mono);font-size:13px;color:rgba(255,255,255,.38);
  letter-spacing:.2em;
}

/* ─── NEXT-Streifen: schlank am unteren Bildrand ─── */
.hp-acr-overlay{
  position:absolute;
  left:0;right:0;bottom:0;
  z-index:3;
  padding:14px 22px 16px;
  background:linear-gradient(180deg, transparent 0%, rgba(12,28,54,.85) 60%, rgba(12,28,54,.95) 100%);
  display:flex;align-items:center;gap:18px;
  color:#fff;
}
.hp-acr-overlay::before{
  content:"";position:absolute;left:22px;right:22px;top:0;height:1px;
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.18), transparent);
}
.hp-acr-eye{
  font-family:var(--mono);font-size:10px;font-weight:700;
  letter-spacing:.22em;text-transform:uppercase;
  color:var(--or);
  flex-shrink:0;
}
.hp-acr-overlay ul{
  list-style:none;margin:0;padding:0;
  display:flex;align-items:baseline;gap:18px;flex-wrap:wrap;
  flex:1;
}
.hp-acr-overlay li{
  display:flex;align-items:baseline;gap:6px;
}
.hp-acr-overlay li .l{
  font-family:var(--hd);font-size:18px;font-weight:800;
  color:var(--grn);letter-spacing:-.03em;line-height:1;
}
.hp-acr-overlay li .w{
  font-family:var(--hd);font-size:13px;font-weight:600;
  color:rgba(255,255,255,.92);line-height:1.2;letter-spacing:-.005em;
}

.hero-right:has(.hero-photo-stack){min-height:0}

@media(max-width:1100px){
  .hp-acr-overlay{gap:14px;padding:12px 18px 14px}
  .hp-acr-overlay ul{gap:14px}
}
@media(max-width:1000px){
  .hero-photo-stack{max-width:560px;margin:0 auto}
  .hp-main{aspect-ratio: 5 / 4}
  .hero-right:has(.hero-photo-stack){max-width:560px;margin:0 auto}
}
@media(max-width:560px){
  .hp-main{aspect-ratio: 4 / 5}
  .hp-acr-overlay{flex-wrap:wrap;gap:8px;padding:12px 16px 14px}
  .hp-acr-overlay ul{gap:10px 14px}
  .hp-acr-overlay li .l{font-size:16px}
  .hp-acr-overlay li .w{font-size:12px}
}

/* ════════ HERO V3 — Split (Copy links · Foto rechts) ════════ */
.hero.hero-v3{
  position:relative;
  padding:clamp(104px,13vh,150px) clamp(24px,5vw,64px) clamp(64px,8vh,96px);
  background:#0C1C36;
  overflow:hidden;
  isolation:isolate;
}
.hero.hero-v3 .slash-deco{display:none}
.hero-v3-grid{
  max-width:1240px;margin:0 auto;
  display:grid;
  grid-template-columns:1.04fr 0.96fr;
  gap:clamp(40px,5vw,84px);
  align-items:center;
}
.hero-v3-copy{text-align:left;min-width:0}
.hero-v3-eyebrow{
  font-family:var(--mono);
  font-size:13px;font-weight:600;
  letter-spacing:.18em;text-transform:uppercase;
  color:#3CC6C0;
  margin-bottom:20px;
  display:inline-flex;align-items:center;gap:10px;
}
.hero-v3-eyebrow::before{
  content:"";width:26px;height:2px;border-radius:2px;background:#00A6A0;
}
.hero-v3 .hero-v3-h1{
  font-family:var(--hd);
  font-weight:800;
  color:#fff;
  font-size:clamp(38px,4.6vw,68px);
  line-height:1.02;
  letter-spacing:-.038em;
  margin:0 0 22px;
  min-height:0;
  max-width:13ch;
  text-wrap:balance;
}
.hero-v3 .hero-v3-h1 .accent{color:#00A6A0}
.hero-v3 .hero-v3-sub{
  font-size:clamp(17px,1.3vw,20px);
  line-height:1.55;
  color:rgba(255,255,255,.82);
  max-width:46ch;
  margin:0 0 clamp(28px,3.4vh,36px);
}
.hero-v3 .hero-v3-sub em{font-style:normal;color:#3CC6C0;font-weight:600}
.hero-v3-cta{
  display:flex;align-items:center;gap:10px 26px;flex-wrap:wrap;
  margin:0 0 clamp(36px,4.4vh,46px);
}
.hero-v3-cta .btn-primary{
  background:#00A6A0;color:#fff;border-color:#00A6A0;
  padding:18px 32px;font-size:16px;font-weight:600;
  border-radius:999px;
}
.hero-v3-cta .btn-primary:hover{background:#008C86;border-color:#008C86;transform:translateY(-1px)}
.hero-v3-secondary{
  background:none;border:none;cursor:pointer;
  font-family:var(--hd);font-size:15px;font-weight:600;
  color:#fff;
  display:inline-flex;align-items:center;gap:8px;
  padding:8px 2px;
  position:relative;
  transition:color .2s;
}
.hero-v3-secondary .arr{transition:transform .25s var(--ease)}
.hero-v3-secondary::after{
  content:"";position:absolute;left:2px;bottom:2px;height:1.5px;width:0;
  background:#3CC6C0;transition:width .28s var(--ease);
}
.hero-v3-secondary:hover{color:#3CC6C0}
.hero-v3-secondary:hover .arr{transform:translateX(4px)}
.hero-v3-secondary:hover::after{width:calc(100% - 26px)}

.hero-v3-stats{
  display:grid;grid-template-columns:repeat(3,auto);
  gap:clamp(20px,3vw,44px);
  border-top:1px solid rgba(255,255,255,.16);
  padding-top:clamp(22px,3vh,30px);
  justify-content:start;
}
.hero-v3-stats .hv2-stat{display:flex;flex-direction:column;gap:5px;align-items:flex-start;text-align:left;opacity:0;transform:translateY(16px);transition:opacity .55s var(--ease-out), transform .55s var(--ease-out)}
.hero-v3-stats .hv2-stat.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.hero-v3-stats .hv2-stat{opacity:1;transform:none;transition:none}}
.hero-v3-stats .hv2-n{
  font-family:var(--hd);font-weight:800;
  font-size:clamp(28px,2.6vw,38px);line-height:1;
  letter-spacing:-.03em;color:#fff;
}
.hero-v3-stats .hv2-l{
  font-size:14.5px;line-height:1.35;white-space:pre-line;
  color:rgba(255,255,255,.82);letter-spacing:.005em;max-width:15ch;
}

/* Foto-Rahmen rechts */
.hero-v3-media{min-width:0}
.hero-v3-frame{
  position:relative;
  width:100%;
  aspect-ratio:1/1;
  max-height:600px;
  margin-left:auto;
  border-radius:22px;overflow:hidden;
  border:1px solid rgba(255,255,255,.1);
  box-shadow:0 50px 90px -42px rgba(0,0,0,.75);
}
.hero-v3-photo{
  position:absolute;inset:0;
  width:100%;height:100%;
  object-fit:cover;object-position:50% 32%;
  display:block;
}

/* Scroll-Hinweis */
.hero-v3-scroll{
  display:flex;flex-direction:column;align-items:center;gap:7px;
  margin:clamp(40px,6vh,68px) auto 0;
  background:none;border:none;cursor:pointer;
  color:rgba(255,255,255,.62);
  font-family:var(--mono);font-size:11px;font-weight:500;
  letter-spacing:.16em;text-transform:uppercase;
  transition:color .22s;
}
.hero-v3-scroll svg{width:22px;height:22px;animation:heroBounce 1.9s var(--ease) infinite}
.hero-v3-scroll:hover{color:#3CC6C0}
@keyframes heroBounce{0%,100%{transform:translateY(0)}50%{transform:translateY(5px)}}
@media(prefers-reduced-motion:reduce){.hero-v3-scroll svg{animation:none}}

@media(max-width:1000px){
  .hero-v3-grid{grid-template-columns:1.1fr 0.9fr;gap:36px}
  .hero-v3 .hero-v3-h1{font-size:clamp(34px,5vw,52px)}
  .hero-v3-frame{aspect-ratio:1/1;max-height:none}
}
@media(max-width:760px){
  .hero.hero-v3{padding:110px 20px 48px}
  .hero-v3-eyebrow{display:none}
  .hero-v3-grid{grid-template-columns:1fr;gap:30px}
  .hero-v3-copy{text-align:center;display:flex;flex-direction:column;align-items:center}
  .hero-v3-eyebrow{margin-bottom:16px}
  .hero-v3 .hero-v3-h1{font-size:clamp(33px,8.4vw,46px);max-width:15ch;margin-bottom:16px}
  .hero-v3 .hero-v3-sub{font-size:16px;max-width:42ch}
  .hero-v3-cta{flex-direction:column;align-items:stretch;width:100%;max-width:360px;gap:14px;margin-bottom:8px}
  .hero-v3-cta .btn-primary{width:100%;justify-content:center;padding:16px 22px;font-size:15px}
  .hero-v3-secondary{justify-content:center;padding:10px 0}
  .hero-v3-secondary::after{display:none}
  /* Foto folgt nach Copy, kompakt */
  .hero-v3-media{width:100%;max-width:420px;margin:4px auto 0}
  .hero-v3-frame{aspect-ratio:5/5;max-height:54vh;margin:0 auto}
  .hero-v3-photo{object-position:50% 28%}
  .hero-v3-stats{
    width:100%;max-width:420px;margin:4px auto 0;
    grid-template-columns:repeat(3,1fr);gap:12px;justify-content:center;
  }
  .hero-v3-stats .hv2-stat{align-items:center;text-align:center}
  .hero-v3-stats .hv2-n{font-size:clamp(23px,7vw,30px)}
  .hero-v3-stats .hv2-l{font-size:13px;line-height:1.3;text-align:center}
  .hero-v3-scroll{margin-top:34px}
}
@media(max-width:380px){
  .hero-v3-stats{grid-template-columns:1fr;gap:12px;max-width:240px}
  .hero-v3-stats .hv2-stat{flex-direction:row;gap:10px;align-items:baseline;justify-content:center}
  .hero-v3-stats .hv2-l{max-width:none;text-align:left}
}

/* ════════ HERO BLEED — vollflächiges Bild (Stadion-Loge) ════════ */
.hero.hero-v3.hero-bleed{
  padding:0;
  min-height:clamp(580px,88vh,840px);
  display:flex;align-items:stretch;
  overflow:hidden;
  background:#0a1628;
}
.hero-bleed-media{position:absolute;inset:0;z-index:0;display:block}
.hero-x{position:absolute;inset:0;display:block;opacity:0;transition:opacity 1.1s ease-in-out}
.hero-x.on{opacity:1}
.hero-copy-fade{animation:heroCopyFade 1.1s ease-in-out}
@keyframes heroCopyFade{0%{opacity:0;transform:translateY(8px)}100%{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.hero-copy-fade{animation:none}.hero-x{transition:none}.hero-x-a{opacity:1}.hero-x-b{opacity:0}}
.hero-x-b .hero-bleed-img{object-position:60% 16%}
.hero-bleed-img{
  width:100%;height:100%;object-fit:cover;object-position:78% 28%;display:block;
}
.hero-bleed-scrim{
  position:absolute;inset:0;z-index:1;
  background:
    linear-gradient(90deg, rgba(8,16,34,.95) 0%, rgba(8,16,34,.86) 30%, rgba(8,16,34,.52) 52%, rgba(8,16,34,.14) 74%, rgba(8,16,34,.32) 100%),
    linear-gradient(180deg, rgba(8,16,34,.5) 0%, transparent 16%),
    linear-gradient(0deg, rgba(8,16,34,.4) 0%, transparent 22%);
}
.hero-bleed-grid{
  position:relative;z-index:2;
  width:100%;max-width:1240px;margin:0 auto;
  display:flex;align-items:center;
  padding:clamp(124px,16vh,184px) clamp(24px,5vw,64px) clamp(56px,9vh,96px);
}
.hero-bleed .hero-v3-copy{max-width:620px}
@media(max-width:1000px){
  .hero-bleed-img{object-position:62% 2%}
  .hero-bleed .hero-v3-copy{max-width:540px}
}
@media(max-width:760px){
  .hero.hero-v3.hero-bleed{min-height:0;padding:0}
  .logo,.logo-svg{height:36px}
  .hero-bleed-img{object-position:62% 0%}
  .hero-bleed-scrim{
    background:
      linear-gradient(0deg, rgba(8,16,34,.97) 6%, rgba(8,16,34,.82) 40%, rgba(8,16,34,.42) 66%, rgba(8,16,34,.45) 100%),
      linear-gradient(180deg, rgba(8,16,34,.6) 0%, transparent 22%);
  }
  .hero-bleed-grid{
    padding:96px 22px 26px;
    align-items:flex-end;
    min-height:78vh;min-height:78dvh;
  }
  .hero-bleed .hero-v3-copy{max-width:none;text-align:left;align-items:flex-start}
  .hero-bleed .hero-v3-eyebrow{display:none}
  .hero-bleed .hero-v3-cta{align-items:stretch}
  .hero-bleed .hero-v3-stats{margin-left:0;margin-right:0;justify-content:flex-start}
  .hero-bleed .hero-v3-stats .hv2-stat{align-items:flex-start;text-align:left}
  .hero-bleed .hero-v3-stats .hv2-l{text-align:left}
}

/* ════════ HERO TRUST LINE (unter Hero, Navy-Band) ════════ */
.hero-trust-line{
  background:#0C1C36;
  padding:12px 0 32px;
  position:relative;
  z-index:1;
}
.hero-trust-line .wrap::before{
  content:'';display:block;height:1px;width:min(880px,86%);
  background:rgba(255,255,255,.16);
  margin:0 auto clamp(28px,4vh,40px);
}
.hero-trust-line p{
  font-family:var(--hd);
  font-size:clamp(15px,1.5vw,18px);
  font-weight:500;
  color:#fff;
  text-align:center;
  letter-spacing:.005em;
  line-height:1.5;
  max-width:860px;
  margin:0 auto;
  text-wrap:balance;
}
@media(max-width:560px){
  .hero-trust-line{padding:6px 0 24px}
  .hero-trust-line p{font-size:14px;padding:0 8px}
}

/* ════════ KUNDEN-LOGOLEISTE (rollierend) ════════ */
.client-logos{
  margin-top:clamp(22px,3vh,32px);
  overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 15%,#000 85%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 15%,#000 85%,transparent);
}
.client-logos-track{
  display:flex;
  align-items:center;
  gap:18px;
  width:max-content;
  animation:clientScroll 56s linear infinite;
  will-change:transform;
  backface-visibility:hidden;
  transform:translateZ(0);
}
.client-logos:hover .client-logos-track{animation-play-state:paused}
.client-logo-chip{
  flex:0 0 auto;
  height:72px;
  min-width:120px;
  padding:0 30px;
  display:flex;align-items:center;justify-content:center;
}
.client-logo-chip img{
  max-height:54px;
  max-width:200px;
  width:auto;height:auto;
  object-fit:contain;
  display:block;
  opacity:.9;
  transition:opacity .25s var(--ease);
}
.client-logos:hover .client-logo-chip img{opacity:.82}
.client-logo-chip:hover img{opacity:1 !important}.client-logo-chip img.logo-lg{
  max-height:calc(54px * var(--logo-scale,1.3));
  max-width:calc(200px * var(--logo-scale,1.3));
}
@keyframes clientScroll{
  from{transform:translateX(0)}
  to{transform:translateX(calc(-50% - 9px))} /* halbe Strecke + halbes gap */
}
@media(max-width:560px){
  .client-logos{margin-top:20px}
  .client-logos-track{gap:12px;animation-duration:42s}
  .client-logo-chip{height:58px;min-width:96px;padding:0 20px}
  .client-logo-chip img{max-height:42px;max-width:150px}
  .client-logo-chip img.logo-lg{max-height:calc(42px * var(--logo-scale,1.3));max-width:calc(150px * var(--logo-scale,1.3))}
}
@media(prefers-reduced-motion: reduce){
  /* Kein Lauf: zentriert umbrechen, doppelte (aria-hidden) Logos ausblenden */
  .client-logos{overflow:visible;-webkit-mask-image:none;mask-image:none}
  .client-logos-track{
    animation:none;width:auto;flex-wrap:wrap;justify-content:center;
    max-width:1100px;margin:0 auto;gap:14px;padding:0 20px;
  }
  .client-logo-chip[aria-hidden="true"]{display:none}
}

/* ════════ KUNDENSTIMMEN (Spotlight unter den Video-Referenzen) ════════ */
.tmons{margin-top:clamp(40px,6vh,64px);padding-top:clamp(32px,5vh,48px);border-top:1px solid var(--n10)}
.tmons-eyebrow{font-family:var(--hd);font-size:12px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--or-h);text-align:center;margin-bottom:clamp(24px,4vh,36px)}
.tmon-spot{background:var(--navy);border-radius:var(--r-xl,22px);padding:clamp(26px,4vw,44px) clamp(26px,5vw,56px);max-width:1000px;margin:0 auto;overflow:hidden}
.tmon-stage{display:grid;grid-template-columns:260px 1fr;gap:clamp(30px,5vw,52px);align-items:center;min-height:300px}
.tmon-imgwrap{position:relative;height:300px}
.tmon-img{position:absolute;bottom:0;left:50%;transform:translateX(-50%) translateY(12px);height:300px;width:auto;max-width:100%;object-fit:contain;opacity:0;transition:opacity .5s var(--ease),transform .5s var(--ease);filter:drop-shadow(0 20px 34px rgba(0,0,0,.45));pointer-events:none}
.tmon-img.on{opacity:1;transform:translateX(-50%) translateY(0);pointer-events:auto}
.tmon-body{min-width:0}
.tmon-q{font-family:var(--hd);font-size:clamp(20px,2.5vw,28px);font-weight:600;line-height:1.4;letter-spacing:-.015em;color:#fff;margin:0 0 20px;text-wrap:pretty}
[data-dir="1"] .tmon-q{animation:tmonSlideR .45s var(--ease)}
[data-dir="-1"] .tmon-q{animation:tmonSlideL .45s var(--ease)}
[data-dir="1"] .tmon-img.on{animation:tmonImgR .5s var(--ease)}
[data-dir="-1"] .tmon-img.on{animation:tmonImgL .5s var(--ease)}
@keyframes tmonSlideR{from{opacity:0;transform:translateX(70px)}to{opacity:1;transform:none}}
@keyframes tmonSlideL{from{opacity:0;transform:translateX(-70px)}to{opacity:1;transform:none}}
@keyframes tmonImgR{from{opacity:0;transform:translateX(-50%) translateX(72px)}to{opacity:1;transform:translateX(-50%)}}
@keyframes tmonImgL{from{opacity:0;transform:translateX(-50%) translateX(-72px)}to{opacity:1;transform:translateX(-50%)}}
.tmon-qmark{font-family:Georgia,serif;color:var(--or);font-size:1.3em;line-height:0;margin-right:2px}
.tmon-name{font-family:var(--hd);font-weight:700;font-size:16px;color:#fff}
.tmon-q-full{font-family:var(--bd);font-weight:400;font-size:clamp(15px,1.5vw,17px);line-height:1.66;color:rgba(255,255,255,.9);max-height:none}
.tmon-more{display:inline-flex;align-items:center;gap:8px;background:none;border:none;cursor:pointer;font-family:var(--hd);font-weight:600;font-size:13.5px;color:var(--or);padding:0;margin:0 0 18px;transition:color .2s}
.tmon-more:hover{color:#fff}
.tmon-more-ic{width:21px;height:21px;border-radius:50%;border:1.5px solid currentColor;display:inline-flex;align-items:center;justify-content:center;font-size:15px;line-height:1}
.tmon-role{font-family:var(--mono);font-size:13px;letter-spacing:.03em;color:var(--or)}
.tmon-dots{display:flex;gap:9px;margin-top:24px}
.tmon-swipe-hint{display:none;margin-top:14px;font-family:var(--mono);font-size:11px;letter-spacing:.1em;color:rgba(255,255,255,.6);animation:tmonSwipe 1.8s ease-in-out infinite}
@keyframes tmonSwipe{0%,100%{opacity:.4;transform:translateX(0)}50%{opacity:1;transform:translateX(4px)}}
.tmon-spot{touch-action:pan-y}
.tmon-dot{width:9px;height:9px;border-radius:50%;background:rgba(255,255,255,.25);border:none;cursor:pointer;padding:0;transition:all .3s var(--ease)}
.tmon-dot.on{width:30px;border-radius:5px;background:var(--or)}
.tmon-dot:hover:not(.on){background:rgba(255,255,255,.45)}
@media(max-width:760px){
  .tmon-stage{grid-template-columns:1fr;text-align:center;justify-items:center;gap:20px;min-height:0}
  .tmon-imgwrap{height:230px;width:100%}
  .tmon-img{height:230px}
  .tmon-dots{justify-content:center}
}
@media(hover:none) and (pointer:coarse){
  .tmon-swipe-hint{display:block}
}
@media(prefers-reduced-motion: reduce){
  .tmon-img{transition:none}
  .tmon-q{animation:none}
  .tmon-img.on{animation:none}
  .tmon-swipe-hint{animation:none;opacity:.6}
}
