/* Projeto18+ — mobile-first, vermelho e branco */
:root{--bg:#ffffff;--panel:#ffffff;--panel2:#f6f1f0;--line:#eadfdd;--text:#201a1a;--muted:#6e6463;--red:#d32f3f;--red-d:#b3222f;--red-t:#c1232f;--red-soft:#fdecee;--danger:#c1232f;--ok:#17794f;--warn:#b36a00;--wa:#25d366;--r:16px;--hdr:58px;color-scheme:light}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--text);font:16px/1.55 Inter,system-ui,-apple-system,Segoe UI,sans-serif}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:70;background:var(--bg)}
body.locked,body.noscroll{overflow:hidden}
a{color:var(--red-t);text-decoration:none}a:hover{text-decoration:underline}
img{max-width:100%;display:block}
h1,h2,h3{font-family:Outfit,Inter,system-ui,sans-serif;font-weight:600;line-height:1.12;letter-spacing:-.01em;margin:0 0 .4em;text-wrap:balance}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--red);outline-offset:2px}
.wrap{width:100%;max-width:1120px;margin-inline:auto;padding-inline:max(16px,env(safe-area-inset-left,0px)) max(16px,env(safe-area-inset-right,0px))}
.narrow{max-width:560px}.narrow.legal{max-width:760px}
.muted{color:var(--muted)}.center{text-align:center}.pre{white-space:pre-line}
.ok{color:var(--ok)}.warn{color:var(--warn)}
.pt{font-size:clamp(2rem,6vw,2.8rem);margin:26px 0 16px}
.ic{width:1.1em;height:1.1em;flex:none;vertical-align:-.18em}
.inline{display:inline}
main{padding-bottom:84px;min-height:60vh}
body.has-cta main{padding-bottom:110px}

/* cabeçalho */
.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:40;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.bar{display:flex;align-items:center;justify-content:space-between;height:var(--hdr);gap:14px}
.logo{font:700 1.75rem/1 Outfit,Inter,system-ui,sans-serif;color:var(--red-t)}.logo:hover{text-decoration:none}
.hq{font-size:.85rem;font-weight:600;border:1px solid var(--red);border-radius:999px;padding:7px 14px;color:var(--red-t)}
.dnav{display:none;align-items:center;gap:20px;font-size:.95rem}.dnav a:not(.btn){color:var(--text)}
.linkbtn{background:none;border:0;color:var(--muted);cursor:pointer;padding:0}.linkbtn:hover{color:var(--text)}

/* menu inferior (celular) */
.bnav{position:fixed;inset:auto 0 0;z-index:45;display:grid;grid-template-columns:repeat(4,1fr);background:rgba(255,255,255,.97);backdrop-filter:blur(10px);border-top:1px solid var(--line);padding:6px max(8px,env(safe-area-inset-right,0px)) calc(6px + env(safe-area-inset-bottom,0px)) max(8px,env(safe-area-inset-left,0px))}
.tab,.tab button{display:flex;flex-direction:column;align-items:center;gap:2px;font-size:.7rem;color:var(--muted);background:none;border:0;padding:6px 2px;cursor:pointer;text-decoration:none;width:100%}
form.tab{padding:0}.tab .ic{width:22px;height:22px}
.tab.on{color:var(--red-t)}.tab:hover{text-decoration:none;color:var(--text)}
.ctabar{position:fixed;inset:auto 0 0;z-index:45;display:flex;align-items:center;gap:14px;background:var(--panel);border-top:1px solid var(--line);padding:10px max(16px,env(safe-area-inset-right,0px)) calc(10px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px))}
.cta-price{display:flex;flex-direction:column;line-height:1.15;min-width:0}.cta-price small{color:var(--muted);font-size:.74rem}.cta-price strong{font:600 1.5rem Outfit,Inter,system-ui,sans-serif;color:var(--red-t)}
.ctabar .btn{flex:1}

/* botões / campos */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:12px;padding:11px 22px;font-weight:600;font-size:.95rem;cursor:pointer;transition:.18s;text-decoration:none!important;color:var(--text);background:transparent;text-align:center}
.btn.gold{background:linear-gradient(135deg,var(--red),var(--red-d));color:#fff}.btn.gold:hover{filter:brightness(1.08)}
.btn.ghost{border-color:var(--line);background:var(--panel)}.btn.ghost:hover{border-color:var(--red)}
.btn.danger{background:var(--red-soft);border-color:rgba(211,47,63,.45);color:var(--danger)}
.btn.wa{background:var(--wa);color:#04210f}
.btn.sm{padding:8px 16px;font-size:.85rem}.btn.lg{padding:14px 28px;font-size:1.02rem}.btn.block{width:100%}
.mini{font:600 .75rem Inter;border:1px solid var(--line);background:var(--panel2);color:var(--text);padding:5px 10px;border-radius:8px;cursor:pointer}
.mini.danger{color:var(--danger);border-color:rgba(211,47,63,.4)}.mini.ok{color:var(--ok);border-color:rgba(23,121,79,.35)}
.f{display:flex;flex-direction:column;gap:6px;font-size:.85rem;color:var(--muted);min-width:0}.f small{font-size:.78rem}
input,select,textarea{width:100%;background:var(--panel2);border:1px solid var(--line);color:var(--text);border-radius:12px;padding:12px 14px;font-size:1rem}
input:focus,select:focus,textarea:focus{outline:2px solid rgba(211,47,63,.5);border-color:var(--red)}
textarea{resize:vertical}
.stack{display:grid;gap:16px}
.cols{display:grid;grid-template-columns:1fr;gap:16px}
.check{display:flex;gap:10px;align-items:flex-start;font-size:.9rem;color:var(--muted)}.check input{width:auto;margin-top:4px}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{display:inline-block;padding:6px 14px;border-radius:999px;border:1px solid var(--line);background:var(--panel2);font-size:.86rem;color:var(--text)}
a.chip:hover{border-color:var(--red);text-decoration:none}.chip small{color:var(--muted)}
.chip.on{border-color:var(--red);color:var(--red-t)}
.flash{margin:14px 0 0;padding:12px 16px;border-radius:12px;background:rgba(211,47,63,.14);border:1px solid rgba(211,47,63,.5)}
.notice{padding:10px 14px;border-radius:10px;background:rgba(179,106,0,.08);border:1px solid rgba(179,106,0,.35);font-size:.9rem;margin:12px 0}
.empty{text-align:center;padding:48px 16px;border:1px dashed var(--line);border-radius:var(--r);margin:20px 0;color:var(--muted)}.empty h3{color:var(--text);font-size:1.6rem}
.lock{display:flex;flex-wrap:wrap;align-items:center;gap:10px;background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:12px 16px;margin:14px 0}.lock p{margin:0;flex:1;min-width:180px;color:var(--muted);font-size:.9rem}

/* início */
.pillsearch{display:flex;align-items:center;gap:12px;background:var(--panel);border:1px solid var(--line);border-radius:999px;padding:8px 8px 8px 20px;color:var(--muted);box-shadow:0 10px 30px rgba(120,30,40,.12);margin-bottom:6px}
.pillsearch:hover{text-decoration:none;border-color:var(--red)}.pillsearch span{flex:1}
.pillsearch i{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:linear-gradient(135deg,var(--red),var(--red-d));color:#fff}
.sec{padding-block:26px 0}.sec h2{font-size:1.7rem}.sec-h{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.sec-h a{font-size:.9rem}

/* cards (grade e carrossel) */
.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.card{display:block;color:var(--text);background:var(--panel);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;transition:.2s;min-width:0}
.card:hover{transform:translateY(-3px);border-color:var(--red);text-decoration:none}
.thumb{position:relative;aspect-ratio:3/4;background:var(--panel2)}.thumb img{width:100%;height:100%;object-fit:cover}
.ph{display:grid;place-items:center;width:100%;height:100%;background:linear-gradient(160deg,hsl(calc(350 + var(--h,0) / 12) 62% 66%),hsl(calc(350 + var(--h,0) / 12) 58% 38%))}
.ph span{font:600 4rem Outfit,Inter,system-ui,sans-serif;color:#f3e7c9;opacity:.85}
.tag{position:absolute;display:inline-flex;align-items:center;gap:4px;font-size:.7rem;padding:3px 9px;border-radius:999px;background:rgba(0,0,0,.66);color:#fff;border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(4px)}
.tag-v{left:10px;top:10px;background:rgba(211,47,63,.94);border-color:transparent;color:#fff}.tag-p{right:10px;bottom:10px}.tag-r{right:10px;top:10px}
.meta{padding:10px 12px 12px}.meta h3{font-size:1.3rem;margin:0}.meta h3 span{color:var(--muted);font-weight:500}
.meta p{margin:2px 0 0;color:var(--muted);font-size:.85rem}
.meta .row{display:flex;justify-content:space-between;gap:8px;align-items:center}
.price{color:var(--red-t)!important;font-weight:600}
.rt{display:inline-flex;align-items:center;gap:3px;color:var(--red-t);font-size:.82rem}.rt small{color:var(--muted)}.rt .ic{width:.9em;height:.9em;fill:currentColor}

/* lista */
.fbar{position:sticky;top:calc(var(--hdr) + env(safe-area-inset-top,0px));z-index:30;display:flex;gap:8px;padding:10px 0;background:var(--bg);overflow-x:auto;scrollbar-width:none}
.fb{display:inline-flex;align-items:center;gap:8px;flex:none;border:1px solid var(--line);background:var(--panel);border-radius:999px;padding:9px 16px;font-size:.9rem;cursor:pointer;max-width:60vw}
.fb span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fb:hover{border-color:var(--red)}
.fb.sel{position:relative;padding:0 14px 0 0}.fb.sel select{appearance:none;background:none;border:0;padding:9px 6px 9px 16px;width:auto;font-size:.9rem;cursor:pointer}.fb.sel .ic{pointer-events:none}
.fb.sel select option{background:var(--panel2)}
.list-h{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin:8px 0 14px}.list-h h1{font-size:clamp(1.7rem,5vw,2.3rem);margin:0}.list-h p{margin:0;color:var(--muted);font-size:.9rem;white-space:nowrap}
.lgrid{display:grid;gap:22px;grid-template-columns:minmax(0,1fr)}
.lcard{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;box-shadow:0 12px 32px rgba(120,30,40,.12);min-width:0}
.lc-media{position:relative}
.snap{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;aspect-ratio:4/5}
.snap::-webkit-scrollbar{display:none}
.slide{flex:0 0 100%;scroll-snap-align:center;display:block;height:100%}.slide img{width:100%;height:100%;object-fit:cover}
.lc-over{position:absolute;inset:auto 0 0;display:flex;justify-content:space-between;align-items:flex-end;gap:10px;padding:48px 14px 12px;background:linear-gradient(to top,rgba(0,0,0,.88),transparent);color:#fff;pointer-events:none}
.lc-over h3{font-size:1.6rem;margin:0}.lc-over p{margin:0;font-size:.88rem;opacity:.9;display:flex;gap:4px;align-items:center}
.lc-price{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:4px}.lc-price strong{font:600 1.5rem Outfit,Inter,system-ui,sans-serif;color:#fff}.lc-price small{opacity:.8}
.pill-l{font-size:.72rem;background:rgba(255,255,255,.16);border-radius:8px;padding:2px 8px}
.lc-actions{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}
.lc-actions .btn{border-radius:0;padding:14px 8px}.lc-actions .btn.ghost{background:var(--panel)}.lc-actions .btn:only-child{grid-column:1/-1}
.pager{display:flex;gap:14px;justify-content:center;align-items:center;margin:28px 0;color:var(--muted)}

/* telas cheias (busca / filtros / denúncia) */
.sheet{position:fixed;inset:0;z-index:60;display:flex;background:var(--bg)}
.sheet-in{display:flex;flex-direction:column;width:100%;height:100%;padding-top:env(safe-area-inset-top,0px)}
.sheet-h{display:flex;align-items:center;gap:10px;padding:12px max(16px,env(safe-area-inset-left,0px));border-bottom:1px solid var(--line)}
.sheet-h h2{margin:0;font-size:1.4rem}.x{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:var(--panel);cursor:pointer}
.sheet-b{flex:1;overflow:auto;padding:18px max(16px,env(safe-area-inset-right,0px)) 18px max(16px,env(safe-area-inset-left,0px));display:flex;flex-direction:column;gap:16px}
.sheet-f{margin-top:auto;display:grid;gap:10px;justify-items:center;padding-top:12px;padding-bottom:env(safe-area-inset-bottom,0px)}

/* perfil */
.cover{position:relative;height:min(52vw,300px);min-height:200px;background:var(--panel2);overflow:hidden}
.cv-img{width:100%;height:100%;object-fit:cover}.cover .ph span{font-size:6rem}
.cv-shade{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,.45),transparent 40%,rgba(0,0,0,.65))}
.cv-actions{position:absolute;inset:12px max(14px,env(safe-area-inset-right,0px)) auto max(14px,env(safe-area-inset-left,0px));display:flex;gap:10px;align-items:center}.sp{flex:1}
.rb{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.94);color:#1b1b1f;border:0;cursor:pointer;text-decoration:none}.rb:hover{text-decoration:none}
.rb.on{background:#fff;color:#e5484d}.rb.on .ic{fill:#e5484d}
.cv-tag{position:absolute;left:max(16px,env(safe-area-inset-left,0px));right:16px;bottom:14px;margin:0;font:600 1.25rem Outfit,Inter,system-ui,sans-serif;color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.7)}
.pf-body{padding-top:16px}.pf-body h1{font-size:clamp(2.3rem,7vw,3.2rem);margin:0}
.sub{color:var(--muted);margin:2px 0 10px}.gold-l{color:var(--red-t);display:inline-flex;align-items:center;gap:3px}.gold-l .ic{fill:currentColor;width:.95em;height:.95em}
.vchip{display:inline-flex;align-items:center;gap:6px;background:rgba(23,121,79,.10);color:var(--ok);border:1px solid rgba(23,121,79,.35);border-radius:10px;padding:5px 12px;font-size:.88rem;font-weight:500}
.icards{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0}
.icard{border:1px solid var(--line);border-radius:var(--r);padding:14px;background:var(--panel);min-width:0}
.icard h3{font:600 .95rem Inter,sans-serif;color:var(--red-t);display:flex;gap:6px;align-items:center;margin:0 0 6px}
.icard p{margin:0;font-size:.88rem}.icard .big{font:600 1.55rem/1.1 Outfit,Inter,system-ui,sans-serif;color:var(--text);overflow-wrap:anywhere}.icard small{font:400 .75rem Inter;color:var(--muted)}
.tabs2{position:sticky;top:calc(var(--hdr) + env(safe-area-inset-top,0px));z-index:20;display:grid;grid-template-columns:repeat(3,1fr);background:var(--bg);border-bottom:1px solid var(--line);margin-top:6px}
.tabs2 button{background:none;border:0;border-bottom:3px solid transparent;padding:14px 4px 10px;font-weight:600;font-size:.95rem;color:var(--muted);cursor:pointer}
.tabs2 button small{display:block;font-weight:400;font-size:.75rem}.tabs2 button.on{color:var(--red-t);border-color:var(--red)}
[data-panel]{padding-top:20px}
.ph2{font-size:1.6rem;display:flex;gap:8px;align-items:center}
.gal3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.gi{padding:0;border:0;border-radius:12px;overflow:hidden;background:var(--panel2);aspect-ratio:3/4;cursor:zoom-in}.gi img{width:100%;height:100%;object-fit:cover}
.infob{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:16px;margin-top:14px}.infob h3{font:600 .85rem Inter,sans-serif;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin:0 0 8px}.infob p{margin:0 0 10px}
.rev-form{display:grid;gap:14px;background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:16px;margin-bottom:18px}.rev-form h3{font-size:1.4rem;margin:0}.rev-form p{margin:0}
.rate{display:grid;grid-template-columns:repeat(5,1fr);gap:4px}
.rate label{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center;font-size:.68rem;color:var(--muted);cursor:pointer}
.rate input{position:absolute;opacity:0;width:0}.rate b{display:grid;place-items:center;width:100%;padding:10px 0;border-radius:12px;background:var(--panel2);color:var(--muted)}.rate .ic{width:24px;height:24px}
.rate input:checked+b{background:rgba(211,47,63,.2);color:var(--red-t)}.rate input:checked+b .ic{fill:currentColor}.rate input:focus-visible+b{outline:2px solid var(--red)}
.revs{list-style:none;margin:0;padding:0;display:grid;gap:12px}.revs li{border-bottom:1px solid var(--line);padding-bottom:12px}.revs p{margin:6px 0 0}
.rv-h{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}.rv-h small{color:var(--muted)}.stars{color:var(--red-t);letter-spacing:2px}
.more{margin-top:34px}.more h2{font-size:1.6rem}
.hscroll{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:10px;margin-inline:calc(-1 * max(16px,env(safe-area-inset-left,0px)));padding-inline:max(16px,env(safe-area-inset-left,0px))}
.hscroll .card{flex:0 0 170px;scroll-snap-align:start}

/* formulários / painel */
.box{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:20px;margin:0 0 18px}.box h2{font-size:1.6rem}.box h2 small{font:400 .85rem Inter;color:var(--muted)}
.tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:14px}.tabs a{text-align:center;padding:11px;border:1px solid var(--line);border-radius:12px;color:var(--muted);background:var(--panel)}.tabs a.on{border-color:var(--red);color:var(--red-t)}
fieldset{border:1px solid var(--line);border-radius:12px;padding:14px;margin:0}legend{padding:0 8px;color:var(--muted);font-size:.85rem}
.checks{display:flex;flex-wrap:wrap;gap:8px}.chip-check input{position:absolute;opacity:0;width:0}
.chip-check span{display:inline-block;padding:7px 14px;border:1px solid var(--line);border-radius:999px;cursor:pointer;font-size:.88rem;background:var(--panel2)}
.chip-check input:checked+span{background:rgba(211,47,63,.18);border-color:var(--red);color:var(--red-t)}.chip-check input:focus-visible+span{outline:2px solid var(--red)}
.status{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:center;padding:14px 18px;border-radius:var(--r);margin-bottom:18px;border:1px solid var(--line);background:var(--panel)}
.status strong{padding:3px 12px;border-radius:999px;background:var(--panel2)}.status span{flex:1;min-width:220px;color:var(--muted);font-size:.92rem}
.st-approved strong{background:rgba(23,121,79,.12);color:var(--ok)}.st-pending strong{background:rgba(179,106,0,.12);color:var(--warn)}.st-rejected strong,.st-suspended strong{background:var(--red-soft);color:var(--danger)}
.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px;margin:14px 0}
.ph-item{position:relative;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--panel2)}.ph-item img{aspect-ratio:3/4;width:100%;object-fit:cover}
.cover-b{position:absolute;left:6px;top:6px;background:var(--red);color:#fff;font-size:.7rem;font-weight:700;padding:2px 8px;border-radius:999px}
.ph-actions{display:flex;gap:6px;flex-wrap:wrap;padding:8px}.ph-actions form{margin:0}
.upload{display:flex;gap:12px;align-items:center;cursor:pointer}.upload small{color:var(--muted)}

/* admin */
.stats-a{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:18px}
.stats-a div{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:14px 18px}.stats-a b{display:block;font:600 2rem Outfit,Inter,system-ui,sans-serif;color:var(--red-t)}.stats-a span{color:var(--muted);font-size:.85rem}
.scroll{overflow-x:auto}.tbl{width:100%;border-collapse:collapse;font-size:.9rem}.tbl th{text-align:left;color:var(--muted);font-weight:500;padding:8px;border-bottom:1px solid var(--line)}
.tbl td{padding:10px 8px;border-bottom:1px solid var(--line);vertical-align:top}.tbl small{color:var(--muted)}
.act{display:flex;flex-wrap:wrap;gap:6px}.inline-form{display:inline-flex;gap:4px}.inline-form input{padding:5px 8px;font-size:.8rem;width:130px}

/* rodapé / idade / visualizador */
.foot{border-top:1px solid var(--line);margin-top:40px;padding:22px 0;color:var(--muted);font-size:.82rem}.foot p{margin:.3em 0}
.gate{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px;background:rgba(255,255,255,.98);backdrop-filter:blur(18px)}
.gate-box{max-width:460px;text-align:center;display:grid;gap:14px}.gate-logo{font:700 2.2rem Outfit,Inter,system-ui,sans-serif;color:var(--red-t)}.gate-box h1{font-size:2rem;margin:0}.gate-box p{color:var(--muted);margin:0}
.lb{position:fixed;inset:0;z-index:90;display:grid;place-items:center;background:rgba(0,0,0,.94)}.lb img{max-width:100vw;max-height:88vh;object-fit:contain}
.lb button{position:absolute;display:grid;place-items:center;width:46px;height:46px;border-radius:50%;border:0;background:rgba(255,255,255,.14);color:#fff;cursor:pointer}
.lb .lb-x{top:max(14px,env(safe-area-inset-top,0px));right:14px}.lb .lb-p{left:10px}.lb .lb-n{right:10px}.lb .lb-p,.lb .lb-n{top:50%;transform:translateY(-50%)}

/* telas maiores */
@media (min-width:640px){
  .grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
  .cols{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .stats-a{grid-template-columns:repeat(4,1fr)}
}
@media (min-width:900px){
  main,body.has-cta main{padding-bottom:20px}
  .bnav{display:none}.dnav{display:flex}.hq{display:none}
  .grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .lgrid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .pillsearch{max-width:620px}
  .sheet{align-items:center;justify-content:center;background:rgba(32,26,26,.55)}
  .sheet-in{width:min(520px,92vw);height:auto;max-height:88vh;border-radius:20px;border:1px solid var(--line);background:var(--bg);overflow:hidden;padding-top:0}
  .cover{height:340px}
  .ctabar{inset:auto 0 0;justify-content:center}.ctabar .btn{flex:0 0 340px}
  .hscroll .card{flex-basis:200px}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}


/* ===== v2 — visual profissional ===== */
:root{--shadow:0 1px 2px rgba(60,20,25,.06),0 10px 28px rgba(60,20,25,.08);--fh:Outfit,Inter,system-ui,sans-serif}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.sec{padding-block:36px 0}.sec h2{font-size:1.75rem;margin-bottom:.6em}.sec-h h2{margin-bottom:.4em}

/* cabeçalho e logo */
.logo{display:inline-flex;align-items:center;gap:10px;font:700 1.4rem/1 var(--fh);color:var(--text);letter-spacing:-.02em}
.logo:hover{text-decoration:none}
.logo i{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:linear-gradient(135deg,var(--red),var(--red-d));color:#fff;box-shadow:0 4px 12px rgba(193,35,47,.35)}
.logo i .ic{width:18px;height:18px;fill:#fff}
.top{box-shadow:0 1px 0 var(--line)}
.dnav a:not(.btn){font-weight:500}.dnav a:not(.btn):hover{color:var(--red-t);text-decoration:none}
.hq{border-radius:10px}

/* carrossel de destaques */
.banner{position:relative;margin-top:16px}
.sl-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;border-radius:22px;box-shadow:var(--shadow);overscroll-behavior-x:contain}
.sl-track::-webkit-scrollbar{display:none}
.sl{position:relative;flex:0 0 100%;scroll-snap-align:start;display:flex;align-items:center;min-height:clamp(290px,46vw,400px);padding:30px 22px 66px;color:#fff;overflow:hidden;isolation:isolate}
.sl::before{content:"";position:absolute;z-index:-1;width:440px;height:440px;border-radius:50%;right:-130px;top:-150px;background:rgba(255,255,255,.10)}
.sl::after{content:"";position:absolute;z-index:-1;width:280px;height:280px;border-radius:50%;right:90px;bottom:-170px;background:rgba(255,255,255,.07)}
.sl-in{max-width:580px;display:grid;gap:12px;justify-items:start}
.sl-eb{margin:0;text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;font-weight:600;opacity:.88}
.sl h2{margin:0;font-size:clamp(1.9rem,6.4vw,3.3rem);line-height:1.05;color:inherit}
.sl-p{margin:0;font-size:clamp(.95rem,2.4vw,1.1rem);opacity:.94;max-width:46ch}
.sl .btn.sl-btn{background:#fff;color:var(--red-t);margin-top:8px;box-shadow:0 6px 18px rgba(0,0,0,.18)}
.sl .btn.sl-btn:hover{transform:translateY(-1px)}
.sl-mark{position:absolute;z-index:-1;right:26px;bottom:40px;width:clamp(110px,24vw,230px);height:auto;opacity:.17;stroke-width:1.1}
.sl.s1{background:linear-gradient(120deg,#a81f2c,#d9404f)}
.sl.s2{background:linear-gradient(120deg,#6d1019,#b3222f)}
.sl.s3{background:linear-gradient(120deg,#fdecee,#ffffff);color:#7a111c}
.sl.s3::before{background:rgba(211,47,63,.08)}.sl.s3::after{background:rgba(211,47,63,.06)}.sl.s3 .sl-mark{opacity:.12;color:#b3222f}
.sl.s3 .btn.sl-btn{background:linear-gradient(135deg,var(--red),var(--red-d));color:#fff}
.sl.s4{background:linear-gradient(120deg,#b3222f,#e0485a)}
.sl.s5{background:linear-gradient(120deg,#8e1722,#cf3445)}
.sl.s6{background:linear-gradient(120deg,#7a111c,#c1232f)}
.dots{position:absolute;left:0;right:0;bottom:20px;display:flex;justify-content:center;gap:8px;pointer-events:none}
.dots button{pointer-events:auto;width:8px;height:8px;padding:0;border:0;border-radius:999px;background:rgba(255,255,255,.55);cursor:pointer;transition:width .25s,background .25s}
.dots button.on{width:26px;background:#fff}
.banner.on-light .dots button{background:rgba(122,17,28,.28)}.banner.on-light .dots button.on{background:var(--red)}
.sl-arrow{display:none;position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;border:0;background:#fff;color:var(--red-t);box-shadow:var(--shadow);cursor:pointer;place-items:center}
.sl-arrow.prev{left:14px}.sl-arrow.next{right:14px}.sl-arrow:hover{background:var(--red-soft)}

/* busca, números e faixas de confiança */
.pillsearch{margin-top:16px;margin-bottom:0}
.kpis{list-style:none;margin:14px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));background:var(--panel);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}
.kpis li{display:flex;flex-direction:column;align-items:center;padding:14px 6px;text-align:center;min-width:0}
.kpis li+li{border-left:1px solid var(--line)}
.kpis b{font:700 1.7rem/1.1 var(--fh);color:var(--red-t)}.kpis span{font-size:.78rem;color:var(--muted)}
.trust{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.trust li{display:flex;gap:12px;align-items:flex-start;padding:14px;border:1px solid var(--line);border-radius:16px;background:var(--panel);min-width:0}
.trust i{flex:none;display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:var(--red-soft);color:var(--red-t)}
.trust i .ic{width:20px;height:20px}
.trust strong{display:block;font-size:.95rem;line-height:1.25}.trust small{display:block;color:var(--muted);font-size:.8rem;line-height:1.35;margin-top:2px}
.steps{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.steps li{display:flex;gap:14px;padding:18px;border:1px solid var(--line);border-radius:16px;background:var(--panel);min-width:0}
.steps b{flex:none;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--red);color:#fff;font:600 1rem var(--fh)}
.steps h3{font-size:1.15rem;margin:0 0 4px}.steps p{margin:0;color:var(--muted);font-size:.92rem}
.cta-band{display:flex;flex-wrap:wrap;gap:16px 28px;align-items:center;justify-content:space-between;border-radius:22px;padding:28px 24px;color:#fff;background:linear-gradient(120deg,#a81f2c,#d9404f);box-shadow:var(--shadow)}
.cta-band h2{margin:0 0 6px;font-size:clamp(1.5rem,4vw,2.1rem);color:#fff}.cta-band p{margin:0;opacity:.94;max-width:54ch}
.cta-band .btn{background:#fff;color:var(--red-t);box-shadow:0 6px 18px rgba(0,0,0,.18)}

/* cards mais limpos */
.card,.lcard,.icard,.infob,.box,.status{box-shadow:var(--shadow);border-color:var(--line)}
.card:hover{box-shadow:0 14px 34px rgba(120,30,40,.16)}
.chip{background:#fff}

/* rodapé */
.foot{background:#fbf7f6;border-top:1px solid var(--line);margin-top:48px;padding:36px 0 calc(28px + 76px + env(safe-area-inset-bottom,0px));color:var(--muted);font-size:.9rem}
.foot-g{display:grid;gap:26px}
.foot-p{margin:12px 0 0;max-width:42ch;font-size:.9rem}
.foot h4{margin:0 0 10px;font:600 .75rem Inter,sans-serif;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}
.foot ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.foot a{color:var(--text)}.foot a:hover{color:var(--red-t);text-decoration:none}
.foot .logo{color:var(--text)}
.foot-b{display:flex;gap:12px 16px;align-items:center;border-top:1px solid var(--line);margin-top:26px;padding-top:18px;font-size:.8rem}
.age18{flex:none;display:inline-grid;place-items:center;width:36px;height:36px;border-radius:50%;border:2px solid var(--red);color:var(--red-t);font:700 .78rem var(--fh)}

@media (min-width:760px){
  .steps{grid-template-columns:repeat(3,minmax(0,1fr))}
  .foot-g{grid-template-columns:1.6fr 1fr 1fr}
  .sl{padding:40px 40px 68px}
}
@media (min-width:900px){
  .trust{grid-template-columns:repeat(4,minmax(0,1fr))}
  .sl-arrow{display:grid}
  .sl{padding:48px 88px 70px}
  .foot{padding-bottom:30px}
  .kpis{max-width:620px}
}
@media (min-width:900px){.pillsearch,.kpis{max-width:720px;margin-inline:auto}}

/* logo (SVG) */
.logo{gap:0}
.logo svg.lg{display:block;height:30px;width:auto;max-width:56vw}
.foot .logo svg.lg{height:34px}
