/* ============================================================
   igroupCONNECT Screendesign · Token-Basis: igroupTV-Set
   (design-tokens.md 2.7) · Wrap-Standard 1560px (bindend)
   ============================================================ */
:root{
  --red:#C8141E; --red-hov:#A8101A; --red-act:#8E0E16;
  --ink:#121212; --ink-soft:#1c1c1f; --ink-line:rgba(255,255,255,.10);
  --white:#FFFFFF; --paper:#F8F9FA; --hairline:#DEE2E6; --muted:#6C757D;
  --text:#1A1A1A; --on-dark-mut:rgba(255,255,255,.66);
  --green:#198754;
  --maxw:1560px; --pad:clamp(20px, 5vw, 64px);
  --sec-y:clamp(48px, 5.5vw, 88px); --sec-y-tight:clamp(34px, 4vw, 60px);
  --r-sm:0; --r-md:0; --r-lg:0; --r-pill:0;
  --r-chat-sm:8px; --r-chat-md:14px; --r-chat-lg:22px; --r-chat-pill:999px;
  --sh-lg:0 30px 70px rgba(18,18,18,.16);
  --sh-md:0 8px 24px rgba(18,18,18,.08);
  --glow-red:0 6px 18px rgba(200,20,30,.28);
  --ease:cubic-bezier(.2,.7,.2,1);
  --font:'proxima-nova',Helvetica,Roboto,Arial,sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
*{margin:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:92px}
body{font-family:var(--font);font-weight:400;color:var(--text);background:var(--white);line-height:1.6;font-size:clamp(15.5px, 1vw, 17px);-webkit-font-smoothing:antialiased;overflow-x:clip}
img,svg,video{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer;color:inherit}
ul,ol{padding:0;list-style:none}
[hidden]{display:none!important}
:focus-visible{outline:2px solid var(--red);outline-offset:3px;border-radius:2px}
.skip-link{position:absolute;left:-9999px;top:0;z-index:400;background:var(--ink);color:#fff;padding:12px 18px;border-radius:0 0 var(--r-md) 0}
.skip-link:focus{left:0}

.wrap{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--pad);position:relative;z-index:1}
.sec{padding-block:var(--sec-y)}
.sec--tight{padding-block:var(--sec-y-tight)}
.sec--paper{background:var(--paper)}
.sec--ink{background:var(--ink);color:#fff}
.sec--ink p{color:var(--on-dark-mut)}

/* ---------- Typo ---------- */
h1,h2,h3{font-weight:700;line-height:1.08;letter-spacing:-.015em;color:var(--ink);text-wrap:balance}
.sec--ink h1,.sec--ink h2,.sec--ink h3{color:#fff}
h1{font-size:clamp(2.2rem, 1.5rem + 2.2vw, 3.4rem)}
h2{font-size:clamp(1.7rem, 1.2rem + 1.9vw, 2.6rem)}
h3{font-size:clamp(1.12rem, 1rem + .5vw, 1.35rem);line-height:1.25}
.lead{font-size:clamp(1.02rem, .95rem + .35vw, 1.18rem);color:var(--muted);max-width:56ch}
.sec--ink .lead{color:var(--on-dark-mut)}
.u{color:var(--red)}
h1 .u,h2 .u,h3 .u{color:inherit}
.eyebrow{display:inline-flex;align-items:center;font-size:.82rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--red)}
.sec--ink .eyebrow{color:#fff}
.hero .eyebrow{color:#fff}
.sec-head{max-width:820px;margin-bottom:clamp(2rem, 4vw, 3.2rem)}
.sec-head.center{margin-inline:auto;text-align:center}
.sec-head.center .lead{margin-inline:auto}
.sec-head h1,.sec-head h2{margin-top:.7rem}
.sec-head .lead{margin-top:.9rem}
.num,[data-count]{font-variant-numeric:tabular-nums}

/* ---------- Buttons ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55em;font-weight:700;font-size:1rem;letter-spacing:.005em;padding:15px 28px;border-radius:0;border:1px solid transparent;transition:background .18s var(--ease),color .18s var(--ease),border-color .18s var(--ease),box-shadow .18s var(--ease);white-space:nowrap}
.btn svg{width:17px;height:17px;flex:none;transition:transform .25s var(--ease)}
.btn:hover svg{transform:translateX(4px)}
.btn-primary{background:var(--red);color:#fff;box-shadow:var(--glow-red)}
.btn-primary:hover{background:var(--red-hov)}
.btn-primary:active{background:var(--red-act)}
.btn-ghost{background:transparent;border-color:var(--hairline);color:var(--ink)}
.btn-ghost:hover{border-color:var(--ink)}
.btn-ghost-light{background:transparent;border-color:var(--ink-line);color:#fff}
.btn-ghost-light:hover{border-color:rgba(255,255,255,.45)}
.btn-sm{padding:10px 18px;font-size:.9rem}
.btn-wa{background:#25d366;color:#fff;box-shadow:0 6px 18px rgba(37,211,102,.28)}
.btn-wa:hover{background:#1ebe57;color:#fff}
.link-arrow{display:inline-flex;align-items:center;gap:.45em;font-weight:700;color:var(--red)}
.link-arrow svg{width:16px;height:16px;transition:transform .25s var(--ease)}
.link-arrow:hover svg{transform:translateX(4px)}

/* ---------- Reveal (Haus-Motion) ---------- */
.reveal{transition:opacity .7s var(--ease),transform .7s var(--ease)}
html.js .reveal{opacity:0;transform:translateY(26px)}
html.js .reveal.in{opacity:1;transform:none}
.d1{transition-delay:.08s}.d2{transition-delay:.16s}.d3{transition-delay:.24s}.d4{transition-delay:.32s}.d5{transition-delay:.4s}

/* ---------- Header ---------- */
header{position:sticky;top:0;z-index:120;background:rgba(255,255,255,.92);-webkit-backdrop-filter:saturate(150%) blur(12px);backdrop-filter:saturate(150%) blur(12px);border-bottom:1px solid transparent;transition:border-color .3s var(--ease),box-shadow .3s var(--ease)}
header.scrolled{border-bottom-color:var(--hairline);box-shadow:0 8px 30px rgba(18,18,18,.05)}
body.menu-open header{-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--white)}
.bar{display:flex;align-items:center;gap:clamp(18px, 2.5vw, 40px);height:78px;transition:height .3s var(--ease)}
header.scrolled .bar{height:66px}
.brand{display:inline-flex;align-items:center;flex:none}
.brand svg{height:32px;width:auto}
nav.main{display:flex;gap:clamp(16px, 1.8vw, 30px);align-items:center;margin-left:auto}
nav.main a{font-size:.96rem;font-weight:500;padding:6px 0;position:relative;color:var(--text);transition:color .25s var(--ease)}
nav.main a:hover,nav.main a:focus-visible,nav.main a[aria-current="page"]{color:var(--red)}
.header-cta{display:flex;align-items:center;gap:14px;margin-left:clamp(4px, 1vw, 14px)}
.header-cta .btn{padding:11px 20px;font-size:.92rem}
.header-call{display:inline-flex;align-items:center;gap:7px;font-size:.92rem;font-weight:500;color:var(--text);white-space:nowrap}
.header-call:hover{color:var(--ink)}
.header-call .ic{width:17px;height:17px;flex:none}
.header-call .ic use{fill:currentColor}
.burger{display:none;width:44px;height:44px;border:1px solid var(--hairline);border-radius:var(--r-sm);background:transparent;position:relative;flex:none}
.burger span,.burger span::before,.burger span::after{content:"";position:absolute;left:11px;right:11px;height:2px;background:var(--ink);border-radius:2px;transition:transform .25s var(--ease),opacity .2s}
.burger span{top:50%;margin-top:-1px}
.burger span::before{top:-7px;left:0;right:0}
.burger span::after{top:7px;left:0;right:0}
body.menu-open .burger span{background:transparent}
body.menu-open .burger span::before{transform:translateY(7px) rotate(45deg)}
body.menu-open .burger span::after{transform:translateY(-7px) rotate(-45deg)}
.mobile-menu{position:fixed;inset:78px 0 0 0;z-index:110;background:var(--white);padding:28px var(--pad) 40px;display:flex;flex-direction:column;gap:6px;overflow:auto}
.mobile-menu a{font-size:1.3rem;font-weight:700;padding:14px 0;border-bottom:1px solid var(--hairline);color:var(--ink)}
.mobile-menu .btn{margin-top:22px}

/* ---------- Logo (inline SVG, Farbvarianten) ---------- */
.lg-box{fill:var(--ink)}
.lg-glyph{fill:#fff}
.lg-frame{fill:var(--ink)}
.lg-word{fill:var(--ink)}
.logo-invert .lg-box{fill:#fff}
.logo-invert .lg-glyph{fill:var(--ink)}
.logo-invert .lg-frame{fill:#fff}
.logo-invert .lg-word{fill:#fff}

/* ---------- Hero ---------- */
.hero{position:relative;background:var(--ink);color:#fff;overflow:hidden}
.hero::before{content:"";position:absolute;inset:0;background:
  radial-gradient(60% 50% at 72% 28%, rgba(200,20,30,.12), transparent 65%),
  linear-gradient(180deg, rgba(28,28,31,.6), transparent 40%);pointer-events:none}
.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:clamp(2rem, 4vw, 4.5rem);align-items:center;padding-block:clamp(3.4rem, 6vw, 6rem) clamp(3rem, 5vw, 5rem)}
.hero-copy h1{color:#fff;margin-top:1rem}
.hero-copy h1 .u{position:relative;color:inherit}
.hero-copy h1 .u::after{content:"";position:absolute;left:0;right:0;bottom:.06em;height:.10em;background:var(--red);border-radius:2px;opacity:.95}
.hero-sub{margin-top:1.1rem;color:var(--on-dark-mut);font-size:clamp(1.05rem, 1rem + .3vw, 1.2rem);max-width:46ch}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap;margin-top:1.8rem}
.hero-cta.center{justify-content:center}
.hero-trust{display:flex;flex-wrap:wrap;gap:1.1rem 1.8rem;margin-top:2.2rem;padding-top:1.4rem;border-top:1px solid var(--ink-line)}
.ht-item{display:inline-flex;align-items:center;gap:.55em;font-size:.9rem;color:var(--on-dark-mut)}
.ht-item svg{width:18px;height:18px;color:var(--red);opacity:.85;flex:none}
.ht-item b{color:#fff;font-weight:700}

/* ---------- Chat-Bühne (Signature) ---------- */
.stage{position:relative}
.chat{position:relative;background:var(--white);color:var(--text);border-radius:var(--r-chat-lg);box-shadow:var(--sh-lg);overflow:hidden;max-width:560px;margin-left:auto}
.chat-head{display:flex;align-items:center;gap:12px;padding:14px 18px;border-bottom:1px solid var(--hairline);background:var(--white)}
.chat-ava{width:42px;height:42px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;flex:none;position:relative;overflow:hidden}
.chat-ava svg{width:20px;height:20px}
.chat-ava img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:50%}
.chat-ava-fb{position:absolute;inset:0;display:none;align-items:center;justify-content:center;font-weight:700;font-size:1.05rem}
.chat-ava.no-photo img{display:none}
.chat-ava.no-photo .chat-ava-fb{display:flex}
.chat-who b{display:block;font-size:.98rem;line-height:1.2;color:var(--ink)}
.chat-who span{font-size:.78rem;color:var(--muted)}
.chat-chip{margin-left:auto;display:inline-flex;align-items:center;gap:.45em;font-size:.76rem;font-weight:700;letter-spacing:.04em;padding:6px 12px;border:1px solid var(--hairline);border-radius:var(--r-chat-pill);color:var(--muted)}
.chat-chip img,.chat-chip svg{width:16px;height:16px;border-radius:50%}
.chat-body{padding:20px 18px;display:flex;flex-direction:column;gap:10px;height:328px;overflow-y:auto;background:
  linear-gradient(180deg, var(--paper), var(--white) 30%);transition:background .2s var(--ease)}
.msg{max-width:82%;display:flex;align-items:flex-end;gap:6px;position:relative}
.msg-in{align-self:flex-end}
.msg-ai{align-self:flex-start}
.msg-bubble{padding:11px 14px;border-radius:var(--r-chat-md);font-size:.98rem;line-height:1.45;position:relative}
.msg-text{display:inline}
/* Standard-Skin (Website/E-Mail-Module): Kunde ("ich") rechts in Markenfarbe, Emma links hell */
.msg-in .msg-bubble{background:var(--ink-soft);color:#fff;border-bottom-right-radius:4px}
.msg-ai .msg-bubble{background:var(--white);border:1px solid var(--hairline);border-bottom-left-radius:4px;color:var(--text)}
.msg-ava{display:none;width:24px;height:24px;border-radius:50%;overflow:hidden;flex:none}
.msg-ava img{width:100%;height:100%;object-fit:cover;display:block}
.msg-link{display:inline-flex;align-items:center;gap:.5em;margin-top:.5em;font-size:.88rem;font-weight:700;color:var(--red);background:rgba(18,18,18,.05);border:1px solid var(--hairline);border-radius:var(--r-sm);padding:8px 12px}
.msg-link svg{width:15px;height:15px;color:var(--red)}
.msg-time{display:none;position:absolute;right:10px;bottom:6px;align-items:center;gap:3px;font-size:.68rem;color:#8f8f8f;white-space:nowrap}
.msg-ticks{width:14px;height:10px;color:#8f8f8f}
html.js .chat-play .msg{opacity:0;transform:translateY(10px)}
html.js .chat-play .msg.show{opacity:1;transform:none;transition:opacity .4s var(--ease),transform .4s var(--ease)}
.typing{align-self:flex-start;display:none;align-items:flex-end;gap:6px}
.typing.on{display:inline-flex}
.typing-bubble{display:inline-flex;gap:5px;padding:13px 16px;background:var(--white);border:1px solid var(--hairline);border-radius:var(--r-chat-md);border-bottom-left-radius:4px}
.typing i{width:7px;height:7px;border-radius:50%;background:rgba(18,18,18,.35);animation:tdot 1s infinite}
.typing i:nth-child(2){animation-delay:.15s}
.typing i:nth-child(3){animation-delay:.3s}

/* WhatsApp-Skin: echte App-Farben (helles Grün = eigene Nachricht, Weiß = Emma) */
.skin-wa .chat-body{background:#e5ddd5 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='60'%3E%3Cpath d='M0 0h60v60H0z' fill='none'/%3E%3C/svg%3E")}
.skin-wa .msg-in .msg-bubble{background:#d9fdd3;color:#111b21}
.skin-wa .msg-ai .msg-bubble{background:#fff;color:#111b21;border-color:#e9edef}
.skin-wa .typing-bubble{background:#fff;border-color:#e9edef}
.skin-wa .msg-bubble{padding-right:18px;padding-bottom:22px}
.skin-wa .msg-time{display:inline-flex;color:#667781}
.skin-wa .msg-in .msg-ticks{color:#53bdeb}

/* Instagram-Skin: eigene Nachricht in Instagram-Violett, Emma in hellem Grau, Avatar je Emma-Nachricht */
.skin-ig .chat-body{background:#fff}
.skin-ig .msg-in .msg-bubble{background:#7c3aed;color:#fff}
.skin-ig .msg-ai .msg-bubble{background:#efefef;color:#050505;border-color:transparent}
.skin-ig .msg-ai .msg-ava,
.skin-ig .typing .msg-ava{display:block}
.skin-ig .typing-bubble{background:#efefef;border-color:transparent}
.skin-ig .typing i{background:rgba(5,5,5,.4)}
@keyframes tdot{0%,60%,100%{transform:translateY(0);opacity:.5}30%{transform:translateY(-4px);opacity:1}}
.chat-input{display:flex;align-items:center;gap:10px;padding:12px 14px;border-top:1px solid var(--hairline);background:var(--white)}
.chat-ph{flex:1;display:flex;align-items:center;gap:8px;font-size:.92rem;color:var(--muted);background:var(--paper);border:1px solid var(--hairline);border-radius:var(--r-chat-pill);padding:10px 16px}
.chat-ph-text{flex:1}
.chat-ph-ic{display:none;flex:none;width:19px;height:19px;color:#8f8f8f}
.chat-send{width:40px;height:40px;border-radius:50%;background:var(--red);border:none;display:grid;place-items:center;flex:none}
.chat-send svg{width:17px;height:17px;color:#fff}
.chat-cam{display:none;width:34px;height:34px;border-radius:50%;flex:none;place-items:center;background:linear-gradient(135deg,#6fc6ff,#2f8fef);color:#fff}
.chat-cam svg{width:17px;height:17px}
.chat-tools{display:none;align-items:center;gap:14px;flex:none;color:#8f8f8f}
.chat-tools svg{width:21px;height:21px}
.chat-mic{display:none;width:40px;height:40px;border-radius:50%;background:var(--red);border:none;place-items:center;flex:none}
.chat-mic svg{width:18px;height:18px;color:#fff}
.skin-ig .chat-cam{display:grid}
.skin-ig .chat-tools{display:flex}
.skin-ig .chat-send{display:none}
.skin-ig .chat-ph{background:#fafafa}
.skin-wa .chat-send{display:none}
.skin-wa .chat-mic{display:grid;background:#25d366}
.skin-wa .chat-ph-ic{display:block}
.skin-wa .chat-ph{background:#fff;border-color:#e9edef}
.skin-web .chat-send,.skin-web .chat-cam,.skin-web .chat-tools,.skin-web .chat-mic{display:none}
.skin-web .chat-ph{background:#fff;border-color:var(--hairline);padding:12px 18px}
.skin-web .chat-ph-ic{display:none}
.skin-web .chat-ph-ic:first-of-type{display:block;order:2}
.chat-branding{display:flex;visibility:hidden;align-items:center;justify-content:center;gap:6px;padding:0 14px 14px;font-size:.74rem;color:var(--muted);background:var(--white)}
.chat-branding svg{width:13px;height:13px;color:#8f8f8f}
.skin-web .chat-branding{visibility:visible}
.stage-meta{display:flex;align-items:center;gap:1rem;max-width:560px;margin:14px 0 0 auto;font-size:.85rem;color:var(--on-dark-mut)}
.stage-meta b{color:#fff}
.stage-label{display:block;max-width:560px;margin:0 0 10px auto;font-size:.76rem;letter-spacing:.1em;text-transform:uppercase;color:var(--on-dark-mut);opacity:.6;text-align:right}

/* Kanal-Switch (Analogie igroupTV-Format-Switch) */
.ch-switch{display:flex;gap:8px;max-width:560px;margin:16px 0 0 auto;flex-wrap:wrap}
.ch-btn{display:inline-flex;align-items:center;gap:.5em;padding:9px 16px;border-radius:var(--r-pill);border:1px solid var(--ink-line);background:transparent;color:var(--on-dark-mut);font-size:.88rem;font-weight:700;transition:border-color .18s var(--ease),color .18s var(--ease),background .18s var(--ease)}
.ch-btn svg{width:18px;height:18px}
.ch-btn:hover{border-color:rgba(255,255,255,.4);color:#fff}
.ch-btn.is-on{background:#fff;color:var(--ink);border-color:#fff}

/* Kanal-Icon-Basis (Badge-Set): Fills via Custom Properties,
   weil Klassen-Kombinatoren nicht in den use-Shadow-Tree greifen */
.ic-bg{fill:var(--icbg, #121212)}
.ic-fg{fill:var(--icfg, #fff)}

/* ---------- Logo-Marquee ---------- */
.stoerer{padding-block:var(--sec-y-tight);border-bottom:1px solid var(--hairline)}
.stoerer--attached{background:var(--white);border-top:0;padding-top:0}
.stoerer-lead{text-align:center;font-size:.95rem;color:var(--muted);margin-bottom:1.6rem}
.stoerer-lead b{color:var(--ink)}
.logo-wall{overflow:hidden;position:relative}
.logo-wall::before,.logo-wall::after{content:"";position:absolute;top:0;bottom:0;width:90px;z-index:2;pointer-events:none}
.logo-wall::before{left:0;background:linear-gradient(90deg, var(--white), transparent)}
.logo-wall::after{right:0;background:linear-gradient(270deg, var(--white), transparent)}
.logo-track{display:flex;align-items:center;gap:clamp(2.4rem, 4vw, 4rem);width:max-content;animation:logoMarquee 42s linear infinite;will-change:transform}
.logo-wall:hover .logo-track,.logo-wall:focus-within .logo-track{animation-play-state:paused}
.logo-track img{height:44px;width:auto;filter:saturate(.85);opacity:.92}
@keyframes logoMarquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ---------- Statbar ---------- */
.statbar{display:grid;grid-template-columns:repeat(6, 1fr);gap:1px;background:var(--hairline);border:1px solid var(--hairline);border-radius:var(--r-md);overflow:hidden}
.stat{background:var(--white);padding:clamp(1.3rem, 2.6vw, 2rem) 1rem;text-align:center}
.stat-num{font-size:clamp(1.7rem, 1.3rem + 1.4vw, 2.5rem);font-weight:700;color:var(--ink);line-height:1;letter-spacing:-.02em}
.stat-num .u{font-weight:700}
.stat-lab{margin-top:.5rem;font-size:.86rem;color:var(--muted)}
.stat-scope{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.4rem 1.5rem;margin-bottom:1.15rem}
.stat-scope li{position:relative;font-size:clamp(.86rem, .82rem + .2vw, .96rem);font-weight:600;color:var(--ink);letter-spacing:-.01em}
.stat-scope li+li::before{content:"";position:absolute;left:-.78rem;top:50%;width:4px;height:4px;margin-top:-2px;border-radius:50%;background:var(--red)}
.stat-src{margin-top:.85rem;font-size:.68rem;line-height:1.4;color:var(--muted);text-align:center}
.speed-bridge{max-width:820px;margin:clamp(3rem, 6vw, 4.5rem) auto 0;padding-top:clamp(2.4rem, 4.5vw, 3.2rem);border-top:1px solid var(--ink-line);text-align:center}
.speed-bridge-kicker{display:inline-block;margin-bottom:.9rem;font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--on-dark-mut)}
.speed-bridge p{font-size:clamp(1.05rem, 1rem + .4vw, 1.3rem);color:var(--text)}
.speed-bridge .b-cta{margin-top:1.5rem}

/* ---------- Agent-Tabs ---------- */
.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:clamp(1.6rem, 3vw, 2.4rem)}
.tab{display:inline-flex;align-items:center;gap:.6em;padding:12px 22px;border-radius:var(--r-pill);border:1px solid var(--hairline);background:var(--white);font-weight:700;font-size:.95rem;color:var(--muted);transition:color .18s var(--ease),border-color .18s var(--ease),background .18s var(--ease)}
.tab .t-dot{width:8px;height:8px;border-radius:50%;background:var(--hairline);transition:background .18s var(--ease)}
.tab:hover{border-color:var(--ink);color:var(--ink)}
.tab[aria-selected="true"]{background:var(--ink);border-color:var(--ink);color:#fff}
.tab[aria-selected="true"] .t-dot{background:var(--red)}
.agent-panel{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem, 4vw, 4rem);align-items:center}
.agent-panel .chat{margin-left:0;box-shadow:var(--sh-md);border:1px solid var(--hairline)}
.agent-info .eyebrow{margin-bottom:.6rem}
.agent-info h3{font-size:clamp(1.3rem, 1.1rem + .8vw, 1.7rem)}
.agent-info p{margin-top:.8rem;color:var(--muted)}
.agent-list{margin-top:1.4rem;display:grid;gap:.9rem}
.agent-list li{display:flex;gap:.8em;align-items:flex-start;font-size:.98rem}
.agent-info .btn{margin-top:1.7rem}
.dots3{flex:none;display:inline-flex;gap:3px;margin-top:.55em}
.dots3 i{width:5px;height:5px;border-radius:50%;background:var(--red)}
.dots3 i:nth-child(2){opacity:.6}
.dots3 i:nth-child(3){opacity:.3}

.agent-list .agent-check{flex:none;width:18px;height:18px;color:var(--red);margin-top:.15em}
@media (prefers-reduced-motion: reduce){
  .agent-list .dots3 i{animation:none}
  .camp-msg{transition:none}
}

/* ---------- Kampagnen-Auswahl (Liste + Chat-Bühne) ---------- */
.camp-grid{display:grid;grid-template-columns:1fr 380px;gap:clamp(2rem, 4vw, 3.2rem);align-items:start}
.camp-list{display:flex;flex-direction:column;gap:10px}
.camp-item{display:flex;align-items:center;gap:16px;width:100%;text-align:left;padding:14px 18px;background:var(--white);border:1px solid var(--hairline);border-radius:var(--r-md);transition:background .18s var(--ease),border-color .18s var(--ease)}
.camp-item:hover{border-color:rgba(200,20,30,.35)}
.camp-item.is-on{background:rgba(200,20,30,.06);border-color:var(--red)}
.camp-ic{flex:none;width:46px;height:46px;border-radius:0;background:rgba(200,20,30,.08);color:var(--red);display:grid;place-items:center;transition:background .18s var(--ease),color .18s var(--ease)}
.camp-ic svg{width:22px;height:22px}
.camp-item.is-on .camp-ic{background:var(--red);color:#fff}
.camp-copy{flex:1;min-width:0}
.camp-copy b{display:block;font-size:1.05rem;color:var(--ink)}
.camp-copy span{display:block;margin-top:.2rem;font-size:.88rem;color:var(--muted);line-height:1.4}
.camp-chev{flex:none;width:20px;height:20px;color:var(--hairline);transition:transform .18s var(--ease),color .18s var(--ease)}
.camp-item.is-on .camp-chev{color:var(--red);transform:translateX(2px)}
.camp-stage{position:sticky;top:100px;display:flex;flex-direction:column;align-items:center;gap:20px}

/* Phone-Bühne: eigenständiges Mockup fürs Kampagnen-Modul (kein Chat-Card-Remix) */
.camp-phone{position:relative;width:330px;max-width:100%;height:660px;flex:none;background:#111114;border-radius:46px;box-shadow:var(--sh-lg)}
.camp-phone-screen{position:absolute;inset:12px;border-radius:34px;overflow:hidden;background:#e9e2d9;display:flex;flex-direction:column}
.camp-phone-head{flex:none;display:flex;align-items:center;gap:12px;padding:16px;background:var(--white);border-bottom:1px solid var(--hairline)}
.camp-back{width:20px;height:20px;color:#8a8a8a;flex:none}
.camp-phone-ava{flex:none;width:42px;height:42px;border-radius:50%;background:var(--red);position:relative;overflow:hidden}
.camp-phone-ava img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:50%}
.camp-phone-who b{display:block;font-weight:700;font-size:1rem;color:var(--ink)}
.camp-phone-who span{display:block;margin-top:1px;font-size:.78rem;color:var(--muted)}
.camp-phone-body{flex:1;padding:16px 14px;display:flex;flex-direction:column;gap:9px;overflow-y:auto}
.camp-chip{align-self:center;display:inline-flex;align-items:center;gap:7px;padding:7px 14px;border-radius:var(--r-pill);font-size:.82rem;font-weight:600;background:#eceef1;color:var(--muted);border:1px solid #e2e5e8}
.camp-chip--result{background:rgba(25,135,84,.12);color:var(--green);border-color:rgba(25,135,84,.25)}
.camp-chip--result svg{width:14px;height:14px;flex:none}
.camp-msg{max-width:82%;opacity:0;transform:translateY(10px);transition:opacity .4s var(--ease),transform .4s var(--ease)}
.camp-msg.show{opacity:1;transform:none}
.camp-msg--in{align-self:flex-start}
.camp-msg--out{align-self:flex-end}
.camp-bubble{padding:11px 13px 8px;border-radius:var(--r-chat-md);box-shadow:0 1px 1px rgba(0,0,0,.08)}
.camp-msg--in .camp-bubble{background:var(--white);border-bottom-left-radius:4px}
.camp-msg--out .camp-bubble{background:#dcf8c6;border-bottom-right-radius:4px}
.camp-bubble-text{font-size:.98rem;line-height:1.42;color:var(--ink)}
.camp-bubble-meta{display:flex;align-items:center;justify-content:flex-end;gap:4px;margin-top:4px;font-size:.68rem;color:#8a9a86}
.camp-ticks{width:14px;height:10px;color:#4aa3ff}
.camp-replay{display:inline-flex;align-items:center;gap:.5em;padding:12px 22px;border:1.5px solid rgba(200,20,30,.28);border-radius:var(--r-pill);background:var(--white);color:var(--red);font-weight:600;font-size:.95rem;transition:border-color .18s var(--ease)}
.camp-replay:hover{border-color:var(--red)}
.camp-replay svg{width:16px;height:16px}

/* ---------- Bausteine-Grid (6 Kacheln, dunkel) ---------- */
.bausteine-grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:clamp(1.1rem, 2vw, 1.6rem)}
.baustein-card{border:1px solid var(--ink-line);border-radius:var(--r-md);padding:clamp(1.4rem, 2.4vw, 1.9rem);background:var(--ink-soft);transition:transform .25s var(--ease),box-shadow .25s var(--ease),border-color .25s var(--ease)}
.baustein-card:hover{transform:translateY(-4px);box-shadow:var(--sh-lg);border-color:rgba(200,20,30,.4)}
.baustein-ic{width:44px;height:44px;border-radius:var(--r-sm);background:var(--ink);border:1px solid var(--ink-line);display:grid;place-items:center;margin-bottom:1rem}
.baustein-ic svg{width:22px;height:22px;color:var(--red)}
.baustein-card h3{font-size:1.1rem;color:#fff}
.baustein-card p{margin-top:.6rem;color:var(--on-dark-mut);font-size:.95rem}

/* ---------- Sektion mit Bild-Spalte ---------- */
.sec-media-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(2rem, 4vw, 4rem);align-items:center}
.sec-media-grid .sec-head{margin-bottom:clamp(1.6rem, 3vw, 2.2rem)}
.sec-media-grid .mech-grid{grid-template-columns:1fr}
.sec-media{border-radius:var(--r-md);overflow:hidden;align-self:stretch}
.sec-media img{display:block;width:100%;height:100%;min-height:clamp(320px, 30vw, 480px);object-fit:cover}
@media (max-width:860px){
  .sec-media-grid{grid-template-columns:1fr}
  .sec-media{order:-1}
  .sec-media img{min-height:260px}
}

/* ---------- Mechanik-Karten ---------- */
.mech-grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:clamp(1.1rem, 2vw, 1.8rem)}
.mech-card{border:1px solid var(--hairline);border-radius:var(--r-md);padding:clamp(1.4rem, 2.4vw, 2rem);background:var(--white);transition:transform .2s var(--ease),box-shadow .2s var(--ease),border-color .2s var(--ease)}
.mech-card:hover{transform:translateY(-3px);box-shadow:var(--sh-md);border-color:rgba(200,20,30,.35)}
.mech-ic{width:46px;height:46px;border-radius:0;background:rgba(200,20,30,.08);color:var(--red);--icbg:transparent;--icfg:var(--red);display:grid;place-items:center;margin-bottom:1.1rem;transition:background .2s var(--ease),color .2s var(--ease),transform .2s var(--ease)}
.mech-ic svg{width:23px;height:23px;color:currentColor}
.mech-card:hover .mech-ic{--icfg:#fff}
.mech-card:hover .mech-ic{background:var(--red);color:#fff;transform:translateY(-2px) rotate(-3deg)}
.mech-card p{margin-top:.7rem;color:var(--muted);font-size:.97rem}
.vs{margin-top:clamp(2.2rem, 4vw, 3.2rem);display:grid;grid-template-columns:repeat(2, 1fr);gap:1px;background:var(--hairline);border:1px solid var(--hairline);border-radius:var(--r-md);overflow:hidden}
.vs-item{background:var(--white);padding:clamp(1.6rem, 3vw, 2.3rem);transition:transform .25s var(--ease),box-shadow .25s var(--ease)}
.vs-item:hover{transform:translateY(-4px);box-shadow:var(--sh-md)}
.vs-ic{width:46px;height:46px;border-radius:var(--r-sm);background:var(--paper);border:1px solid var(--hairline);display:grid;place-items:center;margin-bottom:1.1rem}
.vs-ic svg{width:23px;height:23px;color:var(--red)}
.vs-item h3{font-size:1.05rem}
.vs-item p{margin-top:.5rem;color:var(--muted);font-size:.95rem}
@media (max-width:720px){.vs{grid-template-columns:1fr}}

/* ---------- Sprachmodell-vs-Emma Split-Vergleich ---------- */
.vsx-compare{display:grid;gap:clamp(1.8rem, 3.2vw, 2.6rem)}
.vsx-split{display:grid;grid-template-columns:1fr auto 1fr;gap:clamp(1rem, 2.4vw, 1.6rem);align-items:stretch}
.vsx-panel{display:flex;flex-direction:column;gap:.8rem}
.vsx-tag{font-size:.74rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.vsx-panel--emma .vsx-tag{color:var(--red)}
.vsx-chat{flex:1;display:flex;flex-direction:column;border:1px solid var(--hairline);border-radius:var(--r-chat-md);overflow:hidden;background:var(--white)}
.vsx-panel--emma .vsx-chat{border-color:var(--red);box-shadow:0 30px 70px -50px rgba(200,20,30,.35)}
.vsx-chat-head{display:flex;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid var(--hairline)}
.vsx-ava{width:34px;height:34px;border-radius:50%;flex:none;position:relative;overflow:hidden;display:grid;place-items:center;background:#c7c7c3;color:#7a7a74;font-weight:700;font-size:.85rem}
.vsx-ava.chat-ava{width:34px;height:34px}
.vsx-ava img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:50%}
.vsx-who b{display:block;font-size:.9rem;color:var(--ink);line-height:1.2}
.vsx-who span{font-size:.72rem;color:var(--muted)}
.vsx-chat-body{flex:1;padding:16px;display:flex;flex-direction:column;gap:10px}
.vsx-msg{max-width:88%;padding:10px 13px;border-radius:var(--r-chat-md);font-size:.88rem;line-height:1.45}
.vsx-msg--in{align-self:flex-end;background:var(--ink-soft);color:#fff;border-bottom-right-radius:4px}
.vsx-msg--ai{align-self:flex-start;background:var(--white);border:1px solid var(--hairline);border-bottom-left-radius:4px;color:var(--text)}
.vsx-panel--generic .vsx-msg--ai{color:var(--muted);border-style:dashed}
.vsx-panel--emma .vsx-msg--ai{border-left:3px solid var(--red);color:var(--ink)}
.vsx-divider{display:flex;align-items:center;justify-content:center}
.vsx-divider span{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--ink);color:#fff;font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.vsx-points{display:grid;grid-template-columns:repeat(4, 1fr);gap:1px;background:var(--hairline);border:1px solid var(--red);border-radius:var(--r-md);overflow:hidden;list-style:none;box-shadow:0 30px 70px -50px rgba(200,20,30,.35)}
.vsx-points li{background:var(--white);padding:1.2rem 1.1rem;display:flex;flex-direction:column;gap:.5rem}
.vsx-points b{font-size:.9rem;color:var(--ink)}
.vsx-points span{font-size:.8rem;color:var(--muted)}
.vsx-points .vsx-ic{width:34px;height:34px;border-radius:var(--r-sm);background:var(--paper);border:1px solid var(--hairline);display:grid;place-items:center;color:var(--red)}
.vsx-ic svg{width:17px;height:17px}

/* ---------- Testimonials + Badges ---------- */
.quotes{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.1rem, 2vw, 1.8rem)}
.quote{background:var(--white);border:1px solid var(--hairline);border-radius:var(--r-md);padding:clamp(1.5rem, 2.6vw, 2.2rem);display:flex;flex-direction:column;gap:1.1rem}
.quote svg{width:26px;height:26px;color:var(--red);flex:none}
.quote blockquote{font-size:1.02rem;line-height:1.6;color:var(--text)}
.quote figcaption{margin-top:auto;display:flex;align-items:center;gap:.8rem;font-size:.9rem;color:var(--muted)}
.quote figcaption b{color:var(--ink);display:block;font-size:.98rem}
.quote-avatar{width:44px;height:44px;border-radius:50%;object-fit:cover;flex:none;border:1px solid var(--hairline)}
.quote--feature .quote-avatar{border-color:var(--ink-line)}
.quotes-note{margin-top:1rem;font-size:.8rem;color:var(--muted)}
.proof-shots-wrap{margin-top:clamp(2rem, 3.5vw, 2.8rem);text-align:center}
.proof-shots-lab{display:block;font-size:.74rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:1rem}
.proof-shots{display:flex;flex-wrap:wrap;justify-content:center;gap:clamp(1rem, 2vw, 1.5rem)}
.proof-shot{width:200px;border:1px solid var(--hairline);border-radius:var(--r-md);overflow:hidden;background:var(--paper);text-align:left}
.proof-shot .ps-media{aspect-ratio:1/1}
.proof-shot img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.96)}
.proof-shot figcaption{padding:.7rem .85rem;font-size:.76rem;line-height:1.4;color:var(--muted);border-top:1px solid var(--hairline)}
.badges{display:flex;flex-wrap:wrap;gap:clamp(1.2rem, 2.5vw, 2.4rem);align-items:center;justify-content:center;margin-top:clamp(2.4rem, 4vw, 3.4rem);padding-top:clamp(1.6rem, 3vw, 2.4rem);border-top:1px solid var(--hairline)}
.badges img{height:52px;width:auto;filter:saturate(.9)}

/* ---------- Ablauf + Steuerung ---------- */
.flow{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(2rem, 4vw, 4rem);align-items:start}
.steps{display:grid;gap:0}
.step{display:grid;grid-template-columns:56px 1fr;gap:1.2rem;padding:1.3rem 0;border-bottom:1px solid var(--hairline)}
.step:last-child{border-bottom:none}
.step-num{width:56px;height:56px;border-radius:50%;border:1px solid var(--hairline);display:grid;place-items:center;font-weight:700;font-size:1.15rem;color:var(--red);background:var(--white);font-variant-numeric:tabular-nums}
.step h3{font-size:1.12rem}
.step p{margin-top:.35rem;color:var(--muted);font-size:.97rem}
.ctrl-card{background:var(--ink);color:#fff;border-radius:var(--r-md);padding:clamp(1.6rem, 3vw, 2.4rem);position:relative;overflow:hidden;box-shadow:var(--sh-lg)}
.ctrl-card::before{content:"";position:absolute;inset:0;background:radial-gradient(70% 60% at 80% 10%, rgba(200,20,30,.14), transparent 60%);pointer-events:none}
.ctrl-card .eyebrow{color:#fff}
.ctrl-card h3{color:#fff;margin-top:.7rem;font-size:clamp(1.25rem, 1.1rem + .6vw, 1.55rem)}
.ctrl-card p{margin-top:.8rem;color:var(--on-dark-mut);font-size:.97rem}
.ctrl-list{margin-top:1.3rem;display:grid;gap:.8rem;position:relative}
.ctrl-list li{display:flex;gap:.7em;align-items:flex-start;font-size:.95rem;color:#fff}
.ctrl-list svg{width:18px;height:18px;color:var(--red);flex:none;margin-top:.15em}
.ctrl-chip{display:inline-flex;align-items:center;gap:.5em;margin-top:1.4rem;font-size:.82rem;font-weight:700;padding:8px 14px;border-radius:var(--r-pill);background:rgba(255,255,255,.07);border:1px solid var(--ink-line);color:#fff;position:relative}
.ctrl-chip i{width:7px;height:7px;border-radius:50%;background:var(--green)}
.camp-report{background:var(--white);border-radius:var(--r-md);padding:1.1rem 1.3rem;margin-top:1.5rem;position:relative;box-shadow:0 16px 32px rgba(0,0,0,.22)}
.camp-report__head{margin-bottom:.2rem}
.camp-report__head b{display:block;font-size:.95rem;color:var(--ink)}
.camp-report__head span{font-size:.78rem;color:var(--muted)}
.camp-report__row{display:flex;align-items:baseline;justify-content:space-between;gap:1.1rem;padding:.6rem 0;border-top:1px solid var(--hairline)}
.camp-report__name{font-size:.85rem;font-weight:600;color:var(--ink);line-height:1.35}
.camp-report__stat{font-size:.75rem;color:var(--muted);white-space:nowrap;flex:none}
.camp-report__stat b{color:var(--green);font-weight:700}
@media(max-width:480px){
  .camp-report__row{flex-direction:column;align-items:flex-start;gap:.2rem}
}
.steps--row{grid-template-columns:repeat(4,1fr);gap:0 2.4rem;margin-bottom:clamp(2rem, 4vw, 3rem)}
.steps.steps--row::before{left:28px;width:calc(75% + 1.8rem);right:auto;top:27px;bottom:auto;height:2px;background:linear-gradient(90deg, var(--red), var(--hairline));transform-origin:left}
html.js .steps.steps--row.reveal.in::before{animation:spineDrawX 1.5s var(--ease) .25s both}
@keyframes spineDrawX{to{transform:scaleX(1)}}
.steps--row .step{display:block;padding:0;border:none}
.steps--row .step-num{margin-bottom:1.1rem}
@media(max-width:900px){
  .steps--row{grid-template-columns:repeat(2,1fr);gap:1.8rem 2.4rem}
  .steps--row .step{padding-bottom:1.6rem;border-bottom:1px solid var(--hairline)}
  .steps--row .step:nth-last-child(-n+2){border-bottom:none;padding-bottom:0}
  .steps.steps--row::before{display:none}
}
@media(max-width:560px){
  .steps--row{grid-template-columns:1fr;gap:0}
  .steps--row .step{padding-bottom:1.4rem}
  .steps--row .step:nth-last-child(-n+2){border-bottom:1px solid var(--hairline);padding-bottom:1.4rem}
  .steps--row .step:last-child{border-bottom:none;padding-bottom:0}
}
.ctrl-card--split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem, 4vw, 3.5rem);align-items:center}
.ctrl-card--split .camp-report{margin-top:0}
@media(max-width:820px){
  .ctrl-card--split{grid-template-columns:1fr}
  .ctrl-card--split .camp-report{margin-top:1.5rem}
}

/* ---------- Preis-Teaser ---------- */
.price-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.1rem, 2vw, 1.8rem);max-width:1040px;margin-inline:auto}
.price-card{background:var(--white);border:1px solid var(--hairline);border-radius:var(--r-md);padding:clamp(1.6rem, 3vw, 2.4rem);position:relative}
.price-card.is-reco{border-color:var(--red);box-shadow:var(--sh-md)}
.price-flag{position:absolute;top:-13px;left:clamp(1.6rem, 3vw, 2.4rem);background:var(--red);color:#fff;font-size:.76rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:5px 12px;border-radius:var(--r-pill)}
.price-name{font-size:.82rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.price-num{margin-top:.9rem;display:flex;align-items:baseline;gap:.4em}
.price-num b{font-size:clamp(2.2rem, 1.8rem + 1.4vw, 3rem);font-weight:700;color:var(--ink);letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.price-num span{color:var(--muted);font-size:.92rem}
.price-sub{margin-top:.3rem;font-size:.88rem;color:var(--muted)}
.price-list{margin-top:1.4rem;display:grid;gap:.7rem;padding-top:1.2rem;border-top:1px solid var(--hairline)}
.price-list li{display:flex;gap:.6em;align-items:flex-start;font-size:.94rem}
.price-list svg{width:18px;height:18px;color:var(--red);flex:none;margin-top:.15em}
.price-foot{margin-top:1.6rem}
.price-disclaimer{margin-top:1.4rem;text-align:center;font-size:.8rem;color:var(--muted)}

/* ---------- Closer ---------- */
.closer{position:relative;overflow:hidden}
.closer::before{content:"";position:absolute;inset:0;background:radial-gradient(55% 65% at 25% 30%, rgba(200,20,30,.12), transparent 62%);pointer-events:none}
.closer-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(2rem, 4vw, 4.5rem);align-items:center}
.closer-bubble{background:var(--ink-soft);border:1px solid var(--ink-line);border-radius:var(--r-chat-lg);border-bottom-left-radius:6px;padding:clamp(1.5rem, 2.6vw, 2.2rem);max-width:420px;box-shadow:var(--sh-lg);position:relative}
.closer-bubble .dots3{margin:0 0 .9rem}
.closer-bubble .dots3 i{width:6px;height:6px}
.closer-bubble p{font-size:clamp(1.1rem, 1rem + .5vw, 1.35rem);font-weight:500;color:#fff;line-height:1.5}
.closer-bubble span{display:block;margin-top:.9rem;font-size:.85rem;color:var(--on-dark-mut)}
.closer-body h2{color:#fff}
.closer-body .lead{margin-top:.9rem}
.closer-reassure{margin-top:1.2rem;font-size:.88rem;color:var(--on-dark-mut)}
.closer-reassure a{color:#fff;font-weight:600;text-decoration:underline;text-underline-offset:2px}
.closer-body .lead-form{margin-top:1.6rem}

/* ---------- Closer, helle Variante (weniger dunkle Flaechen auf einer Seite) ---------- */
.closer--light{background:var(--paper);color:var(--text)}
.closer--light::before{background:radial-gradient(55% 65% at 25% 30%, rgba(200,20,30,.08), transparent 62%)}
.closer--light .closer-bubble{background:var(--white);border-color:var(--hairline);box-shadow:var(--sh-md)}
.closer--light .closer-bubble p{color:var(--text)}
.closer--light .closer-bubble span{color:var(--muted)}
.closer--light .closer-body h2{color:var(--ink)}
.closer--light .closer-body .lead{color:var(--muted)}
.closer--light .lead-form{background:var(--white);border-color:var(--hairline);box-shadow:var(--sh-md)}
.closer--light .lf-field span{color:var(--ink)}
.closer--light .lf-field input{background:var(--white);border-color:var(--hairline);color:var(--text)}
.closer--light .lf-field input::placeholder{color:var(--muted)}
.closer--light .lf-field input:focus{border-color:var(--red)}
.closer--light .lf-field input[aria-invalid="true"]{border-color:var(--red)}
.closer--light .lf-consent{color:var(--muted)}
.closer--light .lf-consent a{color:var(--ink)}
.closer--light .lf-reqnote{color:var(--muted)}
.closer--light .closer-reassure{color:var(--muted)}
.closer--light .closer-reassure a{color:var(--ink)}
.closer-body--center{max-width:640px;margin-inline:auto}
.closer-quote{display:flex;align-items:center;gap:1rem;margin-top:1.8rem;padding-top:1.6rem;border-top:1px solid var(--hairline)}
.closer-quote p{font-size:.92rem;font-style:italic;color:var(--muted);line-height:1.5}
.closer-quote p span{display:block;margin-top:.3rem;font-style:normal;font-weight:700;font-size:.85rem;color:var(--ink)}
.sec--ink .closer-quote{border-top-color:var(--ink-line)}
.sec--ink .closer-quote .quote-avatar{border-color:var(--ink-line)}
.sec--ink .closer-quote p{color:var(--on-dark-mut)}
.sec--ink .closer-quote p span{color:#fff}

/* ---------- Abschluss-Block (Closer-Final) ---------- */
.closer-final .sec-head{margin-bottom:0;max-width:640px}
.closer-final h2{font-size:clamp(1.7rem, 1.2rem + 2vw, 2.5rem);max-width:22ch;margin-inline:auto}
.closer-final .hero-cta{margin-top:2.2rem}
.closer-final .btn-primary{padding:18px 38px;font-size:1.05rem}
.closer-anchor{margin-top:clamp(2.6rem, 5vw, 3.6rem);padding-top:clamp(1.6rem, 3vw, 2.2rem);border-top:1px solid var(--ink-line);display:flex;align-items:center;justify-content:center;gap:.9rem;flex-wrap:wrap;text-align:left}
.closer-anchor img{width:52px;height:52px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.16);flex:none}
.closer-anchor-meta b{display:block;font-size:.92rem;color:#fff;font-weight:700}
.closer-anchor-ways{margin-top:.35rem;display:flex;gap:1.2rem;flex-wrap:wrap}
.closer-anchor-ways a{display:inline-flex;align-items:center;gap:.45em;color:var(--on-dark-mut);font-size:.85rem;font-weight:600;transition:color .18s var(--ease)}
.closer-anchor-ways a:hover{color:#fff}
.closer-anchor-ways svg{width:15px;height:15px;color:var(--red);flex:none}

/* ---------- Footer ---------- */
footer{background:var(--ink);color:var(--on-dark-mut);border-top:1px solid var(--ink-line)}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:clamp(1.8rem, 3.5vw, 3.5rem);padding-block:clamp(2.6rem, 5vw, 4rem)}
.foot-brand svg{height:28px;width:auto}
.foot-brand p{margin-top:1rem;font-size:.9rem;max-width:34ch}
.foot-col h3{font-size:.8rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:#fff;margin-bottom:1rem}
.foot-col ul{display:grid;gap:.55rem}
.foot-col a{font-size:.94rem;color:var(--on-dark-mut);transition:color .18s}
.foot-col a:hover{color:#fff}
.foot-ways{display:flex;flex-direction:column;align-items:flex-start;gap:.7rem}
.foot-ways h3{font-size:.8rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:#fff;margin-bottom:.3rem}
.foot-link{font-size:.94rem;color:var(--on-dark-mut);transition:color .18s}
.foot-link:hover{color:#fff}
.foot-person{color:var(--on-dark-mut);font-size:.86rem;margin-top:.3rem;line-height:1.5}
.foot-badges{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;padding-block:1.4rem;border-top:1px solid var(--ink-line)}
.foot-badges img{height:36px;width:auto;opacity:.85}
.foot-credit{display:flex;justify-content:flex-start;padding-block:1.2rem;border-top:1px solid var(--ink-line);font-size:.85rem}
.foot-credit a{color:#fff;font-weight:500}

/* ---------- Sticky-Mobile-CTA ---------- */
.sticky-cta{position:fixed;left:0;right:0;bottom:0;z-index:130;display:none;align-items:center;gap:12px;padding:11px 14px calc(11px + env(safe-area-inset-bottom));background:rgba(18,18,18,.97);border-top:1px solid var(--ink-line);transform:translateY(102%);transition:transform .3s var(--ease);visibility:hidden}
.sticky-cta.is-visible{transform:none;visibility:visible}
.sticky-cta .btn{flex:1;padding:11px 18px;font-size:.9rem}
@media(max-width:980px){.sticky-cta{display:flex}}

/* ---------- Responsive ---------- */
@media(max-width:1080px){
  .hero-grid{grid-template-columns:1fr;gap:2.6rem}
  .chat,.stage-meta,.ch-switch{margin-left:0;max-width:640px}
  .bausteine-grid{grid-template-columns:1fr 1fr}
  .agent-panel{grid-template-columns:1fr;gap:2rem}
  .camp-grid{grid-template-columns:1fr}
  .camp-stage{position:static}
  .flow{grid-template-columns:1fr;gap:2.4rem}
  .closer-grid{grid-template-columns:1fr;gap:2.4rem}
  .closer-bubble{max-width:560px}
  .foot-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:980px){
  nav.main{display:none}
  .header-cta .btn-ghost{display:none}
  .header-call{display:none}
  .burger{display:block;margin-left:auto}
  .header-cta{margin-left:0}
  .statbar{grid-template-columns:repeat(3, 1fr)}
  .mech-grid{grid-template-columns:1fr}
  .vsx-points{grid-template-columns:1fr 1fr}
  .quotes{grid-template-columns:1fr}
  .price-grid{grid-template-columns:1fr}
  main{padding-bottom:74px}
}
@media(max-width:640px){
  .bausteine-grid{grid-template-columns:1fr}
  .statbar{grid-template-columns:repeat(2, 1fr)}
  .vsx-split{grid-template-columns:1fr}
  .vsx-divider{padding:.2rem 0}
  .vsx-divider span{width:30px;height:30px}
  .vsx-points{grid-template-columns:1fr}
  .hero-cta .btn{width:100%}
  .chat-body{height:300px}
  .step{grid-template-columns:44px 1fr;gap:.9rem}
  .step-num{width:44px;height:44px;font-size:1rem}
}
@media(max-width:560px){
  input,select,textarea{font-size:16px}
}

/* ---------- EXICE: dunkle Statbar + statPop-Kaskade (aus dem Deck) ---------- */
.sec--ink .statbar{background:var(--ink-line);border-color:var(--ink-line)}
.sec--ink .stat{background:var(--ink-soft)}
.sec--ink .stat-num{color:#fff}
.sec--ink .stat-num .u{color:#fff}
.sec--ink .stat-lab{color:var(--on-dark-mut)}
.sec--ink .stat-scope li{color:#fff}
.sec--ink .stat-src{color:var(--on-dark-mut)}
.sec--ink .speed-bridge p{color:#fff}
html.js .statbar--pop.reveal .stat{opacity:0;transform:scale(.92)}
html.js .statbar--pop.reveal.in .stat{opacity:1;transform:none;transition-property:opacity,transform;transition-duration:.55s;transition-timing-function:cubic-bezier(.2,.7,.2,1);transition-delay:calc(var(--stat-idx) * .09s + .12s)}

/* ---------- Problem + Kostenrechner ---------- */
.problem-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(2rem, 4vw, 4rem);align-items:start}
.problem-intro{text-align:left}
.problem-intro p{margin-top:1rem;color:var(--muted);font-size:1.05rem}
.problem-intro .accent-line{margin-top:1.3rem;font-weight:700;color:var(--ink);font-size:1.1rem}
.usp-pills{display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem;list-style:none;padding:0;margin:0 auto clamp(1.4rem, 2.5vw, 1.9rem)}
.usp-pills li{display:inline-flex;align-items:center;gap:.5em;border:1px solid var(--hairline);border-radius:var(--r-pill);padding:8px 16px;font-size:.86rem;font-weight:400;color:var(--ink);background:var(--white)}
.usp-pills svg{width:16px;height:16px;color:var(--red);flex:none}
.calc{background:var(--white);border:1px solid var(--hairline);border-radius:var(--r-md);padding:clamp(1.5rem, 3vw, 2.2rem);box-shadow:var(--sh-md)}
.calc h3{font-size:1.15rem}
.calc-sub{margin-top:.35rem;color:var(--muted);font-size:.9rem}
.calc-field{margin-top:1.4rem}
.calc-field label{display:flex;justify-content:space-between;align-items:baseline;font-size:.9rem;font-weight:700;color:var(--ink);margin-bottom:.5rem}
.calc-field label b{color:var(--red);font-size:1.05rem;font-variant-numeric:tabular-nums}
.calc input[type=range]{width:100%;accent-color:var(--red);height:4px}
.calc-seg{display:flex;gap:6px;margin-top:.4rem;flex-wrap:wrap}
.calc-seg button{flex:1;min-width:82px;padding:9px 8px;border:1px solid var(--hairline);border-radius:var(--r-sm);background:var(--white);font-size:.84rem;font-weight:700;color:var(--muted);transition:border-color .18s var(--ease),color .18s var(--ease),background .18s var(--ease)}
.calc-seg button.is-on{background:var(--ink);color:#fff;border-color:var(--ink)}
.calc-out{margin-top:1.5rem;padding-top:1.3rem;border-top:1px solid var(--hairline);display:flex;align-items:baseline;gap:.6em;flex-wrap:wrap}
.calc-out b{font-size:clamp(2rem, 1.6rem + 1.4vw, 2.8rem);font-weight:700;color:var(--red);letter-spacing:-.02em;font-variant-numeric:tabular-nums;line-height:1}
.calc-out span{color:var(--muted);font-size:.95rem}
.calc-note{margin-top:.9rem;font-size:.78rem;color:var(--muted)}

/* ---------- Lösung / Prozess ---------- */
.loesung-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(2rem, 4vw, 4rem);align-items:center}
.abgrenzung{display:block;margin-top:.9rem;font-weight:700;color:var(--ink);font-size:clamp(1.1rem, 1rem + .5vw, 1.3rem)}
.check-list{margin-top:1.5rem;display:grid;gap:.9rem}
.check-list li{display:flex;gap:.7em;align-items:flex-start;font-size:1rem}
.check-list svg{width:18px;height:18px;color:var(--red);flex:none;margin-top:.15em}
.feature-strip{margin-top:1.8rem;display:flex;flex-wrap:wrap;gap:.6rem;list-style:none;padding:0}
.fs-item{position:relative}
.fs-static,.fs-trigger{display:inline-flex;align-items:center;font-size:.84rem;font-weight:700;color:var(--muted);border:1px solid var(--hairline);border-radius:var(--r-pill);padding:7px 14px;background:transparent}
.fs-trigger{font-family:inherit;cursor:help;gap:.4em;transition:border-color .18s var(--ease),color .18s var(--ease)}
.fs-trigger::after{content:"?";display:inline-flex;align-items:center;justify-content:center;width:15px;height:15px;border-radius:50%;border:1px solid var(--muted);font-size:.68rem;font-weight:700;flex:none}
.fs-trigger:hover,.fs-trigger:focus-visible{border-color:var(--red);color:var(--ink)}
.fs-trigger:hover::after,.fs-trigger:focus-visible::after{border-color:var(--red);color:var(--red)}
.fs-tip{position:absolute;left:0;bottom:calc(100% + 10px);z-index:20;width:230px;max-width:60vw;background:var(--ink);color:#fff;font-size:.78rem;font-weight:400;line-height:1.4;letter-spacing:0;text-transform:none;border-radius:var(--r-sm);padding:.7rem .85rem;opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .18s var(--ease),transform .18s var(--ease),visibility .18s;pointer-events:none;box-shadow:var(--sh-lg)}
.fs-tip::after{content:"";position:absolute;top:100%;left:20px;border:6px solid transparent;border-top-color:var(--ink)}
.fs-item:hover .fs-tip,.fs-trigger:focus-visible+.fs-tip,.fs-item.is-open .fs-tip{opacity:1;visibility:visible;transform:translateY(0)}
.fs-item--logos{display:inline-flex;align-items:center;gap:.6rem;border:1px solid var(--hairline);border-radius:var(--r-pill);padding:5px 14px 5px 14px}
.fs-item--logos .fs-static{border:none;padding:0}
.fs-logos{display:inline-flex;align-items:center;gap:.5rem}
.fs-logos img{height:20px;width:auto;display:block;filter:grayscale(1);opacity:.85}
.fs-logo-text{font-size:.84rem;font-weight:700;color:var(--muted)}
.loesung-media{position:relative;border:1px solid var(--ink-line);border-radius:var(--r-md);overflow:hidden;box-shadow:var(--sh-lg);background:var(--ink);aspect-ratio:1200/760;min-height:460px}

/* ---------- Lösung: Live-Animation (Kanäle -> KI -> Handover), ersetzt Kurzvideo ---------- */
.loesung-anim{background:radial-gradient(120% 90% at 20% 0%, rgba(200,20,30,.12), rgba(0,0,0,0) 55%), var(--ink)}
.la-stage{position:absolute;inset:0}
.la-scene{position:absolute;inset:0;padding:clamp(1.2rem,2.4vw,2rem) clamp(1.3rem,2.8vw,2.4rem) clamp(3rem,6vw,3.6rem);display:flex;flex-direction:column;gap:.8rem;opacity:0;visibility:hidden;transition:opacity .5s var(--ease);pointer-events:none}
.la-scene.is-on{opacity:1;visibility:visible}
.la-head{flex:none}
.la-eyebrow{display:block;font-size:.68rem;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:#fff;margin-bottom:.3rem}
.la-head h4{color:#fff;font-size:clamp(1.05rem,.85rem + .8vw,1.4rem);font-weight:700;letter-spacing:-.01em;line-height:1.2}
.la-row{flex:1;display:flex;align-items:center;gap:clamp(.6rem,1.8vw,1.3rem);min-height:0}

.la-chgrid{flex:0 0 auto;display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}
.la-chip{width:clamp(34px,4.4vw,46px);height:clamp(34px,4.4vw,46px);border-radius:50%;background:var(--icbg,var(--red));display:grid;place-items:center;opacity:0;transform:scale(.6);transition:opacity .35s var(--ease),transform .35s var(--ease)}
.la-chip .ic{width:56%;height:56%;color:#fff}
.la-scene.is-on .la-chip{opacity:1;transform:scale(1)}
.la-scene.is-on .la-chip.la-r1,.la-scene.is-on .la-chip.la-r2{transition-delay:.08s}
.la-scene.is-on .la-chip.la-r3,.la-scene.is-on .la-chip.la-r4{transition-delay:.2s}
.la-scene.is-on .la-chip.la-r5,.la-scene.is-on .la-chip.la-r6{transition-delay:.32s}

.la-wire{flex:0 1 clamp(24px,4.4vw,58px);height:2px;position:relative;background:var(--ink-line);overflow:hidden}
.la-wire::after{content:"";position:absolute;inset:0;width:34%;background:linear-gradient(90deg,rgba(200,20,30,0),var(--red) 50%,rgba(200,20,30,0));animation:la-flow 2.4s linear infinite;animation-play-state:paused}
.la-wire--red{background:rgba(200,20,30,.35)}
.la-wire--red::after{background:linear-gradient(90deg,rgba(200,20,30,0),#fff 50%,rgba(200,20,30,0))}
.la-scene.is-on .la-wire::after{animation-play-state:running}
.la-wire-label{position:absolute;top:calc(100% + 6px);left:50%;transform:translateX(-50%);white-space:nowrap;font-size:.6rem;font-weight:700;letter-spacing:.03em;color:var(--red);background:var(--ink);padding:3px 9px;border:1px solid var(--red);border-radius:var(--r-pill);opacity:0;transition:opacity .4s var(--ease) .5s}
.la-scene.is-on .la-wire-label{opacity:1}
@keyframes la-flow{from{transform:translateX(-140%)}to{transform:translateX(340%)}}

.la-node{flex:0 0 auto;background:linear-gradient(180deg,#221012,#1a0c0e);border:2px solid var(--red);border-radius:var(--r-md);box-shadow:0 0 40px rgba(200,20,30,.22);padding:.7rem 1.1rem;display:flex;flex-direction:column;gap:.15rem;text-align:center;opacity:0;transform:scale(.85);transition:opacity .45s var(--ease) .1s,transform .45s var(--ease) .1s}
.la-scene.is-on .la-node{opacity:1;transform:scale(1)}
.la-node b{color:#fff;font-size:clamp(.92rem,.78rem + .5vw,1.1rem)}
.la-node span{color:var(--on-dark-mut);font-size:.74rem;font-weight:600}
.la-logo{height:clamp(20px,2.4vw,26px);width:auto;display:block;margin:0 auto}
.la-logo--sm{height:clamp(17px,2vw,21px)}
.la-node--sm{padding:.55rem .9rem}
.la-node--accent{flex-direction:row;align-items:center;gap:.5rem}
.la-node--accent .ic{width:20px;height:20px;color:var(--red)}

.la-ki{flex:1 1 auto;max-width:340px;background:linear-gradient(180deg,#221012,#180b0d);border:2px solid var(--red);border-radius:var(--r-md);box-shadow:0 0 50px rgba(200,20,30,.28);padding:.8rem 1rem;opacity:0;transform:scale(.9);transition:opacity .45s var(--ease) .15s,transform .45s var(--ease) .15s}
.la-scene.is-on .la-ki{opacity:1;transform:scale(1)}
.la-ki-top{display:flex;align-items:center;gap:.5rem;margin-bottom:.15rem}
.la-ki-top .ic{width:22px;height:22px;color:var(--red);flex:none}
.la-ki-top b{color:#fff;font-size:clamp(.98rem,.8rem + .6vw,1.2rem)}
.la-ki>span{color:var(--on-dark-mut);font-size:.76rem;font-weight:600}
.la-feeds{display:flex;gap:.4rem;margin-top:.7rem;flex-wrap:wrap}
.la-feed{font-size:.7rem;font-weight:700;color:#fff;background:rgba(255,255,255,.06);border:1px solid var(--ink-line);border-radius:var(--r-sm);padding:.35rem .6rem;opacity:0;transform:translateY(6px);transition:opacity .35s var(--ease),transform .35s var(--ease)}
.la-scene.is-on .la-feed{opacity:1;transform:translateY(0)}
.la-scene.is-on .la-feed.la-r4,.la-scene.is-on .la-feed.la-r5{transition-delay:.3s}
.la-scene.is-on .la-feed.la-r6{transition-delay:.4s}

.la-panel{flex:1 1 auto;max-width:360px;align-self:stretch;background:#1b1b1d;border:1px solid var(--ink-line);border-radius:var(--r-md);overflow:hidden;opacity:0;transform:translateX(10px);transition:opacity .45s var(--ease) .2s,transform .45s var(--ease) .2s;display:flex;flex-direction:column}
.la-scene.is-on .la-panel{opacity:1;transform:translateX(0)}
.la-panel-head{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem .5rem;font-size:.78rem;font-weight:700;color:#fff;background:#232326;padding:.6rem .8rem;flex:none}
.la-panel-head .ic{width:16px;height:16px;color:#fff;flex:none}
.la-panel-head--ok .ic{color:var(--green)}
.la-panel-title{white-space:nowrap}
.la-tag{white-space:nowrap;font-size:.64rem;font-weight:700;color:#fff;background:rgba(200,20,30,.4);padding:.2rem .5rem;border-radius:var(--r-pill)}
.la-tag--ok{color:#fff;background:rgba(25,135,84,.4)}
.la-msg{display:flex;flex-direction:column;gap:.1rem;padding:.6rem .8rem;border-top:1px solid var(--ink-line);opacity:0;transition:opacity .35s var(--ease)}
.la-scene.is-on .la-msg{opacity:1}
.la-scene.is-on .la-msg.la-r5,.la-scene.is-on .la-msg.la-r9{transition-delay:.4s}
.la-scene.is-on .la-msg.la-r6,.la-scene.is-on .la-msg.la-r10{transition-delay:.5s}
.la-scene.is-on .la-msg.la-r7,.la-scene.is-on .la-msg.la-r11{transition-delay:.6s}
.la-msg b{color:#fff;font-size:.78rem;font-weight:700}
.la-msg span{color:var(--on-dark-mut);font-size:.74rem}
.la-msg em{position:absolute;right:.8rem;font-style:normal;font-size:.66rem;font-weight:700;color:var(--green)}
.la-msg{position:relative}

.la-card{flex:1 1 auto;max-width:360px;background:#1b1b1d;border:2px solid rgba(255,255,255,.16);border-radius:var(--r-md);padding:.85rem 1.1rem;display:flex;flex-direction:column;gap:.4rem;opacity:0;transform:translateY(-10px);transition:opacity .4s var(--ease) .1s,transform .4s var(--ease) .1s}
.la-scene.is-on .la-card{opacity:1;transform:translateY(0);border-color:var(--red);box-shadow:0 0 30px rgba(200,20,30,.18)}
.la-card-head{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem}
.la-card-head b{color:#fff;font-size:.84rem}
.la-flag{display:inline-flex;align-items:center;gap:.3rem;font-size:.66rem;font-weight:700;color:#fff;background:rgba(200,20,30,.4);padding:.25rem .5rem;border-radius:var(--r-pill);opacity:0;white-space:nowrap;transition:opacity .35s var(--ease) .35s}
.la-flag .ic{width:12px;height:12px}
.la-scene.is-on .la-flag{opacity:1}
.la-card-sub{color:#fff;font-size:.86rem}
.la-card-text{color:var(--on-dark-mut);font-size:.76rem;line-height:1.45}

.la-team{flex:1 1 auto;max-width:340px;align-self:stretch;background:#1b1b1d;border:1px solid var(--ink-line);border-radius:var(--r-md);padding:.85rem 1rem;display:flex;flex-direction:column;gap:.6rem;opacity:0;transform:translateY(12px);transition:opacity .4s var(--ease) .4s,transform .4s var(--ease) .4s}
.la-scene.is-on .la-team{opacity:1;transform:translateY(0)}
.la-team-head{display:flex;align-items:center;gap:.4rem}
.la-team-head .ic{width:16px;height:16px;color:#fff}
.la-team-head b{color:#fff;font-size:.84rem}
.la-avatars{display:flex;gap:.5rem;justify-content:center}
.la-av{width:clamp(28px,3.4vw,36px);height:clamp(28px,3.4vw,36px);border-radius:50%;background:#232326;border:1px solid var(--ink-line);color:#fff;font-size:.68rem;font-weight:700;display:grid;place-items:center;opacity:0;transform:scale(.6);transition:opacity .35s var(--ease),transform .35s var(--ease)}
.la-scene.is-on .la-av{opacity:1;transform:scale(1)}
.la-scene.is-on .la-av.la-r7,.la-scene.is-on .la-av.la-r8{transition-delay:.5s}
.la-scene.is-on .la-av.la-r9{transition-delay:.6s}
.la-team-note{display:flex;align-items:center;gap:.4rem;font-size:.72rem;font-weight:600;color:#fff;background:rgba(255,255,255,.05);border-radius:var(--r-sm);padding:.5rem .65rem;opacity:0;transition:opacity .35s var(--ease) .7s}
.la-team-note .ic{width:14px;height:14px;color:var(--green);flex:none}
.la-scene.is-on .la-team-note{opacity:1}

/* ---------- Lösung-Animation: manuelle Schritt-Steuerung ---------- */
.la-controls{position:absolute;left:0;right:0;bottom:0;z-index:2;display:flex;align-items:center;justify-content:center;gap:.55rem;padding:.7rem 0 .85rem;background:linear-gradient(0deg,rgba(0,0,0,.55),rgba(0,0,0,0))}
.la-dot{position:relative;width:32px;height:32px;border-radius:50%;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.06);color:var(--on-dark-mut);font-family:inherit;font-size:.76rem;font-weight:700;display:grid;place-items:center;cursor:pointer;transition:border-color .2s var(--ease),color .2s var(--ease),background .2s var(--ease)}
.la-dot span{position:relative;z-index:1}
.la-dot:hover{border-color:rgba(255,255,255,.55);color:#fff}
.la-dot:focus-visible{outline:2px solid var(--red);outline-offset:2px}
.la-dot.is-on{border-color:var(--red);color:#fff;background:rgba(200,20,30,.22)}
.la-progress{position:absolute;left:clamp(1.1rem,3vw,2rem);right:clamp(1.1rem,3vw,2rem);bottom:0;height:2px;background:rgba(255,255,255,.12);overflow:hidden}
.la-progress-bar{display:block;height:100%;width:0;background:var(--red)}
.la-controls[data-paused="true"] .la-dot.is-on{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.55)}
.la-controls[data-paused="true"] .la-dot.is-on::after{content:"";position:absolute;inset:0;border-radius:50%;box-shadow:0 0 0 1px rgba(255,255,255,.35) inset}

@media (prefers-reduced-motion: reduce){
  .la-scene{transition:none}
  .la-scene.is-on .la-chip,.la-scene.is-on .la-node,.la-scene.is-on .la-ki,.la-scene.is-on .la-feed,.la-scene.is-on .la-panel,.la-scene.is-on .la-msg,.la-scene.is-on .la-card,.la-scene.is-on .la-flag,.la-scene.is-on .la-team,.la-scene.is-on .la-av,.la-scene.is-on .la-team-note,.la-scene.is-on .la-wire-label{transition:none;transition-delay:0s;opacity:1;transform:none}
  .la-wire::after{animation:none;display:none}
  .la-progress-bar{transition:none!important}
}
@media (max-width:640px){
  /* Feste Breite/Höhe statt Landscape-Aspect-Ratio: gestapelter Inhalt braucht mehr Höhe als das Video-Seitenverhältnis */
  .loesung-media{aspect-ratio:auto;height:clamp(640px,178vw,740px)}
  .la-controls{padding:.6rem 0 .7rem}
  .la-dot{width:28px;height:28px;font-size:.7rem}
  .la-scene{overflow-y:auto;-webkit-overflow-scrolling:touch}
  .la-row{flex-direction:column;align-items:center;justify-content:flex-start;gap:.45rem;width:100%}
  .la-chgrid{width:100%;max-width:230px;justify-items:center}
  .la-node,.la-ki{width:100%;max-width:320px}
  .la-panel,.la-card,.la-team{width:100%;max-width:400px}
  .la-wire{width:2px;height:clamp(16px,5vw,26px);flex:0 0 auto}
  .la-wire::after{left:calc(50% - 1px);right:auto;width:2px;height:34%;background:linear-gradient(180deg,rgba(200,20,30,0),var(--red) 50%,rgba(200,20,30,0));animation-name:la-flow-v}
  @keyframes la-flow-v{from{transform:translateY(-140%)}to{transform:translateY(340%)}}
  .la-wire--red{width:220px;max-width:80vw;height:auto;min-height:44px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.3rem}
  .la-wire-label{position:static;display:block;transform:none;white-space:normal;text-align:center;margin:0}
}

/* ---------- Nutzen (5 Kacheln) ---------- */
.nutzen-grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:clamp(1.1rem, 2vw, 1.6rem)}
.nutzen-card{border:1px solid var(--hairline);border-radius:var(--r-md);padding:clamp(1.4rem, 2.4vw, 1.9rem);background:var(--white);transition:transform .25s var(--ease),box-shadow .25s var(--ease),border-color .25s var(--ease)}
.nutzen-card:hover{transform:translateY(-4px);box-shadow:var(--sh-md);border-color:#cfd4d9}
.nutzen-card .n-ic{width:44px;height:44px;border-radius:var(--r-sm);background:var(--paper);border:1px solid var(--hairline);display:grid;place-items:center;margin-bottom:1rem}
.nutzen-card .n-ic svg{width:22px;height:22px;color:var(--red)}
.nutzen-card h3{font-size:1.1rem}
.nutzen-card p{margin-top:.6rem;color:var(--muted);font-size:.95rem}

/* ---------- Nutzen-Visuals (nv) ---------- */
.nv{border:1px solid var(--hairline);border-radius:var(--r-sm);background:var(--paper);margin-bottom:1.1rem;overflow:hidden}
.nv-flow{display:flex;align-items:flex-start;justify-content:space-between;gap:.3rem;padding:1rem .8rem}
.nv-node{display:flex;flex-direction:column;align-items:center;gap:.45rem;flex:1;min-width:0}
.nv-ic{width:38px;height:38px;border-radius:50%;background:var(--white);border:1px solid var(--hairline);display:grid;place-items:center;color:var(--muted);flex:none}
.nv-ic svg{width:18px;height:18px}
.nv-node--done .nv-ic{background:var(--red);border-color:var(--red);color:#fff}
.nv-label{font-size:.7rem;font-weight:600;color:var(--muted);text-align:center;line-height:1.25}
.nv-node--done .nv-label{color:var(--text)}
.nv-arrow{color:#c7ccd1;flex:none;margin-top:9px}
.nv-arrow svg{width:14px;height:14px}

.nv-photo{position:relative;aspect-ratio:16/10}
.nv-photo img{width:100%;height:100%;object-fit:cover;object-position:top}
.nv-photo-tag{position:absolute;left:.7rem;bottom:.7rem;background:rgba(18,18,18,.74);color:#fff;font-size:.7rem;font-weight:600;padding:.4em .75em;border-radius:var(--r-pill)}
.nv-photo--square{aspect-ratio:1/1}
.nv-photo--auto{aspect-ratio:auto}
.nv-photo--auto img{height:auto;object-fit:contain}

.nv-split{display:grid;grid-template-columns:1fr 1fr;gap:0;padding:1rem .9rem}
.nv-split-col+.nv-split-col{border-left:1px solid var(--hairline);padding-left:.9rem;margin-left:-.1rem}
.nv-split-label{display:block;font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:.5rem}
.nv-chaos{position:relative;height:66px}
.nv-chip{position:absolute;display:inline-flex;align-items:center;gap:.32em;font-size:.66rem;font-weight:600;padding:.32em .55em;border-radius:var(--r-pill);background:var(--white);border:1px solid var(--hairline);color:var(--muted);white-space:nowrap}
.nv-chip svg{width:11px;height:11px;flex:none}
.nv-clean{display:flex;flex-direction:column;gap:.5rem;justify-content:center;height:66px}
.nv-status{display:flex;align-items:center;gap:.55em;font-size:.72rem;font-weight:600;color:var(--text)}
.nv-dot{width:7px;height:7px;border-radius:50%;flex:none}
.nv-dot--ok{background:var(--green)}
.nv-dot--lead{background:var(--red)}

.nv-kb{display:flex;flex-direction:column;gap:1px;padding:6px;background:var(--hairline)}
.nv-kb-row{display:flex;align-items:center;gap:.55em;font-size:.76rem;font-weight:600;padding:.6em .7em;background:var(--white);color:var(--text)}
.nv-kb-row svg{width:15px;height:15px;color:var(--muted);flex:none}
.nv-kb-row--handover{background:var(--ink);color:#fff}
.nv-kb-row--handover svg{color:var(--red)}

/* ---------- Ansprechpartnerin ---------- */
.person-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(2rem, 4vw, 4rem);align-items:center}
.person-photo{border:1px solid var(--hairline);border-radius:var(--r-md);overflow:hidden;background:var(--paper);aspect-ratio:4/5;display:grid;place-items:center;box-shadow:var(--sh-md)}
.person-photo img{width:100%;height:100%;object-fit:cover}
.person-photo .ph-fallback{text-align:center;color:var(--muted);padding:2rem}
.person-photo .ph-fallback b{display:block;font-size:2.6rem;color:var(--ink);font-weight:700;letter-spacing:-.02em;line-height:1}
.person-photo .ph-fallback span{display:block;margin-top:.6rem;font-size:.85rem}
.person-cta{margin-top:1.6rem;display:flex;flex-wrap:wrap;gap:1rem}

/* ---------- Preislogik-Ergänzungen ---------- */
.price-model{margin-top:.55rem;font-size:clamp(1.2rem, 1rem + .7vw, 1.5rem)}
.guarantee{max-width:760px;margin:clamp(1.8rem, 3vw, 2.6rem) auto 0;text-align:center}
.guarantee-badge{display:inline-flex;align-items:center;gap:.55em;font-weight:700;font-size:.82rem;letter-spacing:.06em;text-transform:uppercase;color:var(--red)}
.guarantee-badge svg{width:18px;height:18px;color:var(--red)}
.guarantee p{margin-top:1rem;color:var(--muted);font-size:.95rem}
.risk-badge{display:flex;align-items:flex-start;gap:1rem;max-width:780px;margin:clamp(1.8rem, 3vw, 2.6rem) auto 0;background:rgba(200,20,30,.06);border:1px solid rgba(200,20,30,.28);border-radius:var(--r-lg);padding:1.2rem 1.5rem}
.risk-ic{flex:0 0 auto;width:34px;height:34px;border-radius:50%;background:var(--red);color:#fff;display:grid;place-items:center}
.risk-ic svg{width:18px;height:18px}
.risk-badge strong{color:var(--ink)}
.risk-sub{display:block;color:var(--muted);font-size:.9rem;margin-top:.35rem;line-height:1.5}
.price-cta{margin-top:clamp(1.8rem, 3vw, 2.4rem);text-align:center}
.steps--cards{display:grid;grid-template-columns:repeat(3, 1fr);gap:clamp(1.1rem, 2vw, 1.8rem)}
.steps--cards::before{display:none}
.steps--cards .step{display:block;background:var(--white);border:1px solid var(--hairline);border-radius:var(--r-lg);padding:clamp(1.4rem, 2.4vw, 1.8rem);box-shadow:0 10px 24px rgba(18,18,18,.05)}
.steps--cards .step-num{width:42px;height:42px;border-radius:50%;background:var(--white);border:1px solid var(--hairline);display:grid;place-items:center;font-weight:700;font-size:1.05rem;color:var(--ink);margin-bottom:1rem;font-variant-numeric:tabular-nums}
.steps--cards .step h3{font-size:1.15rem;margin-bottom:.4rem}
.steps--cards .step p{color:var(--muted);font-size:.96rem;line-height:1.55}
@media(max-width:820px){.steps--cards{grid-template-columns:1fr}}

/* ---------- FAQ (interaktiv: Frage-Buttons + Chat) ---------- */
.faq-live{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(1.5rem, 3vw, 2.6rem);align-items:start;max-width:1080px;margin-inline:auto}
.faq-qs{display:grid;gap:10px}
.faq-qbtn{display:flex;align-items:center;justify-content:space-between;gap:1em;text-align:left;padding:14px 18px;border:1px solid var(--hairline);border-radius:var(--r-md);background:var(--white);font-weight:700;font-size:.98rem;color:var(--ink);transition:border-color .18s var(--ease),background .18s var(--ease),transform .18s var(--ease)}
.faq-qbtn svg{width:16px;height:16px;color:var(--red);flex:none;transition:transform .2s var(--ease)}
.faq-qbtn:hover{border-color:var(--red);transform:translateX(3px)}
.faq-qbtn:hover svg{transform:translateX(3px)}
.faq-qbtn:disabled{cursor:default}
.faq-qbtn.is-asked{background:var(--paper);color:var(--muted)}
.faq-qbtn.is-asked svg{color:var(--muted)}
.faq-chat{margin-left:0;max-width:none;box-shadow:var(--sh-md);border:1px solid var(--hairline)}
.faq-chat .chat-body{min-height:300px;max-height:440px;overflow-y:auto}
.faq-cta{margin-top:clamp(1.8rem, 3vw, 2.6rem);text-align:center}
@media(max-width:900px){.faq-live{grid-template-columns:1fr}}

/* ---------- ezyaa Technologie-Hinweis ---------- */
.tech-note{border-top:1px solid var(--ink-line);padding-block:clamp(1.4rem, 2.5vw, 2rem);text-align:center;color:var(--on-dark-mut);font-size:.92rem}
.tech-note b{color:#fff}

@media(max-width:1080px){
  .loesung-grid,.person-grid,.problem-grid{grid-template-columns:1fr;gap:2.2rem}
  .nutzen-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
  .nutzen-grid{grid-template-columns:1fr}
  .faq-q,.faq-a{max-width:100%}
}

/* ---------- Hero-WOW: Kanal-Reihe + Blur-Clear-Headline + atmende Aura (Deck-Intro portiert) ---------- */
.hero-channels{display:flex;align-items:center;gap:13px;margin-top:1.7rem;flex-wrap:wrap}
.hero-channels .hc-lab{font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--on-dark-mut);margin-right:.2rem}
.hc-ch{width:46px;height:46px;flex:none;border-radius:50%;box-shadow:0 6px 18px rgba(0,0,0,.4)}
html.js .hc-ch{animation:chPop .6s var(--ease) both;animation-delay:calc(var(--i) * .09s + .55s)}
.hc-ch.repop{animation:chPop .55s var(--ease) both;animation-delay:calc(var(--i) * .06s)}
@keyframes chPop{0%{opacity:0;transform:scale(.5) translateY(12px);filter:blur(6px)}65%{opacity:1;transform:scale(1.08) translateY(-2px);filter:blur(0)}100%{opacity:1;transform:scale(1) translateY(0);filter:blur(0)}}
html.js .hero-copy h1.reveal{transform:none;transition:none}
html.js .hero-copy h1.reveal.in{animation:introHeadIn .95s var(--ease) both}
@keyframes introHeadIn{0%{opacity:0;transform:translateY(28px);filter:blur(10px)}60%{opacity:1;transform:translateY(-3px);filter:blur(0)}100%{opacity:1;transform:translateY(0);filter:blur(0)}}
.stage::before{content:"";position:absolute;inset:-14% -10% -18%;z-index:0;border-radius:46px;background:radial-gradient(58% 58% at 50% 44%, rgba(200,20,30,.34), transparent 70%);filter:blur(32px);animation:heroGlow 6.5s ease-in-out infinite;pointer-events:none}
.stage .chat,.stage .ch-switch,.stage .stage-meta{position:relative;z-index:1}
@keyframes heroGlow{0%,100%{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}

/* ---------- HBR-Speed-Bars (Deck-Studienbeleg, barGrow) ---------- */
.speed-bars{max-width:520px;margin:1.7rem auto .4rem;display:grid;gap:11px}
.sbar{display:grid;grid-template-columns:96px 1fr 3.2em;align-items:center;gap:12px;font-size:.9rem}
.sbar-label{color:var(--on-dark-mut);font-weight:700;text-align:left}
.sbar--hot .sbar-label{color:#fff}
.sbar-track{height:12px;border-radius:var(--r-pill);background:var(--ink-soft);border:1px solid var(--ink-line);overflow:hidden}
.sbar-fill{display:block;height:100%;width:calc(var(--v) * 1%);border-radius:var(--r-pill);background:rgba(255,255,255,.5);transform:scaleX(1);transform-origin:left center}
.sbar--hot .sbar-fill{background:var(--red)}
.sbar-val{color:#fff;font-weight:700;font-variant-numeric:tabular-nums;text-align:right}
.sbar--hot .sbar-val{color:var(--red)}
/* Balken wachsen per JS-IntersectionObserver (inline scaleX + Basis-Transition), robust gegen den var-in-transition-Shorthand-Bug */
.speed-src2{margin-top:.9rem;font-size:.78rem;color:var(--on-dark-mut);text-align:center}

/* ---------- Ablauf: selbstzeichnende Spine + poppende Schritt-Nummern (Deck rmLineDraw/checkPop) ---------- */
.steps{position:relative}
html.js .steps.reveal{opacity:1;transform:none;transition:none}
.steps::before{content:"";position:absolute;left:27px;top:34px;bottom:48px;width:2px;background:linear-gradient(180deg, var(--red), var(--hairline));transform:scaleY(0);transform-origin:top}
html.js .steps.reveal.in::before{animation:spineDraw 1.5s var(--ease) .25s both}
@keyframes spineDraw{to{transform:scaleY(1)}}
.step-num{position:relative;z-index:1}
html.js .step.reveal.in .step-num{animation:numPop .55s var(--ease) both;animation-delay:.12s}
@keyframes numPop{0%{transform:scale(0)}68%{transform:scale(1.16)}100%{transform:scale(1)}}

/* ---------- Reduced Motion (voller Off-Switch) ---------- */
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  .sbar-fill{transform:scaleX(1)!important;transition:none!important}
  html.js .steps.reveal.in::before{transform:scaleY(1)!important;animation:none!important}
  html.js .step.reveal.in .step-num{animation:none!important;transform:none!important}
  html.js .hc-ch{opacity:1!important;animation:none!important}
  html.js .hero-copy h1.reveal.in{animation:none!important;opacity:1!important}
  .stage::before{animation:none!important;opacity:.6!important}
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
  html.js .reveal{opacity:1!important;transform:none!important}
  html.js .chat-play .msg{opacity:1!important;transform:none!important}
  html.js .statbar--pop.reveal .stat{opacity:1!important;transform:none!important}
  .typing{display:none!important}
  .logo-track{animation:none!important}
}

/* ============================================================
   Unterseiten-Ergänzungen (Shell wie Startseite)
   ============================================================ */

/* ---------- Seitenkopf (dunkles Intro-Band) ---------- */
.page-head{background:var(--ink);color:#fff;position:relative;overflow:hidden}
.page-head::before{content:"";position:absolute;inset:0;background:radial-gradient(55% 70% at 80% 10%, rgba(200,20,30,.14), transparent 62%);pointer-events:none}
.page-head .wrap{padding-block:clamp(2.8rem, 5vw, 4.4rem)}
.page-head h1{color:#fff;margin-top:.9rem;max-width:24ch}
.page-head .lead{margin-top:1rem;color:var(--on-dark-mut)}

/* ---------- Seitenkopf, helle + zentrierte Variante ---------- */
.page-head--light{background:var(--white);color:var(--text)}
.page-head--light::before{background:radial-gradient(55% 70% at 80% 10%, rgba(200,20,30,.08), transparent 62%)}
.page-head--light h1{color:var(--ink)}
.page-head--light .lead{color:var(--muted)}
.page-head--center .wrap{text-align:center}
.page-head--center h1{margin-inline:auto}
.page-head--center .lead{margin-inline:auto}

/* ---------- Seitenkopf, Split-Variante mit Bild ---------- */
.page-head-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(2rem, 4vw, 4rem);align-items:center}
.page-head-media{border-radius:var(--r-md);overflow:hidden;align-self:stretch}
.page-head-media img{display:block;width:100%;height:100%;min-height:clamp(320px, 42vw, 560px);object-fit:cover}
@media (max-width: 860px){
  .page-head-grid{grid-template-columns:1fr}
  .page-head-media{order:-1}
  .page-head-media img{min-height:280px}
}

/* ---------- Reporting: Beispiel-Dashboard (statischer Screen-Mock, keine Live-Daten) ---------- */
.dash-mock{width:100%;height:100%;min-height:clamp(320px, 42vw, 560px);display:flex;flex-direction:column;background:var(--white);border:1px solid var(--hairline);box-shadow:var(--sh-lg)}
.dash-mock__top{display:flex;align-items:center;gap:clamp(.8rem, 1.5vw, 1.6rem);padding:.85rem clamp(.9rem, 1.6vw, 1.4rem);border-bottom:1px solid var(--hairline);background:var(--white);flex:none}
.dash-mock__dots{display:flex;gap:5px}
.dash-mock__dots span{width:8px;height:8px;border-radius:50%;background:var(--hairline)}
.dash-mock__title{font-size:.8rem;font-weight:700;color:var(--ink);letter-spacing:-.01em}
.dash-mock__tabs{display:flex;gap:2px;margin-left:auto;background:var(--paper);border:1px solid var(--hairline);border-radius:var(--r-sm);padding:3px}
.dash-mock__tabs span{padding:5px 11px;border-radius:0;font-size:.72rem;font-weight:600;color:var(--muted)}
.dash-mock__tabs span.is-active{color:var(--ink);background:var(--white);box-shadow:0 1px 2px rgba(18,18,18,.12)}
.dash-mock__body{flex:1;padding:clamp(1rem, 2vw, 1.6rem);display:flex;flex-direction:column;gap:clamp(.8rem, 1.6vw, 1.3rem);background:var(--paper);overflow:hidden}
.dash-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:.7rem}
.dash-kpi{background:var(--white);border:1px solid var(--hairline);border-radius:var(--r-sm);padding:.8rem .9rem;display:flex;flex-direction:column;gap:.3rem}
.dash-kpi__lab{font-size:.68rem;color:var(--muted)}
.dash-kpi b{font-size:clamp(1.15rem, .9rem + .8vw, 1.6rem);font-weight:800;letter-spacing:-.02em;line-height:1;font-variant-numeric:tabular-nums}
.dash-kpi__sub{font-size:.66rem;color:var(--muted)}
.dash-row{flex:1;display:grid;grid-template-columns:1.7fr 1fr;gap:.7rem;min-height:0}
.dash-chart{background:var(--white);border:1px solid var(--hairline);border-radius:var(--r-sm);padding:.9rem 1rem;display:flex;flex-direction:column;min-height:0}
.dash-chart__head{display:flex;justify-content:space-between;align-items:baseline;gap:.5rem}
.dash-chart__head b{font-size:.86rem}
.dash-chart__head span{font-size:.68rem;color:var(--muted)}
.dash-chart__bars{flex:1;display:flex;align-items:flex-end;gap:3px;margin-top:.6rem;min-height:40px;border-bottom:1px solid var(--hairline)}
.dash-bar{flex:1;display:flex;flex-direction:column;justify-content:flex-end;height:100%;gap:1px}
.dash-bar i{display:block;width:100%;border-radius:0}
.dash-bar .b-main{background:var(--red)}
.dash-bar .b-other{background:#cbd5e1}
.dash-chart__legend{display:flex;gap:.9rem;margin-top:.55rem;font-size:.68rem;color:var(--muted)}
.dash-chart__legend span{display:flex;align-items:center;gap:.4em}
.dash-chart__legend i{width:8px;height:8px;border-radius:0;flex:none}
.dash-chart__legend .b-main{background:var(--red)}
.dash-chart__legend .b-other{background:#cbd5e1}
.dash-side{display:flex;flex-direction:column;gap:.7rem;min-height:0}
.dash-ring{background:var(--white);border:1px solid var(--hairline);border-radius:var(--r-sm);padding:.9rem;text-align:center;display:flex;flex-direction:column;justify-content:center;gap:.15rem}
.dash-ring__cap{font-size:.68rem;color:var(--muted)}
.dash-ring__num{font-size:clamp(1.5rem, 1.1rem + 1.4vw, 2.2rem);font-weight:800;color:var(--green);letter-spacing:-.02em;line-height:1;font-variant-numeric:tabular-nums;margin:.15rem 0}
.dash-ring__lab{font-size:.68rem;color:var(--muted)}
.dash-channels{flex:1;background:var(--white);border:1px solid var(--hairline);border-radius:var(--r-sm);padding:.85rem .9rem;display:flex;flex-direction:column;gap:.5rem}
.dash-channels__head{display:flex;flex-direction:column;gap:.1rem;margin-bottom:.15rem}
.dash-channels__head b{font-size:.82rem}
.dash-channels__head span{font-size:.66rem;color:var(--muted)}
.dash-channels div:not(.dash-channels__head){display:grid;grid-template-columns:50px 1fr auto;align-items:center;gap:.5rem;font-size:.68rem;color:var(--ink)}
.dash-channels__bar{height:5px;background:var(--hairline);border-radius:0;overflow:hidden}
.dash-channels__bar i{display:block;height:100%;background:var(--red);border-radius:0}
.dash-card-head{display:flex;flex-direction:column;gap:.15rem;margin-bottom:.75rem}
.dash-card-head b{font-size:.86rem}
.dash-card-head span{font-size:.66rem;color:var(--muted)}
.dash-grid2{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}
.dash-skills{background:var(--white);border:1px solid var(--hairline);border-radius:var(--r-sm);padding:.9rem 1rem}
.dash-skill-row{display:grid;grid-template-columns:132px 1fr auto;align-items:center;gap:.6rem;font-size:.7rem;color:var(--ink);margin-bottom:.55rem}
.dash-skill-row:last-child{margin-bottom:0}
.dash-skill-bar{height:6px;background:var(--hairline);border-radius:0;overflow:hidden}
.dash-skill-bar i{display:block;height:100%;background:var(--red);border-radius:0}
.dash-erfolge{position:relative;background:var(--white);border:1px solid var(--hairline);border-radius:var(--r-sm);padding:.9rem 1rem}
.dash-erfolge__ic{position:absolute;top:.85rem;right:.9rem;width:26px;height:26px;border-radius:0;background:var(--paper);border:1px solid var(--hairline);display:flex;align-items:center;justify-content:center;color:var(--red)}
.dash-erfolge__ic svg{width:13px;height:13px}
.dash-erfolge__num{font-size:clamp(1.5rem, 1rem + 1.6vw, 2rem);font-weight:800;letter-spacing:-.02em;line-height:1;font-variant-numeric:tabular-nums;margin-top:.3rem}
.dash-erfolge__lab{font-size:.66rem;color:var(--muted);margin-top:.15rem;margin-bottom:.7rem}
.dash-erfolge__list{display:flex;flex-direction:column;gap:.4rem}
.dash-erfolge__list div{display:flex;align-items:center;gap:.5rem;background:var(--paper);border:1px solid var(--hairline);border-radius:0;padding:.42rem .6rem;font-size:.7rem}
.dash-erfolge__list svg{width:13px;height:13px;color:var(--green);flex:none}
.dash-erfolge__list span{flex:1;color:var(--ink)}
.dash-erfolge__list b{font-size:.72rem}
.dash-mock__badge{flex:none;font-size:.66rem;color:var(--muted);padding:.5rem clamp(.9rem, 1.6vw, 1.4rem);border-top:1px solid var(--hairline);background:var(--white)}
@media (max-width: 1180px){
  .dash-kpis{grid-template-columns:repeat(2,1fr)}
  .dash-row{grid-template-columns:1fr}
  .dash-grid2{grid-template-columns:1fr}
}
@media (max-width: 860px){
  .dash-mock{min-height:280px}
  .dash-mock__tabs span:first-child{display:none}
}

/* ---------- Team-KI: Beispiel-Ansicht SharePoint-Quellen (statischer Screen-Mock) ---------- */
.sp-mock__title{display:flex;align-items:center;gap:.5rem;font-weight:700;font-size:.86rem;color:var(--ink);white-space:nowrap}
.sp-mock__title b{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:18px;padding:0 6px;background:var(--paper);color:var(--muted);border-radius:0;font-size:.7rem;font-weight:700}
.sp-mock__body{gap:.6rem}
.sp-row{display:flex;align-items:center;gap:.9rem;background:var(--white);border:1px solid var(--hairline);border-radius:var(--r-sm);padding:.75rem .9rem}
.sp-row__ic{flex:none;width:32px;height:32px;border-radius:0;background:var(--paper);display:flex;align-items:center;justify-content:center;color:var(--muted)}
.sp-row__ic svg{width:16px;height:16px}
.sp-row__main{flex:1;min-width:0}
.sp-row__name{display:flex;align-items:center;gap:.5rem;font-weight:700;font-size:.86rem;color:var(--ink)}
.sp-row__name b{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:17px;padding:0 5px;background:var(--paper);color:var(--muted);border-radius:0;font-size:.65rem;font-weight:700}
.sp-row__meta{font-size:.72rem;color:var(--muted);margin-top:.15rem}
.sp-row__status{flex:none;display:flex;align-items:center;gap:1rem}
.sp-row__ok{display:inline-flex;align-items:center;gap:.4em;font-size:.72rem;font-weight:700;color:var(--green)}
.sp-row__ok i{width:7px;height:7px;border-radius:50%;background:var(--green);display:inline-block}
.sp-row__act{color:var(--muted);flex:none}
.sp-row__act svg{width:15px;height:15px;display:block}
@media (max-width: 640px){
  .sp-row__meta{display:none}
}

/* ---------- Rechtstexte ---------- */
.legal{max-width:860px}
.legal h2{font-size:1.22rem;margin-top:2.2rem}
.legal p{margin-top:.9rem}
.legal ul{margin-top:.9rem;display:grid;gap:.45rem;padding-left:1.2em;list-style:disc}
.legal a{color:var(--red);font-weight:500}

/* ---------- Lead-Formular (dunkel, Kontakt + Closer) ---------- */
.lead-form{background:var(--ink-soft);border:1px solid var(--ink-line);border-radius:var(--r-lg);padding:clamp(1.5rem, 2.6vw, 2.2rem);box-shadow:var(--sh-lg);position:relative}
.lf-fields{display:grid;gap:1rem}
.lf-field span{display:block;font-size:.88rem;font-weight:700;color:#fff;margin-bottom:.4rem}
.lf-field input{width:100%;background:rgba(255,255,255,.06);border:1px solid var(--ink-line);border-radius:var(--r-sm);padding:12px 14px;color:#fff;font:inherit;transition:border-color .18s var(--ease)}
.lf-field input::placeholder{color:rgba(255,255,255,.35)}
.lf-field input:focus{outline:none;border-color:rgba(255,255,255,.55)}
.lf-field input[aria-invalid="true"]{border-color:var(--red)}
.lf-req{color:var(--red);font-style:normal}
.lf-hp{position:absolute!important;left:-9999px;top:-9999px;height:1px;width:1px;overflow:hidden}
.lf-consent{display:flex;gap:.6em;align-items:flex-start;margin-top:1.2rem;font-size:.85rem;color:var(--on-dark-mut)}
.lf-consent input{margin-top:.25em;accent-color:var(--red);flex:none}
.lf-consent a{color:#fff;text-decoration:underline;text-underline-offset:2px}
.lf-reqnote{margin-top:.7rem;font-size:.78rem;color:var(--on-dark-mut)}
.btn-block{width:100%;margin-top:1.2rem}
.lf-success{margin-top:1rem;font-size:.95rem;color:#7ee2a8}
.lf-success.is-error{color:#ffb3b8}

/* ---------- Kontakt-Seite ---------- */
.kontakt-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(2rem, 4vw, 4.5rem);align-items:start}
.closer-person{display:flex;flex-direction:column;gap:1rem}
.closer-photo{width:120px;height:120px;border-radius:50%;object-fit:cover;border:3px solid rgba(255,255,255,.16);box-shadow:var(--sh-md)}
.closer-meta{display:flex;flex-direction:column;gap:.25rem}
.closer-meta strong{font-size:1.15rem;color:#fff}
.closer-meta span{color:var(--on-dark-mut);font-size:.92rem}
.closer-trust{color:var(--on-dark-mut)!important;font-size:.85rem;letter-spacing:.02em}
.closer-ways{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.8rem;
  margin-top:clamp(1.8rem,3vw,2.4rem);padding-top:clamp(1.6rem,3vw,2rem);border-top:1px solid var(--ink-line)}
.closer-ways-lead{color:var(--on-dark-mut);font-size:.95rem;margin-right:.4rem}
@media(max-width:1080px){.kontakt-grid{grid-template-columns:1fr;gap:2.4rem}.closer-person{align-items:center;text-align:center}}

/* ---------- FAQ-Akkordeon ---------- */
.acc-group{max-width:900px;margin-inline:auto}
.acc-group + .acc-group{margin-top:clamp(2.2rem, 4vw, 3.2rem)}
.acc-group h2{font-size:clamp(1.25rem, 1.1rem + .6vw, 1.55rem);margin-bottom:1.1rem}
.acc{display:grid;gap:10px}
.acc details{border:1px solid var(--hairline);border-radius:var(--r-md);background:var(--white)}
.acc summary{display:flex;justify-content:space-between;gap:1em;align-items:center;padding:16px 20px;font-weight:700;cursor:pointer;list-style:none;color:var(--ink)}
.acc summary::-webkit-details-marker{display:none}
.acc summary::after{content:"+";font-size:1.35rem;color:var(--red);font-weight:700;line-height:1;transition:transform .2s var(--ease);flex:none}
.acc details[open] summary::after{transform:rotate(45deg)}
.acc .acc-body{padding:0 20px 18px;color:var(--muted)}
.acc .acc-body a{color:var(--red);font-weight:500}

/* ---------- FAQ (flache Liste + Sofortsuche, Aufbau wie igroupTV) ---------- */
.faq-list{max-width:820px;margin:clamp(2rem,4vw,3rem) auto 0}
.faq-item{background:var(--white);border:1px solid var(--hairline);border-radius:var(--r-md);margin-bottom:.7rem}
.faq-item summary{list-style:none;cursor:pointer;padding:1.1rem 1.3rem;font-weight:700;
  font-size:1.05rem;color:var(--ink);display:flex;align-items:center;justify-content:space-between;gap:1rem}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"";width:10px;height:10px;flex:0 0 auto;border-right:2px solid var(--muted);
  border-bottom:2px solid var(--muted);transform:rotate(45deg);transition:transform .2s var(--ease);margin-top:-4px}
.faq-item[open] summary{color:var(--red)}
.faq-item[open] summary::after{transform:rotate(-135deg);margin-top:3px;border-color:var(--red)}
.faq-a{padding:0 1.3rem 1.2rem}
.faq-a p{color:var(--muted);line-height:1.6;font-size:.98rem}
.faq-a a{color:var(--red);font-weight:500;text-decoration:underline;text-underline-offset:2px}
.faq-foot{text-align:center;margin-top:clamp(1.8rem,3vw,2.4rem);display:flex;flex-direction:column;align-items:center;gap:1rem}
.faq-foot>span{font-weight:700;color:var(--ink);font-size:1.1rem}
.faq-foot-ways{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.8rem}
.faq-tel{color:var(--muted);font-size:.95rem}
.faq-tel:hover{color:var(--red)}
.faq-search{max-width:820px;margin:clamp(1.6rem,3vw,2.2rem) auto 0;position:relative}
.faq-search input{width:100%;font:inherit;font-size:1.02rem;padding:.95rem 1.1rem .95rem 2.9rem;
  border:1.5px solid var(--hairline);border-radius:var(--r-pill);background:var(--white);color:var(--text);transition:border-color .15s var(--ease)}
.faq-search input:focus{outline:none;border-color:var(--red)}
.faq-search::before{content:"";position:absolute;left:1.1rem;top:50%;transform:translateY(-50%);width:18px;height:18px;background:var(--muted);pointer-events:none;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m21 21-4.2-4.2'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m21 21-4.2-4.2'/%3E%3C/svg%3E") center/contain no-repeat}
.faq-noresult{max-width:820px;margin:1.1rem auto 0;text-align:center;color:var(--muted)}
.faq-noresult a{color:var(--red);font-weight:500;text-decoration:underline;text-underline-offset:2px}

/* ---------- Referenzen ---------- */
.ref-lead{max-width:760px;margin-inline:auto;text-align:center;color:var(--muted)}

/* ---------- Feature-Zitat, freistehend (Referenzen: ein Zitat gross hervorgehoben vor der Zitat-Reihe) ---------- */
.quote-lead{max-width:880px;margin:0 auto clamp(2rem, 4vw, 3rem);background:var(--white);border:1px solid var(--hairline);
  border-left:3px solid var(--red);border-radius:var(--r-lg);padding:clamp(2rem, 4vw, 3.2rem);position:relative;overflow:hidden;box-shadow:var(--sh-md)}
.quote-lead svg{width:32px;height:32px;color:var(--red);margin-bottom:1.1rem;position:relative}
.quote-lead blockquote{font-size:clamp(1.15rem, 1.05rem + .5vw, 1.4rem);line-height:1.6;color:var(--text);max-width:75ch;position:relative}
.quote-lead blockquote b{color:var(--ink)}
.quote-lead figcaption{margin-top:1.4rem;display:flex;align-items:center;gap:1rem;font-size:.92rem;color:var(--muted);position:relative}
.quote-lead figcaption b{display:block;color:var(--ink);font-size:1.04rem;margin-bottom:.15rem}
.quote-lead .quote-avatar{width:56px;height:56px}

/* ---------- Zweispalter (Funktionen) ---------- */
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem, 4vw, 4rem);align-items:center}
.split-copy p{margin-top:.9rem;color:var(--muted)}
@media(max-width:1080px){.split{grid-template-columns:1fr;gap:2.2rem}}

/* ---------- Fixes ---------- */
/* Mobile-Menü: Header-Höhe beim offenen Menü fixieren (keine Lücke nach Scroll-Shrink) */
body.menu-open .bar{height:78px}
/* Ansprechpartnerin: quadratisches Quellfoto (305px) nicht überdehnen */
.person-photo{aspect-ratio:1/1;max-width:400px}

/* ---------- Funktionen: 2-spaltige Modul-Kacheln ---------- */
.nutzen-grid--2{grid-template-columns:repeat(2, 1fr)}
@media(max-width:900px){.nutzen-grid--2{grid-template-columns:1fr}}

/* ---------- Feature-Quote (igroupCONNECT-eigenes Zitat, dunkel) ---------- */
.quote--feature{grid-column:1/-1;background:var(--ink);border-color:var(--ink)}
.quote--feature blockquote{color:rgba(255,255,255,.82);font-size:clamp(1.05rem, 1rem + .4vw, 1.25rem);max-width:none}
.quote--feature blockquote b{color:#fff}
.quote--feature figcaption{color:var(--on-dark-mut)}
.quote--feature figcaption b{color:#fff}

/* ---------- Mobile-Fixes (Overflow) ---------- */
/* Lange CTA-Labels (Telefonnummer) dürfen auf kleinen Screens umbrechen,
   sonst sprengt ihre min-content-Breite das 1fr-Grid */
@media(max-width:640px){
  .btn{white-space:normal}
}
/* Header-Zeile: Logo + CTA + Burger passen nicht nebeneinander auf schmale Screens;
   der CTA lebt dort im Burger-Menü, im Hero und in der Sticky-Leiste */
@media(max-width:600px){
  .header-cta{display:none}
}
/* Formular-Inputs: 16px auf kleinen Screens (verhindert iOS-Fokus-Zoom),
   muss .lf-field input (font:inherit) überstimmen */
@media(max-width:560px){
  .lf-field input{font-size:16px}
}

/* ---------- Team-KI: drei Alltagsszenen als Chat-Karten nebeneinander ---------- */
.team-scenes{display:grid;grid-template-columns:repeat(3, 1fr);gap:clamp(1.4rem, 2.4vw, 2rem);margin-top:clamp(1.6rem, 3vw, 2.2rem);align-items:stretch}
.scene-card{display:flex;flex-direction:column;height:100%}
.scene-card-lab{font-weight:700;color:var(--ink);font-size:.95rem;margin-bottom:.8rem;display:block}
.team-scenes .chat{margin-left:0;max-width:100%;display:flex;flex-direction:column;height:100%}
.team-scenes .chat-body{height:auto;min-height:220px;flex:1}
@media(max-width:900px){.team-scenes{grid-template-columns:1fr}.scene-card,.team-scenes .chat{height:auto}}

/* ---------- Reporting: KPI- und Auswertungs-Kacheln (4-spaltige mech-Variante) ---------- */
.mech-grid--4{grid-template-columns:repeat(4, 1fr)}
@media(max-width:900px){.mech-grid--4{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.mech-grid--4{grid-template-columns:1fr}}

/* ---------- Kampagnen/Reporting: Platzhalter-Visual (kein echtes Bildmaterial verfügbar) ---------- */
.visual-fb{border:1px solid var(--ink-line);border-radius:var(--r-md);background:var(--ink);aspect-ratio:16/9;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.8rem;padding:2.2rem;text-align:center}
.visual-fb .lm-fb-badge{display:inline-block}
.visual-fb p{color:var(--on-dark-mut);font-size:.94rem;max-width:38ch;margin:0}
