/* ============================================================
   BH ADS — sistema de design
   Referência estética: o relatório de prova digital.
   Monoespaçado para tudo o que é evidência (URLs, timestamps,
   identificadores, números); grotesque neutra para leitura.
   Acento âmbar com parcimónia extrema. Dark-first.
   ============================================================ */

:root{
  --bg:#0A0B0D;
  --surface:#141619;
  --surface-2:#1A1D21;
  --line:#262A2F;
  --line-strong:#3A4046;
  --ui-line:#666E77;
  --text:#E8EAED;
  --text-2:#A6ADB5;
  --text-3:#868E98;

  /* acentos com função fixa:
     âmbar = deteção · vermelho = severidade crítica · verde = resolvido */
  --alert:#FFB020;
  --alert-text:#FFB020;
  --alert-line:#FFB020;
  --alert-ink:#141414;
  --crit:#E5484D;
  --crit-text:#F27B7F;
  --ok:#00C46A;
  --ok-text:#31D584;

  --radius:3px;
  --maxw:1120px;
  --font-body:"Inter Tight",system-ui,-apple-system,"Segoe UI",sans-serif;
  --font-mono:"JetBrains Mono",ui-monospace,"SF Mono",Menlo,Consolas,monospace;

  /* sala de provas */
  --header-bg:rgba(10,11,13,.74);
  --redact-bar:#101216;
  --redact-bar-2:#0B0C0E;
  --grid-line:rgba(255,176,32,.045);
  --grid-line-2:rgba(232,234,237,.035);
  --glow:rgba(255,176,32,.35);
  --watermark:rgba(232,234,237,.05);
  /* azul de hiperligação da maqueta de anúncio (SERP), em HTML e em SVG */
  --serp-link:#8AB4F8;
  --ease-out:cubic-bezier(.16,1,.3,1);
  color-scheme:dark;
}
@media (prefers-color-scheme: light){
  :root:not([data-theme="dark"]){
    --bg:#F4F5F6;--surface:#FFFFFF;--surface-2:#EBEDEF;
    --line:#D7DBDF;--line-strong:#A9B1B8;--ui-line:#767F87;
    --text:#17191C;--text-2:#474E56;--text-3:#5D656E;
    --alert-text:#8A5800;--alert-line:#B67400;--crit-text:#B4262C;--ok-text:#00713D;--ok:#00954F;
    --header-bg:rgba(244,245,246,.8);
    --redact-bar:#22262B;
    --redact-bar-2:#111316;
    --grid-line:rgba(138,88,0,.06);
    --grid-line-2:rgba(23,25,28,.045);
    --glow:rgba(255,176,32,.45);
    --watermark:rgba(23,25,28,.028);
    --serp-link:#1A0DAB;
    color-scheme:light;
  }
}
:root[data-theme="light"]{
  --bg:#F4F5F6;--surface:#FFFFFF;--surface-2:#EBEDEF;
  --line:#D7DBDF;--line-strong:#A9B1B8;--ui-line:#767F87;
  --text:#17191C;--text-2:#474E56;--text-3:#5D656E;
  --alert-text:#8A5800;--alert-line:#B67400;--crit-text:#B4262C;--ok-text:#00713D;--ok:#00954F;
  --header-bg:rgba(244,245,246,.8);
  --redact-bar:#22262B;
  --redact-bar-2:#111316;
  --grid-line:rgba(138,88,0,.06);
  --grid-line-2:rgba(23,25,28,.045);
  --glow:rgba(255,176,32,.45);
  --watermark:rgba(23,25,28,.028);
  --serp-link:#1A0DAB;
  color-scheme:light;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important}
}
body{
  background:var(--bg);color:var(--text);
  font-family:var(--font-body);font-size:1rem;line-height:1.65;
  -webkit-font-smoothing:antialiased;
  min-height:100dvh;display:flex;flex-direction:column;
}
main{flex:1}
img,svg{max-width:100%;height:auto}
a{color:inherit;text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--alert-text)}
:focus-visible{outline:2px solid var(--alert-line);outline-offset:3px;border-radius:2px}
::selection{background:var(--alert);color:var(--alert-ink)}
button{font:inherit;color:inherit;background:none;border:none;cursor:pointer}

h1,h2,h3,h4{font-weight:700;line-height:1.12;letter-spacing:-.015em;text-wrap:balance}
h1{font-size:clamp(2.1rem,5vw,3.4rem);font-weight:800;letter-spacing:-.028em;line-height:1.06}
h2{font-size:clamp(1.45rem,3vw,2.05rem);letter-spacing:-.02em}
h3{font-size:1.15rem}
p{max-width:70ch}
strong{font-weight:600}
.mono,code,kbd{font-family:var(--font-mono);font-variant-ligatures:none}
code{font-size:.88em;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius);padding:.08em .35em;overflow-wrap:anywhere}
.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums}

.wrap{width:min(var(--maxw),100% - 2.5rem);margin-inline:auto}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.skip-link{position:absolute;left:1rem;top:-4rem;z-index:300;background:var(--alert);color:var(--alert-ink);border:1px solid var(--alert-line);padding:.55rem 1rem;border-radius:var(--radius);font-weight:600;text-decoration:none;transition:top .15s ease}
.skip-link:focus{top:1rem;color:var(--alert-ink)}

/* ---------- header ---------- */
.site-header{position:sticky;top:0;z-index:100;background:var(--header-bg);-webkit-backdrop-filter:blur(14px) saturate(1.15);backdrop-filter:blur(14px) saturate(1.15);border-bottom:1px solid var(--line);transition:box-shadow .25s ease,border-color .25s ease}
.site-header.scrolled{border-color:var(--line-strong);box-shadow:0 8px 28px -14px rgba(0,0,0,.55)}
:root[data-theme="light"] .site-header.scrolled{box-shadow:0 8px 24px -16px rgba(23,25,28,.35)}
@media (prefers-color-scheme: light){:root:not([data-theme="dark"]) .site-header.scrolled{box-shadow:0 8px 24px -16px rgba(23,25,28,.35)}}
.site-header .wrap{display:flex;align-items:center;gap:1rem;min-height:60px}
.brand{display:flex;align-items:center;gap:.5rem;text-decoration:none;color:var(--text);white-space:nowrap}
.brand:hover{color:var(--text)}
.brand .bh{display:inline-grid;place-items:center;background:var(--text);color:var(--bg);font-weight:800;font-size:.95rem;letter-spacing:.02em;width:2.1rem;height:2.1rem;border-radius:var(--radius)}
.brand .ads{font-family:var(--font-mono);font-weight:600;font-size:1rem;letter-spacing:.14em}
.site-nav{margin-left:auto}
.site-nav ul{list-style:none;display:flex;gap:.1rem;align-items:center}
.site-nav a{display:block;position:relative;padding:.45rem .55rem;text-decoration:none;font-size:.88rem;color:var(--text-2);border-radius:var(--radius);transition:color .18s ease}
.site-nav a::after{content:"";position:absolute;left:.55rem;right:.55rem;bottom:.18rem;height:1.5px;background:var(--alert-line);transform:scaleX(0);transform-origin:left center;transition:transform .25s var(--ease-out)}
.site-nav a:hover{color:var(--text)}
.site-nav a:hover::after{transform:scaleX(1)}
.site-nav a[aria-current="page"]{color:var(--text)}
.site-nav a[aria-current="page"]::after{transform:scaleX(1)}
.header-actions{display:flex;align-items:center;gap:.5rem}
.theme-toggle{width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--ui-line);border-radius:var(--radius);color:var(--text-2)}
.theme-toggle:hover{color:var(--text);border-color:var(--line-strong)}
.theme-toggle .icon-sun{display:none}
:root[data-theme="light"] .theme-toggle .icon-sun{display:block}
:root[data-theme="light"] .theme-toggle .icon-moon{display:none}
@media (prefers-color-scheme: light){
  :root:not([data-theme="dark"]) .theme-toggle .icon-sun{display:block}
  :root:not([data-theme="dark"]) .theme-toggle .icon-moon{display:none}
}
.nav-toggle{display:none;width:44px;height:44px;border:1px solid var(--ui-line);border-radius:var(--radius);place-items:center;color:var(--text)}
.nav-contacto{display:none}
@media (max-width: 900px){.nav-contacto{display:block}.nav-contacto a{color:var(--alert-text)}}

/* ---------- botões ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.68rem 1.2rem;min-height:44px;border-radius:var(--radius);border:1px solid transparent;font-weight:600;font-size:.95rem;text-decoration:none;cursor:pointer;position:relative;overflow:hidden;transition:background-color .18s ease,border-color .18s ease,color .18s ease,transform .18s var(--ease-out),box-shadow .18s ease}
.btn:hover{transform:translateY(-1px)}
.btn:active{transform:scale(.98)}
.btn-primary{background:var(--alert);color:var(--alert-ink);border-color:var(--alert-line)}
.btn-primary::before{content:"";position:absolute;top:0;bottom:0;left:-70%;width:45%;background:linear-gradient(105deg,transparent,rgba(255,255,255,.55) 50%,transparent);transform:skewX(-18deg);transition:left .45s var(--ease-out);pointer-events:none}
.btn-primary:hover{background:#FFC24A;color:var(--alert-ink);box-shadow:0 6px 22px -8px var(--glow)}
.btn-primary:hover::before{left:125%}
.btn-ghost{border-color:var(--ui-line);color:var(--text)}
.btn-ghost:hover{border-color:var(--alert-line);color:var(--text);box-shadow:inset 0 0 0 1px var(--alert-line)}
.btn-sm{padding:.4rem .8rem;min-height:38px;font-size:.86rem}
.btn[disabled],.btn[aria-disabled="true"]{opacity:.65;cursor:progress;transform:none}
.spinner{width:1em;height:1em;flex:none;border-radius:50%;border:2px solid currentColor;border-top-color:transparent;animation:bh-spin .7s linear infinite}
@keyframes bh-spin{to{transform:rotate(360deg)}}

/* ---------- secções ---------- */
.section{padding-block:4.2rem;border-top:1px solid var(--line)}
.section:first-of-type{border-top:0}
.kicker{display:flex;align-items:center;gap:.75rem;font-family:var(--font-mono);font-size:.74rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--text-3);margin-bottom:1rem}
.kicker .idx{flex:none;white-space:nowrap;color:var(--alert-text);border:1px solid var(--alert-line);border-radius:var(--radius);padding:.16rem .5rem;font-weight:600;letter-spacing:.14em;background:color-mix(in srgb,var(--alert) 7%,transparent);box-shadow:inset 0 0 0 .5px color-mix(in srgb,var(--alert) 25%,transparent)}
.kicker::after{content:"";flex:1;height:1px;background:var(--line)}
.section-lead{color:var(--text-2);margin-top:.75rem;max-width:64ch}

.page-head{padding-block:3.2rem 2.4rem;border-bottom:1px solid var(--line)}
.page-head .sub{color:var(--text-2);font-size:1.05rem;max-width:64ch;margin-top:.9rem}
.lead{font-size:1.1rem;color:var(--text);max-width:64ch}
.prose{max-width:72ch}
/* o .wrap com .prose mantém a largura da grelha e é o conteúdo que ganha
   medida de leitura — assim o texto alinha à esquerda com o cabeçalho da
   página em vez de flutuar ao centro */
.wrap.prose{max-width:none;--prose-col:41.5rem}
.wrap.prose > *{max-width:var(--prose-col)}
.prose p{margin-top:1rem;color:var(--text-2)}
.prose p:first-child{margin-top:0}
.prose h2{margin-top:2.6rem}
.prose h3{margin-top:1.9rem}
.prose ul,.prose ol{margin:1rem 0 0 0;padding-left:1.2rem;color:var(--text-2);display:grid;gap:.5rem}
.prose strong{color:var(--text)}

/* ---------- grelhas ---------- */
.card-grid{display:grid;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;margin-top:2rem}
.card-grid.cols-3{grid-template-columns:repeat(3,1fr)}
.card-grid.cols-2{grid-template-columns:repeat(2,1fr)}
.cell{background:var(--surface);padding:1.5rem 1.4rem;display:flex;flex-direction:column;gap:.6rem;position:relative;clip-path:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,0 100%)}
.cell::before,.cell::after{content:"";position:absolute;width:13px;height:13px;pointer-events:none;opacity:0;transition:opacity .22s ease,transform .22s var(--ease-out)}
.cell::before{top:8px;left:8px;border-top:1.5px solid var(--alert-line);border-left:1.5px solid var(--alert-line);transform:translate(4px,4px)}
.cell::after{bottom:8px;right:8px;border-bottom:1.5px solid var(--alert-line);border-right:1.5px solid var(--alert-line);transform:translate(-4px,-4px)}
a.cell{text-decoration:none;color:inherit;transition:background-color .2s ease,transform .22s var(--ease-out)}
a.cell:hover{background:var(--surface-2);color:inherit;transform:translateY(-2px);z-index:1}
a.cell:hover::before,a.cell:hover::after,a.cell:focus-visible::before,a.cell:focus-visible::after{opacity:1;transform:translate(0,0)}
a.cell:hover .cell-cta{color:var(--alert-text)}
a.cell:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--alert-line)}
.cell h3{font-size:1.02rem}
.cell p{font-size:.92rem;color:var(--text-2)}
.cell .cell-cta{margin-top:auto;padding-top:.6rem;font-size:.84rem;font-weight:600;color:var(--text-3)}
.cell .ref{position:absolute;top:1rem;right:1.1rem;font-family:var(--font-mono);font-size:.7rem;color:var(--text-3);letter-spacing:.06em}

/* ---------- CARTÃO DE EVIDÊNCIA — assinatura visual ---------- */
.evid{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);margin-top:1.6rem;overflow:hidden}
.evid-head{display:flex;flex-wrap:wrap;gap:.3rem 1.1rem;align-items:center;padding:.6rem .95rem;border-bottom:1px solid var(--line);font-family:var(--font-mono);font-size:.74rem;letter-spacing:.05em;color:var(--text-2);background:var(--surface-2)}
.evid-head .evid-id{color:var(--alert-text);font-weight:600}
.evid-sev{margin-left:auto;font-weight:600;border:1px solid;border-radius:var(--radius);padding:.1rem .5rem;font-size:.68rem;letter-spacing:.1em}
.sev-critica{color:var(--crit-text);border-color:var(--crit)}
.sev-alta{color:var(--alert-text);border-color:var(--alert-line)}
.sev-resolvida{color:var(--ok-text);border-color:var(--ok)}
.evid-body{padding:1.1rem .95rem}
.evid-body > .field:first-of-type{margin-top:0}
.evid-foot{padding:.65rem .95rem;border-top:1px solid var(--line);font-family:var(--font-mono);font-size:.74rem;color:var(--text-3);display:flex;gap:.8rem;flex-wrap:wrap;align-items:baseline}
.evid-foot .lbl{color:var(--text-3);letter-spacing:.12em;font-size:.66rem}
.evid-foot code{background:none;border:0;padding:0;color:var(--text-2);font-size:.74rem}

/* anúncio capturado (maquete anonimizada dentro do cartão) */
.serp{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);padding:.95rem 1.05rem;max-width:560px}
.serp .serp-tag{font-size:.7rem;font-weight:700;color:var(--text);letter-spacing:.02em}
.serp .serp-url{font-family:var(--font-mono);font-size:.78rem;color:var(--text-2);margin-top:.25rem;overflow-wrap:anywhere}
.serp .serp-url .serp-dominio{color:var(--text)}
.serp .serp-title{color:var(--serp-link);font-size:1.05rem;margin-top:.3rem;line-height:1.3}
/* o mesmo azul dentro de SVG (maqueta de anúncio em verificar.html) */
.serp-link{fill:var(--serp-link)}
.serp .serp-desc{font-size:.85rem;color:var(--text-2);margin-top:.3rem;max-width:56ch}
.serp .serp-marca{border-bottom:1px dashed var(--alert-line);color:var(--text)}

/* ---------- número-chave / painel de estatística ---------- */
.stat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;margin-top:2rem}
.stat{background:var(--surface);padding:1.3rem 1.4rem}
.stat-v{font-family:var(--font-mono);font-size:1.9rem;font-weight:700;color:var(--text);font-variant-numeric:tabular-nums}
.stat-v .u{font-size:1rem;color:var(--text-3)}
.stat-l{font-size:.86rem;color:var(--text-2);margin-top:.2rem}
.stat .fonte{font-family:var(--font-mono);font-size:.68rem;color:var(--text-3);margin-top:.5rem;letter-spacing:.04em}

/* ---------- gráficos ---------- */
.chart-block{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:1.5rem;margin-top:1.8rem}
.chart-block h3{font-size:1rem;margin-bottom:.3rem}
/* os SVG de dados têm uma largura mínima legível: em vez de encolherem o
   texto até ao ilegível em telemóvel, o contentor desliza mesmo (e o
   role=region/tabindex do HTML passa a corresponder ao que acontece) */
.chart-scroll{overflow-x:auto;overscroll-behavior-x:contain}
.chart-scroll svg{min-width:760px;max-width:none}
.chart-block .chart-sub{font-size:.85rem;color:var(--text-3);margin-bottom:1.1rem;font-family:var(--font-mono)}
.chart-block svg,.fluxo svg{display:block}
.chart-block svg text{font-family:var(--font-mono);font-size:11px;fill:var(--text-2)}
.chart-block svg .eixo{stroke:var(--ui-line)}
.chart-block svg .grelha{stroke:var(--line)}
.chart-block svg .barra{fill:var(--alert-line)}
.chart-block svg .barra-neutra{fill:var(--ui-line)}
.chart-block svg .linha-serie{stroke:var(--alert-line);fill:none;stroke-width:2}
.chart-block svg .ponto{fill:var(--alert-line)}
.chart-block svg .rotulo-v{fill:var(--text);font-weight:600}

/* ---------- tabela ---------- */
.spec-table{width:100%;border-collapse:collapse;font-size:.92rem;margin-top:1.5rem}
.spec-table th,.spec-table td{border:1px solid var(--line);padding:.65rem .85rem;text-align:left;vertical-align:top}
.spec-table thead th{font-family:var(--font-mono);font-size:.7rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-2);background:var(--surface)}
.spec-table tbody th{font-weight:600;background:var(--surface)}
.spec-table td.num{text-align:right}
.table-scroll{overflow-x:auto}
.spec-table th.sortable{padding:0}
.th-sort{display:flex;width:100%;align-items:center;justify-content:space-between;gap:.6rem;
  padding:.65rem .85rem;font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit;
  text-align:left;cursor:pointer;user-select:none;transition:color .18s ease}
.th-sort:hover{color:var(--text)}
/* a seta é a única pista visual de que a coluna ordena: tem de passar os
   3:1 de 1.4.11 — daí cor própria em vez de opacidade sobre --text-2 */
.th-sort .seta{color:var(--text-3);font-size:.9em}
th[aria-sort="ascending"] .th-sort .seta,th[aria-sort="descending"] .th-sort .seta{color:var(--alert-text)}

/* ---------- listas ---------- */
.check-list{list-style:none;margin-top:1.2rem;display:grid;gap:.7rem}
.check-list li{padding-left:1.6rem;position:relative;color:var(--text-2)}
.check-list li::before{content:"";position:absolute;left:0;top:.55em;width:.8rem;height:2px;background:var(--alert-line)}
.check-list li strong{color:var(--text)}

/* passos numerados — cadeia de custódia (como funciona / verificar / index) */
.passos{counter-reset:passo;list-style:none;margin-top:2.2rem;display:grid;gap:0;position:relative;padding-left:.2rem}
.passos::before{content:"";position:absolute;left:calc(.2rem + 1.12rem);top:.5rem;bottom:1rem;width:2px;background:linear-gradient(to bottom,var(--alert-line) 0%,var(--line-strong) 100%);transform-origin:top center;transition:transform 1.2s var(--ease-out) .15s}
html.js .passos:not(.in-view)::before{transform:scaleY(0)}
.passos > li{counter-increment:passo;padding:0 0 2.3rem 3.6rem;position:relative}
.passos > li:last-child{padding-bottom:.2rem}
.passos > li::before{content:counter(passo,decimal-leading-zero);position:absolute;left:0;top:-.2rem;width:2.3rem;height:2.3rem;display:grid;place-items:center;font-family:var(--font-mono);font-size:.82rem;font-weight:700;color:var(--alert-text);background:var(--surface);border:1px solid var(--alert-line);border-radius:var(--radius);box-shadow:0 0 0 5px var(--bg)}
.passos h3{font-size:1.05rem;margin-bottom:.4rem}
.passos p{font-size:.94rem;color:var(--text-2)}
.passos .evid{margin-top:1rem}

/* rótulos de estatuto legal */
.estatuto{display:inline-block;font-family:var(--font-mono);font-size:.7rem;font-weight:600;letter-spacing:.09em;text-transform:uppercase;border:1px solid;border-radius:var(--radius);padding:.18rem .5rem;margin-right:.4rem}
.estatuto-ilegal{color:var(--crit-text);border-color:var(--crit)}
.estatuto-termos{color:var(--alert-text);border-color:var(--alert-line)}
.estatuto-permitido{color:var(--text-2);border-color:var(--ui-line)}
/* «Potencialmente ilegal»: o estatuto ilegal com moldura tracejada — depende
   do caso concreto e não pode ler-se como o chip «Ilegal» */
.estatuto-potencial{color:var(--crit-text);border-color:var(--crit);border-style:dashed}
/* etiqueta descritiva (não é um estatuto legal): tracejada, deliberadamente
   distinta dos três chips da legenda */
.tag-nota{display:inline-block;font-family:var(--font-mono);font-size:.68rem;font-weight:500;
  letter-spacing:.09em;text-transform:uppercase;color:var(--text-3);
  border:1px dashed var(--ui-line);border-radius:var(--radius);padding:.18rem .5rem;margin-right:.4rem}

/* ---------- FAQ ---------- */
.faq{margin-top:1.5rem;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
.faq details{border-top:1px solid var(--line);background:var(--surface)}
.faq details:first-child{border-top:0}
.faq summary{cursor:pointer;list-style:none;padding:1rem 1.25rem;font-weight:600;display:flex;justify-content:space-between;gap:1rem;align-items:center}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-family:var(--font-mono);color:var(--text-3);flex:none}
.faq details[open] summary::after{content:"–"}
.faq .faq-a{padding:0 1.25rem 1.15rem;color:var(--text-2);font-size:.94rem}
.faq .faq-a p{max-width:75ch}

/* ---------- CTA ---------- */
.cta-band{border:1px solid var(--line-strong);border-radius:var(--radius);padding:2.4rem 2rem;margin-block:3.2rem;display:flex;flex-wrap:wrap;align-items:center;gap:1.4rem;justify-content:space-between;background:var(--surface)}
.cta-band h2{max-width:26ch}
.cta-band p{color:var(--text-2);margin-top:.6rem}

/* ---------- preços ---------- */
.preco-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;margin-top:2rem}
.preco{background:var(--surface);padding:1.8rem 1.5rem;display:flex;flex-direction:column;gap:.9rem;position:relative;clip-path:polygon(0 0,calc(100% - 16px) 0,100% 16px,100% 100%,0 100%);transition:transform .22s var(--ease-out),background-color .2s ease}
.preco::before,.preco::after{content:"";position:absolute;width:14px;height:14px;pointer-events:none;opacity:0;transition:opacity .22s ease,transform .22s var(--ease-out)}
.preco::before{top:9px;left:9px;border-top:1.5px solid var(--alert-line);border-left:1.5px solid var(--alert-line);transform:translate(4px,4px)}
.preco::after{bottom:9px;right:9px;border-bottom:1.5px solid var(--alert-line);border-right:1.5px solid var(--alert-line);transform:translate(-4px,-4px)}
.preco:hover{transform:translateY(-2px);z-index:1}
.preco:hover::before,.preco:hover::after,
.preco:focus-within::before,.preco:focus-within::after{opacity:1;transform:translate(0,0)}
.preco.destaque{outline:1px solid var(--alert-line);outline-offset:-1px;box-shadow:0 0 38px -18px var(--glow)}
.preco .preco-nome{font-family:var(--font-mono);font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--text-3)}
.preco .preco-valor{font-family:var(--font-mono);font-size:1.7rem;font-weight:700}
.preco ul{list-style:none;display:grid;gap:.5rem;font-size:.9rem;color:var(--text-2)}
.preco ul li{padding-left:1.4rem;position:relative}
.preco ul li::before{content:"";position:absolute;left:0;top:.6em;width:.7rem;height:2px;background:var(--alert-line)}
.preco .btn{margin-top:auto}

/* ---------- formulários ---------- */
/* o formulário alinha à esquerda com a grelha da página (o .wrap mantém a
   largura total; são os filhos que ficam com medida de leitura) */
.wrap.form-shell{max-width:none}
.wrap.form-shell > *{max-width:640px}
.field{margin-top:1.3rem}
.field label{display:block;font-weight:600;font-size:.94rem;margin-bottom:.4rem}
.field .req{color:var(--alert-text)}
.field .help{font-size:.83rem;color:var(--text-3);margin-bottom:.45rem;max-width:56ch}
.field input[type="text"],.field input[type="email"],.field input[type="url"],.field select,.field textarea{width:100%;background:var(--surface);border:1px solid var(--ui-line);border-radius:var(--radius);color:var(--text);padding:.68rem .85rem;min-height:46px;font:inherit}
.field input[type="url"],.field input[name*="dominio"]{font-family:var(--font-mono);font-size:.92rem}
.field textarea{min-height:110px;resize:vertical}
.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{outline:2px solid var(--alert-line);outline-offset:2px}
.field.invalid input,.field.invalid select,.field.invalid textarea{border-color:var(--crit)}
.field-error{display:none;color:var(--crit-text);font-size:.85rem;margin-top:.4rem}
.field.invalid .field-error{display:block}
.check-field{display:flex;flex-wrap:wrap;gap:.7rem;align-items:flex-start;margin-top:1.1rem}
.check-field input{width:1.1rem;height:1.1rem;margin-top:.25rem;accent-color:var(--alert-line);flex:none}
.check-field label{font-size:.9rem;color:var(--text-2)}
.check-field .field-error{flex-basis:100%;margin-top:0}
.check-field.invalid .field-error{display:block}
.check-field.invalid input{outline:2px solid var(--crit);outline-offset:2px}
.error-summary{display:none;border:1px solid var(--crit);border-radius:var(--radius);padding:1rem 1.2rem;margin-top:1.5rem;color:var(--crit-text);font-size:.92rem}
.error-summary.visible{display:block}
.error-summary ul{margin:.5rem 0 0 1.1rem}
.error-summary a{color:inherit}
.form-confirm{border:1px solid var(--line-strong);border-left:3px solid var(--ok);border-radius:var(--radius);padding:2rem 1.8rem;background:var(--surface)}

/* ---------- banner de consentimento ---------- */
.consent{position:fixed;inset-inline:0;bottom:0;z-index:200;background:var(--surface);border-top:1px solid var(--line-strong);padding:1rem 0;display:none}
.consent.visible{display:block}
.consent .wrap{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between}
.consent p{font-size:.88rem;color:var(--text-2);max-width:62ch}
.consent .consent-acoes{display:flex;gap:.6rem}

/* ---------- fluxograma (resposta.html) ---------- */
.fluxo{margin-top:2rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:1.5rem;overflow-x:auto}
.fluxo svg{min-width:780px;max-width:none}
.fluxo svg text{font-family:var(--font-body);font-size:12.5px;fill:var(--text)}
.fluxo svg .no{fill:var(--surface-2);stroke:var(--ui-line)}
.fluxo svg .no-decisao{fill:var(--surface-2);stroke:var(--alert-line)}
.fluxo svg .no-fim{fill:var(--surface-2);stroke:var(--ok)}
.fluxo svg .seta-l{stroke:var(--ui-line);fill:none;marker-end:url(#ponta)}
.fluxo svg .rotulo-seta{font-family:var(--font-mono);font-size:10.5px;fill:var(--text-3)}
/* alternativa em texto do fluxograma — nativa (<details>), logo disponível
   sem JS e em qualquer largura */
.fluxo-texto{margin-top:1rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}
.fluxo-texto > summary{cursor:pointer;list-style:none;padding:.85rem 1.1rem;font-family:var(--font-mono);
  font-size:.74rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--text-2);
  display:flex;justify-content:space-between;gap:1rem;align-items:center}
.fluxo-texto > summary::-webkit-details-marker{display:none}
.fluxo-texto > summary::after{content:"+";font-family:var(--font-mono);color:var(--text-3);flex:none;font-size:1.1rem}
.fluxo-texto[open] > summary::after{content:"–"}
.fluxo-texto > summary:hover{color:var(--text)}
.fluxo-texto > p{padding:0 1.1rem;font-size:.88rem;color:var(--text-3)}
.fluxo-texto > ol{margin:.9rem 0 0;padding:0 1.1rem 1.2rem 2.3rem;display:grid;gap:.55rem;font-size:.92rem;color:var(--text-2)}
.fluxo-texto > ol strong{color:var(--text)}

/* ---------- footer ---------- */
.site-footer{border-top:1px solid var(--line);padding-block:3rem 2rem;margin-top:4rem;font-size:.9rem;color:var(--text-2)}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:2rem}
.site-footer .footer-h{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--text-3);margin-bottom:.8rem}
.site-footer ul{list-style:none;display:grid;gap:.45rem}
.site-footer a{text-decoration:none;color:var(--text-2)}
.site-footer a:hover{color:var(--text)}
.footer-legal{margin-top:2.5rem;padding-top:1.4rem;border-top:1px solid var(--line);font-size:.8rem;color:var(--text-3);display:grid;gap:.4rem}
.footer-brand p{max-width:36ch;margin-top:.8rem;font-size:.88rem}

/* ---------- responsivo ---------- */
@media (max-width: 960px){
  .card-grid.cols-3{grid-template-columns:1fr 1fr}
  .preco-grid{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media (max-width: 900px){
  .site-nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--bg);border-bottom:1px solid var(--line);margin-left:0;padding:.8rem 1.25rem 1.2rem}
  .site-nav.open{display:block}
  .site-nav ul{flex-direction:column;align-items:stretch;gap:.15rem}
  .site-nav a{padding:.8rem .65rem;font-size:1rem}
  .nav-toggle{display:grid;margin-left:auto}
  .header-actions .btn{display:none}
  .card-grid.cols-3,.card-grid.cols-2{grid-template-columns:1fr}
  .stat-row{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr}
  .section{padding-block:3rem}
  .cta-band{padding:1.8rem 1.4rem}
  .passos > li{padding-left:3.2rem}
  .passos > li::before{width:2.05rem;height:2.05rem}
  .passos::before{left:calc(.2rem + 1rem)}
}

/* ---------- impressão ---------- */
@media print{
  :root{--bg:#fff;--surface:#fff;--surface-2:#f2f2f2;--line:#999;--line-strong:#666;--text:#000;--text-2:#222;--text-3:#555;--alert-text:#8A5800;--alert-line:#8A5800;--ui-line:#666;--crit-text:#B4262C;--ok-text:#00713D}
  body{background:#fff;color:#000}
  .site-header,.site-footer,.cta-band,.skip-link,.theme-toggle,.nav-toggle,.btn,.consent{display:none !important}
  a{text-decoration:none;color:#000}
}

/* ============================================================
   SALA DE PROVAS — sistema de movimento e componentes forenses
   Tudo transform/opacity; estados iniciais ocultos apenas sob
   html.js; opt-out completo com prefers-reduced-motion.
   ============================================================ */

/* ---------- revelação por scroll ---------- */
.rv{transition:opacity .72s var(--ease-out),transform .72s var(--ease-out)}
html.js .rv:not(.in-view){opacity:0;transform:translateY(20px)}

/* ---------- ligações de conteúdo: sublinhado que se desenha ---------- */
main p a:not(.btn),main li a:not(.btn),main dd a:not(.btn),main figcaption a:not(.btn){
  text-decoration:none;padding-bottom:1px;
  box-shadow:inset 0 -1px 0 var(--line-strong);
  background-image:linear-gradient(var(--alert-text),var(--alert-text));
  background-repeat:no-repeat;background-position:0 100%;background-size:0% 1.5px;
  transition:background-size .3s var(--ease-out),color .18s ease;
}
main p a:not(.btn):hover,main li a:not(.btn):hover,main dd a:not(.btn):hover,main figcaption a:not(.btn):hover{
  color:var(--alert-text);background-size:100% 1.5px;
}

/* ---------- hero: papel milimétrico + vinheta ---------- */
.hero-bh{position:relative;padding-block:4.6rem 4.4rem;overflow:hidden}
.hero-bh::before{content:"";position:absolute;inset:0;pointer-events:none;
  background-image:
    linear-gradient(var(--grid-line-2) 1px,transparent 1px),
    linear-gradient(90deg,var(--grid-line-2) 1px,transparent 1px),
    linear-gradient(var(--grid-line) 1px,transparent 1px),
    linear-gradient(90deg,var(--grid-line) 1px,transparent 1px);
  background-size:24px 24px,24px 24px,120px 120px,120px 120px}
.hero-bh::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(130% 95% at 50% 0%,transparent 42%,var(--bg) 100%)}
.hero-bh .wrap{position:relative;z-index:1}
.hero-bh h1{font-size:clamp(2.4rem,6vw,4.3rem)}
/* o cartão de evidência do hero é um documento, não uma faixa: largura de folha */
.hero-bh .evid{max-width:820px}

/* ---------- kicker datilografado ---------- */
/* a altura fica reservada pelo JS a partir da medição do texto completo
   (min-height inline): a 360/390 px o kicker ocupa duas linhas e sem isso
   o H1 saltava enquanto o texto se escrevia */
.type-kicker{min-height:1.4em}
.type-kicker .caret{display:inline-block;width:.55em;height:1.05em;margin-left:.18em;background:var(--alert-line);vertical-align:text-bottom;animation:bh-caret 1s steps(1) infinite}
@keyframes bh-caret{50%{opacity:0}}
html:not(.js) .type-kicker .caret{display:none}

/* ---------- redação censurada que desliza ---------- */
.redact{position:relative;display:inline-block;color:var(--alert-text);white-space:nowrap}
html.js .redact::after{content:"";position:absolute;inset:-.04em -.14em;border-radius:2px;
  background:repeating-linear-gradient(45deg,var(--redact-bar) 0 7px,var(--redact-bar-2) 7px 14px);
  border:1px solid var(--line-strong);
  transform-origin:right center;transition:transform .55s var(--ease-out)}
html.js .redact.revealed::after{transform:scaleX(0)}

/* ---------- varrimento de scanline (uma vez, de cima a baixo do hero) ----------
   O elemento tem a altura do hero e leva a linha desenhada no topo do seu
   fundo: translateY(0 → 100%) percorre exatamente a altura do hero, seja
   qual for o viewport. Sem JS não existe; com movimento reduzido, também não. */
.hero-bh .scanline{display:none}
html.js .hero-bh .scanline{display:block;position:absolute;inset:0;z-index:2;pointer-events:none;overflow:hidden}
html.js .hero-bh .scanline::after{content:"";position:absolute;left:0;right:0;top:0;height:100%;
  background-image:linear-gradient(90deg,transparent 4%,var(--alert-line) 50%,transparent 96%);
  background-repeat:no-repeat;background-size:100% 2px;background-position:0 0;
  filter:drop-shadow(0 0 9px var(--glow));
  opacity:0;transform:translateY(0);
  animation:bh-scan 1.6s ease-in-out .85s 1}
@keyframes bh-scan{0%{opacity:0;transform:translateY(0)}8%{opacity:1}86%{opacity:1}100%{opacity:0;transform:translateY(100%)}}

/* ---------- letreiro contínuo de ameaças ---------- */
.marquee{position:relative;z-index:1;border-block:1px solid var(--line);margin-top:3.4rem;padding-block:.6rem}
/* a máscara vive no invólucro interior: em .marquee apagaria também o botão
   de pausa, que fica fora dela e por isso legível */
.marquee-mask{overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.marquee-track{display:flex;width:max-content;animation:bh-marquee 48s linear infinite}
/* 2.2.2 exige um mecanismo explícito de paragem: o hover não serve a quem
   usa teclado, leitor de ecrã ou ecrã tátil. Sem JS não há botão — e por
   isso a faixa fica estática de origem. */
html:not(.js) .marquee-track{animation:none}
html:not(.js) .marquee-pausa{display:none}
.marquee:hover .marquee-track,
.marquee:focus-within .marquee-track,
.marquee.parado .marquee-track{animation-play-state:paused}
.marquee-pausa{position:absolute;top:50%;right:.7rem;transform:translateY(-50%);z-index:2;
  display:grid;place-items:center;width:32px;height:32px;flex:none;
  border:1px solid var(--ui-line);border-radius:var(--radius);
  background:var(--bg);color:var(--text-2);
  transition:color .18s ease,border-color .18s ease}
.marquee-pausa:hover{color:var(--text);border-color:var(--alert-line)}
.marquee-pausa .icon-play{display:none}
.marquee.parado .marquee-pausa .icon-play{display:block}
.marquee.parado .marquee-pausa .icon-pause{display:none}
.marquee-track span{font-family:var(--font-mono);font-size:.78rem;letter-spacing:.1em;color:var(--text-3);white-space:pre;text-transform:lowercase}
@keyframes bh-marquee{to{transform:translateX(-50%)}}

/* ---------- marca de água do código de página ---------- */
.page-head{position:relative;overflow:hidden}
.page-head::before{content:"";position:absolute;inset:0;pointer-events:none;
  background-image:linear-gradient(var(--grid-line-2) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line-2) 1px,transparent 1px);
  background-size:24px 24px;
  -webkit-mask-image:radial-gradient(110% 100% at 50% 0%,#000 30%,transparent 100%);
  mask-image:radial-gradient(110% 100% at 50% 0%,#000 30%,transparent 100%)}
.page-head .wrap{position:relative;z-index:1}
.page-code{position:absolute;right:max(1.25rem,calc((100% - var(--maxw)) / 2));bottom:.18em;z-index:0;font-family:var(--font-mono);font-weight:700;line-height:1;letter-spacing:-.05em;font-size:clamp(5.5rem,20vw,13rem);color:var(--watermark);pointer-events:none;user-select:none}

/* ---------- carimbo forense ---------- */
.stamp-row{margin-top:2.4rem}
.stamp{display:inline-block;font-family:var(--font-mono);font-size:.7rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--alert-text);border:2px solid var(--alert-line);border-radius:6px;padding:.72rem 1.05rem;position:relative;transform:rotate(-3.5deg);opacity:.9;transition:transform .8s var(--ease-out),opacity .8s ease}
.stamp::before{content:"";position:absolute;inset:4px;border:1px solid var(--alert-line);border-radius:4px;opacity:.7}
html.js .rv:not(.in-view) .stamp{opacity:0;transform:rotate(-11deg) scale(1.14)}
/* em ecrãs estreitos o carimbo já ocupa quase toda a coluna: o estado inicial
   ampliado transbordava a página (medido: 366px de conteúdo a 360px de
   viewport). Aqui entra só pela rotação, sem crescer. */
@media (max-width: 620px){
  html.js .rv:not(.in-view) .stamp{transform:rotate(-7deg)}
}

/* ---------- coluna lateral das páginas editoriais e do formulário ----------
   Em ecrãs estreitos é um bloco no fim do artigo; a partir de 1080px ocupa a
   coluna que sobrava à direita da medida de leitura, com o conteúdo fixo ao
   scroll. Absoluta (e não em grelha) para não obrigar a reestruturar os
   corpos das 17 páginas que usam .wrap.prose. */
.wrap.prose > .side-rail,.wrap.form-shell > .side-rail{max-width:none}
.side-rail{margin-top:3rem}
.side-rail-in{display:grid;gap:1.3rem}
.rail-block{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:1.05rem 1.15rem}
.rail-h{font-family:var(--font-mono);font-size:.66rem;font-weight:600;letter-spacing:.16em;
  text-transform:uppercase;color:var(--text-3);margin-bottom:.7rem}
.side-rail ul{list-style:none;display:grid;gap:.1rem;margin:0;padding:0}
.side-rail .rail-lista li{display:flex;gap:.6rem;align-items:baseline;padding:.3rem .5rem;font-size:.88rem;color:var(--text-2)}
.side-rail li a{display:flex;gap:.6rem;align-items:baseline;padding:.4rem .5rem;border-radius:var(--radius);
  text-decoration:none;font-size:.88rem;color:var(--text-2);box-shadow:none;background-image:none;
  transition:color .18s ease,background-color .18s ease}
.side-rail li a:hover{color:var(--text);background:var(--surface-2)}
.side-rail li a[aria-current="page"]{color:var(--text);background:var(--surface-2);box-shadow:inset 2px 0 0 var(--alert-line)}
.rail-ref{flex:none;font-family:var(--font-mono);font-size:.7rem;letter-spacing:.06em;color:var(--text-3)}
.side-rail li a[aria-current="page"] .rail-ref{color:var(--alert-text)}
.side-rail .rail-nota{font-size:.82rem;color:var(--text-3);margin-top:.8rem}
.side-rail .estatuto{margin-bottom:.35rem}
.side-rail .callout-det{margin-top:0;padding:1.05rem 1.15rem}
.side-rail .callout-det p{font-size:.87rem;margin-top:.5rem}
.side-rail .stamp-row{margin-top:.4rem}
@media (min-width: 1080px){
  .wrap.prose,.wrap.form-shell{position:relative}
  .wrap.prose{--rail-left:calc(var(--prose-col) + 3rem)}
  .wrap.form-shell{--rail-left:calc(640px + 2.5rem)}
  .side-rail{position:absolute;top:0;bottom:0;left:var(--rail-left);right:0;margin-top:0;pointer-events:none}
  .side-rail-in{position:sticky;top:5.5rem;max-width:320px;pointer-events:auto}
}

/* ---------- destaque de deteção (páginas de abuso) ---------- */
.callout-det{border:1px solid var(--line-strong);border-left:3px solid var(--alert-line);border-radius:var(--radius);background:var(--surface);padding:1.5rem 1.6rem;margin-top:2.4rem}
.callout-tag{display:inline-block;font-family:var(--font-mono);font-size:.66rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--alert-text);border:1px solid var(--alert-line);border-radius:var(--radius);padding:.14rem .5rem;margin-bottom:.8rem;background:color-mix(in srgb,var(--alert) 7%,transparent)}
.prose .callout-det h2,.prose .callout-det h3{margin-top:0}
.prose .callout-det p{margin-top:.7rem}

/* ---------- gráficos: crescimento ao revelar ---------- */
.chart-block svg .barra{transform-box:fill-box;transform-origin:left center;transition:transform .9s var(--ease-out)}
html.js .chart-block:not(.in-view) svg .barra{transform:scaleX(0)}
.chart-block svg .ponto{transform-box:fill-box;transform-origin:center;transition:transform .5s var(--ease-out) .9s}
html.js .chart-block:not(.in-view) svg .ponto{transform:scale(0)}
.chart-block svg .rotulo-v{transition:opacity .5s ease .75s}
html.js .chart-block:not(.in-view) svg .rotulo-v{opacity:0}
.chart-block svg .linha-serie{transition:stroke-dashoffset 1.5s var(--ease-out) .25s}
html.js .chart-block:not(.in-view) svg .linha-serie{stroke-dashoffset:var(--len,0)}

/* medidor (gauge) com brilho âmbar */
.gauge-flex{display:flex;flex-wrap:wrap;gap:1.6rem;align-items:center}
.gauge-svg{width:min(300px,100%);flex:none}
.gauge-svg .gauge-base{stroke:var(--ui-line);fill:none}
.gauge-svg .gauge-arc{stroke:var(--alert-line);fill:none;stroke-linecap:round;filter:drop-shadow(0 0 7px var(--glow));transition:stroke-dashoffset 1.35s var(--ease-out) .2s}
html.js .chart-block:not(.in-view) .gauge-svg .gauge-arc{stroke-dashoffset:var(--len,0)}
.gauge-svg .gauge-num{font-family:var(--font-mono);font-weight:700;font-size:30px;fill:var(--text);font-variant-numeric:tabular-nums}
.gauge-svg .gauge-u{font-family:var(--font-mono);font-size:13px;fill:var(--text-3)}
.gauge-side p{font-size:.92rem;color:var(--text-2);max-width:44ch}

/* números que contam */
[data-count]{font-variant-numeric:tabular-nums}

/* confirmação do formulário */
html.js .form-confirm.pop{animation:bh-pop .6s var(--ease-out)}
@keyframes bh-pop{from{opacity:0;transform:translateY(14px) scale(.985)}}
.form-confirm .ok-icon{display:inline-grid;place-items:center;width:2.7rem;height:2.7rem;border:1.5px solid var(--ok);border-radius:50%;color:var(--ok-text);margin-bottom:1.1rem}
html.js .form-confirm.pop .ok-icon svg{stroke-dasharray:30;stroke-dashoffset:30;animation:bh-draw .55s ease-out .3s forwards}
@keyframes bh-draw{to{stroke-dashoffset:0}}
.form-fail{display:none;border:1px solid var(--crit);border-left:3px solid var(--crit);border-radius:var(--radius);padding:1rem 1.2rem;margin-top:1.2rem;color:var(--crit-text);font-size:.92rem;background:var(--surface)}
.form-fail.visible{display:block}

/* ---------- responsivo (componentes novos) ---------- */
@media (max-width: 900px){
  .hero-bh{padding-block:3.4rem 3.2rem}
  .marquee{margin-top:2.6rem}
  .gauge-flex{gap:1.1rem}
}

/* ---------- movimento reduzido: tudo visível, nada anima ---------- */
@media (prefers-reduced-motion: reduce){
  html.js .rv:not(.in-view){opacity:1;transform:none}
  html.js .redact::after{display:none}
  html.js .passos:not(.in-view)::before{transform:none}
  html.js .chart-block:not(.in-view) svg .barra{transform:none}
  html.js .chart-block:not(.in-view) svg .ponto{transform:none}
  html.js .chart-block:not(.in-view) svg .rotulo-v{opacity:1}
  html.js .chart-block:not(.in-view) svg .linha-serie,
  html.js .chart-block:not(.in-view) .gauge-svg .gauge-arc{stroke-dashoffset:0}
  html.js .rv:not(.in-view) .stamp{opacity:.9;transform:rotate(-3.5deg)}
  html.js .hero-bh .scanline,.type-kicker .caret{display:none;animation:none}
  .marquee-track{animation:none}
  .btn:hover,a.cell:hover,.preco:hover{transform:none}
}
