/* Senda landing page. Brand Guideline V3.2: Literata + IBM Plex Sans, six-colour palette. */
@font-face{font-family:"Literata";src:url(../fonts/Literata.woff2) format("woff2");font-weight:400 800;font-display:swap}
@font-face{font-family:"IBM Plex Sans";src:url(../fonts/IBMPlexSans.woff2) format("woff2");font-weight:300 700;font-display:swap}

:root{
  --papier:#F6F5F0;--gruen:#006341;--dunkelgruen:#00402A;--tinte:#1C1C1A;--blau:#1F3D5C;--risiko:#8A3A2A;
  --gruen10:#E1E6DE;--gruen20:#CBD6CC;--gruen40:#A0B8A8;--gruen70:#608A73;--blauhell:#DCE4EC;--linie:#D9D8D1;--grau:#5C5B55;--weiss:#FFFFFF;
  --serif:"Literata",Georgia,serif;--sans:"IBM Plex Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --max:1120px;--r:10px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--papier);color:var(--tinte);font-family:var(--sans);font-size:17px;line-height:1.6}
img,svg{max-width:100%;display:block}
a{color:var(--gruen)}a:hover{color:var(--dunkelgruen)}
.wrap{max-width:var(--max);margin:0 auto;padding:0 24px}
h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.12;margin:0 0 .5em;color:var(--tinte)}
h1{font-size:clamp(2.3rem,5vw,3.6rem);letter-spacing:-.01em}
h2{font-size:clamp(1.7rem,3vw,2.3rem)}
h3{font-size:1.2rem}
p{margin:0 0 1em}
.eyebrow{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gruen);font-weight:600;margin-bottom:.8em}
.lead{font-size:1.2rem;color:#33332f;max-width:40em}
.muted{color:var(--grau);font-size:.92rem}
sup.ref a{font-size:.68em;text-decoration:none;font-weight:600;padding:0 .1em}
:focus-visible{outline:3px solid var(--gruen);outline-offset:2px}
.skip{position:absolute;left:-999px}.skip:focus{left:12px;top:12px;background:#fff;padding:8px 12px;z-index:99}

/* Header */
header.top{position:sticky;top:0;z-index:20;background:rgba(246,245,240,.94);backdrop-filter:blur(6px);border-bottom:1px solid var(--linie)}
header.top .wrap{display:flex;align-items:center;justify-content:space-between;height:68px;gap:16px}
.brand{display:flex;flex-direction:column;text-decoration:none;color:var(--tinte)}
.brand b{font-family:var(--serif);font-size:1.6rem;line-height:1;color:var(--gruen)}
.brand span{font-size:.72rem;color:var(--grau);letter-spacing:.02em}
nav.main{display:flex;align-items:center;gap:22px;font-size:.95rem}
nav.main a{text-decoration:none;color:var(--tinte)}nav.main a:hover{color:var(--gruen)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;padding:12px 22px;font:600 1rem var(--sans);text-decoration:none;border:2px solid var(--gruen);cursor:pointer;transition:background .15s,color .15s}
.btn.primary{background:var(--gruen);color:var(--papier)}.btn.primary:hover{background:var(--dunkelgruen);border-color:var(--dunkelgruen);color:var(--papier)}
.btn.ghost{background:transparent;color:var(--gruen)}.btn.ghost:hover{background:var(--gruen10)}
.btn.small{padding:8px 16px;font-size:.9rem}
@media (max-width:820px){nav.main > a:not(.btn){display:none}}

/* Hero */
.hero{padding:72px 0 56px}
.hero .wrap{display:grid;grid-template-columns:1.25fr .75fr;gap:48px;align-items:center}
.hero .ctas{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0 8px}
.hook{background:var(--weiss);border:1px solid var(--linie);border-left:4px solid var(--gruen);border-radius:var(--r);padding:22px 24px}
.hook p{font-family:var(--serif);font-size:1.55rem;line-height:1.28;margin:0;font-weight:500}
.hook small{display:block;margin-top:10px;color:var(--grau)}
@media (max-width:880px){.hero .wrap{grid-template-columns:1fr}.hero{padding:44px 0 32px}}

section{padding:72px 0;border-top:1px solid var(--linie)}
section.tint{background:var(--gruen10)}
.sec-head{max-width:46em;margin-bottom:36px}

/* Fact tiles */
.facts{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.fact{background:var(--weiss);border:1px solid var(--linie);border-radius:var(--r);padding:22px}
.fact .num{font-family:var(--serif);font-weight:600;font-variant-numeric:tabular-nums;font-size:1.6rem;line-height:1.1;color:var(--gruen);margin-bottom:8px}
.fact p{font-size:.95rem;margin:0}
.risks{margin-top:28px;display:grid;grid-template-columns:repeat(5,1fr);gap:16px}
.risk{border-top:3px solid var(--risiko);padding-top:14px}
.risk h3{font-size:1.02rem;color:var(--risiko);font-family:var(--sans);font-weight:600;margin-bottom:6px}
.risk p{font-size:.93rem;margin:0}
.stand{margin-top:24px}
@media (max-width:1100px){.risks{grid-template-columns:repeat(3,1fr)}}
@media (max-width:980px){.facts,.risks{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.facts,.risks{grid-template-columns:1fr}}

/* Steps */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;counter-reset:s}
.step{background:var(--weiss);border:1px solid var(--linie);border-radius:var(--r);padding:26px}
.step::before{counter-increment:s;content:counter(s);display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--gruen);color:var(--papier);font:700 1rem var(--serif);margin-bottom:14px}
.outcomes{display:flex;gap:8px;flex-wrap:wrap;margin-top:6px}
.outcomes span{border:1px solid var(--gruen20);background:var(--gruen10);border-radius:999px;padding:3px 12px;font-size:.88rem;font-weight:600;color:var(--dunkelgruen)}
.outcomes span.no{background:#F3E6E2;border-color:#E2C3BA;color:var(--risiko)}
@media (max-width:860px){.steps{grid-template-columns:1fr}}

/* Founders */
.founders{display:grid;grid-template-columns:1fr 1fr;gap:28px 40px;margin-bottom:36px}
.person{display:flex;gap:28px;align-items:flex-start;padding:8px 0}
.mono{flex:0 0 64px;height:64px;border-radius:50%;background:var(--gruen);color:var(--papier);display:grid;place-items:center;font:700 1.4rem var(--serif)}
.person .photo{flex:0 0 120px;width:120px;height:120px;border-radius:50%;object-fit:cover;border:2px solid var(--gruen);background:var(--gruen10)}
.person h3{font-size:1.45rem;line-height:1.25}
.story{margin:0 0 28px;max-width:820px}
.story blockquote{margin:0;border-left:3px solid var(--gruen);padding:4px 0 4px 22px;font:italic 1.12rem/1.6 var(--serif);color:var(--tinte,#1C1C1A)}
.story blockquote p{margin:0 0 12px}
.story figcaption{margin:10px 0 0 25px;font-size:.9rem;color:var(--grau)}
.story figcaption::before{content:"";}
@media (max-width:600px){.person{gap:18px}.person .photo{flex-basis:96px;width:96px;height:96px}.story blockquote{font-size:1.02rem}}
.person h3{margin-bottom:2px}.person .role{color:var(--grau);font-size:.9rem;margin-bottom:10px}
.complement{margin-top:28px;padding:20px 24px;border-left:4px solid var(--blau);background:var(--weiss);border-radius:0 var(--r) var(--r) 0}

/* CTA band */
.band{background:var(--gruen);color:var(--papier);border-top:0}
.band h2{color:var(--papier)}.band p{color:#E4ECE7}
.band .wrap{display:flex;justify-content:space-between;align-items:center;gap:32px;flex-wrap:wrap}
.band .btn.primary{background:var(--papier);color:var(--gruen);border-color:var(--papier)}
.band .btn.primary:hover{background:var(--gruen10)}

/* Sources */
ol.sources{padding-left:1.4em;font-size:.88rem;color:#3a3a36}
ol.sources li{margin-bottom:8px}
ol.sources .tier{color:var(--grau)}

footer{padding:36px 0 48px;font-size:.88rem;color:var(--grau);border-top:1px solid var(--linie)}
footer .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
footer a{color:var(--grau)}

/* ---------- Selbsttest ---------- */
.st{display:grid;grid-template-columns:1fr 300px;gap:28px;align-items:start}
@media (max-width:940px){.st{grid-template-columns:1fr}}
.st-card{background:var(--weiss);border:1px solid var(--linie);border-radius:14px;padding:28px}
.st-progress{height:6px;background:var(--gruen10);border-radius:3px;overflow:hidden;margin-bottom:22px}
.st-progress i{display:block;height:100%;background:var(--gruen);width:0;transition:width .25s}
.st-gate{font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:var(--gruen);font-weight:600}
.st-gate-title{font-family:var(--serif);font-size:1.5rem;font-weight:700;margin:4px 0 18px}
.st-q{padding:16px 0;border-top:1px solid var(--linie)}
.st-q legend{font-weight:500;margin-bottom:10px;padding:0}
.st-q fieldset{border:0;margin:0;padding:0}
.st-opts{display:flex;gap:8px;flex-wrap:wrap}
.st-opts label{position:relative}
.st-opts input{position:absolute;opacity:0;inset:0;cursor:pointer}
.st-opts span{display:inline-block;border:1.5px solid var(--linie);border-radius:999px;padding:7px 16px;font-size:.93rem;cursor:pointer;background:var(--papier)}
.st-opts input:checked+span{background:var(--gruen);color:var(--papier);border-color:var(--gruen)}
.st-opts input:focus-visible+span{outline:3px solid var(--gruen);outline-offset:2px}
.st-nav{display:flex;justify-content:space-between;align-items:center;margin-top:22px;gap:12px}
.st-side{background:var(--weiss);border:1px solid var(--linie);border-radius:14px;padding:22px;font-size:.93rem}
.st-side h3{font-size:1.05rem}
.st-side ul{padding-left:1.1em;margin:0}.st-side li{margin-bottom:10px}
.st-result h3{font-size:1.6rem;margin-bottom:6px}
.st-badge{display:inline-block;border-radius:999px;padding:4px 14px;font-weight:600;font-size:.88rem;margin-bottom:12px}
.st-badge.go{background:var(--gruen);color:var(--papier)}
.st-badge.watch{background:var(--blau);color:var(--papier)}
.st-badge.hold,.st-badge.ko{background:var(--risiko);color:var(--papier)}
.st-badge.info{background:#5C5B55;color:var(--papier)}
.st-bars{margin:18px 0}
.st-bar{display:grid;grid-template-columns:minmax(0,1fr) 140px 46px;gap:10px;align-items:center;font-size:.92rem;margin-bottom:8px}
.st-bar .t{height:10px;background:var(--gruen10);border-radius:5px;overflow:hidden}
.st-bar .t i{display:block;height:100%;background:var(--gruen)}
.st-bar.low .t i{background:var(--risiko)}
.st-bar .v{text-align:right;font-variant-numeric:tabular-nums;color:var(--grau)}
@media (max-width:520px){.st-bar{grid-template-columns:1fr 70px 40px}}
.st-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.form{display:grid;gap:10px;margin-top:14px}
.form input[type=email],.form input[type=text]{width:100%;padding:11px 14px;border:1.5px solid var(--linie);border-radius:8px;font:inherit;background:var(--papier)}
.form label.consent{font-size:.84rem;color:var(--grau);display:flex;gap:8px;align-items:flex-start}
.form .ok{color:var(--gruen);font-weight:600}
.form .err{color:var(--risiko)}

/* ---------- Miguel ---------- */
.mg{display:grid;grid-template-columns:320px 1fr;gap:36px;align-items:start}
@media (max-width:940px){.mg{grid-template-columns:1fr}}
.mg-intro h2{font-size:1.7rem}
.mg-intro figure{margin:0 0 18px;width:240px;max-width:70%}
.mg-panel{background:var(--weiss);border:1px solid var(--linie);border-radius:16px;display:flex;flex-direction:column;height:640px;overflow:hidden}
@media (max-width:560px){.mg-panel{height:78vh}}
.mg-head{display:flex;align-items:center;gap:12px;padding:14px 18px;border-bottom:1px solid var(--linie)}
.mg-head .av{width:44px;height:44px;border-radius:50%;overflow:hidden;background:var(--gruen10);flex:0 0 44px}
.mg-head b{font-family:var(--serif);font-size:1.1rem;display:block;line-height:1.1}
.mg-head small{color:var(--grau);font-size:.78rem}
.mg-log{flex:1;overflow-y:auto;padding:18px;display:flex;flex-direction:column;gap:12px}
.msg{max-width:86%;padding:11px 15px;border-radius:14px;font-size:.96rem;white-space:pre-wrap;word-wrap:break-word}
.msg.bot{background:var(--gruen10);border-top-left-radius:4px;align-self:flex-start}
.msg.user{background:var(--gruen);color:var(--papier);border-top-right-radius:4px;align-self:flex-end}
.msg .fb{display:block;margin-top:6px;font-style:italic;color:var(--grau)}
.msg .cites{display:block;margin-top:10px;padding-top:8px;border-top:1px solid var(--gruen20);font-size:.78rem;white-space:normal;color:#3a3a36}
.msg .cites a{color:var(--dunkelgruen)}
.msg sup a{text-decoration:none;font-weight:700;color:var(--gruen)}
.typing{display:inline-flex;gap:4px}.typing i{width:7px;height:7px;border-radius:50%;background:var(--gruen);opacity:.3;animation:td 1.2s infinite}
.typing i:nth-child(2){animation-delay:.2s}.typing i:nth-child(3){animation-delay:.4s}
@keyframes td{30%{opacity:1}}
.mg-chips{display:flex;gap:8px;flex-wrap:wrap;padding:0 18px 10px}
.mg-chips button{border:1.5px solid var(--gruen20);background:var(--papier);color:var(--dunkelgruen);border-radius:999px;padding:6px 12px;font:500 .84rem var(--sans);cursor:pointer}
.mg-chips button:hover{background:var(--gruen10)}
.mg-input{display:flex;gap:8px;padding:12px;border-top:1px solid var(--linie)}
.mg-input textarea{flex:1;resize:none;border:1.5px solid var(--linie);border-radius:10px;padding:10px 12px;font:inherit;font-size:.96rem;height:46px;max-height:120px;background:var(--papier)}
.mg-note{font-size:.76rem;color:var(--grau);padding:0 14px 10px}
.mg-card{align-self:stretch;background:var(--papier);border:1px solid var(--gruen20);border-radius:12px;padding:14px}

@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Print: only the Selbsttest Auswertung */
@media print{
  body{background:#fff;font-size:11pt}
  body.print-st > *:not(main){display:none!important}
  body.print-st main > *:not(#selbsttest){display:none!important}
  body.print-st #selbsttest{border:0;padding:0}
  body.print-st .st-side,body.print-st .st-actions,body.print-st .form,body.print-st .sec-head{display:none!important}
  body.print-st #selbsttest{background:#fff!important}
  body.print-st .st{display:block}
  body.print-st .st-card{border:0;padding:0}
  .print-only{display:block!important}
}
.print-only{display:none}

@media (max-width:600px){.brand span{display:none}header.top .btn.small{padding:8px 14px;font-size:.85rem;white-space:nowrap}.hide-sm{display:none}}

/* Live official figures */
.live{margin-top:28px;background:var(--weiss);border:1px solid var(--linie);border-radius:var(--r);padding:14px 18px;font-size:.93rem;display:flex;gap:8px;flex-wrap:wrap;align-items:baseline}
.live-dot{width:9px;height:9px;border-radius:50%;background:var(--gruen);display:inline-block;align-self:center;box-shadow:0 0 0 3px var(--gruen10)}
.live .item{margin-right:14px}.live .item b{font-variant-numeric:tabular-nums}
.live .item small{color:var(--grau)}
.live[hidden]{display:none}

/* Readiness bar under the chat (no counter, four stages) */
.mg-ready{display:flex;align-items:center;gap:10px;padding:6px 18px 10px;font-size:.82rem;color:var(--grau);flex-wrap:wrap}
.mg-ready b{flex:0 0 120px;height:6px;border-radius:3px;background:var(--gruen10);overflow:hidden;display:block}
.mg-ready b i{display:block;height:100%;width:25%;background:var(--gruen);transition:width .3s}
.mg-ready button[hidden]{display:none}
.mg-head small a{color:var(--grau)}
.mg-sum{margin:4px 0;padding-left:1.1em;font-size:.86rem}
/* Klartext table */
.klartext{margin-top:28px;background:var(--weiss);border:1px solid var(--linie);border-radius:var(--r);padding:22px 24px;overflow-x:auto}
.klartext table{width:100%;border-collapse:collapse;font-size:.95rem;min-width:520px}
.klartext th{text-align:left;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--gruen);padding:6px 10px;border-bottom:1px solid var(--linie)}
.klartext td{padding:10px;border-bottom:1px solid var(--linie);vertical-align:top}
.klartext td:first-child{font-weight:600}
.klartext td:last-child{color:var(--dunkelgruen)}

.lang-pick{display:flex;align-items:center;gap:.6rem;font-size:.9rem;color:var(--grau,#5C5B55)}
.lang-pick select{font:inherit;padding:.35rem .5rem;border:1px solid #D9D8D1;border-radius:6px;background:#fff;color:#1C1C1A}

/* ===== Brand V3.2 look and motion ===== */
.brand b{font-weight:500;letter-spacing:-.01em}
h3{font-weight:500}
.claim{font-style:italic;font-weight:400;color:var(--gruen);font-size:clamp(2.6rem,6vw,4.4rem);line-height:1.05;letter-spacing:-.01em}
.sec-head .eyebrow{display:flex;align-items:center;gap:12px}
.sec-head .eyebrow::before{content:"";display:block;height:2px;width:36px;background:var(--gruen);transform-origin:left;transition:transform .9s cubic-bezier(.2,.7,.2,1) .1s}
.hero{position:relative;overflow:hidden}
.hero .wrap{position:relative;z-index:1}
.hero-ground{position:absolute;inset:0;pointer-events:none}
.hero-ground .emblem{position:absolute;right:-2%;bottom:-4%;width:min(44vw,600px);max-width:none;height:auto;fill:var(--gruen);opacity:.1}
.trenn{max-width:var(--max);margin:0 auto;padding:0 24px;height:40px}
.trenn svg{width:100%;height:40px}
.trenn path{fill:none;stroke:var(--gruen40);stroke-width:1.4;vector-effect:non-scaling-stroke}
.trenn + section{border-top:0}
.fact,.step,.hook{transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease}
.fact:hover,.step:hover{transform:translateY(-3px);box-shadow:0 10px 28px -18px rgba(18,58,38,.45);border-color:var(--gruen20)}
.btn{transition:background .2s,color .2s,border-color .2s,transform .2s,box-shadow .2s}
.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0)}
.btn.primary:hover{box-shadow:0 8px 20px -12px rgba(18,58,38,.6)}
header.top{transition:box-shadow .3s ease,background .3s ease}
header.top.scrolled{box-shadow:0 6px 18px -14px rgba(18,58,38,.5);background:rgba(246,245,240,.98)}
/* Drei Ausgänge, the brand code */
.fork{margin:36px 0 8px;display:grid;grid-template-columns:minmax(120px,300px) 1fr;align-items:stretch;background:var(--weiss);border:1px solid var(--linie);border-radius:var(--r);padding:28px 28px 28px 20px}
.fork-lines{position:relative}
.fork-lines svg{width:100%;height:100%;min-height:240px;overflow:visible}
.fork-lines path{fill:none;stroke-width:3;vector-effect:non-scaling-stroke;stroke-linecap:round}
.fork-lines .b1{stroke:var(--gruen)}.fork-lines .b2{stroke:var(--gruen40)}.fork-lines .b3{stroke:var(--gruen20)}
.fork-dot{position:absolute;left:calc(4% - 8px);top:calc(50% - 8px);width:16px;height:16px;border-radius:50%;background:var(--gruen)}
.fork-label{position:absolute;left:0;top:calc(50% - 34px);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--gruen)}
.fork-exits{display:grid;grid-template-rows:repeat(3,1fr);gap:14px}
.exit{display:flex;flex-direction:column;justify-content:center;padding:12px 18px;border-left:4px solid var(--gruen);background:var(--gruen20)}
.exit b{font-family:var(--serif);font-weight:500;font-size:1.25rem;color:var(--dunkelgruen)}
.exit span{font-size:.92rem;color:#33332f}
.exit.e2{background:var(--gruen10);border-left-color:var(--gruen40)}
.exit.e3{background:#EDEFEA;border-left-color:var(--gruen20)}
@media (max-width:640px){.fork{grid-template-columns:72px 1fr;padding:18px 16px 18px 10px}.fork-label{display:none}.exit b{font-size:1.1rem}}
/* CTA band with drawn contours */
.band{position:relative;overflow:hidden}
.band .wrap{position:relative;z-index:1}
.band-ground{position:absolute;inset:0;pointer-events:none}
.band-ground .contour{width:140%;max-width:none;height:100%;transform:translateX(-4%)}
/* Founders */
.person .photo{transition:transform .5s cubic-bezier(.2,.7,.2,1),box-shadow .5s}
.person:hover .photo{transform:scale(1.04);box-shadow:0 0 0 6px var(--gruen10)}
/* Chat messages */
.msg{animation:msgIn .35s ease both}
@keyframes msgIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}

/* ---- Motion: only with JS and without reduced motion ---- */
@media (prefers-reduced-motion:no-preference){
  .js .rv{opacity:0}
  .js .rv.in{animation:rvIn .85s cubic-bezier(.2,.7,.2,1) var(--d,0s) both}
  @keyframes rvIn{from{opacity:0;translate:0 18px}to{opacity:1;translate:0 0}}
  .js .sec-head:not(.in) .eyebrow::before{transform:scaleX(0)}
  .js .hero-ground .emblem{clip-path:inset(100% 0 0 0);transition:clip-path 2.2s cubic-bezier(.45,.05,.2,1) .35s}
  .js .hero.in .hero-ground .emblem{clip-path:inset(0 0 0 0)}
  .js .trenn path{stroke-dasharray:1400;stroke-dashoffset:1400;transition:stroke-dashoffset 1.8s ease}
  .js .trenn.in path{stroke-dashoffset:0}
  .js .fork-lines path{stroke-dasharray:420;stroke-dashoffset:420;transition:stroke-dashoffset 1.1s cubic-bezier(.4,0,.2,1)}
  .js .fork.in .b1{stroke-dashoffset:0;transition-delay:.3s}
  .js .fork.in .b2{stroke-dashoffset:0;transition-delay:.55s}
  .js .fork.in .b3{stroke-dashoffset:0;transition-delay:.8s}
  .js .fork-dot{transform:scale(0);transition:transform .5s cubic-bezier(.3,1.6,.5,1)}
  .js .fork.in .fork-dot{transform:scale(1)}
  .js .exit{opacity:0;transform:translateX(16px);transition:opacity .6s ease,transform .6s ease}
  .js .fork.in .e1{opacity:1;transform:none;transition-delay:1.1s}
  .js .fork.in .e2{opacity:1;transform:none;transition-delay:1.3s}
  .js .fork.in .e3{opacity:1;transform:none;transition-delay:1.5s}
  .js .band-ground .contour path{stroke-dasharray:2200;stroke-dashoffset:2200;transition:stroke-dashoffset 2.4s ease calc(var(--i) * 60ms)}
  .js .band.in .band-ground .contour path{stroke-dashoffset:0}
  .band-ground .contour{animation:drift 26s ease-in-out infinite alternate}
  @keyframes drift{from{transform:translateX(-2%)}to{transform:translateX(-24%)}}
}

.nw{white-space:nowrap}

/* Language switch */
.langs{display:flex;gap:2px;font-size:.78rem;letter-spacing:.08em;font-weight:600}
.langs a{color:var(--grau);text-decoration:none;padding:4px 6px;border-radius:6px}
.langs a:hover{color:var(--gruen);background:var(--gruen10)}
.langs a[aria-current]{color:var(--gruen);box-shadow:inset 0 -2px 0 var(--gruen);border-radius:0}
@media (max-width:820px){nav.main{gap:10px}}

/* Decision matrix (Senda experts) */
.matrix{background:var(--weiss);border:1px solid var(--linie);border-radius:var(--r);padding:22px 24px;overflow-x:auto}
.matrix table{width:100%;border-collapse:collapse;font-size:.95rem;min-width:640px}
.matrix th{text-align:left;font-size:.76rem;letter-spacing:.08em;text-transform:uppercase;color:var(--gruen);padding:6px 10px;border-bottom:1px solid var(--tinte)}
.matrix td{padding:11px 10px;border-bottom:1px solid var(--linie);vertical-align:top}
.matrix td:first-child{font-family:var(--serif);font-weight:500;font-size:1.02rem}
.matrix td:nth-child(2){color:var(--dunkelgruen);font-weight:600}
.matrix td:nth-child(3){color:var(--grau)}
.matrix tr.neg td:first-child,.matrix tr.neg td:nth-child(2){color:var(--risiko)}
.matrix .fazit{margin:18px 0 8px;padding-left:16px;border-left:3px solid var(--gruen);font-family:var(--serif);font-size:1.05rem;line-height:1.5}
.matrix .fazit strong{font-family:var(--sans);font-size:.82rem;letter-spacing:.06em;text-transform:uppercase;color:var(--gruen);display:block;margin-bottom:4px}

/* ---------- Miguel as chat bubble (js/miguel-dock.js) ---------- */
.mg-launch{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:40;display:flex;align-items:center;gap:10px;padding:6px 18px 6px 6px;border-radius:999px;border:1px solid var(--gruen20);background:var(--weiss);box-shadow:0 8px 24px rgba(18,58,38,.18);cursor:pointer;font:inherit;color:var(--tinte);transition:transform .2s,box-shadow .2s;animation:mgPop .45s cubic-bezier(.2,.9,.3,1.3)}
.mg-launch::after{content:"";position:absolute;inset:-2px;border-radius:999px;border:2px solid var(--gruen);animation:mgRing 2.4s ease-out 1s 2;opacity:0;pointer-events:none}
@keyframes mgPop{from{transform:scale(.4);opacity:0}to{transform:scale(1);opacity:1}}
@keyframes mgRing{0%{transform:scale(1);opacity:.6}100%{transform:scale(1.25,1.6);opacity:0}}
.mg-launch:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(18,58,38,.24)}
.mg-launch[hidden],.mg-teaser[hidden],.mg-away[hidden]{display:none}
.mg-launch-face{width:52px;height:52px;border-radius:50%;overflow:hidden;background:var(--gruen10);flex:0 0 52px;display:block}
.mg-launch-face img,.mg-launch-face svg,.mg-head .av svg{width:100%;height:100%;display:block}
.mg-launch-txt{display:flex;flex-direction:column;text-align:left;line-height:1.2}
.mg-launch-txt b{font-family:var(--serif);font-size:1.05rem;color:var(--gruen)}
.mg-launch-txt small{font-size:.82rem;color:var(--grau)}
.mg-intro figure svg{width:100%;height:auto;display:block}
.mg-pop svg{animation:mgFace .35s cubic-bezier(.2,.9,.3,1.25)}
@keyframes mgFace{0%{transform:scale(.92) rotate(-3deg)}100%{transform:none}}
.mg-teaser{position:fixed;right:16px;bottom:calc(88px + env(safe-area-inset-bottom,0px));z-index:40;max-width:270px;background:var(--gruen);color:var(--papier);padding:12px 16px;border-radius:14px 14px 4px 14px;font:500 1rem/1.3 var(--serif);box-shadow:0 8px 24px rgba(18,58,38,.22);cursor:pointer;animation:mgIn .3s ease-out}
.mg-close{display:none;margin-left:auto;width:38px;height:38px;border-radius:50%;border:1px solid var(--linie);background:var(--papier);color:var(--tinte);place-items:center;cursor:pointer;flex:0 0 38px}
.mg-close:hover{background:var(--gruen10)}
.mg-panel.docked .mg-close{display:grid}
.mg-panel.docked{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:50;width:400px;max-width:calc(100vw - 32px);height:min(640px,calc(100vh - 32px));box-shadow:0 18px 48px rgba(18,58,38,.28);animation:mgIn .22s ease-out}
@keyframes mgIn{from{opacity:0;translate:0 16px}to{opacity:1;translate:0 0}}
.mg-away{background:var(--weiss);border:1px dashed var(--gruen40);border-radius:16px;padding:28px;display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-height:200px;justify-content:center}
.st-method{margin-top:10px;font-size:.92rem}
@media (max-width:560px){
  .mg-launch{padding:4px;right:12px}.mg-launch-txt{display:none}
  .mg-teaser{right:12px;bottom:calc(84px + env(safe-area-inset-bottom,0px));max-width:calc(100vw - 24px)}
  .mg-panel.docked{inset:0;width:auto;max-width:none;height:auto;border-radius:0;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
  html.mg-open{overflow:hidden}
}
@media (prefers-reduced-motion:reduce){.mg-panel.docked,.mg-teaser,.mg-launch,.mg-launch::after,.mg-pop svg{animation:none}.mg-launch{transition:none}}
@media print{.mg-launch,.mg-teaser{display:none!important}}

/* Miguel out of office (js/miguel-face.js) */
.mgx .ooo{display:none}
.mgx .mgx-ooo .ooo{display:inline}
.mgx .mgx-ooo .anim-of,.mgx .mgx-ooo .ss,.mgx .mgx-ooo .bgf{animation:none!important;opacity:0!important}
.mg-panel[hidden]{display:none}

/* Aus der Praxis */
.case-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:8px}
@media (max-width:860px){.case-grid{grid-template-columns:1fr}}
.case{background:var(--weiss);border:1px solid var(--linie);border-top:3px solid var(--gruen);border-radius:var(--r);padding:22px;min-width:0}
.case-k{font:600 .78rem var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--gruen);margin-bottom:8px}
.case p{margin:0}
.case-take{font-family:var(--serif);font-size:1.25rem;line-height:1.35;margin:26px 0 8px;max-width:760px}
.case-ns{grid-column:1/-1;background:var(--gruen);border-color:var(--gruen);color:var(--papier)}
.case-ns .case-k{color:var(--gruen20)}.case-ns p{font-family:var(--serif);font-size:1.2rem;line-height:1.35;color:var(--papier)}
#praxis .case-grid+.muted{margin-top:14px}
.dl{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px;align-items:flex-start}.dl-form{flex-basis:100%;max-width:520px}

/* Miguel's backgrounds take turns every 8 s: plain (or the holiday look on special days), Mexico, Germany, Senda.
   His six outfits keep changing on special days too. */
.mgx .bg-senda{opacity:0;animation:mgx-bgsenda 32s linear infinite both;animation-delay:-8s}
.mgx .mgx-s .bgf,.mgx .mgx-s.seasonal .bgf{animation:mgx-bg4 32s linear infinite both}
.mgx .mgx-s .bgf.b1,.mgx .mgx-s.seasonal .bgf.b1{animation-delay:-24s}.mgx .mgx-s .bgf.b2,.mgx .mgx-s.seasonal .bgf.b2{animation-delay:-16s}
@keyframes mgx-bg4{0%{opacity:0}3%{opacity:.32}25%{opacity:.32}28%{opacity:0}100%{opacity:0}}
@keyframes mgx-bgsenda{0%{opacity:0}3%{opacity:1}25%{opacity:1}28%{opacity:0}100%{opacity:0}}
.mgx .mgx-s.season-einheit .ss-einheit,.mgx .mgx-s.season-nikolaus .ss-nikolaus,.mgx .mgx-s.season-reyes .ss-reyes,.mgx .mgx-s.season-candelaria .ss-candelaria,.mgx .mgx-s.season-silvester .ss-silvester,.mgx .mgx-s.season-ostern .ss-ostern,.mgx .mgx-s.season-karneval .ss-karneval,.mgx .mgx-s.season-mexico .ss-mexico,.mgx .mgx-s.season-okt .ss-okt,.mgx .mgx-s.season-dia .ss-dia,.mgx .mgx-s.season-navidad .ss-navidad{animation:mgx-sscyc 32s linear infinite both}
@keyframes mgx-sscyc{0%{opacity:1}24%{opacity:1}27%{opacity:0}97%{opacity:0}100%{opacity:1}}
.mgx .mgx-s.seasonal .anim-of{animation:mgx-cyc6 48s linear infinite both}
.mgx .mgx-s.seasonal .anim-of.d0{animation-delay:-49s}.mgx .mgx-s.seasonal .anim-of.d1{animation-delay:-41s}.mgx .mgx-s.seasonal .anim-of.d2{animation-delay:-33s}
.mgx .mgx-s.seasonal .anim-of.d3{animation-delay:-25s}.mgx .mgx-s.seasonal .anim-of.d4{animation-delay:-17s}.mgx .mgx-s.seasonal .anim-of.d5{animation-delay:-9s}
.mgx .mgx-ooo .bg-senda,.mgx .fix .bg-senda{animation:none!important;opacity:0!important}
@media (prefers-reduced-motion:reduce){.mgx .bg-senda,.mgx .mgx-s .bgf,.mgx .mgx-s.season-einheit .ss-einheit,.mgx .mgx-s.season-nikolaus .ss-nikolaus,.mgx .mgx-s.season-reyes .ss-reyes,.mgx .mgx-s.season-candelaria .ss-candelaria,.mgx .mgx-s.season-silvester .ss-silvester,.mgx .mgx-s.season-ostern .ss-ostern,.mgx .mgx-s.season-karneval .ss-karneval,.mgx .mgx-s.season-mexico .ss-mexico,.mgx .mgx-s.season-okt .ss-okt,.mgx .mgx-s.season-dia .ss-dia,.mgx .mgx-s.season-navidad .ss-navidad,.mgx .mgx-s.seasonal .anim-of{animation:none}.mgx .bg-senda{opacity:0}}

/* Konzept V2: Komplexität, Brücke, Ökosystem, Partner-Weg, andere Wege */
.pairs{display:grid;gap:14px;margin-top:8px}
.pair-head{display:grid;grid-template-columns:1fr 1fr;gap:56px;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--grau)}
.pair-head span:last-child{color:var(--gruen)}
.pair{display:grid;grid-template-columns:1fr 1fr;gap:56px;position:relative}
.pair::after{content:"";position:absolute;left:calc(50% - 22px);top:50%;width:44px;border-top:2px solid var(--gruen40)}
.pair .plan,.pair .montag{display:flex;flex-direction:column;justify-content:center;padding:16px 20px;border-radius:var(--r);background:var(--weiss);border:1px solid var(--linie)}
.pair .plan{color:var(--grau);background:transparent;border-style:dashed}
.pair .montag{border:2px solid var(--gruen)}
.pair p{margin:0}.pair small{display:none}
.pair-end{margin:22px 0 0;font-family:var(--serif);font-size:1.3rem;color:var(--gruen)}
@media (max-width:760px){
  .pair-head{display:none}
  .pair{grid-template-columns:1fr;gap:0}
  .pair::after{display:none}
  .pair .plan{border-radius:var(--r) var(--r) 0 0;border-bottom:none}
  .pair .montag{border-radius:0 0 var(--r) var(--r)}
  .pair small{display:block;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;font-weight:600;margin-bottom:4px}
  .pair .montag small{color:var(--gruen)}
}
.roles{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.role-card{background:var(--weiss);border-radius:var(--r);padding:22px 24px;border-top:4px solid var(--gruen)}
.role-card p{margin:0}
@media (max-width:860px){.roles{grid-template-columns:1fr}}

.eco{display:grid;grid-template-columns:1fr minmax(200px,240px) 1fr;gap:0 56px;align-items:center;margin:8px 0 18px}
.eco-side{display:grid;gap:10px;position:relative}
.eco-label{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--grau)}
.eco-node{background:var(--weiss);border:1px solid var(--linie);border-radius:var(--r);position:relative}
.eco-node.eco-plus{border-style:dashed;background:transparent}
.eco-node summary{list-style:none;cursor:pointer;padding:12px 40px 12px 16px;display:flex;flex-direction:column;position:relative}
.eco-node summary::-webkit-details-marker{display:none}
.eco-node summary::after{content:"+";position:absolute;right:16px;top:50%;transform:translateY(-50%);font-size:1.3rem;color:var(--gruen);line-height:1}
.eco-node[open] summary::after{content:"\2212"}
.eco-node summary b{font-weight:600}
.eco-node summary small{color:var(--grau);font-size:.86rem}
.eco-node[open]{border-color:var(--gruen)}
.eco-node p{margin:0;padding:0 16px 14px;font-size:.95rem}
.eco-hub{background:var(--gruen);color:var(--papier);border-radius:var(--r);padding:22px;text-align:center;position:relative}
.eco-hub b{display:block;font-family:var(--serif);font-size:1.6rem;font-weight:500;margin-bottom:6px}
.eco-hub span{font-size:.95rem;line-height:1.45}
.eco-dach .eco-node::after,.eco-mx .eco-node::before{content:"";position:absolute;top:50%;width:28px;border-top:1px solid var(--gruen40)}
.eco-dach .eco-node::after{right:-29px}
.eco-dach .eco-node.eco-plus::after{border-top-style:dashed}
.eco-mx .eco-node::before{left:-29px}
.eco-dach::after,.eco-mx::before{content:"";position:absolute;top:66px;bottom:37px;border-left:1px solid var(--gruen40)}
.eco-dach::after{right:-29px}.eco-mx::before{left:-29px}
.eco-hub::before,.eco-hub::after{content:"";position:absolute;top:50%;width:28px;border-top:1px solid var(--gruen40)}
.eco-hub::before{left:-28px}.eco-hub::after{right:-28px}
@media (max-width:900px){
  .eco{grid-template-columns:1fr;gap:14px}
  .eco-hub{order:-1}
  .eco-dach .eco-node::after,.eco-mx .eco-node::before,.eco-dach::after,.eco-mx::before,.eco-hub::before,.eco-hub::after{display:none}
}

.founders{grid-template-columns:1fr 80px 1fr;gap:28px 24px}
.founders .road{width:80px;height:100%;min-height:130px;fill:none;stroke:var(--gruen);stroke-width:2;vector-effect:non-scaling-stroke}
.founders .road path{vector-effect:non-scaling-stroke}.founders .road .mid{stroke:var(--gruen40);stroke-dasharray:6 8}
@media (max-width:760px){.founders{grid-template-columns:1fr}.founders .road{height:56px;min-height:0;margin:0 auto}}

.paths{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.path-card{border:1px solid var(--linie);border-radius:var(--r);padding:22px 24px;background:var(--weiss)}
.path-card a{font-weight:600}
@media (max-width:760px){.paths{grid-template-columns:1fr}}
.bio{margin-top:10px}
.bio summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:8px;font-weight:600;color:var(--gruen);padding:6px 14px;border:1.5px solid var(--gruen);border-radius:999px;font-size:.92rem}
.bio summary::-webkit-details-marker{display:none}
.bio summary::after{content:"";width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .2s}
.bio[open] summary::after{transform:rotate(-135deg) translateY(-2px)}
.bio summary:hover{background:var(--gruen10)}
.bio[open] summary{margin-bottom:14px}
.founders .road{width:80px;height:auto;min-height:0;align-self:center;fill:var(--gruen);stroke:none;opacity:.85}
@media (max-width:760px){.founders .road{width:52px;height:auto;margin:4px auto}}
.role-mail{color:var(--gruen);text-decoration:none;white-space:nowrap}.role-mail:hover{text-decoration:underline}

/* Zwei Richtungen: Wohin geht's? + Go Global */
.doors{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.door{display:flex;flex-direction:column;gap:8px;padding:26px 28px;border-radius:var(--r);background:var(--weiss);border:2px solid var(--gruen20);text-decoration:none;color:var(--tinte);transition:border-color .2s,transform .2s}
.door:hover{border-color:var(--gruen);color:var(--tinte);transform:translateY(-2px)}
.door-dir{font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;font-weight:600;color:var(--grau)}
.door b{font-family:var(--serif);font-weight:500;font-size:1.7rem;color:var(--gruen)}
.door-txt{color:#33332f}
.door em{font-style:normal;font-weight:600;color:var(--gruen);margin-top:6px}
.door em::after{content:" \2192"}
@media (max-width:760px){.doors{grid-template-columns:1fr}}
.paths{grid-template-columns:repeat(3,1fr)}
@media (max-width:980px){.paths{grid-template-columns:1fr}}
.gg-hero h1{font-size:clamp(2rem,4.2vw,3rem)}
.qs{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.q{background:var(--weiss);border:1px solid var(--linie);border-radius:var(--r);padding:16px 18px;display:flex;flex-direction:column;gap:4px}
.q b{font-family:var(--serif);font-weight:500;font-size:1.15rem;color:var(--gruen)}
.q span{font-size:.95rem;color:#33332f}
@media (max-width:980px){.qs{grid-template-columns:repeat(2,1fr)}}
@media (max-width:520px){.qs{grid-template-columns:1fr}}
.journey{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:14px;counter-reset:j}
.journey li{counter-increment:j;border-top:3px solid var(--gruen);padding:14px 4px 0;display:flex;flex-direction:column;gap:4px}
.journey li::before{content:counter(j,decimal-leading-zero);font-size:.8rem;font-weight:600;letter-spacing:.1em;color:var(--grau)}
.journey b{font-family:var(--serif);font-weight:500;font-size:1.2rem}
.journey span{color:#33332f;font-size:.95rem}
@media (max-width:860px){.journey{grid-template-columns:repeat(2,1fr)}}
@media (max-width:480px){.journey{grid-template-columns:1fr}}
.chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.chips li{background:var(--weiss);border:1px solid var(--linie);border-radius:999px;padding:8px 16px;font-size:.95rem}
.matrix.even td:nth-child(2),.matrix.even td:nth-child(3){color:var(--tinte);font-weight:400}
.punch{font-family:var(--serif);font-size:clamp(1.25rem,2.2vw,1.55rem);line-height:1.3;color:var(--gruen);max-width:34em;margin:0 0 .8em}
.faq{display:grid;align-items:start;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:18px 28px;counter-reset:fq;margin-bottom:16px}
.faq-group h3{font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;font-family:var(--sans);font-weight:600;color:var(--gruen);margin:0 0 10px}
.faq-item{border-top:1px solid var(--linie);counter-increment:fq}
.faq-item:last-child{border-bottom:1px solid var(--linie)}
.faq-item summary{list-style:none;cursor:pointer;padding:14px 32px 14px 34px;position:relative;font-family:var(--serif);font-size:1.08rem;line-height:1.35}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::before{content:counter(fq,decimal-leading-zero);position:absolute;left:0;top:17px;font:600 .78rem var(--sans);color:var(--grau);letter-spacing:.06em}
.faq-item summary::after{content:"+";position:absolute;right:4px;top:12px;font-size:1.3rem;color:var(--gruen)}
.faq-item[open] summary::after{content:"\2212"}
.faq-item p{margin:0 0 16px 34px;font-size:.97rem;color:#33332f}
.spass{margin:16px 0 0;font-family:var(--serif);font-style:italic;font-size:1.1rem;color:var(--gruen)}
.associate{margin-top:40px;padding-top:28px;border-top:1px solid var(--linie);max-width:640px}
.assoc-lead{font-family:var(--serif);font-size:1.15rem;margin:0 0 16px}
.person .photo.initials{display:flex;align-items:center;justify-content:center;font:500 2.2rem var(--serif);color:var(--gruen)}

/* Oscar Ocampo, Mexiko-Experte */
.oscar{background:var(--dunkelgruen);color:var(--papier);padding:80px 0 72px}
.oscar .eyebrow{color:#9FBFAB}
.oscar-top{display:flex;flex-wrap:wrap;gap:56px;align-items:center;margin-top:28px}
.oscar-photo{flex:0 0 auto;padding:10px;border:1px solid #5E8A70;border-radius:50%}
.oscar-photo img{width:280px;height:280px;max-width:66vw;max-height:66vw;border-radius:50%;object-fit:cover;display:block}
.oscar-intro{flex:1 1 420px;min-width:0}
.oscar h2{color:var(--papier);font-size:clamp(2.4rem,5vw,3.4rem);line-height:1.05;margin:0}
.oscar-role{color:#C9DACF;font-size:1.1rem;margin-top:10px}
.oscar-tag{font-size:1.2rem;margin:18px 0 0}
.oscar-quote{font-family:var(--serif);font-style:italic;font-size:clamp(1.3rem,2.4vw,1.7rem);line-height:1.4;margin:28px 0 0;color:var(--papier)}
.oscar-body{display:flex;flex-wrap:wrap;gap:56px;margin-top:56px}
.oscar-why{flex:1 1 420px}
.oscar-why p{color:#E6EEE8;font-size:1.08rem;line-height:1.65;margin:14px 0 0}
.oscar-why sup.ref a{color:#9FBFAB}
.oscar-topics{flex:1 1 300px}
.oscar .chips li{background:transparent;border-color:#5E8A70;color:#E6EEE8}
.oscar-stations{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px;margin-top:48px}
.oscar-stations div{border-top:1px solid #3E6B52;padding-top:14px}
.oscar-stations b{display:block;font-family:var(--serif);font-weight:600;font-size:1.3rem}
.oscar-stations span{display:block;color:#C9DACF;font-size:.95rem;margin-top:4px;line-height:1.45}
.oscar-foot{display:flex;flex-wrap:wrap;gap:20px;align-items:center;justify-content:space-between;margin-top:48px}
.oscar-foot span{font-size:.85rem;color:#8FB09B}
.oscar-btn{background:var(--papier);color:var(--dunkelgruen);border-color:var(--papier)}
.oscar-btn:hover{background:#fff;color:var(--dunkelgruen)}

/* Klarheits-Revision */
.hero-h1{font-size:clamp(1.9rem,3.6vw,2.7rem);line-height:1.15}
.claim.sig{font-size:clamp(1.3rem,2.2vw,1.7rem);margin:18px 0 0}
.paths.four{grid-template-columns:repeat(2,1fr)}
@media (max-width:760px){.paths.four{grid-template-columns:1fr}}
.path-card{display:flex;flex-direction:column}.path-card a{margin-top:auto;padding-top:6px}
.steps.four{grid-template-columns:repeat(4,1fr)}
@media (max-width:1100px){.steps.four{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.steps.four{grid-template-columns:1fr}}
.phases .step{display:flex;flex-direction:column}
.ph-out{margin-top:auto;padding-top:12px;border-top:1px solid var(--linie);font-size:.95rem}
.ph-out b{color:var(--gruen)}
.phase-end{margin-top:26px;font-family:var(--serif);font-size:1.25rem;color:var(--dunkelgruen)}
.oneliner{margin:8px 0 0;font-size:.98rem}
.oscar-more{margin-top:40px}
.oscar-more summary{color:var(--papier);border-color:#9FBFAB}
.oscar-more summary:hover{background:rgba(255,255,255,.08)}
.oscar-more .oscar-body{margin-top:16px}
.oscar-intro .oscar-more{margin-top:24px}
.oscar-more p{color:#E6EEE8;font-size:1rem;line-height:1.6;margin:0 0 12px}
.oscar-more sup.ref a{color:#9FBFAB}
.oscar-st{font-size:.92rem!important;color:#C9DACF!important;border-top:1px solid #3E6B52;padding-top:12px}
.oscar-st b{color:var(--papier);font-weight:600}
/* Oscar kompakter, im Maß der Gründer-Karten */
.oscar{padding:56px 0 48px}
.oscar-top{gap:36px;align-items:flex-start;margin-top:20px}
.oscar-photo{padding:6px}
.oscar-photo img{width:150px;height:150px}
.oscar h2{font-size:clamp(1.6rem,3vw,2.1rem)}
.oscar-role{font-size:1rem;margin-top:6px}
.oscar-tag{font-size:1.05rem;margin-top:12px}
.oscar-quote{font-size:clamp(1.1rem,1.8vw,1.3rem);margin-top:16px;max-width:720px}
.oscar-intro .oscar-more{margin-top:18px;max-width:720px}
.oscar-foot{margin-top:32px}
/* Oscar im Maß der Gründer */
.oscar{padding:56px 0}
.oscar-grid{display:grid;grid-template-columns:1fr 80px 1fr;gap:28px 24px;margin-top:22px;align-items:start}
.oscar-grid .person{grid-column:1}
.oscar-side{grid-column:3;display:flex;flex-direction:column;align-items:flex-start;gap:18px;padding-top:8px}
.oscar .person .photo{border-color:#9FBFAB;background:#1F4A33}
.oscar .person:hover .photo{box-shadow:0 0 0 6px rgba(159,191,171,.18)}
.oscar .oscar-name{font-size:1.45rem;line-height:1.25;margin:0 0 2px;color:var(--papier)}
.oscar .person .role{color:#C9DACF}
.oscar .oneliner{color:#E6EEE8}
.oscar .oscar-quote{font-size:1.15rem;line-height:1.5;margin:0;max-width:none}
.oscar-disc{font-size:.85rem;color:#8FB09B}
.oscar .person .oscar-more{margin-top:10px}
@media (max-width:760px){.oscar-grid{grid-template-columns:1fr}.oscar-grid .person,.oscar-side{grid-column:1}}

/* 45-Sekunden-Startseite und Tiefenseiten */
.opps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:8px}
.opp{background:var(--weiss);border:1px solid var(--linie);border-radius:var(--r);padding:24px 24px 22px;display:flex;flex-direction:column}
.opp .num{font-family:var(--serif);font-size:clamp(1.7rem,2.6vw,2.2rem);color:var(--gruen);line-height:1.1;margin-bottom:10px}
.opp-what{font-size:.95rem;color:var(--grau);margin:0 0 12px}
.opp-so{margin:auto 0 0;padding-top:12px;border-top:1px solid var(--linie);font-weight:500}
@media (max-width:900px){.opps{grid-template-columns:1fr}}
.more{margin-top:22px}
a.arrow{font-weight:600;color:var(--gruen);text-decoration:none}
a.arrow::after{content:" \2192"}
a.arrow:hover{text-decoration:underline}
.src-note{font-size:.78rem;color:var(--grau);margin-top:26px;opacity:.85}
.src-note a{color:inherit}
.oscar .src-note,.band .src-note{color:#8FB09B}
.subhero{padding-bottom:40px}
.subhero .wrap{grid-template-columns:1fr}
.subhero .wrap>div{max-width:820px}
.wrap.narrow,.narrow{max-width:820px}
.chapter{counter-increment:ch}
main{counter-reset:ch}
.ch-label{font:600 .8rem var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--gruen);margin-bottom:10px}
.ch-label::before{content:counter(ch,decimal-leading-zero) "  ";white-space:pre;color:var(--grau)}
.chapter p{font-size:1.06rem}
.so-what{border-left:3px solid var(--gruen);padding:10px 0 10px 16px;background:var(--gruen10);border-radius:0 8px 8px 0}
.so-what b{color:var(--gruen)}
.matrix-title{margin-top:36px}
.explain{background:var(--weiss);border:1px solid var(--linie);border-radius:var(--r);padding:20px 22px;margin:22px 0}
.explain h3{font-size:1.15rem}
.explain p{font-size:1rem;margin:8px 0 0}
.status{list-style:none;padding:0;margin:22px 0;display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.status li{background:var(--weiss);border:1px solid var(--linie);border-radius:10px;padding:12px 14px;display:flex;flex-direction:column;gap:2px}
.status b{font-size:.92rem}.status span{font-size:.92rem;color:var(--grau)}
@media (max-width:640px){.status{grid-template-columns:1fr}}
.rpairs{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:18px;margin-top:24px}
.rpair{background:var(--weiss);border:1px solid var(--linie);border-radius:var(--r);padding:20px 22px}
.rpair h3{font-size:1.15rem;margin-bottom:8px}
.r-risk{color:var(--risiko);font-size:.97rem!important;margin:0 0 10px}
.r-so{font-size:.97rem!important;margin:0;padding-top:10px;border-top:1px solid var(--linie)}
.senda-q h2{font-size:clamp(1.6rem,3vw,2.2rem)}
.kk-wrap{display:grid!important;grid-template-columns:.8fr 1.2fr;gap:40px;align-items:start}
.kk-head p{margin:6px 0 20px}
.kk{margin:0;display:grid;gap:0}
.kk div{display:grid;grid-template-columns:150px 1fr;gap:16px;padding:12px 0;border-top:1px solid rgba(255,255,255,.18)}
.kk dt{font-weight:600;color:#C9DACF}
.kk dd{margin:0}
@media (max-width:860px){.kk-wrap{grid-template-columns:1fr;gap:20px}.kk div{grid-template-columns:1fr;gap:2px}}
.st-h1{font-size:clamp(1.6rem,3vw,2.2rem)}
nav.main a{white-space:nowrap}
.chapter p.src-note,p.src-note{font-size:.8rem}
.src-all summary{cursor:pointer;font-weight:600;color:var(--gruen);margin:8px 0 14px}
@media (max-width:1200px){nav.main{gap:14px;font-size:.9rem}}
@media (max-width:1000px){nav.main .hide-sm{display:none}}
.brand span{white-space:nowrap}
@media (max-width:1240px){.brand span{display:none}}
#mexiko .punch{margin-top:36px}

/* Expertennetzwerk */
.net-card{background:var(--weiss);border:1px solid var(--linie);border-radius:var(--r);padding:26px 28px;max-width:860px}
.net-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 24px;margin-bottom:12px}
.net-head h3{font-size:1.45rem;margin:0 0 2px}
.net-head .role{color:var(--grau);font-size:.9rem}
.net-card .chips{margin:14px 0}
.net-card+.net-card{margin-top:18px}
.net-open{background:transparent;border-style:dashed}

/* USA-Experte */
#usa{padding:56px 0}
.usa-grid{display:grid;grid-template-columns:1fr 80px 1fr;gap:28px 24px;margin-top:22px;align-items:start}
.usa-grid .person{grid-column:1}.usa-side{grid-column:3;padding-top:8px}
.usa-side p{font-size:1.02rem}
.person-name{font-size:1.45rem;line-height:1.25;margin:0 0 2px}
@media (max-width:760px){.usa-grid{grid-template-columns:1fr}.usa-grid .person,.usa-side{grid-column:1}}
#mexiko .sec-head h2{font-size:clamp(1.7rem,3.2vw,2.5rem)}
.why-end{font-family:var(--serif);font-size:clamp(1.15rem,1.8vw,1.35rem);color:var(--gruen);max-width:36em;margin-top:6px}
.hook small a{font-weight:600;color:var(--gruen)}
.hook small a::after{content:" \2192"}
.punch a{color:inherit;text-decoration:underline;text-underline-offset:4px}
/* USA-Experte im Oscar-Stil */
#usa.oscar{border-top:1px solid #2F5C43}
.oscar .photo.initials{color:var(--papier)}
.oscar .usa-lead{font-style:normal}
/* Akzent Rot (Mexiko-Flagge, gemeinsame Farbe mit Deutschland): sparsam */
:root{--rot:#C8102E}
.sec-head .eyebrow::before{background:var(--rot)}
.hook{border-left-color:var(--rot)}
/* Akzent Rot, Runde 2: wenige, gezielte Stellen */
.langs a[aria-current]{box-shadow:inset 0 -2px 0 var(--rot)}
.fact{border-top:3px solid var(--rot)}
.punch a{text-decoration-color:var(--rot);text-decoration-thickness:2px}
.step:hover,.fact:hover{border-color:var(--gruen20);border-top-color:var(--rot)}
.phases .step{border-top:3px solid transparent}
.phases .step:hover{border-top-color:var(--rot)}
.oscar .eyebrow{display:flex;align-items:center;gap:12px}
.oscar .eyebrow::before{content:"";display:block;height:2px;width:36px;background:var(--rot)}
.claim.sig::after{content:"";display:block;width:48px;height:2px;background:var(--rot);margin-top:12px}
.opp{border-top:3px solid var(--rot)}
/* Akzent Rot: Ring um den Kaffee-Button in der Kopfzeile beim Hover/Fokus */
header.top .btn.primary.small:hover,header.top .btn.primary.small:focus-visible{box-shadow:0 0 0 2px var(--papier),0 0 0 4px var(--rot)}
/* Langer spanischer Untertitel: in zwei Zeilen statt die Navigation zu verdrängen */
html[lang="es"] .brand span,html[lang="en"] .brand span{white-space:normal;max-width:250px;line-height:1.3}
@media (min-width:1000px){.hero .eyebrow{white-space:nowrap;width:0;overflow:visible}}
html[lang="es"] .brand span{display:none}
.brand span{display:none!important} /* Untertitel steht schon als Eyebrow im Hero; Navigation braucht den Platz */
.r-plus{font-size:.97rem!important;margin:10px 0 0;padding-top:10px;border-top:1px solid var(--linie);color:var(--gruen)}
/* Mexiko-Fazit hervorheben */
.matrix .fazit.win{background:var(--gruen);color:var(--papier);border-left:4px solid var(--rot);border-radius:var(--r);padding:18px 22px;margin:22px 0 18px;font-size:1.12rem;line-height:1.45}
.matrix .fazit.win strong{font-family:var(--serif);font-size:1.45rem;letter-spacing:0;text-transform:none;color:var(--papier);margin-bottom:6px;line-height:1.2}
.st-end{display:flex;justify-content:flex-end;margin-top:20px}
.hero .claim.sig + .ctas{margin-top:22px}
/* Selbsttest: fehlende Antworten sichtbar machen */
.st-hint-err{color:var(--risiko);font-weight:600;font-size:.92rem}
.st-q.st-miss fieldset{outline:2px solid var(--risiko);outline-offset:6px;border-radius:6px}
/* Selbsttest: zero-point criteria shown as points to resolve, with a booking nudge */
.st-focus{border-left:3px solid var(--rot,#C8102E);background:var(--gruen10);padding:10px 14px;margin:12px 0;border-radius:0 8px 8px 0}
.st-focus p{margin:4px 0}
.st-focus a{color:var(--gruen);font-weight:600}
.net-card{border-top:3px solid var(--rot)}
/* Red accent on every content box (Oct 2026) */
.step,.path-card,.q,.rpair,.explain,.klartext,.live,.fork,.door,.eco-node,.st-card,.st-side,.case,.role-card{border-top:3px solid var(--rot)}
.door{border-top-width:3px;border-top-color:var(--rot)}
.phases .step{border-top:3px solid var(--rot)}
/* Industry tiles on Warum Mexiko */
.opps.two{grid-template-columns:repeat(2,1fr);margin:22px 0}
.opp .sector{font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;font-weight:600;color:var(--gruen);margin-bottom:6px}
@media (max-width:700px){.opps.two{grid-template-columns:1fr}}
/* Standort-Kompass (IMCO rankings) */
.kompass{background:var(--weiss);border:1px solid var(--linie);border-top:3px solid var(--rot);border-radius:var(--r);padding:20px 22px 16px;margin:24px 0}
.k-tabs{display:flex;gap:6px;border-bottom:1px solid var(--linie);margin-bottom:14px;flex-wrap:wrap}
.k-tab{font:inherit;font-weight:600;background:none;border:0;border-bottom:3px solid transparent;padding:8px 10px 10px;margin-bottom:-1px;color:var(--grau);cursor:pointer}
.k-tab.is-on{color:var(--tinte);border-bottom-color:var(--rot)}
.k-bar{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;margin-bottom:12px}
.k-group{display:flex;flex-wrap:wrap;gap:6px}
.k-btn{font:inherit;font-size:.85rem;background:var(--papier);border:1px solid var(--linie);border-radius:999px;padding:5px 12px;color:var(--tinte);cursor:pointer}
.k-btn.is-on{background:var(--dunkelgruen);border-color:var(--dunkelgruen);color:#fff}
.k-list{list-style:none;margin:0;padding:0;columns:2;column-gap:28px}
.k-list li{display:flex;align-items:baseline;gap:10px;padding:7px 2px;border-bottom:1px solid var(--linie);break-inside:avoid}
.k-list li[hidden]{display:none}
.k-rk{font-variant-numeric:tabular-nums;font-weight:700;color:var(--rot);min-width:1.6em;text-align:right}
.k-nm{flex:1}
.k-chg{font-size:.8rem;font-variant-numeric:tabular-nums;white-space:nowrap}
.k-chg.up{color:var(--gruen)}.k-chg.down{color:var(--rot)}.k-chg.eq{color:var(--grau)}
.k-legend,.k-note{font-size:.8rem;color:var(--grau);margin:12px 0 0}
.k-note{margin-top:4px}
@media (max-width:640px){.k-list{columns:1}.kompass{padding:16px 14px 12px}}
.kompass [hidden]{display:none!important}
.k-sub{margin-bottom:12px;padding-bottom:12px;border-bottom:1px dashed var(--linie)}
.k-sub .k-btn.is-on{background:var(--rot);border-color:var(--rot)}
.k-tot{font-size:.78rem;color:var(--grau);white-space:nowrap}
.k-tot b{font-weight:600;color:var(--tinte)}
/* Red accent on hover for every button */
.btn:hover,.btn:focus-visible{border-color:var(--rot)}
.btn.primary:hover,.btn.primary:focus-visible{border-color:var(--rot);box-shadow:0 0 0 2px var(--papier),0 0 0 4px var(--rot)}
.btn.ghost:hover,.btn.ghost:focus-visible{color:var(--rot);background:transparent}
.band .btn.primary:hover,.band .btn.primary:focus-visible{border-color:var(--rot);box-shadow:0 0 0 2px var(--gruen),0 0 0 4px var(--rot)}
#mexiko .ctas{margin:22px 0 6px}
/* Financing box after the four phases */
.k-why{display:block;font-size:.76rem;line-height:1.3;color:var(--grau);margin-top:2px}
.k-why-note{font-size:.8rem;color:var(--grau);margin:12px 0 0}
.k-size{margin-bottom:10px}.k-size .k-btn.is-on{background:var(--dunkelgruen);border-color:var(--dunkelgruen)}
.hero-tag{font-family:var(--serif);font-style:italic;color:var(--gruen);font-size:1.1rem;margin:4px 0 18px}
.qs + .phase-end{margin-top:24px}
/* Generic roadmap example (Go Global) */
.rm{margin-top:40px;background:var(--weiss);border:1px solid var(--linie);border-top:3px solid var(--rot);border-radius:var(--r);padding:22px 22px 16px}
.rm-title{font-family:var(--serif);font-size:1.35rem;margin:0 0 6px;color:var(--tinte)}
.rm-intro{color:var(--grau);margin:0 0 16px;font-size:.95rem}
.rm-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
.rm-grid{min-width:720px}
.rm-head,.rm-phases,.rm-row summary{display:grid;grid-template-columns:200px repeat(12,1fr);align-items:center;column-gap:2px}
.rm-head{font-size:.72rem;color:var(--grau);padding-bottom:4px;border-bottom:1px solid var(--linie)}
.rm-m{text-align:center}
.rm-phases{padding:6px 0;font-size:.72rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}
.rm-ph{text-align:center;padding:3px 4px;border-radius:4px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rm-ph.p1,.rm-bar.p1{background:#5a8f73}.rm-ph.p2,.rm-bar.p2{background:var(--gruen)}.rm-ph.p3,.rm-bar.p3{background:var(--dunkelgruen)}.rm-ph.p4,.rm-bar.p4{background:var(--rot)}
.rm-row{border-bottom:1px solid var(--linie)}
.rm-row summary{list-style:none;cursor:pointer;padding:9px 0;grid-row:1}
.rm-row summary::-webkit-details-marker{display:none}
.rm-row summary .rm-lab::before{content:"+";display:inline-block;width:1.1em;color:var(--rot);font-weight:700}
.rm-row[open] summary .rm-lab::before{content:"–"}
.rm-lab{font-size:.88rem;font-weight:600;color:var(--tinte);grid-column:1}
.rm-bar{height:14px;border-radius:7px;grid-row:1}
.rm-row summary:hover .rm-bar{filter:brightness(1.1)}
.rm-acts{margin:0 0 12px 200px;padding:0 0 0 18px;font-size:.88rem;color:var(--tinte)}
.rm-acts li{margin:3px 0}
.rm-note{font-size:.8rem;color:var(--grau);margin:12px 0 0}
@media (max-width:640px){.rm{padding:16px 14px 12px}.rm-acts{margin-left:0}}
@media (max-width:640px){
  .rm-grid{min-width:0}
  .rm-head,.rm-phases,.rm-row summary{grid-template-columns:0 repeat(12,1fr);column-gap:1px}
  .rm-head .rm-lab,.rm-phases .rm-lab{visibility:hidden;overflow:hidden;font-size:0}
  .rm-row summary{row-gap:6px}
  .rm-row summary .rm-lab{grid-column:1/-1;grid-row:1}
  .rm-row summary .rm-bar{grid-row:2;height:10px}
  .rm-ph{font-size:.58rem;padding:3px 2px;letter-spacing:0}
  .rm-head{font-size:.62rem}
}
.st-data{margin-top:18px;padding-top:16px;border-top:1px solid var(--linie)}
.st-data li{font-size:.9rem}
.st-data-note{font-size:.85rem;margin:6px 0 10px}
body.print-st .st-data-note{display:none!important}
.fin-box{margin:44px 0 10px;max-width:760px}
.fin-box h3{font-family:var(--serif);font-size:1.25rem;color:var(--gruen);margin:0 0 8px}
.fin-box p{margin:0;color:var(--tinte)}
.hook,.hook:hover{align-self:end;margin-bottom:22px;background:none!important;border:0!important;box-shadow:none!important;transform:none!important;padding:0!important;border-radius:0}
.hook p{font-size:1.05rem!important;font-style:italic;line-height:1.45!important;color:var(--gruen);font-weight:400!important}
.step .ph-sub{font-family:var(--serif);font-style:italic;font-size:.95rem;color:var(--grau);margin:-4px 0 8px}
.step .ph-bench{font-size:.92rem;color:#44443f;margin-top:6px}
/* Kostenrechner */
.kr{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:28px;align-items:start}
@media (max-width:900px){.kr{grid-template-columns:1fr}}
.kr-form{display:grid;grid-template-columns:1fr 1fr;gap:14px 18px;margin-bottom:22px}
@media (max-width:600px){.kr-form{grid-template-columns:1fr}}
.kr-form label{display:flex;flex-direction:column;gap:6px;font-size:.88rem;font-weight:600;color:var(--grau)}
.kr-form select{font:500 1rem var(--sans);padding:10px 12px;border:1px solid var(--linie);border-radius:10px;background:var(--weiss);color:var(--tinte);max-width:100%}
.kr-form .kr-check{flex-direction:row;align-items:center;gap:10px;grid-column:1/-1;font-weight:500;color:var(--tinte)}
.kr-cols{display:grid;grid-template-columns:1fr 1fr;gap:18px}
@media (max-width:600px){.kr-cols{grid-template-columns:1fr}}
.kr-col{border:1px solid var(--linie);border-radius:12px;padding:18px 18px 12px;background:var(--weiss)}
.kr-mx{border-top:4px solid var(--gruen)}.kr-de{border-top:4px solid var(--blau)}
.kr-col h3{margin:0 0 2px;font-size:1.1rem}
.kr-tag{margin:0 0 12px;font-size:.82rem;color:var(--grau)}
.kr-k{margin:12px 0 2px;font-size:.82rem;text-transform:uppercase;letter-spacing:.08em;color:var(--grau);font-weight:600}
.kr-v{margin:0;font:600 1.45rem/1.2 var(--serif);font-variant-numeric:tabular-nums;color:var(--tinte)}
.kr-eur{font:500 .95rem var(--sans);color:var(--grau)}
.kr-r{margin:4px 0 0;font-size:.88rem;color:var(--grau)}
.kr-det{margin-top:14px;font-size:.88rem}.kr-det summary{cursor:pointer;color:var(--gruen);font-weight:600}
.kr-det table{width:100%;border-collapse:collapse;margin-top:8px}.kr-det td{padding:4px 0;border-bottom:1px solid var(--linie)}.kr-det td:last-child{text-align:right;font-variant-numeric:tabular-nums}
.kr-share{margin:18px 0 6px;font:500 1.15rem/1.4 var(--serif);color:var(--dunkelgruen)}
.kr-fx{font-size:.8rem;margin-top:6px}
.kr-miguel{display:flex;gap:12px;align-items:flex-start;margin-bottom:20px}
.kr-miguel img{flex:0 0 56px;border-radius:50%;background:var(--weiss);border:2px solid var(--gruen)}
.kr-bubble{position:relative;background:var(--weiss);border:1px solid var(--gruen20);border-radius:14px;padding:12px 14px;font-size:.92rem;line-height:1.5}
.kr-more{border:0;background:var(--gruen);color:var(--papier);border-radius:999px;width:24px;height:24px;margin-left:6px;cursor:pointer;font:700 .95rem var(--sans);line-height:1}
.kr-method li{margin-bottom:10px}
.kr-disclaimer{font-size:.82rem;margin-top:12px}
.kr>*,.kr-cols>*,.kr-form>*{min-width:0}.kr-form select{width:100%}
@media (max-width:600px){.kr .st-card{padding:18px}}
.ctas{display:flex;flex-wrap:wrap;align-items:center;gap:16px 20px}
.hero .ctas{gap:16px 20px}
.steps.four.long{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:760px){.steps.four.long{grid-template-columns:1fr}}
.step .verdicts{margin:10px 0 0;padding-left:18px}.step .verdicts li{margin-bottom:8px}
.kr-tsrc{display:block;margin-top:6px;font-size:.78rem;color:var(--grau)}
.kr-pdf{margin-top:22px;padding:18px;border:1px dashed var(--gruen40);border-radius:12px;background:var(--gruen10)}
.kr-pdf h3{margin:0 0 4px;font-size:1.05rem}.kr-pdf p{margin:0 0 12px;font-size:.92rem}
.kr-lead{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px}
.kr-lead input[type=email],.kr-lead input[type=text]{font:500 .95rem var(--sans);padding:10px 12px;border:1px solid var(--linie);border-radius:10px;background:var(--weiss);min-width:0}
.kr-lead .consent{grid-column:1/-1;font-size:.85rem;display:flex;gap:8px;align-items:flex-start}
.kr-pdf-act{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px}
.kr-or{font-size:.9rem;color:var(--grau)}
.kr-lead .st-msg{grid-column:1/-1;margin:0}
@media (max-width:600px){.kr-lead{grid-template-columns:1fr}}
@media print{
  body.print-kr > *:not(main){display:none!important}
  body.print-kr main > *:not(#rechner){display:none!important}
  body.print-kr #rechner{background:#fff!important;padding:0}
  body.print-kr .sec-head,body.print-kr .kr-side,body.print-kr .st-end,body.print-kr .kr-form,body.print-kr .kr-pdf{display:none!important}
  body.print-kr .kr{display:block}body.print-kr .kr-card{border:0;padding:0;box-shadow:none}
  body.print-kr .kr-phead{margin-bottom:14pt;font-size:10pt}body.print-kr .kr-phead strong{font-family:Literata,serif;font-size:20pt;color:#006341}
  body.print-kr .kr-pfoot{margin-top:14pt;font-size:8.5pt;color:#555}
  body.print-kr .kr-cols{grid-template-columns:1fr 1fr}
}
.kr-form .kr-check{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;grid-column:1/-1;font-weight:500;color:var(--tinte)}
.kr-form .kr-check label{flex-direction:row;align-items:center;gap:10px;font-weight:500;color:var(--tinte)}
.kr-form .kr-check select{width:auto}
.r-so .r-btn{display:flex;width:fit-content;margin-top:12px}

/* Go Global: Regionen und Spielregeln */
.qs.three{grid-template-columns:repeat(3,1fr)}
@media (max-width:980px){.qs.three{grid-template-columns:repeat(2,1fr)}}
@media (max-width:520px){.qs.three{grid-template-columns:1fr}}
.gg-note{margin-top:18px;font-size:.9rem}
.gg-culture{margin-top:28px;background:var(--weiss);border:1px solid var(--linie);border-radius:var(--r);padding:20px 24px}
.gg-culture h3{margin:0 0 10px;font-family:var(--serif);font-weight:500;color:var(--gruen)}
.gg-culture ul{margin:0 0 12px;padding-left:1.1em}
.gg-culture li{margin:4px 0}
.gg-culture p{margin:0;font-style:italic}
.msg .cites.more{border-top:0;padding-top:0;margin-top:8px;color:#5a5a55}
.ph-test{margin:10px 0 0;font-size:.92rem}
.ph-test a{color:var(--dunkelgruen)}
.ph-test a::after{content:" \2192"}
.seal{display:flex;align-items:center;gap:10px;width:fit-content;margin:28px auto 8px;padding:7px 22px 7px 10px;border:2px solid var(--rot);outline:1px solid var(--rot);outline-offset:3px;border-radius:999px;font-family:var(--serif);font-size:1.25rem;color:var(--rot);letter-spacing:.02em}
.seal-mark{width:30px;height:auto;fill:var(--rot);flex:none}
.hero-kicker{font-family:var(--serif);font-size:clamp(1.2rem,2vw,1.5rem);color:var(--gruen);margin:0 0 14px;line-height:1.25}
.hero-kicker span{display:block;font-family:var(--sans);font-size:.72em;letter-spacing:.04em;color:var(--grau);margin-top:4px}

/* ==========================================================================
   Diseño v325 (Oktober 2026): ruhiger, ein Akzent, Schaubilder statt Deko.
   Regeln: jedes Bild erklärt den Satz daneben (Eval E05-06), Listen mit mehr
   als 4 Punkten nur in benannten Gruppen (E05-08), nichts bewegt sich endlos (E05-04).
   ========================================================================== */
body{font-size:17px;line-height:1.62;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
h2{font-size:clamp(1.9rem,3.3vw,2.7rem);letter-spacing:-.015em;line-height:1.1}
.lead{font-size:1.16rem;line-height:1.6;color:#33332f}
section{padding:104px 0}
@media (max-width:760px){section{padding:68px 0}}
.sec-head{margin-bottom:44px}

/* Kapitelnummern statt roter Striche (Brand V3.2: Abschnitte nummeriert 01, 02, 03) */
main{counter-reset:chap}
.chap{counter-increment:chap}
.chap .eyebrow{display:flex;align-items:center;gap:12px}
.chap .eyebrow::before,.oscar.chap .eyebrow::before{content:counter(chap,decimal-leading-zero);display:block;width:auto;height:auto;background:none;transform:none!important;color:var(--grau);font-variant-numeric:tabular-nums;padding-right:12px;border-right:1px solid var(--gruen40);line-height:1.1}
.oscar.chap .eyebrow::before{color:#9FBFAB;border-right-color:#3E6B52}

/* Rot nur noch an drei Stellen: Claim, Sprachwahl, Kopfzeilen-Button */
.step,.path-card,.q,.rpair,.explain,.klartext,.live,.fork,.door,.eco-node,.st-card,.st-side,.case,.role-card,.fact,.opp,.net-card,.phases .step{border-top:1px solid var(--linie)}
.door{border-top:2px solid var(--gruen20)}
.door:hover{border-top-color:var(--gruen)}
.fact:hover,.step:hover{transform:none;box-shadow:none;border-color:var(--linie)}
.band-ground{display:none}

/* Schaubild 2: der Weg in vier Phasen */
.route{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));counter-reset:wp}
.wp{counter-increment:wp;position:relative;padding:60px 28px 0 0;display:flex;flex-direction:column}
.wp::before{content:counter(wp,decimal-leading-zero);position:absolute;top:0;left:0;width:38px;height:38px;border-radius:50%;background:var(--papier);border:2px solid var(--gruen);color:var(--gruen);font:600 .8rem var(--sans);display:grid;place-items:center;z-index:1;font-variant-numeric:tabular-nums}
.wp::after{content:"";position:absolute;top:18px;left:38px;right:0;border-top:2px solid var(--gruen)}
.wp:last-child::after{border-top:2px dashed var(--gruen40)}
.wp h3{font-size:1.4rem;margin-bottom:8px}
.wp p{font-size:.97rem}
.wp .ph-bench{font-size:.9rem;color:#44443f}
.wp .ph-out{margin-top:auto;padding-top:12px;border-top:1px solid var(--linie);font-size:.93rem}
.wp-gate{position:absolute;top:6px;right:calc(100% + 18px);z-index:2;background:var(--papier);border:1px solid var(--gruen);color:var(--dunkelgruen);border-radius:999px;padding:1px 10px;font:600 .7rem/1.6 var(--sans);letter-spacing:.04em;white-space:nowrap}
.models{margin:4px 0 16px;padding:14px 14px 10px;background:var(--gruen10);border-radius:10px}
.models ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));position:relative}
.models ul::before{content:"";position:absolute;left:16%;right:16%;top:9px;border-top:1px solid var(--gruen40)}
.models li{position:relative;padding-top:24px;font-size:.8rem;line-height:1.25;text-align:center;color:var(--dunkelgruen)}
.models li::before{content:"";position:absolute;top:9px;left:50%;transform:translate(-50%,-50%);border-radius:50%;background:var(--gruen)}
.models li:nth-child(1)::before{width:8px;height:8px;background:var(--gruen40)}
.models li:nth-child(2)::before{width:12px;height:12px;background:var(--gruen70,#608A73)}
.models li:nth-child(3)::before{width:17px;height:17px}
.models-axis{margin:10px 0 0!important;font:600 .68rem var(--sans)!important;letter-spacing:.1em;text-transform:uppercase;color:var(--dunkelgruen);text-align:right}
.models-axis::after{content:" \2192"}
.menu-key{display:flex;flex-wrap:wrap;gap:12px 40px;margin:36px 0 0;padding-top:18px;border-top:1px solid var(--linie)}
.menu-key p{margin:0;font-size:.97rem}
.menu-key b{font-family:var(--serif);font-weight:500;font-size:1.08rem;color:var(--gruen)}
.fin-box{margin:36px 0 0;padding:22px 26px;background:var(--weiss);border:1px solid var(--linie);border-radius:var(--r);max-width:none}
@media (max-width:980px){
  .route{grid-template-columns:1fr}
  .wp{padding:0 0 36px 58px}
  .wp::after{top:38px;bottom:0;left:18px;right:auto;border-top:0;border-left:2px solid var(--gruen)}
  .wp:last-child::after{border-top:0;border-left:2px dashed var(--gruen40)}
  .wp-gate{position:static;align-self:flex-start;margin:0 0 8px}
}

/* Zweispalter: Text links, Schaubild rechts */
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,440px);gap:56px;align-items:center;margin-bottom:44px}
.split .sec-head{margin-bottom:0}
@media (max-width:980px){.split{grid-template-columns:1fr;gap:32px}}

/* Schaubild 3: Reichweite ab Mexiko */
.reach{margin:0;background:var(--weiss);border:1px solid var(--linie);border-radius:16px;padding:24px;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center}
.reach-core{position:relative;margin-right:30px;background:var(--gruen);color:var(--papier);border-radius:12px;padding:16px 18px}
.reach-core b{display:block;font:500 1.35rem/1.1 var(--serif)}
.reach-core span{font-size:.8rem;color:#E4ECE7}
.reach-core::after{content:"";position:absolute;right:-30px;top:50%;width:30px;border-top:2px solid var(--gruen)}
.reach-out{list-style:none;margin:0;padding:0 0 0 22px;display:grid;gap:12px;position:relative}
.reach-out::before{content:"";position:absolute;left:0;top:26px;bottom:26px;border-left:2px solid var(--gruen40)}
.reach-out li{position:relative;padding:9px 14px;border:1px solid var(--linie);border-radius:10px;background:var(--papier)}
.reach-out li::before{content:"";position:absolute;left:-22px;top:50%;width:22px;border-top:2px solid var(--gruen40)}
.reach-out li:first-child{border-color:var(--gruen)}
.reach-out li:first-child::before{border-top-color:var(--gruen)}
.reach-out b{display:block;font-weight:600;font-size:.97rem;line-height:1.3}
.reach-out span{font-size:.84rem;color:var(--grau)}
.reach figcaption{grid-column:1/-1;margin-top:18px;padding-top:14px;border-top:1px solid var(--linie);font:400 1.05rem/1.45 var(--serif);color:var(--gruen)}
@media (max-width:420px){.reach{padding:18px}.reach-core{margin-right:22px;padding:12px}.reach-core::after{right:-22px;width:22px}.reach-out{padding-left:16px}.reach-out li::before{left:-16px;width:16px}}

/* Für wen: Richtung je Karte */
.dir{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;margin:0 0 12px;font:600 .7rem/1.4 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--gruen)}
.dir span:first-child::after{content:"\2192";margin-left:10px;font-size:1rem;letter-spacing:0;color:var(--gruen)}
.dir.both span:first-child::after{content:"\2194"}
.path-card{padding:26px 28px}

@media (max-width:760px){.founders{grid-template-columns:1fr}}

/* Schaubild 4: ein Ansprechpartner, drei Kanzleien */
.hubnet{margin:0;background:var(--weiss);border:1px solid var(--linie);border-radius:16px;padding:22px 20px 18px;display:grid;justify-items:center;text-align:center}
.hn-you{font:600 .72rem var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--grau);padding:7px 14px;border:1px dashed var(--gruen40);border-radius:999px}
.hn-senda{position:relative;margin-top:24px;background:var(--gruen);color:var(--papier);border-radius:12px;padding:10px 22px}
.hn-senda::before{content:"";position:absolute;top:-24px;left:50%;height:24px;border-left:2px solid var(--gruen)}
.hn-senda b{display:block;font:500 1.3rem/1.2 var(--serif)}
.hn-senda span{font-size:.8rem;color:#E4ECE7}
.hn-partners{list-style:none;margin:24px 0 0;padding:24px 0 0;width:100%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;position:relative}
.hn-partners::before{content:"";position:absolute;top:0;left:12.5%;right:12.5%;border-top:2px solid var(--gruen40)}
.hn-partners::after{content:"";position:absolute;top:-24px;left:50%;height:24px;border-left:2px solid var(--gruen40)}
.hn-partners li{position:relative}
.hn-partners li::before{content:"";position:absolute;top:-24px;left:50%;height:24px;border-left:2px solid var(--gruen40)}
.hn-partners a{display:flex;flex-direction:column;gap:3px;height:100%;padding:10px 8px;border:1px solid var(--linie);border-radius:10px;background:var(--papier);color:var(--tinte);text-decoration:none;transition:border-color .2s}
.hn-partners a:hover{border-color:var(--gruen)}
.hn-partners b{font-size:.84rem;font-weight:600;line-height:1.25;color:var(--gruen)}
.hn-partners span{font-size:.76rem;line-height:1.3;color:var(--grau)}
.hubnet figcaption{margin-top:16px;font-size:.88rem;color:var(--grau)}
.net-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.net-grid .net-card{max-width:none;margin:0;display:flex;flex-direction:column;padding:26px 24px}
.net-grid .net-card+.net-card{margin-top:0}
.net-grid .net-head{display:block;margin-bottom:12px}
.net-grid .net-head h3{font-size:1.3rem}
.net-grid .net-card p{font-size:.95rem}
.net-card > .arrow{margin-top:auto;padding-top:14px;font-size:.92rem}
.chipsets{display:grid;gap:12px;margin:4px 0 6px}
.chipsets h4{font:600 .68rem var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--grau);margin:0 0 6px}
.chipsets .chips{gap:6px}
.chipsets .chips li{padding:4px 11px;font-size:.84rem;background:var(--papier)}
@media (max-width:980px){.net-grid{grid-template-columns:1fr}}

/* Kaffee und Kuchen: zwei Gruppen, am Ende die drei Ausgänge (Brand Code) */
.kk-band{padding:104px 0}
.kk-body{display:grid;grid-template-columns:1fr 1fr;gap:40px}
.kk-group h3{font:600 .72rem var(--sans);letter-spacing:.14em;text-transform:uppercase;color:#C9DACF;margin:0 0 12px}
.kk-group .kk div{grid-template-columns:104px 1fr;gap:12px}
.exits3{margin:0;display:grid;grid-template-columns:64px 1fr;column-gap:14px;align-items:stretch;padding:12px 0 0;border-top:1px solid rgba(255,255,255,.18)}
.ex-lines{width:100%;height:100%;min-height:118px;overflow:visible}
.ex-lines path{fill:none;stroke-width:2.2;vector-effect:non-scaling-stroke;stroke-linecap:round}
.ex-lines .x1{stroke:var(--papier)}.ex-lines .x2{stroke:#9FBFAB}.ex-lines .x3{stroke:#5E8A70;stroke-dasharray:5 6}
.exits3 ul{list-style:none;margin:0;padding:0;display:grid;grid-template-rows:repeat(3,1fr);align-items:center}
.exits3 li{font:500 1.2rem/1.2 var(--serif);color:var(--papier)}
.exits3 li.x2{color:#C9DACF}.exits3 li.x3{color:#9FBFAB}
.exits3 figcaption{grid-column:1/-1;margin-top:12px;font-size:.93rem;color:#E4ECE7}
.kk-no{margin:18px 0 0;padding-top:12px;border-top:1px solid rgba(255,255,255,.18);font-size:.95rem;color:#E4ECE7}
.kk-no b{color:#C9DACF;font-weight:600}
@media (max-width:860px){.kk-body{grid-template-columns:1fr;gap:28px}}

/* Bewegung: einmal einblenden, danach Ruhe */
@media (prefers-reduced-motion:no-preference){
  .js .route.rv .wp::after{transform:scaleX(0);transform-origin:left;transition:transform .9s cubic-bezier(.4,0,.2,1)}
  .js .route.rv.in .wp::after{transform:none}
  .js .route.rv.in .wp:nth-child(2)::after{transition-delay:.25s}
  .js .route.rv.in .wp:nth-child(3)::after{transition-delay:.5s}
  .js .route.rv.in .wp:nth-child(4)::after{transition-delay:.75s}
}
@media (prefers-reduced-motion:no-preference) and (max-width:980px){
  .js .route.rv .wp::after{transform:scaleY(0);transform-origin:top}
}
.exits3 ul{min-height:120px}
.ex-lines{min-height:0}
/* Eyebrow-Strich grün auf allen Seiten */
.sec-head .eyebrow::before{background:var(--gruen)}
.chap .sec-head .eyebrow::before{background:none}

/* ---------- Film (Startseite) ---------- */
.film{padding-top:24px}
.film-head{max-width:760px}
.film-frame{position:relative;margin:36px 0 0;padding:18px;border:1px solid var(--linie);border-radius:18px;background:var(--weiss)}
.film-frame::before,.film-frame::after{content:"";position:absolute;width:18px;height:18px;border:0 solid var(--gruen70);pointer-events:none}
.film-frame::before{top:-9px;left:-9px;border-top-width:1.5px;border-left-width:1.5px}
.film-frame::after{bottom:-9px;right:-9px;border-bottom-width:1.5px;border-right-width:1.5px}
.film-media{position:relative;aspect-ratio:16/9;border-radius:10px;overflow:hidden;background:var(--gruen)}
.film-media video{display:block;width:100%;height:100%;object-fit:cover;background:var(--gruen)}
.film-play{position:absolute;inset:0;display:flex;align-items:flex-end;gap:16px;padding:clamp(18px,3.4vw,40px);border:0;background:linear-gradient(180deg,rgba(0,99,65,0) 55%,rgba(0,99,65,.65));color:var(--papier);font:inherit;cursor:pointer;text-align:left}
.film-ring{position:relative;flex:0 0 auto;width:clamp(54px,6vw,72px);height:clamp(54px,6vw,72px);border-radius:50%;background:var(--papier);box-shadow:0 0 0 0 rgba(246,245,240,.45);transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s}
.film-ring::after{content:"";position:absolute;top:50%;left:54%;transform:translate(-50%,-50%);border-style:solid;border-width:10px 0 10px 16px;border-color:transparent transparent transparent var(--gruen)}
.film-label{font-family:var(--serif);font-style:italic;font-size:clamp(1.1rem,2vw,1.45rem);padding-bottom:clamp(14px,1.6vw,20px);letter-spacing:.005em}
.film-play:hover .film-ring,.film-play:focus-visible .film-ring{transform:scale(1.06);box-shadow:0 0 0 12px rgba(246,245,240,.16)}
.film-play:focus-visible{outline:2px solid var(--papier);outline-offset:-6px}
.film-media.is-playing .film-play{opacity:0;pointer-events:none;transition:opacity .3s}
.film-cap{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:6px 14px;margin:14px 2px 0;font-size:.82rem;color:var(--grau)}
.film-langs{display:inline-flex;gap:4px}
.film-langs button{font:inherit;color:var(--grau);background:none;border:1px solid transparent;border-radius:999px;padding:4px 12px;cursor:pointer;letter-spacing:.02em}
.film-langs button:hover{color:var(--gruen)}
.film-langs button[aria-pressed="true"]{color:var(--gruen);border-color:var(--gruen40);background:var(--gruen10)}
@media (max-width:640px){.film-frame{padding:10px;border-radius:14px}.film-cap{justify-content:flex-start}.film-label{display:none}}
@media (prefers-reduced-motion:reduce){.film-ring{transition:none}}
.founders.solo{grid-template-columns:minmax(0,640px);margin-bottom:0}
@media (max-width:600px){.hn-partners{grid-template-columns:repeat(2,minmax(0,1fr))}.hn-partners::before{left:25%;right:25%}.hn-partners li:nth-child(n+3)::before{display:none}}

/* Konnektoren ruhig und exakt (2026-10-17): Stamm aus Segmenten je Knoten, trifft immer die Kastenmitte, auch bei geöffneten Details; Schemata nur einblenden, nicht verschieben */
.eco-dach::after,.eco-mx::before{content:none}
.eco-dach .eco-node::after,.eco-mx .eco-node::before{width:29px;height:0;top:50%;margin-top:-.5px;border-top-width:1px}
.eco-dach .eco-node::after{right:-29px}.eco-mx .eco-node::before{left:-29px}
.eco-hub::before,.eco-hub::after{width:28px;height:0;margin-top:-.5px}
.eco-dach .eco-node::before,.eco-mx .eco-node::after{content:"";position:absolute;width:0;border-left:1px solid var(--gruen40);top:-7px;bottom:-7px;pointer-events:none}
.eco-dach .eco-node::before{right:-29px}.eco-mx .eco-node::after{left:-29px}
.eco-dach .eco-node:first-of-type::before,.eco-mx .eco-node:first-of-type::after{top:50%}
.eco-dach .eco-node:last-of-type::before,.eco-mx .eco-node:last-of-type::after{bottom:50%}
.eco-dach .eco-node:only-of-type::before,.eco-mx .eco-node:only-of-type::after{content:none}
.pair::after{left:calc(50% - 28px);width:56px;margin-top:-1px}
@media (max-width:900px){.eco-dach .eco-node::before,.eco-mx .eco-node::after{content:none}}
@media (prefers-reduced-motion:no-preference){
  .js .pair.rv.in,.js .eco.rv.in,.js .pair-end.rv.in{animation-name:rvFade}
  @keyframes rvFade{from{opacity:0}to{opacity:1}}
}
/* Partnernetz: Querbalken endet exakt über der Mitte der äußeren Karten (Spaltenabstand 10px), Lote mittig */
.hn-senda::before,.hn-partners::after,.hn-partners li::before{margin-left:-1px}
.hn-partners::before{left:calc((100% - 30px) / 8);right:calc((100% - 30px) / 8)}
@media (max-width:600px){.hn-partners::before{left:calc((100% - 10px) / 4);right:calc((100% - 10px) / 4)}}
/* Reichweite: Stamm aus Segmenten je Ziel (Abstand 12px), trifft immer die Kartenmitte */
.reach-out::before{content:none}
.reach-out li::before{margin-top:-1px}
.reach-core::after{margin-top:-1px}
.reach-out li::after{content:"";position:absolute;left:-23px;top:-8px;bottom:-8px;border-left:2px solid var(--gruen40)}
.reach-out li:first-child::after{top:50%}
.reach-out li:last-child::after{bottom:50%}
.reach-out li:only-child::after{content:none}
@media (max-width:420px){.reach-out li::after{left:-17px}}
.models ul::before{left:calc(100% / 6);right:calc(100% / 6)}
