/* ============================================================
   KRACH v3 — modern, vibrant, mass-appeal
   Gradient-Mesh · Glassmorphism · Bento · Depth · Satoshi
   ============================================================ */
@font-face{font-family:'Satoshi';src:url('fonts/Satoshi-Regular.woff2') format('woff2');font-weight:400;font-display:swap;}
@font-face{font-family:'Satoshi';src:url('fonts/Satoshi-Medium.woff2') format('woff2');font-weight:500;font-display:swap;}
@font-face{font-family:'Satoshi';src:url('fonts/Satoshi-Bold.woff2') format('woff2');font-weight:700;font-display:swap;}
@font-face{font-family:'Satoshi';src:url('fonts/Satoshi-Black.woff2') format('woff2');font-weight:900;font-display:swap;}

:root{
  --bg:#FAFAFB; --ink:#0D0F14; --muted:#5B6472; --card:#FFFFFF;
  --line:rgba(13,15,20,.08); --line-2:rgba(13,15,20,.05);
  --dark:#0B0D12; --dark-2:#14171F;
  --g1:#FF6A3D; --g2:#F0399A; --g3:#7B5CFF;
  --grad:linear-gradient(115deg,#FF6A3D 0%,#F0399A 48%,#7B5CFF 100%);
  --f:'Satoshi', system-ui, -apple-system, sans-serif;
  --pad:clamp(1.15rem,4.5vw,5.5rem);
  --max:1200px;
  --r:24px;
  --ease:cubic-bezier(.22,1,.36,1);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;}
body{font-family:var(--f);background:var(--bg);color:var(--ink);font-weight:450;line-height:1.6;font-size:clamp(1rem,1.04vw,1.1rem);-webkit-font-smoothing:antialiased;overflow-x:hidden;}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
h1,h2,h3{font-weight:900;letter-spacing:-.03em;line-height:1.02;}
strong{font-weight:700;}
::selection{background:var(--g2);color:#fff;}

/* utilities */
.grad-text{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;}
.grad-dot{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;}
.grad-bg{background:var(--grad);color:#fff;}
.glass{background:rgba(255,255,255,.66);backdrop-filter:blur(16px) saturate(1.5);-webkit-backdrop-filter:blur(16px) saturate(1.5);border:1px solid rgba(255,255,255,.7);box-shadow:0 18px 50px -28px rgba(13,15,20,.30);}
.kicker{display:inline-block;font-size:.8rem;font-weight:700;letter-spacing:.02em;color:var(--g2);text-transform:uppercase;margin-bottom:1.2rem;}
.pill{display:inline-flex;align-items:center;gap:.5em;font-size:.82rem;font-weight:600;padding:.45em .9em;border-radius:100px;}
.pill--soft{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);color:#fff;}
.pill--soft::first-letter,.pill--soft{color:#fff;}
.sec-head{max-width:var(--max);margin:0 auto clamp(2.2rem,4.5vw,3.5rem);}
.sec-title{font-size:clamp(2rem,5vw,3.6rem);letter-spacing:-.035em;}
section{padding-left:var(--pad);padding-right:var(--pad);}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;font-family:var(--f);font-weight:700;font-size:.95rem;
  padding:.78em 1.3em;border-radius:100px;border:1px solid transparent;cursor:pointer;transition:transform .35s var(--ease),box-shadow .35s,filter .25s,background .25s;will-change:transform;}
.btn--lg{padding:1em 1.7em;font-size:1.05rem;}
.btn--grad{background:var(--grad);color:#fff;box-shadow:0 12px 30px -10px rgba(240,57,154,.55);}
.btn--grad:hover{filter:brightness(1.07);box-shadow:0 18px 40px -10px rgba(240,57,154,.7);transform:translateY(-2px);}
.btn--glass{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.25);color:#fff;backdrop-filter:blur(8px);}
.btn--glass:hover{background:rgba(255,255,255,.18);transform:translateY(-2px);}
.btn--light{background:#fff;color:var(--ink);}
.btn--light:hover{transform:translateY(-2px);box-shadow:0 16px 36px -14px rgba(0,0,0,.4);}
.btn--outline-light{background:transparent;border-color:rgba(255,255,255,.4);color:#fff;}
.btn--outline-light:hover{border-color:#fff;}

/* ---------- NAV ---------- */
.nav{position:fixed;top:0;left:0;right:0;z-index:90;display:flex;align-items:center;justify-content:space-between;
  padding:.7rem var(--pad);background:rgba(250,250,251,.6);backdrop-filter:blur(14px) saturate(1.4);-webkit-backdrop-filter:blur(14px) saturate(1.4);border-bottom:1px solid var(--line-2);}
.nav__brand{font-size:1.4rem;font-weight:900;letter-spacing:-.04em;}
.nav__links{display:flex;gap:1.6rem;font-size:.93rem;font-weight:600;}
.nav__links a{color:var(--muted);transition:color .2s;}
.nav__links a:hover{color:var(--ink);}
@media(max-width:780px){.nav__links{display:none;}}

/* ---------- HERO (dark, gradient glow) ---------- */
.hero{position:relative;background:var(--dark);color:#fff;overflow:hidden;padding-top:clamp(7rem,14vw,9rem);padding-bottom:clamp(4rem,8vw,7rem);border-radius:0 0 36px 36px;}
.hero__glow{position:absolute;inset:0;z-index:0;pointer-events:none;}
.blob{position:absolute;border-radius:50%;filter:blur(70px);opacity:.55;}
.blob--1{width:46vw;height:46vw;background:var(--g1);top:-12vw;left:-8vw;animation:drift1 16s ease-in-out infinite alternate;}
.blob--2{width:42vw;height:42vw;background:var(--g3);top:-6vw;right:-6vw;animation:drift2 19s ease-in-out infinite alternate;}
.blob--3{width:40vw;height:40vw;background:var(--g2);bottom:-22vw;left:30vw;opacity:.4;animation:drift3 22s ease-in-out infinite alternate;}
@keyframes drift1{to{transform:translate(6vw,5vw) scale(1.12);}}
@keyframes drift2{to{transform:translate(-5vw,7vw) scale(1.08);}}
@keyframes drift3{to{transform:translate(8vw,-6vw) scale(1.15);}}
.hero__grid{position:relative;z-index:1;max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(2rem,5vw,4rem);align-items:center;}
.hero__h1{font-size:clamp(2.9rem,7.2vw,5.6rem);letter-spacing:-.04em;margin:1.2rem 0;}
.hero__sub{max-width:44ch;font-size:clamp(1.05rem,1.4vw,1.25rem);color:rgba(255,255,255,.72);font-weight:450;line-height:1.5;}
.hero__sub strong{color:#fff;}
.hero__cta{display:flex;flex-wrap:wrap;gap:.8rem;margin:2rem 0 1.8rem;}
.hero__chips{display:flex;flex-wrap:wrap;gap:.7rem;}
.chip{display:inline-flex;align-items:center;gap:.45em;font-size:.85rem;color:rgba(255,255,255,.7);background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);padding:.5em .9em;border-radius:100px;}
.chip b{color:#fff;font-weight:800;}

/* hero result card */
.hero__visual{position:relative;z-index:1;}
.rcard{border-radius:var(--r);padding:1.6rem;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(18px);box-shadow:0 30px 70px -30px rgba(0,0,0,.6);}
.rcard__head{display:flex;justify-content:space-between;align-items:center;font-size:.85rem;color:rgba(255,255,255,.7);}
.rcard__live{color:#5ee08a;font-weight:600;font-size:.78rem;}
.rcard__big{font-size:clamp(3rem,6vw,4.6rem);font-weight:900;letter-spacing:-.04em;line-height:1;margin:.6rem 0 .2rem;display:flex;align-items:flex-start;}
.rcard__pct{font-size:.5em;margin-top:.4em;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;}
.rcard__big .count{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;}
.rcard__cap{font-size:.85rem;color:rgba(255,255,255,.6);margin-bottom:1.3rem;}
.rcard__chart{display:flex;align-items:flex-end;gap:7px;height:90px;}
.rcard__chart span{flex:1;height:var(--h);background:var(--grad);border-radius:6px 6px 3px 3px;opacity:.9;animation:grow .9s var(--ease) both;}
@keyframes grow{from{height:0;}}
.rcard__foot{display:flex;justify-content:space-between;font-size:.72rem;color:rgba(255,255,255,.45);margin-top:.6rem;}
.fcard{position:absolute;left:-1.2rem;bottom:-1.4rem;display:flex;align-items:center;gap:.7rem;padding:.85rem 1.1rem;border-radius:16px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(18px);box-shadow:0 20px 50px -24px rgba(0,0,0,.6);}
.fcard__dot{width:10px;height:10px;border-radius:50%;background:#5ee08a;box-shadow:0 0 0 4px rgba(94,224,138,.2);}
.fcard b{display:block;font-weight:800;font-size:.95rem;color:#fff;}
.fcard span{font-size:.76rem;color:rgba(255,255,255,.6);}
@media(max-width:860px){.hero__grid{grid-template-columns:1fr;}.hero__visual{margin-top:1rem;max-width:440px;}.fcard{left:auto;right:1rem;}}

/* ---------- LOGOS ---------- */
.logos{max-width:var(--max);margin:0 auto;padding:clamp(2.2rem,4vw,3.2rem) var(--pad);}
.logos__lead{font-size:.88rem;color:var(--muted);margin-bottom:1.2rem;}
.logos__row{list-style:none;display:flex;flex-wrap:wrap;gap:clamp(1.4rem,4vw,3rem);align-items:center;}
.logos__row li{font-size:clamp(1.1rem,2vw,1.5rem);font-weight:800;letter-spacing:-.02em;color:var(--ink);opacity:.32;transition:opacity .25s;}
.logos__row li:hover{opacity:.7;}

/* ---------- PROBLEM ---------- */
.problem{max-width:var(--max);margin:0 auto;padding-top:clamp(4rem,8vw,7rem);padding-bottom:clamp(3rem,5vw,4rem);}
.problem__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin:.3rem 0 2.5rem;}
.pcard{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:1.8rem;box-shadow:0 14px 40px -28px rgba(13,15,20,.25);}
.pcard__ico{font-size:1.8rem;display:block;margin-bottom:1rem;}
.pcard p{font-size:1.1rem;font-weight:500;line-height:1.4;}
.problem__bridge{font-size:clamp(1.5rem,3.2vw,2.4rem);font-weight:900;letter-spacing:-.03em;line-height:1.18;max-width:24ch;}
@media(max-width:720px){.problem__grid{grid-template-columns:1fr;}}

/* ---------- BENTO ---------- */
.warum{max-width:var(--max);margin:0 auto;padding-top:clamp(4rem,8vw,7rem);padding-bottom:clamp(4rem,8vw,7rem);}
.bento{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;
  grid-template-areas:"hero hero kopfe kopfe" "hero hero knebel rate" "wide wide wide wide";}
.bento__cell{border-radius:var(--r);padding:clamp(1.5rem,2.4vw,2rem);display:flex;flex-direction:column;justify-content:flex-end;gap:.5rem;min-height:160px;transition:transform .3s var(--ease);}
.bento__cell:hover{transform:translateY(-4px);}
.bento>*:nth-child(1){grid-area:hero;}
.bento>*:nth-child(2){grid-area:kopfe;}
.bento>*:nth-child(3){grid-area:knebel;}
.bento>*:nth-child(4){grid-area:wide;}
.bento>*:nth-child(5){grid-area:rate;}
.bento__cell--hero{justify-content:flex-end;box-shadow:0 24px 60px -24px rgba(240,57,154,.5);}
.bento__label{font-size:.82rem;font-weight:700;opacity:.8;text-transform:uppercase;letter-spacing:.04em;}
.bento__stat{font-size:clamp(3rem,6vw,5rem);font-weight:900;letter-spacing:-.04em;line-height:.95;}
.bento__cell--hero p{font-size:1rem;opacity:.92;max-width:30ch;}
.bento__cell.glass{color:var(--ink);}
.bento__ico{font-size:1.6rem;margin-bottom:auto;}
.bento__cell h3{font-size:1.25rem;font-weight:800;letter-spacing:-.02em;}
.bento__cell.glass p{font-size:.92rem;color:var(--muted);}
.bento__cell--wide{background:var(--ink);color:#fff;}
.bento__bar{display:flex;align-items:center;gap:clamp(1.2rem,3vw,3rem);width:100%;}
.bstat{flex:1;position:relative;}
.bstat:not(:last-child)::after{content:'';position:absolute;right:calc(clamp(1.2rem,3vw,3rem)/-2);top:50%;transform:translateY(-50%);width:1px;height:60%;background:rgba(255,255,255,.14);}
.bento__num{font-size:clamp(2rem,4vw,3rem);font-weight:900;letter-spacing:-.03em;line-height:1;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;}
.bstat span{display:block;margin-top:.5rem;font-size:.88rem;color:rgba(255,255,255,.6);}
.bento__cell--rate{align-items:flex-start;justify-content:center;}
.stars{color:#FFB23D;letter-spacing:.1em;font-size:.95rem;}
.bento__cell--rate .bento__num{margin:.2rem 0;}
.bento__cell--rate p{font-size:.85rem;color:var(--muted);}
@media(max-width:820px){
  .bento{grid-template-columns:repeat(2,1fr);grid-template-areas:"hero hero" "kopfe kopfe" "knebel rate" "wide wide";}
}
@media(max-width:520px){
  .bento{grid-template-columns:1fr;grid-template-areas:"hero" "kopfe" "knebel" "rate" "wide";}
  .bento__bar{flex-direction:column;align-items:flex-start;gap:1.4rem;}.bstat:not(:last-child)::after{display:none;}
}

/* ---------- WORK ---------- */
.work{max-width:var(--max);margin:0 auto;padding-top:clamp(4rem,8vw,7rem);padding-bottom:clamp(4rem,8vw,7rem);}
.case-hero{border-radius:28px;padding:clamp(1rem,2vw,1.6rem);margin-bottom:2rem;}
.case-hero__meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1.5rem;padding:1.4rem .6rem .4rem;align-items:flex-start;}
.case-hero__client{font-weight:800;font-size:clamp(1.15rem,2vw,1.5rem);display:block;margin-bottom:.4rem;}
.case-hero__desc{max-width:54ch;color:var(--muted);font-size:.95rem;}
.case-hero__kpi{text-align:right;flex-shrink:0;}
.case-hero__kpi b{font-size:clamp(2.2rem,4.5vw,3.4rem);font-weight:900;letter-spacing:-.03em;display:block;line-height:1;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;}
.case-hero__kpi span{font-size:.8rem;color:var(--muted);}
@media(max-width:600px){.case-hero__kpi{text-align:left;}}

/* before/after slider */
.ba{position:relative;aspect-ratio:16/9.2;border-radius:18px;overflow:hidden;user-select:none;touch-action:pan-y;cursor:ew-resize;}
.ba__panel{position:absolute;inset:0;}
.ba__before{clip-path:inset(0 calc(100% - var(--pos,50%)) 0 0);}
.ba__handle{position:absolute;top:0;bottom:0;left:var(--pos,50%);width:2px;background:#fff;transform:translateX(-1px);z-index:4;box-shadow:0 0 12px rgba(0,0,0,.4);}
.ba__grip{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:46px;height:46px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;font-size:1.1rem;color:var(--ink);box-shadow:0 6px 20px -4px rgba(0,0,0,.5);}
.ba__tag{position:absolute;top:14px;z-index:5;font-size:.66rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:.35em .75em;border-radius:100px;}
.ba__tag--l{left:14px;background:rgba(11,13,18,.7);color:#fff;backdrop-filter:blur(4px);}
.ba__tag--r{right:14px;background:var(--grad);color:#fff;}
.mock{position:absolute;inset:0;width:100%;height:100%;display:flex;flex-direction:column;}
.mock__bar{height:11%;min-height:26px;display:flex;align-items:center;gap:6px;padding:0 14px;background:#e7e1d6;}
.mock__bar i{font-style:normal;font-size:.68rem;color:#8a8378;margin-left:10px;}
.mock__dot{width:9px;height:9px;border-radius:50%;background:#cfc8ba;}
.mock__body{flex:1;position:relative;overflow:hidden;}
.mock--after{background:linear-gradient(160deg,#fff,#f2f3f8);}
.mock--after .mock__body{padding:clamp(1rem,4%,2.4rem) clamp(1.2rem,5%,3rem);}
.mock__nav{display:flex;justify-content:space-between;align-items:center;font-size:.8rem;margin-bottom:7%;}
.mock__nav b{font-size:1.15rem;font-weight:900;}
.mock__nav span{color:#9a9aa6;font-size:.72rem;}
.mock__h{font-size:clamp(1.4rem,4.6vw,2.9rem);line-height:1.02;font-weight:900;letter-spacing:-.03em;}
.mock__cta{display:inline-block;margin-top:5%;background:var(--grad);color:#fff;font-size:.78rem;font-weight:700;padding:.55em 1.1em;border-radius:100px;}
.mock__cards{display:flex;gap:10px;margin-top:auto;padding-top:6%;}
.mock__cards span{flex:1;height:clamp(28px,14%,56px);border-radius:10px;background:#eceef4;border:1px solid rgba(0,0,0,.04);}
.mock--before{background:#d9d4ca;}
.mock__bar--old{background:#cdc7ba;}
.mock--before .mock__body{padding:14px 16px;}
.mock__nav--old{display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid #b3ab9b;padding-bottom:8px;margin-bottom:14px;}
.mock__nav--old b{font-size:.74rem;font-weight:800;color:#5f584c;}
.mock__nav--old span{font-size:.62rem;color:#7d7567;}
.mock__oldhero{display:flex;gap:12px;}
.mock__oldlines{flex:1;display:flex;flex-direction:column;gap:7px;padding-top:4px;}
.mock__oldlines span{height:7px;border-radius:2px;background:#b7af9f;}
.mock__oldlines span:nth-child(1){width:90%}.mock__oldlines span:nth-child(2){width:96%}.mock__oldlines span:nth-child(3){width:80%}.mock__oldlines span:nth-child(4){width:60%}
.mock__oldbox{width:38%;aspect-ratio:4/3;background:repeating-linear-gradient(45deg,#c3bcab,#c3bcab 6px,#bbb2a1 6px,#bbb2a1 12px);display:flex;align-items:center;justify-content:center;font-size:.6rem;color:#7a7264;border:1px solid #a89f8e;}
.mock__oldbtn{display:inline-block;margin-top:14px;background:#9aa0d0;color:#2a2c44;font-size:.66rem;padding:.4em .8em;border-radius:3px;}

.cases{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;}
.case{border-radius:var(--r);padding:clamp(1.5rem,2.4vw,2rem);transition:transform .3s var(--ease);}
.case:hover{transform:translateY(-4px);}
.case__top{display:flex;flex-direction:column;gap:.1rem;font-size:.74rem;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:1.6rem;}
.case__metric{font-size:1.1rem;font-weight:600;line-height:1.25;}
.case__metric b{font-size:clamp(2rem,3.2vw,2.7rem);font-weight:900;letter-spacing:-.03em;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;}
.case__note{margin-top:.7rem;font-size:.85rem;color:var(--muted);}
@media(max-width:780px){.cases{grid-template-columns:1fr;}}

/* ---------- SERVICES ---------- */
.services{max-width:var(--max);margin:0 auto;padding-top:clamp(4rem,8vw,7rem);padding-bottom:clamp(4rem,8vw,7rem);}
.svc{list-style:none;display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;}
.svc__item{border-radius:var(--r);padding:clamp(1.6rem,2.6vw,2.2rem);transition:transform .3s var(--ease);}
.svc__item:hover{transform:translateY(-4px);}
.svc__ico{width:54px;height:54px;border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;margin-bottom:1.2rem;box-shadow:0 10px 24px -10px rgba(240,57,154,.55);}
.svc__item h3{font-size:clamp(1.3rem,2.2vw,1.7rem);font-weight:800;letter-spacing:-.02em;margin-bottom:.6rem;}
.svc__item p{color:var(--muted);font-size:.95rem;max-width:44ch;}
@media(max-width:720px){.svc{grid-template-columns:1fr;}}

/* ---------- PROCESS ---------- */
.process{max-width:var(--max);margin:0 auto;padding-top:clamp(4rem,8vw,7rem);padding-bottom:clamp(4rem,8vw,7rem);}
.steps{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(1.2rem,2.4vw,2rem);}
.step{padding-top:1.4rem;border-top:2px solid var(--line);}
.step__no{font-size:1.4rem;font-weight:900;letter-spacing:-.02em;}
.step h3{font-size:clamp(1.2rem,1.9vw,1.5rem);font-weight:800;margin:.5rem 0 .5rem;}
.step p{font-size:.9rem;color:var(--muted);}
@media(max-width:860px){.steps{grid-template-columns:repeat(2,1fr);gap:1.8rem;}}
@media(max-width:480px){.steps{grid-template-columns:1fr;}}

/* ---------- STUDIO ---------- */
.studio{max-width:var(--max);margin:0 auto;padding-top:clamp(4rem,8vw,7rem);padding-bottom:clamp(4rem,8vw,7rem);}
.team{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem;}
.member{display:flex;flex-direction:column;gap:.2rem;}
.member__ava{width:100%;aspect-ratio:1/1;border-radius:20px;display:flex;align-items:center;justify-content:center;font-size:clamp(1.6rem,3vw,2.4rem);font-weight:900;color:#fff;margin-bottom:.8rem;background:var(--grad);}
.member:nth-child(2) .member__ava{background:linear-gradient(140deg,#7B5CFF,#3FA9FF);}
.member:nth-child(3) .member__ava{background:linear-gradient(140deg,#F0399A,#FF6A3D);}
.member:nth-child(4) .member__ava{background:linear-gradient(140deg,#11C6A9,#7B5CFF);}
.member b{font-weight:800;font-size:1.05rem;}
.member span{font-size:.85rem;color:var(--muted);}
@media(max-width:680px){.team{grid-template-columns:repeat(2,1fr);}}

/* ---------- QUOTES ---------- */
.quotes{max-width:var(--max);margin:0 auto;padding-top:clamp(2rem,4vw,4rem);padding-bottom:clamp(4rem,8vw,7rem);}
.quotes__row{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;}
.quote{border-radius:var(--r);padding:clamp(1.6rem,2.4vw,2rem);display:flex;flex-direction:column;justify-content:space-between;gap:1.4rem;}
.quote p{font-size:clamp(1rem,1.4vw,1.15rem);font-weight:500;line-height:1.4;}
.quote footer b{display:block;font-weight:800;font-size:.95rem;}
.quote footer span{font-size:.82rem;color:var(--muted);}
@media(max-width:820px){.quotes__row{grid-template-columns:1fr;}}

/* ---------- FAQ ---------- */
.faq{max-width:var(--max);margin:0 auto;padding-top:clamp(4rem,8vw,7rem);padding-bottom:clamp(4rem,8vw,7rem);}
.faq__list{max-width:820px;}
.qa{border:1px solid var(--line);border-radius:18px;margin-bottom:.8rem;background:var(--card);overflow:hidden;transition:box-shadow .25s;}
.qa[open]{box-shadow:0 14px 40px -26px rgba(13,15,20,.3);}
.qa summary{font-size:clamp(1.1rem,1.9vw,1.4rem);font-weight:800;letter-spacing:-.02em;padding:1.15rem 3rem 1.15rem 1.4rem;cursor:pointer;list-style:none;position:relative;}
.qa summary::-webkit-details-marker{display:none;}
.qa summary::after{content:'+';position:absolute;right:1.3rem;top:50%;transform:translateY(-50%);font-weight:400;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;font-size:1.5rem;transition:transform .3s var(--ease);}
.qa[open] summary::after{transform:translateY(-50%) rotate(45deg);}
.qa p{color:var(--muted);font-size:.98rem;padding:0 1.4rem 1.2rem;max-width:64ch;}

/* ---------- CTA ---------- */
.cta{max-width:var(--max);margin:clamp(2rem,4vw,4rem) auto;padding-left:var(--pad);padding-right:var(--pad);}
.cta__inner{border-radius:32px;padding:clamp(2.5rem,6vw,5rem);text-align:center;position:relative;overflow:hidden;box-shadow:0 40px 90px -40px rgba(240,57,154,.6);}
.cta__h{font-size:clamp(2.2rem,5.5vw,4.2rem);letter-spacing:-.035em;}
.cta__sub{max-width:46ch;margin:1.3rem auto 2rem;font-size:clamp(1.05rem,1.4vw,1.2rem);color:rgba(255,255,255,.88);}
.cta__row{display:flex;flex-wrap:wrap;gap:.9rem;justify-content:center;}
.cta__human{margin-top:2rem;font-size:.88rem;color:rgba(255,255,255,.8);max-width:46ch;margin-left:auto;margin-right:auto;}

/* ---------- FOOTER ---------- */
.foot{background:var(--dark);color:rgba(255,255,255,.7);padding:clamp(3rem,5vw,4rem) var(--pad) 2rem;margin-top:clamp(2rem,4vw,4rem);border-radius:36px 36px 0 0;}
.foot__top{max-width:var(--max);margin:0 auto;display:flex;flex-wrap:wrap;justify-content:space-between;gap:1.5rem;padding-bottom:2.5rem;}
.foot__brand{font-size:1.6rem;font-weight:900;color:#fff;letter-spacing:-.04em;}
.foot__claim{font-size:1.05rem;color:rgba(255,255,255,.7);text-align:right;line-height:1.3;font-weight:600;}
.foot__cols{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;padding:2.5rem 0;border-top:1px solid rgba(255,255,255,.1);}
.foot__cols div{display:flex;flex-direction:column;gap:.6rem;font-size:.92rem;}
.foot__cols a:hover{color:#fff;}
.foot__h{font-weight:800;color:#fff;text-transform:uppercase;font-size:.74rem;letter-spacing:.08em;margin-bottom:.3rem;}
.foot__base{max-width:var(--max);margin:0 auto;display:flex;justify-content:space-between;flex-wrap:wrap;gap:1rem;padding-top:2rem;border-top:1px solid rgba(255,255,255,.1);font-size:.82rem;color:rgba(255,255,255,.45);}
@media(max-width:600px){.foot__claim{text-align:left;}.foot__cols{grid-template-columns:1fr;gap:2rem;}}

/* ---------- reveal (robust: sichtbar wenn JS fehlt) ---------- */
.js [data-reveal]{opacity:0;transform:translateY(22px);transition:opacity .7s var(--ease),transform .7s var(--ease);}
.js [data-reveal].in{opacity:1;transform:none;}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important;}
  html{scroll-behavior:auto;}
  .js [data-reveal]{opacity:1;transform:none;}
  .blob{animation:none;}
}
