/* fornecedores.ao — site público. Laranja da marca, tinta azul-noite, papel branco. */
:root{
  --ink:#0f172a; --ink-2:#334155; --muted:#5b6b80; --line:#e2e8f0; --mist:#f4f6fa; --paper:#fff;
  --brand:#ff6a00; --brand-ink:#b54500; --brand-tint:#fff1e6; --ok:#0f766e; --ok-tint:#e4f4f1;
  --font-d:'Bricolage Grotesque','Segoe UI',system-ui,sans-serif; --font-b:'Figtree','Segoe UI',system-ui,sans-serif;
  --r-s:8px; --r-m:14px; --r-l:22px; --w:1200px; --hdr:68px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--hdr) + 12px)}
body{margin:0;font-family:var(--font-b);font-size:16px;line-height:1.55;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}
a{color:inherit}
h1,h2,h3,h4{font-family:var(--font-d);line-height:1.12;margin:0;letter-spacing:-.015em}
p{margin:0}
:focus-visible{outline:3px solid var(--ink);outline-offset:2px;border-radius:4px}
.skip{position:absolute;left:-999px;top:8px;background:var(--ink);color:#fff;padding:10px 16px;border-radius:var(--r-s);z-index:999}
.skip:focus{left:8px}
.wrap{width:100%;max-width:var(--w);margin:0 auto;padding:0 24px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* botões */
.btn{white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 22px;border-radius:999px;font:600 15px/1 var(--font-b);text-decoration:none;border:2px solid transparent;cursor:pointer;transition:background .15s,color .15s,border-color .15s,transform .15s}
.btn:active{transform:translateY(1px)}
.btn-brand{background:var(--brand);color:var(--ink)}
.btn-brand:hover{background:#ff7d1f}
.btn-ink{background:var(--ink);color:#fff}
.btn-ink:hover{background:#1e293b}
.btn-line{border-color:var(--ink);color:var(--ink);background:transparent}
.btn-line:hover{background:var(--ink);color:#fff}
.btn-light{background:#fff;color:var(--ink)}
.btn-sm{padding:9px 16px;font-size:14px}
.btn-lg{padding:16px 30px;font-size:16px}
.btn-block{width:100%}

/* cabeçalho */
.hdr{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.96);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.hdr .wrap{display:flex;align-items:center;gap:20px;height:var(--hdr)}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;font:800 20px/1 var(--font-d);letter-spacing:-.02em}
.logo-mark{width:34px;height:34px;border-radius:9px;background:var(--brand);display:grid;place-items:center;color:var(--ink);font-size:18px}
.logo b{color:var(--brand-ink);font-weight:800}
.menu{display:flex;align-items:center;gap:20px;flex:1}
.nav{display:flex;gap:4px;margin-left:8px;flex:1}
.nav>a{padding:8px 9px;border-radius:999px;text-decoration:none;font-weight:600;font-size:15px;color:var(--ink-2)}
.nav a:hover{background:var(--mist);color:var(--ink)}
.nav a[aria-current="page"]{background:var(--ink);color:#fff}
.hdr-cta{display:flex;gap:8px;align-items:center}
.burger{display:none;width:44px;height:44px;border:2px solid var(--ink);border-radius:12px;background:#fff;font-size:18px;cursor:pointer;margin-left:auto}
.bar-app{background:var(--ink);color:#fff;font-size:14px}
.bar-app .wrap{display:flex;gap:12px;align-items:center;justify-content:center;padding-top:8px;padding-bottom:8px}
.bar-app a{color:var(--brand);font-weight:700}

/* hero */
.hero{padding:72px 0 88px}
.hero .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center}
.hero h1{font-size:clamp(38px,4.6vw,64px);font-weight:800;letter-spacing:-.03em;color:#fff}
.hero-sub{font-size:20px;margin-top:22px;max-width:34em;font-weight:500}
.hero-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}
.hero-note{margin-top:18px;font-size:14px;font-weight:600;color:#fff}
.hero-note i{margin-right:6px}

/* talão de cotação */
.slip{color:var(--ink);background:#fff;border-radius:6px;padding:30px 28px 26px;box-shadow:0 2px 0 rgba(15,23,42,.9),0 22px 40px -18px rgba(15,23,42,.45);position:relative;transform:rotate(1.4deg);animation:carimbo .7s cubic-bezier(.2,.8,.2,1) both}
.slip::before,.slip::after{content:"";position:absolute;left:0;right:0;height:10px;background:radial-gradient(circle at 8px 0,var(--brand) 6px,transparent 6.5px) 0 0/16px 10px repeat-x}
.slip::before{top:-1px}
.slip::after{bottom:-1px;transform:scaleY(-1)}
@keyframes carimbo{from{opacity:0;transform:translateY(24px) rotate(-3deg)}to{opacity:1;transform:rotate(1.4deg)}}
.slip h2{font-size:24px}
.slip-sub{color:var(--muted);font-size:14px;margin:6px 0 18px}
.slip label{display:block;font-weight:700;font-size:13px;margin:14px 0 6px}
.slip input,.slip select,.f-in{width:100%;padding:12px 14px;border:1.5px solid var(--line);border-radius:var(--r-s);font:500 15px var(--font-b);color:var(--ink);background:#fff}
.slip input:focus,.slip select:focus,.f-in:focus{border-color:var(--ink);outline:none;box-shadow:0 0 0 3px rgba(255,106,0,.35)}
.slip-row{display:grid;grid-template-columns:1fr 110px;gap:12px}
.slip .btn{margin-top:20px}
.slip-res{display:none;margin-top:18px;padding-top:18px;border-top:2px dashed var(--line)}
.slip-res.on{display:block}
.slip-res p{font-size:15px}
.slip-res strong{font-family:var(--font-d);font-size:20px}
.slip-res .acts{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap}

/* faixa de números */
.ledger{background:var(--ink);color:#fff}
.ledger .wrap{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}
.led{padding:26px 20px;border-left:1px solid rgba(255,255,255,.14)}
.led:first-child{border-left:0}
.led b{display:block;font:800 32px/1 var(--font-d);color:var(--brand)}
.led span{font-size:14px;color:#cbd5e1}

/* secções */
.sec{padding:84px 0}
.sec-mist{background:var(--mist)}
.sec-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:36px;flex-wrap:wrap}
.sec-head h2{font-size:clamp(28px,3.4vw,44px);font-weight:800;max-width:18em}
.sec-head p{color:var(--muted);max-width:34em;margin-top:12px;font-size:17px}
.link-more{font-weight:700;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:2px;text-decoration-color:var(--brand)}
.link-more:hover{color:var(--brand-ink)}

/* públicos */
.aud{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.aud-c{background:#fff;border:1.5px solid var(--line);border-radius:var(--r-l);padding:28px 24px;display:flex;flex-direction:column;gap:14px}
.aud-c:nth-child(1){background:var(--brand-tint);border-color:#ffd9b8}
.aud-ico{width:48px;height:48px;border-radius:14px;background:var(--ink);color:var(--brand);display:grid;place-items:center;font-size:20px}
.aud-c h3{font-size:22px}
.aud-c p{color:var(--ink-2);font-size:15px}
.aud-c ul{margin:0;padding:0;list-style:none;display:grid;gap:8px;font-size:15px}
.aud-c li{display:flex;gap:10px}
.aud-c li i{color:var(--ok);margin-top:5px;font-size:13px}
.aud-c .btn{margin-top:auto;align-self:flex-start}

/* passos */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:0;counter-reset:s}
.step{padding:8px 36px 8px 0;position:relative}
.step+.step{padding-left:36px;border-left:2px dashed var(--line)}
.step-n{display:inline-block;background:var(--brand);color:var(--ink);font:800 18px/1 var(--font-d);padding:9px 16px 9px 12px;clip-path:polygon(0 0,100% 0,100% 100%,0 100%,12px 50%);margin-bottom:18px}
.step h3{font-size:24px;margin-bottom:10px}
.step p{color:var(--ink-2)}

/* categorias */
.cats{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:14px}
.cat{display:flex;align-items:center;gap:14px;padding:16px;border:1.5px solid var(--line);border-radius:var(--r-m);text-decoration:none;background:#fff;transition:border-color .15s,transform .15s}
.cat:hover{border-color:var(--ink);transform:translateY(-2px)}
.cat-i{width:44px;height:44px;border-radius:12px;background:var(--brand-tint);color:var(--brand-ink);display:grid;place-items:center;font-size:18px;flex:none}
.cat b{display:block;font-family:var(--font-d);font-size:17px;line-height:1.2}
.cat small{color:var(--muted);font-size:13px}

/* grelhas e cartões */
.grid{display:grid;gap:20px}
.g4{grid-template-columns:repeat(4,1fr)}
.g3{grid-template-columns:repeat(3,1fr)}
.g6{grid-template-columns:repeat(6,1fr)}
.card{background:#fff;border:1.5px solid var(--line);border-radius:var(--r-m);overflow:hidden;display:flex;flex-direction:column;text-decoration:none;transition:border-color .15s,box-shadow .15s}
a.card:hover{border-color:var(--ink);box-shadow:0 14px 28px -18px rgba(15,23,42,.5)}
.p-img{aspect-ratio:1/1;background:var(--mist);display:grid;place-items:center;overflow:hidden;position:relative}
.p-img img{width:100%;height:100%;object-fit:cover}
.p-img .ph{color:#94a3b8;font-size:34px}
.p-body{padding:14px 16px 16px;display:flex;flex-direction:column;gap:6px;flex:1}
.p-cat{font-size:13px;color:var(--muted)}
.p-name{font-family:var(--font-d);font-weight:700;font-size:17px;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.p-loja{font-size:14px;color:var(--ink-2);display:flex;align-items:center;gap:6px}
.p-price{margin-top:auto;padding-top:8px}
.tag{display:inline-block;background:var(--ink);color:#fff;font:700 16px/1 var(--font-d);padding:8px 14px 8px 18px;clip-path:polygon(10px 0,100% 0,100% 100%,10px 100%,0 50%)}
.tag-q{background:var(--mist);color:var(--muted);font-weight:600;font-size:14px}
.ok-badge{display:inline-flex;align-items:center;gap:5px;background:var(--ok-tint);color:var(--ok);font-weight:700;font-size:12px;padding:3px 9px;border-radius:999px}
.of-badge{background:var(--brand-tint);color:var(--brand-ink)}
.lock-chip{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:var(--ink-2);background:var(--mist);padding:6px 12px;border-radius:999px;border:0;cursor:pointer;font-family:var(--font-b)}
.lock-chip:hover{background:var(--ink);color:#fff}

/* lojas */
.l-top{display:flex;gap:14px;align-items:center;padding:18px 18px 0}
.l-logo{width:60px;height:60px;border-radius:14px;background:var(--brand-tint);color:var(--brand-ink);display:grid;place-items:center;font:800 20px var(--font-d);overflow:hidden;flex:none;border:1.5px solid var(--line)}
.l-logo img{width:100%;height:100%;object-fit:cover}
.l-name{font-family:var(--font-d);font-weight:700;font-size:18px;line-height:1.2}
.l-desc{padding:12px 18px;color:var(--ink-2);font-size:14px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.l-foot{margin-top:auto;padding:12px 18px;border-top:1px solid var(--line);font-size:13px;color:var(--muted);display:flex;gap:16px}

/* marcas */
.marcas{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px}
.marca{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;padding:20px 12px;border:1.5px solid var(--line);border-radius:var(--r-m);text-decoration:none;background:#fff}
a.marca:hover{border-color:var(--ink)}
.marca .l-logo{width:68px;height:68px;border-radius:50%}
.marca b{font-family:var(--font-d);font-size:15px;line-height:1.2}

/* shoppings */
.sh{position:relative;min-height:280px;border-radius:var(--r-l);overflow:hidden;color:#fff;display:flex;align-items:flex-end;background:var(--ink) center/cover no-repeat}
.sh::before{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(15,23,42,.88),rgba(15,23,42,.05) 70%)}
.sh-in{position:relative;padding:22px;width:100%}
.sh h3{font-size:24px}
.sh-meta{display:flex;gap:14px;flex-wrap:wrap;font-size:14px;margin-top:8px;color:#e2e8f0}
.sh-flag{position:absolute;top:16px;left:16px;z-index:1;background:var(--brand);color:var(--ink);font:700 12px var(--font-b);padding:5px 11px;border-radius:999px}

/* estado de uma feira */
.est{display:inline-block;padding:4px 12px;border-radius:999px;font:700 13px var(--font-b)}
.est.on{background:var(--ok);color:#fff}
.est.soon{background:var(--brand);color:var(--ink)}
.est.end{background:var(--mist);color:var(--muted);border:1px solid var(--line)}
.fei-meta{display:flex;gap:18px;flex-wrap:wrap;margin-top:14px;font-weight:600;color:var(--ink-2)}
.fei-meta i{color:var(--brand-ink);margin-right:6px}
/* reels */
.reel{position:relative;aspect-ratio:9/14;border-radius:var(--r-m);overflow:hidden;background:var(--ink) center/cover no-repeat;border:0;padding:0;cursor:pointer;color:#fff;text-align:left;display:block;width:100%;text-decoration:none}
.reel::before{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(15,23,42,.85),transparent 55%)}
.reel-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:54px;height:54px;border-radius:50%;background:rgba(255,255,255,.92);color:var(--ink);display:grid;place-items:center;font-size:18px}
.reel-in{position:absolute;left:14px;right:14px;bottom:14px}
.reel-in b{display:block;font-family:var(--font-d);font-size:16px;line-height:1.2}
.reel-in span{font-size:13px;opacity:.9}

/* espaços */
.esp-img{aspect-ratio:16/10;background:var(--mist) center/cover no-repeat;position:relative}
.esp-st{position:absolute;top:12px;left:12px;background:var(--ok);color:#fff;font:700 12px var(--font-b);padding:4px 10px;border-radius:999px}
.esp-st.res{background:#b45309}.esp-st.ocu{background:#64748b}
.esp-meta{display:flex;gap:12px;flex-wrap:wrap;font-size:14px;color:var(--ink-2)}

/* filtros */
.page-hero{background:var(--mist);padding:48px 0 36px;border-bottom:1px solid var(--line)}
.page-hero h1{font-size:clamp(32px,4vw,52px);font-weight:800}
.page-hero p{margin-top:12px;color:var(--ink-2);font-size:18px;max-width:40em}
.crumbs{font-size:14px;color:var(--muted);margin-bottom:14px}
.crumbs a{color:var(--muted)}
.filt{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
.filt .f-in{width:auto;flex:1;min-width:190px}
.filt .f-q{flex:2;min-width:240px}
.filt .locked{position:relative;flex:1;min-width:190px}
.locked .f-in{background:var(--mist);color:var(--muted);cursor:pointer;text-align:left}
.chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}
.chip{padding:7px 14px;border-radius:999px;border:1.5px solid var(--line);background:#fff;font-weight:600;font-size:14px;text-decoration:none;color:var(--ink-2)}
.chip:hover,.chip.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.result-info{margin:28px 0 18px;color:var(--muted);font-size:15px}
.empty{padding:56px 24px;text-align:center;border:2px dashed var(--line);border-radius:var(--r-l);color:var(--ink-2)}
.empty h3{font-size:22px;margin-bottom:8px}
.pager{display:flex;gap:8px;justify-content:center;margin-top:36px;flex-wrap:wrap}
.pager a,.pager span{min-width:42px;height:42px;display:grid;place-items:center;border-radius:12px;border:1.5px solid var(--line);text-decoration:none;font-weight:700}
.pager .on{background:var(--ink);color:#fff;border-color:var(--ink)}

/* aviso "veja mais com conta" */
.wall{margin-top:32px;background:var(--ink);color:#fff;border-radius:var(--r-l);padding:34px 36px;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center}
.wall h3{font-size:26px}
.wall p{color:#cbd5e1;margin-top:8px;max-width:38em}
.wall .acts{display:flex;gap:10px;flex-wrap:wrap}

/* produto */
.prod{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;padding:44px 0 72px}
.gal-main{aspect-ratio:1/1;border-radius:var(--r-l);overflow:hidden;background:var(--mist);display:grid;place-items:center;border:1.5px solid var(--line)}
.gal-main img{width:100%;height:100%;object-fit:cover}
.gal-th{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap}
.gal-th button{width:76px;height:76px;border-radius:12px;overflow:hidden;border:2px solid var(--line);padding:0;background:#fff;cursor:pointer}
.gal-th button[aria-pressed="true"]{border-color:var(--ink)}
.gal-th img{width:100%;height:100%;object-fit:cover}
.prod h1{font-size:clamp(28px,3.2vw,42px);font-weight:800;margin:10px 0 18px}
.prod .tag{font-size:26px;padding:12px 20px 12px 26px}
.prod-desc{margin:24px 0;color:var(--ink-2);white-space:pre-line}
.box{border:1.5px solid var(--line);border-radius:var(--r-m);padding:20px}
.box+.box{margin-top:14px}
.box h3{font-size:18px;margin-bottom:12px}
.sup{display:flex;gap:14px;align-items:center;text-decoration:none}
.lockbox{background:var(--mist);border-style:dashed}
.lockbox p{color:var(--ink-2);font-size:15px;margin-bottom:14px}
.blur{filter:blur(5px);user-select:none;pointer-events:none;font-weight:700;letter-spacing:.04em}
.acts{display:flex;gap:10px;flex-wrap:wrap}
.perks{display:grid;gap:10px;margin-top:16px;font-size:14px;color:var(--ink-2)}
.perks div{display:flex;gap:10px}
.perks i{color:var(--ok);margin-top:4px}

/* planos */
.plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;align-items:stretch}
.plan{border:1.5px solid var(--line);border-radius:var(--r-l);padding:30px 26px;background:#fff;display:flex;flex-direction:column;gap:14px;position:relative}
.plan.pop{border:2px solid var(--ink);box-shadow:8px 8px 0 var(--brand)}
.plan-flag{position:absolute;top:-13px;left:24px;background:var(--brand);color:var(--ink);font:700 13px var(--font-b);padding:5px 13px;border-radius:999px}
.plan h3{font-size:24px}
.plan-price{font:800 36px/1 var(--font-d)}
.plan-price small{font:500 14px var(--font-b);color:var(--muted);margin-left:6px}
.plan ul{list-style:none;margin:0;padding:0;display:grid;gap:9px;font-size:15px}
.plan li{display:flex;gap:10px}
.plan li i{color:var(--ok);margin-top:5px;font-size:13px}
.plan .btn{margin-top:auto}

/* faq */
.faq{max-width:820px}
.faq details{border-bottom:1.5px solid var(--line);padding:4px 0}
.faq summary{cursor:pointer;list-style:none;font:700 18px var(--font-d);padding:18px 40px 18px 0;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:6px;top:50%;transform:translateY(-50%);font:600 26px var(--font-b);color:var(--brand-ink);transition:transform .2s}
.faq details[open] summary::after{transform:translateY(-50%) rotate(45deg)}
.faq details p{padding:0 0 20px;color:var(--ink-2);max-width:42em}

/* faixa final */
.final{padding:84px 0;text-align:center}
.final h2{font-size:clamp(30px,4vw,52px);font-weight:800;max-width:16em;margin:0 auto;color:#fff}
.final p{margin:16px auto 0;max-width:34em;font-size:18px;font-weight:500;color:#fff}
.final .acts{justify-content:center;margin-top:30px}

/* rodapé */
.ftr{background:var(--ink);color:#cbd5e1;padding:64px 0 28px}
.ftr-g{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px}
.ftr .logo{color:#fff}
.ftr .logo b{color:var(--brand)}
.ftr p{font-size:15px;margin-top:14px;max-width:26em}
.ftr h4{color:#fff;font-size:16px;margin-bottom:14px}
.ftr ul{list-style:none;margin:0;padding:0;display:grid;gap:9px;font-size:15px}
.ftr a{text-decoration:none}
.ftr a:hover{color:var(--brand)}
.ftr-b{border-top:1px solid rgba(255,255,255,.14);margin-top:44px;padding-top:22px;font-size:14px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}

/* diálogo de acesso */
dialog.gate{border:0;border-radius:var(--r-l);padding:0;max-width:440px;width:calc(100% - 32px);box-shadow:0 30px 70px -20px rgba(15,23,42,.6)}
dialog.gate::backdrop{background:rgba(15,23,42,.55)}
.gate-in{padding:34px 30px 28px}
.gate-ico{width:52px;height:52px;border-radius:16px;background:var(--brand);color:var(--ink);display:grid;place-items:center;font-size:22px;margin-bottom:16px}
.gate h3{font-size:26px;margin-bottom:10px}
.gate p{color:var(--ink-2)}
.gate .acts{margin-top:22px;flex-direction:column}
.gate-x{position:absolute;top:12px;right:12px;width:40px;height:40px;border:0;background:var(--mist);border-radius:50%;cursor:pointer;font-size:16px}
.gate-sm{margin-top:14px;font-size:14px;color:var(--muted);text-align:center}

/* texto corrido */
.prose{max-width:760px}
.prose h2{font-size:28px;margin:40px 0 12px}
.prose p,.prose li{color:var(--ink-2);font-size:17px}
.prose ul{padding-left:20px}
.cols2{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.pill-list{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.pill-list span{background:#fff;border:1.5px solid var(--line);border-radius:999px;padding:8px 16px;font-weight:600;font-size:15px}

/* responsivo */
@media (max-width:1040px){
  .hero .wrap,.prod,.cols2{grid-template-columns:1fr}
  .aud,.g4{grid-template-columns:repeat(2,1fr)}
  .g6{grid-template-columns:repeat(3,1fr)}
  .ftr-g{grid-template-columns:1fr 1fr}
}
@media (max-width:860px){
  .steps{grid-template-columns:1fr}
  .step,.step+.step{padding:20px 0;border-left:0}
  .step+.step{border-top:2px dashed var(--line)}
  .g3{grid-template-columns:1fr 1fr}
  .wall{grid-template-columns:1fr}
}
@media (max-width:600px){
  .wrap{padding:0 18px}
  .sec{padding:56px 0}
  .hero{padding:44px 0 56px}
  .hero-sub{font-size:18px}
  .aud,.g4,.g3{grid-template-columns:1fr}
  .g4.compact,.g3.compact{grid-template-columns:1fr 1fr}
  .g6{grid-template-columns:repeat(2,1fr)}
  .ftr-g{grid-template-columns:1fr}
  .slip{transform:none;animation:none;padding:26px 20px}
  .led{border-left:0;border-top:1px solid rgba(255,255,255,.14)}
}
@media (prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .slip{transform:rotate(1.4deg)}
}

/* ============ v3: menu, movimento, formulários, novas páginas ============ */
.nav{align-items:center}
.nav>a,.mais summary{padding:8px 10px;border-radius:999px;text-decoration:none;font-weight:600;font-size:14.5px;color:var(--ink-2);white-space:nowrap}
.mais{position:relative}
.mais summary{list-style:none;cursor:pointer}
.mais summary::-webkit-details-marker{display:none}
.mais summary::after{content:"";display:inline-block;margin-left:6px;border:4px solid transparent;border-top-color:currentColor;border-bottom:0;vertical-align:middle}
.mais summary:hover,.mais[open] summary{background:var(--mist);color:var(--ink)}
.mais-lista{position:absolute;top:calc(100% + 8px);left:0;min-width:230px;background:#fff;border:1.5px solid var(--line);border-radius:var(--r-m);padding:8px;display:grid;gap:2px;box-shadow:0 24px 40px -20px rgba(15,23,42,.45);z-index:5}
.mais-lista a{padding:10px 12px;border-radius:10px;text-decoration:none;font-weight:600;font-size:14.5px;color:var(--ink-2)}
.mais-lista a:hover{background:var(--mist);color:var(--ink)}
.mais-lista a[aria-current="page"]{background:var(--ink);color:#fff}
.hdr-cta{gap:12px}
.hdr-link{font-weight:700;font-size:14.5px;text-decoration:none;color:var(--ink-2);padding:8px 4px}
.hdr-link:hover{color:var(--brand-ink)}
@media (max-width:1180px){
  .burger{display:block}
  .menu{display:none}
  .hdr.open .menu{display:flex;flex-direction:column;align-items:stretch;position:absolute;top:var(--hdr);left:0;right:0;background:#fff;padding:12px 24px 22px;border-bottom:1px solid var(--line);gap:14px;box-shadow:0 20px 30px -20px rgba(15,23,42,.4);max-height:calc(100vh - var(--hdr));overflow:auto}
  .hdr.open .nav{flex-direction:column;align-items:stretch;margin:0;gap:2px}
  .hdr.open .nav>a,.hdr.open .mais-lista a{padding:11px 12px}
  .mais summary{display:none}
  .mais-lista{position:static;border:0;box-shadow:none;padding:0;min-width:0}
  .hdr.open .hdr-cta{flex-direction:column;align-items:stretch}
  .hdr.open .hdr-cta .btn{width:100%}
  .hdr-link{text-align:center;padding:12px}
}

/* fundo laranja em movimento (hero e apelo final); texto sempre branco */
.mo{position:relative;isolation:isolate;overflow:hidden;color:#fff;background:#cf3f00}
.mo::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(100,26,0,.42),rgba(100,26,0,0) 68%);pointer-events:none}
.mo-bg{position:absolute;inset:0;z-index:-2;overflow:hidden;background:linear-gradient(115deg,#b93500 0%,#d94300 42%,#ea5a00 100%);background-size:220% 220%;animation:mo-fluxo 18s ease-in-out infinite alternate}
.mo-bg .orb{position:absolute;border-radius:50%;filter:blur(46px);will-change:transform}
.mo-bg .o1{width:540px;height:540px;right:-140px;top:-170px;background:#ff8a2a;opacity:.55;animation:mo-flutua 17s ease-in-out infinite}
.mo-bg .o2{width:400px;height:400px;right:24%;bottom:-210px;background:#ffb04a;opacity:.32;animation:mo-flutua 23s ease-in-out -7s infinite reverse}
.mo-bg .o3{width:320px;height:320px;left:-110px;bottom:-130px;background:#ff6a00;opacity:.38;animation:mo-flutua 20s ease-in-out -3s infinite}
.mo-bg .grade{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px);background-size:56px 56px;-webkit-mask-image:linear-gradient(115deg,transparent 28%,#000 100%);mask-image:linear-gradient(115deg,transparent 28%,#000 100%);animation:mo-grade 32s linear infinite}
@keyframes mo-fluxo{to{background-position:100% 100%}}
@keyframes mo-flutua{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(-70px,56px) scale(1.14)}}
@keyframes mo-grade{to{background-position:56px 56px}}
.mo h1,.mo h2{color:#fff;text-shadow:0 2px 16px rgba(110,28,0,.28)}
.mo .hero-sub,.mo>.wrap>p{color:#fff}
.btn-line-w{border-color:#fff;color:#fff;background:transparent}
.btn-line-w:hover{background:#fff;color:#a52f00}
.mo .btn-light{color:#a52f00}
.mo .btn-ink:hover{background:#1e293b}

/* botões das lojas de apps */
.app-btns{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
.app-btn{display:inline-flex;align-items:center;gap:12px;background:#0f172a;color:#fff;border:1.5px solid rgba(255,255,255,.28);border-radius:14px;padding:9px 18px 9px 14px;text-decoration:none;transition:transform .15s,background .15s}
.app-btn:hover{transform:translateY(-2px);background:#000}
.app-btn i{font-size:26px}
.app-btn span{display:flex;flex-direction:column;font:700 16px/1.1 var(--font-d)}
.app-btn small{font:500 11px/1.2 var(--font-b);opacity:.85}
.app-btns-centro{justify-content:center}
.app-btns-claro .app-btn{background:#1e293b}

/* erros */
.erro-pag{min-height:100vh;display:grid;place-items:center;padding:24px;background:var(--mist);text-align:center}
.erro-cx{max-width:480px}
.erro-cod{font:800 72px/1 var(--font-d);color:var(--brand-ink);margin-bottom:8px}
.erro-cx h1{font-size:28px;margin-bottom:10px}
.erro-cx p{color:var(--ink-2);margin-bottom:18px}
.empty-404 .erro-cod{font-size:64px}
.filt-centro{justify-content:center;max-width:640px;margin:20px auto 0}
.chips-centro{justify-content:center}

/* cartões: pormenores novos */
.p-img{position:relative}
.p-img .ph{position:absolute}
.p-img img{position:relative;z-index:1}
.p-tags{display:flex;gap:6px;flex-wrap:wrap}
.p-tags span{background:var(--brand-tint);color:var(--brand-ink);font:700 11px var(--font-b);padding:3px 8px;border-radius:999px}
.p-meta{font-size:13px;color:var(--muted)}
.sh-vazio{background:linear-gradient(135deg,#1e293b,#0f172a)}
.sh-ini{position:absolute;top:22px;right:24px;font:800 64px/1 var(--font-d);color:rgba(255,255,255,.16)}
.cot .p-body{gap:9px}
.cot-top{display:flex;justify-content:space-between;gap:8px;align-items:center;flex-wrap:wrap}
.cot-desc{color:var(--ink-2);font-size:14px}
.cot-foot{display:flex;justify-content:space-between;gap:10px;margin-top:auto;padding-top:10px;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}
.urg{font:700 12px var(--font-b);padding:3px 10px;border-radius:999px;background:var(--mist);color:var(--ink-2)}
.urg-alta{background:#fff3d6;color:#8a5a00}
.urg-urgente{background:#ffe0dc;color:#a12512}
.tabs{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 26px;border-bottom:1.5px solid var(--line)}
.tabs a{padding:11px 16px;font-weight:700;font-size:15px;text-decoration:none;color:var(--muted);border-bottom:3px solid transparent;margin-bottom:-1.5px}
.tabs a:hover{color:var(--ink)}
.tabs a.on{color:var(--ink);border-bottom-color:var(--brand)}
.aviso{border:1.5px dashed var(--line);border-radius:var(--r-l);padding:30px;background:var(--mist);max-width:720px}
.aviso h3{font-size:22px;margin-bottom:8px}
.aviso p{color:var(--ink-2);margin-bottom:18px}

/* formulários */
.form{display:grid;gap:18px}
.fld label,.fld-l{display:block;font-weight:700;font-size:14px;margin-bottom:6px}
.fld small{color:var(--muted);font-weight:500}
.fld input,.fld select,.fld textarea{width:100%;padding:13px 14px;border:1.5px solid var(--line);border-radius:var(--r-s);font:500 15px var(--font-b);color:var(--ink);background:#fff}
.fld textarea{min-height:110px;resize:vertical}
.fld input:focus,.fld select:focus,.fld textarea:focus{border-color:var(--ink);outline:none;box-shadow:0 0 0 3px rgba(255,106,0,.3)}
.fld-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.fld-row3{display:grid;grid-template-columns:2fr 1fr 1fr;gap:16px}
.form-msg{display:none;padding:12px 14px;border-radius:var(--r-s);font-weight:600;font-size:14.5px}
.form-msg.erro{display:block;background:#ffe9e6;color:#a12512}
.form-msg.ok{display:block;background:var(--ok-tint);color:var(--ok)}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.card-form{background:#fff;border:1.5px solid var(--line);border-radius:var(--r-l);padding:30px}
.col-form{max-width:720px}

/* criar conta */
.perfis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.perfil{text-align:left;border:2px solid var(--line);border-radius:var(--r-l);padding:20px;background:#fff;cursor:pointer;font-family:var(--font-b);color:var(--ink);display:flex;flex-direction:column;gap:8px;transition:border-color .15s,box-shadow .15s}
.perfil:hover{border-color:var(--ink)}
.perfil[aria-pressed="true"]{border-color:var(--ink);box-shadow:6px 6px 0 var(--brand)}
.perfil i{font-size:22px;color:var(--brand-ink)}
.perfil b{font:700 18px var(--font-d)}
.perfil span{font-size:14px;color:var(--ink-2)}
.perfil em{font-style:normal;font-size:12px;font-weight:700;color:var(--ok)}
.passos-cc{display:flex;gap:10px;margin-bottom:26px;flex-wrap:wrap}
.passos-cc span{padding:6px 14px;border-radius:999px;background:var(--mist);font-weight:700;font-size:13px;color:var(--muted)}
.passos-cc span.on{background:var(--ink);color:#fff}
.sel-cats{display:grid;gap:18px}
.sel-grupo h4{font-size:16px;margin-bottom:10px;display:flex;align-items:center;gap:8px}
.sel-grupo h4 i{color:var(--brand-ink)}
.sel-chips{display:flex;flex-wrap:wrap;gap:8px}
.sel-chips label{cursor:pointer}
.sel-chips input{position:absolute;opacity:0;pointer-events:none}
.sel-chips span{display:inline-block;padding:8px 14px;border-radius:999px;border:1.5px solid var(--line);font-weight:600;font-size:14px;background:#fff;transition:all .12s}
.sel-chips input:checked+span{background:var(--ink);border-color:var(--ink);color:#fff}
.sel-chips input:focus-visible+span{outline:3px solid var(--brand);outline-offset:2px}
.sel-count{font-weight:700;color:var(--muted);font-size:14px}

/* detalhe: espaço, shopping, loja, cotação */
.det{display:grid;grid-template-columns:1.1fr .9fr;gap:44px;padding:40px 0 64px}
.det-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:22px 0}
.det-meta div{border:1.5px solid var(--line);border-radius:var(--r-m);padding:12px 14px}
.det-meta small{display:block;color:var(--muted);font-size:12.5px;font-weight:600}
.det-meta b{font-family:var(--font-d);font-size:17px}
.lista-pontos{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}
.lista-pontos span{background:var(--mist);border-radius:999px;padding:7px 14px;font-weight:600;font-size:14px}
.capa{height:240px;background:var(--ink) center/cover no-repeat;position:relative}
.capa::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(15,23,42,.55),transparent 60%)}
.contacto-box a{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:12px;font-weight:700;text-decoration:none;margin-bottom:10px}
.btn-wa{background:#16a34a;color:#fff}
.btn-wa:hover{background:#15803d}
.btn-tel{background:var(--ink);color:#fff}
.mapa-link{display:inline-flex;gap:8px;font-weight:700;margin-top:10px}

/* reprodutor de vídeo */
dialog.player{border:0;border-radius:var(--r-l);padding:0;width:min(420px,calc(100% - 24px));background:#000;overflow:hidden}
dialog.player::backdrop{background:rgba(15,23,42,.75)}
.player-in{aspect-ratio:9/16;max-height:82vh;width:100%;background:#000}
.player-in video,.player-in iframe{width:100%;height:100%;border:0;display:block}
.player .gate-x{z-index:2}
.rev-intro{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:34px}
.rev-intro div{border:1.5px solid var(--line);border-radius:var(--r-m);padding:18px}
.rev-intro i{color:var(--brand-ink);font-size:20px;margin-bottom:8px}
.rev-intro b{display:block;font:700 17px var(--font-d);margin-bottom:4px}
.rev-intro span{font-size:14px;color:var(--ink-2)}
.filtros-linha{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:22px}
.filtros-linha .f-in{width:auto;min-width:170px}

@media (max-width:1040px){.perfis{grid-template-columns:1fr 1fr}.det{grid-template-columns:1fr}.rev-intro{grid-template-columns:1fr}}
@media (max-width:600px){.perfis{grid-template-columns:1fr}.fld-row,.fld-row3{grid-template-columns:1fr}.card-form{padding:20px}.capa{height:170px}}
@media (prefers-reduced-motion:reduce){.mo-bg,.mo-bg .orb,.mo-bg .grade{animation:none!important}}
[hidden]{display:none!important}
.slip textarea{width:100%;padding:12px 14px;border:1.5px solid var(--line);border-radius:var(--r-s);font:500 15px var(--font-b);color:var(--ink);background:#fff;resize:vertical;min-height:70px}
.slip textarea:focus{border-color:var(--ink);outline:none;box-shadow:0 0 0 3px rgba(255,106,0,.35)}
.slip-res .acts .btn-line{color:var(--ink)}
.wall-claro{background:var(--brand-tint);color:var(--ink);border:1.5px solid #ffd9b8}
.wall-claro p{color:var(--ink-2)}
.wall .app-btns{margin-top:16px}
.hero .app-btns{margin-top:26px}

/* correções v3.1 */
.mo .slip h2{color:var(--ink);text-shadow:none}
.mo .slip p,.mo .slip label{color:inherit;text-shadow:none}
.sh,.sh:hover{text-decoration:none}
.sh h3{color:#fff}
.mo::after{background:linear-gradient(90deg,rgba(100,26,0,.30),rgba(100,26,0,0) 66%)}
.mo-bg{background:linear-gradient(115deg,#c23900 0%,#d94300 42%,#ea5a00 100%);background-size:220% 220%}
.hdr .wrap{gap:16px}
.nav>a,.mais summary{padding:8px 9px;font-size:14px}

/* redes sociais */
.redes-ft{margin-top:22px}
.redes-ft h4{margin-bottom:10px}
.redes-ic{display:flex;gap:10px}
.redes-ic a{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.12);color:#fff;font-size:18px;transition:background .15s,transform .15s}
.redes-ic a:hover{background:var(--brand);color:var(--ink);transform:translateY(-2px)}
.redes-sec{display:grid;grid-template-columns:1fr 1.4fr;gap:36px;align-items:center;border:1.5px solid var(--line);border-radius:var(--r-l);padding:34px}
.redes-sec h2{font-size:clamp(24px,2.6vw,34px);font-weight:800;margin-bottom:8px}
.redes-sec p{color:var(--ink-2)}
.redes-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px}
.rede-card{border:1.5px solid var(--line);border-radius:var(--r-m);padding:18px 14px;display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;background:#fff}
.rede-i{width:46px;height:46px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font-size:20px}
.rede-card b{font:700 16px var(--font-d)}
.rede-lnk{font-size:13px;color:var(--muted);text-decoration:underline}
@media (max-width:860px){.redes-sec{grid-template-columns:1fr;padding:24px}}
@media (max-width:1380px) and (min-width:1181px){
  .hdr .wrap{gap:10px}
  .nav{margin-left:0}
  .nav>a,.mais summary{padding:8px 7px;font-size:13.5px}
  .hdr-cta{gap:8px}
  .hdr-cta .btn{padding:9px 13px}
  .hdr-link{font-size:13.5px}
  .logo{font-size:18px}
  .logo-mark{width:30px;height:30px}
}

/* ============ v4: fundo animado novo (sem grelhas nem degradês) ============ */
.mo{background:#d44200}
.mo::after{display:none}
.mo-bg{background:none;animation:none;z-index:-1}
.mo-bg .orb,.mo-bg .grade{display:none}
.flt{position:absolute;bottom:-70px;color:rgba(255,255,255,.22);animation:mo-sobe linear infinite;will-change:transform}
.flt i{display:block}
.f1{left:4%;font-size:30px;animation-duration:20s;animation-delay:-2s}
.f2{left:13%;font-size:46px;animation-duration:27s;animation-delay:-14s}
.f3{left:22%;font-size:26px;animation-duration:18s;animation-delay:-8s}
.f4{left:31%;font-size:40px;animation-duration:24s;animation-delay:-19s}
.f5{left:41%;font-size:32px;animation-duration:21s;animation-delay:-5s}
.f6{left:50%;font-size:50px;animation-duration:29s;animation-delay:-22s}
.f7{left:59%;font-size:28px;animation-duration:19s;animation-delay:-11s}
.f8{left:68%;font-size:36px;animation-duration:25s;animation-delay:-3s}
.f9{left:77%;font-size:30px;animation-duration:22s;animation-delay:-16s}
.f10{left:86%;font-size:44px;animation-duration:28s;animation-delay:-9s}
.f11{left:93%;font-size:26px;animation-duration:18s;animation-delay:-13s}
.f12{left:36%;font-size:34px;animation-duration:23s;animation-delay:-26s}
@keyframes mo-sobe{0%{transform:translateY(0) rotate(0);opacity:0}8%{opacity:1}88%{opacity:1}100%{transform:translateY(-125vh) rotate(48deg);opacity:0}}
.ring{position:absolute;right:20%;top:46%;width:300px;height:300px;border:2px solid rgba(255,255,255,.28);border-radius:50%;animation:mo-pulsa 7s ease-out infinite}
.r2{animation-delay:2.3s}.r3{animation-delay:4.6s}
@keyframes mo-pulsa{0%{transform:translate(50%,-50%) scale(.35);opacity:.9}100%{transform:translate(50%,-50%) scale(2.6);opacity:0}}
.onda{position:absolute;left:0;bottom:-2px;width:200%;height:110px}
.onda path{fill:rgba(255,255,255,.11)}
.o-a{animation:mo-onda 17s linear infinite}
.o-b{height:84px;animation:mo-onda 26s linear infinite reverse}
.o-b path{fill:rgba(255,255,255,.17)}
@keyframes mo-onda{to{transform:translateX(-50%)}}
.mo .hero-sub{text-shadow:0 1px 8px rgba(100,26,0,.25)}
@media (prefers-reduced-motion:reduce){.flt,.ring,.onda{animation:none!important}.flt{display:none}}

/* aparecer ao descer a página */
.js [data-rev]{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
.js [data-rev].in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.js [data-rev]{opacity:1;transform:none;transition:none}}

/* trilhos horizontais */
.trilho-wrap{position:relative}
.trilho{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x proximity;padding:6px 4px 20px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.trilho::-webkit-scrollbar{display:none}
.trilho>*{flex:0 0 min(310px,82%);scroll-snap-align:start}
.trilho.tr-sh>*{flex-basis:min(440px,88%);min-height:310px}
.trilho.tr-reels>*{flex-basis:min(215px,58%)}
.trilho.tr-cv>*{flex-basis:min(330px,86%)}
.trilho.tr-fe>*{flex-basis:min(420px,88%);min-height:260px}
.tr-btn{position:absolute;top:calc(50% - 32px);width:46px;height:46px;border-radius:50%;border:0;background:#fff;color:var(--ink);box-shadow:0 10px 24px -6px rgba(15,23,42,.5);cursor:pointer;z-index:3;font-size:16px;transition:transform .15s}
.tr-btn:hover{transform:scale(1.08)}
.tr-prev{left:-12px}.tr-next{right:-12px}
@media (max-width:700px){.tr-btn{display:none}}

/* faixas que correm sozinhas */
.marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.mq-track{display:flex;width:max-content;animation:mq 50s linear infinite}
.marquee:hover .mq-track,.marquee:focus-within .mq-track{animation-play-state:paused}
.marquee.inv .mq-track{animation-direction:reverse;animation-duration:62s}
.mq-grupo{display:flex;gap:14px;padding-right:14px}
.mq-grupo .marca{flex:0 0 150px}
@keyframes mq{to{transform:translateX(-50%)}}
.pills-mq .chip{white-space:nowrap;font-size:15px;padding:9px 18px}
@media (prefers-reduced-motion:reduce){.mq-track{animation:none;width:auto;flex-wrap:wrap}.mq-grupo[aria-hidden="true"]{display:none}.mq-grupo{flex-wrap:wrap}}

/* painéis que se abrem */
.paineis{display:flex;gap:14px;min-height:440px}
.painel{flex:1;min-width:0;border-radius:var(--r-l);padding:26px 24px;background:#fff;border:1.5px solid var(--line);display:flex;flex-direction:column;gap:12px;transition:flex .55s cubic-bezier(.3,.7,.2,1),box-shadow .3s;overflow:hidden}
.painel:nth-child(1){background:var(--brand-tint);border-color:#ffd9b8}
.painel:nth-child(4){background:var(--mist)}
.painel:hover,.painel:focus-within,.paineis:not(:hover):not(:focus-within) .painel:first-child{flex:2.4;box-shadow:0 22px 40px -26px rgba(15,23,42,.5)}
.pn-extra{display:flex;flex-direction:column;gap:14px;opacity:0;max-height:0;overflow:hidden;transition:opacity .4s .12s,max-height .55s}
.painel:hover .pn-extra,.painel:focus-within .pn-extra,.paineis:not(:hover):not(:focus-within) .painel:first-child .pn-extra{opacity:1;max-height:340px}
.painel h3{font-size:22px}
.painel p{color:var(--ink-2);font-size:15px}
.painel ul{margin:0;padding:0;list-style:none;display:grid;gap:8px;font-size:15px}
.painel li{display:flex;gap:10px}
.painel li i{color:var(--ok);margin-top:5px;font-size:13px}
.painel .btn{align-self:flex-start}
@media (max-width:900px){.paineis{flex-direction:column;min-height:0}.painel,.painel:hover,.painel:focus-within{flex:none}.pn-extra{opacity:1;max-height:none}}

/* estados vazios */
.vazio{display:flex;gap:18px;align-items:center;border:2px dashed var(--line);border-radius:var(--r-l);padding:26px 28px;background:#fff}
.vazio>i{font-size:30px;color:var(--brand-ink)}
.vazio b{font:700 18px var(--font-d)}
.vazio p{color:var(--ink-2);margin:4px 0 8px;font-size:15px}

/* cartões de loja e categorias */
.l-cats{display:flex;gap:6px;flex-wrap:wrap;padding:0 18px 12px}
.l-cats span{background:var(--mist);color:var(--ink-2);font:600 12px var(--font-b);padding:4px 10px;border-radius:999px}
.cv{background:#fff;border:1.5px solid var(--line);border-radius:var(--r-l);padding:20px;display:flex;flex-direction:column;gap:14px;transition:border-color .15s,transform .2s}
.cv:hover{border-color:var(--ink);transform:translateY(-3px)}
.cv-top{display:flex;gap:14px;align-items:center;text-decoration:none}
.cv-top b{display:block;font:700 19px/1.15 var(--font-d)}
.cv-top small{color:var(--muted);font-size:13px}
.cv-lojas{display:flex;padding-left:8px}
.cv-l{width:46px;height:46px;border-radius:50%;background:var(--brand-tint);color:var(--brand-ink);border:3px solid #fff;margin-left:-8px;display:grid;place-items:center;font:800 14px var(--font-d);overflow:hidden;text-decoration:none;box-shadow:0 2px 6px rgba(15,23,42,.18);transition:transform .15s}
.cv-l:hover{transform:translateY(-4px) scale(1.06);z-index:2}
.cv-l img{width:100%;height:100%;object-fit:cover}
.cv-sub{display:flex;flex-wrap:wrap;gap:6px}
.cv-sub a{font-size:13px;font-weight:600;color:var(--ink-2);background:var(--mist);padding:4px 10px;border-radius:999px;text-decoration:none}
.cv-sub a:hover{background:var(--ink);color:#fff}
.cv-lnk{margin-top:auto;font-weight:700;text-decoration:none;color:var(--brand-ink)}
.cv-lnk i{margin-left:4px;transition:transform .15s}
.cv-lnk:hover i{transform:translateX(4px)}

/* mapa */
.mapa-box h3{display:flex;gap:8px;align-items:center}
.mapa-frame{aspect-ratio:16/10;border-radius:var(--r-m);overflow:hidden;border:1.5px solid var(--line);background:var(--mist);margin-top:10px}
.mapa-frame iframe{width:100%;height:100%;border:0}

/* livro de produtos */
.livro{max-width:1060px;margin:0 auto;position:relative}
.livro-fonte{list-style:none;margin:0;padding:0;display:flex;gap:16px;overflow-x:auto}
.livro-fonte>li{flex:0 0 min(300px,80%)}
.livro-pronto .livro-fonte{display:none}
.livro-palco{position:relative;perspective:2600px;aspect-ratio:2/1.06;width:100%;filter:drop-shadow(0 34px 30px rgba(15,23,42,.2));outline-offset:6px}
.livro-palco::after{content:"";position:absolute;left:calc(50% - 16px);top:0;width:32px;height:100%;background:linear-gradient(90deg,transparent,rgba(15,23,42,.16) 50%,transparent);pointer-events:none;z-index:999}
.pag-fixa{position:absolute;top:0;width:50%;height:100%;background:var(--paper);border:1.5px solid var(--line);display:grid;place-items:center;text-align:center;padding:30px}
.pag-esq{left:0;border-radius:16px 0 0 16px}
.pag-dir{right:0;border-radius:0 16px 16px 0}
.livro-capa{display:grid;gap:10px;justify-items:center;color:var(--ink-2);max-width:260px}
.livro-capa i{font-size:42px;color:var(--brand)}
.livro-capa b{font:800 22px var(--font-d);color:var(--ink)}
.livro-capa button{border:0;background:var(--ink);color:#fff;font:700 14px var(--font-b);padding:10px 18px;border-radius:999px;cursor:pointer}
.folha{position:absolute;top:0;left:50%;width:50%;height:100%;transform-origin:left center;transform-style:preserve-3d;transition:transform 1.05s cubic-bezier(.55,.05,.25,1)}
.folha.virada{transform:rotateY(-180deg)}
.face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;background:#fff;border:1.5px solid var(--line);overflow:hidden}
.f-frente{border-radius:0 16px 16px 0}
.f-verso{transform:rotateY(180deg);border-radius:16px 0 0 16px}
.f-vazio{background:var(--paper)}
.face .card{height:100%;border:0;border-radius:0;box-shadow:none}
.face .p-img{aspect-ratio:auto;flex:1;min-height:0}
.face .p-body{flex:0 0 auto;padding:18px 22px 22px}
.face .p-name{font-size:21px}
.uma{overflow:hidden;aspect-ratio:auto;height:520px;border-radius:16px}
.uma::after{display:none}
.uma .pag-fixa{display:none}
.uma .folha{left:0;width:100%}
.uma .f-frente{border-radius:16px}
.uma .f-verso{display:none}
.livro-ctrl{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:22px}
.livro-ctrl button{width:48px;height:48px;border-radius:50%;border:2px solid var(--ink);background:#fff;color:var(--ink);cursor:pointer;font-size:15px;transition:background .15s,color .15s}
.livro-ctrl button:hover,.livro-ctrl button[aria-pressed="true"]{background:var(--ink);color:#fff}
.livro-pag{min-width:96px;text-align:center;font-weight:700;color:var(--muted);font-size:14px}
@media (prefers-reduced-motion:reduce){.folha{transition:none}}
@media (max-width:760px){.livro-palco{aspect-ratio:auto;height:520px}}

/* produto: página dentro do shopping etc. */
.sec-livro .sec-head{margin-bottom:26px}

/* lojas de um shopping: nuvem de etiquetas, não grelha */
.nuvem{display:flex;flex-wrap:wrap;gap:12px}
.nv{display:flex;align-items:center;gap:12px;border:1.5px solid var(--line);border-radius:999px;padding:8px 18px 8px 8px;background:#fff;text-decoration:none;transition:border-color .15s,transform .15s}
.nv:hover{border-color:var(--ink);transform:translateY(-2px)}
.nv .l-logo{width:44px;height:44px;border-radius:50%;font-size:14px}
.nv b{display:block;font:700 15px/1.15 var(--font-d)}
.nv small{color:var(--muted);font-size:12.5px}
.mo .slip::before,.mo .slip::after{background:radial-gradient(circle at 8px 0,#d44200 6px,transparent 6.5px) 0 0/16px 10px repeat-x}

/* ============ v5: procura nas categorias, menu da conta, chat, cotações e perfil ============ */
.combo{position:relative}
.combo-in{width:100%;padding:13px 40px 13px 14px;border:1.5px solid var(--line);border-radius:var(--r-s);font:500 15px var(--font-b);color:var(--ink);background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%235b6b80' stroke-width='2.5' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 14px center}
.combo-in:focus{border-color:var(--ink);outline:none;box-shadow:0 0 0 3px rgba(255,106,0,.3)}
.combo-lista{position:absolute;z-index:30;left:0;right:0;top:calc(100% + 6px);max-height:300px;overflow:auto;margin:0;padding:6px;list-style:none;background:#fff;border:1.5px solid var(--ink);border-radius:var(--r-m);box-shadow:0 24px 40px -18px rgba(15,23,42,.5);text-align:left}
.combo-lista li{padding:10px 12px;border-radius:10px;cursor:pointer;display:flex;justify-content:space-between;gap:10px;align-items:baseline;color:var(--ink);font-size:15px;font-weight:600}
.combo-lista li small{color:var(--muted);font-weight:500;font-size:12.5px;white-space:nowrap}
.combo-lista li[aria-selected="true"]{background:var(--brand-tint)}
.combo-lista li.combo-vazio{cursor:default;color:var(--muted);font-weight:500}
.slip .combo-in{padding:12px 38px 12px 14px}

/* conta no cabeçalho */
.bell{position:relative;width:42px;height:42px;display:grid;place-items:center;border-radius:50%;color:var(--ink);text-decoration:none;font-size:18px}
.bell:hover{background:var(--mist)}
.bell b{position:absolute;top:2px;right:0;min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:var(--brand);color:var(--ink);font:800 11px/19px var(--font-b);text-align:center}
.um{position:relative}
.um summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:8px;padding:4px 10px 4px 4px;border-radius:999px;border:1.5px solid var(--line);font-weight:700;font-size:14px}
.um summary::-webkit-details-marker{display:none}
.um summary:hover,.um[open] summary{border-color:var(--ink)}
.av{width:32px;height:32px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font:800 14px var(--font-d)}
.um-lista{left:auto;right:0}
@media (max-width:1180px){.um summary{border:0;padding:6px 0}.um-lista{position:static;border:0;box-shadow:none;padding:0}.um:not([open]) .um-lista{display:none}.hdr.open .um summary{padding:10px 12px}}

/* cotações, pedidos e propostas */
.seguro{display:flex;gap:14px;background:var(--ok-tint);border:1.5px solid #b6e0d9;border-radius:var(--r-m);padding:16px 18px;color:var(--ink)}
.seguro>i{font-size:24px;color:var(--ok);margin-top:2px}
.seguro p{font-size:14.5px;color:var(--ink-2);margin-top:6px}
.opcoes{display:flex;gap:12px;flex-wrap:wrap}
.opcoes label{display:flex;align-items:center;gap:8px;border:1.5px solid var(--line);border-radius:999px;padding:10px 18px;cursor:pointer;font-weight:600}
.opcoes label:has(input:checked){border-color:var(--ink);background:var(--ink);color:#fff}
.nota-peq{font-size:13.5px;color:var(--muted)}
.mais-det{border:1.5px dashed var(--line);border-radius:var(--r-m);padding:12px 16px}
.mais-det summary{cursor:pointer;font-weight:700;list-style:none}
.mais-det summary::-webkit-details-marker{display:none}
.mais-det summary::before{content:"+";display:inline-block;width:20px;color:var(--brand-ink);font-weight:800}
.mais-det[open] summary::before{content:"–"}
.lista-cot{display:grid;gap:10px}
.item-cot{display:flex;justify-content:space-between;align-items:center;gap:14px;border:1.5px solid var(--line);border-radius:var(--r-m);padding:16px 18px;text-decoration:none;background:#fff;transition:border-color .15s,transform .15s}
.item-cot:hover{border-color:var(--ink);transform:translateY(-2px)}
.item-cot b{display:block;font:700 17px var(--font-d)}
.item-cot small{color:var(--muted);font-size:13.5px}
.item-cot-dir{display:flex;align-items:center;gap:12px;flex:none}
.item-cot.nao-lida{border-color:var(--brand);background:var(--brand-tint)}
.prop-n{font-size:13.5px;color:var(--muted);font-weight:600}
.prop{border:1.5px solid var(--line);border-radius:var(--r-m);padding:18px;margin-bottom:14px;background:#fff}
.prop-top{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.prop-preco{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin:14px 0 6px}
.prop-msg{color:var(--ink-2);white-space:pre-line}
.opcao-linha{display:flex;gap:12px;align-items:flex-start;padding:12px 0}
.opcao-linha small{display:block;color:var(--muted)}
.msg-global{margin-top:14px}

/* registo de fornecedor */
.planos-sel{display:grid;gap:12px}
.plano-op{cursor:pointer}
.plano-op input{position:absolute;opacity:0}
.plano-cx{display:grid;gap:4px;border:2px solid var(--line);border-radius:var(--r-m);padding:16px 18px;background:#fff;transition:border-color .15s,box-shadow .15s}
.plano-op input:checked+.plano-cx{border-color:var(--ink);box-shadow:6px 6px 0 var(--brand)}
.plano-op input:focus-visible+.plano-cx{outline:3px solid var(--brand);outline-offset:2px}
.plano-cx b{font:800 18px var(--font-d)}
.plano-cx em{font:700 11px var(--font-b);font-style:normal;background:var(--brand);color:var(--ink);padding:3px 9px;border-radius:999px;margin-left:8px;vertical-align:middle}
.plano-pr{font:800 22px var(--font-d)}
.plano-pr small{font:500 13px var(--font-b);color:var(--muted);margin-left:6px}
.plano-cx>small{color:var(--ink-2);font-size:13.5px}
.plano-cx small i{color:var(--ok);margin-right:6px}

/* chat de ajuda */
.chat{position:fixed;right:20px;bottom:20px;z-index:90;display:flex;flex-direction:column;align-items:flex-end;gap:12px}
.chat-fab{position:relative;width:62px;height:62px;border-radius:50%;border:0;background:var(--brand);color:var(--ink);font-size:26px;cursor:pointer;box-shadow:0 14px 30px -8px rgba(15,23,42,.55);display:grid;place-items:center;transition:transform .15s}
.chat-fab:hover{transform:scale(1.06)}
.chat-pulso{position:absolute;inset:0;border-radius:50%;border:3px solid var(--brand);animation:chat-pulsa 2.4s ease-out infinite;pointer-events:none}
@keyframes chat-pulsa{0%{transform:scale(1);opacity:.8}100%{transform:scale(1.7);opacity:0}}
.chat-bolha{position:relative;max-width:270px;background:#fff;border-radius:18px 18px 4px 18px;padding:16px 18px 16px;box-shadow:0 18px 40px -14px rgba(15,23,42,.5);border:1.5px solid var(--line);animation:chat-entra .5s cubic-bezier(.2,.8,.2,1)}
.chat-bolha p{font-weight:600;font-size:15px;margin:0 22px 12px 0}
@keyframes chat-entra{from{opacity:0;transform:translateY(14px) scale(.96)}to{opacity:1;transform:none}}
.chat-x{position:absolute;top:8px;right:8px;width:30px;height:30px;border:0;background:var(--mist);border-radius:50%;cursor:pointer;font-size:13px;color:var(--ink)}
.chat-painel{width:min(340px,calc(100vw - 40px));background:#fff;border-radius:var(--r-l);overflow:hidden;box-shadow:0 30px 60px -20px rgba(15,23,42,.6);border:1.5px solid var(--line);animation:chat-entra .35s cubic-bezier(.2,.8,.2,1)}
.chat-cab{position:relative;background:var(--ink);color:#fff;padding:18px 20px}
.chat-cab b{display:block;font:800 19px var(--font-d)}
.chat-cab span{font-size:13px;color:#cbd5e1}
.chat-cab .chat-x{background:rgba(255,255,255,.14);color:#fff}
.chat-corpo{padding:16px;display:grid;gap:10px}
.chat-corpo>p{color:var(--ink-2);font-size:14.5px}
.chat-op{display:flex;align-items:center;gap:14px;border:1.5px solid var(--line);border-radius:14px;padding:12px 14px;text-decoration:none;color:var(--ink);background:#fff;cursor:pointer;font-family:var(--font-b);text-align:left;width:100%;transition:border-color .15s,transform .15s}
.chat-op:hover{border-color:var(--ink);transform:translateY(-2px)}
.chat-op>i{width:42px;height:42px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font-size:18px;flex:none}
.chat-wa>i{background:#16a34a}
.chat-op b{display:block;font:700 15px var(--font-d)}
.chat-op small{color:var(--muted);font-size:13px}
.chat-lnk{text-align:center;font-weight:700;font-size:14px;color:var(--brand-ink);padding:4px}
@media (max-width:600px){.chat{right:14px;bottom:14px}.chat-fab{width:56px;height:56px}}
@media (prefers-reduced-motion:reduce){.chat-pulso,.chat-bolha,.chat-painel{animation:none}}
.fld input[type=radio],.fld input[type=checkbox],.opcao-linha input{width:auto;padding:0;box-shadow:none;flex:none}
.opcoes label span{white-space:nowrap}

/* ============ v6: pesquisa global, modal do visitante, WhatsApp, aviso da cotação ============ */
/* campo de pesquisa global */
.gs{position:relative;display:flex;align-items:center;background:#fff;border:2px solid var(--ink);border-radius:999px;padding:0 5px 0 16px;min-width:0}
.gs:focus-within{box-shadow:0 0 0 3px rgba(255,106,0,.4)}
.gs-i{color:var(--muted);margin-right:10px;flex:none}
.gs-in{flex:1;min-width:0;border:0;background:transparent;font:500 15px var(--font-b);padding:11px 0;color:var(--ink);outline:none;-webkit-appearance:none;appearance:none}
.gs-in::-webkit-search-cancel-button{display:none}
.gs-go{flex:none;display:inline-flex;align-items:center;gap:8px;border:0;background:var(--ink);color:#fff;border-radius:999px;padding:9px 16px;font:700 14px var(--font-b);cursor:pointer}
.gs-go:hover{background:var(--brand-ink)}
.gs-go i{display:none}
/* sugestões */
.ls{position:absolute;left:0;right:0;top:calc(100% + 8px);background:#fff;border:1.5px solid var(--line);border-radius:var(--r-m);box-shadow:0 26px 48px -18px rgba(15,23,42,.55);z-index:130;max-height:min(70vh,540px);overflow:auto;padding:8px;text-align:left;color:var(--ink)}
.ls[hidden]{display:none}
.ls-g{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 8px 4px;font:700 12px var(--font-b);letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
.ls-g a{font-size:12px;text-transform:none;letter-spacing:0;color:var(--brand-ink);text-decoration:underline}
.ls-i{display:flex;align-items:center;gap:12px;padding:8px;border-radius:10px;text-decoration:none;color:var(--ink)}
.ls-i:hover,.ls-i.on{background:var(--mist)}
.ls-im{position:relative;width:42px;height:42px;border-radius:10px;background:var(--mist);flex:none;display:grid;place-items:center;color:var(--muted);overflow:hidden}
.ls-im img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:#fff}
.ls-t{display:block;font:700 14.5px/1.25 var(--font-d)}
.ls-s{display:block;font-size:12.5px;color:var(--muted);margin-top:2px}
.ls-all{display:block;text-align:center;padding:11px;margin-top:6px;border-top:1px solid var(--line);font-weight:700;color:var(--brand-ink);text-decoration:none}
.ls-all:hover{background:var(--mist);border-radius:0 0 10px 10px}
.ls-vazio{padding:16px;color:var(--ink-2);font-size:14.5px}
.cnt{font:600 14px var(--font-b);color:var(--muted);background:var(--mist);padding:3px 10px;border-radius:999px;vertical-align:middle;margin-left:6px}
/* pesquisa na página de resultados e na home */
.filt-pesquisa{display:block;margin-top:26px;max-width:720px}
.gs-hero{max-width:560px;padding:0 6px 0 20px;border-color:#fff;box-shadow:0 14px 30px -14px rgba(60,10,0,.6)}
.gs-hero .gs-in{font-size:17px;padding:16px 0}
.gs-hero .gs-go{padding:12px 22px;font-size:15px;background:var(--ink)}
.hero-pesq{margin-top:26px}
.hero-pesq-dica{margin-top:10px;font-size:14px;font-weight:600;color:#fff}
.hero-pesq-dica a{color:#fff;text-decoration:underline;text-underline-offset:3px;margin-right:4px}
/* resultados que mudam enquanto escreve */
[data-live-res]{transition:opacity .15s}
[data-live-res].a-carregar{opacity:.45;pointer-events:none}
/* cabeçalho: logo e pesquisa em cima, menu por baixo */
@media (min-width:1181px){
  :root{--hdr:114px}
  .hdr .wrap{display:grid;grid-template-columns:auto minmax(280px,1fr) auto;grid-template-areas:"logo pesq cta" "nav nav nav";align-items:center;height:auto;padding-top:12px;padding-bottom:4px;gap:6px 28px}
  .hdr .logo{grid-area:logo}
  .hdr .gs-hdr{grid-area:pesq;width:100%;max-width:680px;justify-self:center}
  .hdr .menu{display:contents}
  .hdr .nav{grid-area:nav;margin:0;flex:none;gap:6px;border-top:1px solid var(--line);padding-top:4px}
  .hdr .hdr-cta{grid-area:cta;justify-self:end}
  .hdr .nav>a,.hdr .mais summary{font-size:14.5px;padding:7px 12px}
}
@media (max-width:1180px){
  :root{--hdr:118px}
  .hdr .wrap{flex-wrap:wrap;height:auto;padding-top:10px;padding-bottom:10px;gap:10px}
  .hdr .gs-hdr{order:3;flex:1 0 100%}
  .hdr .gs-in{padding:10px 0}
  .hdr .gs-go span{display:none}
  .hdr .gs-go i{display:inline}
  .hdr .gs-go{padding:9px 13px}
  .hdr.open .menu{top:100%;max-height:calc(100vh - var(--hdr))}
}
/* modal do visitante («para continuar, digite o seu nome e o telefone») */
dialog.vis{max-width:460px}
dialog.vis .gate-in{padding:32px 28px 26px}
dialog.vis form{margin-top:18px;display:grid;gap:14px}
dialog.vis .gate-sm{text-align:left}
dialog.vis .gate-leg{font-size:12.5px;line-height:1.45}
dialog.vis .gate-leg a{text-decoration:underline}
.hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
/* botão flutuante do WhatsApp (à esquerda, para não ficar por cima do chat do Tawk que fica à direita) */
.wa-fab{position:fixed;left:18px;bottom:18px;z-index:90;display:flex;align-items:center;gap:10px;background:#25d366;color:#fff;text-decoration:none;border-radius:999px;padding:0 18px 0 0;height:58px;box-shadow:0 14px 28px -8px rgba(15,23,42,.55);transition:transform .15s,box-shadow .15s}
.wa-fab:hover{transform:translateY(-2px);box-shadow:0 18px 32px -8px rgba(15,23,42,.6)}
.wa-fab i{width:58px;height:58px;display:grid;place-items:center;font-size:32px}
.wa-fab .wa-txt{font:700 15px var(--font-b)}
@media (max-width:600px){.wa-fab{left:14px;bottom:14px;padding:0;height:56px;width:56px;justify-content:center}.wa-fab i{width:56px;height:56px}.wa-fab .wa-txt{display:none}}
/* pedido de cotação em português simples */
.slip-nota{margin-top:10px;font-size:13px;color:var(--muted);text-align:center}
.slip-how{margin-top:16px;border-top:1px dashed var(--line);padding-top:12px;font-size:14px}
.slip-how summary{cursor:pointer;font-weight:700;list-style:none}
.slip-how summary::-webkit-details-marker{display:none}
.slip-how summary::before{content:"?";display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--brand);color:var(--ink);font-weight:800;font-size:13px;margin-right:8px}
.slip-how p{margin:10px 0 6px;color:var(--ink-2)}
.slip-how ol,.cot-aviso ol,.cot-expl ol{margin:8px 0 0 20px;padding:0;color:var(--ink-2)}
.slip-how li,.cot-aviso li,.cot-expl li{margin:4px 0}
.cot-aviso{background:var(--ok-tint);border:1.5px solid #b6e0d9;border-radius:var(--r-m);padding:14px 16px;font-size:14.5px;color:var(--ink)}
.cot-aviso strong{display:block;font:800 18px var(--font-d)}
.aviso.aviso-ok{background:var(--ok-tint);border-style:solid;border-color:#b6e0d9;max-width:none}
.aviso.aviso-ok h3 i{color:var(--ok)}
.cot-expl{margin-bottom:20px}
.cot-expl p{margin:6px 0 0}

/* ============ v7: cards compactos, grelhas para telemóvel/tablet, carrossel de produtos ============ */
/* grelhas: telemóvel 2 colunas (cards pequenos), tablet 3-4, computador 5. Nunca um card a ocupar a largura toda. */
.grid{gap:12px}
.g4,.aud,.g4.compact{grid-template-columns:repeat(2,minmax(0,1fr))}
.g3,.g3.compact{grid-template-columns:minmax(0,1fr)}
@media (min-width:600px){.g4,.g4.compact{grid-template-columns:repeat(3,minmax(0,1fr))}.g3,.g3.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.grid{gap:16px}.aud{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:900px){.g4,.g4.compact{grid-template-columns:repeat(4,minmax(0,1fr))}.g3,.g3.compact{grid-template-columns:repeat(3,minmax(0,1fr))}.aud{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (min-width:1200px){.g4,.g4.compact{grid-template-columns:repeat(5,minmax(0,1fr))}.grid{gap:18px}}
/* card de produto compacto */
.card-p .p-img{aspect-ratio:1/1}
.card-p .p-body{padding:9px 11px 11px;gap:3px}
.card-p .p-cat,.card-p .p-tags,.card-p .p-meta{display:none}
.card-p .p-name{font-size:14px;line-height:1.28;min-height:2.56em}
.card-p .p-loja{font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}
.card-p .p-price{margin-top:auto;padding-top:2px}
.card-p .tag{font-size:14px;padding:3px 9px}
.card-p .tag-q{font-size:12px}
@media (min-width:900px){.card-p .p-name{font-size:15px}.card-p .p-body{padding:11px 13px 13px}}
/* outros cards mais pequenos no telemóvel */
@media (max-width:599px){
  .l-top{padding:12px 12px 0;gap:10px}
  .card .l-top+*{padding-left:12px;padding-right:12px}
  .wall{padding:22px 20px}
  .wall h3{font-size:21px}
  .trilho>*{flex:0 0 min(210px,62%)}
  .trilho{gap:12px}
}
/* tablet: conteúdo em coluna única não fica esticado */
@media (min-width:600px) and (max-width:1040px){
  .det{grid-template-columns:1fr 1fr;gap:26px}
  .hero .slip{max-width:560px}
  .card-form,.empty,.semres,.nota-corr{max-width:760px;margin-left:auto;margin-right:auto}
  .wall{grid-template-columns:1fr auto}
}
@media (min-width:600px) and (max-width:860px){.wall{grid-template-columns:1fr}}
.det img{max-width:100%}
/* carrossel de produtos (swiper): 2 de cada vez no telemóvel */
.swp{position:relative;--por:2;--gap:12px}
.swp-track{display:flex;gap:var(--gap);overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding:4px 2px 8px;outline:none}
.swp-track::-webkit-scrollbar{display:none}
.swp-i{flex:0 0 calc((100% - var(--gap) * (var(--por) - 1)) / var(--por));scroll-snap-align:start;min-width:0;display:flex}
.swp-i>.card{width:100%}
@media (min-width:700px){.swp{--por:3;--gap:16px}}
@media (min-width:1000px){.swp{--por:4}}
@media (min-width:1280px){.swp{--por:5}}
.swp-b{position:absolute;top:42%;transform:translateY(-50%);z-index:2;width:40px;height:40px;border-radius:50%;border:2px solid var(--ink);background:#fff;color:var(--ink);cursor:pointer;display:grid;place-items:center;box-shadow:0 8px 18px -8px rgba(15,23,42,.5)}
.swp-b[hidden],.swp-play[hidden]{display:none}
.swp-b:hover{background:var(--ink);color:#fff}
.swp-prev{left:-6px}.swp-next{right:-6px}
.swp-play{display:flex;margin:10px auto 0;border:1.5px solid var(--line);background:#fff;border-radius:999px;padding:6px 14px;cursor:pointer;color:var(--ink-2);font-size:13px}
.swp-play[hidden]{display:none}
@media (max-width:599px){.swp-b{width:34px;height:34px}.swp-prev{left:-2px}.swp-next{right:-2px}}
@media (prefers-reduced-motion:reduce){.swp-track{scroll-behavior:auto}}
/* pesquisa: correção e «sem resultados» que ajuda */
.nota-corr{background:var(--brand-tint);border:1.5px solid #ffd9b8;border-radius:var(--r-m);padding:10px 14px;margin-bottom:16px;font-size:14.5px}
.nota-corr i{color:var(--brand-ink);margin-right:6px}
.nota-corr a{text-decoration:underline;font-weight:700;margin-left:4px}
.ls-corr{padding:8px 10px;font-size:13px;color:var(--ink-2);background:var(--brand-tint);border-radius:10px;margin-bottom:4px}
.semres{background:#fff;border:1.5px solid var(--line);border-radius:var(--r-l);padding:24px 22px;max-width:860px;margin:0 auto}
.semres h3{font:800 24px/1.2 var(--font-d)}
.semres>p{margin-top:8px;color:var(--ink-2)}
.semres-sug{font-size:15px}
.semres-sug a{display:inline-block;margin-left:6px;padding:3px 12px;border-radius:999px;background:var(--brand-tint);color:var(--brand-ink);font-weight:700;text-decoration:none}
.semres-form{margin-top:16px;background:var(--mist);border-radius:var(--r-m);padding:16px;display:grid;gap:8px}
.semres-form label{font-weight:700;font-size:14px}
.semres-form input,.semres-form select,.semres-form textarea{width:100%;padding:11px 12px;border:1.5px solid var(--line);border-radius:10px;font:inherit;background:#fff}
.semres-row{display:grid;grid-template-columns:1fr 110px;gap:10px}
.semres-form .btn{margin-top:6px;justify-self:start}
.semres-t{margin:22px 0 10px;font-weight:700}
.semres .grid{margin-top:4px}
@media (max-width:599px){.semres{padding:18px 14px}.semres h3{font-size:20px}.semres-form .btn{justify-self:stretch}}
