
:root{
  --surface-0:#ffffff;--surface-100:#f4f4f2;--surface-200:#ebebe8;--line:#e3e3e0;
  --ink:#111111;--ink-muted:#5c5c5c;--ink-soft:#8a8a8a;
  --accent:#8a5cf2;--accent-ink:#5b3fd1;
  --button-bg:#2c2a3a;--button-ink:#ffffff;
  --h-teal:#2a2f86;--h-blue:#4a58d0;--h-mist:#8fa0ea;--h-rose:#c8a6dc;--h-amber:#d39a5c;--h-red:#c4566b;
  --glass:rgba(255,255,255,.82);--star:#f2b01e;
  --display:"Inter Tight","Helvetica Neue",Arial,sans-serif;
  --sans:"Inter","Helvetica Neue",Arial,sans-serif;
  --gutter:34px;
  --r-sm:4px;--r-md:8px;--r-lg:24px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:auto}
body{margin:0;background:var(--surface-0);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;overflow-x:clip}
h1,h2,h3,p{margin:0}
a{color:var(--accent-ink)}
img{max-width:100%;display:block}
.wrap{padding:0 var(--gutter)}
.inner{max-width:1440px;margin:0 auto}
.sec{padding-block:140px}
.muted{color:var(--ink-muted)}

/* ---------- Basis-Elemente ---------- */
.label{display:inline-flex;align-items:center;gap:10px;font-size:14px;line-height:16px;font-weight:600;letter-spacing:.1em;text-transform:uppercase}
.label::before{content:"";width:9px;height:9px;background:var(--accent)}
.btn{display:inline-flex;align-items:center;gap:12px;padding:10px 10px 10px 20px;border:0;border-radius:var(--r-sm);background:var(--button-bg);color:var(--button-ink);font:600 15px/20px var(--sans);letter-spacing:.04em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:gap .3s,background .3s}
.btn:hover{gap:18px;background:#1c1c1c;color:#fff}
.btn .arr{width:26px;height:26px;border-radius:999px;background:#fff;display:grid;place-items:center;transition:transform .35s}
.btn .arr::before{content:"";border-left:8px solid var(--accent);border-top:5px solid transparent;border-bottom:5px solid transparent;margin-left:2px}
.btn:hover .arr{transform:rotate(-45deg)}
.btn--light{background:#fff;color:var(--ink)}
.btn--light:hover{background:#f1f1f1;color:var(--ink)}
.btn--light .arr{background:var(--ink)}
.btn--ghost{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1px var(--line)}
.btn--ghost:hover{background:var(--surface-100);color:var(--ink)}
.btn:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid var(--accent-ink);outline-offset:3px}
.logo{height:42px;width:auto;display:block}

.sechead{display:flex;align-items:center;gap:36px;padding-bottom:36px;border-bottom:1px solid var(--line)}
.sechead h2{font:600 80px/1 var(--display);letter-spacing:-.045em}
.sechead .rule{width:1px;align-self:stretch;background:var(--line)}
.sechead--center{justify-content:center}

/* ---------- Animationen ---------- */
@keyframes fadeUp{from{opacity:0;transform:translateY(40px)}to{opacity:1;transform:none}}
@keyframes drift{0%{background-position:0% 0%}50%{background-position:100% 40%}100%{background-position:30% 100%}}
@keyframes float{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(-60px,40px) scale(1.15)}}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(138,92,242,.55)}70%{box-shadow:0 0 0 10px rgba(138,92,242,0)}100%{box-shadow:0 0 0 0 rgba(138,92,242,0)}}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes menuIn{from{opacity:0;transform:translateY(-20px) scale(.98)}to{opacity:1;transform:none}}
@keyframes letter{from{opacity:0;transform:translateY(60%)}to{opacity:1;transform:none}}
.load{animation:fadeUp 1s cubic-bezier(.2,.7,.2,1) both}
.d1{animation-delay:.1s}.d2{animation-delay:.2s}.d3{animation-delay:.3s}.d4{animation-delay:.4s}.d5{animation-delay:.5s}.d6{animation-delay:.6s}.d7{animation-delay:.7s}
.reveal{opacity:0;transform:translateY(40px);transition:opacity 1s cubic-bezier(.2,.7,.2,1),transform 1s cubic-bezier(.2,.7,.2,1)}
.reveal.in{opacity:1;transform:none}
.no-js .reveal{opacity:1;transform:none}
.dot{width:9px;height:9px;border-radius:999px;background:var(--accent);animation:pulse 2s infinite;display:inline-block}
.live{background-size:180% 180% !important;animation:drift 24s ease-in-out infinite alternate}
.orb{position:absolute;border-radius:999px;filter:blur(70px);opacity:.65;pointer-events:none;animation:float 16s ease-in-out infinite}

/* ---------- Header ---------- */
.topbar{display:flex;justify-content:space-between;align-items:center;height:88px;border-bottom:1px solid var(--line);position:relative;z-index:5}
.menu-btn{width:52px;height:52px;border:0;background:transparent;cursor:pointer;display:grid;place-items:center;border-radius:999px;transition:background .2s}
.menu-btn:hover{background:var(--surface-100)}
.top-right{display:flex;align-items:center;gap:16px}
.mini-contact{display:flex;align-items:center;gap:14px;padding:6px 6px 6px 6px;border:1px solid var(--line);border-radius:var(--r-md);color:var(--ink);text-decoration:none;transition:box-shadow .3s,transform .3s}
.mini-contact:hover{box-shadow:0 10px 28px rgba(17,17,17,.08);transform:translateY(-2px);color:var(--ink)}
.mini-contact img{width:48px;height:56px;border-radius:var(--r-sm);object-fit:cover;object-position:50% 20%}
.mc-txt{display:flex;flex-direction:column;line-height:1.25}
.mc-txt b{font-size:15px}
.mc-txt small{font-size:13px;color:var(--ink-muted)}
.mini-contact .btn{padding:8px 8px 8px 16px;font-size:13px}
.hero-wrap{padding-top:20px}
.wordmark{font:600 clamp(64px,11.4vw,190px)/.86 var(--display);letter-spacing:-.055em;white-space:nowrap;display:flex}
.wordmark span{display:inline-block;animation:letter .9s cubic-bezier(.2,.7,.2,1) both}
.wordmark sup{font-size:.3em;letter-spacing:0;vertical-align:.95em;margin-left:.04em}
.contact{display:flex;gap:16px;padding:8px;border:1px solid var(--line);border-radius:var(--r-md);background:#fff;flex:none}
.contact .ph{width:88px;height:100px;border-radius:var(--r-sm);object-fit:cover;object-position:50% 20%;background:#e5e5e5}
.contact .nm{font-weight:600;font-size:18px;margin-top:4px}
.contact .rl{font-size:15px;color:var(--ink-muted);margin:2px 0 12px}

/* ---------- Hero ---------- */
.hero{position:relative;border-radius:var(--r-lg);overflow:hidden;min-height:clamp(600px,calc(100vh - 130px),900px);padding:36px;display:flex;flex-direction:column;justify-content:flex-end;gap:72px;color:#fff;
  background:
    radial-gradient(55% 65% at 92% 8%,var(--h-amber),transparent 70%),
    radial-gradient(55% 60% at 96% 100%,var(--h-red),transparent 70%),
    radial-gradient(45% 55% at 60% 35%,var(--h-rose),transparent 75%),
    radial-gradient(45% 55% at 42% 52%,var(--h-mist),transparent 75%),
    radial-gradient(55% 60% at 5% 0%,var(--h-teal),transparent 75%),
    var(--h-blue)}
.hero-title{position:relative;font:600 clamp(36px,4vw,62px)/1.06 var(--display);letter-spacing:-.035em}
.ticker{display:block;height:1.24em;overflow:hidden}
.ticker-in{display:flex;flex-direction:column;transition:transform .8s cubic-bezier(.7,0,.2,1)}
.ticker-in span{height:1.24em;line-height:1.24em}
.tiles{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}
.tile{display:flex;align-items:center;gap:14px;padding:10px;border-radius:var(--r-sm);background:var(--glass);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:var(--ink);text-decoration:none;transition:transform .4s cubic-bezier(.2,.7,.2,1),background .3s}
.tile:hover{transform:translateY(-8px);background:#fff;color:var(--ink)}
.tile .th{width:98px;height:64px;flex:none;border-radius:3px;position:relative;overflow:hidden}
.tile .th{display:grid;place-items:center}
.tile .th svg{position:relative;z-index:1;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.tile:hover .th svg{transform:scale(1.15) rotate(-6deg)}
.tile .th::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 30% 20%,rgba(255,255,255,.35),transparent 60%)}
.tile .ix{font-size:15px}
.tile .tn{font-weight:600;font-size:18px;margin-top:4px}
.social{position:absolute;right:34px;top:50%;transform:translateY(-50%);display:grid;gap:10px}
.social a{width:52px;height:52px;border-radius:999px;background:var(--glass);color:var(--ink);display:grid;place-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:transform .3s,background .3s,color .3s}
.social a:hover{transform:scale(1.08);background:var(--accent);color:#fff}

/* ---------- Menü-Overlay ---------- */
.overlay{position:fixed;inset:0;z-index:100;visibility:hidden;pointer-events:none;transition:visibility 0s .8s}
.overlay.open{visibility:visible;pointer-events:auto;transition:none}
.scrim{position:absolute;inset:0;border:0;padding:0;background:rgba(17,17,17,.38);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);opacity:0;transition:opacity .6s;cursor:pointer}
.overlay.open .scrim{opacity:1}
.menu{position:absolute;left:0;right:0;top:0;max-height:100vh;overflow:auto;background:#fff;border-radius:0 0 28px 28px;padding:0 var(--gutter) 40px;clip-path:inset(0 0 100% 0 round 0 0 28px 28px);transition:clip-path .75s cubic-bezier(.7,0,.2,1);box-shadow:0 30px 80px rgba(17,17,17,.18)}
.overlay.open .menu{clip-path:inset(0 0 0 0 round 0 0 28px 28px)}
.menu-top{display:flex;justify-content:space-between;align-items:center;height:88px;border-bottom:1px solid var(--line);margin-bottom:44px}
.menu-inner{max-width:1440px;margin:0 auto}
.menu-cols>div,.menu-foot{opacity:0;transform:translateY(-24px);transition:opacity .5s,transform .7s cubic-bezier(.2,.7,.2,1)}
.overlay.open .menu-cols>div,.overlay.open .menu-foot{opacity:1;transform:none}
.overlay.open .menu-cols>div:nth-child(1){transition-delay:.25s}
.overlay.open .menu-cols>div:nth-child(2){transition-delay:.32s}
.overlay.open .menu-cols>div:nth-child(3){transition-delay:.39s}
.overlay.open .menu-cols>div:nth-child(4){transition-delay:.46s}
.overlay.open .menu-cols>div:nth-child(5){transition-delay:.53s}
.overlay.open .menu-foot{transition-delay:.6s}
.menu-cols{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) minmax(0,1.2fr);gap:40px}
.menu h3{font:600 26px/1.1 var(--display);letter-spacing:-.02em;margin-bottom:18px}
.menu .mi{display:flex;justify-content:space-between;gap:12px;padding:9px 0;color:var(--ink);text-decoration:none;font-size:17px;transition:color .2s,padding .25s}
.menu .mi small{color:var(--ink-soft);font-size:13px}
.menu .mi:hover{color:var(--accent-ink);padding-left:8px}
.menu-foot{display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;margin-top:40px;padding-top:24px;border-top:1px solid var(--line);font-size:17px}
.close-btn{width:52px;height:52px;border-radius:999px;border:0;background:var(--surface-100);cursor:pointer;display:grid;place-items:center;transition:transform .45s cubic-bezier(.2,.7,.2,1),background .2s}
.close-btn:hover{transform:rotate(90deg);background:var(--surface-200)}

/* ---------- Vertrauen ---------- */
.trust{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;padding-top:56px}
.rating{display:inline-flex;align-items:center;gap:12px;padding:14px 18px;border:1px solid var(--line);border-radius:var(--r-md);color:var(--ink);text-decoration:none;transition:transform .3s,box-shadow .3s}
.rating:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(17,17,17,.08);color:var(--ink)}
.rating b{font-size:16px}
.rating .st{color:var(--star);letter-spacing:2px}
.rating .nt{font-size:14px;color:var(--ink-muted)}
.marquee{margin-top:44px;padding:40px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}
.marquee-in{display:flex;gap:80px;width:max-content;animation:marquee 36s linear infinite}
.marquee:hover .marquee-in{animation-play-state:paused}
.marquee-in span{display:inline-flex;align-items:center;gap:12px;white-space:nowrap;font:600 28px/1 var(--display);letter-spacing:-.02em;color:#9a9a9a;transition:color .3s}
.marquee-in span:hover{color:var(--ink)}

/* ---------- Über uns ---------- */
.about{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:48px}
.about h2{font:600 54px/1.08 var(--display);letter-spacing:-.035em}
.about h2 em{font-style:normal;color:#9a9a9a}
.pics{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:16px;margin-top:48px}
.pic{height:340px;border-radius:12px;position:relative;overflow:hidden}
.pic span{position:absolute;left:20px;bottom:16px;color:#fff;font-size:13px;letter-spacing:.08em}
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:110px}
.stat{padding:0 36px;border-left:1px solid var(--line)}
.stat:first-child{padding-left:0;border-left:0}
.stat .v{font:500 76px/1 var(--display);letter-spacing:-.04em}
.stat p{margin-top:14px;font-size:17px;line-height:26px;color:var(--ink-muted)}

/* ---------- Projekte (Stapel) ---------- */
.g1{background:linear-gradient(135deg,var(--h-red),var(--h-amber))}
.g2{background:linear-gradient(135deg,var(--h-blue),var(--h-mist) 60%,var(--h-rose))}
.g3{background:linear-gradient(135deg,var(--h-teal),var(--h-mist) 55%,var(--h-amber))}
.g4{background:linear-gradient(135deg,#1c1c1e,var(--h-blue))}
.g5{background:linear-gradient(135deg,var(--h-rose),var(--h-amber) 60%,var(--h-red))}
.stack{margin-top:64px}
.card{position:sticky;height:min(78vh,620px);border-radius:var(--r-lg);overflow:hidden;display:flex;align-items:flex-end;padding:32px;margin-bottom:40px;text-decoration:none;color:#fff;box-shadow:0 -16px 50px rgba(17,17,17,.14)}
.card .ring{position:absolute;right:9%;top:12%;width:340px;height:340px;border-radius:999px;border:54px solid rgba(255,255,255,.2);animation:spin 30s linear infinite}
.card .ring::after{content:"";position:absolute;inset:46px;border-radius:999px;background:rgba(255,255,255,.12)}
.card .big{position:absolute;left:40px;top:28px;font:600 170px/.9 var(--display);letter-spacing:-.05em;color:rgba(255,255,255,.15)}
.bar{position:relative;width:100%;display:flex;align-items:center;gap:28px;padding:20px 28px;border-radius:var(--r-md);background:rgba(17,17,17,.62);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:background .3s}
.card:hover .bar{background:rgba(17,17,17,.85)}
.bar .nm{font:600 42px/1 var(--display);letter-spacing:-.035em}
.bar .ln{flex:1;height:1px;background:rgba(255,255,255,.5)}
.bar .tg{font-size:17px;font-weight:500}

/* ---------- Expertise ---------- */
.xp-row{display:flex;margin-top:64px;border:1px solid var(--line);min-height:560px}
.xp{position:relative;flex:1 1 0;min-width:0;border-left:1px solid var(--line);background:var(--surface-100);overflow:hidden;transition:flex-grow .8s cubic-bezier(.7,0,.2,1),background .4s}
.xp:first-child{border-left:0}
.xp.on{flex-grow:4;background:#fff}
.xp-full{position:absolute;inset:0;padding:30px;display:flex;flex-direction:column;gap:20px;min-width:600px;opacity:0;transform:translateY(16px);transition:opacity .35s,transform .45s;pointer-events:none}
.xp.on .xp-full{opacity:1;transform:none;transition-delay:.4s;pointer-events:auto}
.xp-head{display:flex;align-items:center;gap:14px;font-size:14px;letter-spacing:.08em;color:var(--ink-muted);width:100%}
.xp-head i{flex:1;height:1px;background:var(--line)}
.xp-img{height:200px;border-radius:var(--r-md);position:relative;overflow:hidden}
.xp-full h3{font:600 46px/1.02 var(--display);letter-spacing:-.035em}
.xp-full p{font-size:18px;line-height:28px;color:var(--ink-muted);max-width:600px}
.tags{display:flex;flex-wrap:wrap;gap:8px}
.tag{padding:9px 15px;border:1px solid var(--line);border-radius:var(--r-sm);font-size:15px;color:var(--ink-muted);background:#fff}
.xp-closed{position:absolute;inset:0;padding:30px;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;border:0;background:transparent;cursor:pointer;font:inherit;color:inherit;text-align:left;transition:opacity .3s,background .3s}
.xp-closed:hover{background:var(--surface-200)}
.xp.on .xp-closed{opacity:0;pointer-events:none}
.vt{writing-mode:vertical-rl;transform:rotate(180deg);font:600 46px/1 var(--display);letter-spacing:-.035em}
.plus{width:44px;height:44px;border-radius:999px;border:1px solid var(--line);background:#fff;display:grid;place-items:center;font-size:22px;color:var(--accent)}

/* Glas-Objekt (Motiv) */
.glass{position:absolute;left:50%;top:50%;width:160px;height:160px;margin:-80px 0 0 -80px;border-radius:999px;border:28px solid transparent;background:conic-gradient(from 0deg,var(--h-blue),var(--h-rose),var(--h-amber),var(--h-red),var(--h-teal),var(--h-blue)) border-box;-webkit-mask:linear-gradient(#000 0 0) padding-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:spin 16s linear infinite}
.glass.sq{border-radius:30px;animation-duration:24s}
.glass.rev{animation-direction:reverse}

/* ---------- Team ---------- */
.team{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px;margin-top:64px}
.member .ph{aspect-ratio:4/5;border-radius:var(--r-md);background:#fff;display:grid;place-items:center;font:600 44px var(--display);color:#9a9a9a;position:relative;overflow:hidden;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.member .ph::after{content:"";position:absolute;inset:0;background:linear-gradient(160deg,transparent 40%,rgba(232,98,42,.2));opacity:0;transition:opacity .4s}
.member:hover .ph{transform:translateY(-8px)}
.member .ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 25%;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.member:hover .ph img{transform:scale(1.05)}
.member:hover .ph::after{opacity:1}
.member h3{margin-top:16px;font:600 21px/1.2 var(--display);letter-spacing:-.015em}
.member p{font-size:15px;color:var(--ink-muted);margin-top:2px}

/* ---------- Prozess ---------- */
.pgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:64px}
.ptxt{border:1px solid var(--line);background:#fff;padding:30px;min-height:360px;display:flex;flex-direction:column;transition:border-color .3s,transform .4s}
.ptxt:hover{border-color:var(--accent);transform:translateY(-4px)}
.ptxt .ix{font-size:16px;color:var(--ink-muted)}
.ptxt h3{margin-top:auto;font:600 32px/1.12 var(--display);letter-spacing:-.025em}
.ptxt p{margin-top:12px;font-size:17px;line-height:26px;color:var(--ink-muted)}
.pimg{min-height:360px;border-radius:var(--r-md);position:relative;overflow:hidden}

/* ---------- Case Studies ---------- */
.case{border:1px solid var(--line);border-radius:16px;background:#fff;padding:32px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:36px;transition:box-shadow .3s,transform .4s}
.case:hover{box-shadow:0 24px 60px rgba(17,17,17,.08);transform:translateY(-4px)}
.case .vis{min-height:300px;border-radius:12px;position:relative;overflow:hidden;display:flex;align-items:flex-end;padding:22px}
.case .vis b{position:relative;color:#fff;font:600 36px/1 var(--display);letter-spacing:-.025em}
.case h3{margin-top:14px;font:600 34px/1.12 var(--display);letter-spacing:-.025em}
.kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;border-top:1px solid var(--line);padding-top:24px}
.kpi{font:600 52px/1 var(--display);letter-spacing:-.035em}
.kpis p{margin-top:8px;font-size:15px;color:var(--ink-muted)}

/* ---------- FAQ ---------- */
.faq-wrap{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:72px;margin-top:64px}
.faq{border-top:1px solid var(--line)}
.fq{display:grid;grid-template-columns:84px 1fr 40px;gap:16px;padding:30px 0;border-bottom:1px solid var(--line)}
.fq .n{font-size:22px;color:var(--ink-muted);transition:color .3s}
.fq button{all:unset;cursor:pointer}
.fq .q{font:600 22px/1.35 var(--sans);transition:color .2s}
.fq:hover .q{color:var(--accent-ink)}
.fq .ic{font-size:30px;line-height:1;color:var(--accent);text-align:right;display:block;transition:transform .4s}
.fq .ans{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .5s cubic-bezier(.2,.7,.2,1),opacity .4s}
.fq .ans>div{overflow:hidden}
.fq .ans p{padding-top:14px;font-size:18px;line-height:28px;color:var(--ink-muted)}
.fq.open .ans{grid-template-rows:1fr;opacity:1}
.fq.open .n{color:var(--accent-ink)}
.fq.open .ic{transform:rotate(45deg)}
.ask .ph{aspect-ratio:4/5;border-radius:16px;position:relative;overflow:hidden;display:grid;place-items:center;color:#fff;font:600 68px var(--display)}
.ask h3{font:600 40px/1.08 var(--display);letter-spacing:-.03em;margin-top:24px}
.ask p{margin:12px 0 24px;font-size:17px;line-height:27px;color:var(--ink-muted)}

/* ---------- CTA + Footer ---------- */
.cta{min-height:460px;justify-content:space-between;gap:48px}
.cta h2{position:relative;font:600 clamp(40px,5.6vw,88px)/.98 var(--display);letter-spacing:-.045em;max-width:13ch}
.foot{display:grid;grid-template-columns:minmax(0,2fr) repeat(3,minmax(0,1fr));gap:40px;padding:56px 0;border-top:1px solid var(--line)}
.foot .col{display:flex;flex-direction:column;gap:10px;font-size:16px}
.foot .col a{color:var(--ink);text-decoration:none;transition:color .2s}
.foot .col a:hover{color:var(--accent-ink)}
.foot-mark{font:600 clamp(64px,16.5vw,290px)/.82 var(--display);letter-spacing:-.06em;color:var(--surface-200);white-space:nowrap}
.legal{display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;padding:24px 0 40px;font-size:14px;color:var(--ink-muted)}
.legal a{color:var(--ink-muted)}

@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none !important;transition:none !important}.reveal{opacity:1;transform:none}}
@media (max-width:1100px){
  .tiles{grid-template-columns:repeat(3,minmax(0,1fr))}
  .team{grid-template-columns:repeat(3,minmax(0,1fr))}
  .pgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .menu-cols{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:800px){
  :root{--gutter:16px}
  .sec{padding-block:80px}
  .mc-txt,.mini-contact .btn{display:none}
  .hero{padding:22px;gap:40px;min-height:600px}
  .tiles{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tile .th{width:56px;height:48px}
  .social{display:none}
  .sechead{flex-wrap:wrap;gap:12px}
  .sechead h2{font-size:44px}
  .sechead .rule{display:none}
  .about,.faq-wrap,.foot,.case,.pics,.menu-cols{grid-template-columns:minmax(0,1fr)}
  .about h2{font-size:34px}
  .stats{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:40px;margin-top:64px}
  .stat{border-left:0;padding:0}
  .stat .v{font-size:48px}
  .card{height:420px;padding:16px}
  .card .big{font-size:90px;left:20px}
  .card .ring{width:180px;height:180px;border-width:30px}
  .bar{flex-wrap:wrap;gap:8px;padding:16px}
  .bar .nm{font-size:28px}
  .bar .ln{display:none}
  .xp-row{flex-direction:column;min-height:0}
  .xp{flex:none !important;min-height:88px;border-left:0;border-top:1px solid var(--line)}
  .xp:first-child{border-top:0}
  .xp.on{min-height:640px}
  .xp-full{min-width:0;padding:20px}
  .xp-full h3{font-size:34px}
  .xp-closed{flex-direction:row;align-items:center;padding:20px}
  .xp-closed .xp-head{width:auto}
  .vt{writing-mode:horizontal-tb;transform:none;font-size:26px}
  .team{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pgrid{grid-template-columns:minmax(0,1fr)}
  .pimg{min-height:220px}
  .fq{grid-template-columns:56px 1fr 32px}
  .fq .q{font-size:18px}
  .kpi{font-size:36px}
  .menu-top{height:72px;margin-bottom:24px}
}

/* ================= Unterseiten ================= */
.page-top{padding-top:72px}
.crumb{font-size:14px;color:var(--ink-muted);margin-bottom:28px}
.crumb a{color:var(--ink-muted);text-decoration:none}
.crumb a:hover{color:var(--accent-ink)}

/* --- Über uns: Intro --- */
.ab-intro{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:64px;align-items:center}
.ab-intro h1{margin-top:28px;font:600 clamp(36px,4.2vw,64px)/1.06 var(--display);letter-spacing:-.04em}
.ab-intro h1 em{font-style:normal;color:var(--ink-soft)}
.terms{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:48px;background:var(--surface-100);border-radius:var(--r-sm);overflow:hidden}
.terms span{position:relative;padding:16px 20px;text-align:center;font-size:18px;color:var(--ink-muted);transition:color .4s}
.terms span::after{content:"";position:absolute;left:20px;right:20px;bottom:0;height:2px;background:var(--accent);transform:scaleX(0);transition:transform .6s cubic-bezier(.7,0,.2,1)}
.terms span.on{color:var(--ink)}
.terms span.on::after{transform:scaleX(1)}
.ab-photo{position:relative;border-radius:var(--r-lg);overflow:hidden;aspect-ratio:4/3.4;background:var(--surface-200)}
.ab-photo img{width:100%;height:100%;object-fit:cover;object-position:45% 50%;animation:kenburns 22s ease-in-out infinite alternate}
.ab-photo .badge{position:absolute;left:18px;bottom:18px;display:inline-flex;align-items:center;gap:10px;padding:10px 14px;border-radius:var(--r-sm);background:var(--glass);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);font-size:14px;font-weight:600}
@keyframes kenburns{from{transform:scale(1)}to{transform:scale(1.08) translate(-1.5%,-1%)}}

.behind{font:600 clamp(56px,9.5vw,150px)/.9 var(--display);letter-spacing:-.055em;padding:110px 0 44px;border-bottom:1px solid var(--line)}

/* --- Bento "Warum Rankskipper" --- */
.why-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin:56px 0 40px}
.why-head h2{font:600 clamp(32px,3.4vw,52px)/1.05 var(--display);letter-spacing:-.035em}
.bento{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-template-rows:250px 250px 250px;gap:16px;grid-template-areas:"a a b b c c" "a a b b d d" "e e g h d d"}
.bx{position:relative;border-radius:var(--r-md);background:var(--surface-100);padding:28px;overflow:hidden;display:flex;flex-direction:column;transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s}
.bx:hover{transform:translateY(-4px);box-shadow:0 24px 50px rgba(17,17,17,.08)}
.bx h3{font:600 26px/1.15 var(--display);letter-spacing:-.02em}
.bx p{margin-top:10px;font-size:16px;line-height:25px;color:var(--ink-muted)}
.bx.center{text-align:center;align-items:center}
.ba{grid-area:a}.bb{grid-area:b}.bc{grid-area:c}.bd{grid-area:d}.be{grid-area:e}.bg{grid-area:g}.bh{grid-area:h}

/* Slider (Alles aus einer Hand) */
.slider{position:relative;flex:1;min-height:0;border-radius:var(--r-md);background:#fff;border:1px solid var(--line);overflow:hidden;margin-bottom:24px}
.slide{position:absolute;inset:0;padding:18px;opacity:0;transform:translateX(30px) scale(.98);transition:opacity .7s,transform .9s cubic-bezier(.2,.7,.2,1)}
.slide.on{opacity:1;transform:none}
.slide .cap{position:absolute;left:18px;bottom:14px;font-size:12px;letter-spacing:.08em;color:var(--ink-muted)}
.dots{position:absolute;right:14px;bottom:14px;display:flex;gap:6px;z-index:2}
.dots button{width:8px;height:8px;border-radius:999px;border:0;padding:0;background:var(--line);cursor:pointer;transition:width .4s,background .4s}
.dots button.on{width:22px;background:var(--accent)}
/* Mockup-Bausteine */
.mk-bar{display:flex;gap:5px;margin-bottom:12px}.mk-bar i{width:8px;height:8px;border-radius:999px;background:var(--line)}
.mk-line{height:8px;border-radius:4px;background:var(--surface-200);margin:7px 0}
.mk-hero{height:74px;border-radius:6px;background:linear-gradient(120deg,var(--h-blue),var(--h-rose) 60%,var(--h-amber));margin:8px 0 10px;display:flex;align-items:flex-end;padding:8px}
.mk-hero b{color:#fff;font:600 13px var(--display)}
.mk-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.mk-cards i{height:34px;border-radius:5px;background:var(--surface-100)}
.mk-dash{display:grid;grid-template-columns:70px 1fr;gap:10px;height:calc(100% - 30px)}
.mk-side{background:var(--surface-100);border-radius:6px;padding:8px}
.mk-chart{display:flex;align-items:flex-end;gap:7px;height:110px;padding:10px;border-radius:6px;background:var(--surface-100)}
.mk-chart i{flex:1;border-radius:3px 3px 0 0;background:var(--accent);transform-origin:bottom;animation:grow 1.4s cubic-bezier(.2,.7,.2,1) both}
.slide:not(.on) .mk-chart i{animation:none}
@keyframes grow{from{transform:scaleY(0)}to{transform:scaleY(1)}}
.mk-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:8px}.mk-kpis span{padding:6px;border-radius:5px;background:var(--surface-100);font:600 12px var(--display)}
.mk-chat{display:flex;flex-direction:column;gap:8px;max-width:260px;margin:0 auto}
.bubble{padding:9px 12px;border-radius:12px;font-size:12.5px;line-height:17px;max-width:85%}
.bubble.u{align-self:flex-end;background:var(--surface-100)}
.bubble.a{align-self:flex-start;background:var(--accent);color:#fff}
.typing{display:inline-flex;gap:4px;padding:10px 12px;border-radius:12px;background:var(--surface-100);align-self:flex-start}
.typing i{width:6px;height:6px;border-radius:999px;background:#9a9a9a;animation:blink 1.2s infinite}
.typing i:nth-child(2){animation-delay:.2s}.typing i:nth-child(3){animation-delay:.4s}
@keyframes blink{0%,80%,100%{opacity:.25}40%{opacity:1}}

/* Volle Transparenz */
.bb{background:linear-gradient(160deg,#7b5cf0,#4a58d0);color:#fff;text-align:center;align-items:center}
.bb p{color:rgba(255,255,255,.88);max-width:340px}
.laptop{margin-top:auto;width:92%;position:relative}
.laptop .scr{background:#fff;border:7px solid #1c1c1e;border-bottom-width:9px;border-radius:12px 12px 0 0;padding:12px;color:var(--ink);text-align:left}
.laptop .base{height:12px;margin:0 -6%;background:linear-gradient(#d9d9de,#b9b9c0);border-radius:0 0 10px 10px}
.rep-title{display:flex;justify-content:space-between;font:600 12px var(--display);margin-bottom:8px}
.rep-title span{color:#1f9d55}
.rep-line{position:relative;height:84px}
.rep-line svg{width:100%;height:100%}
.rep-line path.ln{stroke-dasharray:420;stroke-dashoffset:420;animation:draw 2.6s 0.4s cubic-bezier(.2,.7,.2,1) forwards}
.reveal.in .rep-line path.ln{animation-play-state:running}
@keyframes draw{to{stroke-dashoffset:0}}

/* Stack-Chips */
.chips{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:auto;padding:12px;border-radius:var(--r-md);background:#fff;border:1px solid var(--line)}
.chip{display:inline-flex;align-items:center;gap:7px;padding:7px 11px;border-radius:999px;background:var(--surface-100);font-size:13.5px;font-weight:600;transition:background .3s,transform .3s}
.chip:hover{background:#ece6fe;transform:translateY(-2px)}
.chip i{width:8px;height:8px;border-radius:999px;background:var(--accent)}

/* Skalieren (Phone) */
.phone{margin:auto auto -40px;width:210px;height:330px;border-radius:34px;border:8px solid #1c1c1e;background:#fff;position:relative;overflow:hidden;padding:30px 14px 14px}
.phone::before{content:"";position:absolute;top:8px;left:50%;width:70px;height:16px;margin-left:-35px;border-radius:999px;background:#1c1c1e}
.pin-map{position:relative;height:150px;border-radius:12px;background:linear-gradient(160deg,#eef0fb,#dfe3f6);overflow:hidden}
.pin{position:absolute;width:12px;height:12px;border-radius:999px;background:var(--accent);box-shadow:0 0 0 0 rgba(138,92,242,.5);animation:pulse 2.4s infinite}
.loc-count{margin-top:12px;font:600 30px/1 var(--display);letter-spacing:-.03em}
.loc-sub{font-size:12px;color:var(--ink-muted);margin-top:4px}

/* Trustpilot-Karte */
.be{background:linear-gradient(120deg,#d7e7ee,#bcd5df);flex-direction:row;padding:0}
.be .tp{flex:1;padding:28px;display:flex;flex-direction:column;justify-content:center}
.be .tp .st{color:#1a1a1a;letter-spacing:3px;font-size:20px}
.be .tp h3{margin-top:10px}
.be .score{font:600 46px/1 var(--display);letter-spacing:-.03em;margin-top:6px}
.be .ph{width:42%;position:relative}
.be .ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:62% 30%}
.ico{width:46px;height:46px;border-radius:999px;display:grid;place-items:center;background:#fff;margin:14px auto 12px;border:1px solid var(--line)}
.big-num{font:600 34px/1 var(--display);letter-spacing:-.03em;margin-top:auto}

/* --- Team-Slider --- */
.tm{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:48px;margin-top:56px;align-items:stretch}
.tm-photo{position:relative;border-radius:var(--r-lg);overflow:hidden;aspect-ratio:4/4.6;background:linear-gradient(160deg,#dfe3f6,#c8cdea)}
.tm-photo img,.tm-photo .ini{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 20%;transition:opacity .6s,transform .9s cubic-bezier(.2,.7,.2,1)}
.tm-photo .ini{display:grid;place-items:center;font:600 120px var(--display);letter-spacing:-.04em;color:rgba(255,255,255,.9)}
.tm-photo .is-out{opacity:0;transform:scale(1.04)}
.tm-info{display:flex;flex-direction:column;justify-content:space-between;gap:32px;padding:8px 0}
.tm-count{font-size:15px;color:var(--ink-muted)}
.tm-name{font:600 clamp(36px,3.6vw,56px)/1.02 var(--display);letter-spacing:-.04em;margin-top:18px}
.tm-role{margin-top:10px;font-size:18px;color:var(--accent-ink);font-weight:600}
.tm-bio{margin-top:24px;font-size:19px;line-height:31px;color:var(--ink-muted);max-width:600px}
.tm-fade{transition:opacity .4s,transform .5s}
.tm-fade.is-out{opacity:0;transform:translateY(12px)}
.tm-nav{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.arrows{display:flex;gap:10px}
.arrows button{width:54px;height:54px;border-radius:999px;border:1px solid var(--line);background:#fff;cursor:pointer;display:grid;place-items:center;transition:background .3s,border-color .3s,transform .3s}
.arrows button:hover{background:var(--ink);border-color:var(--ink);transform:scale(1.05)}
.arrows button:hover svg{stroke:#fff}
.thumbs{display:flex;gap:10px}
.thumbs button{width:72px;height:84px;border-radius:var(--r-sm);border:2px solid transparent;padding:0;overflow:hidden;cursor:pointer;background:linear-gradient(160deg,#dfe3f6,#c8cdea);font:600 20px var(--display);color:#fff;opacity:.55;transition:opacity .3s,border-color .3s,transform .3s}
.thumbs button img{width:100%;height:100%;object-fit:cover;object-position:50% 20%}
.thumbs button.on{opacity:1;border-color:var(--accent);transform:translateY(-4px)}
.thumbs button:hover{opacity:1}
.progress{height:2px;background:var(--line);margin-top:20px;overflow:hidden}
.progress i{display:block;height:100%;width:0;background:var(--accent)}
.progress i.run{animation:prog 7s linear forwards}
@keyframes prog{to{width:100%}}

/* --- Kontakt --- */
.kt-top h1{margin-top:24px;font:600 clamp(56px,9vw,140px)/.9 var(--display);letter-spacing:-.055em}
.kt-top p{margin-top:24px;max-width:640px;font-size:20px;line-height:31px;color:var(--ink-muted)}
.kt{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:56px;margin-top:72px;padding-top:56px;border-top:1px solid var(--line);align-items:start}
.kt-left h2{font:600 clamp(30px,3vw,44px)/1.1 var(--display);letter-spacing:-.03em}
.mail-vis{position:relative;margin-top:32px;border-radius:var(--r-lg);overflow:hidden;aspect-ratio:16/11;background:linear-gradient(140deg,#5b5fe0,#8f7cf2 55%,#b9a6f6)}
.mail-vis .env{position:absolute;left:24%;top:46%;width:150px;height:104px;border-radius:12px;background:#fff;box-shadow:0 20px 40px rgba(30,20,90,.25);animation:bob 4s ease-in-out infinite}
.mail-vis .env::before{content:"";position:absolute;left:12px;right:12px;top:14px;height:52px;border-left:3px solid #7a6cf0;border-bottom:3px solid #7a6cf0;transform:skewY(32deg) rotate(-45deg) scale(.7);transform-origin:left top;display:none}
.mail-vis .bub{position:absolute;left:14%;top:14%;padding:12px 16px;border-radius:14px 14px 14px 4px;background:rgba(255,255,255,.85);display:flex;gap:5px;animation:bob 4s 1s ease-in-out infinite}
.mail-vis .bub i{width:8px;height:8px;border-radius:999px;background:#7a6cf0;animation:blink 1.2s infinite}
.mail-vis .bub i:nth-child(2){animation-delay:.2s}.mail-vis .bub i:nth-child(3){animation-delay:.4s}
.mail-vis .plane{position:absolute;right:13%;top:12%;animation:fly 5s ease-in-out infinite}
.mail-vis .trail{position:absolute;inset:0}
.mail-vis .trail path{stroke-dasharray:4 9;animation:dash 1.6s linear infinite}
.mail-vis .ok{position:absolute;right:12%;bottom:12%;width:46px;height:46px;border-radius:999px;background:#fff;display:grid;place-items:center;box-shadow:0 10px 24px rgba(30,20,90,.25);animation:pop 4s ease-in-out infinite}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@keyframes fly{0%,100%{transform:translate(0,0) rotate(0)}50%{transform:translate(10px,-10px) rotate(-6deg)}}
@keyframes dash{to{stroke-dashoffset:-26}}
@keyframes pop{0%,60%,100%{transform:scale(1)}70%{transform:scale(1.15)}}
.kt-data{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:24px}
.kt-data a,.kt-data div{display:flex;flex-direction:column;gap:6px;padding:20px;border:1px solid var(--line);border-radius:var(--r-md);color:var(--ink);text-decoration:none;transition:border-color .3s,transform .3s}
.kt-data a:hover{border-color:var(--accent);transform:translateY(-3px);color:var(--ink)}
.kt-data small{font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);font-weight:600}
.kt-data b{font-size:18px}
.tp-card{margin-top:16px;padding:24px;border:1px solid var(--line);border-radius:var(--r-md);display:flex;align-items:center;gap:20px}
.tp-card .score{font:600 52px/1 var(--display);letter-spacing:-.04em}
.tp-card .st{color:var(--star);letter-spacing:3px;font-size:18px}

.form{background:var(--surface-100);border-radius:16px;padding:40px}
.form .intro p{font-size:16px;line-height:25px;color:var(--ink-muted)}
.form .intro p+p{margin-top:10px}
.form .intro p:last-child{color:var(--ink);font-weight:600}
fieldset{border:0;padding:0;margin:36px 0 0}
legend{display:flex;align-items:center;gap:12px;font:600 20px/1.2 var(--display);letter-spacing:-.015em;margin-bottom:18px;padding:0}
legend span{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:999px;background:var(--ink);color:#fff;font:600 13px var(--sans)}
.fgrid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.fgrid .full{grid-column:1/-1}
.field label{display:block;font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;margin-bottom:8px}
.field input,.field textarea{width:100%;padding:15px 16px;border:1px solid var(--line);border-radius:var(--r-sm);background:#fff;font:400 16px var(--sans);color:var(--ink);transition:border-color .25s,box-shadow .25s}
.field textarea{min-height:120px;resize:vertical}
.field input:focus,.field textarea:focus{outline:0;border-color:var(--accent);box-shadow:0 0 0 4px rgba(138,92,242,.15)}
.field input::placeholder,.field textarea::placeholder{color:#9a9a9a}
.field.err input{border-color:#c0392b}
.pills{display:flex;flex-wrap:wrap;gap:10px}
.pill{position:relative}
.pill input{position:absolute;opacity:0;pointer-events:none}
.pill span{display:inline-flex;align-items:center;gap:8px;padding:12px 16px;border:1px solid var(--line);border-radius:999px;background:#fff;font-size:15px;cursor:pointer;transition:border-color .25s,background .25s,color .25s,transform .2s}
.pill span::before{content:"";width:14px;height:14px;border-radius:999px;border:1.5px solid #b5b5b5;transition:all .25s}
.pill input[type=checkbox]+span::before{border-radius:4px}
.pill span:hover{border-color:var(--accent)}
.pill input:checked+span{background:var(--ink);border-color:var(--ink);color:#fff}
.pill input:checked+span::before{border-color:#fff;background:var(--accent);box-shadow:inset 0 0 0 2px var(--ink)}
.pill input:focus-visible+span{outline:2px solid var(--accent-ink);outline-offset:3px}
.pills.err span{border-color:#c0392b}
.submit{width:100%;justify-content:center;margin-top:36px;padding:18px 18px 18px 26px;font-size:16px}
.hint{margin-top:14px;font-size:14px;line-height:21px;color:var(--ink-muted);text-align:center}
.form-msg{margin-top:14px;font-size:14px;color:#c0392b;text-align:center;min-height:20px}
.thanks{display:none;text-align:center;padding:60px 20px}
.thanks .ok{width:84px;height:84px;margin:0 auto 24px;border-radius:999px;background:var(--accent);display:grid;place-items:center;animation:pop 1.2s ease-out both}
.thanks h3{font:600 36px/1.1 var(--display);letter-spacing:-.03em}
.thanks p{margin-top:12px;font-size:18px;color:var(--ink-muted)}
.form.sent form{display:none}
.form.sent .thanks{display:block;animation:fadeUp .8s cubic-bezier(.2,.7,.2,1) both}

@media (max-width:1100px){
  .bento{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto;grid-template-areas:"a b" "c d" "e e" "g h"}
  .ba,.bb,.bd{min-height:440px}
  .bc,.bg,.bh{min-height:230px}
  .be{min-height:230px}
}
@media (max-width:800px){
  .page-top{padding-top:40px}
  .ab-intro,.tm,.kt{grid-template-columns:minmax(0,1fr)}
  .terms span{font-size:15px;padding:14px 8px}
  .behind{padding-top:72px}
  .bento{grid-template-columns:minmax(0,1fr);grid-template-areas:"a" "b" "c" "d" "e" "g" "h"}
  .be{flex-direction:column}
  .be .ph{width:100%;height:220px}
  .form{padding:24px}
  .fgrid,.kt-data{grid-template-columns:minmax(0,1fr)}
  .thumbs button{width:56px;height:66px}
}

/* --- Ganzes Team (Über uns) --- */
.crew-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin:110px 0 40px;padding-top:40px;border-top:1px solid var(--line)}
.crew-head h3{font:600 clamp(30px,3vw,44px)/1.05 var(--display);letter-spacing:-.03em}
.crew-head p{font-size:18px;line-height:28px;max-width:440px}
.crew{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px}
.mate .ph{position:relative;aspect-ratio:4/5;border-radius:var(--r-md);overflow:hidden;background:var(--surface-100);display:grid;place-items:center;font:600 44px var(--display);color:#9a9a9a}
.mate .ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 20%;filter:grayscale(1) contrast(1.05);transition:filter .6s,transform .8s cubic-bezier(.2,.7,.2,1)}
.mate:hover .ph img{filter:none;transform:scale(1.05)}
.mate h4{margin-top:16px;font:600 20px/1.2 var(--display);letter-spacing:-.015em}
.mate p{margin-top:2px;font-size:15px;color:var(--ink-muted)}
@media (max-width:1100px){.crew{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:800px){.crew{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.crew-head{margin-top:72px}}
.mate-more{text-decoration:none;color:var(--ink)}
.mate-more .ph{background:linear-gradient(160deg,#4a58d0,#8a5cf2);display:flex;flex-direction:column;justify-content:center;align-items:center;gap:8px;color:#fff;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.mate-more:hover .ph{transform:translateY(-6px)}
.mm-n{font:600 72px/1 var(--display);letter-spacing:-.04em}
.mm-t{font:500 15px/1.3 var(--sans);text-align:center;padding:0 16px;opacity:.9}
.mate-more:hover{color:var(--ink)}

/* ================= Leistungs- & Übersichtsseiten ================= */
.menu h3 a{color:inherit;text-decoration:none;transition:color .2s}
.menu h3 a:hover{color:var(--accent-ink)}
.svc-hero{min-height:clamp(560px,calc(100vh - 130px),820px);justify-content:center;gap:0}
.svc-grid{position:relative;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:56px;align-items:center}
.svc-crumb{font-size:14px;color:rgba(255,255,255,.85);margin-bottom:22px}
.svc-crumb a{color:#fff;text-decoration:none;opacity:.85}
.svc-crumb a:hover{opacity:1;color:#fff}
.svc-hero h1{margin-top:20px;font:600 clamp(34px,3.8vw,58px)/1.06 var(--display);letter-spacing:-.035em}
.svc-hero .lead{margin-top:22px;font-size:19px;line-height:30px;color:rgba(255,255,255,.9);max-width:600px}
.svc-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}
.btn--glass{background:rgba(255,255,255,.16);color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.4);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.btn--glass:hover{background:rgba(255,255,255,.28);color:#fff}
.hero-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}
.hero-tags span{padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.16);box-shadow:inset 0 0 0 1px rgba(255,255,255,.35);font-size:14px}

/* Visual-Mockups */
.mock{position:relative;border-radius:16px;background:rgba(255,255,255,.94);color:var(--ink);padding:22px;box-shadow:0 30px 80px rgba(20,20,60,.25);animation:floaty 7s ease-in-out infinite}
@keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
.mock-float{position:absolute;padding:12px 16px;border-radius:12px;background:#fff;box-shadow:0 18px 40px rgba(20,20,60,.2);font-size:13px;font-weight:600;display:flex;align-items:center;gap:10px;animation:floaty 6s 1s ease-in-out infinite}
.mock-float b{font:600 22px/1 var(--display);color:var(--accent-ink)}
.mock-q{display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:999px;border:1px solid var(--line);font-size:15px}
.mock-q .cur{width:2px;height:18px;background:var(--ink);animation:blink 1s infinite}
.res{margin-top:12px;padding:12px 14px;border-radius:10px;border:1px solid transparent}
.res small{display:block;font-size:12px;color:#1f7a3f}
.res b{display:block;font-size:15px;color:#1a0dab;margin:2px 0}
.res .st{color:var(--star);font-size:13px;letter-spacing:1px}
.res i{display:block;height:7px;border-radius:4px;background:var(--surface-200);margin-top:6px}
.res.me{border-color:var(--accent);background:#f6f2ff;animation:rise 1.2s .6s cubic-bezier(.2,.7,.2,1) both}
@keyframes rise{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:none}}
.mapbox{position:relative;height:96px;margin-top:12px;border-radius:10px;background:linear-gradient(160deg,#eef0fb,#dfe3f6);overflow:hidden}
.mapbox .pin{left:46%;top:38%}
.ai-q{align-self:flex-end;max-width:85%;padding:11px 14px;border-radius:14px 14px 4px 14px;background:var(--surface-100);font-size:14px;margin-left:auto;width:fit-content}
.ai-a{margin-top:12px;display:flex;gap:10px}
.ai-a .av{flex:none;width:30px;height:30px;border-radius:999px;background:linear-gradient(135deg,var(--h-blue),var(--accent))}
.ai-a p{font-size:14px;line-height:21px}
.ai-a mark{background:#ece6fe;color:var(--accent-ink);font-weight:600;padding:1px 4px;border-radius:4px}
.typed{overflow:hidden;white-space:nowrap;border-right:2px solid var(--ink);animation:typing 2.4s steps(40) both,caret 1s step-end infinite;display:inline-block;max-width:100%}
@keyframes typing{from{width:0}to{width:100%}}
@keyframes caret{50%{border-color:transparent}}
.src{display:flex;gap:6px;margin-top:10px;flex-wrap:wrap}
.src span{font-size:11.5px;padding:4px 9px;border-radius:999px;background:var(--surface-100);color:var(--ink-muted)}
.src span.me{background:var(--accent);color:#fff}
.ad{padding:14px;border-radius:10px;border:1px solid var(--line)}
.ad small{font-size:12px;font-weight:700}
.ad small em{font-style:normal;color:var(--ink-muted);font-weight:400}
.ad b{display:block;color:#1a0dab;font-size:16px;margin:4px 0}
.ad p{font-size:13px;color:var(--ink-muted)}
.roi{display:flex;align-items:flex-end;gap:8px;height:110px;margin-top:16px;padding:12px;border-radius:10px;background:var(--surface-100)}
.roi i{flex:1;border-radius:4px 4px 0 0;background:linear-gradient(var(--accent),var(--h-blue));transform-origin:bottom;animation:grow 1.4s cubic-bezier(.2,.7,.2,1) both}
.code{border-radius:12px;background:#17162a;color:#cfd2ff;padding:16px 18px;font:500 13px/1.7 ui-monospace,SFMono-Regular,Menlo,monospace}
.code .k{color:#b79bff}.code .s{color:#8fe3b4}.code .c{color:#7c80a8}
.code .ln{display:block;opacity:0;animation:fadeUp .5s both}
.dev-ui{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}
.dev-ui div{padding:12px;border-radius:10px;background:var(--surface-100);font-size:12px;color:var(--ink-muted)}
.dev-ui b{display:block;font:600 20px var(--display);color:var(--ink)}

/* Vorteile */
.bens{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:56px}
.ben{padding:28px;border:1px solid var(--line);border-radius:var(--r-md);background:#fff;min-height:260px;display:flex;flex-direction:column;transition:transform .45s cubic-bezier(.2,.7,.2,1),border-color .3s,box-shadow .45s}
.ben:hover{transform:translateY(-6px);border-color:var(--accent);box-shadow:0 24px 50px rgba(17,17,17,.07)}
.ben .ix{font-size:15px;color:var(--ink-muted)}
.ben .ic{width:48px;height:48px;border-radius:12px;background:#f1ecff;display:grid;place-items:center;margin-top:18px}
.ben h3{margin-top:40px;min-height:2.3em;font:600 24px/1.15 var(--display);letter-spacing:-.02em;text-wrap:balance}
.ben p{margin-top:10px;font-size:16px;line-height:25px;color:var(--ink-muted)}

/* Leistungsumfang */
.incl{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:64px;align-items:start}
.incl-l{position:sticky;top:120px}
.incl-l h2{font:600 clamp(36px,4vw,60px)/1.03 var(--display);letter-spacing:-.04em;margin-top:18px}
.incl-l p{margin:20px 0 32px;font-size:18px;line-height:28px;color:var(--ink-muted);max-width:440px}
.incl-list{border-top:1px solid var(--line)}
.incl-list li{list-style:none;display:grid;grid-template-columns:64px 1fr 32px;align-items:center;gap:12px;padding:24px 0;border-bottom:1px solid var(--line);font:500 21px/1.35 var(--sans);transition:padding .35s,color .3s}
.incl-list li:hover{padding-left:12px;color:var(--accent-ink)}
.incl-list li .n{font-size:15px;color:var(--ink-muted)}
.incl-list li svg{justify-self:end}
.incl-list{margin:0;padding:0}

/* Referenzen */
.refs{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.refs span{display:inline-flex;align-items:center;gap:10px;padding:14px 22px;border:1px solid var(--line);border-radius:999px;font:600 20px/1 var(--display);letter-spacing:-.015em;background:#fff;transition:border-color .3s,transform .3s}
.refs span:hover{border-color:var(--accent);transform:translateY(-3px)}
.refs span::before{content:"△";color:var(--accent);font-size:16px}

/* Prozess kompakt */
.steps4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:56px;counter-reset:st}
.steps4 .ptxt{min-height:300px}
.steps4 .ptxt .bar-p{height:3px;border-radius:3px;background:var(--line);margin-top:22px;overflow:hidden}
.steps4 .ptxt .bar-p i{display:block;height:100%;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform 1.2s cubic-bezier(.7,0,.2,1)}
.steps4 .ptxt.in .bar-p i{transform:scaleX(1)}

/* Trust-Band */
.trust-band{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:56px}
.tb{padding:28px;border-radius:var(--r-md);background:#fff;border:1px solid var(--line)}
.tb .v{font:600 52px/1 var(--display);letter-spacing:-.04em}
.tb p{margin-top:10px;font-size:16px;line-height:24px;color:var(--ink-muted)}
.tb.tpb{background:linear-gradient(150deg,#7b5cf0,#4a58d0);color:#fff;border:0}
.tb.tpb p{color:rgba(255,255,255,.85)}
.tb.tpb .st{color:#ffd66b;letter-spacing:2px}

/* Verwandte Leistungen / Hub-Karten */
.rel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:56px}
.rc{position:relative;display:flex;flex-direction:column;padding:28px;min-height:260px;border-radius:var(--r-md);background:#fff;border:1px solid var(--line);color:var(--ink);text-decoration:none;overflow:hidden;transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s,border-color .3s}
.rc::before{content:"";position:absolute;inset:auto -30% -60% auto;width:240px;height:240px;border-radius:999px;background:radial-gradient(circle,#e9e2ff,transparent 70%);opacity:0;transition:opacity .5s}
.rc:hover{transform:translateY(-6px);box-shadow:0 24px 50px rgba(17,17,17,.08);border-color:var(--accent);color:var(--ink)}
.rc:hover::before{opacity:1}
.rc .ix{font-size:15px;color:var(--ink-muted)}
.rc h3{position:relative;margin-top:auto;font:600 28px/1.1 var(--display);letter-spacing:-.025em}
.rc p{position:relative;margin-top:10px;font-size:15.5px;line-height:24px;color:var(--ink-muted)}
.rc .go{position:absolute;top:24px;right:24px;width:44px;height:44px;border-radius:999px;border:1px solid var(--line);display:grid;place-items:center;transition:background .3s,transform .4s,border-color .3s}
.rc:hover .go{background:var(--ink);border-color:var(--ink);transform:rotate(-45deg)}
.rc:hover .go svg{stroke:#fff}
.hub-grid{grid-template-columns:repeat(3,minmax(0,1fr))}

@media (max-width:1100px){
  .bens,.trust-band,.steps4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rel,.hub-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:800px){
  .svc-grid,.incl{grid-template-columns:minmax(0,1fr)}
  .svc-hero{padding:24px}
  .svc-hero .lead{font-size:17px;line-height:27px}
  .mock{margin-top:12px}
  .mock-float{display:none}
  .incl-l{position:static}
  .incl-list li{font-size:18px;grid-template-columns:44px 1fr 24px}
  .bens,.trust-band,.steps4,.rel,.hub-grid{grid-template-columns:minmax(0,1fr)}
  .tb .v{font-size:42px}
}
.menu .rating{border-radius:999px;color:var(--ink);transition:background .3s,color .3s,border-color .3s,transform .3s}
.menu .rating:hover{background:var(--accent);border-color:var(--accent);color:#fff}

/* Use Case */
.uc{border-radius:24px;background:var(--surface-100);padding:48px;overflow:hidden}
.uc-head{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:48px;align-items:end}
.uc-head h2{margin-top:16px;font:600 clamp(32px,3.6vw,54px)/1.04 var(--display);letter-spacing:-.04em;text-wrap:balance}
.uc-head p{margin-top:18px;font-size:18px;line-height:29px;color:var(--ink-muted);max-width:620px}
.uc-tot{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.uc-tot div{padding:16px;border-radius:var(--r-md);background:#fff}
.uc-tot b{display:block;font:600 26px/1 var(--display);letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.uc-tot span{display:block;margin-top:6px;font-size:13px;color:var(--ink-muted)}
.uc-tot small{grid-column:1/-1;font-size:13px;color:var(--ink-muted)}
.uc-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:32px;margin-top:40px;align-items:start}
.uc-kpis{display:flex;flex-direction:column;gap:14px}
.uc-row{padding:20px;border-radius:var(--r-md);background:#fff}
.uc-lab{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:14px}
.uc-lab span{font-weight:600;font-size:16px}
.uc-lab b{font:600 15px var(--sans);color:#1f7a3f;background:#e5f5eb;padding:4px 10px;border-radius:999px;white-space:nowrap}
.uc-bars{display:flex;flex-direction:column;gap:10px}
.uc-bar{display:grid;grid-template-columns:86px 1fr 56px;align-items:center;gap:10px;font-variant-numeric:tabular-nums}
.uc-bar small{font-size:12.5px;color:var(--ink-muted)}
.uc-bar span{height:12px;border-radius:999px;width:var(--w);transform-origin:left;transform:scaleX(0);transition:transform 1.4s cubic-bezier(.2,.7,.2,1)}
.uc-bar .b0{background:#cfd2dc}
.uc-bar .b1{background:linear-gradient(90deg,var(--h-blue),var(--accent));transition-delay:.25s}
.uc-row.in .uc-bar span,.no-js .uc-bar span{transform:scaleX(1)}
.uc-bar em{font:600 18px var(--display);font-style:normal;text-align:right}
.uc-note{font-size:13px;line-height:19px;color:var(--ink-muted)}
.uc-shot{margin:0;border-radius:var(--r-md);overflow:hidden;background:#fff;border:1px solid var(--line)}
.uc-shot img{width:100%;height:auto;display:block}
.uc-shot figcaption{padding:12px 16px;font-size:13px;color:var(--ink-muted);border-top:1px solid var(--line)}
@media (max-width:1100px){.uc-head,.uc-grid{grid-template-columns:minmax(0,1fr)}}
@media (max-width:800px){.uc{padding:22px}.uc-tot{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.uc-bar{grid-template-columns:76px 1fr 48px}}
.uc-side{display:flex;flex-direction:column;gap:14px}
.kw{padding:28px;border-radius:var(--r-md);background:#fff}
.kw-q{display:flex;align-items:center;gap:10px;margin-top:16px;padding:12px 18px;border:1px solid var(--line);border-radius:999px;font-size:17px}
.kw-move{display:flex;align-items:center;gap:20px;margin-top:24px;flex-wrap:wrap}
.kw-move small{display:block;font-size:13px;color:var(--ink-muted)}
.kw-move b{display:block;font:600 clamp(34px,3.6vw,52px)/1 var(--display);letter-spacing:-.04em;color:#9a9a9a;font-variant-numeric:tabular-nums}
.kw-move .now b{color:var(--accent-ink)}
.ladder{position:relative;display:grid;grid-template-columns:repeat(20,minmax(0,1fr));gap:4px;margin-top:28px}
.ladder i{height:34px;border-radius:4px;background:var(--surface-100)}
.ladder i.top{background:#e8e0ff}
.dot-rank{position:absolute;top:50%;width:22px;height:22px;margin:-11px 0 0 -11px;border-radius:999px;background:var(--accent);box-shadow:0 0 0 6px rgba(138,92,242,.2);left:97.5%;transition:left 2s cubic-bezier(.7,0,.2,1) .3s}
.kw.in .dot-rank,.no-js .dot-rank{left:5%}
.ladder-scale{display:flex;justify-content:space-between;margin-top:8px;font-size:12px;color:var(--ink-muted)}
.kw-stats{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.kws{padding:24px;border-radius:var(--r-md);background:linear-gradient(150deg,#7b5cf0,#4a58d0);color:#fff}
.kws+.kws{background:#fff;color:var(--ink)}
.kws b{display:block;font:600 44px/1 var(--display);letter-spacing:-.04em}
.kws span{display:block;margin-top:10px;font-size:15px;line-height:22px;opacity:.9}
@media (max-width:800px){.kw{padding:20px}.kw-stats{grid-template-columns:minmax(0,1fr)}.ladder{gap:2px}.ladder i{height:26px}}
.logo-wall{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;margin-top:48px}
.lw{display:grid;place-items:center;aspect-ratio:16/10;padding:24px 28px;border-radius:var(--r-md);background:#fff;border:1px solid var(--line);transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s,border-color .3s}
.lw:hover{transform:translateY(-6px);box-shadow:0 24px 50px rgba(17,17,17,.08);border-color:var(--accent)}
.lw img{max-width:100%;max-height:72px;width:auto;height:auto;object-fit:contain}
.lw.dark{background:#1c1c1e;border-color:#1c1c1e}
@media (max-width:1100px){.logo-wall{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:800px){.logo-wall{grid-template-columns:repeat(2,minmax(0,1fr))}.lw img{max-height:56px}}
.marquee-in .mlogo{display:flex;align-items:center;justify-content:center;height:112px}
.marquee-in .mlogo img{height:var(--h);width:auto;max-width:none;object-fit:contain;filter:brightness(0);opacity:.55;transition:filter .4s,opacity .4s,transform .4s}
.marquee-in .mlogo:hover img{filter:none;opacity:1;transform:scale(1.05)}
@media (max-width:800px){.marquee-in .mlogo{height:80px}.marquee-in .mlogo img{height:calc(var(--h)*.65)}}
.logo-wall{display:flex;flex-wrap:wrap;justify-content:center}
.logo-wall .lw{flex:0 0 calc((100% - 48px)/4)}
.lw.photo{padding:0;overflow:hidden;background:#2a2a2a;border-color:#2a2a2a}
.lw.photo img{width:100%;height:100%;max-height:none;object-fit:cover}
@media (max-width:1100px){.logo-wall .lw{flex-basis:calc((100% - 32px)/3)}}
@media (max-width:800px){.logo-wall .lw{flex-basis:calc((100% - 16px)/2)}}
.ms{padding:28px;border-radius:var(--r-md);background:#fff}
.ms-sub{margin-top:10px;font-size:14px;line-height:21px;color:var(--ink-muted)}
.hex{flex:none;display:grid;place-items:center;width:58px;height:52px;clip-path:polygon(25% 0,75% 0,100% 50%,75% 100%,25% 100%,0 50%);background:linear-gradient(150deg,#7b5cf0,#4a58d0);color:#fff;font:600 13px var(--display);font-variant-numeric:tabular-nums}
.hex-next{background:#ece6fe;color:var(--accent-ink)}
.ms-next{display:flex;align-items:center;gap:16px;margin-top:20px;padding:14px;border-radius:var(--r-md);border:1px dashed #cbbcf8}
.ms-next>div,.ms-list li>div{flex:1;min-width:0}
.ms-next b,.ms-list b{display:block;font-size:15px}
.ms-list{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-direction:column;gap:10px}
.ms-list li{display:flex;align-items:center;gap:16px;padding:6px 14px}
.ms-list small{display:block;font-size:13px;color:var(--ink-muted);margin-top:2px}
.ms-bar{display:block;height:6px;margin-top:8px;border-radius:999px;background:var(--surface-100);overflow:hidden}
.ms-bar i{display:block;height:100%;width:var(--w);border-radius:999px;background:linear-gradient(90deg,var(--h-blue),var(--accent));transform-origin:left;transform:scaleX(0);transition:transform 1.2s cubic-bezier(.2,.7,.2,1) .2s}
.ms.in .ms-next .ms-bar i,.ms-list li.in .ms-bar i,.no-js .ms-bar i{transform:scaleX(1)}
.hex-next+div .ms-bar i{background:repeating-linear-gradient(90deg,var(--accent) 0 10px,#a98cf6 10px 20px)}
@media (max-width:800px){.ms{padding:20px}.ms-list li{padding:6px 0}}

.marquee-in .mlogo.keep img{filter:grayscale(1) contrast(1.2);opacity:.6}
.marquee-in .mlogo.keep:hover img{filter:none;opacity:1}

/* ================= Preise ================= */
.pr-top{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:48px;align-items:end}
.pr-top h1{margin-top:24px;font:600 clamp(44px,6vw,96px)/.95 var(--display);letter-spacing:-.05em;text-wrap:balance}
.pr-top p{font-size:19px;line-height:30px;color:var(--ink-muted)}
.pr-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:72px}
.pc{display:flex;flex-direction:column;padding:32px;border-radius:16px;background:#fff;border:1px solid var(--line);transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s,border-color .3s}
.pc:hover{transform:translateY(-6px);box-shadow:0 24px 60px rgba(17,17,17,.08);border-color:var(--accent)}
.pc-head{display:flex;align-items:center;gap:14px}
.pc-ic{width:46px;height:46px;border-radius:12px;background:#f1ecff;display:grid;place-items:center;flex:none}
.pc h2{font:600 28px/1.1 var(--display);letter-spacing:-.025em}
.pc-desc{margin-top:16px;font-size:16px;line-height:25px;color:var(--ink-muted);min-height:50px}
.pc-price{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px;margin-top:28px;padding-bottom:24px;border-bottom:1px solid var(--line)}
.pc-price b{font:600 60px/1 var(--display);letter-spacing:-.045em;font-variant-numeric:tabular-nums}
.pc-price span{font-size:16px;color:var(--ink-muted)}
.pc-price em{flex-basis:100%;font-style:normal;font-weight:600;font-size:17px;color:var(--accent-ink)}
.pc-list{list-style:none;margin:24px 0 32px;padding:0;display:flex;flex-direction:column;gap:12px}
.pc-list li{position:relative;padding-left:30px;font-size:16px;line-height:23px}
.pc-list li::before{content:"";position:absolute;left:0;top:2px;width:20px;height:20px;border-radius:999px;background:#ece6fe url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235b3fd1' stroke-width='3'%3E%3Cpath d='M6 12l4 4 8-8'/%3E%3C/svg%3E") center/12px no-repeat}
.pc-cta{margin-top:auto;display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.pc-more{font-size:15px;font-weight:600;color:var(--ink);text-decoration:underline;text-underline-offset:4px}
.pc-more:hover{color:var(--accent-ink)}
.pc-feat{background:linear-gradient(160deg,#4a58d0,#7b5cf0);border-color:transparent;color:#fff}
.pc-feat .pc-ic{background:rgba(255,255,255,.18)}
.pc-feat .pc-desc,.pc-feat .pc-price span{color:rgba(255,255,255,.85)}
.pc-feat .pc-price{border-color:rgba(255,255,255,.25)}
.pc-feat .pc-list li::before{background-color:rgba(255,255,255,.9)}
.pc-feat .pc-more{color:#fff}
.pc-wide{grid-column:span 2;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px}
.pc-wide>div:first-child{display:flex;flex-direction:column}
.calc{padding:28px;border-radius:12px;background:var(--surface-100);display:flex;flex-direction:column}
.calc-lab{margin-top:16px;font-size:15px;font-weight:600}
.calc-val output{display:block;margin-top:8px;font:600 44px/1 var(--display);letter-spacing:-.035em;font-variant-numeric:tabular-nums}
.calc input[type=range]{width:100%;margin-top:18px;accent-color:#8a5cf2;height:28px;cursor:pointer}
.calc-scale{display:flex;justify-content:space-between;font-size:12px;color:var(--ink-muted)}
.calc-rows{margin:20px 0 0;display:flex;flex-direction:column;gap:10px}
.calc-rows div{display:flex;justify-content:space-between;gap:12px;font-size:16px;font-variant-numeric:tabular-nums}
.calc-rows dt{color:var(--ink-muted)}
.calc-rows dd{margin:0;font-weight:600}
.calc-rows .sum{margin-top:6px;padding-top:14px;border-top:1px solid var(--line)}
.calc-rows .sum dt{color:var(--ink);font-weight:600}
.calc-rows .sum dd{font:600 26px/1 var(--display);color:var(--accent-ink)}
.calc-note{margin-top:auto;padding-top:16px;font-size:13px;color:var(--ink-muted)}
.pr-note{margin-top:24px;font-size:14px;color:var(--ink-muted)}
.combo{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;flex-wrap:wrap;padding:48px;border-radius:24px;background:linear-gradient(135deg,#2a2f86,#4a58d0 55%,#8a5cf2);color:#fff}
.combo h2{margin-top:16px;font:600 clamp(32px,3.6vw,54px)/1.04 var(--display);letter-spacing:-.04em;max-width:16ch}
.combo p{margin-top:16px;max-width:560px;font-size:18px;line-height:28px;color:rgba(255,255,255,.88)}
@media (max-width:1100px){.pr-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pc-wide{grid-column:span 2}}
@media (max-width:800px){.pr-top,.pr-grid,.pc-wide{grid-template-columns:minmax(0,1fr)}.pc-wide{grid-column:auto}.pc{padding:24px}.pc-price b{font-size:48px}.combo{padding:28px}}
@media (max-width:800px){.ben h3{min-height:0;margin-top:28px}}

/* Google Ads: Formate + ganz oben */
.fmts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:48px}
.fmt{padding:26px;border-radius:var(--r-md);background:#fff;border:1px solid var(--line);transition:transform .45s cubic-bezier(.2,.7,.2,1),border-color .3s,box-shadow .45s}
.fmt:hover{transform:translateY(-6px);border-color:var(--accent);box-shadow:0 24px 50px rgba(17,17,17,.07)}
.fmt-ic{width:52px;height:52px;border-radius:14px;background:#f1ecff;display:grid;place-items:center}
.fmt h3{margin-top:22px;font:600 22px/1.2 var(--display);letter-spacing:-.02em}
.fmt p{margin-top:10px;font-size:15.5px;line-height:24px;color:var(--ink-muted)}
.top-ads{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:center;padding:56px;border-radius:24px;background:linear-gradient(140deg,#1f2370,#4a58d0 60%,#8a5cf2);color:#fff;overflow:hidden}
.ta-l h2{margin-top:18px;font:600 clamp(32px,3.6vw,54px)/1.04 var(--display);letter-spacing:-.04em;text-wrap:balance}
.ta-l p{margin-top:18px;font-size:18px;line-height:29px;color:rgba(255,255,255,.88);max-width:520px}
.ta-stats{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:32px}
.ta-stats div{padding:20px;border-radius:12px;background:rgba(255,255,255,.12);box-shadow:inset 0 0 0 1px rgba(255,255,255,.2)}
.ta-stats b{display:block;font:600 40px/1 var(--display);letter-spacing:-.035em}
.ta-stats span{display:block;margin-top:8px;font-size:14.5px;line-height:21px;color:rgba(255,255,255,.85)}
.serp{padding:20px;border-radius:16px;background:#fff;color:var(--ink);box-shadow:0 30px 70px rgba(10,10,50,.35);animation:floaty 7s ease-in-out infinite}
.serp-ad{position:relative;display:flex;gap:14px;margin-top:14px;padding:16px;border-radius:12px;background:#f6f2ff;box-shadow:inset 0 0 0 2px var(--accent)}
.serp-ad .pos{flex:none;width:34px;height:34px;border-radius:999px;background:var(--accent);color:#fff;display:grid;place-items:center;font:600 16px var(--display)}
.serp-ad>div{flex:1;min-width:0}
.serp-ad small{display:block;font-size:12.5px;color:var(--ink-muted)}
.serp-ad strong{display:block;margin:4px 0 8px;color:#1a0dab;font-size:16px}
.serp-ad i,.serp-row i{display:block;height:7px;border-radius:4px;background:var(--surface-200);margin-top:6px}
.serp-row{padding:12px 16px 4px 64px;opacity:.7}
.ta-metrics{margin:22px 0 0;display:flex;flex-direction:column;gap:10px}
.ta-metrics div{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr);gap:14px;padding:12px 16px;border-radius:10px;background:rgba(255,255,255,.1)}
.ta-metrics dt{font-weight:600;font-size:14.5px}
.ta-metrics dd{margin:0;font-size:14px;line-height:20px;color:rgba(255,255,255,.85)}
.logo-wall .lw{flex-basis:calc((100% - 48px)/4)}
@media (max-width:1100px){.fmts{grid-template-columns:repeat(2,minmax(0,1fr))}.top-ads{grid-template-columns:minmax(0,1fr)}}
@media (max-width:800px){.fmts{grid-template-columns:minmax(0,1fr)}.top-ads{padding:24px}.ta-stats{grid-template-columns:minmax(0,1fr)}.ta-metrics div{grid-template-columns:minmax(0,1fr);gap:4px}}
.logo-wall .lw{flex-basis:calc((100% - (var(--cols,4) - 1) * 16px) / var(--cols,4))}
@media (max-width:1100px){.logo-wall .lw{flex-basis:calc((100% - 32px)/3)}}
@media (max-width:800px){.logo-wall .lw{flex-basis:calc((100% - 16px)/2)}}
.logo-wall .lw{aspect-ratio:auto;height:150px;padding:20px 24px}
.logo-wall .lw img{max-height:60px}
.logo-wall .lw.photo{padding:0}
.logo-wall .lw.photo img{max-height:none}
@media (max-width:800px){.logo-wall .lw{height:110px}.logo-wall .lw img{max-height:44px}}
.lw-more{background:#f1ecff;border-color:#e2d8fd;text-decoration:none}
.lw-more span{font:600 24px/1.15 var(--display);letter-spacing:-.02em;color:var(--accent-ink);text-align:center}
.lw-more:hover span{color:var(--accent-ink)}

/* Use Case FamilyZone */
.fz-logo{display:grid;place-items:center;padding:20px;border-radius:var(--r-md);background:#fff;height:150px}
.fz-logo img{max-height:110px;max-width:100%}
.fz-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:32px;margin-top:40px;align-items:start}
.fz-feats{display:flex;flex-direction:column;gap:12px}
.fz-f{display:flex;gap:16px;padding:20px;border-radius:var(--r-md);background:#fff}
.fz-f h4{font:600 19px/1.25 var(--display);letter-spacing:-.015em}
.fz-f p{margin-top:6px;font-size:15px;line-height:23px;color:var(--ink-muted)}
.adm{border-radius:14px;background:#fff;box-shadow:0 30px 70px rgba(30,30,80,.14);overflow:hidden}
.adm-bar{display:flex;align-items:center;gap:6px;padding:12px 16px;background:#1c1c2e;color:#c9c9e6;font-size:12.5px}
.adm-bar i{width:9px;height:9px;border-radius:999px;background:#4a4a66}
.adm-bar span{margin-left:10px}
.adm-body{display:grid;grid-template-columns:150px minmax(0,1fr)}
.adm-nav{display:flex;flex-direction:column;gap:4px;padding:16px 12px;background:#f6f5fb;border-right:1px solid var(--line)}
.adm-nav span{padding:9px 12px;border-radius:8px;font-size:13.5px;color:var(--ink-muted)}
.adm-nav span.on{background:#ece6fe;color:var(--accent-ink);font-weight:600}
.adm-main{padding:18px;min-width:0}
.adm-head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.adm-head b{font:600 18px var(--display)}
.adm-sync{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;color:#1f7a3f;background:#e5f5eb;padding:5px 10px;border-radius:999px}
.adm-sync .dot{background:#1f9d55;animation:none;width:7px;height:7px}
.adm-gen{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:16px;padding:14px;border-radius:10px;background:linear-gradient(120deg,#4a58d0,#8a5cf2);color:#fff}
.adm-new{font-size:12.5px;opacity:.85}
.adm-code{font:600 24px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.05em;font-variant-numeric:tabular-nums}
.adm-ok{margin-left:auto;font-size:12.5px;padding:5px 10px;border-radius:999px;background:rgba(255,255,255,.18);opacity:0;transition:opacity .4s}
.adm-ok.show{opacity:1}
.adm-table{margin-top:14px;border:1px solid var(--line);border-radius:10px;overflow:hidden;font-size:13.5px}
.adm-table>div{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;padding:10px 14px;border-top:1px solid var(--line);align-items:center}
.adm-table>div:first-child{border-top:0}
.adm-table .th{background:#f6f5fb;font-weight:600;font-size:12.5px;color:var(--ink-muted)}
.chip-ok,.chip-off{justify-self:start;padding:3px 9px;border-radius:999px;font-size:12px;font-weight:600}
.chip-ok{background:#e5f5eb;color:#1f7a3f}
.chip-off{background:#f1f1f1;color:#6b6b6b}
.adm-roles{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}
.adm-roles span{padding:6px 12px;border-radius:999px;border:1px solid var(--line);font-size:12.5px}
.adm-note{padding:8px 16px 12px;font-size:12px;color:var(--ink-muted);text-align:right}
@media (max-width:1100px){.fz-grid{grid-template-columns:minmax(0,1fr)}}
@media (max-width:800px){.adm-body{grid-template-columns:minmax(0,1fr)}.adm-nav{flex-direction:row;flex-wrap:wrap;border-right:0;border-bottom:1px solid var(--line)}.adm-ok{margin-left:0}}

/* Sticky Header */
.site-head{position:sticky;top:env(safe-area-inset-top,0px);z-index:60;background:rgba(255,255,255,.88);backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px);transition:box-shadow .3s}
.site-head .topbar{transition:height .3s}
.site-head.scrolled{box-shadow:0 8px 30px rgba(17,17,17,.06)}
.site-head.scrolled .topbar{height:72px;border-bottom-color:transparent}
@media (max-width:800px){.site-head.scrolled .topbar{height:64px}}
.logo-wall--sm{margin-top:24px;justify-content:flex-start}
.logo-wall--sm .lw{height:130px;flex-basis:calc((100% - 48px)/4);max-width:calc((100% - 48px)/4)}
.lw-txt span{font:600 22px/1.2 var(--display);letter-spacing:-.02em;text-align:center;color:var(--ink)}
@media (max-width:800px){.logo-wall--sm .lw{flex-basis:calc((100% - 16px)/2);max-width:calc((100% - 16px)/2);height:100px}}
.logo-wall--sm .lw img{max-height:78px}
.foot-map{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:40px;padding:56px 0;border-top:1px solid var(--line)}
.foot-map .col{display:flex;flex-direction:column;gap:9px;font-size:15px}
.foot-map a{color:var(--ink-muted);text-decoration:none;transition:color .2s}
.foot-map a:hover{color:var(--accent-ink)}
.foot-map .fm-h{font:600 20px/1.2 var(--display);letter-spacing:-.015em;color:var(--ink);margin-bottom:6px}
.foot{grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr)}
@media (max-width:1100px){.foot-map{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:800px){.foot-map{grid-template-columns:minmax(0,1fr);gap:28px}.foot{grid-template-columns:minmax(0,1fr)}}
.ask-photo{background:#e9e9ee}.ask-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 20%;transition:transform .8s cubic-bezier(.2,.7,.2,1)}.ask:hover .ask-photo img{transform:scale(1.04)}
.trust-band{grid-template-columns:repeat(5,minmax(0,1fr))}
@media (max-width:1100px){.trust-band{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:800px){.trust-band{grid-template-columns:minmax(0,1fr)}}
.bk-legend{display:flex;gap:18px;margin-top:16px;font-size:13px;color:var(--ink-muted)}
.bk-legend span{display:inline-flex;align-items:center;gap:8px}
.bk-legend i{width:14px;height:8px;border-radius:999px}
.bk-legend i.b0{background:#cfd2dc}.bk-legend i.b1{background:linear-gradient(90deg,var(--h-blue),var(--accent))}
.bk-list{display:flex;flex-direction:column;gap:14px;margin-top:18px}
.bk-row{display:grid;grid-template-columns:110px minmax(0,1fr) 80px;gap:12px;align-items:center;font-variant-numeric:tabular-nums}
.bk-l{font-size:14px;font-weight:600}
.bk-bars{display:flex;flex-direction:column;gap:4px}
.bk-bars span{display:block;height:9px;border-radius:999px;width:var(--w);transform-origin:left;transform:scaleX(0);transition:transform 1.3s cubic-bezier(.2,.7,.2,1)}
.bk-bars .b0{background:#cfd2dc}.bk-bars .b1{background:linear-gradient(90deg,var(--h-blue),var(--accent));transition-delay:.2s}
.bk.in .bk-bars span,.no-js .bk-bars span{transform:scaleX(1)}
.bk-v{text-align:right;font-size:14px}.bk-v small{color:var(--ink-muted);font-size:13px}.bk-v b{font:600 17px var(--display)}
.bk-total{display:flex;align-items:center;gap:16px;margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}
.bk-total small{display:block;font-size:12.5px;color:var(--ink-muted)}
.bk-total b{font:600 26px/1.1 var(--display);letter-spacing:-.02em;color:#9a9a9a}
.bk-total .now b{color:var(--accent-ink)}
.hl-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.hl{padding:28px;border-radius:var(--r-md);background:#fff}
.hl:first-child{grid-column:1/-1}
.hl b{display:block;font:600 64px/1 var(--display);letter-spacing:-.045em;color:var(--accent-ink)}
.hl span{display:block;margin-top:10px;font-size:16px;line-height:24px;color:var(--ink-muted)}
.hl-dark{background:linear-gradient(140deg,#2a2f86,#4a58d0 60%,#8a5cf2)}
.hl-dark b{color:#fff;font-size:96px}.hl-dark span{color:rgba(255,255,255,.88);font-size:18px}
@media (max-width:800px){.bk-row{grid-template-columns:90px minmax(0,1fr) 64px}.hl-grid{grid-template-columns:minmax(0,1fr)}.hl-dark b{font-size:72px}}
.logo-wall .lw.sana-t{background:#000;border-color:#000;padding:6px}.logo-wall .lw.sana-t img{max-height:100%}
.logo-wall--sm .lw.dark img{max-height:96px}

/* Projektkarten mit Ergebnissen */
.card{align-items:stretch;padding:28px;height:min(80vh,600px)}
.pj{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:32px;width:100%;align-items:stretch}
.pj-l{display:flex;flex-direction:column;align-items:flex-start;gap:14px;padding:32px;border-radius:18px;background:rgba(17,17,24,.62);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);color:#fff;transition:background .3s}
.card:hover .pj-l{background:rgba(17,17,24,.8)}
.pj-logo{display:grid;place-items:center;height:64px;padding:10px 16px;border-radius:12px;background:#fff}
.pj-logo img{max-height:44px;max-width:180px;width:auto}
.pj-cat{font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.75);margin-top:6px}
.pj h3{font:600 clamp(26px,2.6vw,38px)/1.08 var(--display);letter-spacing:-.03em;text-wrap:balance}
.pj p{font-size:16px;line-height:25px;color:rgba(255,255,255,.85);max-width:520px}
.pj-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;width:100%;margin-top:auto}
.pj-kpis div{padding:12px 14px;border-radius:10px;background:rgba(255,255,255,.1);box-shadow:inset 0 0 0 1px rgba(255,255,255,.15);min-width:0}
.pj-kpis b{display:block;font:600 19px/1.15 var(--display);letter-spacing:-.01em;font-variant-numeric:tabular-nums}
.pj-kpis span{display:block;margin-top:4px;font-size:12.5px;color:rgba(255,255,255,.75)}
.pj-go{display:inline-flex;align-items:center;gap:10px;font-weight:600;font-size:14px;letter-spacing:.04em;text-transform:uppercase}
.pj-go .arr{width:26px;height:26px;border-radius:999px;background:#fff;display:grid;place-items:center;transition:transform .35s}
.pj-go .arr::before{content:"";border-left:8px solid var(--accent);border-top:5px solid transparent;border-bottom:5px solid transparent;margin-left:2px}
.card:hover .pj-go .arr{transform:rotate(-45deg)}
.pj-r{display:flex;flex-direction:column;justify-content:center;align-items:flex-end;text-align:right;color:#fff;padding-right:12px}
.pj-r b{font:600 clamp(80px,10vw,160px)/.9 var(--display);letter-spacing:-.06em;text-shadow:0 10px 40px rgba(0,0,0,.15)}
.pj-r span{margin-top:12px;font:600 22px/1 var(--display);letter-spacing:-.01em;opacity:.85}
@media (max-width:900px){.card{height:auto;min-height:0;padding:14px}.pj{grid-template-columns:minmax(0,1fr)}.pj-r{display:none}.pj-l{padding:22px}.pj-kpis{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
.menu .mh{font:600 26px/1.1 var(--display);letter-spacing:-.02em;margin:0 0 18px}
.menu .mh a{color:inherit;text-decoration:none;transition:color .2s}
.menu .mh a:hover{color:var(--accent-ink)}
.fz-f h3{font:600 19px/1.25 var(--display);letter-spacing:-.015em}
.skip{position:absolute;left:16px;top:-60px;z-index:200;padding:10px 16px;border-radius:8px;background:var(--ink);color:#fff;text-decoration:none;font-weight:600}
.skip:focus{top:16px;color:#fff}
.tgs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:40px}
.tg{padding:24px;border-radius:var(--r-md);background:#fff;border:1px solid var(--line)}
.tg h3{font:600 18px/1.2 var(--display);letter-spacing:-.01em}
.tg-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.tg-chips span{padding:7px 12px;border-radius:999px;background:var(--surface-100);font-size:14px;transition:background .25s,color .25s}
.tg-chips span:hover{background:#ece6fe;color:var(--accent-ink)}
.fls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:40px}
.fl{padding:30px;border-radius:var(--r-md);border:1px solid var(--line);background:#fff;transition:border-color .3s,transform .4s}
.fl:hover{border-color:var(--accent);transform:translateY(-4px)}
.fl-ix{font-size:15px;color:var(--ink-muted)}
.fl h3{margin-top:14px;font:600 26px/1.15 var(--display);letter-spacing:-.02em}
.fl p{margin-top:10px;font-size:16px;line-height:25px;color:var(--ink-muted)}
.fl-steps{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:20px}
.fl-step{padding:9px 13px;border-radius:10px;background:#f1ecff;color:var(--accent-ink);font-size:14px;font-weight:600}
.fl-arrow{color:var(--accent);font-weight:700}
.auto-why{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:center;padding:48px;border-radius:24px;background:linear-gradient(140deg,#2a2f86,#4a58d0 60%,#8a5cf2);color:#fff}
.auto-why h2{margin-top:16px;font:600 clamp(30px,3.4vw,48px)/1.06 var(--display);letter-spacing:-.035em;text-wrap:balance}
.auto-why ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:12px}
.auto-why li{position:relative;padding:14px 16px 14px 46px;border-radius:12px;background:rgba(255,255,255,.12);font-size:16px;line-height:24px}
.auto-why li::before{content:"✓";position:absolute;left:16px;top:13px;width:20px;height:20px;border-radius:999px;background:#fff;color:var(--accent-ink);display:grid;place-items:center;font-size:12px;font-weight:700}
@media (max-width:1100px){.tgs{grid-template-columns:repeat(2,minmax(0,1fr))}.auto-why{grid-template-columns:minmax(0,1fr)}}
@media (max-width:800px){.tgs,.fls{grid-template-columns:minmax(0,1fr)}.auto-why{padding:24px}}

/* ---------- Hivebee AI ---------- */
.hbm{display:flex;flex-direction:column;gap:14px}
.hbm-q{display:flex;align-items:center;gap:10px;padding:14px 16px;border-radius:14px;background:#fff;box-shadow:0 0 0 2px var(--accent);font-size:15px;color:var(--ink)}
.hbm-bee{font-size:20px}
.hbm-res{display:flex;flex-direction:column;gap:10px}
.hbm-p{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:12px;background:#fff;box-shadow:0 8px 24px rgba(30,30,80,.08);animation:hbIn .6s both}
.hbm-p:nth-child(2){animation-delay:.25s}.hbm-p:nth-child(3){animation-delay:.5s}
.hbm-p i{flex:none;width:44px;height:44px;border-radius:10px;background:linear-gradient(135deg,#e2d8ff,#b9a3ff)}
.hbm-p div{flex:1;min-width:0;display:flex;flex-direction:column}
.hbm-p b{font:600 15px/1.2 var(--display);color:var(--ink)}
.hbm-p small{font-size:12.5px;color:var(--ink-muted);margin-top:3px}
.hbm-p>span{font-size:12px;padding:4px 9px;border-radius:99px;background:var(--surface-100);color:var(--accent-ink);white-space:nowrap}
@keyframes hbIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.hb-band{align-items:center}
.hb-kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.hb-k{padding:22px;border-radius:14px;background:rgba(255,255,255,.1);box-shadow:inset 0 0 0 1px rgba(255,255,255,.18);color:#fff}
.hb-k b{display:block;font:600 clamp(30px,3vw,42px)/1 var(--display);letter-spacing:-.03em}
.hb-k span{display:block;margin-top:8px;font-size:14.5px;line-height:21px;color:rgba(255,255,255,.8)}
.hb-steps .fl{min-height:0}
.hb-modes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:48px}
.hb-mode{padding:24px;border-radius:var(--r-md);background:#fff}
.hb-mode h3{margin-top:22px;font:600 24px/1.2 var(--display);letter-spacing:-.02em}
.hb-mode p{margin-top:8px;font-size:16px;line-height:25px;color:var(--ink-muted)}
.hb-shot{position:relative;height:230px;border-radius:14px;background:linear-gradient(135deg,#f1edff,#e7f3ff);overflow:hidden;padding:18px}
.hb-page{display:flex;flex-direction:column;gap:10px}
.hb-page i{height:12px;border-radius:6px;background:rgba(30,30,80,.08);width:85%}
.hb-pop{position:absolute;right:18px;bottom:70px;width:min(260px,78%);padding:14px;border-radius:14px;background:#fff;box-shadow:0 18px 40px rgba(30,30,80,.16);display:flex;flex-direction:column;gap:8px;font-size:13px}
.hb-pop b{font:600 14px/1.2 var(--display)}
.hb-pop span{padding:8px 10px;border-radius:9px;background:var(--surface-100);color:var(--ink)}
.hb-pop em{height:8px;border-radius:4px;background:rgba(138,92,242,.25);width:90%}
.hb-fab{position:absolute;right:18px;bottom:16px;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--accent);font-size:20px;box-shadow:0 10px 24px rgba(138,92,242,.45)}
.hb-bar{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:12px;background:#fff;box-shadow:0 8px 24px rgba(30,30,80,.08);font-size:13px}
.hb-bar span{font:600 14px var(--display);white-space:nowrap}
.hb-bar div{flex:1;min-width:0;padding:8px 10px;border-radius:9px;box-shadow:0 0 0 2px var(--accent);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hb-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:16px}
.hb-grid i{height:120px;border-radius:12px;background:#fff;box-shadow:0 8px 24px rgba(30,30,80,.06)}
.hb-cta{text-align:center;padding:64px 32px;border-radius:24px;background:var(--surface-100);display:flex;flex-direction:column;align-items:center;gap:16px}
.hb-logo{font-size:44px}
.hb-cta h2{font:600 clamp(32px,4vw,56px)/1.05 var(--display);letter-spacing:-.035em;text-wrap:balance}
.hb-cta p{max-width:560px;font-size:18px;line-height:28px;color:var(--ink-muted)}
@media (max-width:900px){.hb-modes,.hb-kpis{grid-template-columns:minmax(0,1fr)}}

/* ---------- Case Studies ---------- */
.csg{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:48px}
.csg--home{margin-top:48px}
.csc{color:inherit;text-decoration:none;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:18px;background:#fff;overflow:hidden;transition:box-shadow .3s,transform .4s}
.csc:hover{box-shadow:0 24px 60px rgba(17,17,17,.08);transform:translateY(-4px)}
.csc-vis{position:relative;height:220px;display:grid;place-items:center;overflow:hidden;margin:12px 12px 0;border-radius:12px}
.csc-logo{position:relative;display:grid;place-items:center;height:84px;min-width:180px;padding:14px 26px;border-radius:14px;background:#fff;box-shadow:0 14px 40px rgba(20,20,60,.18)}
.csc-logo img{max-height:56px;max-width:200px;width:auto}
.csc-logo.is-dark,.cs-logo.is-dark{background:#15151c}
.cs-word{display:flex;align-items:center;gap:10px;font:600 26px/1 var(--display);letter-spacing:-.02em;color:var(--ink)}
.csc-body{display:flex;flex-direction:column;gap:12px;padding:26px 28px 28px;flex:1}
.csc-body h3{font:600 26px/1.15 var(--display);letter-spacing:-.025em;text-wrap:balance}
.csc-body p{font-size:16px;line-height:25px;color:var(--ink-muted)}
.csc-k{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:auto;padding-top:10px}
.csc-k div{padding:12px;border-radius:10px;background:var(--surface-100);min-width:0}
.csc-k b{display:block;font:600 19px/1.1 var(--display);letter-spacing:-.02em;overflow-wrap:anywhere}
.csc-k span{display:block;margin-top:5px;font-size:12.5px;line-height:17px;color:var(--ink-muted)}
.csc-go{display:inline-flex;align-items:center;gap:10px;margin-top:6px;font:600 13px/1 var(--body);letter-spacing:.08em;text-transform:uppercase;color:var(--ink)}
.cs-hero-r{display:flex;flex-direction:column;align-items:flex-start;gap:18px}
.cs-logo{display:grid;place-items:center;height:92px;padding:16px 28px;border-radius:16px;background:#fff;box-shadow:0 18px 50px rgba(20,20,60,.2)}
.cs-logo img{max-height:60px;max-width:220px;width:auto}
.cs-ks{display:grid;gap:10px;width:100%}
.cs-k{display:flex;align-items:baseline;gap:16px;padding:18px 22px;border-radius:14px;background:rgba(255,255,255,.14);box-shadow:inset 0 0 0 1px rgba(255,255,255,.25);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#fff}
.cs-k b{font:600 clamp(26px,2.6vw,36px)/1 var(--display);letter-spacing:-.03em;white-space:nowrap}
.cs-k span{font-size:15px;line-height:21px;color:rgba(255,255,255,.85)}
.cs-facts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border:1px solid var(--line);border-radius:16px;background:#fff}
.cs-facts div{padding:22px 24px;border-left:1px solid var(--line);min-width:0}
.cs-facts div:first-child{border-left:0}
.cs-facts dt{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted)}
.cs-facts dd{margin-top:8px;font:600 17px/1.3 var(--display);letter-spacing:-.01em}
.cs-two{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:48px;align-items:start}
.cs-two h2{margin-top:14px;font:600 clamp(36px,4vw,56px)/1.05 var(--display);letter-spacing:-.035em}
.cs-txt p{font-size:19px;line-height:31px;color:var(--ink-muted)}
.cs-goal{margin-top:22px;padding:22px 24px;border-radius:14px;background:var(--surface-100);color:var(--ink)!important}
.cs-steps{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:48px;padding:0}
.cs-steps li{display:flex;gap:18px;padding:26px;border-radius:var(--r-md);background:#fff}
.cs-n{flex:none;font-size:14px;color:var(--accent-ink);padding-top:4px}
.cs-steps h3{font:600 21px/1.25 var(--display);letter-spacing:-.015em}
.cs-steps p{margin-top:8px;font-size:16px;line-height:25px;color:var(--ink-muted)}
.cs-fz p{font-size:18px;line-height:29px;color:rgba(255,255,255,.9)}
.cs-fz .svc-actions{margin-top:24px}
.cs-nav{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}
.cs-nav a{padding:10px 18px;border-radius:99px;background:rgba(255,255,255,.16);box-shadow:inset 0 0 0 1px rgba(255,255,255,.3);color:#fff;font-size:15px;transition:background .2s}
.cs-nav a:hover{background:rgba(255,255,255,.3)}
@media (max-width:1100px){.cs-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.cs-facts div{border-left:0;border-top:1px solid var(--line)}.cs-facts div:nth-child(-n+2){border-top:0}.cs-facts div:nth-child(even){border-left:1px solid var(--line)}}
@media (max-width:900px){.csg,.cs-steps,.cs-two{grid-template-columns:minmax(0,1fr)}.cs-two{gap:20px}}
@media (max-width:520px){.csc-k{grid-template-columns:minmax(0,1fr)}.cs-facts{grid-template-columns:minmax(0,1fr)}.cs-facts div,.cs-facts div:nth-child(even){border-left:0}.cs-facts div:nth-child(2){border-top:1px solid var(--line)}.cs-k{flex-direction:column;gap:6px}}
.cs-logo.cs-word,.csc-logo.cs-word{display:flex}
.cs-facts dd{margin-left:0}.cs-facts{margin:0}
.menu .mi-ic{display:inline-flex;align-items:center;gap:9px}
.menu .mi-ic img{width:20px;height:auto;flex:none}
.hbm-bee{width:24px;height:auto;flex:none}
.hb-pop b{display:flex;align-items:center;gap:7px}
.hb-pop b img{width:18px;height:auto}
.hb-fab{background:#FFE01B!important;box-shadow:0 10px 24px rgba(30,30,10,.25)!important}
.hb-fab img{width:24px;height:auto}
.hb-logo{display:grid;place-items:center;padding:18px 28px;border-radius:16px;background:#FFE01B}
.hb-logo img{width:218px;height:auto}
.hb-mark{display:inline-grid;place-items:center;padding:12px 18px;border-radius:12px;background:#FFE01B}
.hb-mark img{width:175px;height:auto}
.is-yellow{background:#FFE01B!important}
.csc-logo.is-yellow img,.cs-logo.is-yellow img{max-height:44px}
.hb-mark{display:grid;width:max-content;margin-bottom:4px}
.hb-band .label{display:flex}
.menu .mi-ic img{width:22px}
.pj-r b.pj-sm{font-size:clamp(56px,6.4vw,104px);letter-spacing:-.03em;white-space:nowrap}

/* ---------- Nach oben ---------- */
.to-top{position:fixed;right:24px;bottom:24px;z-index:60;width:56px;height:56px;border:0;border-radius:50%;padding:0;display:grid;place-items:center;cursor:pointer;color:#fff;background:var(--ink,#111);box-shadow:0 14px 34px rgba(30,20,80,.28);opacity:0;visibility:hidden;transform:translateY(24px) scale(.8);transition:opacity .35s,transform .45s cubic-bezier(.2,.9,.3,1.3),visibility .35s,background .25s}
.to-top.show{opacity:1;visibility:visible;transform:none}
.to-top:hover{background:var(--accent-ink)}
.to-top:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.tt-ring{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}
.tt-ring circle{fill:none;stroke:rgba(255,255,255,.18);stroke-width:2.5}
.tt-ring .tt-prog{stroke:var(--accent);stroke-linecap:round;stroke-dasharray:157.08;stroke-dashoffset:157.08;transition:stroke-dashoffset .15s linear}
.tt-arr{position:relative;transition:transform .3s}
.to-top:hover .tt-arr{animation:ttBounce .9s ease-in-out infinite}
.to-top.fly .tt-arr{animation:ttFly .6s cubic-bezier(.5,0,.3,1) forwards}
@keyframes ttBounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@keyframes ttFly{0%{transform:translateY(0);opacity:1}45%{transform:translateY(-26px);opacity:0}46%{transform:translateY(22px);opacity:0}100%{transform:translateY(0);opacity:1}}
@media (max-width:600px){.to-top{right:16px;bottom:16px;width:50px;height:50px}}
@media (prefers-reduced-motion:reduce){.to-top,.tt-arr,.tt-ring .tt-prog{transition:none!important;animation:none!important}}
.lw img[src*="bauquartier"]{max-width:72%!important}
.lw img[src*="ariba"]{max-width:60%!important}.lw img[src*="boxenstopp"]{max-height:96px!important}

/* ---------- Footer-Wortmarke: Sichtbarkeits-Scan ---------- */
.foot-mark .fm-t{display:inline-block;color:transparent;background:linear-gradient(100deg,var(--surface-200) 0%,var(--surface-200) 38%,#b9a3ff 46%,var(--accent) 50%,#6f8cff 54%,var(--surface-200) 62%,var(--surface-200) 100%);background-size:300% 100%;background-position:100% 0;-webkit-background-clip:text;background-clip:text;clip-path:inset(0 100% 0 0);padding-right:.04em}
.foot-mark.in .fm-t{animation:fmReveal 1.6s .2s cubic-bezier(.6,0,.2,1) forwards,fmScan 7s 1.8s ease-in-out infinite}
@keyframes fmReveal{0%{clip-path:inset(0 100% 0 0);background-position:100% 0}100%{clip-path:inset(0 -2% 0 0);background-position:0 0}}
@keyframes fmScan{0%{background-position:0 0}10%{background-position:100% 0}60%,100%{background-position:-50% 0}}
@media (prefers-reduced-motion:reduce){.foot-mark .fm-t{animation:none!important;clip-path:none;color:var(--surface-200);background:none}}

/* ---------- Über uns: Wort-für-Wort sichtbar ---------- */
.about h2 .sw{color:#d4d4d8;transition:color .35s ease}
.about h2 .sw.on{color:var(--ink)}
.about h2 em .sw.on{color:#8a8a92}
.about h2 em .sw.on.swh{color:var(--accent-ink)}
.dot.dot--busy{background:#f59e0b!important;box-shadow:0 0 0 4px rgba(245,158,11,.18)!important}
h1,h2,h3{overflow-wrap:break-word}@media (max-width:600px){h1,h2,h3{hyphens:auto;-webkit-hyphens:auto}}
@media (max-width:600px){.sechead h2{min-width:0;max-width:100%}.fq{grid-template-columns:44px minmax(0,1fr) 32px;gap:10px}.fq .q{overflow-wrap:break-word;hyphens:auto}}

/* ---------- Danke-Seite ---------- */
.ty-hero{min-height:0}
.ty-grid{position:relative;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:56px;align-items:center}
.ty-check{display:block;width:64px;height:64px;margin-bottom:22px}
.ty-check svg{width:100%;height:100%;fill:none;stroke:#fff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.ty-check circle{stroke-dasharray:151;stroke-dashoffset:151;animation:tyDraw .9s .3s cubic-bezier(.6,0,.2,1) forwards}
.ty-check path{stroke-dasharray:40;stroke-dashoffset:40;animation:tyDraw .5s 1.1s cubic-bezier(.6,0,.2,1) forwards}
@keyframes tyDraw{to{stroke-dashoffset:0}}
.ty-card{padding:28px;border-radius:20px;background:rgba(255,255,255,.94);color:var(--ink);box-shadow:0 30px 80px rgba(20,20,60,.25)}
.ty-sl{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted)}
.ty-steps{list-style:none;padding:0;margin:16px 0 0;display:grid;gap:4px}
.ty-steps li{position:relative;display:flex;gap:14px;padding:14px 0}
.ty-steps li+li::before{content:"";position:absolute;left:17px;top:-12px;height:24px;width:2px;background:var(--line)}
.ty-n{flex:none;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--surface-100);font:600 15px/1 var(--display);color:var(--ink-muted)}
.ty-steps .done .ty-n{background:#1f9d55;color:#fff}
.ty-steps .now .ty-n{background:var(--accent);color:#fff;animation:tyPulse 2s ease-in-out infinite}
@keyframes tyPulse{0%,100%{box-shadow:0 0 0 0 rgba(138,92,242,.45)}50%{box-shadow:0 0 0 9px rgba(138,92,242,0)}}
.ty-steps b{display:block;font:600 17px/1.25 var(--display)}
.ty-steps small{display:block;margin-top:4px;font-size:14px;line-height:21px;color:var(--ink-muted)}
@media (max-width:900px){.ty-grid{grid-template-columns:minmax(0,1fr);gap:28px}}

/* ---------- Menü responsive ---------- */
.menu .mtog{display:none}
.menu .m-cta{display:none}
@media (max-width:900px){
  .menu{max-height:100vh;max-height:100dvh;height:100dvh;border-radius:0;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding-bottom:28px}
  .overlay.open .menu{clip-path:inset(0 0 0 0)}
  .menu-top{position:sticky;top:0;z-index:2;background:#fff;height:68px;margin:0 0 6px}
  .menu-cols{display:flex;flex-direction:column;gap:0}
  .menu .mcol{border-bottom:1px solid var(--line)}
  .menu .mh{display:flex;align-items:center;justify-content:space-between;margin:0;padding:16px 0;font-size:22px}
  .menu .mtog{display:grid;place-items:center;flex:none;width:44px;height:44px;margin-right:0;border:0;border-radius:50%;background:var(--surface-100);cursor:pointer}
  .menu .mtog span{position:relative;width:14px;height:14px}
  .menu .mtog span::before,.menu .mtog span::after{content:"";position:absolute;left:0;top:6px;width:14px;height:2px;border-radius:2px;background:var(--ink);transition:transform .3s}
  .menu .mtog span::after{transform:rotate(90deg)}
  .menu .mcol.open .mtog{background:var(--accent);}
  .menu .mcol.open .mtog span::before,.menu .mcol.open .mtog span::after{background:#fff}
  .menu .mcol.open .mtog span::after{transform:rotate(0)}
  .menu .mlist{max-height:0;overflow:hidden;transition:max-height .45s cubic-bezier(.2,.7,.2,1)}
  .menu .mlist .mi{padding:11px 0 11px 2px;font-size:16.5px}
  .menu .mlist .mi:last-child{margin-bottom:14px}
  .menu .mi:hover{padding-left:2px}
  .menu .m-agency{padding-top:22px;gap:6px!important}
  .menu .m-agency .mi{padding:9px 0;font-size:17px}
  .menu .m-agency .label{margin-bottom:4px}
  .menu .m-cta-tile{display:none!important}
  .menu .m-cta{display:flex;justify-content:space-between;width:100%;margin-top:24px;box-sizing:border-box}
  .menu-foot{flex-direction:column;gap:10px;margin-top:20px;padding-top:18px;font-size:14.5px}
  .menu-cols>div,.menu-foot{transform:translateY(-10px)}
}
.menu a.is-cur{color:var(--accent-ink)!important;font-weight:600}
.foot-mark{overflow:hidden;max-width:100%}
.pc-more{display:inline-flex;align-items:center;min-height:44px}
.dots button{position:relative}.dots button::after{content:"";position:absolute;inset:-14px -6px}
.v-row{padding:8px 12px}
.v-row small{line-height:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.v-me .st{display:block;line-height:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.v-me b{margin:1px 0;line-height:18px}

.lg{max-width:820px;margin-top:64px;border-top:1px solid var(--line)}
.lg-sec{padding:36px 0;border-bottom:1px solid var(--line)}
.lg-sec h2{font:600 26px/1.2 var(--display);letter-spacing:-.02em;margin-bottom:14px}
.lg-sec p{font-size:17px;line-height:28px;color:var(--ink-muted)}
.lg-sec p+p{margin-top:10px}
.lg-sec .todo{display:inline-block;padding:2px 8px;border-radius:4px;background:#fff4d6;color:#7a5600;font-size:15px}

/* ---------- Animierte Hero-Visuals ---------- */
@keyframes vTypA{0%,4%{clip-path:inset(0 100% 0 0)}22%,90%{clip-path:inset(0 0 0 0)}94%,100%{clip-path:inset(0 100% 0 0)}}
@keyframes vList{0%,24%{opacity:0;transform:translateY(14px)}28%,90%{opacity:1;transform:none}93%,100%{opacity:0;transform:translateY(-4px)}}
@keyframes vF1{0%,58%{opacity:0;transform:translateY(10px) scale(.9)}62%,90%{opacity:1;transform:none}93%,100%{opacity:0;transform:translateY(-4px)}}
@keyframes vUp{0%,52%{opacity:0;transform:translateY(6px)}56%,90%{opacity:1;transform:none}93%,100%{opacity:0;transform:translateY(-4px)}}
@keyframes vR1{0%,38%{transform:translateY(0px)}54%,100%{transform:translateY(66px)}}
@keyframes vR2{0%,38%{transform:translateY(66px)}54%,100%{transform:translateY(132px)}}
@keyframes vR3{0%,38%{transform:translateY(132px)}54%,100%{transform:translateY(198px)}}
@keyframes vRme{0%,38%{transform:translateY(198px)}54%,100%{transform:translateY(0px)}}
@keyframes vP4{0%,46%{opacity:1}50%,100%{opacity:0}}@keyframes vP1{0%,46%{opacity:0}50%,100%{opacity:1}}
@keyframes vGlow{0%,50%{box-shadow:0 0 0 0 rgba(138,92,242,0)}60%{box-shadow:0 0 0 8px rgba(138,92,242,.18)}75%,100%{box-shadow:0 0 0 0 rgba(138,92,242,0)}}
@keyframes vDraw{0%,56%{stroke-dashoffset:120}80%,100%{stroke-dashoffset:0}}
@keyframes vTypB{0%,4%{clip-path:inset(0 100% 0 0)}20%,90%{clip-path:inset(0 0 0 0)}94%,100%{clip-path:inset(0 100% 0 0)}}
@keyframes vPinA{0%,22%{opacity:0;transform:translateY(-14px)}26%,90%{opacity:1;transform:none}93%,100%{opacity:0;transform:translateY(-4px)}}
@keyframes vPinB{0%,25%{opacity:0;transform:translateY(-14px)}29%,90%{opacity:1;transform:none}93%,100%{opacity:0;transform:translateY(-4px)}}
@keyframes vPinC{0%,28%{opacity:0;transform:translateY(-14px)}32%,90%{opacity:1;transform:none}93%,100%{opacity:0;transform:translateY(-4px)}}
@keyframes vDrop{0%,34%{opacity:0;transform:translate(-50%,-60px) rotate(-45deg)}40%{opacity:1;transform:translate(-50%,4px) rotate(-45deg)}44%{transform:translate(-50%,-6px) rotate(-45deg)}48%,90%{opacity:1;transform:translate(-50%,0) rotate(-45deg)}94%,100%{opacity:0;transform:translate(-50%,0) rotate(-45deg)}}
@keyframes vRing{0%,46%{opacity:0;transform:translate(-50%,-50%) scale(.3)}50%{opacity:.9}70%,100%{opacity:0;transform:translate(-50%,-50%) scale(2.6)}}
@keyframes vCard{0%,50%{opacity:0;transform:translateY(16px)}54%,90%{opacity:1;transform:none}93%,100%{opacity:0;transform:translateY(-4px)}}
@keyframes vF2{0%,60%{opacity:0;transform:translateY(10px) scale(.9)}64%,90%{opacity:1;transform:none}93%,100%{opacity:0;transform:translateY(-4px)}}
@keyframes vTab0{0%,0%{background:rgba(17,17,24,.05);color:#5c5c5c}1%,24%{background:#111118;color:#fff}25%,100%{background:rgba(17,17,24,.05);color:#5c5c5c}}
@keyframes vPan0{0%,0%{opacity:0;transform:translateY(10px)}3%,23%{opacity:1;transform:none}25%,100%{opacity:0;transform:translateY(-6px)}}
@keyframes vCnt0{0%,0%{opacity:0}1%,24%{opacity:1}25%,100%{opacity:0}}
@keyframes vTab1{0%,24.99%{background:rgba(17,17,24,.05);color:#5c5c5c}26%,49%{background:#111118;color:#fff}50%,100%{background:rgba(17,17,24,.05);color:#5c5c5c}}
@keyframes vPan1{0%,25%{opacity:0;transform:translateY(10px)}28%,48%{opacity:1;transform:none}50%,100%{opacity:0;transform:translateY(-6px)}}
@keyframes vCnt1{0%,24.99%{opacity:0}26%,49%{opacity:1}50%,100%{opacity:0}}
@keyframes vTab2{0%,49.99%{background:rgba(17,17,24,.05);color:#5c5c5c}51%,74%{background:#111118;color:#fff}75%,100%{background:rgba(17,17,24,.05);color:#5c5c5c}}
@keyframes vPan2{0%,50%{opacity:0;transform:translateY(10px)}53%,73%{opacity:1;transform:none}75%,100%{opacity:0;transform:translateY(-6px)}}
@keyframes vCnt2{0%,49.99%{opacity:0}51%,74%{opacity:1}75%,100%{opacity:0}}
@keyframes vTab3{0%,74.99%{background:rgba(17,17,24,.05);color:#5c5c5c}76%,99%{background:#111118;color:#fff}100%,100%{background:rgba(17,17,24,.05);color:#5c5c5c}}
@keyframes vPan3{0%,75%{opacity:0;transform:translateY(10px)}78%,98%{opacity:1;transform:none}100%,100%{opacity:0;transform:translateY(-6px)}}
@keyframes vCnt3{0%,74.99%{opacity:0}76%,99%{opacity:1}100%,100%{opacity:0}}
@keyframes vGrow{0%{width:0}25%{width:25%}50%{width:50%}75%{width:75%}98%{width:100%}100%{width:0}}
@keyframes vQ{0%,3%{opacity:0;transform:translateY(10px)}7%,90%{opacity:1;transform:none}93%,100%{opacity:0;transform:translateY(-4px)}}
@keyframes vDots{0%,10%{opacity:0}13%,24%{opacity:1}27%,100%{opacity:0}}
@keyframes vL1{0%,26%{opacity:0;transform:translateY(8px)}30%,90%{opacity:1;transform:none}93%,100%{opacity:0;transform:translateY(-4px)}}
@keyframes vL2{0%,33%{opacity:0;transform:translateY(8px)}37%,90%{opacity:1;transform:none}93%,100%{opacity:0;transform:translateY(-4px)}}
@keyframes vL3{0%,40%{opacity:0;transform:translateY(8px)}44%,90%{opacity:1;transform:none}93%,100%{opacity:0;transform:translateY(-4px)}}
@keyframes vL4{0%,47%{opacity:0;transform:translateY(8px)}51%,90%{opacity:1;transform:none}93%,100%{opacity:0;transform:translateY(-4px)}}
@keyframes vSrc{0%,55%{opacity:0;transform:translateY(6px)}59%,90%{opacity:1;transform:none}93%,100%{opacity:0;transform:translateY(-4px)}}
@keyframes vF3{0%,60%{opacity:0;transform:translateY(10px) scale(.9)}64%,90%{opacity:1;transform:none}93%,100%{opacity:0;transform:translateY(-4px)}}
@keyframes vBounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@keyframes vShim{0%,10%{opacity:0}13%,26%{opacity:1}29%,100%{opacity:0}}@keyframes vShimMove{0%{background-position:200% 0}100%{background-position:-200% 0}}
@keyframes vSpin{to{transform:rotate(360deg)}}
@keyframes vTypC{0%,3%{clip-path:inset(0 100% 0 0)}18%,90%{clip-path:inset(0 0 0 0)}94%,100%{clip-path:inset(0 100% 0 0)}}
@keyframes vAO{0%,20%{opacity:0;transform:translateY(8px)}24%,90%{opacity:1;transform:none}93%,100%{opacity:0;transform:translateY(-4px)}}
@keyframes vShim2{0%,20%{opacity:0}22%,32%{opacity:1}34%,100%{opacity:0}}
@keyframes vAOt{0%,33%{opacity:0;transform:translateY(6px)}37%,90%{opacity:1;transform:none}93%,100%{opacity:0;transform:translateY(-4px)}}
@keyframes vC1{0%,42%{opacity:0;transform:translateY(10px)}46%,90%{opacity:1;transform:none}93%,100%{opacity:0;transform:translateY(-4px)}}
@keyframes vC2{0%,45%{opacity:0;transform:translateY(10px)}49%,90%{opacity:1;transform:none}93%,100%{opacity:0;transform:translateY(-4px)}}
@keyframes vC3{0%,48%{opacity:0;transform:translateY(10px)}52%,90%{opacity:1;transform:none}93%,100%{opacity:0;transform:translateY(-4px)}}
@keyframes vOrg{0%,54%{opacity:0;transform:translateY(8px)}58%,90%{opacity:1;transform:none}93%,100%{opacity:0;transform:translateY(-4px)}}
@keyframes vListen{0%,4%{opacity:0}6%,30%{opacity:1}33%,100%{opacity:.25}}
@keyframes vWave{0%,100%{transform:scaleY(.25)}50%{transform:scaleY(1)}}
@keyframes vPulse{0%{transform:scale(1);opacity:.55}100%{transform:scale(1.9);opacity:0}}
@keyframes vTypD{0%,6%{clip-path:inset(0 100% 0 0)}28%,90%{clip-path:inset(0 0 0 0)}94%,100%{clip-path:inset(0 100% 0 0)}}
@keyframes vSn{0%,34%{opacity:0;transform:translateY(14px)}38%,90%{opacity:1;transform:none}93%,100%{opacity:0;transform:translateY(-4px)}}
@keyframes vSpk{0%,50%{opacity:0;transform:translateY(8px)}54%,90%{opacity:1;transform:none}93%,100%{opacity:0;transform:translateY(-4px)}}
@keyframes vF4{0%,58%{opacity:0;transform:translateY(10px) scale(.9)}62%,90%{opacity:1;transform:none}93%,100%{opacity:0;transform:translateY(-4px)}}
.vx{min-height:0}
.vx .v-type{display:inline-block;white-space:nowrap;overflow:hidden;animation:vTypA 11s steps(24,end) infinite}
.vx .v-tb{animation-name:vTypB}.vx .v-tc{animation-name:vTypC}.vx .v-td{animation-name:vTypD;white-space:normal}
.v-seo .v-list{position:relative;height:256px;margin-top:14px;animation:vList 11s cubic-bezier(.2,.7,.2,1) infinite}
.v-row{position:absolute;left:0;right:0;top:0;height:58px;display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:12px;border:1px solid var(--line);background:#fff;box-sizing:border-box}
.v-row small{display:block;font-size:12px;color:#1f7a3f}
.v-row i{display:block;height:6px;border-radius:4px;background:var(--surface-200);margin-top:6px}
.v-row>div{flex:1;min-width:0}
.v-dot{flex:none;width:26px;height:26px;border-radius:8px;background:var(--surface-100)}
.v-r1{transform:translateY(66px);animation:vR1 11s cubic-bezier(.2,.7,.2,1) infinite}.v-r2{transform:translateY(132px);animation:vR2 11s cubic-bezier(.2,.7,.2,1) infinite}.v-r3{transform:translateY(198px);animation:vR3 11s cubic-bezier(.2,.7,.2,1) infinite}
.v-me{z-index:2;border-color:var(--accent);background:#f6f2ff;animation:vRme 11s cubic-bezier(.2,.7,.2,1) infinite,vGlow 11s infinite}
.v-me b{display:block;font-size:14.5px;color:#1a0dab;margin:2px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.v-me .st{color:var(--star);font-size:12px;letter-spacing:1px}.v-me .st span,.v-pcard .st span,.v-place .st span{color:var(--ink-muted);letter-spacing:0;margin-left:4px}
.v-pos{position:relative;flex:none;width:26px;height:26px;border-radius:8px;background:var(--accent);color:#fff;font:700 14px/26px var(--display);text-align:center}
.v-pos em{position:absolute;inset:0;font-style:normal}.v-pos .p4{opacity:0;animation:vP4 11s cubic-bezier(.2,.7,.2,1) infinite}.v-pos .p1{animation:vP1 11s cubic-bezier(.2,.7,.2,1) infinite}
.v-up{flex:none;font-size:12px;font-weight:700;color:#1f9d55;background:#e7f7ee;padding:4px 8px;border-radius:999px;animation:vUp 11s cubic-bezier(.2,.7,.2,1) infinite}
.v-f1{animation:vF1 11s cubic-bezier(.2,.7,.2,1) infinite}.v-spark{stroke-dasharray:120;stroke-dashoffset:0;animation:vDraw 11s cubic-bezier(.2,.7,.2,1) infinite}
.v-map{position:relative;height:170px;margin-top:14px;border-radius:14px;overflow:hidden;background:linear-gradient(160deg,#eef0fb,#e2e7f7)}
.v-road{position:absolute;left:0;right:0;height:8px;background:#fff;opacity:.9}.v-road.v-rv{top:0;bottom:0;left:auto;right:auto;width:8px;height:auto}
.v-gpin{position:absolute;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;background:#9aa0b8;border:3px solid #fff;box-shadow:0 4px 10px rgba(0,0,0,.15);animation-duration:11s;animation-iteration-count:infinite}
.v-mpin{position:absolute;width:34px;height:34px;border-radius:50% 50% 50% 0;background:var(--accent);transform:translate(-50%,0) rotate(-45deg);box-shadow:0 10px 24px rgba(91,63,209,.4);animation:vDrop 11s infinite}
.v-mpin::after{content:"";position:absolute;inset:10px;border-radius:50%;background:#fff}
.v-ring{position:absolute;width:40px;height:40px;border-radius:50%;border:3px solid var(--accent);transform:translate(-50%,-50%);opacity:0;animation:vRing 11s infinite}
.v-pcard,.v-place{display:flex;gap:12px;align-items:center;margin-top:12px;padding:12px;border-radius:12px;border:1px solid var(--accent);background:#f6f2ff}
.v-pcard{animation:vCard 11s cubic-bezier(.2,.7,.2,1) infinite}
.v-pimg{flex:none;width:52px;height:52px;border-radius:10px;background:linear-gradient(135deg,var(--h-blue),var(--accent))}
.v-pcard b,.v-place b{display:block;font:600 15px/1.2 var(--display)}
.v-pcard .st,.v-place .st{color:var(--star);font-size:12px;letter-spacing:1px}
.v-btns{display:flex;gap:6px;margin-top:6px;flex-wrap:wrap}.v-btns span{font-size:11.5px;padding:3px 9px;border-radius:999px;border:1px solid var(--line);background:#fff;color:var(--accent-ink)}
.v-f2{animation:vF2 11s cubic-bezier(.2,.7,.2,1) infinite}
.v-tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}
.v-tabs span{font-size:12px;font-weight:600;padding:6px 11px;border-radius:999px;background:rgba(17,17,24,.05);color:#5c5c5c}
.v-pans{position:relative;height:150px;margin-top:12px}
.v-pan{position:absolute;inset:0;opacity:0}
.v-ah{display:flex;align-items:center;gap:8px;font:600 13px/1 var(--display);margin-bottom:8px}.v-ah i{width:22px;height:22px;border-radius:50%}
.v-pan p{font-size:14px;line-height:21px}
.v-pan mark,.v-chat mark,.v-gem mark,.v-aio mark{background:#ece6fe;color:var(--accent-ink);font-weight:600;padding:1px 4px;border-radius:4px}
.v-prog{height:3px;border-radius:3px;background:var(--surface-100);overflow:hidden}.v-prog i{display:block;height:100%;background:var(--accent);animation:vGrow 11s linear infinite}
.v-cnt{position:relative;display:inline-block;width:2.2em;height:1em}.v-cnt em{position:absolute;left:0;top:0;font-style:normal;opacity:0}
.v-head{display:flex;align-items:center;gap:10px;padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid var(--line)}
.v-head b{font:600 15px/1 var(--display)}.v-model{margin-left:auto;font-size:11.5px;color:var(--ink-muted);padding:4px 9px;border-radius:999px;background:var(--surface-100)}
.v-av{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;font:700 10px/1 var(--display);color:#fff}
.v-av-gpt{background:#111118}.v-av-gem{background:linear-gradient(135deg,#4f7cff,#9b5cf6,#e86ad0);animation:vSpin 6s linear infinite}
.v-q{animation:vQ 11s cubic-bezier(.2,.7,.2,1) infinite}
.v-ans{position:relative;margin-top:12px;min-height:200px}
.v-dots{position:absolute;left:0;top:4px;display:flex;gap:5px;opacity:0;animation:vDots 11s infinite}
.v-dots i{width:8px;height:8px;border-radius:50%;background:#b9b9c8;animation:vBounce .9s ease-in-out infinite}.v-dots i:nth-child(2){animation-delay:.15s}.v-dots i:nth-child(3){animation-delay:.3s}
.v-ans p{font-size:14px;line-height:21px}
.v-rec{list-style:none;padding:0;margin:10px 0 0;display:grid;gap:8px}
.v-rec li{padding:10px 12px;border-radius:10px;border:1px solid var(--line);background:#fff}
.v-rec li.me{border-color:var(--accent);background:#f6f2ff}
.v-rec b{display:block;font:600 14px/1.2 var(--display)}.v-rec span{display:block;margin-top:3px;font-size:12px;color:var(--ink-muted)}
.v-l1{animation:vL1 11s cubic-bezier(.2,.7,.2,1) infinite}.v-l2{animation:vL2 11s cubic-bezier(.2,.7,.2,1) infinite}.v-l3{animation:vL3 11s cubic-bezier(.2,.7,.2,1) infinite}.v-l4{animation:vL4 11s cubic-bezier(.2,.7,.2,1) infinite}.v-src{animation:vSrc 11s cubic-bezier(.2,.7,.2,1) infinite}.v-f3{animation:vF3 11s cubic-bezier(.2,.7,.2,1) infinite}
.v-shim{position:absolute;left:0;right:0;top:0;display:grid;gap:8px;opacity:0;animation:vShim 11s infinite}
.v-shim i{display:block;height:10px;border-radius:6px;background:linear-gradient(90deg,#ece6fe,#d7e3ff,#f6d7ef,#ece6fe);background-size:400% 100%;animation:vShimMove 1.6s linear infinite}
.v-gem .v-place{margin-top:12px}
.v-ao{margin-top:12px;padding:14px;border-radius:14px;background:linear-gradient(160deg,#f4f0ff,#eef4ff);animation:vAO 11s cubic-bezier(.2,.7,.2,1) infinite}
.v-aoh{display:flex;align-items:center;gap:8px;font:600 13px/1 var(--display);margin-bottom:10px}
.v-ao{position:relative}.v-shim2{position:static;animation-name:vShim2;height:0;overflow:visible}
.v-aot{font-size:13.5px;line-height:20px;animation:vAOt 11s cubic-bezier(.2,.7,.2,1) infinite}
.v-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}
.v-cards span{padding:8px 10px;border-radius:10px;background:#fff;border:1px solid var(--line);min-width:0}
.v-cards span.me{border-color:var(--accent);box-shadow:0 0 0 3px rgba(138,92,242,.15)}
.v-cards b{display:block;font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v-cards i{display:block;height:5px;border-radius:3px;background:var(--surface-200);margin-top:6px}
.v-c1{animation:vC1 11s cubic-bezier(.2,.7,.2,1) infinite}.v-c2{animation:vC2 11s cubic-bezier(.2,.7,.2,1) infinite}.v-c3{animation:vC3 11s cubic-bezier(.2,.7,.2,1) infinite}.v-org{opacity:.55;animation:vOrg 11s cubic-bezier(.2,.7,.2,1) infinite}
.v-vtop{display:flex;align-items:center;gap:16px}
.v-mic{position:relative;flex:none;display:grid;place-items:center;width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,var(--h-blue),var(--accent))}
.v-mic svg{position:relative}.v-pl{position:absolute;inset:0;border-radius:50%;background:var(--accent);animation:vPulse 2s ease-out infinite}
.v-said{min-width:0;flex:1}.v-said small{display:block;font-size:11.5px;color:var(--ink-muted);margin-bottom:4px}
.v-said .v-type{font:600 16px/1.3 var(--display)}
.v-wave{display:flex;align-items:center;gap:3px;height:22px;margin-top:6px;animation:vListen 11s infinite}
.v-wave i{width:4px;height:100%;border-radius:3px;background:var(--accent);transform-origin:center;animation:vWave .9s ease-in-out infinite}
.v-snip{margin-top:16px;padding:14px;border-radius:12px;border:1px solid var(--accent);background:#f6f2ff;animation:vSn 11s cubic-bezier(.2,.7,.2,1) infinite}
.v-sl{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent-ink);margin-bottom:6px}
.v-snip p{font-size:14px;line-height:21px}.v-snip small{display:block;margin-top:6px;font-size:12px;color:#1f7a3f}
.v-spk{display:flex;align-items:center;gap:8px;margin-top:12px;font-size:13px;font-weight:600;color:var(--accent-ink);animation:vSpk 11s cubic-bezier(.2,.7,.2,1) infinite}
.v-wave2{height:16px;margin:0 0 0 auto;animation:none}.v-wave2 i{width:3px}
.v-f4{animation:vF4 11s cubic-bezier(.2,.7,.2,1) infinite}
@media (prefers-reduced-motion:reduce){.vx,.vx *{animation:none!important}.v-pos .p4,.v-dots,.v-shim{opacity:0!important}.v-pan{opacity:0}.v-pan:first-child{opacity:1}}

/* ---------- Ratgeber ---------- */
.gd-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.6fr);gap:64px;align-items:start}
.gd-side{position:sticky;top:120px}
.gd-side h2{margin-top:14px;hyphens:auto;-webkit-hyphens:auto;overflow-wrap:break-word;font:600 clamp(32px,3.4vw,48px)/1.08 var(--display);letter-spacing:-.035em;text-wrap:balance}
.gd-toc{margin-top:28px;padding:20px 22px;border-radius:16px;background:var(--surface-100)}
.gd-toc>span{display:block;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);margin-bottom:10px}
.gd-toc ol{margin:0;padding-left:20px;display:grid;gap:8px}
.gd-toc a{color:var(--ink);text-decoration:none;font-size:15px;line-height:21px}.gd-toc a:hover{color:var(--accent-ink)}
.gd-body{max-width:760px}
.gd-intro{font-size:21px;line-height:33px;color:var(--ink)}
.gd-s{margin-top:44px;scroll-margin-top:110px}
.gd-s h3{font:600 clamp(24px,2.2vw,30px)/1.2 var(--display);letter-spacing:-.025em}
.gd-s p{margin-top:14px;font-size:17.5px;line-height:29px;color:var(--ink-muted)}
.gd-chk{margin-top:52px;padding:32px;border-radius:20px;color:#fff;background:linear-gradient(135deg,#2c2a7a,var(--accent-ink) 55%,var(--accent))}
.gd-chk h3{font:600 26px/1.2 var(--display)}
.gd-chk ul{list-style:none;padding:0;margin:18px 0 26px;display:grid;gap:12px}
.gd-chk li{display:flex;gap:12px;align-items:flex-start;font-size:16.5px;line-height:25px}
.gd-chk li svg{flex:none;margin-top:1px;filter:brightness(0) invert(1)}
@media (max-width:1000px){.gd-grid{grid-template-columns:minmax(0,1fr);gap:28px}.gd-side{position:static}}
@media (max-width:600px){.gd-intro{font-size:18px;line-height:29px}.gd-s p{font-size:16.5px;line-height:27px}.gd-chk{padding:24px}}

/* ---------- Use-Case-Grid ---------- */
.ucgs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:44px}
.ucg{display:flex;flex-direction:column;gap:12px;padding:26px;border-radius:var(--r-md);background:#fff;transition:transform .35s,box-shadow .35s}
.ucg:hover{transform:translateY(-4px);box-shadow:0 22px 50px rgba(20,20,60,.08)}
.ucg-top{display:flex;justify-content:space-between;align-items:center}
.ucg-ix{font-size:13px;color:var(--ink-muted)}
.ucg h3{font:600 21px/1.25 var(--display);letter-spacing:-.015em}
.ucg p{font-size:15.5px;line-height:24px;color:var(--ink-muted);flex:1}
.ucg-flow{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:4px}
.ucg-flow span{font-size:12px;padding:5px 10px;border-radius:999px;background:var(--surface-100);color:var(--ink)}
.ucg-flow .ucg-arr{background:none;padding:0;color:var(--accent)}
.ucg-flow span:last-child{background:#ece6fe;color:var(--accent-ink);font-weight:600}
@media (max-width:1000px){.ucgs{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.ucgs{grid-template-columns:minmax(0,1fr)}}
/* ---------- Agenten-Demo ---------- */
.ag{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.4fr);gap:24px;margin-top:44px;align-items:start}
.ag-tabs{display:grid;gap:8px}
.ag-tab{all:unset;box-sizing:border-box;display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:14px;border:1px solid var(--line);background:#fff;cursor:pointer;font:600 16px/1.2 var(--display);transition:background .25s,border-color .25s,color .25s,transform .25s}
.ag-tab:hover{transform:translateX(4px)}
.ag-tab.on{background:#111118;border-color:#111118;color:#fff}
.ag-tab.on svg{stroke:#fff}
.ag-tab:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.ag-ti{display:grid;place-items:center;flex:none;width:36px;height:36px;border-radius:10px;background:var(--surface-100)}
.ag-tab.on .ag-ti{background:rgba(255,255,255,.12)}
.ag-stage{position:relative;padding:26px 26px 40px;border-radius:22px;min-height:440px;color:#fff;background:linear-gradient(140deg,#272479,#4d3fc4 55%,#8a5cf2);overflow:hidden}
.ag-pan{display:none}.ag-pan.on{display:block}
.ag-head{display:flex;align-items:center;gap:10px;padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,.18)}
.ag-head b{font:600 18px/1 var(--display)}.ag-head span:last-child{margin-left:auto;font-size:12px;opacity:.75}
.ag-dot{width:10px;height:10px;border-radius:50%;background:#3ddc84;box-shadow:0 0 0 4px rgba(61,220,132,.25)}
.ag-desc{margin-top:14px;font-size:15px;line-height:23px;opacity:.85}
.ag-chat{display:flex;flex-direction:column;gap:10px;margin-top:18px}
.ag-m{max-width:86%;padding:11px 14px;border-radius:14px;font-size:14.5px;line-height:21px;opacity:0;transform:translateY(10px)}
.ag-pan.on .ag-m{animation:agIn .5s cubic-bezier(.2,.7,.2,1) forwards;animation-delay:calc(var(--k) * .9s + .2s)}
@keyframes agIn{to{opacity:1;transform:none}}
.ag-u{align-self:flex-end;background:rgba(255,255,255,.95);color:var(--ink);border-bottom-right-radius:4px}
.ag-a{display:flex;gap:10px;align-items:flex-start;background:rgba(17,17,24,.35);border-bottom-left-radius:4px}
.ag-av{flex:none;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#fff;color:var(--accent-ink);font:700 9px/1 var(--display)}
.ag-s{align-self:center;max-width:100%;display:flex;gap:8px;align-items:center;font-size:12.5px;font-weight:600;background:rgba(61,220,132,.18);border:1px solid rgba(61,220,132,.45)}
.ag-ok{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#3ddc84;color:#0b3d22;font-size:11px}
.ag-note{position:absolute;right:18px;bottom:12px;font-size:11px;opacity:.55}
@media (max-width:900px){.ag{grid-template-columns:minmax(0,1fr)}.ag-tabs{grid-auto-flow:column;grid-auto-columns:max-content;overflow-x:auto;padding-bottom:6px;scrollbar-width:none}.ag-tabs::-webkit-scrollbar{display:none}.ag-tab{font-size:14.5px;padding:10px 12px}.ag-tab:hover{transform:none}.ag-stage{min-height:480px;padding:20px}}
@media (prefers-reduced-motion:reduce){.ag-pan.on .ag-m{animation:none;opacity:1;transform:none}}

/* ---------- Mobile-Fixes ---------- */
.mini-contact img{height:52px}
@media (max-width:800px){
  .mini-contact{padding:3px;gap:0}
  .mini-contact img{width:38px;height:44px}
}
@media (max-width:900px){
  .stack .card{position:relative;top:auto!important;margin-bottom:16px;box-shadow:0 10px 30px rgba(17,17,17,.08)}
  .card .ring{animation:none}
  .pj-l{backdrop-filter:none;-webkit-backdrop-filter:none;background:rgba(17,17,24,.74)}
  .live{animation:none!important}
  .orb{animation:none!important}
  .foot-mark.in .fm-t{animation:fmReveal 1.6s .2s cubic-bezier(.6,0,.2,1) forwards}
}
