/* ============================================================
   ROSH — páginas de serviço (layout claro, estrutura Freelife)
   Autossuficiente: não depende de brand.css nem de page.css.
   Paleta: claro + laranja ROSH. Tipografia: Archivo (leve nos títulos).
   ============================================================ */
:root{
  --sans:'Archivo',system-ui,-apple-system,'Helvetica Neue',Arial,sans-serif;
  --logo:'Syne',system-ui,sans-serif;

  /* claro */
  --bg:#F7F4F0; --surface:#FFFDFA;
  --ink:#0B0908;
  --ink2:rgba(11,9,8,.74);
  --muted:rgba(11,9,8,.64);
  --faint:rgba(11,9,8,.60);
  --line:rgba(11,9,8,.14); --line2:rgba(11,9,8,.09);

  /* escuro (seções invertidas) */
  --dark:#0B0908; --dark2:#131010;
  --donk:#F1EBE1;
  --dmuted:rgba(241,235,225,.64);
  --dfaint:rgba(241,235,225,.55);
  --dcard:rgba(241,235,225,.05);
  --dline:rgba(241,235,225,.14);

  /* laranja ROSH */
  --accent:#C0490F;        /* braise — sobre claro: 5,0:1 */
  --accent-dark:#8F350B;   /* para texto sobre --accent-soft: 6,9:1 */
  --accent-lt:#F5A623;     /* soleil — sobre escuro: 9,8:1 */
  --accent-md:#E0862B;     /* ambre */
  --accent-soft:#FBEEE3;
  --on-accent:#FFF6EA;
  --coucher:linear-gradient(180deg,#7E2E08 0%,#A83D0C 26%,#C0490F 50%,#E0862B 82%,#F5A623 100%);

  --r:24px; --rs:16px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:var(--sans);background:var(--bg);color:var(--ink);
  line-height:1.55;font-weight:400;-webkit-font-smoothing:antialiased;overflow-x:hidden;
}
a{color:inherit;text-decoration:none}
img,video{display:block;max-width:100%}
ul{list-style:none}
::selection{background:var(--accent);color:var(--on-accent)}

.wrap{max-width:1120px;margin:0 auto;padding:0 24px}
h1,h2,h3{font-weight:300;letter-spacing:-.035em;line-height:1.06}
h1{font-size:clamp(2.4rem,5.4vw,4rem)}
h2{font-size:clamp(1.9rem,4vw,2.9rem)}
.eyebrow{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-weight:600}
.on-dark .eyebrow,.dark .eyebrow{color:var(--accent-lt)}

/* ---------- botões ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-weight:500;font-size:.95rem;font-family:inherit;border:none;cursor:pointer;
  border-radius:100px;transition:transform .2s,background .2s,box-shadow .2s,border-color .2s;
}
.btn-dark{background:var(--ink);color:#FFFDFA;padding:14px 26px}
.btn-dark:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(11,9,8,.24)}
.btn-accent{background:var(--accent);color:var(--on-accent);padding:14px 26px}
.btn-accent:hover{transform:translateY(-1px);background:#A83D0C;box-shadow:0 12px 28px rgba(192,73,15,.32)}
.btn-white{background:#FFFDFA;color:var(--ink);padding:14px 26px}
.btn-white:hover{transform:translateY(-1px);box-shadow:0 12px 30px rgba(0,0,0,.3)}
.btn-outline{background:transparent;color:var(--ink);border:1px solid var(--line);padding:13px 24px}
.btn-outline:hover{border-color:rgba(11,9,8,.34)}
.on-dark .btn-outline{color:var(--donk);border-color:var(--dline)}
.on-dark .btn-outline:hover{border-color:rgba(241,235,225,.5)}

/* ---------- nav ---------- */
nav{
  position:sticky;top:0;z-index:60;background:rgba(247,244,240,.82);backdrop-filter:blur(16px);
  border-bottom:1px solid transparent;transition:background .25s,border-color .25s;
}
nav.scrolled{background:rgba(255,253,250,.92);border-color:var(--line2)}
.nav-in{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 24px;max-width:1120px;margin:0 auto}
/* só o logotipo em texto — o "R" vive apenas no favicon */
.brand{display:flex;align-items:center}
.bname{font-family:var(--logo);font-weight:800;font-size:1.05rem;letter-spacing:.12em;line-height:1.05}
.bname small{
  display:block;font-family:var(--sans);font-size:.52rem;letter-spacing:.26em;
  color:var(--muted);font-weight:600;margin-top:2px;
}
.nav-right{display:flex;align-items:center;gap:20px}
.nav-right a.btn-accent,.nav-right a.btn-accent:hover{color:var(--on-accent)}
@media(max-width:640px){.nav-right .btn{display:none}}

/* ---------- burger + menu sobreposto (igual ao da home) ---------- */
.burger{
  width:46px;height:36px;display:flex;flex-direction:column;justify-content:center;
  gap:8px;align-items:flex-end;background:none;border:0;cursor:pointer;padding:0;
}
.burger span{
  display:block;height:2.5px;width:32px;background:var(--ink);border-radius:3px;
  transition:transform .45s cubic-bezier(.7,0,.2,1),background .3s;
}
.menu-open .burger span{background:var(--donk)}
.menu-open .burger span:nth-child(1){transform:translateY(5.25px) rotate(45deg)}
.menu-open .burger span:nth-child(2){transform:translateY(-5.25px) rotate(-45deg)}

body.menu-open{overflow:hidden}
.menu{
  position:fixed;inset:0;z-index:50;background:var(--dark);color:var(--donk);
  display:flex;flex-direction:column;justify-content:flex-start;padding:clamp(88px,12vh,120px) 24px 52px;
  clip-path:inset(0 0 100% 0);transition:clip-path .7s cubic-bezier(.7,0,.2,1);
  overflow-y:auto;overscroll-behavior:contain;
}
.menu-open .menu{clip-path:inset(0 0 0 0)}
.menu-in{max-width:1120px;margin:0 auto;width:100%}
.menu-links li{border-bottom:1px solid var(--dline)}
.menu-links a{
  display:flex;align-items:baseline;gap:20px;padding:13px 0;color:var(--donk);
  font-weight:300;letter-spacing:-.035em;font-size:clamp(26px,4.6vw,54px);line-height:1.1;
  transition:padding-left .35s,color .35s;
}
.menu-links a small{
  font-family:var(--sans);font-weight:600;font-size:11px;letter-spacing:.26em;
  color:var(--dfaint);flex:none;
}
.menu-links a:hover{padding-left:18px;color:var(--accent-lt)}
.menu-sec{margin-top:34px}
.menu-sec h4{
  font-size:.66rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;
  color:var(--accent-lt);margin-bottom:14px;
}
.menu-sec .lista{display:flex;flex-wrap:wrap;gap:10px 22px}
.menu-sec a{font-size:1rem;color:var(--dmuted);transition:color .3s}
.menu-sec a:hover{color:var(--donk)}
.menu-foot{
  display:flex;gap:30px;flex-wrap:wrap;margin-top:38px;padding-top:22px;
  border-top:1px solid var(--dline);font-size:.9rem;color:var(--dmuted);
}
@media(prefers-reduced-motion:reduce){.menu{transition:none}}

/* ---------- hero ---------- */
.hero{position:relative;min-height:88svh;display:flex;align-items:flex-end;color:var(--donk);overflow:hidden;background:var(--dark)}
.hero-vid{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 40%;z-index:0}
.hero-ov{
  position:absolute;inset:0;z-index:1;
  background:
    linear-gradient(90deg,rgba(11,9,8,.82) 0%,rgba(11,9,8,.52) 46%,rgba(11,9,8,.18) 82%,rgba(11,9,8,.1) 100%),
    linear-gradient(180deg,rgba(11,9,8,.42) 0%,rgba(11,9,8,.2) 40%,rgba(11,9,8,.92) 100%);
}
.hero-in{position:relative;z-index:2;width:100%;padding:0 24px 72px;max-width:1120px;margin:0 auto}
.hero .eyebrow{color:rgba(255,246,234,.8);margin-bottom:20px;display:inline-flex;align-items:center;gap:9px}
.hero .eyebrow .d{width:7px;height:7px;border-radius:50%;background:var(--accent-lt);box-shadow:0 0 10px var(--accent-lt);flex:none}
.hero h1{max-width:16ch;margin-bottom:22px}
.hero p{font-size:1.15rem;color:rgba(255,246,234,.84);max-width:580px;margin-bottom:30px}
.cta-row{display:flex;gap:12px;flex-wrap:wrap}
.hero-tags{display:flex;gap:22px;flex-wrap:wrap;margin-top:26px;font-size:.86rem;color:rgba(255,246,234,.76)}
.hero-tags span{display:flex;align-items:center;gap:7px}
.hero-tags svg{width:16px;height:16px;color:var(--accent-lt);flex:none}

/* ---------- seções ---------- */
section{padding:100px 0}
.dark{background:var(--dark);color:var(--donk)}
.dark h2,.dark h3{color:var(--donk)}
.sec-head{max-width:760px;margin:0 auto 56px;text-align:center}
.sec-head .eyebrow{display:block;margin-bottom:16px}
.sec-head p{color:var(--ink2);font-size:1.08rem;margin-top:14px}
.dark .sec-head p{color:var(--dmuted)}
.dim{color:var(--accent)}
.dark .dim,.on-dark .dim{color:var(--accent-lt)}

/* ---------- showcase de vídeo ---------- */
.showcase{position:relative;height:82svh;min-height:520px;overflow:hidden;background:var(--dark);color:var(--donk);padding:0}
.sc-vid{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.sc-ov{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(11,9,8,.42),rgba(11,9,8,.12) 45%,rgba(11,9,8,.92))}
.sc-top{position:absolute;top:0;left:0;right:0;z-index:2;display:flex;justify-content:space-between;align-items:center;gap:14px;padding:24px 30px}
.sc-pill{
  font-size:.64rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600;
  border:1px solid rgba(241,235,225,.34);border-radius:100px;padding:8px 14px;
  backdrop-filter:blur(6px);display:flex;align-items:center;gap:7px;
}
.sc-pill::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent-lt);flex:none}
.sc-id{font-size:.66rem;letter-spacing:.22em;color:rgba(241,235,225,.58)}
.sc-bottom{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:0 30px 44px}
.sc-bottom .inner{max-width:1120px;margin:0 auto}
.sc-bottom .eyebrow{color:rgba(255,246,234,.78);display:block;margin-bottom:12px}
.sc-bottom h2{font-size:clamp(1.9rem,4vw,3.1rem);max-width:22ch}
.sc-mute{
  position:absolute;right:30px;bottom:44px;z-index:3;width:44px;height:44px;border-radius:50%;
  border:1px solid rgba(241,235,225,.32);background:rgba(11,9,8,.44);backdrop-filter:blur(6px);
  display:grid;place-items:center;cursor:pointer;color:var(--donk);transition:background .25s,border-color .25s;
}
.sc-mute:hover{background:var(--accent);border-color:var(--accent)}
.sc-mute svg{width:20px;height:20px}

/* ---------- 3 cards (onde o filme entra) ---------- */
.eco{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.ecard{background:var(--surface);border:1px solid var(--line2);border-radius:var(--r);padding:30px;transition:transform .25s,box-shadow .25s;display:flex;flex-direction:column}
.ecard:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(11,9,8,.09)}
.ecard.here{border-color:rgba(192,73,15,.34)}
.eic{width:46px;height:46px;border-radius:12px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;margin-bottom:18px}
.eic svg{width:23px;height:23px}
.ecard h3{font-size:1.3rem;margin-bottom:8px;display:flex;align-items:center;gap:9px;flex-wrap:wrap;font-weight:500;letter-spacing:-.02em}
.ecard p{color:var(--muted);font-size:.95rem}
.etag{font-size:.64rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:3px 9px;border-radius:100px}
.etag.now{background:var(--accent);color:var(--on-accent)}
.etag.soon{background:var(--bg);color:var(--muted);border:1px solid var(--line)}

/* ---------- pilares ---------- */
.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.pcard{background:var(--surface);border:1px solid var(--line2);border-radius:var(--r);padding:32px;transition:transform .25s,box-shadow .25s}
.pcard:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(11,9,8,.09)}
.pnum{font-size:.72rem;font-weight:700;letter-spacing:.12em;color:var(--faint)}
.picon{width:50px;height:50px;border-radius:13px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;margin:16px 0 18px}
.picon svg{width:25px;height:25px}
.pcard h3{font-size:1.3rem;margin-bottom:10px;font-weight:500;letter-spacing:-.02em}
.pcard p{color:var(--muted);font-size:.95rem}
.deliver{margin-top:18px;padding-top:16px;border-top:1px solid var(--line2);font-size:.86rem;color:var(--accent);display:flex;gap:8px;align-items:flex-start}
.deliver svg{width:16px;height:16px;flex-shrink:0;margin-top:3px}
.deliver b{color:var(--ink);font-weight:600}

/* ---------- carrossel infinito ---------- */
.marquee{
  overflow:hidden;width:100%;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);
}
.mtrack{display:flex;gap:16px;width:max-content;padding:6px 9px;animation:scrollx 55s linear infinite}
.marquee:hover .mtrack{animation-play-state:paused}
.mslide{width:260px;height:340px;border-radius:var(--r);flex-shrink:0;overflow:hidden;box-shadow:0 14px 34px rgba(11,9,8,.12)}
.mslide img{width:100%;height:100%;object-fit:cover;display:block}
@keyframes scrollx{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(max-width:520px){.mslide{width:206px;height:272px}}

/* ---------- card escuro do próximo termo ---------- */
.turma{
  background:var(--dark2);border:1px solid var(--dline);border-radius:28px;overflow:hidden;
  display:grid;grid-template-columns:1fr 1.08fr;max-width:1000px;margin:0 auto;
}
.turma-media{position:relative;min-height:540px;background:#0A0807}
.turma-media video,.turma-media .poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background-size:cover;background-position:center 34%}
.tm-ov{position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,9,8,.3),rgba(11,9,8,.14) 38%,rgba(11,9,8,.92));z-index:1}
.tm-top{position:absolute;top:22px;left:22px;right:22px;display:flex;justify-content:space-between;align-items:center;gap:12px;z-index:2}
.tm-label{font-size:.64rem;letter-spacing:.16em;text-transform:uppercase;color:rgba(241,235,225,.88);font-weight:600}
.tm-new{
  font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;font-weight:600;color:var(--donk);
  border:1px solid rgba(241,235,225,.34);border-radius:100px;padding:6px 12px;
  display:flex;align-items:center;gap:6px;backdrop-filter:blur(6px);
}
.tm-new::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent-lt);flex:none}
.tm-date{position:absolute;left:28px;bottom:26px;z-index:2;color:var(--donk);line-height:.9}
.tm-date .big{font-size:clamp(3.4rem,7vw,5.2rem);font-weight:300;letter-spacing:-.04em;display:block}
.tm-date .mo{font-size:.86rem;letter-spacing:.16em;text-transform:uppercase;display:block;margin-top:8px}
.tm-date .sub{font-size:.72rem;color:rgba(241,235,225,.66);letter-spacing:.08em;text-transform:uppercase;margin-top:10px;display:block}
.turma-info{padding:42px}
.turma-tags{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}
.ttag{font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;font-weight:600;padding:6px 12px;border-radius:100px;border:1px solid var(--dline);color:var(--dmuted)}
.ttag.hot{background:var(--accent-lt);color:#3A1704;border-color:transparent}
.turma-info h3{font-size:clamp(1.6rem,2.6vw,2rem);font-weight:300;letter-spacing:-.03em;margin-bottom:14px;line-height:1.05}
.turma-desc{color:var(--dmuted);margin-bottom:24px;max-width:46ch}
.turma-div{height:1px;background:var(--dline);margin:0 0 22px}
.turma-meta{display:grid;grid-template-columns:repeat(3,auto);gap:26px;margin-bottom:26px}
.turma-meta .mk{font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--dfaint);margin-bottom:5px}
.turma-meta .mv{font-size:1.05rem;font-weight:500}
.cd-inline{display:flex;align-items:baseline;gap:10px;margin-bottom:18px;flex-wrap:wrap}
.cd-inline .cdl{font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--dfaint)}
.cd-inline .cdv{font-size:1rem;font-weight:500;color:var(--donk)}
.turma-info .btn{width:100%}
@media(max-width:900px){.turma{grid-template-columns:1fr}.turma-media{min-height:380px}.turma-meta{grid-template-columns:repeat(3,1fr);gap:16px}}

/* ---------- depoimentos ---------- */
.testis{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:940px;margin:0 auto}
/* com um depoimento só, não estica: fica centrado na largura de um card */
.testis:has(>.testi:only-child){grid-template-columns:minmax(0,470px);justify-content:center}
.testi{background:var(--dcard);border:1px solid var(--dline);border-radius:var(--r);overflow:hidden;display:grid;grid-template-columns:150px 1fr}
.testi-photo{background-size:cover;background-position:center top;min-height:210px}
.testi blockquote{padding:26px;display:flex;flex-direction:column;justify-content:center}
.stars{color:var(--accent-lt);font-size:.85rem;letter-spacing:2px;margin-bottom:12px}
.testi p{font-size:1.02rem;line-height:1.5;margin-bottom:16px;color:var(--donk)}
.testi b{display:block;font-weight:500}
.testi span{font-size:.84rem;color:var(--dmuted)}
.pendente{
  display:inline-block;margin-bottom:10px;font-size:.6rem;font-weight:700;letter-spacing:.12em;
  text-transform:uppercase;color:var(--accent-lt);border:1px dashed rgba(245,166,35,.5);
  border-radius:100px;padding:4px 10px;
}
@media(max-width:900px){.testis{grid-template-columns:1fr}}
@media(max-width:520px){.testi{grid-template-columns:112px 1fr}.testi-photo{min-height:100%}}

/* ---------- antes / depois com captura de tela ---------- */
.vergleich{display:grid;grid-template-columns:1fr 1fr;gap:clamp(16px,2.2vw,28px);align-items:start}
.vg{margin:0;position:relative}
.vg-frame{
  border-radius:var(--rs);overflow:hidden;background:var(--dark2);
  border:1px solid var(--line);box-shadow:0 18px 44px rgba(11,9,8,.14);
}
.vg-bar{
  display:flex;align-items:center;gap:7px;padding:10px 14px;
  background:#E7E3DE;border-bottom:1px solid var(--line);
}
.vg-bar i{width:9px;height:9px;border-radius:50%;background:rgba(11,9,8,.22);flex:none}
.vg-bar span{
  margin-left:8px;font-size:.68rem;letter-spacing:.04em;color:var(--faint);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.vg-frame img{width:100%;display:block;aspect-ratio:16/10;object-fit:cover;object-position:center top}
.vg-badge{
  position:absolute;top:calc(10px + 20px);right:14px;z-index:2;
  font-size:.62rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  padding:6px 12px;border-radius:100px;backdrop-filter:blur(6px);
}
.vg.alt .vg-badge{background:rgba(11,9,8,.72);color:var(--donk)}
.vg.neu .vg-badge{background:var(--accent);color:var(--on-accent)}
.vg figcaption{margin-top:14px;font-size:.92rem;line-height:1.6;color:var(--muted)}
.vg figcaption b{display:block;color:var(--ink);font-weight:600;margin-bottom:4px;font-size:.98rem}

.vg-stats{
  display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin-top:clamp(28px,3.4vw,46px);
  background:var(--line2);border:1px solid var(--line2);border-radius:var(--rs);overflow:hidden;
}
.vg-stat{background:var(--surface);padding:24px 22px}
.vg-stat .vk{font-size:.64rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--faint);margin-bottom:12px}
.vg-stat .vv{display:flex;align-items:baseline;gap:9px;flex-wrap:wrap;font-size:1.05rem;line-height:1.2}
.vg-stat .de{color:var(--muted);text-decoration:line-through;text-decoration-color:rgba(11,9,8,.3)}
.vg-stat .para{font-size:1.5rem;font-weight:500;letter-spacing:-.02em;color:var(--accent)}
.vg-stat .nota{margin-top:9px;font-size:.78rem;line-height:1.5;color:var(--muted)}
.vg-fonte{margin-top:18px;font-size:.78rem;line-height:1.6;color:var(--faint);max-width:76ch}
.vg-fonte a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}

/* o que a ROSH construiu no projeto */
.vg-build-head{
  margin:clamp(38px,4.4vw,58px) 0 20px;font-size:.72rem;font-weight:700;
  letter-spacing:.16em;text-transform:uppercase;color:var(--accent);
  display:flex;align-items:center;gap:14px;
}
.vg-build-head::after{content:"";flex:1;height:1px;background:var(--line2)}
.vg-build{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,1.8vw,22px)}
.vg-build .bcard{
  background:var(--surface);border:1px solid var(--line2);border-radius:var(--rs);
  padding:26px;display:flex;flex-direction:column;gap:14px;
}
.vg-build .wi{margin-bottom:2px}
.vg-build b{font-weight:600;font-size:1.05rem;letter-spacing:-.01em;display:block}
.vg-build p{font-size:.92rem;line-height:1.7;color:var(--muted);margin:0}
@media(max-width:900px){.vg-build{grid-template-columns:1fr}}

@media(max-width:900px){
  .vergleich{grid-template-columns:1fr}
  .vg-stats{grid-template-columns:1fr 1fr}
}
@media(max-width:520px){.vg-stats{grid-template-columns:1fr}}

/* ---------- equipe (página Über uns) ---------- */
.team{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(18px,2.4vw,32px)}
.tm{display:flex;flex-direction:column;gap:18px}
.tm-foto{
  border-radius:var(--rs);overflow:hidden;aspect-ratio:3/4;background:var(--dark2);
  border:1px solid var(--line2);
}
.tm-foto img{
  width:100%;height:100%;object-fit:cover;object-position:center 22%;
  filter:grayscale(1) contrast(1.04);transition:filter .5s,transform .8s cubic-bezier(.22,.7,.3,1);
}
.tm:hover .tm-foto img{filter:grayscale(0);transform:scale(1.03)}
.tm h3{font-size:clamp(1.15rem,1.7vw,1.5rem);font-weight:500;letter-spacing:-.02em}
.tm .rolle{
  margin-top:6px;font-size:.66rem;font-weight:700;letter-spacing:.16em;
  text-transform:uppercase;color:var(--accent);
}
.tm p{margin-top:12px;font-size:.95rem;line-height:1.7;color:var(--muted)}
@media(max-width:900px){.team{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.team{grid-template-columns:1fr}}

/* quatro pilares em vez de três */
.pillars.vier{grid-template-columns:repeat(4,1fr)}
@media(max-width:1100px){.pillars.vier{grid-template-columns:1fr 1fr}}
@media(max-width:900px){.pillars.vier{grid-template-columns:1fr}}

/* faixa de números da página Über uns */
.zahlen{
  display:grid;grid-template-columns:repeat(3,1fr);gap:1px;
  background:var(--dline);border-radius:var(--rs);overflow:hidden;
}
.zahlen div{background:var(--dark2);padding:clamp(26px,3vw,40px)}
.zahlen b{
  display:block;font-size:clamp(2.2rem,4vw,3.4rem);font-weight:300;letter-spacing:-.04em;
  line-height:1;color:var(--accent-lt);margin-bottom:12px;
}
.zahlen span{font-size:.95rem;line-height:1.6;color:var(--dmuted)}
@media(max-width:900px){.zahlen{grid-template-columns:1fr}}

/* ---------- para quem é ---------- */
.forwho{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.wcard{display:flex;gap:14px;align-items:flex-start;background:var(--surface);border:1px solid var(--line2);border-radius:var(--rs);padding:22px}
.wi{width:42px;height:42px;border-radius:11px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;flex-shrink:0}
.wi svg{width:21px;height:21px}
.wcard b{display:block;margin-bottom:3px;font-weight:600}
.wcard span{font-size:.92rem;color:var(--muted)}

/* ---------- antes / depois ---------- */
.split{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.tcard{background:var(--surface);border:1px solid var(--line2);border-radius:var(--r);padding:32px}
.tcard.after{background:var(--accent-soft);border-color:rgba(192,73,15,.24)}
.tcard h3{font-weight:700;margin-bottom:18px;display:flex;align-items:center;gap:9px;text-transform:uppercase;font-size:.78rem;letter-spacing:.1em}
.tcard.before h3{color:var(--muted)}
/* laranja padrão sobre o bege do card "depois" ficaria em 4,39:1 — usa o tom escuro */
.tcard.after h3{color:var(--accent-dark)}
.tlist{display:flex;flex-direction:column;gap:13px}
.tlist li{display:flex;gap:12px;align-items:flex-start;font-size:.98rem;color:var(--ink2)}
.tlist svg{width:19px;height:19px;flex-shrink:0;margin-top:3px}
.before .tlist svg{color:var(--faint)}
.after .tlist svg{color:var(--accent-dark)}

/* ---------- formulário ---------- */
.form-shell{
  display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;
  background:var(--surface);border:1px solid var(--line2);border-radius:28px;padding:48px;
  position:relative;overflow:hidden;
}
.form-shell::before{content:"";position:absolute;inset:0 0 auto 0;height:4px;background:var(--coucher)}
.form-left h2{margin:12px 0 14px}
.form-left p{color:var(--ink2);margin-bottom:22px}
.fben{display:flex;flex-direction:column;gap:11px}
.fben li{display:flex;gap:10px;align-items:center;font-size:.96rem;color:var(--ink2)}
.fben svg{width:19px;height:19px;color:var(--accent);flex:none}
.form-vid{margin-top:26px;border-radius:var(--rs);overflow:hidden;aspect-ratio:16/9;background:var(--dark);position:relative}
.form-vid video{width:100%;height:100%;object-fit:cover}
.form-vid .play{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  width:62px;height:62px;border-radius:50%;background:rgba(11,9,8,.6);backdrop-filter:blur(8px);
  border:1px solid rgba(241,235,225,.4);display:grid;place-items:center;color:var(--donk);
  cursor:pointer;transition:background .3s,transform .3s,opacity .3s;
}
.form-vid .play svg{width:22px;height:22px;margin-left:3px}
.form-vid:hover .play{background:var(--accent);border-color:var(--accent);transform:translate(-50%,-50%) scale(1.06)}
.form-vid.playing .play{opacity:0;pointer-events:none}
form{display:flex;flex-direction:column;gap:14px}
.krow{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.field label{display:block;font-size:.8rem;font-weight:600;margin-bottom:7px}
.field input,.field textarea{
  width:100%;background:var(--bg);border:1px solid var(--line);border-radius:12px;
  padding:13px 15px;color:var(--ink);font-size:1rem;font-family:inherit;transition:border-color .2s,box-shadow .2s;
}
.field textarea{min-height:104px;resize:vertical}
.field input::placeholder,.field textarea::placeholder{color:var(--faint)}
.field input:focus,.field textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px rgba(192,73,15,.13)}
.field.invalid input,.field.invalid textarea{border-color:#B3200F}
.field .err{color:#96190C;font-size:.78rem;margin-top:5px;display:none}
.field.invalid .err{display:block}
form .btn{margin-top:4px;padding:15px}
form .btn[disabled]{opacity:.55;cursor:not-allowed;transform:none}
.fnote{font-size:.78rem;color:var(--muted);text-align:center}
.success{display:none;text-align:center;padding:12px 0}
.success.show{display:block}
.success .ckk{width:66px;height:66px;border-radius:50%;background:var(--accent-soft);display:grid;place-items:center;margin:0 auto 16px;color:var(--accent)}
.success .ckk svg{width:32px;height:32px}
.success h3{font-size:1.4rem;margin-bottom:8px;font-weight:500}
.success p{color:var(--muted)}
/* honeypot anti-robô */
.hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}

/* ---------- quem faz ---------- */
.founder{display:grid;grid-template-columns:.82fr 1.18fr;gap:52px;align-items:center}
.founder-photo{aspect-ratio:4/5;border-radius:var(--r);background-size:cover;background-position:center top;box-shadow:0 24px 60px rgba(11,9,8,.18)}
.founder-txt h2{margin:16px 0 20px;max-width:18ch}
.founder-txt p{color:var(--ink2);margin-bottom:16px;font-size:1.02rem}
.fstats{display:flex;gap:36px;flex-wrap:wrap;margin:26px 0 22px}
.fstats b{font-size:1.9rem;font-weight:300;letter-spacing:-.03em;display:block;line-height:1;color:var(--accent)}
.fstats span{font-size:.8rem;color:var(--muted);margin-top:6px;display:block}
.fsign{display:flex;align-items:center;gap:8px;font-size:.92rem;color:var(--muted);border-top:1px solid var(--line2);padding-top:18px}
.fsign b{color:var(--ink);font-weight:600}
@media(max-width:900px){.founder{grid-template-columns:1fr;gap:30px}.founder-photo{max-width:360px}}

/* ---------- FAQ ---------- */
.faq{max-width:800px;margin:0 auto;display:flex;flex-direction:column;gap:10px}
.fitem{background:var(--surface);border:1px solid var(--line2);border-radius:var(--rs);overflow:hidden}
.fq{
  width:100%;text-align:left;background:none;border:none;color:var(--ink);padding:22px;
  font-size:1.05rem;font-weight:500;cursor:pointer;font-family:inherit;
  display:flex;justify-content:space-between;align-items:center;gap:14px;
}
.fq svg{width:20px;height:20px;color:var(--accent);transition:transform .3s;flex-shrink:0}
.fitem.open .fq svg{transform:rotate(45deg)}
.fa{max-height:0;overflow:hidden;transition:max-height .35s ease}
.fa p{padding:0 22px 22px;color:var(--muted)}

/* ---------- rodapé ---------- */
footer{background:var(--dark);color:var(--donk);padding:60px 0 40px}
.foot{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:32px;margin-bottom:36px}
.foot .bname{color:var(--donk)}
.foot .bname small{color:var(--dfaint)}
.foot h4{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--dfaint);margin-bottom:14px;font-weight:700}
.foot h4.mt{margin-top:26px}
.foot .fadr{color:var(--dmuted);font-size:.92rem;line-height:1.5;margin-bottom:12px}
.foot .fadr b{display:block;color:var(--donk);font-weight:600;margin-bottom:1px}
.foot a{display:block;color:var(--dmuted);font-size:.94rem;margin-bottom:9px}
.foot a:hover{color:var(--accent-lt)}
.foot p{color:var(--dmuted);font-size:.92rem;max-width:320px;margin-top:14px}
.foot-bottom{
  border-top:1px solid var(--dline);padding-top:22px;display:flex;justify-content:space-between;
  flex-wrap:wrap;gap:10px;color:var(--dfaint);font-size:.84rem;
}

/* ---------- revelação ---------- */
.reveal{opacity:0;transform:translateY(20px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}
.reveal.in{opacity:1;transform:none}

@media(max-width:900px){
  section{padding:72px 0}
  .eco,.pillars,.forwho,.split,.form-shell,.foot{grid-template-columns:1fr}
  .form-shell{padding:32px 24px}
  .krow{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important}
  .reveal{opacity:1;transform:none}
  .mtrack{animation:none;overflow-x:auto}
}

/* ─────────────────────────────────────────────────────────────
   Seções trazidas da landing do vendedor (rosh-web)
   ───────────────────────────────────────────────────────────── */

/* resposta dentro do card "por quê" */
.eanswer{margin-top:auto;padding-top:16px;border-top:1px solid rgba(11,9,8,.10)}
.eanswer b{display:block;font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;
  color:var(--accent-dark);font-weight:700;margin-bottom:5px}
.eanswer span{font-size:.95rem;line-height:1.5;color:var(--ink2)}
/* .ecard.here é claro, só a borda muda — o texto segue o mesmo dos outros cards */

/* faixa de citação */
.zitat{padding:clamp(60px,8vw,110px) 0}
.zitat blockquote{max-width:900px;margin:0 auto;text-align:center}
.zitat p{font-size:clamp(1.6rem,3.6vw,2.9rem);line-height:1.16;letter-spacing:-.02em;
  font-weight:500;color:var(--donk)}
.zitat footer{margin-top:22px;font-size:1rem;line-height:1.55;color:var(--dmuted)}

/* o sistema: duas pernas */
.system{display:grid;grid-template-columns:1fr 1fr;gap:clamp(18px,2.4vw,30px)}
.sybein{background:var(--surface);border:1px solid rgba(11,9,8,.09);border-radius:var(--r);overflow:hidden;
  display:flex;flex-direction:column}
.sy-foto{position:relative;aspect-ratio:16/10;background-size:cover;background-position:center}
.sy-tag{position:absolute;left:14px;bottom:14px;background:rgba(11,9,8,.78);color:var(--donk);
  font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700;
  padding:7px 12px;border-radius:999px;backdrop-filter:blur(6px)}
.sy-txt{padding:clamp(22px,2.6vw,32px)}
.sy-kicker{display:block;font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;
  color:var(--accent-dark);font-weight:700;margin-bottom:10px}
.sy-txt h3{font-size:clamp(1.15rem,1.9vw,1.5rem);line-height:1.2;margin-bottom:12px}
.sy-txt p{color:var(--ink2);line-height:1.62}
.sy-schluss{margin-top:clamp(26px,3.4vw,44px);text-align:center;
  font-size:clamp(1.05rem,1.9vw,1.45rem);line-height:1.45;font-weight:500;color:var(--ink)}

/* por que a ROSH */
.wpunkte{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(18px,2.6vw,34px)}
.wpunkt{border-top:1px solid var(--dline);padding-top:22px}
.wnum{display:block;font-size:.72rem;letter-spacing:.2em;font-weight:700;color:var(--accent-lt);margin-bottom:14px}
.wpunkt h3{font-size:clamp(1.05rem,1.7vw,1.35rem);line-height:1.22;margin-bottom:11px;color:var(--donk)}
.wpunkt p{color:var(--dmuted);line-height:1.62;font-size:.98rem}

@media (max-width:860px){
  .system{grid-template-columns:1fr}
  .wpunkte{grid-template-columns:1fr;gap:26px}
}

/* ─────────────────────────────────────────────────────────────
   Página de contato (kontakt.html) e de obrigado (danke.html)
   ───────────────────────────────────────────────────────────── */
.kt-hero{padding:clamp(90px,12vw,150px) 0 clamp(40px,5vw,64px);background:var(--bg)}
.kt-hero h1{max-width:19ch;margin:18px 0 20px}
.kt-hero > .wrap > p{font-size:clamp(1.02rem,1.7vw,1.22rem);color:var(--ink2);max-width:62ch;line-height:1.6}
.kt-direto{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:26px;
  font-size:.95rem;color:var(--muted)}
.kt-mail{font-weight:600;color:var(--accent);border-bottom:1px solid rgba(192,73,15,.35);padding-bottom:2px}
.kt-mail:hover{color:var(--accent-dark);border-bottom-color:var(--accent-dark)}
.kt-sep{color:var(--line)}

.kt-shell{display:grid;grid-template-columns:1.35fr .85fr;gap:clamp(20px,3vw,44px);align-items:start}
.kt-form{background:var(--surface);border:1px solid var(--line2);border-radius:var(--r);
  padding:clamp(24px,3vw,40px)}
.kt-lado{background:var(--accent-soft);border-radius:var(--r);padding:clamp(24px,3vw,36px)}
.kt-lado h2{font-size:clamp(1.2rem,2vw,1.6rem);margin-bottom:12px}
.kt-lado > p{color:var(--ink2);line-height:1.6;margin-bottom:20px;font-size:.97rem}
.kt-lado .btn{width:100%;margin-bottom:22px}
.kt-lado .fben{border-top:1px solid rgba(11,9,8,.10);padding-top:18px}

/* select do serviço, no mesmo desenho dos outros campos */
.field select{
  width:100%;font-family:inherit;font-size:1rem;color:var(--ink);
  background:var(--surface) url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230B0908' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 16px center/17px;
  border:1px solid var(--line);border-radius:var(--rs);padding:14px 46px 14px 16px;
  appearance:none;cursor:pointer;transition:border-color .2s;
}
.field select:focus{outline:none;border-color:var(--accent)}

/* endereços */
.standorte{display:grid;grid-template-columns:1fr 1fr;gap:clamp(18px,2.4vw,28px)}
.std{background:var(--surface);border:1px solid var(--line2);border-radius:var(--r);
  padding:clamp(24px,3vw,36px)}
.std-kicker{display:block;font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;
  color:var(--accent-dark);font-weight:700;margin-bottom:10px}
.std h3{font-size:clamp(1.15rem,1.9vw,1.5rem);margin-bottom:16px}
.std address{font-style:normal;display:flex;flex-direction:column;gap:2px;margin-bottom:16px;
  font-size:1.05rem;line-height:1.5;color:var(--ink)}
.std-kanton{font-size:.88rem;color:var(--muted);margin-top:4px}
.std p{color:var(--ink2);line-height:1.62;margin-bottom:18px;font-size:.97rem}
.std-map{font-size:.9rem;font-weight:500;color:var(--accent);
  border-bottom:1px solid rgba(192,73,15,.32);padding-bottom:2px}
.std-map:hover{color:var(--accent-dark)}

/* o que acontece depois */
.passos{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(18px,2.6vw,32px)}
.passo{display:flex;gap:16px;align-items:flex-start;border-top:1px solid var(--dline);padding-top:22px}
.passo-ic{width:40px;height:40px;border-radius:12px;background:rgba(245,166,35,.13);
  display:flex;align-items:center;justify-content:center;flex:none}
.passo-ic svg{width:20px;height:20px;color:var(--accent-lt)}
.passo-n{display:block;font-size:.7rem;letter-spacing:.2em;font-weight:700;
  color:var(--accent-lt);margin-bottom:8px}
.passo h3{font-size:1.05rem;line-height:1.25;margin-bottom:8px;color:var(--donk)}
.passo p{color:var(--dmuted);line-height:1.6;font-size:.94rem}

/* obrigado */
.danke{min-height:78svh;display:flex;align-items:center;text-align:center;
  padding:clamp(70px,10vw,120px) 0}
.danke .wrap{max-width:820px}
.danke-ic{width:64px;height:64px;border-radius:50%;background:var(--accent-soft);
  display:flex;align-items:center;justify-content:center;margin:0 auto 24px}
.danke-ic svg{width:30px;height:30px;color:var(--accent)}
.danke h1{font-size:clamp(2rem,4.6vw,3.2rem);margin:14px 0 18px}
.danke-p{font-size:clamp(1.02rem,1.7vw,1.18rem);color:var(--ink2);line-height:1.6;
  max-width:56ch;margin:0 auto}
.danke-caixa{margin-top:clamp(38px,5vw,60px);text-align:left}
.danke-caixa h2{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;
  color:var(--muted);font-weight:600;margin-bottom:16px;text-align:center}
.danke-links{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.danke-card{background:var(--surface);border:1px solid var(--line2);border-radius:var(--rs);
  padding:20px;transition:transform .25s,box-shadow .25s,border-color .25s}
.danke-card:hover{transform:translateY(-3px);border-color:rgba(192,73,15,.3);
  box-shadow:0 14px 32px rgba(11,9,8,.08)}
.danke-card b{display:block;font-weight:600;margin-bottom:6px;font-size:1rem}
.danke-card span{font-size:.9rem;color:var(--muted);line-height:1.5}
.danke-volta{margin-top:36px;font-size:.95rem;color:var(--muted)}
.danke-volta a:hover{color:var(--accent)}

@media (max-width:900px){
  .kt-shell{grid-template-columns:1fr}
  .standorte{grid-template-columns:1fr}
  .passos{grid-template-columns:1fr;gap:24px}
  .danke-links{grid-template-columns:1fr}
}

/* ─────────────────────────────────────────────────────────────
   Caso Koster (projekt-koster.html)
   ───────────────────────────────────────────────────────────── */
.khero{position:relative;min-height:74svh;display:flex;align-items:flex-end;
  overflow:hidden;background:var(--dark);color:var(--donk);padding:0 0 clamp(44px,6vw,76px)}
.khero-img{position:absolute;inset:0;background:url('media/img/koster/kran-hebt.jpg') center/cover}
.khero-ov{position:absolute;inset:0;background:
  linear-gradient(90deg,rgba(11,9,8,.92) 0%,rgba(11,9,8,.7) 46%,rgba(11,9,8,.3) 100%),
  linear-gradient(180deg,rgba(11,9,8,.5) 0%,rgba(11,9,8,.25) 40%,rgba(11,9,8,.9) 100%)}
.khero-in{position:relative;z-index:2}
.khero .eyebrow{color:var(--accent-lt)}
.khero h1{max-width:17ch;margin:18px 0 20px;color:var(--donk)}
.khero-in > p{font-size:clamp(1.02rem,1.7vw,1.2rem);color:var(--dmuted);max-width:60ch;line-height:1.6}
.khero-meta{display:flex;gap:clamp(28px,5vw,64px);margin-top:32px;flex-wrap:wrap}
.khero-meta span{display:flex;flex-direction:column;gap:3px}
.khero-meta b{font-size:clamp(1.5rem,3vw,2.2rem);font-weight:300;letter-spacing:-.03em;color:var(--accent-lt)}
.khero-meta small{font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--dfaint);font-weight:600}

/* antes */
.kv-lista{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(18px,2.6vw,30px);margin-bottom:clamp(34px,4.5vw,54px)}
.kv-item{display:flex;gap:14px;align-items:flex-start;background:var(--surface);
  border:1px solid var(--line2);border-radius:var(--r);padding:clamp(22px,2.6vw,30px)}
.kv-x{width:34px;height:34px;border-radius:10px;background:rgba(192,73,15,.10);
  display:flex;align-items:center;justify-content:center;flex:none}
.kv-x svg{width:17px;height:17px;color:var(--accent)}
.kv-item h3{font-size:1.05rem;line-height:1.25;margin-bottom:8px}
.kv-item p{color:var(--ink2);line-height:1.6;font-size:.95rem}

.kvergleich{display:grid;grid-template-columns:1fr 1fr;gap:clamp(14px,2vw,24px)}
.kvg{position:relative;border-radius:var(--rs);overflow:hidden;border:1px solid var(--line2)}
.kvg img{width:100%;display:block}
.kvg-badge{position:absolute;top:12px;left:12px;z-index:2;font-size:.62rem;font-weight:700;
  letter-spacing:.16em;text-transform:uppercase;padding:6px 12px;border-radius:999px;backdrop-filter:blur(6px)}
.kvg-badge.alt{background:rgba(11,9,8,.78);color:var(--donk)}
.kvg-badge.neu{background:var(--accent);color:var(--on-accent)}
.knota{margin-top:26px;font-size:.93rem;line-height:1.65;color:var(--muted);
  max-width:78ch;border-left:2px solid var(--line);padding-left:16px}

/* as páginas */
.kseiten{display:grid;grid-template-columns:1fr 1fr;gap:clamp(22px,3vw,40px)}
.kseite{background:var(--dcard);border:1px solid var(--dline);border-radius:var(--r);overflow:hidden}
.kseite-img{background:#0F0C0B;overflow:hidden}
.kseite-img img{width:100%;display:block;transition:transform .8s cubic-bezier(.22,.7,.3,1)}
.kseite:hover .kseite-img img{transform:scale(1.03)}
.kseite figcaption{padding:clamp(20px,2.4vw,28px)}
.kseite-n{display:block;font-size:.68rem;letter-spacing:.2em;font-weight:700;color:var(--accent-lt);margin-bottom:9px}
.kseite h3{font-size:clamp(1.05rem,1.7vw,1.32rem);margin-bottom:9px;color:var(--donk)}
.kseite p{color:var(--dmuted);line-height:1.6;font-size:.94rem}

/* números */
.kzahlen{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,2.2vw,26px)}
.kz{background:var(--surface);border:1px solid var(--line2);border-radius:var(--r);padding:clamp(20px,2.4vw,28px)}
.kz-k{font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:600;margin-bottom:14px;min-height:2.4em}
.kz-v{display:flex;align-items:baseline;gap:10px;margin-bottom:10px;flex-wrap:wrap}
.kz-de{font-size:1.1rem;color:var(--faint);text-decoration:line-through;text-decoration-thickness:1px}
.kz-para{font-size:clamp(1.6rem,3vw,2.3rem);font-weight:300;letter-spacing:-.03em;color:var(--accent)}
.kz-n{font-size:.86rem;line-height:1.5;color:var(--ink2)}
.kfonte{margin-top:26px;font-size:.84rem;line-height:1.65;color:var(--faint);max-width:82ch}

/* o que a ROSH fez */
.kbauten{display:grid;grid-template-columns:1fr 1fr;gap:clamp(18px,2.6vw,30px)}
.kbau{display:flex;gap:16px;align-items:flex-start;border-top:1px solid var(--line);padding-top:24px}
.kbau-ic{width:42px;height:42px;border-radius:12px;background:var(--accent-soft);
  display:flex;align-items:center;justify-content:center;flex:none}
.kbau-ic svg{width:20px;height:20px;color:var(--accent)}
.kbau h3{font-size:1.08rem;line-height:1.25;margin-bottom:9px}
.kbau p{color:var(--ink2);line-height:1.62;font-size:.95rem}

/* filme */
.kfilm{position:relative;border-radius:var(--r);overflow:hidden;background:#000;max-width:1000px;margin:0 auto}
.kfilm video{width:100%;display:block;aspect-ratio:16/9;object-fit:cover}
.kfilm-som{position:absolute;right:16px;bottom:16px;width:46px;height:46px;border-radius:50%;
  border:1px solid rgba(241,235,225,.3);background:rgba(11,9,8,.6);color:var(--donk);
  display:flex;align-items:center;justify-content:center;cursor:pointer;backdrop-filter:blur(8px);
  transition:background .3s}
.kfilm-som svg{width:19px;height:19px}

/* cta */
.kcta{text-align:center;background:var(--accent-soft);border-radius:var(--r);padding:clamp(38px,5vw,64px)}
.kcta h2{max-width:22ch;margin:0 auto 16px}
.kcta > p{color:var(--ink2);max-width:56ch;margin:0 auto 26px;line-height:1.6}
.kcta-btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}

@media (max-width:900px){
  .kv-lista,.kseiten,.kzahlen,.kbauten,.kvergleich{grid-template-columns:1fr}
  .kz-k{min-height:0}
}

/* vídeo lado a lado */
.rolar{max-width:1100px;margin:0 auto}
.rolar-rot{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px;
  font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700}
.rolar-alt{color:var(--dfaint)}
.rolar-neu{color:var(--accent-lt)}
.rolar video{width:100%;display:block;border-radius:var(--rs);background:#000}

/* pares antes/depois */
.pares{display:flex;flex-direction:column;gap:clamp(34px,4.5vw,58px)}
.par-titulo{font-size:clamp(1.1rem,1.9vw,1.45rem);margin-bottom:16px;
  padding-bottom:12px;border-bottom:1px solid var(--line)}
.par-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(14px,2vw,24px)}
.par-img{position:relative;border-radius:var(--rs);overflow:hidden;border:1px solid var(--line2);background:#0F0C0B}
.par-img img{width:100%;display:block}
.par-tag{position:absolute;top:11px;left:11px;font-size:.6rem;font-weight:700;letter-spacing:.16em;
  text-transform:uppercase;padding:5px 11px;border-radius:999px;backdrop-filter:blur(6px)}
.par-tag.alt{background:rgba(11,9,8,.8);color:var(--donk)}
.par-tag.neu{background:var(--accent);color:var(--on-accent)}
.par-lado figcaption{margin-top:12px;font-size:.92rem;line-height:1.55;color:var(--ink2)}

@media (max-width:900px){
  .par-grid{grid-template-columns:1fr}
  .rolar-rot{grid-template-columns:1fr;gap:4px}
}
.par{display:block}

/* antes/depois em vídeo, no formato da landing do vendedor */
.ba{display:grid;grid-template-columns:1fr 1fr;gap:clamp(14px,2vw,22px);max-width:1100px;margin:0 auto}
.shotbox{border:1px solid var(--dline);border-radius:var(--rs);overflow:hidden;background:#0d0d0d}
.shotbox .bar{display:flex;align-items:center;gap:6px;padding:10px 13px;
  border-bottom:1px solid var(--dline);background:rgba(241,235,225,.04)}
.shotbox .bar .d{width:8px;height:8px;border-radius:50%;border:1px solid rgba(241,235,225,.28);flex:none}
.shotbox .bar .url{font-size:10.5px;color:var(--dfaint);margin-left:8px;letter-spacing:.4px}
.shotbox video{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;background:#0d0d0d}
.shotbox .lbl{padding:10px 13px;border-top:1px solid var(--dline);
  font-size:10px;font-weight:700;letter-spacing:2.4px;text-transform:uppercase}
.shotbox.alt .lbl{color:var(--dfaint)}
.shotbox.neu .lbl{color:var(--accent-lt)}
@media (max-width:820px){ .ba{grid-template-columns:1fr} }
