/*
Theme Name: GT Performance Store
Theme URI: https://gtperformance.com.br
Author: GT Performance Tech Lab
Description: Loja WooCommerce da GT Performance Tech Lab. Catálogo editorial com imagem em primeiro plano, seletor de carro persistente, Pix e parcelamento em destaque, e integração pronta para o Bling.
Version: 2.2.0
Requires at least: 6.4
Tested up to: 6.7
Requires PHP: 8.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: gtperf
Tags: woocommerce, e-commerce, automotivo
WC requires at least: 8.0
WC tested up to: 9.5
*/

/* ══════════════════════════════════════════════════════════
   1. TOKENS
   ══════════════════════════════════════════════════════════ */
:root{
  /* neutros: base clara e quente, superfícies brancas, tinta quase preta */
  --base:#F2F1EE;
  --surface:#FFFFFF;
  --shade:#E7E5E1;
  --ink:#121213;
  --ink-2:#4A4B4E;
  --muted:#84847F;
  --rule:#DEDCD7;
  --rule-forte:#C9C7C1;

  /* escuro, para as faixas editoriais */
  --night:#121213;
  --night-2:#1D1E20;
  --on-night:#EDEBE7;
  --on-night-2:#A5A49F;

  /* laranja GT, tirado da logo */
  --gt:#F26232;
  --gt-escuro:#D3481C;

  /* sinais */
  --pix:#0A7A56;
  --sale:#C4331E;

  --disp:"Archivo","Helvetica Neue",Arial,sans-serif;
  --body:"IBM Plex Sans","Helvetica Neue",Arial,sans-serif;
  --mono:"IBM Plex Mono",ui-monospace,"SFMono-Regular",Menlo,monospace;

  --gut:clamp(20px,5vw,80px);
  --maxw:1680px;
  --barra:36px;
  --topo:68px;

  --sombra:0 24px 60px -32px rgba(18,18,19,.34);
  --transicao:cubic-bezier(.22,.7,.2,1);
}

/* ══════════════════════════════════════════════════════════
   2. BASE
   ══════════════════════════════════════════════════════════ */
*{box-sizing:border-box}
html{background:var(--base);scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  margin:0;background:transparent;color:var(--ink);
  font-family:var(--body);font-weight:350;
  font-size:clamp(15px,1vw,16.5px);line-height:1.65;
  -webkit-font-smoothing:antialiased;overflow-x:hidden;
}
img{display:block;max-width:100%;height:auto}
[hidden]{display:none!important}
a{color:inherit;text-decoration:none}

/* ícones inline: traço, nunca preenchimento, e tamanho ligado ao texto */
svg[aria-hidden="true"]{
  width:1.05em;height:1.05em;flex:0 0 auto;
  fill:none;stroke:currentColor;stroke-width:1.6;
  stroke-linecap:round;stroke-linejoin:round;
}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--gt);outline-offset:3px}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.wrap{position:relative;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gut)}
.wrap--estreito{max-width:1180px}

/* ══════════════════════════════════════════════════════════
   3. TIPOGRAFIA
   ══════════════════════════════════════════════════════════ */
.disp{
  font-family:var(--disp);
  font-variation-settings:"wdth" 112,"wght" 800;
  text-transform:uppercase;line-height:.92;letter-spacing:-.018em;margin:0;
}
.disp--xl{font-variation-settings:"wdth" 118,"wght" 880;letter-spacing:-.026em}
.eyebrow{
  font-family:var(--mono);font-size:10.5px;font-weight:500;letter-spacing:.2em;
  text-transform:uppercase;color:var(--muted);margin:0;
}
.eyebrow--gt{color:var(--gt)}
.lede{font-size:clamp(16px,1.25vw,19px);line-height:1.55;font-weight:300;color:var(--ink-2);max-width:46ch}

/* chip técnico — o motivo gráfico que se repete na loja inteira */
.chip{
  display:inline-flex;align-items:center;gap:6px;
  font-family:var(--mono);font-size:10px;font-weight:500;letter-spacing:.14em;
  text-transform:uppercase;padding:5px 9px;border:1px solid var(--rule-forte);
  color:var(--ink-2);background:var(--surface);white-space:nowrap;
}
.chip--gt{border-color:var(--gt);color:var(--gt)}
.chip--solido{background:var(--ink);border-color:var(--ink);color:var(--base)}
.chip--fantasma{background:transparent}

/* seção */
.sec{padding-block:clamp(52px,6.5vw,110px)}
.sec--rule{border-top:1px solid var(--rule)}
.sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:clamp(18px,3vw,56px);margin-bottom:clamp(24px,3vw,46px);flex-wrap:wrap}
.sec-head h2{font-size:clamp(28px,4.4vw,62px)}
.sec-head .eyebrow{margin-bottom:14px}
.sec-head-txt{max-width:62ch}

/* ══════════════════════════════════════════════════════════
   4. BOTÕES
   ══════════════════════════════════════════════════════════ */
.btn,
.woocommerce button.button,
.woocommerce a.button,
.woocommerce input.button,
.woocommerce #respond input#submit{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  padding:16px 30px;border:1px solid var(--ink);border-radius:999px;
  background:var(--ink);color:var(--base);
  font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.16em;
  text-transform:uppercase;line-height:1;cursor:pointer;text-decoration:none;
  transition:background .24s var(--transicao),color .24s var(--transicao),
             border-color .24s var(--transicao),transform .24s var(--transicao);
}
.btn:hover,
.woocommerce button.button:hover,
.woocommerce a.button:hover,
.woocommerce input.button:hover{
  background:var(--gt);border-color:var(--gt);color:#fff;transform:translateY(-2px);
}
.btn--gt,
.woocommerce button.button.alt,
.woocommerce a.button.alt,
.woocommerce input.button.alt,
.woocommerce #respond input#submit.alt{background:var(--gt);border-color:var(--gt);color:#fff}
.btn--gt:hover,
.woocommerce button.button.alt:hover,
.woocommerce a.button.alt:hover{background:var(--ink);border-color:var(--ink);color:var(--base)}
.btn--linha{background:transparent;color:var(--ink)}
.btn--linha:hover{background:var(--ink);color:var(--base);border-color:var(--ink)}
.btn--claro{background:var(--base);border-color:var(--base);color:var(--ink)}
.btn--claro:hover{background:var(--gt);border-color:var(--gt);color:#fff}
.btn--linha-clara{background:transparent;border-color:rgba(237,235,231,.45);color:var(--on-night)}
.btn--linha-clara:hover{background:var(--base);border-color:var(--base);color:var(--ink)}
.btn--bloco{width:100%}
.btn--g{padding:19px 38px;font-size:12px}
.btn--p{padding:11px 18px;font-size:10px}
.woocommerce button.button:disabled,
.woocommerce button.button.disabled{opacity:.35;cursor:not-allowed;transform:none}

/* seta que desliza no hover */
.btn .seta{transition:transform .24s var(--transicao)}
.btn:hover .seta{transform:translateX(4px)}

/* ══════════════════════════════════════════════════════════
   5. BARRA DE AVISO + CABEÇALHO
   ══════════════════════════════════════════════════════════ */
.aviso{
  background:var(--night);color:var(--on-night);height:var(--barra);
  display:flex;align-items:center;overflow:hidden;position:relative;z-index:60;
  font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;
}
.aviso-pista{display:flex;gap:54px;white-space:nowrap;animation:corre 38s linear infinite;padding-left:54px}
.aviso-pista span{display:inline-flex;align-items:center;gap:9px}
.aviso-pista i{font-style:normal;color:var(--gt)}
@keyframes corre{from{transform:translateX(0)}to{transform:translateX(-50%)}}

.topo{
  position:sticky;top:0;z-index:50;background:var(--base);
  border-bottom:1px solid var(--rule);transition:box-shadow .3s;
}
.topo.grudado{box-shadow:0 1px 20px -10px rgba(18,18,19,.3)}
.topo-in{
  max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gut);height:var(--topo);
  display:flex;align-items:center;gap:clamp(12px,2vw,36px);
}
.marca{display:flex;align-items:baseline;gap:11px;flex:0 0 auto}
.marca img{height:19px;width:auto}
.marca span{font-family:var(--mono);font-size:9px;font-weight:500;letter-spacing:.22em;color:var(--muted)}

.nav{display:flex;align-items:center;gap:clamp(12px,1.6vw,28px);margin:0 auto 0 clamp(8px,2vw,36px);padding:0;list-style:none}
.nav > li{position:relative}
.nav > li > a{
  display:inline-flex;align-items:center;gap:6px;padding-block:24px;
  font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--ink-2);transition:color .2s;position:relative;
}
.nav > li > a::after{
  content:"";position:absolute;left:0;right:0;bottom:18px;height:1px;
  background:var(--gt);transform:scaleX(0);transform-origin:left;transition:transform .26s var(--transicao);
}
.nav > li > a:hover,.nav > li.ativo > a{color:var(--ink)}
.nav > li > a:hover::after,.nav > li.ativo > a::after{transform:scaleX(1)}

/* painel do menu */
.painel{
  position:absolute;top:100%;left:50%;transform:translateX(-50%) translateY(8px);
  min-width:min(820px,84vw);background:var(--surface);border:1px solid var(--rule);
  padding:clamp(22px,2.4vw,34px);display:grid;gap:clamp(20px,2.4vw,44px);
  grid-template-columns:repeat(auto-fit,minmax(170px,1fr));
  opacity:0;visibility:hidden;pointer-events:none;
  transition:opacity .24s var(--transicao),transform .24s var(--transicao);
  box-shadow:var(--sombra);
}
.nav li:hover > .painel,.nav li:focus-within > .painel{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0)}
.painel h4{margin:0 0 13px;font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--gt)}
.painel ul{margin:0;padding:0;list-style:none}
.painel li{margin-bottom:8px}
.painel li a{font-size:14.5px;color:var(--ink-2);transition:color .18s}
.painel li a:hover{color:var(--gt)}

.acoes{display:flex;align-items:center;gap:2px;flex:0 0 auto}
.acao{
  width:44px;height:44px;display:grid;place-items:center;position:relative;
  border:0;background:none;cursor:pointer;color:var(--ink-2);transition:color .2s;
}
.acao:hover{color:var(--gt)}
.acao svg{width:19px;height:19px;stroke:currentColor;fill:none;stroke-width:1.5}
.acao b{
  position:absolute;top:5px;right:3px;min-width:17px;height:17px;padding:0 4px;
  background:var(--gt);color:#fff;border-radius:9px;
  font-family:var(--mono);font-size:9.5px;font-weight:600;line-height:17px;text-align:center;
}
.acao b[data-n="0"]{display:none}
.menu-btn{display:none}
@media(max-width:1120px){
  .nav{display:none}
  .menu-btn{display:grid}
  .marca{margin-right:auto}
}
@media(max-width:620px){
  .topo-in{gap:6px;padding-inline:14px}
  .marca span{display:none}
  .marca img{height:16px}
  .acao--conta{display:none}
  .acao{width:38px;height:38px}
}

/* ── o seletor de carro: a assinatura da loja ───────────── */
.meucarro{
  display:inline-flex;align-items:center;gap:9px;padding:9px 14px;
  border:1px solid var(--rule-forte);border-radius:999px;background:var(--surface);
  font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;
  cursor:pointer;transition:border-color .2s,color .2s;white-space:nowrap;
}
.meucarro:hover{border-color:var(--ink)}
.meucarro svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.5;flex:0 0 auto}
.meucarro.definido{border-color:var(--gt);color:var(--gt)}
.meucarro .limpa{
  display:grid;place-items:center;width:17px;height:17px;border-radius:50%;
  background:var(--gt);color:#fff;font-size:11px;line-height:1;flex:0 0 auto;
}
@media(max-width:1120px){.meucarro .rotulo-longo{display:none}}
@media(max-width:620px){.meucarro{padding:8px 10px}.meucarro .rotulo{display:none}}

/* faixa "mostrando peças para" */
.filtro-ativo{
  background:var(--ink);color:var(--on-night);
  font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;
}
.filtro-ativo-in{
  max-width:var(--maxw);margin-inline:auto;padding:11px var(--gut);
  display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;
}
.filtro-ativo b{color:var(--gt);font-weight:500}
.filtro-ativo a{text-decoration:underline;text-underline-offset:3px;opacity:.75}
.filtro-ativo a:hover{opacity:1}

/* ══════════════════════════════════════════════════════════
   6. GAVETAS
   ══════════════════════════════════════════════════════════ */
.veu{
  position:fixed;inset:0;background:rgba(18,18,19,.46);opacity:0;visibility:hidden;
  transition:opacity .32s var(--transicao);z-index:75;backdrop-filter:blur(3px);
}
.veu.aberto{opacity:1;visibility:visible}
.gaveta{
  position:fixed;top:0;right:0;bottom:0;width:min(460px,100vw);background:var(--base);z-index:80;
  transform:translateX(102%);transition:transform .38s var(--transicao);
  display:flex;flex-direction:column;
}
.gaveta--esq{right:auto;left:0;transform:translateX(-102%);width:min(400px,100vw)}
.gaveta.aberto{transform:none}
.gaveta-topo{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding:20px 24px;border-bottom:1px solid var(--rule);flex:0 0 auto;
}
.gaveta-topo h3{margin:0;font-family:var(--disp);font-variation-settings:"wdth" 108,"wght" 800;text-transform:uppercase;font-size:16px;letter-spacing:.01em}
.gaveta-topo .cont{font-family:var(--mono);font-size:11px;color:var(--muted);margin-left:6px}
.fechar{background:none;border:0;cursor:pointer;font-size:24px;line-height:1;padding:2px 4px;color:var(--ink-2)}
.fechar:hover{color:var(--gt)}
.gaveta-corpo{flex:1;overflow-y:auto;padding:20px 24px}
.gaveta-pe{flex:0 0 auto;border-top:1px solid var(--rule);padding:20px 24px;background:var(--surface)}
.vazio{text-align:center;padding:56px 0;color:var(--muted)}
.vazio p:first-child{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;margin:0}
.vazio p + p{font-size:14px;max-width:26ch;margin:12px auto 0;line-height:1.5}

.item{display:grid;grid-template-columns:70px minmax(0,1fr) auto;gap:14px;padding-block:16px;border-bottom:1px solid var(--rule);align-items:start}
.item:last-child{border-bottom:0}
.item img{width:70px;height:88px;object-fit:cover;background:var(--surface)}
.item h4{margin:0 0 4px;font-size:14px;font-weight:500;line-height:1.35}
.item .meta{font-family:var(--mono);font-size:10px;color:var(--muted);letter-spacing:.08em}
.item .linha{font-family:var(--mono);font-size:12.5px;font-weight:500;margin-top:6px}
.item .tirar{background:none;border:0;cursor:pointer;color:var(--muted);font-size:17px;line-height:1;padding:2px}
.item .tirar:hover{color:var(--sale)}

.total{display:flex;justify-content:space-between;align-items:baseline;gap:14px;margin-bottom:6px}
.total .rot{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.total .val{font-family:var(--disp);font-variation-settings:"wdth" 104,"wght" 800;font-size:24px}
.obs{font-family:var(--mono);font-size:10px;color:var(--muted);letter-spacing:.05em;margin:0 0 16px}
.frete{margin-bottom:18px}
.frete .trilho{height:3px;background:var(--shade);overflow:hidden;border-radius:2px}
.frete .barra{height:100%;background:var(--gt);transition:width .5s var(--transicao);border-radius:2px}
.frete p{margin:8px 0 0;font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-2)}

/* lista de carros dentro da gaveta */
.carro-opcao{
  display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;
  padding:15px 0;border:0;border-bottom:1px solid var(--rule);background:none;
  cursor:pointer;text-align:left;transition:padding-left .22s var(--transicao);
}
.carro-opcao:hover{padding-left:8px}
.carro-opcao b{display:block;font-family:var(--disp);font-variation-settings:"wdth" 108,"wght" 750;text-transform:uppercase;font-size:17px;line-height:1.1}
.carro-opcao span{display:block;font-size:12.5px;color:var(--muted);margin-top:3px}
.carro-opcao .n{font-family:var(--mono);font-size:10px;color:var(--gt);letter-spacing:.1em;flex:0 0 auto}
.carro-opcao.marcado b{color:var(--gt)}

/* menu mobile */
.menu-mob{padding:0 24px 60px}
.menu-mob h4{font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--gt);margin:28px 0 10px}
.menu-mob ul{list-style:none;margin:0;padding:0}
.menu-mob li{border-bottom:1px solid var(--rule)}
.menu-mob li a{display:block;padding:14px 0;font-family:var(--disp);font-variation-settings:"wdth" 106,"wght" 750;text-transform:uppercase;font-size:20px}

/* ══════════════════════════════════════════════════════════
   7. HERO E FAIXAS EDITORIAIS
   ══════════════════════════════════════════════════════════ */
.hero{position:relative;background:var(--night);color:var(--on-night);overflow:hidden;isolation:isolate}
.hero-mid{position:absolute;inset:0;z-index:-2}
.hero-mid img,.hero-mid video{width:100%;height:100%;object-fit:cover;object-position:center 38%}
.hero::before{
  content:"";position:absolute;inset:0;z-index:-1;
  background:
    linear-gradient(94deg,rgba(18,18,19,.96) 0%,rgba(18,18,19,.86) 32%,rgba(18,18,19,.42) 66%,rgba(18,18,19,.28) 100%),
    linear-gradient(to top,rgba(18,18,19,.7) 0%,rgba(18,18,19,0) 48%);
}
.hero-in{
  max-width:var(--maxw);margin-inline:auto;padding:clamp(60px,11vw,160px) var(--gut) clamp(40px,6vw,90px);
  min-height:clamp(480px,74vh,780px);display:flex;flex-direction:column;justify-content:flex-end;
}
.hero h1{font-size:clamp(40px,7.4vw,104px);max-width:17ch;margin-bottom:20px}
.hero .lede{color:var(--on-night-2);max-width:46ch;margin-bottom:28px}
.hero .eyebrow{color:var(--gt);margin-bottom:18px}
.hero-cta{display:flex;flex-wrap:wrap;gap:12px}
.hero-chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}
.hero-chips .chip{background:rgba(237,235,231,.08);border-color:rgba(237,235,231,.26);color:var(--on-night-2)}

/* faixa de confiança */
.confia{background:var(--surface);border-bottom:1px solid var(--rule)}
.confia-in{max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gut);display:grid;grid-template-columns:repeat(4,1fr)}
.confia-item{padding:24px clamp(14px,1.8vw,30px);display:flex;gap:13px;align-items:flex-start;border-left:1px solid var(--rule)}
.confia-item:first-child{border-left:0;padding-left:0}
.confia-item svg{width:20px;height:20px;stroke:var(--gt);fill:none;stroke-width:1.5;flex:0 0 auto;margin-top:2px}
.confia-item b{display:block;font-family:var(--mono);font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;margin-bottom:3px}
.confia-item span{font-size:13px;color:var(--muted);line-height:1.45}
@media(max-width:1000px){
  .confia-in{grid-template-columns:repeat(2,1fr)}
  .confia-item:nth-child(3){border-left:0;padding-left:0}
  .confia-item:nth-child(n+3){border-top:1px solid var(--rule)}
}
@media(max-width:560px){
  .confia-in{grid-template-columns:1fr}
  .confia-item{border-left:0;padding-left:0;border-top:1px solid var(--rule)}
  .confia-item:first-child{border-top:0}
}

/* faixa escura */
.noite{background:var(--night);color:var(--on-night)}
.noite .eyebrow{color:var(--gt)}
.noite .lede{color:var(--on-night-2)}
.noite .sec--rule{border-color:rgba(237,235,231,.14)}

/* campanha */
.campanhas{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(12px,1.4vw,22px)}
@media(max-width:900px){.campanhas{grid-template-columns:1fr}}
.campanha{
  position:relative;overflow:hidden;background:var(--night);color:var(--on-night);
  min-height:clamp(380px,44vw,560px);display:flex;isolation:isolate;
}
.campanha img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform 1.1s var(--transicao)}
.campanha::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(to top,rgba(18,18,19,.94) 6%,rgba(18,18,19,.5) 58%,rgba(18,18,19,.18) 100%)}
.campanha:hover img{transform:scale(1.045)}
.campanha-in{position:relative;padding:clamp(24px,3vw,48px);display:flex;flex-direction:column;justify-content:flex-end;gap:12px;width:100%}
.campanha h3{font-family:var(--disp);font-variation-settings:"wdth" 116,"wght" 850;text-transform:uppercase;font-size:clamp(26px,3.2vw,48px);line-height:.95;margin:0;letter-spacing:-.02em}
.campanha p{margin:0;color:var(--on-night-2);max-width:42ch;font-size:15px}
.campanha .ir{font-family:var(--mono);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--gt);margin-top:4px;display:inline-flex;gap:8px;align-items:center}
.campanha:hover .ir .seta{transform:translateX(5px)}
.campanha .seta{transition:transform .26s var(--transicao)}

/* ══════════════════════════════════════════════════════════
   8. GRADE DE CARROS
   ══════════════════════════════════════════════════════════ */
.carros{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:clamp(10px,1.2vw,18px)}
.carro-card{
  position:relative;overflow:hidden;background:var(--surface);border:1px solid var(--rule);
  padding:clamp(20px,2vw,28px);display:flex;flex-direction:column;gap:7px;min-height:168px;
  transition:border-color .26s,transform .26s var(--transicao),box-shadow .26s;
}
.carro-card:hover{border-color:var(--ink);transform:translateY(-3px);box-shadow:var(--sombra)}
.carro-card .cod{font-family:var(--disp);font-variation-settings:"wdth" 110,"wght" 820;text-transform:uppercase;font-size:clamp(21px,2.2vw,30px);line-height:1;letter-spacing:-.02em}
.carro-card .nomes{font-size:13px;color:var(--muted);line-height:1.4}
.carro-card .motores{font-family:var(--mono);font-size:10px;letter-spacing:.1em;color:var(--ink-2);text-transform:uppercase}
.carro-card .n{margin-top:auto;font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--gt);display:inline-flex;gap:7px;align-items:center}
.carro-card:hover .seta{transform:translateX(4px)}
.carro-card .seta{transition:transform .24s var(--transicao)}
.carro-card--outro{background:var(--shade);border-style:dashed}

/* cabeçalho da página do carro */
.carro-topo{border-bottom:1px solid var(--rule);padding-block:clamp(28px,4vw,60px)}
.carro-topo h1{font-size:clamp(34px,6vw,84px);margin:0 0 6px}
.carro-topo .sub{font-size:clamp(16px,1.6vw,22px);color:var(--muted);font-weight:300;margin:0 0 22px}
.carro-dados{display:flex;flex-wrap:wrap;gap:8px}

/* ══════════════════════════════════════════════════════════
   9. CARD DE PRODUTO
   ══════════════════════════════════════════════════════════ */
ul.products,.grade{
  list-style:none;margin:0;padding:0;display:grid;gap:clamp(14px,1.6vw,30px) clamp(12px,1.3vw,24px);
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.grade--4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:1200px){.grade--4{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){ul.products,.grade,.grade--4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:460px){ul.products,.grade,.grade--4{grid-template-columns:1fr}}

li.product,.card{list-style:none;display:flex;flex-direction:column;position:relative}
.card-mid{
  position:relative;overflow:hidden;background:var(--surface);aspect-ratio:4/5;
  border:1px solid var(--rule);transition:border-color .26s;
}
.card:hover .card-mid,li.product:hover .card-mid{border-color:var(--rule-forte)}
/* O link preenche a moldura, para a foto nunca depender da altura dele. */
.card-mid > a{position:absolute;inset:0;display:block}
.card-mid img{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  transition:transform 1s var(--transicao),opacity .35s;
}
.card-mid .alt{opacity:0}

/* ── O WooCommerce ainda traz o layout de colunas flutuantes de antes do
   CSS Grid. A folha woocommerce-layout.css sai da fila no setup.php; estas
   regras são a segunda linha de defesa, caso outro plugin reponha algo.
   O prefixo body. existe de propósito: sem ele empatamos em especificidade
   com o WooCommerce e perdemos pela ordem de carregamento.
   Sem isso: os pseudo-elementos viram células vazias no grid, a foto volta
   para height:auto e as margens antigas abrem buracos entre as linhas. ── */
body.woocommerce ul.products::before,
body.woocommerce ul.products::after{content:none;display:none}
body.woocommerce ul.products li.product{
  float:none;width:auto;margin:0;padding:0;clear:none;
}
body.woocommerce ul.products li.product .card-mid img{
  width:100%;height:100%;margin:0;box-shadow:none;object-fit:cover;
}
.card:hover .alt,li.product:hover .alt{opacity:1}
.card:hover .card-mid img,li.product:hover .card-mid img{transform:scale(1.045)}

.selos{position:absolute;top:12px;left:12px;display:flex;flex-direction:column;align-items:flex-start;gap:5px;z-index:2}
.selo{
  font-family:var(--mono);font-size:9px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;
  padding:5px 8px;background:var(--ink);color:var(--base);
}
.selo--novo{background:var(--gt);color:#fff}
.selo--off{background:var(--sale);color:#fff}
.selo--linha{background:var(--surface);color:var(--ink);border:1px solid var(--ink)}
.selo--fora{background:rgba(18,18,19,.82);color:var(--base)}

/* selo de compatibilidade com o carro escolhido */
.encaixa{
  position:absolute;bottom:12px;left:12px;z-index:2;
  display:inline-flex;align-items:center;gap:6px;padding:6px 10px;
  background:var(--gt);color:#fff;
  font-family:var(--mono);font-size:9px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;
}
.encaixa svg{width:12px;height:12px;stroke:currentColor;fill:none;stroke-width:2.2}

/* botão rápido de lista */
.card-lista{
  position:absolute;top:10px;right:10px;z-index:2;width:36px;height:36px;
  display:grid;place-items:center;border:1px solid var(--rule);border-radius:50%;
  background:var(--surface);cursor:pointer;color:var(--ink-2);
  opacity:0;transform:translateY(-4px);transition:opacity .24s,transform .24s,color .2s,border-color .2s;
}
.card:hover .card-lista,li.product:hover .card-lista,.card-lista:focus-visible{opacity:1;transform:none}
.card-lista:hover{border-color:var(--gt);color:var(--gt)}
.card-lista.marcado{opacity:1;transform:none;background:var(--gt);border-color:var(--gt);color:#fff}
.card-lista svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.6}
@media(hover:none){.card-lista{opacity:1;transform:none}}

.card-corpo{padding-top:14px;display:flex;flex-direction:column;gap:5px;flex:1}
.card-marca{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--gt)}
.card h3,li.product .woocommerce-loop-product__title{
  margin:0;font-family:var(--body);font-weight:500;font-size:15.5px;line-height:1.35;
  letter-spacing:0;text-transform:none;padding:0;color:var(--ink);
}
.card-aplic{font-family:var(--mono);font-size:10px;color:var(--muted);letter-spacing:.06em}
.card-precos{margin-top:auto;padding-top:10px}
.preco{font-family:var(--disp);font-variation-settings:"wdth" 102,"wght" 780;font-size:19px;letter-spacing:-.015em;color:var(--ink)}
.preco del{color:var(--muted);font-size:14px;font-variation-settings:"wdth" 100,"wght" 400;margin-right:8px;text-decoration:line-through}
.preco ins{text-decoration:none;color:var(--sale)}
.parcela{font-family:var(--mono);font-size:10.5px;color:var(--ink-2);letter-spacing:.03em;margin-top:2px}
.pix{font-family:var(--mono);font-size:10.5px;color:var(--pix);letter-spacing:.03em;font-weight:500}
.card-vars{display:flex;flex-wrap:wrap;gap:4px;margin-top:9px}
li.product .price,li.product .button,li.product .onsale,li.product .added_to_cart{display:none!important}

/* ══════════════════════════════════════════════════════════
   10. LISTAGEM
   ══════════════════════════════════════════════════════════ */
.loja-topo{border-bottom:1px solid var(--rule);padding-block:clamp(30px,4.4vw,66px)}
.loja-topo h1{font-size:clamp(32px,5.6vw,76px);margin:0}
.loja-topo .lede{margin-top:16px}

.barra-loja{
  position:sticky;top:var(--topo);z-index:30;background:var(--base);
  border-bottom:1px solid var(--rule);
}
.barra-loja-in{
  max-width:var(--maxw);margin-inline:auto;padding:14px var(--gut);
  display:flex;align-items:center;gap:14px;
}
.chips-rolar{display:flex;gap:7px;overflow-x:auto;scrollbar-width:none;flex:1;padding-block:2px}
.chips-rolar::-webkit-scrollbar{display:none}
.chips-rolar .chip{cursor:pointer;transition:all .2s;border-radius:999px}
.chips-rolar .chip:hover{border-color:var(--ink);color:var(--ink)}
.chips-rolar .chip.on{background:var(--ink);border-color:var(--ink);color:var(--base)}
.barra-acoes{display:flex;align-items:center;gap:8px;flex:0 0 auto}
@media(max-width:760px){
  .barra-loja-in{flex-direction:column;align-items:stretch;gap:10px;padding-block:12px}
  .barra-acoes{justify-content:space-between}
  .barra-acoes .gt-select{flex:1;margin-left:8px}
}
.cont{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);white-space:nowrap}
@media(max-width:760px){.cont{display:none}}
.gt-select,.woocommerce .woocommerce-ordering select{
  border:1px solid var(--rule-forte);background:var(--surface);padding:10px 14px;border-radius:999px;
  font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;
}
.woocommerce .woocommerce-ordering{margin:0}
.woocommerce .woocommerce-result-count{display:none}
.lista-prods{padding-block:clamp(24px,3vw,48px)}

/* painel de filtros */
.filtro-grupo{border-bottom:1px solid var(--rule);padding-block:18px}
.filtro-grupo:last-child{border-bottom:0}
.filtro-grupo h4{margin:0 0 12px;font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.filtro-grupo ul{list-style:none;margin:0;padding:0}
.filtro-grupo li{margin-bottom:7px}
.filtro-grupo a{display:flex;justify-content:space-between;gap:10px;font-size:14.5px;color:var(--ink-2);transition:color .18s}
.filtro-grupo a:hover{color:var(--gt)}
.filtro-grupo a.on{color:var(--gt);font-weight:500}
.filtro-grupo .n{font-family:var(--mono);font-size:10.5px;color:var(--muted)}

/* paginação */
.woocommerce nav.woocommerce-pagination{margin-top:clamp(32px,4vw,60px)}
.woocommerce nav.woocommerce-pagination ul{border:0;display:flex;gap:6px;justify-content:center}
.woocommerce nav.woocommerce-pagination ul li{border:0;margin:0}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span{
  border:1px solid var(--rule-forte);padding:11px 16px;border-radius:999px;
  font-family:var(--mono);font-size:11px;background:none;min-width:42px;
}
.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--ink);color:var(--base);border-color:var(--ink)}

/* estado vazio */
.nada{text-align:center;padding-block:clamp(50px,8vw,110px);max-width:46ch;margin-inline:auto}
.nada h2{font-size:clamp(24px,3.4vw,44px);margin:14px 0 16px}
.nada p{color:var(--ink-2);margin:0 0 24px}

/* ══════════════════════════════════════════════════════════
   11. PÁGINA DE PRODUTO
   ══════════════════════════════════════════════════════════ */
.pdp{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:clamp(24px,4vw,80px);align-items:start;padding-block:clamp(24px,3vw,52px)}
@media(max-width:1000px){.pdp{grid-template-columns:minmax(0,1fr)}}
/* ── galeria: palco + tira de miniaturas ───────────────────────── */
.galeria{display:block;position:sticky;top:calc(var(--topo) + 22px)}
@media(max-width:1000px){.galeria{position:static}}
.galeria-palco{
  position:relative;background:var(--surface);border:1px solid var(--rule);
  overflow:hidden;isolation:isolate;
}
.galeria .palco{margin:0;display:block;position:relative}
.galeria .palco img,.galeria .palco video{
  display:block;width:100%;aspect-ratio:16/11;object-fit:cover;background:var(--shade);
}
.galeria .palco[data-tipo=arquivo] video{object-fit:contain;background:var(--night)}
.galeria .palco iframe{display:block;width:100%;aspect-ratio:16/11;border:0;background:var(--night)}

.palco-lupa{
  position:absolute;bottom:12px;right:12px;z-index:2;
  width:40px;height:40px;display:grid;place-items:center;
  border:0;border-radius:50%;background:rgba(255,255,255,.9);color:var(--ink);
  cursor:pointer;opacity:0;transition:opacity .2s,background .2s,color .2s;
  box-shadow:0 6px 18px -8px rgba(18,18,19,.5);
}
.galeria-palco:hover .palco-lupa,.palco-lupa:focus-visible{opacity:1}
.palco-lupa:hover{background:var(--gt);color:#fff}
@media(hover:none){.palco-lupa{opacity:1}}

.palco-play{
  position:relative;display:block;width:100%;border:0;padding:0;
  background:var(--night);cursor:pointer;
}
.palco-play img{opacity:.62;transition:opacity .25s}
.palco-play:hover img{opacity:.78}
.palco-play-bolha{
  position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
  width:66px;height:66px;display:grid;place-items:center;border-radius:50%;
  background:var(--gt);color:#fff;transition:transform .25s;
}
.palco-play-bolha svg{width:24px;height:24px;fill:currentColor;stroke:none;margin-left:3px}
.palco-play:hover .palco-play-bolha{transform:translate(-50%,-50%) scale(1.08)}
.palco-play-txt{
  position:absolute;bottom:16px;left:0;right:0;color:var(--on-night);
  font-family:var(--mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;
}

.galeria-nav{
  position:absolute;top:50%;transform:translateY(-50%);z-index:2;
  width:40px;height:40px;display:grid;place-items:center;
  border:0;border-radius:50%;background:rgba(255,255,255,.9);color:var(--ink);
  cursor:pointer;opacity:0;transition:opacity .2s,background .2s,color .2s;
  box-shadow:0 6px 18px -8px rgba(18,18,19,.5);
}
.galeria-nav--ant{left:12px}
.galeria-nav--prox{right:12px}
.galeria-palco:hover .galeria-nav,.galeria-nav:focus-visible{opacity:1}
.galeria-nav:hover{background:var(--gt);color:#fff}
.galeria-nav svg{width:18px;height:18px}
@media(max-width:700px){.galeria-nav{display:none}}

.galeria-conta{
  position:absolute;bottom:12px;left:12px;z-index:2;
  background:rgba(18,18,19,.72);color:#fff;padding:5px 11px;border-radius:999px;
  font-family:var(--mono);font-size:10px;letter-spacing:.1em;
}

.galeria-tira{display:flex;gap:8px;margin-top:8px;overflow-x:auto;scrollbar-width:thin;padding-bottom:2px}
.galeria-mini{
  position:relative;flex:0 0 auto;width:82px;height:64px;padding:0;overflow:hidden;
  border:1px solid var(--rule);background:var(--surface);cursor:pointer;
  transition:border-color .2s;
}
.galeria-mini img{width:100%;height:100%;object-fit:cover;display:block}
.galeria-mini.ativo{border-color:var(--gt);border-width:2px}
.galeria-mini:hover{border-color:var(--rule-forte)}
.mini-sem-cartaz{display:grid;place-items:center;width:100%;height:100%;background:var(--night);color:var(--on-night-2)}
.mini-play{
  position:absolute;inset:0;display:grid;place-items:center;
  background:rgba(18,18,19,.34);color:#fff;pointer-events:none;
}
.mini-play svg,.mini-sem-cartaz svg{width:18px;height:18px;fill:currentColor;stroke:none}

.galeria-legenda{
  margin:10px 0 0;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;
  font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);
}
.galeria-legenda-dica{color:var(--rule-forte)}
@media(max-width:560px){.galeria-legenda-dica{display:none}}

/* ── tela cheia ─────────────────────────────────────────────────── */
.cheia{
  position:fixed;inset:0;z-index:120;background:rgba(10,10,11,.965);
  -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
  display:grid;place-items:center;padding:clamp(12px,4vw,56px);
}
.cheia-palco{
  max-width:100%;max-height:100%;display:grid;place-items:center;
  touch-action:pan-y;
}
.cheia-palco img{max-width:100%;max-height:86vh;width:auto;height:auto;display:block}
.cheia-palco video{max-width:100%;max-height:86vh;display:block;background:#000}
.cheia-palco iframe{width:min(1100px,92vw);aspect-ratio:16/9;border:0;background:#000}
.cheia-fechar{
  position:absolute;top:14px;right:18px;z-index:2;
  border:0;background:none;color:#fff;font-size:34px;line-height:1;cursor:pointer;padding:4px 10px;
}
.cheia-fechar:hover{color:var(--gt)}
.cheia-nav{
  position:absolute;top:50%;transform:translateY(-50%);z-index:2;
  width:48px;height:48px;display:grid;place-items:center;
  border:1px solid rgba(255,255,255,.28);border-radius:50%;
  background:rgba(255,255,255,.08);color:#fff;cursor:pointer;transition:background .2s,color .2s;
}
.cheia-nav--ant{left:clamp(8px,2vw,28px)}
.cheia-nav--prox{right:clamp(8px,2vw,28px)}
.cheia-nav:hover{background:var(--gt);border-color:var(--gt)}
.cheia-nav svg{width:20px;height:20px}
.cheia-conta{
  position:absolute;bottom:18px;left:0;right:0;text-align:center;color:rgba(255,255,255,.72);
  font-family:var(--mono);font-size:11px;letter-spacing:.14em;
}
body.cheia-aberta{overflow:hidden}
@media(max-width:700px){
  .cheia-nav{width:40px;height:40px}
  .cheia{padding:8px}
}

.pdp-info{position:sticky;top:calc(var(--topo) + 22px)}
@media(max-width:1000px){.pdp-info{position:static}}
.migalhas{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding-top:22px}
.migalhas a:hover{color:var(--gt)}
.pdp-marca{font-family:var(--mono);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--gt);margin-bottom:10px}
.pdp h1,.woocommerce div.product .product_title{
  font-family:var(--disp);font-variation-settings:"wdth" 108,"wght" 820;text-transform:uppercase;
  font-size:clamp(24px,2.7vw,40px);line-height:1;letter-spacing:-.02em;margin:0 0 14px;padding:0;
}
.pdp-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:20px}
.bloco-preco{border-block:1px solid var(--rule);padding-block:20px;margin-bottom:20px}
.bloco-preco .preco{font-size:clamp(28px,3vw,38px)}
.bloco-preco .parcela{font-size:12.5px;margin-top:6px}
.bloco-preco .pix{font-size:13px;margin-top:3px}
.selo-pix{
  display:inline-flex;align-items:center;gap:7px;margin-top:12px;padding:7px 12px;border-radius:999px;
  border:1px solid var(--pix);color:var(--pix);
  font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-weight:500;
}
.estoque{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;margin:0 0 18px;display:flex;align-items:center;gap:9px}
.estoque::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--pix)}
.estoque.pouco::before{background:var(--gt)}
.estoque.fora{color:var(--muted)}
.estoque.fora::before{background:var(--muted)}

.encomenda{
  border:1px solid var(--gt);border-left-width:3px;background:rgba(242,98,50,.06);
  padding:14px 16px;margin-bottom:20px;
}
.encomenda b{display:block;font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--gt-escuro);margin-bottom:5px}
.encomenda span{font-size:13.5px;color:var(--ink-2)}

/* compatibilidade na PDP */
.compat-aviso{
  display:flex;gap:11px;align-items:flex-start;padding:14px 16px;margin-bottom:20px;
  border:1px solid var(--rule);background:var(--surface);
}
.compat-aviso svg{width:18px;height:18px;flex:0 0 auto;margin-top:2px;stroke-width:2;fill:none}
.compat-aviso.serve{border-color:var(--pix)}
.compat-aviso.serve svg{stroke:var(--pix)}
.compat-aviso.naoserve{border-color:var(--gt)}
.compat-aviso.naoserve svg{stroke:var(--gt)}
.compat-aviso b{display:block;font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:3px}
.compat-aviso span{font-size:13.5px;color:var(--ink-2)}
.compat-aviso a{color:var(--gt);text-decoration:underline;text-underline-offset:2px}

.opcao{margin-bottom:20px}
.opcao > label,.woocommerce div.product form.cart .variations label{
  display:block;font-family:var(--mono);font-size:10px;letter-spacing:.16em;
  text-transform:uppercase;color:var(--muted);margin-bottom:10px;font-weight:400;
}
.opcoes{display:flex;flex-wrap:wrap;gap:7px}
.opcao-btn{
  padding:11px 17px;border:1px solid var(--rule-forte);background:var(--surface);cursor:pointer;
  font-family:var(--mono);font-size:11px;letter-spacing:.06em;transition:all .2s;border-radius:999px;
}
.opcao-btn:hover{border-color:var(--ink)}
.opcao-btn[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:var(--base)}
.opcao-btn:disabled{opacity:.36;text-decoration:line-through;cursor:not-allowed}

.comprar{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;margin-bottom:10px}
.qtd{display:flex;border:1px solid var(--ink);border-radius:999px;overflow:hidden}
.qtd button{width:42px;background:none;border:0;cursor:pointer;font-size:17px;line-height:1;color:var(--ink)}
.qtd button:hover{color:var(--gt)}
.qtd input,.woocommerce .quantity input.qty{
  width:44px;border:0;text-align:center;background:none;
  font-family:var(--mono);font-size:13px;padding:14px 0;-moz-appearance:textfield;
}
.qtd input::-webkit-outer-spin-button,.qtd input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.ja-tem{font-family:var(--mono);font-size:10px;letter-spacing:.1em;color:var(--muted);text-transform:uppercase;margin:0 0 14px}
.add-lista{
  width:100%;margin-top:10px;padding:14px;background:none;border:1px dashed var(--rule-forte);
  border-radius:999px;cursor:pointer;
  font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-2);
  transition:border-color .2s,color .2s,border-style .2s;
}
.add-lista:hover{border-color:var(--gt);border-style:solid;color:var(--gt)}

.acordeao{border-top:1px solid var(--rule);margin-top:26px}
.acordeao details{border-bottom:1px solid var(--rule)}
.acordeao summary{
  padding:17px 0;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:14px;
  font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;
}
.acordeao summary::-webkit-details-marker{display:none}
.acordeao summary::after{content:"+";font-size:18px;color:var(--gt);line-height:1}
.acordeao details[open] summary::after{content:"–"}
.acordeao .conteudo{padding-bottom:20px;font-size:14.5px;color:var(--ink-2)}
.acordeao .conteudo p:first-child{margin-top:0}
.acordeao .conteudo p:last-child{margin-bottom:0}
.acordeao .conteudo ul{margin:0;padding-left:18px}
.acordeao .conteudo li{margin-bottom:6px}

/* ── sob orçamento ──────────────────────────────────────────────── */
.preco--orc{
  font-family:var(--mono);font-size:13px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--ink-2);font-variation-settings:normal;
}
.card-precos .preco--orc{font-size:12px}
.orcamento{
  border:1px solid var(--rule-forte);background:var(--surface);
  padding:20px;margin-bottom:18px;
}
.orcamento-rotulo{
  display:block;font-family:var(--mono);font-size:10px;letter-spacing:.18em;
  text-transform:uppercase;color:var(--gt);margin-bottom:8px;
}
.orcamento-texto{margin:0 0 12px;font-size:14.5px;color:var(--ink-2);line-height:1.55}
.orcamento-desde{margin:0 0 10px;font-size:15px;color:var(--ink-2)}
.orcamento-desde b{font-family:var(--disp);font-variation-settings:"wdth" 104,"wght" 700;font-size:26px;color:var(--ink)}
.preco-desde{
  display:block;font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--muted);font-weight:400;
}
.orcamento-prazo{
  margin:0 0 14px;font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:var(--muted);
}

/* ── dúvidas frequentes ─────────────────────────────────────────── */
.faq{
  border-top:1px solid var(--rule);padding-block:clamp(32px,4vw,64px);
  display:grid;grid-template-columns:minmax(0,.4fr) minmax(0,1fr);gap:clamp(20px,4vw,64px);align-items:start;
}
@media(max-width:860px){.faq{grid-template-columns:1fr;gap:18px}}
.faq-titulo{
  margin:0;font-variation-settings:"wdth" 108,"wght" 800;text-transform:uppercase;
  font-size:clamp(20px,2.6vw,34px);line-height:1.02;letter-spacing:-.01em;
}
.faq .acordeao{margin-top:0;border-top:1px solid var(--rule-forte)}
.faq .acordeao summary{font-family:var(--body);font-size:15px;letter-spacing:0;text-transform:none;font-weight:500}
.faq-pe{
  grid-column:2;margin:18px 0 0;font-size:14px;color:var(--muted);
}
@media(max-width:860px){.faq-pe{grid-column:1}}
.faq-pe a{color:var(--gt);text-decoration:underline;text-underline-offset:3px}
.faq-pe a:hover{color:var(--ink)}

.specs{width:100%;border-collapse:collapse;font-family:var(--mono);font-size:12px}
.specs tr{border-bottom:1px solid var(--rule)}
.specs tr:last-child{border-bottom:0}
.specs th{text-align:left;padding:11px 12px 11px 0;font-weight:400;color:var(--muted);font-size:10px;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;vertical-align:top}
.specs td{padding:11px 0;font-weight:500;text-align:right}
.compat-lista{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}

.woocommerce .related > h2,.woocommerce .up-sells > h2,.rel h2{
  font-family:var(--disp);font-variation-settings:"wdth" 112,"wght" 800;text-transform:uppercase;
  font-size:clamp(22px,2.8vw,38px);margin:0 0 clamp(20px,2.4vw,34px);letter-spacing:-.018em;
}

/* ══════════════════════════════════════════════════════════
   12. CARRINHO E CHECKOUT
   ══════════════════════════════════════════════════════════ */
.woocommerce table.shop_table{border:1px solid var(--rule);border-radius:0;border-collapse:collapse;background:var(--surface)}
.woocommerce table.shop_table th{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-weight:400;border-bottom:1px solid var(--rule)}
.woocommerce table.shop_table td{border-top:1px solid var(--rule)}
.woocommerce-cart table.cart img{width:76px;border:1px solid var(--rule)}
.woocommerce .cart-collaterals .cart_totals > h2,
.woocommerce-checkout h3,
.woocommerce-checkout #order_review_heading{
  font-family:var(--disp);font-variation-settings:"wdth" 110,"wght" 800;text-transform:uppercase;
  font-size:19px;letter-spacing:-.01em;
}
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.select2-container .select2-selection--single{
  border:1px solid var(--rule-forte);border-radius:0;background:var(--surface);padding:13px 14px;height:auto;
}
.woocommerce form .form-row label{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.woocommerce-checkout #payment{background:var(--surface);border:1px solid var(--rule);border-radius:0}
.woocommerce-checkout #payment ul.payment_methods{border-bottom:1px solid var(--rule)}
.woocommerce-checkout #payment div.payment_box{background:var(--base);border:1px solid var(--rule)}
.woocommerce-checkout #payment div.payment_box::before{display:none}
.woocommerce .woocommerce-info,.woocommerce .woocommerce-message{border-top-color:var(--gt);background:var(--surface)}
.woocommerce .woocommerce-info::before,.woocommerce .woocommerce-message::before{color:var(--gt)}
.woocommerce-error{border-top-color:var(--sale);background:var(--surface)}
.gt-parcela-total td{padding-top:0!important}

/* ══════════════════════════════════════════════════════════
   13. EDITORIAL "COMO FAZEMOS"
   ══════════════════════════════════════════════════════════ */
.passos{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,2vw,32px)}
@media(max-width:900px){.passos{grid-template-columns:1fr}}
.passo{border-top:2px solid var(--gt);padding-top:18px}
.passo .n{font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.14em;color:var(--gt)}
.passo h3{margin:10px 0 8px;font-family:var(--disp);font-variation-settings:"wdth" 106,"wght" 780;text-transform:uppercase;font-size:clamp(17px,1.8vw,23px);line-height:1.05;letter-spacing:-.01em}
.passo p{margin:0;color:var(--ink-2);font-size:14.5px}
.noite .passo p{color:var(--on-night-2)}

/* ══════════════════════════════════════════════════════════
   14. RODAPÉ
   ══════════════════════════════════════════════════════════ */
.rodape{background:var(--night);color:var(--on-night-2)}
.rodape-in{max-width:var(--maxw);margin-inline:auto;padding:clamp(44px,5.5vw,80px) var(--gut) 30px;display:grid;grid-template-columns:1.6fr repeat(3,1fr);gap:clamp(26px,3vw,60px)}
@media(max-width:940px){.rodape-in{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.rodape-in{grid-template-columns:1fr}}
.rodape img.logo{height:23px;margin-bottom:18px}
.rodape h4{margin:0 0 15px;font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--gt)}
.rodape ul{list-style:none;margin:0;padding:0}
.rodape li{margin-bottom:9px}
.rodape a:hover{color:var(--on-night)}
.rodape p{font-size:14px;max-width:36ch;margin:0 0 16px;line-height:1.6}
.rodape-fim{
  border-top:1px solid rgba(237,235,231,.13);max-width:var(--maxw);margin-inline:auto;
  padding:20px var(--gut);display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;
  font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);
}
.pgto{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.pgto span{border:1px solid rgba(237,235,231,.2);padding:5px 9px;font-size:9px;letter-spacing:.1em;border-radius:3px}

.zap{
  position:fixed;right:20px;bottom:20px;z-index:65;width:56px;height:56px;border-radius:50%;
  background:var(--gt);color:#fff;display:grid;place-items:center;
  box-shadow:0 12px 30px -10px rgba(18,18,19,.55);transition:transform .24s var(--transicao);
}
.zap:hover{transform:scale(1.07)}
.zap svg{width:27px;height:27px;fill:currentColor;stroke:none}

/* ══════════════════════════════════════════════════════════
   15. MOVIMENTO
   ══════════════════════════════════════════════════════════ */
.rv{opacity:0;transform:translateY(22px);transition:opacity .8s var(--transicao),transform .8s var(--transicao)}
.rv.in{opacity:1;transform:none}
.rv-1{transition-delay:.06s}.rv-2{transition-delay:.12s}.rv-3{transition-delay:.18s}.rv-4{transition-delay:.24s}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .rv{opacity:1;transform:none;transition:none}
  .card-mid img,.campanha img,.carro-card{transition:none}
  .gaveta,.veu,.aviso-pista{transition:none;animation:none}
}
body.travado{overflow:hidden}
.woocommerce-store-notice,p.demo_store{background:var(--night);color:var(--on-night);font-family:var(--mono);font-size:11px;letter-spacing:.1em}
