/* fontes servidas pelo próprio site (antes vinham do Google Fonts e seguravam a página) */
@font-face{font-family:'Bricolage Grotesque';font-style:normal;font-weight:600 700;font-display:swap;src:url('/assets/fontes/bricolage.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Figtree';font-style:normal;font-weight:400 600;font-display:swap;src:url('/assets/fontes/figtree.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:500;font-display:swap;src:url('/assets/fontes/jetbrains-mono.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{
  --canvas:#EEF1EA;
  --panel:#F8FAF5;
  --panel-2:#E3E9DF;
  --ink-deep:#16231F;
  --ink-deep-2:#1E2E29;
  --accent:#1E7A5C;
  --accent-hover:#16634A;
  --accent-muted:#9CC7B4;
  --text-primary:#1B2824;
  --text-secondary:#4A5A53;
  --line:#C9D3C8;
  --line-strong:#7D8F86;
  --cream:#F4F1E8;
  --cream-2:#D9DED3;
  --lamp:#E9B872;
  --ease-out:cubic-bezier(.22,.8,.24,1);
  --ease-soft:cubic-bezier(.45,.05,.25,1);
  /* molas geradas com spring() do Motion: 0.35s quique .47 (750ms) e 0.45s quique .57 (1200ms) */
  --spring-hover:linear(0, 0.0916, 0.3012, 0.5471, 0.7736, 0.9499, 1.0658, 1.1252, 1.1403, 1.1257, 1.0955, 1.061, 1.0296, 1.0055, 0.9899, 0.9821, 0.9803, 0.9826, 0.9869, 0.9918, 0.9961, 0.9994, 1.0015, 1.0026, 1);
  --spring-icon:linear(0, 0.0574, 0.2024, 0.3961, 0.6044, 0.8006, 0.9666, 1.0923, 1.1746, 1.216, 1.2229, 1.2036, 1.1672, 1.1222, 1.0758, 1.0334, 0.9986, 0.9732, 0.9574, 0.9505, 0.9508, 0.9564, 0.9653, 0.9756, 0.9858, 0.9949, 1.0021, 1.0072, 1.0102, 1.0112, 1.0108, 1.0093, 1.0071, 1.0048, 1.0026, 1.0006, 0.9992, 0.9982, 0.9976, 1);
  --tshadow:0 1px 2px rgba(8,14,12,.95),0 3px 12px rgba(8,14,12,.72),0 10px 44px rgba(8,14,12,.7);
  --f-display:'Bricolage Grotesque',ui-sans-serif,system-ui,sans-serif;
  --f-text:'Figtree',ui-sans-serif,system-ui,sans-serif;
  --f-mono:'JetBrains Mono',ui-monospace,monospace;
}
*,*::before,*::after{box-sizing:border-box}
html{overflow-x:hidden;overflow-x:clip;scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;overflow-x:hidden;overflow-x:clip;background:radial-gradient(ellipse 70% 40% at 78% 0%,rgba(233,184,114,.13),rgba(233,184,114,0) 70%) no-repeat,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .1 0 0 0 0 .15 0 0 0 0 .13 0 0 0 .021 0'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E"),var(--canvas);color:var(--text-primary);font-family:var(--f-text);font-size:1.0625rem;line-height:1.6;-webkit-font-smoothing:antialiased}
@keyframes pagein{from{opacity:0}to{opacity:1}}
img{display:block;max-width:100%}
a{color:inherit}
h1,h2,h3{font-family:var(--f-display);font-weight:700;letter-spacing:-.02em;line-height:1.04;margin:0;text-wrap:balance}
p{margin:0}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
.skip{position:fixed;left:16px;top:-60px;z-index:100;background:var(--accent);color:#fff;padding:10px 16px;border-radius:10px;text-decoration:none;transition:top .3s var(--ease-out)}
.skip:focus{top:16px}
:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:6px}
.mono{font-family:var(--f-mono);font-weight:500;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase}

/* ambiente fixo: brilho de luminária derivando + grão */
body.paused *,body.paused *::before,body.paused *::after{animation-play-state:paused!important}
/* animações contínuas só rodam na seção visível */
main>section:not(.live) *,main>section:not(.live) *::before,main>section:not(.live) *::after,.hero:not(.live) .cue *{animation:none!important}
main>section:not(.live) .dust{display:none}

/* botões */
.btn{--bg:var(--accent);display:inline-flex;align-items:center;justify-content:center;gap:.6em;font-family:var(--f-text);font-weight:600;font-size:1rem;line-height:1;padding:.95em 1.35em;border-radius:999px;border:0;background:var(--bg);color:#fff;text-decoration:none;cursor:pointer;position:relative;text-shadow:none;transition:transform 750ms var(--spring-hover),background-color .3s var(--ease-out)}
.btn:hover{background:var(--accent-hover);transform:translateY(-2px)}
.btn:active{transform:translateY(0) scale(.94);transition-duration:520ms,.3s}
.btn svg{width:1.15em;height:1.15em;flex:none}
.btn.ghost{background:transparent;color:inherit;box-shadow:inset 0 0 0 1.5px currentColor}
.btn.ghost:hover{background:rgba(255,255,255,.08)}
.btn.glow{box-shadow:0 10px 28px -10px rgba(30,122,92,.6)}
@media (pointer:coarse){.btn{min-height:44px;display:inline-flex;align-items:center;justify-content:center}}

/* nav */
.nav{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;justify-content:center;padding:14px 16px;pointer-events:none}
.nav-in{pointer-events:auto;display:flex;align-items:center;gap:clamp(12px,2.4vw,32px);width:min(1200px,100%);padding:8px 8px 8px 20px;border-radius:999px;background:rgba(14,22,19,.42);border:1px solid rgba(244,241,232,.14);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);color:var(--cream);transition:background-color .5s var(--ease-out),color .5s var(--ease-out),border-color .5s var(--ease-out)}
.nav.solid .nav-in{background:rgba(248,250,245,.86);color:var(--text-primary);border-color:var(--line)}
.brand{display:flex;align-items:center;gap:10px;font-family:var(--f-display);font-weight:700;font-size:1.2rem;letter-spacing:-.02em;text-decoration:none;margin-right:auto}
.brand svg{width:28px;height:28px}
.nav-links{position:relative;display:flex;gap:clamp(4px,1vw,14px);list-style:none;margin:0;padding:0}
.nav-links a{position:relative;z-index:1;display:inline-block;padding:7px 12px;border-radius:999px;text-decoration:none;font-weight:500;font-size:.95rem;opacity:.86;transition:opacity .3s var(--ease-out),transform 750ms var(--spring-hover)}
.nav-links a:hover,.nav-links a.on{opacity:1}
.nav-links a:hover{transform:translateY(-1px)}
/* pastilha que desliza entre os itens: só transform e opacidade */
.nav-pill{position:absolute;left:0;top:50%;width:100px;height:34px;margin-top:-17px;border-radius:999px;background:rgba(244,241,232,.16);opacity:0;transform-origin:left center;pointer-events:none}
.nav-pill.css{transition:transform 750ms var(--spring-hover),opacity .3s var(--ease-out)}
.nav.solid .nav-pill{background:rgba(30,122,92,.14)}
.rm .nav-pill{transition:none}
.nav .btn{padding:.8em 1.1em;font-size:.92rem}
@media (max-width:900px){.nav-links{display:none}}
@media (max-width:420px){.nav .btn .lbl-long{display:none}}

/* ============ HERO ============ */
/* o topo é desenhado depois do conteúdo: como nunca se sobrepõem, as seções não viram camadas por causa do vídeo grudado */
.hero{position:relative;z-index:2;height:100vh;height:100svh}
.stage{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden;background:#2B3430}
.poster,.ending-layer{position:absolute;inset:0;background-size:cover;background-position:0% 35%}
.ending-layer{opacity:0}
#hero-video,#hero-seq{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:0% 35%;opacity:0;transform:translateZ(0);transition:opacity .8s var(--ease-out)}
#hero-seq{display:none}
.stage.seq #hero-seq{display:block}
.stage.seq #hero-video{display:none}
.stage.video-ready #hero-video,.stage.video-ready #hero-seq{opacity:1}
.stage.video-failed #hero-video,.stage.video-failed #hero-seq{display:none}
.scrim{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(10,16,14,.62) 0%,rgba(10,16,14,.4) 32%,rgba(10,16,14,.08) 55%,rgba(10,16,14,0) 70%),radial-gradient(ellipse 120% 90% at 50% 45%,rgba(10,16,14,0) 40%,rgba(10,16,14,.5) 100%)}
.stage-fade{position:absolute;left:0;right:0;bottom:0;height:10vh;background:linear-gradient(180deg,rgba(238,241,234,0),rgba(238,241,234,.0) 30%,rgba(238,241,234,.9));pointer-events:none;opacity:0}
.bands{position:absolute;inset:0;color:var(--cream)}
.band{position:absolute;left:clamp(20px,6.5vw,110px);top:50%;width:min(600px,40vw);transform:translateY(-44%);opacity:0;text-shadow:var(--tshadow);--k:0}
.band::before{content:"";position:absolute;inset:-22% -30% -22% -40%;z-index:-1;pointer-events:none;opacity:calc(.25 + .75*var(--k,1));background:radial-gradient(ellipse 60% 58% at 42% 50%,rgba(8,14,12,var(--pk,.62)) 0%,rgba(8,14,12,calc(var(--pk,.62)*.66)) 46%,rgba(8,14,12,0) 76%)}
.band .kick{display:inline-block;margin-bottom:18px;padding:7px 12px;border-radius:10px;background:rgba(10,16,14,.62);border:1px solid rgba(244,241,232,.2);text-shadow:0 1px 3px rgba(5,5,10,.85);color:var(--cream)}
.band .display{font-family:var(--f-display);font-weight:700;letter-spacing:-.02em;line-height:1.04;margin:0;text-wrap:balance;font-size:clamp(2.2rem,3.9vw,4rem);color:var(--cream)}
.kick{line-height:1.45}
.band .sub{margin-top:18px;font-size:clamp(1.05rem,1.35vw,1.3rem);color:var(--cream-2);max-width:30ch;--ks:clamp(0,(var(--k) - .55)*4,1);opacity:var(--ks);transform:translateY(calc((1 - var(--ks))*10px))}
.band .row{margin-top:28px;display:flex;flex-wrap:wrap;gap:12px;--kb:clamp(0,(var(--k) - .78)*5,1);opacity:var(--kb);transform:translateY(calc((1 - var(--kb))*14px))}
.band .row .btn.ghost{color:var(--cream)}
.w{display:inline-block;white-space:nowrap}
.c{display:inline-block}
/* (c) desfoque para nítido */
.fx-blur{display:grid}
.fx-blur>*{grid-area:1/1}
.fx-blur .soft{filter:blur(10px);opacity:calc(1 - var(--k))}
.fx-blur .sharp{opacity:var(--k)}
/* (f) deriva para baixo */
/* (e) subida em etapas */
[data-fx=rise] .display .w{--kc:clamp(0,(var(--k) - var(--th,0))*3,1);opacity:var(--kc);transform:translateY(calc((1 - var(--kc))*30px))}
.cue{position:absolute;left:50%;bottom:28px;transform:translateX(-50%);color:var(--cream);display:flex;flex-direction:column;align-items:center;gap:8px;opacity:var(--cue,1);transition:opacity .4s}
.ring{width:44px;height:44px;transform:rotate(-90deg)}
.ring .track{stroke:rgba(244,241,232,.22)}
.ring .bar{stroke:var(--cream);transition:stroke-dashoffset .12s linear}
.chev{width:22px;height:22px;animation:chev 2.4s var(--ease-soft) infinite;animation-delay:-.8s}
@keyframes chev{0%,100%{opacity:.45}50%{opacity:1}}
.static-copy{display:none}
@media (max-height:560px){.cue{display:none}}

/* hero estático: só movimento reduzido, igual ao JS */
@media (prefers-reduced-motion: reduce){
  .hero{height:auto}
  .stage{position:relative;height:auto;min-height:100svh;display:flex;align-items:flex-end;background:#2B3430 url('/assets/hero-static.webp') 68% center/cover no-repeat}
  #hero-video,#hero-seq,.bands,.cue,.poster,.ending-layer,.stage-fade{display:none}
  .scrim{background:linear-gradient(180deg,rgba(10,16,14,.25) 0%,rgba(10,16,14,.35) 40%,rgba(10,16,14,.86) 100%)}
  .static-copy{display:block;position:relative;padding:120px 20px 56px;color:var(--cream);text-shadow:var(--tshadow);width:min(640px,100%)}
  .static-copy .kick{display:inline-block;margin-bottom:16px;padding:7px 12px;border-radius:10px;background:rgba(10,16,14,.5);border:1px solid rgba(244,241,232,.2)}
  .static-copy .h1{font-family:var(--f-display);font-weight:700;letter-spacing:-.02em;line-height:1.04;margin:0;font-size:clamp(2.2rem,8.5vw,3.6rem);max-width:16ch}
  .static-copy p:not(.h1){margin-top:16px;color:var(--cream-2);font-size:1.08rem;max-width:40ch}
  .static-copy .row{margin-top:26px;display:flex;flex-wrap:wrap;gap:12px}
  .static-copy .btn{text-shadow:none}
  .static-copy .btn.ghost{color:var(--cream)}
}
/* celular e tablet em pé: vídeo em cima, frases num painel embaixo */
@media (max-width: 720px) and (prefers-reduced-motion: no-preference), (orientation: portrait) and (max-width: 1024px) and (prefers-reduced-motion: no-preference), (orientation: portrait) and (pointer: coarse) and (prefers-reduced-motion: no-preference){
  .stage{background:var(--ink-deep)}
  .poster,.ending-layer,#hero-video,#hero-seq,.scrim{top:72px;bottom:auto;height:calc(62svh - 72px)}
  .poster,.ending-layer{background-position:79% center}
  #hero-video,#hero-seq{object-position:79% center}
  .scrim{background:linear-gradient(180deg,rgba(22,35,31,1) 0%,rgba(22,35,31,0) 14%,rgba(22,35,31,0) 72%,rgba(22,35,31,1) 100%)}
  .stage-fade{display:none}
  .bands{top:62svh;bottom:0;height:auto}
  .band{left:20px;right:20px;top:0;bottom:0;width:auto;transform:none;display:flex;flex-direction:column;justify-content:flex-start;padding:2.6svh 0 16px;text-shadow:none}
  .band::before{display:none}
  .band .kick{margin-bottom:10px;align-self:flex-start;font-size:.66rem;padding:5px 10px}
  .band .display{font-size:clamp(1.6rem,7vw,2.4rem)}
  .band .sub{margin-top:8px;font-size:.95rem;line-height:1.5}
  .band .row{margin-top:14px}
  .band .row .btn.ghost{display:none}
  .cue{top:calc(62svh - 64px);bottom:auto}
}
@media (max-width: 720px) and (max-height: 700px) and (prefers-reduced-motion: no-preference){
  .band .display{font-size:clamp(1.55rem,6.8vw,2rem)}
  .band .kick{font-size:.62rem;margin-bottom:8px;padding:5px 9px}
  .band .sub{display:none}
  .band{padding-top:2svh}
}
@media (orientation: landscape) and (max-height: 560px){
  .stage-fade{display:none}
  .band{top:58%}
  .band .sub{display:none}
  .band .display{font-size:clamp(1.4rem,3.2vw,2rem)}
  .band .sub{font-size:.95rem;margin-top:10px}
  .band .row{margin-top:14px}
  .band .kick{display:none}
}
@media (min-width: 721px) and (orientation: landscape) and (prefers-reduced-motion: reduce){
  .stage{align-items:center}
  .static-copy{padding-left:clamp(20px,6.5vw,110px)}
}

/* ============ SEÇÕES ============ */
main{display:block;position:relative;z-index:1}
section{position:relative;scroll-margin-top:90px}
.wrap{width:min(1200px,100% - 40px);margin-inline:auto}
.kicker{display:inline-flex;align-items:center;gap:10px;color:var(--accent)}
.kicker::before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor;box-shadow:0 0 0 4px rgba(30,122,92,.14)}
.h2{font-size:clamp(2.2rem,4.8vw,4rem);margin-top:14px;max-width:20ch}
.lede{margin-top:18px;color:var(--text-secondary);font-size:1.15rem;max-width:52ch}

/* entrada coreografada */
.rv{opacity:0;transform:translateY(22px);transition:opacity .9s var(--ease-out),transform .9s var(--ease-out)}
.in .rv,.rv.in{opacity:1;transform:none}
.in .rv:nth-child(2){transition-delay:.08s}
.in .rv:nth-child(3){transition-delay:.16s}
.in .rv:nth-child(4){transition-delay:.24s}
.in .rv:nth-child(5){transition-delay:.32s}
.in.done .rv,.in.done .rv:nth-child(n){transition-delay:0s!important}
.rv.m{transition:none!important}

/* S1 serviços */
.services{padding:clamp(96px,14vh,160px) 0 40px}
.svc-head{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:end}
.svc-head .lede{justify-self:end}
.svc-grid{margin-top:56px;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.card{position:relative;background:var(--panel);border:1px solid var(--line);border-radius:22px;display:flex;flex-direction:column;transition:transform 750ms var(--spring-hover),opacity .9s var(--ease-out)}
.card::after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:0 22px 50px -24px rgba(22,35,31,.38);opacity:0;transition:opacity .5s var(--ease-out);pointer-events:none}
.card:hover{transform:translateY(-6px)}
.card:hover::after{opacity:1}
.card .img{aspect-ratio:4/3;background:var(--panel-2) center/cover no-repeat;position:relative;overflow:hidden;border-radius:21px 21px 0 0}
.card .img img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease-out)}
.card:hover .img img{transform:scale(1.04)}
.card .body{padding:22px 22px 26px}
.card .tag{color:var(--text-secondary)}
.card h3{font-size:1.45rem;margin-top:10px}
.card p{margin-top:10px;color:var(--text-secondary);font-size:.98rem;line-height:1.55}
.trace{display:block;width:100%;height:120px;margin-top:40px}
.trace path{fill:none;stroke:var(--accent-muted);stroke-width:2;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:var(--draw,1)}
.trace circle{fill:var(--accent);opacity:var(--dot,0);transition:opacity .4s}
@media (max-width:1024px){.svc-grid{grid-template-columns:repeat(2,1fr)}.svc-head{grid-template-columns:1fr}.svc-head .lede{justify-self:start}}
@media (max-width:560px){.svc-grid{grid-template-columns:1fr}}

/* S2 o jeito */
.jeito{background:var(--ink-deep);color:var(--cream);padding:clamp(96px,14vh,150px) 0;border-radius:36px;margin:20px 16px 0;overflow:hidden}
.jeito .kicker{color:var(--accent-muted)}
.jeito .kicker::before{box-shadow:0 0 0 4px rgba(156,199,180,.16)}
.jeito .h2{color:var(--cream)}
.jeito-grid{display:grid;grid-template-columns:1fr 360px;gap:clamp(32px,6vw,90px);margin-top:56px;align-items:start}
.pairs{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.pair{display:grid;grid-template-columns:1fr 1fr;border-radius:20px;overflow:hidden;border:1px solid rgba(244,241,232,.12)}
.pair .was,.pair .now{padding:22px 24px}
.pair .was{color:#B9C2BC;background:rgba(244,241,232,.03)}
.pair .was .mono{color:#93A09A}
.pair .now{background:rgba(30,122,92,.16);position:relative}
.pair .now .mono{color:var(--accent-muted)}
.pair p{margin-top:8px;font-size:1.02rem;line-height:1.5}
.pair .was p{text-decoration:line-through;text-decoration-color:rgba(185,194,188,.45);text-decoration-thickness:1px}
.pair .now p{color:var(--cream)}
.pair.rv{transform:translateX(-18px)}
.pairs.in .pair.rv{transform:none}
.pairs.in .pair:nth-child(2){transition-delay:.12s}
.pairs.in .pair:nth-child(3){transition-delay:.24s}
.pairs.in .pair:nth-child(4){transition-delay:.36s}
.pairs.in.done .pair:nth-child(n){transition-delay:0s!important}
@media (max-width:720px){.pair{grid-template-columns:1fr}}

/* a etiqueta de atendimento (assinatura) */
.tag-wrap{position:sticky;top:110px}
.etiqueta{position:relative;background:#F2EEDF;color:#23302B;border-radius:14px 14px 14px 14px;padding:34px 26px 26px;transform:rotate(2.2deg);transform-origin:50% 23px;box-shadow:0 30px 60px -30px rgba(0,0,0,.6);clip-path:polygon(0 12%,12% 0,88% 0,100% 12%,100% 100%,0 100%)}
.etiqueta .hole{position:absolute;left:50%;top:16px;width:14px;height:14px;margin-left:-7px;border-radius:50%;background:var(--ink-deep);box-shadow:inset 0 0 0 3px #D8D1BC}
.tag-string{position:absolute;left:50%;top:-70px;width:120px;height:92px;margin-left:-60px;pointer-events:none}
.tag-string path{fill:none;stroke:#C9B98E;stroke-width:2}
.etiqueta h3{font-family:var(--f-mono);font-weight:500;font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;text-align:center;margin-top:8px;padding-bottom:14px;border-bottom:1.5px dashed #B9B29C}
.etiqueta ul{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:12px}
.etiqueta li{display:grid;grid-template-columns:22px 1fr;gap:10px;align-items:baseline;font-size:.98rem}
.etiqueta li b{font-weight:600}
.etiqueta li span.v{color:#4F5B55}
.tick{width:18px;height:18px;position:relative;top:3px}
.tick rect{fill:none;stroke:#8C8672;stroke-width:1.5}
.tick path{fill:none;stroke:var(--accent);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:20;stroke-dashoffset:20;transition:stroke-dashoffset .6s var(--ease-out)}
.etiqueta li.on .tick path{stroke-dashoffset:0}
.etiqueta .status{margin-top:18px;padding-top:14px;border-top:1.5px dashed #B9B29C;display:flex;align-items:center;justify-content:space-between}
.led{width:10px;height:10px;border-radius:50%;background:#2FA374;position:relative}
.led::after{content:"";position:absolute;inset:-6px;border-radius:50%;box-shadow:0 0 14px 4px rgba(47,163,116,.7);opacity:0;animation:ledpulse 4s var(--ease-soft) infinite;animation-delay:-1.3s}
@keyframes ledpulse{0%,100%{opacity:.15}50%{opacity:1}}
.sig{font-family:var(--f-display);font-weight:600;font-size:1.05rem;color:var(--accent)}
@media (max-width:1024px){.jeito-grid{grid-template-columns:1fr}.tag-wrap{position:relative;top:0;max-width:380px;margin:40px auto 0}}

/* S3 diagnóstico */
.diag{padding:clamp(96px,14vh,150px) 0}
.diag-card{background:var(--panel);border:1px solid var(--line);border-radius:32px;padding:clamp(28px,5vw,64px);display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,72px);box-shadow:0 40px 80px -50px rgba(22,35,31,.35)}
.chips{margin-top:28px;display:flex;flex-wrap:wrap;gap:10px}
.chip-opt{position:relative}
.chip-opt input{position:absolute;opacity:0;width:1px;height:1px}
.chip-opt label{display:inline-flex;align-items:center;min-height:44px;padding:.6em 1.1em;border-radius:999px;border:1.5px solid var(--line-strong);cursor:pointer;font-weight:500;transition:background-color .3s var(--ease-out),color .3s var(--ease-out),border-color .3s var(--ease-out),transform .3s var(--ease-out)}
.chip-opt label:hover{transform:translateY(-2px);border-color:var(--accent)}
.chip-opt input:checked+label{background:var(--accent);border-color:var(--accent);color:#fff}
.chip-opt input:focus-visible+label{outline:3px solid var(--accent);outline-offset:3px}
.bench{position:relative;border-radius:24px;background:var(--ink-deep);color:var(--cream);padding:28px;min-height:420px;display:flex;flex-direction:column;overflow:hidden}
.circuit{width:100%;height:120px;flex:none}
.circuit .base{fill:none;stroke:rgba(244,241,232,.14);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.circuit .live{fill:none;stroke:#3FBF8A;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--hp,0))}
.circuit .pad{fill:var(--ink-deep);stroke:rgba(244,241,232,.3);stroke-width:2}
.circuit .endled{transform-box:fill-box;transform-origin:center;fill:#3FBF8A;opacity:var(--done,0);transition:opacity .5s}
.circuit .endglow{fill:#3FBF8A;opacity:calc(var(--done,0)*.35);filter:blur(6px);transition:opacity .5s}
.hold{margin-top:18px;position:relative;overflow:hidden;width:100%;min-height:56px;border-radius:999px;border:1.5px solid rgba(244,241,232,.35);background:transparent;color:var(--cream);font:600 1rem var(--f-text);cursor:pointer;user-select:none;-webkit-user-select:none;touch-action:none}
.hold .fill{position:absolute;inset:0;background:var(--accent);transform-origin:left;transform:scaleX(var(--hp,0))}
.hold span.l{position:relative}
.hold:disabled{opacity:.5;cursor:not-allowed}
.result{margin-top:22px;flex:1;display:flex;flex-direction:column;gap:14px}
.result .hint{color:#AEB8B2;transition:opacity .4s var(--ease-out)}
.bench.done .result .hint{display:none}
.result .ans{opacity:0;transform:translateY(12px);transition:opacity .6s var(--ease-out),transform .6s var(--ease-out)}
.bench.done .result .ans{opacity:1;transform:none}
.bench.done .result .ans:nth-child(3){transition-delay:.15s}
.result .ans .mono{color:var(--accent-muted)}
.result .ans p{font-size:1.08rem;line-height:1.55;margin-top:6px}
.result .btn{align-self:flex-start}
.bench:not(.done) .result .ans{pointer-events:none}
.bench.m .result .ans{transition:none}
@media (max-width:900px){.diag-card{grid-template-columns:1fr}}

/* S4 como funciona */
.como{padding:clamp(80px,12vh,130px) 0}
.como-head{text-align:center;display:flex;flex-direction:column;align-items:center}
.como-head .h2{max-width:20ch}
.steps{position:relative;margin-top:72px;display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.steps-line{position:absolute;left:16.66%;right:16.66%;top:27px;height:2px;pointer-events:none}
.steps-line svg{width:100%;height:4px;overflow:visible;display:block}
.steps-line .b{stroke:var(--line);stroke-width:2}
.steps-line .d{stroke:var(--accent);stroke-width:2;stroke-dasharray:1;stroke-dashoffset:var(--draw,1)}
.step{text-align:center;display:flex;flex-direction:column;align-items:center;padding:0 10px}
.node{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:var(--canvas);border:2px solid var(--line-strong);font-family:var(--f-display);font-weight:700;font-size:1.3rem;color:var(--text-secondary);position:relative;transition:background-color .5s var(--ease-out),border-color .5s var(--ease-out),color .5s var(--ease-out)}
.step.lit .node{background:var(--accent);border-color:var(--accent);color:#fff}
.step h3{font-size:1.55rem;margin-top:22px}
.step p{margin-top:10px;color:var(--text-secondary);max-width:30ch}
.modes{margin-top:80px;display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);border-radius:24px;overflow:hidden;background:var(--panel)}
.mode{display:flex;gap:16px;align-items:center;padding:24px 26px}
.mode+.mode{border-left:1px solid var(--line)}
.mode svg{width:40px;height:40px;flex:none;color:var(--accent)}
.mode b{display:block;font-family:var(--f-display);font-size:1.15rem;font-weight:600;line-height:1.25}
.mode small{display:block;color:var(--text-secondary);font-size:.92rem;margin-top:2px}
@media (max-width:820px){
  .steps{grid-template-columns:1fr;gap:40px}
  .steps-line{display:none}
  .modes{grid-template-columns:1fr}
  .mode+.mode{border-left:0;border-top:1px solid var(--line)}
}

/* S5 dúvidas */
.duvidas{padding:clamp(80px,12vh,130px) 0}
.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(32px,6vw,90px);align-items:start}
.faq-side{position:relative}
.faq-side .btn{margin-top:28px}
.faq{border-top:1px solid var(--line-strong)}
.faq details{border-bottom:1px solid var(--line-strong)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 4px;font-family:var(--f-display);font-weight:600;font-size:clamp(1.15rem,1.6vw,1.4rem);letter-spacing:-.01em}
.faq summary::-webkit-details-marker{display:none}
.faq .pm{width:30px;height:30px;flex:none;border-radius:50%;border:1.5px solid var(--line-strong);position:relative;transition:transform 1200ms var(--spring-icon),background-color .3s,border-color .3s}
.faq .pm::before,.faq .pm::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:2px;margin:-1px 0 0 -6px;background:currentColor;border-radius:2px}
.faq .pm::after{transform:rotate(90deg)}
.faq details[open] .pm{transform:rotate(45deg);background:var(--accent);border-color:var(--accent);color:#fff}
.faq details.closing .pm{transform:none;background:transparent;border-color:var(--line-strong);color:inherit}
.faq details.m p{animation:none}
.faq details p{padding:0 4px 26px;color:var(--text-secondary);max-width:58ch;animation:faqin .5s var(--ease-out) both}
@keyframes faqin{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
@media (max-width:900px){.faq-grid{grid-template-columns:1fr}.faq-side{position:relative;top:0}}

/* S6 contato */
.contato{margin:40px 16px 0;border-radius:36px;overflow:hidden;min-height:760px;display:flex;align-items:center;background:#2B3430 72% center/cover no-repeat;position:relative}
.contato::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,16,14,.7) 0%,rgba(10,16,14,.35) 42%,rgba(10,16,14,0) 70%)}
.dust{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.dust i{position:absolute;width:3px;height:3px;border-radius:50%;background:rgba(233,184,114,.7);opacity:0;animation:dust 14s linear infinite}
@keyframes dust{0%{opacity:0;transform:translate(0,0)}15%{opacity:.8}85%{opacity:.6}100%{opacity:0;transform:translate(-40px,160px)}}
.contato .wrap{position:relative;display:grid;grid-template-columns:minmax(0,560px);padding:80px 0}
.form-card{background:rgba(248,250,245,.96);color:var(--text-primary);border-radius:28px;padding:clamp(26px,4vw,44px);box-shadow:0 40px 80px -40px rgba(0,0,0,.6)}
.form-card h2{font-size:clamp(2rem,4vw,3.2rem)}
.form-card .lede{font-size:1.05rem;margin-top:12px}
.field{margin-top:22px;display:flex;flex-direction:column;gap:8px}
.field label{font-weight:600;font-size:.95rem}
.field input,.field textarea{font:inherit;font-size:1rem;color:var(--text-primary);background:#fff;border:1.5px solid var(--line-strong);border-radius:14px;padding:14px 16px;transition:border-color .3s var(--ease-out),box-shadow .3s var(--ease-out)}
.field textarea{min-height:110px;resize:vertical}
.field input:focus,.field textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px rgba(30,122,92,.18)}
.form-card .btn{margin-top:24px;width:100%}
.micro{margin-top:12px;font-size:.88rem;color:var(--text-secondary);text-align:center}
.success{margin-top:16px;padding:14px 16px;border-radius:14px;background:rgba(30,122,92,.12);color:var(--accent-hover);font-weight:600;opacity:0;transform:translateY(8px);transition:opacity .5s var(--ease-out),transform .5s var(--ease-out)}
.success.show{opacity:1;transform:none}
.success[hidden]{display:block;visibility:hidden;height:0;margin:0;padding:0}
.err{color:#A33B2B;font-size:.9rem;min-height:1.2em}

/* rodapé */
footer{padding:64px 0 40px;color:var(--text-secondary)}
.foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:24px;align-items:baseline}
.foot .brand{color:var(--text-primary)}
.foot p{max-width:40ch}
.nap p{margin:0;line-height:1.5}
.foot a{text-decoration:none;font-weight:600;color:var(--text-primary)}
.foot a:hover{color:var(--accent)}
.copy{margin-top:32px;padding-top:20px;border-top:1px solid var(--line);font-size:.9rem}

/* movimento reduzido: estados finais, nada anima */
.rm *,.rm *::before,.rm *::after{animation:none!important;transition:none!important;transition-delay:0s!important}
.rm .rv{opacity:1!important;transform:none!important}
.rm .trace path,.rm .steps-line .d{stroke-dashoffset:0!important}
.rm .trace circle{opacity:1}
.rm .etiqueta li .tick path{stroke-dashoffset:0}
.rm .dust{display:none}
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;transition-delay:0s!important}
  .rv{opacity:1!important;transform:none!important}
}

/* ===== escolha de caminho (home) e páginas internas ===== */
.escolha{padding:clamp(80px,12vh,130px) 0}
.escolha-head{text-align:center;display:flex;flex-direction:column;align-items:center}
.escolha-head .h2{max-width:18ch}
.escolha-grid{margin-top:56px;display:grid;grid-template-columns:1fr 1fr;gap:22px}
.caminho{position:relative;display:flex;flex-direction:column;background:var(--panel);border:1px solid var(--line);border-radius:26px;text-decoration:none;color:inherit;transition:transform 750ms var(--spring-hover),opacity .9s var(--ease-out)}
.caminho::after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:0 26px 60px -28px rgba(22,35,31,.4);opacity:0;transition:opacity .5s var(--ease-out);pointer-events:none}
.caminho:hover{transform:translateY(-8px)}
.caminho:hover::after{opacity:1}
.caminho .img{aspect-ratio:16/10;border-radius:25px 25px 0 0;overflow:hidden}
.caminho .img img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease-out)}
.caminho:hover .img img{transform:scale(1.04)}
.caminho .body{padding:28px 28px 30px;display:flex;flex-direction:column;gap:14px;flex:1}
.caminho h3{font-size:clamp(1.5rem,2.2vw,2rem);max-width:16ch}
.caminho p{color:var(--text-secondary)}
.caminho ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.caminho li{display:grid;grid-template-columns:20px 1fr;gap:10px;align-items:baseline;color:var(--text-secondary);font-size:.98rem}
.caminho li::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--accent-muted);align-self:center}
.caminho .vai{margin-top:auto;display:inline-flex;align-items:center;gap:10px;font-weight:600;color:var(--accent)}
.caminho .vai svg{width:18px;height:18px;transition:transform 750ms var(--spring-hover)}
.caminho:hover .vai svg{transform:translateX(5px)}
@media (max-width:820px){.escolha-grid{grid-template-columns:1fr}}

/* topo das páginas internas: imagem fixa, sem vídeo */
.page-hero{position:relative;min-height:74svh;display:flex;align-items:flex-end;background:#2B3430 center/cover no-repeat;border-radius:0 0 36px 36px;overflow:hidden}
.page-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,16,14,.55) 0%,rgba(10,16,14,.25) 40%,rgba(10,16,14,.85) 100%)}
.page-hero .wrap{position:relative;padding:150px 0 56px}
.page-hero .kick{display:inline-block;margin-bottom:16px;padding:7px 12px;border-radius:10px;background:rgba(10,16,14,.62);border:1px solid rgba(244,241,232,.2);color:var(--cream);font-family:var(--f-mono);font-weight:500;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;line-height:1.45}
.page-hero h1{color:var(--cream);font-size:clamp(2.2rem,5vw,4.2rem);max-width:17ch;text-shadow:var(--tshadow)}
.page-hero .lede{color:var(--cream-2);margin-top:18px;max-width:46ch;text-shadow:0 1px 3px rgba(5,5,10,.7)}
.page-hero .row{margin-top:28px;display:flex;flex-wrap:wrap;gap:12px}
.page-hero .btn.ghost{color:var(--cream)}
@media (max-width:720px){.page-hero{min-height:88svh}.page-hero .wrap{padding:120px 0 40px}}

/* prova: este site */
.prova{padding:clamp(80px,12vh,130px) 0}
.prova-card{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(24px,4vw,56px);align-items:center;background:var(--ink-deep);color:var(--cream);border-radius:32px;padding:clamp(28px,4vw,56px);overflow:hidden}
.prova-card .kicker{color:var(--accent-muted)}
.prova-card .kicker::before{box-shadow:0 0 0 4px rgba(156,199,180,.16)}
.prova-card h2{color:var(--cream);font-size:clamp(1.9rem,3.4vw,3rem)}
.prova-card p{color:#C3CCC6;margin-top:16px;max-width:46ch}
.prova-nums{margin-top:26px;display:flex;flex-wrap:wrap;gap:26px}
.prova-nums div b{display:block;font-family:var(--f-display);font-size:1.9rem;line-height:1;color:var(--cream)}
.prova-nums div span{font-size:.92rem;color:#A9B3AD}
.prova-card .shot{position:relative;border-radius:20px;overflow:hidden;box-shadow:0 30px 60px -30px rgba(0,0,0,.7)}
.prova-card .shot video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .7s var(--ease-out)}
.prova-card .shot.video-on video{opacity:1}
.prova-card .shot img{width:100%;height:auto;display:block;aspect-ratio:16/9}
@media (max-width:820px){.prova-card{grid-template-columns:1fr}}

/* grades de 3 cartões: 3 colunas só em telas largas */
@media (min-width:1025px){.svc-grid.tres{grid-template-columns:repeat(3,1fr)}}

/* ===== páginas internas: trilha, prosa, listas e marcas ===== */
.page-hero.compacto{min-height:56svh}
.page-hero.compacto .wrap{padding:140px 0 48px}
.trilha{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:18px;color:var(--cream-2);font-size:.72rem}
.trilha a{color:var(--cream-2);text-decoration:none;opacity:.85;transition:opacity .3s}
.trilha a:hover{opacity:1;text-decoration:underline;text-underline-offset:4px}
.trilha span[aria-hidden]{opacity:.5}
.trilha span[aria-current]{color:var(--cream)}
.prosa{padding:clamp(72px,11vh,120px) 0}
.prosa.alt{background:var(--panel);border-radius:36px;margin:0 16px}
.prosa-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(28px,5vw,72px);align-items:start}
.prosa-grid .lede+.lede{margin-top:16px}
.lista-local{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.lista-local li{display:grid;grid-template-columns:22px 1fr;gap:10px;align-items:baseline;color:var(--text-secondary);font-size:1.02rem}
.lista-local li::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--accent-muted);align-self:center}
.nota{margin-top:20px;color:var(--text-secondary);font-size:.95rem}
.nota a,.lista-local a{color:var(--accent);font-weight:600}
a.card{text-decoration:none;color:inherit}
a.card .vai{margin-top:14px;display:inline-flex;align-items:center;gap:8px;font-weight:600;color:var(--accent)}
a.card .vai svg{width:17px;height:17px;transition:transform 750ms var(--spring-hover)}
a.card:hover .vai svg{transform:translateX(5px)}
.steps.quatro{grid-template-columns:repeat(4,1fr)}
.steps.quatro .steps-line{left:12.5%;right:12.5%}
.marcas{margin-top:48px;list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.marcas li{background:var(--canvas);border:1px solid var(--line);border-radius:18px;padding:20px}
.marcas b{display:block;font-family:var(--f-display);font-size:1.15rem;margin-bottom:6px}
.marcas span{color:var(--text-secondary);font-size:.94rem;line-height:1.5}
@media (max-width:1024px){.prosa-grid{grid-template-columns:1fr}.marcas{grid-template-columns:repeat(2,1fr)}.steps.quatro{grid-template-columns:repeat(2,1fr)}.steps.quatro .steps-line{display:none}}
@media (max-width:620px){.marcas{grid-template-columns:1fr}.steps.quatro{grid-template-columns:1fr}}

/* ---------- dicas: artigos e índice ---------- */
.page-hero .byline{margin-top:22px;color:var(--cream-2);font-size:.72rem;text-shadow:0 1px 3px rgba(5,5,10,.7)}
.page-hero .byline a{color:var(--cream);text-underline-offset:4px;text-decoration-color:rgba(244,241,232,.45)}
.artigo{padding:clamp(56px,9vh,96px) 0 clamp(64px,10vh,110px)}
.artigo-corpo{max-width:68ch;margin-inline:auto;font-size:1.1rem;line-height:1.72;color:var(--text-primary)}
.artigo-corpo>*+*{margin-top:1.15em}
.artigo-corpo h2{font-size:clamp(1.6rem,2.6vw,2.1rem);line-height:1.15;margin-top:2.1em}
.artigo-corpo h2+p{margin-top:.7em}
.artigo-corpo a:not(.btn){color:var(--accent);font-weight:600;text-underline-offset:3px}
.artigo-corpo ul,.artigo-corpo ol{padding-left:1.3em;margin-bottom:0}
.artigo-corpo li+li{margin-top:.45em}
.artigo-corpo li::marker{color:var(--accent);font-weight:600}
.artigo-corpo kbd{font-family:var(--f-mono);font-size:.82em;padding:.1em .45em;border:1px solid var(--line-strong);border-bottom-width:2px;border-radius:6px;background:var(--panel)}
.resumo{background:var(--panel);border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:18px;padding:22px 24px}
.resumo b{display:block;font-family:var(--f-mono);font-weight:500;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--accent);margin-bottom:8px}
.fala{margin:1.6em 0 0;padding:4px 0 4px 22px;border-left:3px solid var(--lamp)}
.fala p{font-family:var(--f-display);font-weight:600;font-size:clamp(1.18rem,1.8vw,1.35rem);line-height:1.42;letter-spacing:-.01em;color:var(--ink-deep)}
.dica-box{background:var(--ink-deep);color:var(--cream);border-radius:22px;padding:26px 28px;margin-top:1.8em}
.dica-box h3{font-size:1.3rem;color:var(--cream)}
.dica-box ol{margin-top:14px}
.dica-box li::marker{color:var(--lamp)}
.dica-box kbd{background:transparent;color:var(--cream);border-color:rgba(244,241,232,.4)}
.dica-box p{margin-top:14px;color:var(--cream-2);font-size:1rem}
.artigo-corpo figure{margin:1.8em 0 0}
.artigo-corpo figure img{width:100%;height:auto;border-radius:22px}
.artigo-corpo figcaption{margin-top:10px;font-size:.85rem;color:var(--text-secondary)}
.autor{display:grid;grid-template-columns:60px 1fr;gap:18px;align-items:center;margin-top:3em;padding:22px;border:1px solid var(--line);border-radius:22px;background:var(--panel)}
.autor .ini{width:60px;height:60px;border-radius:50%;background:var(--accent);color:var(--cream);display:grid;place-items:center;font-family:var(--f-display);font-weight:700;font-size:1.2rem}
.autor p{font-size:.98rem;line-height:1.55;color:var(--text-secondary)}
.autor p b{color:var(--text-primary)}
.artigo-cta{margin-top:1.6em}
.lista-dicas{list-style:none;margin:0;padding:0;display:grid;gap:22px}
.dica-card{position:relative;display:grid;grid-template-columns:minmax(0,340px) 1fr;gap:clamp(20px,3vw,40px);align-items:center;padding:14px;text-decoration:none;color:inherit;background:var(--panel);border:1px solid var(--line);border-radius:26px;transition:transform 750ms var(--spring-hover)}
.dica-card:hover{transform:translateY(-4px)}
.dica-card img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:18px}
.dica-card>div{padding:8px 16px 8px 0}
.dica-card .meta{color:var(--accent)}
.dica-card h2{margin-top:10px;font-size:clamp(1.45rem,2.5vw,2rem);line-height:1.12}
.dica-card p{margin-top:12px;color:var(--text-secondary);max-width:56ch}
.dica-card .vai{margin-top:16px;display:inline-flex;align-items:center;gap:8px;font-weight:600;color:var(--accent)}
.dica-card .vai svg{width:17px;height:17px;transition:transform 750ms var(--spring-hover)}
.dica-card:hover .vai svg{transform:translateX(5px)}
@media (max-width:720px){.dica-card{grid-template-columns:1fr}.dica-card>div{padding:4px 8px 10px}.artigo-corpo{font-size:1.05rem}.dica-box{padding:22px 20px}}

/* imagens por tamanho de tela: a versão menor (recorte em pé) vai para o celular */
.poster{background-image:url('/assets/hero-poster.webp')}
.page-hero{background-image:var(--bg,none)}
.contato.bg{background-image:var(--bg,url('/assets/contato-bancada.webp'))}
@media (max-width:720px){
  .poster{background-image:url('/assets/hero-poster-m.webp')}
  .page-hero{background-image:var(--bg-m,var(--bg,none))}
  .contato.bg{background-image:var(--bg-m,var(--bg,url('/assets/contato-bancada-m.webp')))}
}
.copy a{color:var(--text-secondary);text-underline-offset:3px}
.copy a:hover{color:var(--accent)}
.artigo-corpo code{font-family:var(--f-mono);font-size:.85em;padding:.1em .4em;border-radius:6px;background:var(--panel);border:1px solid var(--line)}
.card .body p a{color:var(--accent);font-weight:600;text-underline-offset:3px}
.marcas span a{color:var(--accent);font-weight:600;text-underline-offset:3px}

/* ---------- sites: serviços extras e pacotes ---------- */
.mais-servicos{margin-top:22px;display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
.mini{position:relative;display:flex;flex-direction:column;padding:26px 28px;background:var(--panel);border:1px solid var(--line);border-radius:22px;text-decoration:none;color:inherit;transition:transform 750ms var(--spring-hover)}
.mini:hover{transform:translateY(-6px)}
.mini .tag,.pacote .tag{color:var(--text-secondary)}
.mini h3{margin-top:10px;font-size:clamp(1.3rem,2vw,1.55rem)}
.mini p{margin-top:8px;color:var(--text-secondary);max-width:52ch}
.mini .vai{margin-top:14px;display:inline-flex;align-items:center;gap:8px;font-weight:600;color:var(--accent)}
.mini .vai svg{width:17px;height:17px;transition:transform 750ms var(--spring-hover)}
.mini:hover .vai svg{transform:translateX(5px)}
.pacotes{margin-top:44px;display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:stretch}
.pacote{display:flex;flex-direction:column;padding:28px;background:var(--panel);border:1px solid var(--line);border-radius:26px}
.pacote h3{margin-top:10px;font-size:clamp(1.4rem,2.2vw,1.7rem)}
.pacote>p{margin-top:10px;color:var(--text-secondary)}
.pacote ul{list-style:none;margin:20px 0 0;padding:20px 0 0;border-top:1px solid var(--line);display:grid;gap:11px}
.pacote li{display:grid;grid-template-columns:18px 1fr;gap:10px;align-items:start;font-size:.98rem;line-height:1.45}
.pacote li::before{content:"";width:18px;height:18px;margin-top:1px;border-radius:50%;background:var(--accent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 12.5l4 4 8-9' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/11px no-repeat}
.pacotes-nota{max-width:72ch;margin-top:26px}
.pacotes-btn{margin-top:22px}
@media (max-width:1024px){.pacotes{grid-template-columns:1fr;max-width:640px}.mais-servicos{grid-template-columns:1fr}}
.prova-card .prova-nums+.btn{margin-top:30px}

/* vídeo de fundo no topo (página de sites): fica atrás do degradê e do texto, aparece quando começa a tocar */
.page-hero .hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1.2s var(--ease-out);pointer-events:none}
.page-hero .hero-video.on{opacity:1}
.page-hero.com-video::before{z-index:1}
.page-hero.com-video .wrap{z-index:2}
