/* ══════════════════════════════════════════════════════════════════
   Centro de comando — camada visual por cima do modelo do Scharles.
   A estrutura, os textos e as telas são os de styles.css; aqui mudam
   só cores, a fonte da marca e os detalhes técnicos.
   Paleta derivada de brand/tokens (teal #215C54 · verde #59CE72 ·
   azul #4FB6EC · tinta #0B1F1B). Papéis: verde = ação e sinal vivo;
   azul = dado e informação; teal claro = linha e estrutura.
   ══════════════════════════════════════════════════════════════════ */

@font-face{font-family:"Manrope";src:url("assets/manrope.woff2") format("woff2");font-weight:200 800;font-display:swap}

:root{
  --canvas:#07130F;      /* fundo dominante */
  --surface:#0B1D19;     /* painel */
  --raised:#0F2621;      /* painel elevado */
  --line:#1D3D36;        /* separador */
  --line-strong:#2C5A51; /* borda de controle */
  --ink:#E7F3EF;         /* texto principal · 16:1 no canvas */
  --muted:#9DB8B1;       /* texto secundário · 8.9:1 no canvas */
  --signal:#59CE72;      /* verde da marca: ação, sinal */
  --signal-hot:#7BE391;
  --data:#4FB6EC;        /* azul da marca: dado */
  --trace:#6FB6AA;       /* teal 400: estrutura */
  --on-signal:#04110C;   /* texto sobre verde · 10:1 */
  /* os tokens do modelo, remapeados para o escuro */
  --teal:var(--signal);--deep:#051410;--green:var(--signal);--mint:var(--signal);
  --border:var(--line);--pale:var(--surface);
  color-scheme:dark;
}

/* ── superfícies do navegador ─────────────────────────────────────── */
html{background:var(--canvas);scrollbar-color:var(--line-strong) var(--canvas)}
body{background:var(--canvas);color:var(--ink);font-family:"Manrope",Arial,Helvetica,sans-serif;caret-color:var(--signal)}
::selection{background:var(--signal);color:var(--on-signal)}
::-webkit-scrollbar{width:11px;height:11px}::-webkit-scrollbar-track{background:var(--canvas)}::-webkit-scrollbar-thumb{background:var(--line-strong);border:3px solid var(--canvas);border-radius:8px}
:focus-visible{outline:2px solid var(--data);outline-offset:4px}
.skip{background:var(--raised);color:var(--ink)}
.ownership-number,.payment strong,[data-num]{font-variant-numeric:tabular-nums}

/* ── topo ─────────────────────────────────────────────────────────── */
header{background:rgba(7,19,15,.94);border-bottom:1px solid var(--line);backdrop-filter:none;-webkit-backdrop-filter:none}
header::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:linear-gradient(90deg,transparent,rgba(89,206,114,.55) 50%,transparent);opacity:.7;pointer-events:none}
.brand img.brand-logo{display:block;height:24px;width:auto;max-width:none}
.site-footer .brand img.brand-logo{height:22px}
nav a,.nav-wa{color:var(--muted);transition:color .2s}nav a:hover,.nav-wa:hover{color:var(--ink)}
.menu-toggle{background:transparent!important;border-color:var(--line-strong)!important}.menu-toggle span{background:var(--signal)!important}
#mobile-menu{background:rgba(7,19,15,.96)}

/* ── botões ───────────────────────────────────────────────────────── */
.btn{position:relative;overflow:hidden;background:var(--signal);border-color:var(--signal);color:var(--on-signal);font-weight:700;box-shadow:0 6px 22px -8px rgba(89,206,114,.55)}
.btn:hover{background:var(--signal-hot);border-color:var(--signal-hot);box-shadow:0 10px 30px -8px rgba(89,206,114,.7)}
.btn.outline,.outline-white{background:rgba(11,29,25,.6);color:var(--ink);border-color:var(--line-strong);box-shadow:none}
.btn.outline:hover,.outline-white:hover{background:var(--raised);border-color:var(--trace);color:var(--ink);box-shadow:none}
.lime,.lime:hover{color:var(--on-signal)}

/* ── abertura ─────────────────────────────────────────────────────── */
.hero{background:
  radial-gradient(60% 45% at 50% 78%,rgba(33,92,84,.55),transparent 70%),
  radial-gradient(40% 30% at 85% 10%,rgba(79,182,236,.10),transparent 70%),
  var(--canvas)}
.hero-motion::before{content:"";position:absolute;inset:0;
  background-image:radial-gradient(circle,rgba(111,182,170,.22) 1px,transparent 1.4px);background-size:26px 26px;
  -webkit-mask-image:radial-gradient(75% 60% at 50% 35%,#000 20%,transparent 80%);mask-image:radial-gradient(75% 60% at 50% 35%,#000 20%,transparent 80%)}
.hero-check,.motif-check{display:none}
.hero-dots{background-image:radial-gradient(circle,rgba(89,206,114,.45) 1.6px,transparent 2px)}
h1{color:var(--ink)}em{color:var(--signal)}
.hero .intro,.intro{color:var(--muted)}
.eyebrow{color:var(--signal)}.eyebrow .line{background:var(--signal);box-shadow:0 0 10px var(--signal)}
.hero .ownership{background:rgba(11,29,25,.9);border:1px solid var(--line);backdrop-filter:none;-webkit-backdrop-filter:none}
.hero .ownership p{border-color:var(--line)}
.hero .ownership-foot strong{color:var(--ink)}
.overline{color:var(--data)}

/* cantoneiras de HUD — um só pseudo-elemento desenha os quatro cantos */
.hud{position:relative}
.hud::before{content:"";position:absolute;inset:-9px;pointer-events:none;z-index:2;--c:rgba(89,206,114,.85);--a:16px;--t:1.5px;
  background:
    linear-gradient(var(--c),var(--c)) top left/var(--a) var(--t) no-repeat,
    linear-gradient(var(--c),var(--c)) top left/var(--t) var(--a) no-repeat,
    linear-gradient(var(--c),var(--c)) top right/var(--a) var(--t) no-repeat,
    linear-gradient(var(--c),var(--c)) top right/var(--t) var(--a) no-repeat,
    linear-gradient(var(--c),var(--c)) bottom left/var(--a) var(--t) no-repeat,
    linear-gradient(var(--c),var(--c)) bottom left/var(--t) var(--a) no-repeat,
    linear-gradient(var(--c),var(--c)) bottom right/var(--a) var(--t) no-repeat,
    linear-gradient(var(--c),var(--c)) bottom right/var(--t) var(--a) no-repeat}

.dashboard-frame{overflow:visible;background:var(--surface);border:1px solid var(--line-strong);box-shadow:0 40px 90px -30px rgba(0,0,0,.8),0 0 60px -20px rgba(89,206,114,.25)}
.dashboard-frame .window-bar{background:var(--surface);color:var(--muted);border-bottom:1px solid var(--line);border-radius:10px 10px 0 0}
.dashboard-frame>img{border-radius:0 0 10px 10px}
.window-dots{color:var(--line-strong)}.bar-divider{color:var(--line-strong)}
.window-label{display:inline-flex;align-items:center;gap:8px;color:var(--signal)}
.window-label::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--signal);box-shadow:0 0 0 3px rgba(89,206,114,.18);animation:led 2.4s ease-in-out infinite}
/* varredura única sobre a tela, na chegada */
.scan{position:relative;overflow:hidden;border-radius:0 0 10px 10px}
.scan::after{content:"";position:absolute;left:0;right:0;top:-30%;height:30%;pointer-events:none;
  background:linear-gradient(180deg,transparent,rgba(89,206,114,.10) 70%,rgba(123,227,145,.55) 99%,transparent);
  animation:scan 2.2s cubic-bezier(.22,1,.36,1) .5s 1 both}
@keyframes scan{from{transform:translateY(0)}to{transform:translateY(440%);opacity:0}}
@keyframes led{0%,100%{opacity:1}50%{opacity:.35}}
.caption{color:var(--muted)}

/* ── faixa de benefícios ──────────────────────────────────────────── */
.benefit-strip{background:var(--surface);border-block:1px solid var(--line)}
.benefit-strip span{display:inline-flex;align-items:center;justify-content:center;gap:10px;color:var(--ink)}
.benefit-strip span::before{content:"";width:7px;height:7px;transform:rotate(45deg);border:1.5px solid var(--signal);box-shadow:0 0 8px rgba(89,206,114,.5)}
.benefit-strip span+span{border-left-color:var(--line)}

/* ── plataforma ───────────────────────────────────────────────────── */
h2{color:var(--ink)}h2 span{color:#8CD0C5}
h3{color:var(--ink)}
.section-heading>p:last-child,.feature-row p,.analytics-copy>p,.demo-heading>p,details p{color:var(--muted)}
.motif-line{stroke:var(--trace);opacity:.16}
.motif-fill{fill:var(--signal);opacity:.035}
.motif-dots{background-image:radial-gradient(circle,rgba(111,182,170,.3) 1.6px,transparent 2px)}

.connection-map{background:linear-gradient(180deg,var(--raised),var(--surface));border:1px solid var(--line-strong);color:var(--ink);border-radius:14px;
  box-shadow:0 30px 60px -30px rgba(0,0,0,.7)}
.connection-map::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;
  background-image:linear-gradient(rgba(111,182,170,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(111,182,170,.07) 1px,transparent 1px);background-size:18px 18px}
.connection-map>*{position:relative;z-index:1}
.whatsapp-node svg{color:var(--signal);filter:drop-shadow(0 0 10px rgba(89,206,114,.35))}
.api-node svg{color:var(--data);filter:drop-shadow(0 0 10px rgba(79,182,236,.35))}
.map-link{background:linear-gradient(90deg,var(--signal),var(--data));opacity:.9}
.map-link:after{width:7px;height:7px;top:-3px;left:0;background:#fff;box-shadow:0 0 10px 2px var(--signal);animation:link-travel 5s ease-in-out infinite;will-change:transform,opacity}
@keyframes link-travel{0%,100%{transform:translateX(0);opacity:.3}60%{transform:translateX(48px);opacity:1}}
.map-branch{background:linear-gradient(180deg,var(--data),var(--trace))}
.map-central{position:relative;background:var(--canvas);border:1px solid var(--signal);color:var(--ink);box-shadow:0 0 0 4px rgba(89,206,114,.08),0 0 24px -6px rgba(89,206,114,.55)}
.map-central img{width:24px}
.map-bottom span{color:var(--muted)}.map-bottom svg{color:var(--trace)}

.feature-row article{border-top:1px solid var(--line);position:relative}
.feature-row article::before{content:"";position:absolute;top:-1px;left:0;width:56px;height:1px;background:var(--signal);box-shadow:0 0 12px var(--signal)}
.feature-icon{border:1px solid var(--line-strong);background:var(--surface);color:var(--signal)}

/* ── diferenciais ─────────────────────────────────────────────────── */
.control-section{background:
  linear-gradient(rgba(111,182,170,.05) 1px,transparent 1px) 0 0/48px 48px,
  linear-gradient(90deg,rgba(111,182,170,.05) 1px,transparent 1px) 0 0/48px 48px,
  radial-gradient(70% 90% at 0% 0%,rgba(33,92,84,.65),transparent 70%),
  #081A16;border-block:1px solid var(--line)}
.light{color:var(--signal)}
.control-intro,.control-list p,.payment span{color:var(--muted)}
.payment{border-left:1px solid var(--line-strong);position:relative}
.payment::before{content:"";position:absolute;left:-4px;top:0;width:7px;height:7px;border-radius:50%;background:var(--signal);box-shadow:0 0 10px var(--signal)}
.payment strong{color:var(--ink)}
.control-list article{border-bottom-color:var(--line)}
.control-list article>.control-icon{border-color:var(--line-strong);background:rgba(7,19,15,.6);color:var(--signal)}
.control-bottom{border-top-color:var(--line)}
.light-fine{color:var(--muted)}

/* ── analytics ────────────────────────────────────────────────────── */
.analytics-visual{background:var(--surface);border:1px solid var(--line-strong);border-radius:10px}
.analytics-visual img{border-color:var(--line)}
.api-emblem>span{border-color:var(--line-strong);background:var(--surface)}
.api-emblem>span:first-child svg{color:var(--signal)}.api-emblem>span:nth-of-type(2) svg{color:var(--data)}
.api-emblem i{background:linear-gradient(90deg,var(--signal),var(--data))}
.api-emblem b{color:var(--data);letter-spacing:1.6px}
.check-list li{color:var(--ink)}.check-list li:before{color:var(--signal)}
.context-note{border-left:1px solid var(--line-strong)}.context-note strong{color:var(--ink)}.context-note p{color:var(--muted)}

/* ── demonstração ─────────────────────────────────────────────────── */
.demo-section{background:radial-gradient(60% 70% at 100% 0%,rgba(79,182,236,.08),transparent 70%),var(--surface);border-block:1px solid var(--line)}
.video-shell{background:#030A08;border:1px solid var(--line-strong);overflow:visible;box-shadow:0 40px 90px -30px rgba(0,0,0,.85)}
.video-shell video{border-radius:9px}
.demo-caption{color:var(--muted)}.demo-caption a{color:var(--signal)}

/* ── perguntas ────────────────────────────────────────────────────── */
details{border-bottom-color:var(--line)}
summary{color:var(--ink)}summary span{color:var(--signal)}
details[open] summary{color:var(--signal)}

/* ══ FECHAMENTO — o momento autoral da página ═════════════════════ */
.final-section{position:relative;overflow:hidden;background:radial-gradient(55% 60% at 50% 0%,rgba(33,92,84,.55),transparent 70%),var(--deep);border-top:1px solid var(--line)}
/* chão de grade em perspectiva, com horizonte aceso */
.final-section .horizon{position:absolute;left:-25%;right:-25%;bottom:-2px;height:58%;z-index:-1;pointer-events:none;
  transform:perspective(520px) rotateX(62deg);transform-origin:50% 100%;
  overflow:hidden;-webkit-mask-image:linear-gradient(0deg,#000 10%,transparent 85%);mask-image:linear-gradient(0deg,#000 10%,transparent 85%)}
.final-section .horizon i{position:absolute;left:0;right:0;top:-64px;bottom:0;will-change:transform;
  background-image:linear-gradient(rgba(89,206,114,.30) 1px,transparent 1px),linear-gradient(90deg,rgba(89,206,114,.30) 1px,transparent 1px);background-size:64px 64px}
.final-section .horizon::after{content:"";position:absolute;left:0;right:0;top:15%;height:2px;background:linear-gradient(90deg,transparent,var(--signal),transparent);filter:blur(1px);opacity:.6}
.final-section.is-live .horizon i{animation:grid-run 3.2s linear infinite}
@keyframes grid-run{from{transform:translate3d(0,0,0)}to{transform:translate3d(0,64px,0)}}
.final-inner{position:relative;z-index:1}
.final-inner h2{color:var(--ink)}.final-inner em{color:var(--signal)}
.final-inner>p:not(.eyebrow){color:var(--muted)}

/* o ícone vira emissor: anéis de radar */
.final-whatsapp{position:relative;transform:none;color:var(--signal);border:1px solid var(--signal);background:rgba(7,19,15,.9);box-shadow:0 0 0 6px rgba(89,206,114,.08),0 0 40px -6px rgba(89,206,114,.6)}
.final-whatsapp .ring{position:absolute;inset:-1px;border-radius:18px;border:1px solid var(--signal);opacity:0}
.final-section.is-live .final-whatsapp .ring{animation:ring 2.6s cubic-bezier(.22,1,.36,1) infinite;will-change:transform,opacity}
.final-section.is-live .final-whatsapp .ring+.ring{animation-delay:1.3s}
@keyframes ring{0%{transform:scale(1);opacity:.7}100%{transform:scale(2.6);opacity:0}}

/* o circuito: desenhado por script a partir das posições reais */
.closing-rig{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:visible}
.closing-rig path{fill:none;vector-effect:non-scaling-stroke}
.closing-rig .trace-base{stroke:rgba(111,182,170,.28);stroke-width:1}
.closing-rig .trace-draw{stroke:var(--signal);stroke-width:1.5;stroke-dasharray:1;stroke-dashoffset:1}
.closing-rig .trace-glow{stroke:rgba(89,206,114,.22);stroke-width:6;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1}
.rig-pulse{position:absolute;left:0;top:0;z-index:0;width:34px;height:3px;border-radius:3px;pointer-events:none;opacity:0;
  background:linear-gradient(90deg,rgba(89,206,114,0),#59CE72 55%,#E6FFEC);box-shadow:0 0 10px 1px rgba(89,206,114,.75);
  offset-rotate:auto;offset-distance:0%;will-change:offset-distance,opacity}
.closing-rig circle{fill:var(--canvas);stroke:var(--signal);stroke-width:1.5;opacity:0}
.final-section.is-live .trace-draw,.final-section.is-live .trace-glow{animation:draw 1.5s cubic-bezier(.65,0,.35,1) .2s forwards}
.final-section.is-live .rig-pulse{animation:rig-pulse 2.8s linear 1.7s infinite}
.final-section.is-live .closing-rig circle{animation:node .4s ease-out 1.6s forwards}
@keyframes draw{to{stroke-dashoffset:0}}
@keyframes rig-pulse{0%{offset-distance:0%;opacity:0}6%{opacity:1}90%{opacity:1}100%{offset-distance:100%;opacity:0}}
@keyframes node{to{opacity:1}}

/* o botão acende quando o sinal chega */
.final-inner .btn.lime::after{content:"";position:absolute;inset:0;transform:translateX(-120%);background:linear-gradient(100deg,transparent 30%,rgba(255,255,255,.55) 50%,transparent 70%)}
.final-section.is-live .final-inner .btn.lime{animation:ignite .9s cubic-bezier(.22,1,.36,1) 1.6s both}
.final-section.is-live .final-inner .btn.lime::after{animation:sheen 1.1s ease-out 1.75s both}
@keyframes ignite{0%{box-shadow:0 0 0 0 rgba(89,206,114,0)}40%{box-shadow:0 0 0 10px rgba(89,206,114,.25),0 0 60px 6px rgba(89,206,114,.55)}100%{box-shadow:0 0 0 1px rgba(89,206,114,.4),0 12px 40px -8px rgba(89,206,114,.75)}}
@keyframes sheen{to{transform:translateX(120%)}}

/* leitura de status: os três fatos da oferta acendem em sequência */
.closing-status{list-style:none;display:flex;justify-content:center;flex-wrap:wrap;gap:10px 12px;margin:30px 0 0;padding:0}
.closing-status li{display:inline-flex;align-items:center;gap:9px;padding:8px 14px;border:1px solid var(--line-strong);border-radius:999px;background:rgba(7,19,15,.75);font-size:13px;font-weight:600;color:var(--muted);transition:color .4s,border-color .4s}
.closing-status li::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--line-strong);transition:background .4s,box-shadow .4s}
.final-section.is-live .closing-status li{animation:status-on .5s ease-out both}
.final-section.is-live .closing-status li:nth-child(1){animation-delay:2.1s}
.final-section.is-live .closing-status li:nth-child(2){animation-delay:2.35s}
.final-section.is-live .closing-status li:nth-child(3){animation-delay:2.6s}
@keyframes status-on{to{color:var(--ink);border-color:rgba(89,206,114,.55)}}
.final-section.is-live .closing-status li::before{animation:led-on .5s ease-out both;animation-delay:inherit}
@keyframes led-on{to{background:var(--signal);box-shadow:0 0 10px var(--signal)}}

/* ── rodapé ───────────────────────────────────────────────────────── */
.site-footer{background:#040C0A;color:var(--ink);border-top:1px solid var(--line)}
.footer-top{border-bottom-color:var(--line)}
.footer-top p,.footer-top>a:last-child{color:var(--muted)}
.site-footer .footer-legal p{color:#8FA9A3}
.footer-legal strong{color:var(--ink)}
.footer-links a,.footer-legal a{color:var(--signal)}
.floating-wa{background:var(--signal);color:var(--on-signal);border:0;box-shadow:0 0 0 4px rgba(7,19,15,.9),0 0 0 5px rgba(89,206,114,.45),0 10px 30px -6px rgba(89,206,114,.6)}


/* ── ajustes da rodada de inspeção ────────────────────────────────── */
/* Manrope é mais larga que Arial: o tracking em px do modelo apertava demais */
h1,.hero-copy h1{letter-spacing:-.032em}
h2,.final-inner h2{letter-spacing:-.024em}
h3{letter-spacing:-.012em}
.hero .ownership-number,.payment strong{letter-spacing:-.025em}
/* as linhas de fundo não podem cruzar texto */
#diferenciais .motif-line{opacity:.07}#diferenciais .motif-fill{opacity:.02}
.motif-final .section-motif{display:none}
/* o traço do circuito passa por trás do botão secundário: fundo opaco */
.final-inner .outline-white{background:var(--deep)}


/* ── abertura viva ────────────────────────────────────────────────────
   Regra desta seção: toda animação contínua mexe SÓ em transform e opacity,
   em camada própria. Nada de morph de path, dashoffset, mask-position,
   filter ou backdrop-filter animados — isso repinta a tela inteira a cada
   quadro e é o que dava a sensação de "poucos FPS" na primeira versão. */

.hero-parallax{position:absolute;inset:0;will-change:transform;
  transform:translate3d(calc(var(--mx,0)*-10px),calc(var(--my,0)*-6px),0);transition:transform .7s cubic-bezier(.22,1,.36,1)}

/* ondas: desenhadas no canvas pelo script.js (somas de senoides com fase no tempo) —
   o contorno ondula de verdade e o custo é um desenho de 4 curvas por quadro na GPU */
.hero-canvas{position:absolute;left:0;top:0;width:100%;height:900px;display:block}

/* feixe na grade: a janela desliza e a grade de dentro desliza ao contrário, na mesma curva —
   os pontos acesos ficam parados sobre os pontos da grade e só a luz anda */
.dot-sweep{position:absolute;left:0;top:0;width:680px;height:520px;overflow:hidden;will-change:transform;
  -webkit-mask-image:radial-gradient(closest-side,#000,transparent);mask-image:radial-gradient(closest-side,#000,transparent);
  animation:sweep-janela 14s ease-in-out infinite}
.dot-sweep-grade{position:absolute;left:0;top:0;width:calc(100vw + 360px);height:980px;will-change:transform;opacity:.8;
  background-image:radial-gradient(circle,#8BF0A0 1.5px,transparent 2px);background-size:26px 26px;
  animation:sweep-grade 14s ease-in-out infinite}
@keyframes sweep-janela{
  0%,100%{transform:translate3d(-340px,40px,0)}
  35%{transform:translate3d(45vw,220px,0)}
  65%{transform:translate3d(calc(100vw - 420px),10px,0)}}
@keyframes sweep-grade{
  0%,100%{transform:translate3d(340px,-40px,0)}
  35%{transform:translate3d(-45vw,-220px,0)}
  65%{transform:translate3d(calc(420px - 100vw),-10px,0)}}

/* clusters de pontos */
.hero-dots{will-change:transform,opacity;animation:dots-float 7s ease-in-out infinite alternate,dots-blink 3.2s ease-in-out infinite}
.dots-left{right:auto;left:4%;top:auto;bottom:150px;width:44px;height:44px;animation-delay:-3s,-1.6s;
  background-image:radial-gradient(circle,rgba(79,182,236,.5) 1.6px,transparent 2px)}
@keyframes dots-float{from{transform:translate3d(0,0,0)}to{transform:translate3d(0,-14px,0)}}
@keyframes dots-blink{0%,100%{opacity:1}50%{opacity:.4}}

/* partículas de dado subindo */
.hero-particle{position:absolute;left:var(--x);top:640px;width:var(--s);height:var(--s);border-radius:50%;background:var(--signal);
  box-shadow:0 0 8px var(--signal);opacity:0;will-change:transform,opacity;animation:rise var(--t) linear var(--d) infinite}
.hero-particle:nth-of-type(odd){background:var(--data);box-shadow:0 0 8px var(--data)}
@keyframes rise{0%{transform:translate3d(0,0,0);opacity:0}10%{opacity:.8}70%{opacity:.5}100%{transform:translate3d(24px,-600px,0);opacity:0}}

/* fora da tela, para tudo */
.hero.is-paused .hero-motion *{animation-play-state:paused!important}

@media(max-width:680px){
  .dot-sweep{width:360px;height:360px}
  .hero-particle{top:860px}
  .dots-left{bottom:auto;top:430px;left:-6px}
  .hero-particle:nth-of-type(4n){display:none}
}
@media(prefers-reduced-motion:reduce){
  .hero-parallax{transform:none!important;transition:none}
  .hero-dots{animation:none!important}
  .hero-particle,.dot-sweep{display:none}
}

/* ── telas estreitas ──────────────────────────────────────────────── */
@media(max-width:1000px){.dashboard-frame .window-bar{border-radius:6px 6px 0 0}}
@media(max-width:680px){
  .hud::before{inset:-6px;--a:12px}
  .dashboard-frame>img,.scan{border-radius:0 0 6px 6px}
  .brand img.brand-logo{height:20px}
  .window-label{display:none}
  h1,.hero-copy h1{letter-spacing:-.03em}h2{letter-spacing:-.022em}
  .final-section .horizon{height:42%}
  .closing-status li{font-size:12px;padding:7px 12px}
  /* piso de legibilidade no celular: o modelo descia rótulo e legenda a 8–10px */
  .eyebrow,.hero-copy .eyebrow{font-size:11px;letter-spacing:.12em}.hero .ownership .overline{font-size:10.5px}.caption{font-size:11.5px}.window-bar{font-size:11px}
}

/* ── movimento reduzido: tudo no estado final, parado ─────────────── */
@media(prefers-reduced-motion:reduce){
  .scan::after,.window-label::before,.final-section .horizon i,.final-whatsapp .ring,.map-link:after{animation:none!important}
  .closing-rig .trace-draw,.closing-rig .trace-glow{stroke-dashoffset:0;animation:none!important}
  .rig-pulse{display:none}
  .closing-rig circle{opacity:1;animation:none!important}
  .final-inner .btn.lime{animation:none!important;box-shadow:0 0 0 1px rgba(89,206,114,.4),0 12px 40px -8px rgba(89,206,114,.75)}
  .final-inner .btn.lime::after{display:none}
  .closing-status li{animation:none!important;color:var(--ink);border-color:rgba(89,206,114,.55)}
  .closing-status li::before{animation:none!important;background:var(--signal);box-shadow:0 0 10px var(--signal)}
}
