/* ===== UX pass (carregado depois de site.css) ===== */
:focus-visible{outline:3px solid var(--gold);outline-offset:2px;border-radius:6px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
[hidden]{display:none!important}
.btn{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px}
.btn-sm{min-height:38px}
.btn-wa{background:#1fa855}.btn-wa:hover{background:#178a45}
.btn-block{display:flex;width:100%}
.btn:disabled{opacity:.6;cursor:wait}
.nav a[aria-current=page]:not(.btn){color:var(--red);box-shadow:0 2px 0 var(--red)}

/* seletor de unidade */
.unit{position:relative}
.unit summary{list-style:none;cursor:pointer;display:flex;flex-direction:column;line-height:1.15;padding:4px 14px 4px 0;position:relative}
.unit summary::-webkit-details-marker{display:none}
.unit summary:after{content:"▾";position:absolute;right:0;top:50%;transform:translateY(-50%);font-size:.8rem}
.unit small{font-size:.65rem;text-transform:uppercase;letter-spacing:.06em;color:var(--gray)}
.unit strong{font-size:.9rem}
.unit-menu{position:absolute;right:0;top:calc(100% + 8px);background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 30px rgba(0,0,0,.12);min-width:160px;padding:6px;z-index:60}
.unit-menu a{display:block;padding:10px 12px;border-radius:8px;font-weight:600}
.unit-menu a:hover,.unit-menu a[aria-current]{background:var(--cream);text-decoration:none}
.unit-menu a[aria-current]:after{content:" ✓";color:var(--red)}

/* WhatsApp flutuante */
.wa-fab{position:fixed;right:18px;bottom:18px;z-index:40;background:#1fa855;color:#fff;border-radius:999px;padding:13px 18px;display:flex;align-items:center;gap:8px;font-weight:700;box-shadow:0 8px 24px rgba(0,0,0,.25)}
.wa-fab:hover{background:#178a45;text-decoration:none}

/* hero com fotos */
.hero{padding:70px 0 60px}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center}
.hero-in{margin:0;max-width:none}
.hero-shots{position:relative;height:430px}
.shot{position:absolute;width:44%;border-radius:18px;overflow:hidden;box-shadow:0 20px 40px rgba(0,0,0,.45);border:3px solid rgba(255,255,255,.12);background:#222;transition:.3s}
.shot img{width:100%;aspect-ratio:4/5;object-fit:cover}
.s1{left:0;top:40px;transform:rotate(-5deg)}.s2{left:28%;top:0;transform:rotate(2deg);z-index:2}.s3{right:0;top:60px;transform:rotate(6deg)}
.shot:hover{transform:translateY(-6px) rotate(0);z-index:3}

/* barra de ferramentas (filtros + busca) */
.toolbar{position:sticky;top:57px;z-index:30;background:rgba(249,247,242,.96);backdrop-filter:blur(8px);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:18px}
.toolbar-in{display:flex;gap:14px;align-items:center;justify-content:space-between;padding:10px 0;flex-wrap:wrap}
.toolbar .chips{margin:0}
.search input{font:inherit;padding:10px 14px 10px 38px;border:1px solid #cfc9bb;border-radius:999px;width:280px;max-width:100%;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='none' stroke='%236b6b6b' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='8' cy='8' r='6'/%3E%3Cpath d='m13 13 4 4'/%3E%3C/svg%3E") 12px center no-repeat}
.search input:focus{outline:2px solid var(--red);border-color:var(--red)}
.chip{min-height:38px;display:inline-flex;align-items:center;gap:6px}
.chip .n{background:#eee;border-radius:999px;font-size:.75rem;padding:0 7px}.chip.on .n{background:#444}
.empty{text-align:center;padding:50px 20px;background:#fff;border:1px dashed #cfc9bb;border-radius:var(--r)}

/* cards */
.card-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:6px}
.card-actions .btn{padding:8px 10px;font-size:.88rem}
.sizes{font-size:.8rem!important;color:var(--gray)!important;font-weight:600}
.dots{display:inline-flex;gap:3px;vertical-align:middle}
.dots i{width:9px;height:9px;border-radius:50%;background:#ddd}.dots i.on{background:var(--red)}
.heat-line{display:flex;align-items:center;gap:8px;font-size:.78rem;color:var(--gray);font-weight:600}
.heat-line.big{font-size:.95rem;margin:14px 0}.heat-line.big .dots i{width:13px;height:13px}
.card-body h3{min-height:2.6em}

/* produto */
.opts{border:0;padding:0;margin:16px 0}
.opts legend{font-weight:700;margin-bottom:8px;padding:0}
.opt input{position:absolute;opacity:0}
.opt span{display:inline-block;border:2px solid #cfc9bb;border-radius:12px;padding:10px 20px;font-weight:700;cursor:pointer;margin:0 8px 8px 0;background:#fff}
.opt input:checked+span{border-color:var(--red);background:#fff3f0;color:var(--red)}
.opt input:focus-visible+span{outline:3px solid var(--gold)}
.cta-row{display:flex;gap:12px;flex-wrap:wrap;margin:18px 0 8px}
.prod-info .btn{margin:0}
.sticky-cta{display:none}

/* locais */
.loc{display:flex;flex-direction:column}
.loc p{flex:1}
.loc-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:6px}
.grupo{margin-bottom:12px}

/* como comprar */
.steps{list-style:none;padding:0;margin:30px 0 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:24px}
.steps li{background:var(--cream);border:1px solid var(--line);border-radius:var(--r);padding:24px}
.steps b{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--red);color:#fff;margin-bottom:10px}
.steps h3{margin-bottom:6px}.steps p{margin:0;color:#555}

/* formulários */
.form input:invalid:not(:placeholder-shown):not(:focus){border-color:#d33}
.btn-wa svg{flex-shrink:0}

@media(max-width:820px){
  .hero-grid{grid-template-columns:1fr}
  .hero-shots{height:300px;order:-1}
  .toolbar-in{flex-direction:column;align-items:stretch;gap:8px}
  .toolbar .chips{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}
  .toolbar .chips::-webkit-scrollbar{display:none}
  .chip{white-space:nowrap}
  .search input{width:100%}
  .unit-menu{left:0;right:auto}
  .wa-fab span{display:none}.wa-fab{padding:14px}
  .sticky-cta{display:block;position:fixed;left:0;right:0;bottom:0;z-index:45;background:#fff;padding:10px 16px;border-top:1px solid var(--line);box-shadow:0 -6px 20px rgba(0,0,0,.08)}
  body:has(.sticky-cta) .wa-fab{display:none}
  body:has(.sticky-cta) .site-footer{padding-bottom:90px}
  .card-actions{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
@media print{.wa-fab,.toolbar,.sticky-cta{display:none!important}}
@media(max-width:820px){.prod{gap:20px}.prod-img img{max-height:52vh;width:100%;object-fit:cover;object-position:center 30%}}
.toolbar-in>*{min-width:0;max-width:100%}
@media(max-width:820px){.toolbar .chips{width:100%}html,body{overflow-x:hidden}}

/* Pergunta da cidade (WhatsApp por vendedor) — aparece só no 1º clique em um botão de WhatsApp */
.wa-dlg{border:0;padding:0;border-radius:20px;width:min(400px,calc(100% - 32px));box-shadow:0 24px 60px rgba(0,0,0,.25);color:var(--dark)}
.wa-dlg::backdrop{background:rgba(26,26,26,.55)}
.wa-dlg .in{padding:26px 22px 20px;position:relative}
.wa-dlg h2{margin:0 0 6px;font-size:1.3rem;padding-right:32px}
.wa-dlg p{margin:0 0 16px;color:var(--gray);font-size:.95rem}
.wa-dlg .wa-x{position:absolute;top:12px;right:12px;width:36px;height:36px;border:0;border-radius:50%;background:var(--cream);font-size:1.3rem;line-height:1;cursor:pointer;color:var(--dark)}
.wa-opts{display:grid;gap:8px}
.wa-opts button{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:50px;padding:0 16px;border:1.5px solid var(--line);border-radius:12px;background:#fff;font:inherit;font-weight:700;font-size:1rem;color:var(--dark);cursor:pointer;text-align:left}
.wa-opts button:after{content:"›";font-size:1.4rem;color:var(--red)}
.wa-opts button:hover,.wa-opts button:focus-visible{border-color:var(--red);background:#fff7f4;outline:0}
.wa-opts button.alt{font-weight:600;color:var(--gray)}
.wa-dlg .fine{font-size:.8rem;margin:14px 0 0;text-align:center}
@media (max-width:600px){
  .wa-dlg{margin:auto auto 0;width:100%;max-width:100%;border-radius:20px 20px 0 0}
  .wa-dlg .in{padding-bottom:calc(20px + env(safe-area-inset-bottom))}
}
.wa-note a{margin-left:4px}
