/* ===== CORTEZ — mobile first. 90% do trafego do Meta e celular ===== */
:root{
  --preto:#0d0d0f; --carvao:#16161a; --grafite:#1f1f25; --borda:#2b2b33;
  --branco:#f5f5f7; --cinza:#a1a1aa; --laranja:#ff5c1a; --laranja-2:#ff7a3d;
  --verde:#22c55e; --amarelo:#facc15;
  --fonte:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  --max:1120px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--preto);color:var(--branco);font-family:var(--fonte);
  font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.wrap{width:100%;max-width:var(--max);margin:0 auto;padding:0 20px}

/* ---------- BARRA TOPO ---------- */
.barra-topo{background:var(--laranja);color:#fff;text-align:center;
  padding:9px 16px;font-size:13px;font-weight:600;letter-spacing:.2px}

/* ---------- HEADER ---------- */
header{position:sticky;top:0;z-index:50;background:rgba(13,13,15,.92);
  backdrop-filter:blur(12px);border-bottom:1px solid var(--borda)}
.header-in{display:flex;align-items:center;justify-content:space-between;height:62px}
.logo{font-size:22px;font-weight:800;letter-spacing:3px}
.logo span{color:var(--laranja)}
nav a{font-size:14px;color:var(--cinza);margin-left:22px;transition:color .2s}
nav a:hover{color:var(--branco)}
@media(max-width:600px){nav a{margin-left:14px;font-size:13px}}

/* ---------- BOTOES ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;
  background:linear-gradient(135deg,var(--laranja),var(--laranja-2));
  color:#fff;font-weight:800;font-size:17px;padding:17px 32px;border:none;
  border-radius:10px;cursor:pointer;width:100%;max-width:420px;
  box-shadow:0 6px 22px rgba(255,92,26,.32);transition:transform .15s,box-shadow .15s;
  text-align:center}
.btn:hover{transform:translateY(-2px);box-shadow:0 10px 30px rgba(255,92,26,.45)}
.btn:active{transform:translateY(0)}
.btn-sub{font-size:13px;color:var(--cinza);margin-top:10px}

/* ---------- HERO ---------- */
.hero{padding:52px 0 44px;border-bottom:1px solid var(--borda)}
.hero-grid{display:grid;grid-template-columns:1fr;gap:32px;align-items:center}
@media(min-width:900px){.hero-grid{grid-template-columns:1.05fr 1fr;gap:52px}}
.tag{display:inline-block;background:rgba(255,92,26,.12);color:var(--laranja);
  border:1px solid rgba(255,92,26,.3);font-size:12px;font-weight:700;
  padding:6px 13px;border-radius:99px;letter-spacing:.6px;margin-bottom:18px}
h1{font-size:34px;line-height:1.15;font-weight:800;letter-spacing:-.5px}
@media(min-width:900px){h1{font-size:46px}}
h1 em{font-style:normal;color:var(--laranja)}
.sub{color:var(--cinza);font-size:17px;margin-top:16px;max-width:520px}
.estrelas{display:flex;align-items:center;gap:8px;margin:18px 0;
  font-size:14px;color:var(--cinza);flex-wrap:wrap}
.estrelas b{color:var(--amarelo);letter-spacing:2px;font-size:16px}

/* ---------- PRECO ---------- */
.preco-box{margin:24px 0}
.preco-de{color:var(--cinza);text-decoration:line-through;font-size:16px}
.preco-por{font-size:40px;font-weight:800;color:var(--branco);line-height:1.1}
.preco-por small{font-size:19px;font-weight:600}
.preco-parc{color:var(--verde);font-size:15px;font-weight:600;margin-top:4px}
.desconto{display:inline-block;background:var(--verde);color:#04210f;
  font-size:12px;font-weight:800;padding:4px 10px;border-radius:6px;margin-left:8px;
  vertical-align:middle}

/* ---------- IMAGEM PRODUTO ---------- */
.foto{background:var(--grafite);border:1px solid var(--borda);border-radius:16px;
  aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;
  color:#4b4b55;font-size:14px;text-align:center;padding:20px;overflow:hidden}
.foto img{width:100%;height:100%;object-fit:cover}

/* ---------- SECOES ---------- */
section{padding:56px 0}
.sec-tag{color:var(--laranja);font-size:13px;font-weight:800;letter-spacing:1.5px;
  text-transform:uppercase;margin-bottom:12px}
h2{font-size:28px;font-weight:800;line-height:1.2;letter-spacing:-.3px}
@media(min-width:900px){h2{font-size:36px}}
.sec-sub{color:var(--cinza);margin-top:14px;max-width:600px;font-size:17px}
.centro{text-align:center}
.centro .sec-sub{margin-left:auto;margin-right:auto}
.centro .btn{margin:0 auto}

/* ---------- DOR ---------- */
.dor{background:var(--carvao);border-top:1px solid var(--borda);
  border-bottom:1px solid var(--borda)}
.lista-dor{list-style:none;margin-top:26px;display:grid;gap:13px}
.lista-dor li{background:var(--grafite);border:1px solid var(--borda);
  border-left:3px solid #ef4444;padding:15px 18px;border-radius:8px;font-size:16px}

/* ---------- CARDS ---------- */
.cards{display:grid;grid-template-columns:1fr;gap:18px;margin-top:34px}
@media(min-width:700px){.cards{grid-template-columns:repeat(3,1fr)}}
.card{background:var(--grafite);border:1px solid var(--borda);border-radius:14px;
  padding:26px 22px}
.card .ico{font-size:30px;margin-bottom:14px}
.card h3{font-size:18px;font-weight:700;margin-bottom:8px}
.card p{color:var(--cinza);font-size:15px}

/* ---------- PASSOS ---------- */
.passos{display:grid;gap:20px;margin-top:34px}
@media(min-width:700px){.passos{grid-template-columns:repeat(3,1fr)}}
.passo{text-align:center}
.passo .num{width:46px;height:46px;border-radius:50%;
  background:linear-gradient(135deg,var(--laranja),var(--laranja-2));
  color:#fff;font-weight:800;font-size:19px;display:flex;align-items:center;
  justify-content:center;margin:0 auto 14px}
.passo h3{font-size:17px;margin-bottom:6px}
.passo p{color:var(--cinza);font-size:15px}

/* ---------- DEPOIMENTOS ---------- */
.depos{display:grid;gap:18px;margin-top:34px}
@media(min-width:700px){.depos{grid-template-columns:repeat(3,1fr)}}
.depo{background:var(--grafite);border:1px solid var(--borda);border-radius:14px;
  padding:24px}
.depo .st{color:var(--amarelo);letter-spacing:2px;margin-bottom:10px}
.depo p{font-size:15px;margin-bottom:14px}
.depo .aut{font-size:13px;color:var(--cinza);font-weight:600}
.aviso-prova{margin-top:18px;font-size:13px;color:#71717a;font-style:italic}

/* ---------- FAQ ---------- */
.faq{margin-top:30px;max-width:760px}
details{background:var(--grafite);border:1px solid var(--borda);border-radius:10px;
  margin-bottom:11px;overflow:hidden}
summary{padding:18px 20px;cursor:pointer;font-weight:700;font-size:16px;
  list-style:none;display:flex;justify-content:space-between;gap:14px}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";color:var(--laranja);font-size:22px;line-height:1}
details[open] summary::after{content:"-"}
details p{padding:0 20px 18px;color:var(--cinza);font-size:15px}

/* ---------- GARANTIA ---------- */
.garantia{background:var(--carvao);border:1px solid var(--borda);
  border-radius:16px;padding:34px 26px;text-align:center;max-width:620px;margin:0 auto}
.garantia .selo{font-size:46px;margin-bottom:14px}

/* ---------- VITRINE (HOME) ---------- */
.vitrine{display:grid;grid-template-columns:1fr;gap:22px;margin-top:36px}
@media(min-width:700px){.vitrine{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1000px){.vitrine{grid-template-columns:repeat(3,1fr)}}
.prod{background:var(--grafite);border:1px solid var(--borda);border-radius:16px;
  overflow:hidden;transition:transform .2s,border-color .2s;position:relative}
.prod:hover{transform:translateY(-4px);border-color:var(--laranja)}
.prod .badge{position:absolute;top:13px;left:13px;z-index:2;background:var(--laranja);
  color:#fff;font-size:11px;font-weight:800;padding:5px 10px;border-radius:5px;
  letter-spacing:.5px}
.prod .foto{border:none;border-radius:0;aspect-ratio:1/1}
.prod-info{padding:20px}
.prod-info h3{font-size:17px;font-weight:700;margin-bottom:5px}
.prod-info .desc{color:var(--cinza);font-size:14px;margin-bottom:14px}
.prod-info .p-de{color:var(--cinza);text-decoration:line-through;font-size:14px}
.prod-info .p-por{font-size:25px;font-weight:800}
.prod-info .p-parc{color:var(--verde);font-size:13px;font-weight:600;margin-bottom:15px}
.prod-info .btn{font-size:15px;padding:13px 20px}

/* ---------- SELOS ---------- */
.selos{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:38px}
@media(min-width:700px){.selos{grid-template-columns:repeat(4,1fr)}}
.selo-item{text-align:center;padding:20px 12px;background:var(--grafite);
  border:1px solid var(--borda);border-radius:12px}
.selo-item .i{font-size:26px;margin-bottom:8px}
.selo-item b{display:block;font-size:14px;margin-bottom:3px}
.selo-item span{font-size:12px;color:var(--cinza)}

/* ---------- CTA FINAL ---------- */
.cta-final{background:linear-gradient(135deg,rgba(255,92,26,.14),rgba(255,92,26,.03));
  border-top:1px solid var(--borda);border-bottom:1px solid var(--borda);text-align:center}

/* ---------- BARRA FIXA MOBILE ---------- */
.barra-fixa{position:fixed;bottom:0;left:0;right:0;z-index:60;
  background:rgba(22,22,26,.97);backdrop-filter:blur(10px);
  border-top:1px solid var(--borda);padding:11px 16px;
  display:flex;align-items:center;gap:14px;
  transform:translateY(110%);transition:transform .3s}
.barra-fixa.on{transform:translateY(0)}
.barra-fixa .bf-preco{flex-shrink:0}
.barra-fixa .bf-preco .de{font-size:11px;color:var(--cinza);text-decoration:line-through}
.barra-fixa .bf-preco .por{font-size:20px;font-weight:800;line-height:1}
.barra-fixa .btn{padding:13px 18px;font-size:15px;margin:0}
@media(min-width:900px){.barra-fixa{display:none}}
body.tem-barra{padding-bottom:78px}
@media(min-width:900px){body.tem-barra{padding-bottom:0}}

/* ---------- RODAPE ---------- */
footer{background:var(--carvao);border-top:1px solid var(--borda);
  padding:40px 0 34px;font-size:14px;color:var(--cinza)}
.foot-grid{display:grid;gap:26px}
@media(min-width:700px){.foot-grid{grid-template-columns:2fr 1fr 1fr}}
footer h4{color:var(--branco);font-size:15px;margin-bottom:12px}
footer li{list-style:none;margin-bottom:7px}
footer a:hover{color:var(--laranja)}
.copy{border-top:1px solid var(--borda);margin-top:28px;padding-top:20px;
  text-align:center;font-size:13px;color:#5f5f6b}

/* ---------- AVISO DEV ---------- */
.dev{background:#3b2a00;border:1px solid #7a5a00;color:#ffd88a;
  padding:11px 16px;font-size:13px;text-align:center;font-weight:600}

/* ---------- GALERIA DE PRODUTO ---------- */
.galeria-principal{margin-bottom:12px}
.galeria-principal img{width:100%;height:100%;object-fit:cover}
.minis{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}
.mini{background:var(--grafite);border:2px solid var(--borda);border-radius:8px;
  padding:0;cursor:pointer;overflow:hidden;aspect-ratio:1/1;transition:border-color .15s}
.mini:hover{border-color:var(--cinza)}
.mini.on{border-color:var(--laranja)}
.mini img{width:100%;height:100%;object-fit:cover}

/* ---------- SPECS ---------- */
.specs{list-style:none;margin-top:26px;display:grid;gap:11px}
.specs li{background:var(--grafite);border:1px solid var(--borda);
  border-left:3px solid var(--verde);padding:14px 18px;border-radius:8px;font-size:16px}
.specs li::before{content:"✓ ";color:var(--verde);font-weight:800}

/* ---------- VARIANTES DE COR ---------- */
.cores{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:18px;
  max-width:460px}
.cores figure{background:var(--grafite);border:1px solid var(--borda);
  border-radius:12px;overflow:hidden}
.cores img{width:100%;aspect-ratio:1/1;object-fit:cover}
.cores figcaption{padding:10px;text-align:center;font-size:14px;font-weight:600}
.nota-cor{margin-top:12px;font-size:14px;color:var(--cinza)}

/* ---------- AVISO DE FRETE ---------- */
.frete-box{background:var(--grafite);border:1px solid var(--borda);
  border-left:3px solid var(--laranja);border-radius:10px;padding:18px 20px;
  margin-top:24px;font-size:15px}
.frete-box b{color:var(--branco)}
.frete-box .linha{display:flex;justify-content:space-between;gap:14px;
  padding:7px 0;border-bottom:1px solid var(--borda)}
.frete-box .linha:last-child{border:none}
.frete-box .gratis{color:var(--verde);font-weight:700}
