/* Eletromais: estilos da landing page */
:root{
  --red:#D7261E; --red-deep:#A8150F; --red-soft:#FCEDEC;
  --wa:#1FA855; --wa-deep:#168A45; --ink:#1D1818; --muted:#645C5A; --mist:#F5F3F2; --line:#E9E4E2; --white:#FFFFFF;
  --display:'Bricolage Grotesque', 'Segoe UI', system-ui, sans-serif;
  --body:'Figtree', 'Segoe UI', system-ui, sans-serif;
  box-sizing:border-box;
  padding-top:env(safe-area-inset-top,0px); padding-bottom:env(safe-area-inset-bottom,0px);
}
*,*::before,*::after{box-sizing:inherit}
html,body{overflow-x:clip}
html{scroll-behavior:smooth; scroll-padding-top:calc(16px + env(safe-area-inset-top,0px))}
body{margin:0; background:var(--white); color:var(--ink); font-family:var(--body); font-size:17px; line-height:1.55; -webkit-font-smoothing:antialiased}
img,svg{max-width:100%; display:block}
a{color:inherit}
:focus-visible{outline:3px solid var(--red); outline-offset:3px; border-radius:8px}
.wrap{width:min(1440px, 100% - clamp(40px, 7vw, 112px)); margin-inline:auto}
/* Telas grandes: a página cresce junto para não sobrar faixas vazias nas laterais */
@media (min-width:1700px){ body{zoom:1.12} }
@media (min-width:1950px){ body{zoom:1.25} }
@media (min-width:2250px){ body{zoom:1.4} }
@media (min-width:2700px){ body{zoom:1.6} }
@media (min-width:3200px){ body{zoom:1.9} }
h1,h2,h3{font-family:var(--display); letter-spacing:-0.025em; line-height:1.02; margin:0; font-weight:750}

/* Botões */
.btn{display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:52px; padding:0 26px; border-radius:999px; font-weight:700; font-size:16px; text-decoration:none; border:2px solid transparent; transition:background .2s, color .2s, transform .2s; white-space:nowrap}
.btn svg{width:20px; height:20px; flex-shrink:0}
.btn-red{background:var(--red); color:#fff}
.btn-red:hover{background:var(--red-deep)}
.btn-line{border-color:var(--ink); color:var(--ink)}
.btn-line:hover{background:var(--ink); color:#fff}
.btn-white{background:#fff; color:var(--red-deep)}
.wa-ico{display:inline-block; width:22px; height:22px; flex-shrink:0; background-color:currentColor; -webkit-mask:url('../img/whatsapp.png?v=1.3.0') center/contain no-repeat; mask:url('../img/whatsapp.png?v=1.3.0') center/contain no-repeat}
.top-actions .wa-ico{width:30px; height:30px}
.cover .btn-wa .wa-ico{width:26px; height:26px}
.btn-wa{background:var(--wa); color:#fff}
.btn-wa:hover{background:var(--wa-deep)}
.btn-wa svg{width:22px; height:22px}
.btn-white:hover{background:var(--red-soft)}
.btn:active{transform:scale(.98)}

/* Navegação */
.nav{position:sticky; top:0; z-index:20; background:rgba(255,255,255,.88); backdrop-filter:saturate(1.4) blur(14px); -webkit-backdrop-filter:saturate(1.4) blur(14px); border-bottom:1px solid transparent; transition:border-color .2s; padding-top:env(safe-area-inset-top,0px)}
.nav.scrolled{border-bottom-color:var(--line)}
.nav .wrap{display:flex; align-items:center; justify-content:space-between; height:80px; gap:24px}
.nav img{height:46px; width:auto}
.nav nav{display:flex; align-items:center; gap:32px}
.nav nav a:not(.btn){text-decoration:none; font-weight:600; font-size:15px; color:var(--muted)}
.nav nav a:not(.btn):hover{color:var(--ink)}
@media (max-width:860px){ .nav nav a:not(.btn){display:none} .nav .btn{min-height:46px; padding:0 18px; font-size:15px} }

/* Hero */
.hero{padding:56px 0 40px}
.hero .wrap{display:grid; grid-template-columns:1.05fr 1fr; gap:48px; align-items:stretch}
.hero-copy{display:flex; flex-direction:column; justify-content:center; gap:28px; padding:24px 0}
.hero h1{font-size:clamp(44px, 6.2vw, 84px); font-weight:800}
.hero p.lead{margin:0; font-size:clamp(18px, 1.6vw, 21px); color:var(--muted); max-width:34ch}
.hero .actions{display:flex; gap:12px; flex-wrap:wrap}
.place{display:flex; align-items:center; gap:10px; font-weight:600; color:var(--muted); font-size:15px}
.place svg{width:20px; height:20px; color:var(--red)}

.route{position:relative; background:var(--red); color:#fff; border-radius:36px; padding:32px; display:flex; flex-direction:column; justify-content:space-between; min-height:520px; overflow:hidden}
.route svg.map{width:100%; height:auto; margin-top:4px}
.route .big{font-family:var(--display); font-weight:800; font-size:clamp(72px, 9vw, 128px); line-height:.88; letter-spacing:-0.045em}
.route .caption{font-size:18px; max-width:30ch; margin:14px 0 0; opacity:.95}
.chips{display:flex; gap:8px; flex-wrap:wrap; margin-top:22px}
.chip{display:inline-flex; align-items:center; gap:8px; background:rgba(255,255,255,.16); border:1px solid rgba(255,255,255,.28); padding:8px 14px; border-radius:999px; font-weight:600; font-size:14px}
.chip svg{width:16px; height:16px}

.facts{border-top:1px solid var(--line); border-bottom:1px solid var(--line); margin-top:48px}
.facts .wrap{display:grid; grid-template-columns:repeat(3, minmax(0,1fr))}
.fact{padding:26px 24px 26px 0; display:flex; gap:16px; align-items:baseline}
.fact + .fact{padding-left:24px; border-left:1px solid var(--line)}
.fact strong{font-family:var(--display); font-weight:800; font-size:36px; letter-spacing:-0.03em; color:var(--red); white-space:nowrap}
.fact span{color:var(--muted); font-size:15px; line-height:1.4}

/* Seções */
section.block{padding:112px 0}
.head{display:flex; justify-content:space-between; align-items:flex-end; gap:40px; margin-bottom:48px; flex-wrap:wrap}
.head h2{font-size:clamp(36px, 4.4vw, 60px); max-width:16ch}
.head p{margin:0; color:var(--muted); max-width:40ch}

/* Categorias */
.cats{display:grid; grid-template-columns:1.3fr 1fr; grid-template-rows:auto auto; gap:20px}
.cat{border-radius:32px; padding:32px; display:flex; flex-direction:column; justify-content:space-between; gap:28px; text-decoration:none; position:relative; overflow:hidden; transition:transform .25s}
.cat:hover{transform:translateY(-3px)}
.cat h3{font-size:clamp(34px, 3.4vw, 46px)}
.cat p{margin:8px 0 0; max-width:34ch}
.cat .go{display:inline-flex; align-items:center; gap:10px; font-weight:700}
.cat .go svg{width:20px; height:20px; transition:transform .2s}
.cat:hover .go svg{transform:translateX(4px)}
.cat-moveis{grid-row:span 2; background:var(--mist); min-height:560px}
.cat-moveis p{color:var(--muted)}
.cat-moveis .art{align-self:center; width:min(100%, 420px); color:var(--ink)}
.cat-eletro{background:var(--ink); color:#fff}
.cat-eletro p{color:#D8D0CE}
.cat-eletro .art{position:absolute; right:24px; top:28px; width:120px; color:#fff; opacity:.9}
.cat-encomenda{background:var(--red); color:#fff}
.cat-encomenda p{color:#FFE9E7}

/* Ofertas */
.offers-bar{display:flex; gap:8px; flex-wrap:wrap}
.tab{min-height:44px; padding:0 20px; border-radius:999px; border:1.5px solid var(--line); background:#fff; font:600 15px var(--body); color:var(--muted); cursor:pointer; transition:background .2s, color .2s, border-color .2s}
.tab:hover{border-color:var(--ink); color:var(--ink)}
.tab[aria-pressed="true"]{background:var(--ink); color:#fff; border-color:var(--ink)}
.grid-offers{display:grid; grid-template-columns:repeat(4, minmax(0,1fr)); gap:20px}
.offer{border:1px solid var(--line); border-radius:24px; padding:14px 14px 20px; display:flex; flex-direction:column; gap:12px; background:#fff; animation:pop .35s ease both}
.offer[hidden]{display:none}
.offer .pic{aspect-ratio:1/0.82; border-radius:16px; background:var(--mist); display:grid; place-items:center; color:var(--ink)}
.offer .pic svg{width:46%; height:auto}
.offer .tag{align-self:flex-start; font-size:13px; font-weight:700; color:var(--red-deep); background:var(--red-soft); padding:4px 10px; border-radius:999px}
.offer h3{font-family:var(--body); font-size:18px; font-weight:700; letter-spacing:0; line-height:1.3}
.offer .price{font-family:var(--display); font-weight:800; font-size:26px; color:var(--red); letter-spacing:-0.02em; line-height:1}
.offer .price small{font-family:var(--body); font-size:14px; font-weight:600; color:var(--muted); letter-spacing:0}
.offer .inst{font-size:14px; color:var(--muted); margin-top:-6px}
.offer .btn{min-height:48px; font-size:15px; margin-top:auto}
.offer p{margin:-4px 0 0; font-size:14px; color:var(--muted)}
@keyframes pop{from{opacity:0; transform:translateY(6px)} to{opacity:1; transform:none}}
.note{margin-top:28px; font-size:15px; color:var(--muted)}
.grid-prod{display:grid; grid-template-columns:repeat(4, minmax(0,1fr)); gap:20px}
.prod.prod-extra{grid-column:1 / -1; background:var(--red); border-color:var(--red); color:#fff; justify-content:flex-end}
.prod.prod-extra .body{display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:32px; padding:32px 40px}
@media (max-width:900px){ .prod.prod-extra .body{grid-template-columns:1fr; gap:14px; padding:28px} }
.prod.prod-extra h3{font-size:30px; line-height:1.05}
.prod.prod-extra p{color:#FFE9E7; flex:0; max-width:60ch}
.prod.prod-extra .btn{margin-top:0}
.prod{border-radius:28px; background:#fff; border:1px solid var(--line); overflow:hidden; display:flex; flex-direction:column}
.prod figure{margin:0; aspect-ratio:4/3; overflow:hidden; background:var(--mist)}
.prod img{width:100%; height:100%; object-fit:cover; transition:transform .5s}
.prod:hover img{transform:scale(1.04)}
.prod .body{padding:20px 20px 22px; display:flex; flex-direction:column; gap:10px; flex:1}
.prod .tag{align-self:flex-start; font-size:13px; font-weight:700; color:var(--red-deep); background:var(--red-soft); padding:4px 10px; border-radius:999px}
.prod h3{font-size:24px; letter-spacing:-0.02em}
.prod p{margin:0; color:var(--muted); font-size:16px; flex:1}
.prod .perks-mini{display:flex; flex-wrap:wrap; gap:6px 14px; font-size:14px; font-weight:600; color:var(--ink); margin:4px 0 6px}
.prod .perks-mini span{display:inline-flex; align-items:center; gap:6px}
.prod .perks-mini svg{width:16px; height:16px; color:var(--red)}
.prod .btn{min-height:52px}
@media (max-width:1100px){ .grid-prod{grid-template-columns:repeat(2, minmax(0,1fr))} }
@media (max-width:600px){ .grid-prod{grid-template-columns:1fr} .prod h3{font-size:24px} }

/* Pagamento */
.pay{background:var(--mist); border-radius:40px; padding:56px; display:grid; grid-template-columns:.8fr 2fr; gap:48px; align-items:center}
.pay h2{font-size:clamp(34px, 3.6vw, 50px)}
.pay-list{display:grid; grid-template-columns:repeat(4, minmax(0,1fr)); gap:0}
.pay-item{padding:4px 24px; border-left:1px solid #DCD5D3}
.pay-item strong{display:block; font-family:var(--display); font-weight:800; font-size:clamp(30px, 3vw, 42px); letter-spacing:-0.03em; color:var(--red); line-height:1; margin-bottom:10px}
.pay-item span{font-size:15px; color:var(--muted); line-height:1.4; display:block}

/* Passos */
.steps{display:grid; grid-template-columns:repeat(4, minmax(0,1fr)); gap:32px; counter-reset:s; position:relative}
.steps::before{content:""; position:absolute; top:28px; left:28px; right:28px; height:2px; background:repeating-linear-gradient(90deg, var(--line) 0 10px, transparent 10px 18px)}
.step{position:relative}
.step .n{width:56px; height:56px; border-radius:50%; background:#fff; border:2px solid var(--ink); display:grid; place-items:center; font-family:var(--display); font-weight:800; font-size:22px; margin-bottom:22px; position:relative}
.step:last-child .n{background:var(--red); border-color:var(--red); color:#fff}
.step h3{font-size:24px; margin-bottom:8px; letter-spacing:-0.02em}
.step p{margin:0; color:var(--muted); font-size:16px}

/* Confiança */
.trust{display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:start}
.trust blockquote{margin:0; font-family:var(--display); font-weight:700; font-size:clamp(30px, 3.4vw, 46px); line-height:1.12; letter-spacing:-0.025em}
.trust .sign{margin-top:24px; color:var(--muted); font-weight:600}
.reviews{display:flex; flex-direction:column; gap:14px}
.review{border:1px solid var(--line); border-radius:24px; padding:24px; display:grid; grid-template-columns:48px 1fr; gap:16px}
.review .av{width:48px; height:48px; border-radius:50%; background:var(--red-soft); display:grid; place-items:center; font-family:var(--display); font-weight:800; color:var(--red-deep)}
.review p{margin:0 0 6px; font-size:16px}
.review span{font-size:14px; color:var(--muted)}
.ph{color:var(--red-deep); background:var(--red-soft); border-radius:6px; padding:0 6px}



/* Vitrine de móveis (abas + carrossel) */
.vitrine{background:var(--mist); border-radius:36px; padding:28px; }
.vt-tabs{display:flex; gap:8px; flex-wrap:wrap; margin-bottom:24px}
.vt-tab{min-height:46px; padding:0 20px; border-radius:999px; border:1.5px solid transparent; background:#fff; font:700 15px var(--body); color:var(--ink); cursor:pointer; transition:background .2s, color .2s, border-color .2s}
.vt-tab:hover{border-color:var(--ink)}
.vt-tab[aria-selected="true"]{background:var(--red); color:#fff; border-color:var(--red)}
.vt-body{display:grid; grid-template-columns:minmax(0,1.55fr) minmax(0,1fr); gap:28px; align-items:stretch}
.vt-gallery{display:flex; flex-direction:column; gap:12px; min-width:0}
.vt-stage{position:relative; border-radius:24px; overflow:hidden; background:#fff}
.vt-track{display:flex; overflow-x:auto; scroll-snap-type:x mandatory; scroll-behavior:smooth; scrollbar-width:none; aspect-ratio:4/3}
.vt-track::-webkit-scrollbar{display:none}
.vt-track img{flex:0 0 100%; width:100%; height:100%; object-fit:cover; scroll-snap-align:start}
.vt-track.fade{animation:vtfade .35s ease}
@keyframes vtfade{from{opacity:0} to{opacity:1}}
.vt-arrow{position:absolute; top:50%; transform:translateY(-50%); width:50px; height:50px; border-radius:50%; border:0; background:rgba(255,255,255,.94); color:var(--ink); display:grid; place-items:center; cursor:pointer; box-shadow:0 6px 18px rgba(0,0,0,.15); transition:background .2s, color .2s, opacity .2s}
.vt-arrow svg{width:22px; height:22px}
.vt-arrow.prev{left:14px} .vt-arrow.next{right:14px}
.vt-arrow:hover:not(:disabled){background:var(--ink); color:#fff}
.vt-arrow:disabled{opacity:0; pointer-events:none}
.vt-count{position:absolute; right:14px; bottom:14px; background:rgba(29,24,24,.72); color:#fff; font-size:13px; font-weight:700; padding:5px 12px; border-radius:999px}
.vt-thumbs{display:grid; grid-template-columns:repeat(4, minmax(0,1fr)); gap:10px}
.vt-thumb{padding:0; border:2.5px solid transparent; border-radius:14px; overflow:hidden; cursor:pointer; background:#fff; aspect-ratio:4/3; opacity:.6; transition:opacity .2s, border-color .2s}
.vt-thumb img{width:100%; height:100%; object-fit:cover; display:block}
.vt-thumb:hover{opacity:.9}
.vt-thumb[aria-current="true"]{border-color:var(--red); opacity:1}
.vt-info{background:#fff; border-radius:24px; padding:32px; display:flex; flex-direction:column; gap:14px}
.vt-kicker{align-self:flex-start; font-size:13px; font-weight:700; color:var(--red-deep); background:var(--red-soft); padding:5px 12px; border-radius:999px}
.vt-info h3{font-size:clamp(30px, 3vw, 42px)}
.vt-info p{margin:0; color:var(--muted); font-size:17px}
.vt-perks{list-style:none; margin:6px 0; padding:16px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); display:flex; flex-direction:column; gap:10px}
.vt-perks li{display:flex; align-items:center; gap:10px; font-weight:600; font-size:15px}
.vt-perks svg{width:18px; height:18px; color:var(--red); flex-shrink:0}
.vt-cta{margin-top:auto; min-height:56px; font-size:17px}
.vt-all{align-self:center; font-weight:700; font-size:15px; color:var(--ink); text-underline-offset:3px}
.vt-all:hover{color:var(--red)}
@media (max-width:1000px){ .vt-body{grid-template-columns:1fr} .vt-cta{margin-top:8px} }
@media (max-width:600px){
  .vitrine{padding:16px; border-radius:28px; margin-inline:-4px}
  .vt-tabs{flex-wrap:nowrap; overflow-x:auto; scrollbar-width:none; margin:0 -16px 16px; padding:0 16px}
  .vt-tabs::-webkit-scrollbar{display:none}
  .vt-tab{white-space:nowrap; min-height:42px; padding:0 16px; font-size:14px}
  .vt-arrow{display:none}
  .vt-info{padding:22px}
  .vt-thumbs{gap:8px}
}

/* Avaliações */
.rv-rows{display:flex; flex-direction:column; gap:20px}
.marquee{overflow:hidden; -webkit-mask-image:linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent); mask-image:linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent)}
.track{display:flex; width:max-content; animation:rolar 48s linear infinite}
.track.rev{animation-direction:reverse; animation-duration:40s}
.marquee:hover .track{animation-play-state:paused}
@keyframes rolar{from{transform:translateX(0)} to{transform:translateX(-50%)}}
.rv{flex:0 0 380px; margin:0 20px 0 0; background:#fff; border-radius:24px; padding:26px; display:flex; flex-direction:column; gap:16px; border:1px solid var(--line)}
.rv blockquote{flex:1; margin:0; font-size:17px; line-height:1.55}
.stars{display:flex; gap:3px}
.stars i{width:20px; height:20px; color:#DCD5D3; display:block}
.stars i.on{color:#F2A900}
.stars svg{width:100%; height:100%; fill:currentColor}
@media (max-width:600px){ .rv{flex-basis:300px; margin-right:14px} }
@media (prefers-reduced-motion: reduce){ .marquee{overflow-x:auto; -webkit-mask-image:none; mask-image:none} .track{animation:none} }blockquote{margin:0; font-size:17px; line-height:1.55}
.rv figcaption{display:flex; align-items:center; gap:12px}
.rv .av{width:42px; height:42px; border-radius:50%; background:var(--red-soft); color:var(--red-deep); display:grid; place-items:center; font-family:var(--display); font-weight:800; flex-shrink:0}
.rv b{display:block; font-size:15px}
.rv small{font-size:13px; color:var(--muted)}

/* Lojas */
.stores{display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:24px}
.store{border-radius:28px; background:#fff; border:1px solid var(--line); overflow:hidden; display:flex; flex-direction:column}
.store figure{margin:0; aspect-ratio:4/3; background:var(--mist)}
.store img{width:100%; height:100%; object-fit:cover}
.sbody{padding:24px; display:flex; flex-direction:column; gap:12px; flex:1}
.store .unit{align-self:flex-start; font-size:13px; font-weight:700; color:var(--red-deep); background:var(--red-soft); padding:4px 10px; border-radius:999px}
.store .city{font-family:var(--display); font-weight:750; font-size:28px; letter-spacing:-0.02em}
.store .line{margin:0; display:flex; gap:10px; color:var(--muted); font-size:15px; line-height:1.45}
.store .line svg{width:20px; height:20px; color:var(--red); flex-shrink:0; margin-top:1px}
.store-actions{margin-top:auto; padding-top:6px; display:flex; gap:10px; flex-wrap:wrap}
.store-actions .btn{min-height:44px; padding:0 18px; font-size:15px}
.store-actions .wa-ico{width:20px; height:20px}
.store .maps{ display:inline-flex; align-items:center; min-height:44px; padding:0 20px; border-radius:999px; border:2px solid var(--ink); font-weight:700; font-size:15px; text-decoration:none; transition:background .2s, color .2s}
.store .maps:hover{background:var(--ink); color:#fff}

/* CTA final */
.final{background:var(--red); color:#fff; border-radius:44px; padding:clamp(40px, 6vw, 88px); display:grid; grid-template-columns:1.4fr 1fr; gap:40px; align-items:end; position:relative; overflow:hidden}
.final h2{font-size:clamp(44px, 6vw, 88px); font-weight:800}
.final p{margin:20px 0 0; font-size:19px; max-width:36ch; color:#FFE9E7}
.final .side{display:flex; flex-direction:column; gap:14px; align-items:flex-start}
.final .btn{min-height:64px; padding:0 34px; font-size:18px; box-shadow:0 10px 24px rgba(0,0,0,.18)}
.final small{font-size:14px; color:#FFE0DD}

footer{background:var(--red); color:#fff; padding:56px 0 calc(32px + env(safe-area-inset-bottom,0px))}
footer .wrap{display:flex; justify-content:space-between; gap:32px; flex-wrap:wrap; align-items:flex-end}
footer img{height:60px; width:auto}
footer .cols{display:flex; gap:48px; flex-wrap:wrap; font-size:15px; color:#FFE3E0}
footer .cols strong{display:block; color:#fff; margin-bottom:6px}
footer .cols a{color:#fff}
footer .legal{width:100%; border-top:1px solid rgba(255,255,255,.3); margin-top:32px; padding-top:20px; font-size:14px; color:#FFE3E0; display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap}
footer .legal a{color:#fff; font-weight:700; text-decoration:underline; text-underline-offset:3px}
footer .legal a:hover{color:#FFE3E0}
footer .ph{background:rgba(255,255,255,.18); color:#fff}
footer a:focus-visible{outline-color:#fff}

.fab{position:fixed; right:20px; bottom:calc(20px + env(safe-area-inset-bottom,0px)); z-index:30; width:62px; height:62px; border-radius:50%; background:var(--wa); color:#fff; display:grid; place-items:center; box-shadow:0 12px 28px rgba(22,138,69,.35); transition:transform .2s, opacity .25s}
.fab{width:66px !important; height:66px !important; background:radial-gradient(circle at 32% 28%, #5BE38C 0%, #25C25E 45%, #179A47 100%) !important; box-shadow:0 12px 28px rgba(23,154,71,.4), inset 0 -4px 10px rgba(0,0,0,.12), inset 0 4px 10px rgba(255,255,255,.25) !important}
.fab .wa-ico{width:36px; height:36px}
.fab:hover{transform:scale(1.06)}
.fab svg{width:28px; height:28px}
.fab.hide{opacity:0; pointer-events:none}
.mbar{display:none}
@media (max-width:720px){
  .fab{display:none}
  .mbar{display:block; position:fixed; left:0; right:0; bottom:0; z-index:40; padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px)); background:rgba(255,255,255,.94); backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px); border-top:1px solid var(--line)}
  .mbar .btn{width:100%; min-height:54px; font-size:17px}
  footer{padding-bottom:calc(112px + env(safe-area-inset-bottom,0px)) !important}
}

@media (max-width:1000px){
  .hero .wrap, .trust, .final, .pay{grid-template-columns:minmax(0,1fr)}
  .final{padding:36px 24px}
  .final .btn{white-space:normal; text-align:center}
  .route{min-height:440px}
  .grid-offers{grid-template-columns:repeat(2, minmax(0,1fr))}
  .pay-list{grid-template-columns:repeat(2, minmax(0,1fr)); row-gap:28px}
  .pay{padding:36px}
}
@media (max-width:720px){
  section.block{padding:80px 0}
  .facts .wrap{grid-template-columns:1fr}
  .fact, .fact + .fact{padding:18px 0; border-left:0}
  .fact + .fact{border-top:1px solid var(--line)}
  .cats{grid-template-columns:1fr}
  .cat-moveis{grid-row:auto; min-height:0}
  .steps{grid-template-columns:1fr; gap:28px}
  .steps::before{display:none}
  .stores{grid-template-columns:1fr}
  .pay-item{border-left:0; padding:0}
  .grid-offers{gap:12px}
  .route{padding:24px; border-radius:28px}
  .hero .actions .btn{flex:1 1 100%}
}

/* ===== Capa nova ===== */
.top{background:var(--red); color:#fff}
.top-main{display:flex; align-items:center; gap:28px; height:104px}
.brand{display:flex; align-items:center; gap:22px; text-decoration:none; flex-shrink:0}
.brand img{height:62px; width:auto}
.brand span{font-weight:700; font-size:19px; padding-left:22px; border-left:1.5px solid rgba(255,255,255,.45); white-space:nowrap}
.search{flex:1; display:flex; align-items:center; background:#fff; border-radius:999px; height:54px; padding:0 8px 0 22px; gap:12px; max-width:520px; margin-inline:auto}
.search svg{width:22px; height:22px; color:var(--ink); flex-shrink:0}
.search input{flex:1; border:0; outline:0; font:500 16px var(--body); color:var(--ink); background:transparent; min-width:0}
.search input::placeholder{color:#7A7270}
.search button{height:40px; padding:0 18px; border-radius:999px; border:0; background:var(--red); color:#fff; font:700 14px var(--body); cursor:pointer}
.search button:hover{background:var(--red-deep)}
.top-actions{display:flex; gap:26px; flex-shrink:0}
.top-actions a{display:flex; align-items:center; gap:10px; text-decoration:none; font-size:14px; line-height:1.2; font-weight:600}
.top-actions svg{width:30px; height:30px}
.top-actions a:hover{opacity:.85}
.top .top-actions a:focus-visible, .top a:focus-visible, .search button:focus-visible{outline-color:#fff}
.top-cats{border-top:1px solid rgba(255,255,255,.28)}
.top-cats nav{display:flex; align-items:center; justify-content:space-between; height:58px; overflow-x:auto; scrollbar-width:none}
.top-cats a{text-decoration:none; font-weight:600; font-size:16px; white-space:nowrap; padding:6px 0; position:relative}
.top-cats a + a::before{content:""; position:absolute; left:calc(-1 * var(--gapc, 24px)); top:50%; height:22px; transform:translateY(-50%); border-left:1px solid rgba(255,255,255,.35)}
.top-cats .all{display:flex; align-items:center; gap:12px; font-weight:700}
.top-cats .all svg{width:26px; height:26px}

.cover{position:relative; overflow:hidden; background:#fff; min-height:560px; display:flex; align-items:center}
.cover-img{position:absolute; top:0; right:0; bottom:0; width:58%}
.cover-img img{width:100%; height:100%; object-fit:cover; object-position:62% center; -webkit-mask-image:linear-gradient(90deg, transparent 0, #000 24%); mask-image:linear-gradient(90deg, transparent 0, #000 24%)}
.cover-inner{position:relative; padding:64px 0}
.cover-copy{max-width:580px; display:flex; flex-direction:column; gap:22px}
.kicker{display:flex; align-items:center; gap:12px; color:var(--red); font-weight:700; font-size:17px}
.kicker svg{width:30px; height:30px}
.kicker::after{content:""; width:64px; border-top:2px solid var(--red)}
.cover h1{font-size:clamp(40px, 4.6vw, 66px); font-weight:800; letter-spacing:-0.035em; line-height:.98}
.cover h1 .r{color:var(--red); display:block}
.cover p{margin:0; font-size:19px; color:#4E4745; max-width:40ch}
.cover .actions{display:flex; gap:12px; flex-wrap:wrap; margin-top:6px}
.cover .btn-wa{min-height:60px; padding:0 30px; font-size:18px}
.cover .btn-wa svg{width:26px; height:26px}
.cover .btn-line{min-height:60px; padding:0 26px; font-size:17px}
.reply{display:block; font-size:15px; color:var(--muted); font-weight:500}
.reply .dot{background:var(--wa) !important; display:inline-block; vertical-align:middle; margin-right:10px; width:10px; height:10px; border-radius:50%; background:#1F9D55; box-shadow:0 0 0 4px rgba(31,157,85,.15); flex-shrink:0}
.badge{position:absolute; right:32px; top:36px; display:flex; align-items:center; gap:14px; border:2px solid #fff; border-radius:999px; padding:14px 26px 14px 20px; color:#fff; font-weight:700; font-size:17px; line-height:1.2; background:rgba(160,10,8,.28); backdrop-filter:blur(4px)}
.badge svg{width:40px; height:40px}

.perks{border-bottom:1px solid var(--line); box-shadow:0 10px 30px rgba(29,24,24,.04); position:relative; z-index:1; background:#fff}
.perks .wrap{display:grid; grid-template-columns:repeat(4, minmax(0,1fr))}
.perk{display:flex; align-items:center; gap:16px; padding:26px 20px; justify-content:flex-start}
.perk + .perk{border-left:1px solid var(--line)}
.perk svg{width:46px; height:46px; color:var(--red); flex-shrink:0}
.perk b{display:block; color:var(--red-deep); font-size:17px; line-height:1.25}
.perk span{color:var(--muted); font-size:15px}

.catbar{background:linear-gradient(180deg, #FBF1F0, #fff 70%); padding:64px 0 24px}
.catbar .row{display:flex; justify-content:space-between; align-items:center; gap:24px; margin-bottom:28px; flex-wrap:wrap}
.catbar h2{font-size:clamp(30px, 3vw, 40px); display:flex; align-items:center; gap:16px}
.catbar h2::before{content:""; width:6px; height:34px; border-radius:6px; background:var(--red)}
.catbar .more{color:var(--red); font-weight:700; text-decoration:none; display:flex; align-items:center; gap:6px}
.catbar .more:hover{color:var(--red-deep)}
.catbar .more svg{width:18px; height:18px}
.tiles{display:grid; grid-template-columns:repeat(7, minmax(0,1fr)); gap:14px}
.tile{display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; gap:12px; min-width:0; overflow-wrap:anywhere; hyphens:auto; background:#fff; border-radius:20px; padding:20px 10px 18px; text-decoration:none; font-weight:700; font-size:14px; line-height:1.25; box-shadow:0 6px 20px rgba(29,24,24,.06); border:1px solid #F0E8E6; transition:transform .2s, box-shadow .2s}
.tile:hover{transform:translateY(-2px); box-shadow:0 10px 26px rgba(29,24,24,.1)}
.tile i{width:58px; height:58px; border-radius:14px; background:var(--red); color:#fff; display:grid; place-items:center; flex-shrink:0}
.tile i svg{width:32px; height:32px}

@media (max-width:1100px){
  .top-actions a span{display:none}
  .tiles{grid-template-columns:repeat(4, minmax(0,1fr))}
  .perks .wrap{grid-template-columns:repeat(2, minmax(0,1fr))}
  .perk:nth-child(3){border-left:0}
  .perk:nth-child(n+3){border-top:1px solid var(--line)}
}
@media (max-width:860px){
  .top-main{flex-wrap:wrap; height:auto; padding:16px 0; gap:14px}
  .brand img{height:48px}
  .brand span{display:none}
  .top-actions{margin-left:auto}
  .search{order:3; flex:0 0 100%; max-width:100%; margin:0}
  .kicker::after{display:none}
  .top-cats nav{justify-content:flex-start; gap:40px}
  .top-cats a + a::before{--gapc:20px}
  .cover{flex-direction:column; min-height:0}
  .cover-img{position:relative; width:100%; height:300px; order:2}
  .cover-img img{-webkit-mask-image:none; mask-image:none; object-position:center}
  .cover-inner{padding:40px 0 32px}
  .badge{top:auto; bottom:16px; right:16px; font-size:14px; padding:10px 18px 10px 14px}
  .badge svg{width:30px; height:30px}
}
@media (max-width:600px){
  .perks .wrap{grid-template-columns:1fr}
  .perk{justify-content:flex-start; padding:18px 4px}
  .perk + .perk{border-left:0; border-top:1px solid var(--line)}
  .tiles{grid-template-columns:repeat(3, minmax(0,1fr))}
  .cover .actions .btn{flex:1 1 100%}
  .cover h1{font-size:34px}
}

@media (prefers-reduced-motion: reduce){
  *{animation:none !important; transition:none !important; scroll-behavior:auto !important}
}

/* Páginas internas (ex.: Política de Privacidade) */
.pagina-topo{background:var(--red); padding:18px 0}
.pagina-topo img{height:52px; width:auto}
.pagina{padding:64px 0 96px; max-width:820px}
.pagina h1{font-size:clamp(34px, 4vw, 52px); margin-bottom:28px}
.pagina-conteudo{font-size:18px; line-height:1.7}
.pagina-conteudo a{color:var(--red)}
