/* ══════════════════════════════════════════════════════════════════
   GAD · camada de adaptação
   Veste com o sistema do ateliê tudo o que a plataforma gera:
   variações, quantidade, calculadora de frete, carrinho, formulários,
   filtros, paginação e páginas de conta.
   Regra: nunca renomear classe js-*. Só vestir.
   ══════════════════════════════════════════════════════════════════ */

/* ── formulários da plataforma ─────────────────────────────────── */
.form-control,
.form-select,
input[type="text"], input[type="email"], input[type="tel"],
input[type="number"], input[type="search"], input[type="password"],
select, textarea {
  width: 100%;
  background: var(--paper);
  border: 1px solid var(--line);
  border-radius: 0;
  color: var(--fg);
  font-family: var(--f-sans);
  font-size: 15px;
  padding: 13px 15px;
  transition: border-color var(--t-fast) var(--e-out), background var(--t-fast) var(--e-out);
}
.form-control:focus, select:focus, textarea:focus { border-color: var(--gold); outline: 0; }
.form-group { margin-bottom: 14px; }
label, .form-label {
  font-family: var(--f-mono);
  font-size: 11px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--muted);
}

/* ── botões da plataforma herdam o botão do ateliê ─────────────── */
.btn-primary, input[type="submit"].btn-primary {
  background: var(--fg); color: var(--bg); border: 1px solid var(--fg);
}
.btn-secondary { background: transparent; border: 1px solid var(--line); color: var(--fg); }
.btn-block { width: 100%; display: flex; } /* v4.2: flex (não block) para o .btn continuar centralizando o texto */
.btn.loading, .btn[disabled], input[type="submit"][disabled] { opacity: .5; pointer-events: none; }
input[type="submit"].nostock { background: var(--line); border-color: var(--line); color: var(--muted); }

/* ── variações (seletor de tamanho) ────────────────────────────── */
.pdp-variants .form-group { margin-bottom: 18px; }
.pdp-variants label { display: block; margin-bottom: 8px; }
.pdp-variants select {
  background: var(--paper) url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236E6355' stroke-width='1.6'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 14px center/16px;
  appearance: none; padding-right: 42px; cursor: pointer;
}
.js-variation-option-button, .btn-variant {
  display: inline-flex; align-items: center; justify-content: center;
  min-width: 84px; padding: 11px 16px; margin: 0 8px 8px 0;
  border: 1px solid var(--line); background: var(--paper);
  font-family: var(--f-mono); font-size: 12px; letter-spacing: .04em;
  cursor: pointer; transition: all var(--t-fast) var(--e-out);
}
.js-variation-option-button:hover { border-color: var(--fg); }
.js-variation-option-button.selected, .btn-variant.active { background: var(--fg); border-color: var(--fg); color: var(--bg); }

/* ── quantidade ────────────────────────────────────────────────── */
.pdp-qty { margin: 0 0 16px; }
.pdp-qty .item-quantity, .pdp-qty .input-group {
  display: inline-flex; align-items: center; border: 1px solid var(--line); background: var(--paper);
}
.pdp-qty input { width: 62px; text-align: center; border: 0; }
.pdp-qty .btn, .pdp-qty button { width: 42px; height: 46px; background: transparent; border: 0; color: var(--fg); }

/* ── calculadora de frete e prazo ──────────────────────────────── */
.pdp-shipping { border-top: 1px solid var(--line); padding-top: 20px; }
.pdp-shipping .shipping-calculator-head { position: relative; }
.pdp-shipping .js-shipping-input { max-width: 190px; display: inline-block; }
.pdp-shipping .js-calculate-shipping,
.pdp-shipping .btn { margin-left: 8px; }
.shipping-calculator-item, .js-shipping-method {
  display: flex; align-items: baseline; justify-content: space-between; gap: 12px;
  padding: 12px 0; border-bottom: 1px solid var(--line-2);
  font-size: 14px;
}
.shipping-calculator-item strong, .js-shipping-method strong { font-family: var(--f-mono); }
.shipping-calculator-item .shipping-method-name { color: var(--fg); }
.pdp-shipping.has-answer { border-left: 2px solid var(--gold); padding-left: 16px; }
.free-shipping-message, .js-free-shipping-message { color: var(--gold-d); font-family: var(--f-mono); font-size: 12px; }

/* ── carrinho (gaveta e página) ────────────────────────────────── */
.drawer-body .cart-row { padding: 0; }
.cart-item, .js-cart-item {
  display: grid; grid-template-columns: 76px 1fr auto; gap: 14px;
  padding: 16px 0; border-bottom: 1px solid var(--line-2); align-items: start;
}
.cart-item img, .js-cart-item img { width: 76px; height: 76px; object-fit: cover; }
.cart-item .item-name { font-family: var(--f-display); font-size: 16px; }
.cart-totals, .js-cart-totals { border-top: 1px solid var(--line); padding-top: 14px; margin-top: 8px; }
.cart-totals .row, .js-cart-totals .row { display: flex; justify-content: space-between; padding: 5px 0; }
.cart-page { max-width: 860px; margin-inline: auto; }

/* ── alertas e notificações ────────────────────────────────────── */
.alert {
  border: 1px solid var(--line); border-left: 2px solid var(--gold);
  background: var(--paper); padding: 14px 16px; font-size: 14px; margin: 12px 0;
}
.alert-success { border-left-color: var(--moss); }
.alert-danger, .alert-warning { border-left-color: var(--clay); }

/* ── filtros, ordenação e paginação ────────────────────────────── */
.filters-overlay { position: absolute; inset: 0; background: rgba(0,0,0,.04); }
.pagination, .js-pagination { display: flex; gap: 8px; justify-content: center; padding: 40px 0; }
.pagination a, .pagination span {
  min-width: 40px; height: 40px; display: inline-flex; align-items: center; justify-content: center;
  border: 1px solid var(--line); font-family: var(--f-mono); font-size: 12px;
}
.pagination .active, .pagination a:hover { background: var(--fg); color: var(--bg); border-color: var(--fg); }
.modal, .modal-content { background: var(--bg); color: var(--fg); }
.modal-overlay { position: fixed; inset: 0; background: rgba(16,14,11,.5); z-index: 90; }

/* ── newsletter ────────────────────────────────────────────────── */
.newsletter .input-append { display: flex; gap: 8px; }
.newsletter .input-append input { flex: 1; }

/* ── páginas de conta ──────────────────────────────────────────── */
.template-account-login, .template-account-register, .template-account-info,
.template-account-orders, .template-account-order, .template-account-addresses {
  padding-top: calc(var(--nav-h) + 40px);
}
.template-account-login main .container, .template-account-register main .container { max-width: 520px; }

/* ── grade com densidade escolhida pelo visitante ──────────────── */
#grid[data-cols="4"] > .js-item-product { flex: 0 0 50%; max-width: 50%; }
@media (min-width: 768px) {
  #grid[data-cols="4"] > .js-item-product { flex: 0 0 25%; max-width: 25%; }
  #grid[data-cols="3"] > .js-item-product { flex: 0 0 33.3333%; max-width: 33.3333%; }
}

/* ── itens do carrossel ────────────────────────────────────────── */
.rail-item { flex: 0 0 clamp(230px, 25vw, 330px); scroll-snap-align: start; }

/* ── favoritos no cartão: a geometria é a do protótipo (gad-system.css); aqui só o essencial do botão ── */
.pcard-fav { border: 0; cursor: pointer; }

/* ── madeiras ──────────────────────────────────────────────────── */

/* ── esconde o modal nativo do carrinho: quem abre é a gaveta ──── */
#modal-cart { display: none !important; }


/* ══ complementos de layout do tema (classes novas, sem par no protótipo) ══ */
.pdp-grid{align-items:flex-start}
.pdp-desc{margin-top:clamp(46px,6vw,86px);border-top:1px solid var(--line);padding-top:clamp(30px,4vw,52px)}
.pdp-form{margin-top:22px}
.pdp-pay{font-size:12.5px}
.pdp-main{display:block;width:100%}

/* correção mobile: no toque não existe hover, o aviso de zoom sai de cena
   e o controle de luz ocupa a largura inteira */
@media (max-width: 991px){
  .pdp-zoom{display:none}
  .pdp-dimmer{padding:12px}
  .pdp-dimmer .dimmer{width:100%}
}


/* ══ ponte entre a marcação nativa e o visual do ateliê ══════════ */

/* controles que a plataforma precisa, mas o visitante não vê */
.gad-native{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* botão de adicionar: o input nativo vestido de botão do ateliê */
input[type="submit"].atc{width:100%}
.buybox{min-width:200px}

/* foto acesa sobreposta na galeria */
.gal-main img.gad-lit{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;
  transition:opacity .18s linear;display:block!important}
.gal-main .lb-dark,.gal-main .lb-glow{position:absolute;inset:0;pointer-events:none}
.pdp-dimmer{position:absolute;left:0;right:0;bottom:0;padding:16px;z-index:3}

/* selos de pagamento e envio no rodapé */
.pays{display:flex;flex-wrap:wrap;gap:6px}
.pays img,.icon-logo{width:46px;height:32px;object-fit:contain;background:rgba(246,242,234,.06);
  border:1px solid rgba(246,242,234,.12);padding:3px}



@media (max-width:991px){
  .pdp-dimmer{padding:12px}
  .gal-zoomhint{display:none}
}


/* ══════════════════════════════════════════════════════════════════
   GAD · newsletter (home e rodapé)
   Formulário nativo vestido com o .news do protótipo. As regras genéricas
   de input[type="email"] acima não podem vencer aqui.
   ══════════════════════════════════════════════════════════════════ */
.news.gad-news{display:flex;gap:10px;flex-wrap:wrap}
.news.gad-news input[type="email"]{flex:1;width:auto;min-width:220px;height:54px;padding:0 16px;border:1px solid var(--line);
  background:none;color:var(--fg);font-family:var(--f-sans);font-size:16px;transition:border-color .35s}
.news.gad-news input[type="email"]:focus{border-color:var(--gold)}
.news.gad-news input[type="email"]::placeholder{color:var(--muted)}
.news.gad-news .newsletter-btn{height:54px}
.foot .news.gad-news input[type="email"]{color:var(--bone)}
.foot .news.gad-news input[type="email"]::placeholder{color:rgba(246,242,234,.45)}
.newsletter .alert{text-align:left}
@media (max-width:560px){.news.gad-news input[type="email"]{min-width:0;flex:1 1 100%}.news.gad-news .newsletter-btn{width:100%}}

/* ══════════════════════════════════════════════════════════════════
   GAD · rodapé (complementos ao .foot do protótipo)
   ══════════════════════════════════════════════════════════════════ */
.foot-about{color:rgba(246,242,234,.62);font-weight:300}
.foot-news-text{color:rgba(246,242,234,.62);font-weight:300;font-size:.9rem}
.foot .pays{margin-top:12px}
.foot .sign{color:inherit}

/* ══════════════════════════════════════════════════════════════════
   GAD · cartografia afetiva
   Só o cartão do marco ativo fica visível; cada cartão repete a estrutura
   figura + texto do protótipo.
   ══════════════════════════════════════════════════════════════════ */
.terr-card .terr-slide{display:none;width:100%;gap:20px;align-items:center}
.terr-card .terr-slide.on{display:flex}
.terr-card .terr-slide figure{width:120px;flex:0 0 auto;aspect-ratio:1;overflow:hidden;background:var(--bone-2)}
.terr-card .terr-slide img{width:100%;height:100%;object-fit:cover}
.terr-card .terr-slide > div{min-width:0}
.terr-card .terr-slide .d4{color:var(--fg)}
@media (max-width:640px){
  .terr-card .terr-slide.on{flex-direction:column;align-items:flex-start}
  .terr-card .terr-slide figure{width:100%;aspect-ratio:16/9}
}

/* ══════════════════════════════════════════════════════════════════
   GAD · madeiras com fotografia
   Mesmo cartão .wood do protótipo; com foto real, o veio sintético sai e
   fica só a sombra que garante a leitura da etiqueta.
   ══════════════════════════════════════════════════════════════════ */
.wood-body.wood-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s var(--e-out)}
.wood-body.wood-photo::before{display:none}
.wood-body.wood-photo::after{background:radial-gradient(150% 96% at 50% 122%,rgba(0,0,0,.42),transparent 58%)}
.wood:hover .wood-body.wood-photo img{transform:scale(1.04)}

/* ══════════════════════════════════════════════════════════════════
   GAD · camadas: gaveta do carrinho e busca
   O JavaScript alterna .on nos próprios elementos (como no protótipo) e
   também uma classe no <body>; as duas formas abrem.
   ══════════════════════════════════════════════════════════════════ */
body.cart-open .drawer{transform:none}
/* a gaveta fechada fica fora da tela, mas a sombra dela (-30px/80px) vazava
   uns 100px para dentro da borda direita em todas as páginas claras */
.drawer:not(.on){box-shadow:none}
body.cart-open .drawer{box-shadow:-30px 0 80px rgba(16,14,11,.16)}
body.cart-open .scrim,body.search-open .scrim{opacity:1;visibility:visible}
body.search-open .search{opacity:1;visibility:visible}
body.cart-open,body.search-open,body.menu-open{overflow:hidden}
.search .search-in svg{flex:0 0 auto}
.search .search-in .ibtn{flex:0 0 auto}
.search .search-in input[type="search"]{flex:1;width:auto;font-family:var(--f-display);font-size:clamp(1.6rem,4vw,3rem);
  letter-spacing:-.02em;background:none;border:0;padding:0;color:var(--fg)}
.search .search-in input[type="search"]::placeholder{color:var(--line)}
.search .search-in input[type="search"]::-webkit-search-cancel-button{display:none}
.search-res .js-search-suggest-all-link{display:inline-flex}
.drawer-b .cart-row{padding:0}
.drawer .alert{margin:18px 0}

/* botão de submit nativo: <input> não tem ::before, então o hover ganha cor direta */
input[type="submit"].btn.btn-solid:hover{background:var(--gold);color:var(--ink)}
input[type="submit"].btn.btn-gold:hover{background:var(--ink);color:var(--bone)}
input[type="submit"].btn.btn-ghost:hover{background:var(--fg);color:var(--bg)}
input[type="submit"].btn.btn-light:hover{background:var(--bone);color:var(--ink)}
input[type="submit"].btn.btn-primary{background:var(--ink);color:var(--bone);border:0}
input[type="submit"].btn.btn-primary:hover{background:var(--gold);color:var(--ink)}
[data-theme="dark"] input[type="submit"].btn.btn-primary{background:var(--bone);color:var(--ink)} /* v4.3: "Iniciar compra" sumia no tema escuro */
[data-theme="dark"] input[type="submit"].btn.btn-primary:hover{background:var(--gold);color:var(--ink)}
[data-theme="dark"] input[type="submit"].btn.btn-solid{background:var(--bone);color:var(--ink)}
[data-theme="dark"] input[type="submit"].btn.btn-solid:hover{background:var(--gold)}

/* ══════════════════════════════════════════════════════════════════
   GAD · página 404
   ══════════════════════════════════════════════════════════════════ */
.gad-404{min-height:60vh;display:flex;align-items:center}
.gad-404 .d1{color:var(--line)}

/* ══════════════════════════════════════════════════════════════════
   GAD · estabilização visual do carrinho (em produção desde o carrinho v2)
   Mantém o HTML/JS nativo da Nuvemshop e corrige somente apresentação.
   ══════════════════════════════════════════════════════════════════ */
.template-cart .cart-page, .drawer .cart-page{max-width:1040px;width:100%}
.template-cart .js-cart-item.cart-item, .drawer .js-cart-item.cart-item{display:flex!important;flex-wrap:wrap;grid-template-columns:none!important;gap:0!important;position:relative;align-items:center;padding:22px 0}
.template-cart .js-cart-item > .cart-item-delete, .drawer .js-cart-item > .cart-item-delete{position:absolute;top:22px;right:0;width:auto!important;padding:0;z-index:2}
.template-cart .js-cart-item img, .drawer .js-cart-item img{display:block;width:76px;height:76px;min-width:76px;object-fit:cover;background:var(--bone-2)}
.template-cart #cart-shipping-container .container, .drawer #cart-shipping-container .container,
.template-cart #cart-shipping-container .container-fluid, .drawer #cart-shipping-container .container-fluid{padding-inline:0}
.template-cart .js-fulfillment-info, .drawer .js-fulfillment-info,
.template-cart .js-shipping-calculator-container, .drawer .js-shipping-calculator-container,
.template-cart #cart-shipping-container, .drawer #cart-shipping-container{width:100%}
.template-cart .shipping-calculator-form, .drawer .shipping-calculator-form{width:100%}
.template-cart .shipping-calculator-form .form-row, .drawer .shipping-calculator-form .form-row{width:100%;margin-inline:0}
@media (max-width:767px){
  .template-cart .cart-page{max-width:none}
  .template-cart .js-cart-item img{width:64px;height:64px;min-width:64px}
}

/* ══════════════════════════════════════════════════════════════════
   GAD · carrinho v2 — linha do produto, quantidade, frete e total
   ══════════════════════════════════════════════════════════════════ */
.template-cart #app, .drawer #app{min-height:60vh}
.template-cart #app > .sec-tight:first-child{padding-bottom:18px!important}
.template-cart #app > .sec-tight + .sec-tight{padding-top:18px!important;padding-bottom:72px!important}
.template-cart .cart-page{max-width:1020px!important;width:100%;margin:0 auto}
.template-cart .cart-row, .drawer .cart-row{width:100%}

.gad-cart-line{position:relative;display:grid!important;grid-template-columns:88px minmax(0,1fr) 126px 120px 30px;gap:18px;align-items:center;width:100%;padding:22px 0;margin:0!important;border-bottom:1px solid var(--line)}
.gad-cart-thumb{display:block;width:82px;height:82px;overflow:hidden;border:1px solid var(--line-2);background:var(--bone-2)}
.gad-cart-thumb img{display:block!important;width:100%!important;height:100%!important;min-width:0!important;object-fit:cover}
.gad-cart-thumb-empty{display:block;width:100%;height:100%;background:linear-gradient(135deg,transparent 49.5%,var(--line) 50%,transparent 50.5%),var(--bone-2)}
.gad-cart-copy{min-width:0}
.gad-cart-name{margin:0;font-family:var(--f-display);font-size:18px;font-weight:400;line-height:1.2}
.gad-cart-name a{color:var(--fg)}
.gad-cart-name small{display:block;margin-top:5px;color:var(--muted);font-family:var(--f-sans);font-size:12px;font-weight:400}
.gad-cart-labels{margin-top:7px}
.gad-cart-labels:empty{display:none}
.gad-cart-qty{display:flex;align-items:center;justify-content:center;width:126px;height:42px;border:1px solid var(--line);background:transparent}
.gad-qty-btn{display:grid!important;place-items:center;flex:0 0 38px;width:38px!important;height:40px!important;padding:0!important;border:0!important;background:transparent!important;color:var(--fg);cursor:pointer}
.gad-qty-btn svg{display:block!important;width:11px!important;height:11px!important;max-width:11px!important}
.gad-qty-input-wrap{position:relative;flex:0 0 48px;width:48px;height:40px;border-left:1px solid var(--line-2);border-right:1px solid var(--line-2)}
.gad-qty-input{display:block;width:48px!important;height:40px!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;text-align:center;font-family:var(--f-mono);font-size:12px;appearance:textfield;-moz-appearance:textfield}
.gad-qty-input::-webkit-inner-spin-button,.gad-qty-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.gad-qty-spinner{position:absolute;inset:0;place-items:center;background:var(--bg)}
.gad-qty-spinner[style*="display: block"],.gad-qty-spinner[style*="display:block"]{display:grid!important}
.gad-cart-price{text-align:right;font-family:var(--f-mono);font-size:13px;font-weight:600;white-space:nowrap}
.gad-cart-remove{display:grid;place-items:center;width:30px;height:30px;padding:0;color:var(--muted);background:transparent;cursor:pointer}
.gad-cart-remove svg{width:13px!important;height:13px!important;max-width:13px!important}
.gad-cart-remove:hover{color:var(--clay)}

/* gaveta: a linha fica mais compacta */
.drawer .gad-cart-line{grid-template-columns:72px minmax(0,1fr) auto;gap:12px;padding:18px 0} /* v4.2: 3ª coluna auto — o preço não estoura os 30px do ícone */
.drawer .gad-cart-thumb{width:68px;height:68px}
.drawer .gad-cart-copy{grid-column:2}
.drawer .gad-cart-remove{grid-column:3;grid-row:1;justify-self:end}
.drawer .gad-cart-qty{grid-column:2;grid-row:2;justify-self:start;width:120px}
.drawer .gad-cart-price{grid-column:3;grid-row:2;align-self:center;text-align:right}

/* resumo e frete */
.template-cart .cart-page > .cart-row:last-child, .drawer .cart-page > .cart-row:last-child{padding-top:10px}
.template-cart .cart-page > .cart-row:last-child > .divider, .drawer .cart-page > .cart-row:last-child > .divider{margin:16px 0 24px}
.template-cart #cart-shipping-container, .drawer #cart-shipping-container,
.template-cart #cart-shipping-container.row, .drawer #cart-shipping-container.row{display:block!important;width:100%;margin:0!important}
.template-cart #cart-shipping-container.row > *, .drawer #cart-shipping-container.row > *{width:100%!important;max-width:100%!important;padding-left:0!important;padding-right:0!important}
.template-cart .js-shipping-calculator-container.container-fluid, .drawer .js-shipping-calculator-container.container-fluid{padding:0!important}
.shipping-calculator-head{width:100%;overflow:visible}
.template-cart .shipping-calculator-head.with-form, .drawer .shipping-calculator-head.with-form{height:112px!important}
.template-cart .shipping-calculator-head.with-zip, .drawer .shipping-calculator-head.with-zip{height:64px!important}
.template-cart .shipping-calculator-head.with-error, .drawer .shipping-calculator-head.with-error{height:184px!important}
.shipping-calculator-form{left:0;right:0;width:100%!important}
.shipping-calculator-form .form-group{display:grid!important;grid-template-columns:minmax(0,1fr) 150px;gap:10px 12px;width:100%;margin:0!important}
.shipping-calculator-form .form-group > .col-12{grid-column:1 / -1;width:100%!important;max-width:100%!important;padding:0!important}
.shipping-calculator-form .form-control-container.col-5{grid-column:1;width:100%!important;max-width:100%!important;padding:0!important}
.shipping-calculator-form .form-group > .col-6{grid-column:2;width:100%!important;max-width:100%!important;padding:0!important}
.shipping-calculator-form .form-control{width:100%!important;height:46px!important;padding:0 13px!important;border:1px solid var(--line)!important;background:var(--paper)!important;font-size:13px}
.shipping-calculator-form .btn{width:100%;height:46px}
.shipping-calculator-form .form-group > .col-12:last-child{margin-top:0}
.shipping-calculator-form .font-small.d-block{margin:6px 0 0!important}
.gad-shipping-kicker{display:block;font-family:var(--f-mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.js-shipping-calculator-with-zipcode{top:0!important;margin:0!important;padding:0!important}
.js-shipping-calculator-with-zipcode .container{padding:0!important}
.js-shipping-calculator-with-zipcode .row{margin:0!important;align-items:center}
.js-shipping-calculator-response{float:none!important;clear:both!important;width:100%!important;margin-top:12px!important}
.js-shipping-calculator-response .form-label{margin-bottom:10px;font-family:var(--f-mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.js-shipping-calculator-response .radio-button-container{display:block!important;width:100%}
.js-shipping-calculator-response .radio-button-item{width:100%}
.js-shipping-calculator-response .radio-button{position:static;opacity:1;pointer-events:auto;display:block;margin:0;cursor:pointer;text-transform:none;letter-spacing:0;font-family:var(--f-sans);font-size:13px;color:var(--fg)}
.js-shipping-calculator-response .list-readonly .radio-button,.list-readonly .js-shipping-calculator-response .radio-button{cursor:default}
.js-shipping-calculator-response .list-item{padding:0 0 8px;border-bottom:0}
.js-shipping-calculator-response .radio-button-icons-container{display:none}
.js-shipping-calculator-response .radio-button-content{display:block!important;width:100%;padding:12px 14px;border:1px solid var(--line);background:var(--paper);color:var(--fg);font-family:var(--f-sans);font-size:13px;line-height:1.45;transition:border-color .25s,box-shadow .25s}
.js-shipping-calculator-response .radio-button:hover .radio-button-content{border-color:var(--fg)}
.js-shipping-calculator-response .js-shipping-method:checked + .radio-button-content,
.js-shipping-calculator-response .radio-button-item.checked .radio-button-content{background:var(--paper);color:var(--fg);border-color:var(--gold);box-shadow:inset 0 0 0 1px var(--gold)}
.js-shipping-calculator-response .radio-button-text .font-small{font-size:13px}
.js-shipping-calculator-response .shipping-price{font-family:var(--f-mono);font-size:13px;font-weight:600}
.js-shipping-calculator-response .js-product-shipping-label{font-family:var(--f-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:10px!important}
.js-shipping-calculator-response .radio-button-label{display:block!important;width:100%}
.js-shipping-calculator-response .radio-button-text.row{margin:0!important}
.js-shipping-calculator-response .icon-inline{width:14px!important;height:14px!important;max-width:14px!important}

/* página da peça: a calculadora precisa de altura para o formulário absoluto */
#product-shipping-container .shipping-calculator-head.with-form{height:118px}
#product-shipping-container .shipping-calculator-head.with-zip{height:64px}
#product-shipping-container .shipping-calculator-head.with-error{height:190px}
#product-shipping-container .js-shipping-calculator-response{margin-top:12px!important}

/* total e CTA */
.template-cart #cart-sticky-summary, .drawer #cart-sticky-summary{padding:0!important}
.template-cart .js-cart-total-container .h2, .drawer .js-cart-total-container .h2{font-size:clamp(28px,3vw,42px)}
.template-cart .js-ajax-cart-submit .btn-primary, .drawer .js-ajax-cart-submit .btn-primary{min-height:50px;letter-spacing:.11em;text-transform:uppercase}
.drawer .js-ajax-cart-submit{display:none!important}   /* na gaveta, quem finaliza é o botão fixo do rodapé */
.drawer .js-cart-total-container .h2{font-size:clamp(22px,2.4vw,30px)}

@media(max-width:767px){
  .template-cart #app > .sec-tight:first-child{padding-bottom:8px!important}
  .template-cart #app > .sec-tight + .sec-tight{padding-top:8px!important}
  .gad-cart-line{grid-template-columns:72px minmax(0,1fr) auto;gap:12px;padding:18px 0}
  .gad-cart-thumb{width:68px;height:68px}
  .gad-cart-copy{grid-column:2}
  .gad-cart-remove{grid-column:3;grid-row:1;justify-self:end}
  .gad-cart-qty{grid-column:2;grid-row:2;justify-self:start;width:120px}
  .gad-cart-price{grid-column:3;grid-row:2;align-self:center}
  .template-cart .shipping-calculator-head.with-form, .drawer .shipping-calculator-head.with-form, #product-shipping-container .shipping-calculator-head.with-form{height:170px!important}
  .shipping-calculator-form .form-group{grid-template-columns:1fr}
  .shipping-calculator-form .form-control-container.col-5,
  .shipping-calculator-form .form-group > .col-6{grid-column:1}
}

#contact-form .g-recaptcha,#contact-form .grecaptcha-badge{margin-top:8px}

/* Madeiras: 5 cartões (Pequiá saiu da produção em set/2026) */
.woods-5{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
@media (max-width:991px){.woods-5{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:767px){
  .woods-5{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;margin-inline:calc(var(--edge) * -1);padding:0 var(--edge) 6px;scroll-padding-inline:var(--edge);scrollbar-width:none}
  .woods-5::-webkit-scrollbar{display:none}
  .woods-5 > div{flex:0 0 56%;scroll-snap-align:start} /* v4.2: cartão mais largo — "Massaranduba" cabe na etiqueta */
}

/* Aviso "o frete não apareceu?" (contorno do bug de carrinho antigo da
   plataforma). Tom de nota do ateliê, não de alerta de sistema. */
.gad-ship-help{clear:both;width:100%;margin:4px 0 16px;padding:14px 16px 14px 18px;border-left:2px solid var(--gold);background:rgba(242,176,30,.07);font-size:.88rem;line-height:1.55;color:var(--fg)}
.gad-ship-help[hidden]{display:none!important}
.gad-ship-help .gad-shipping-kicker{color:var(--gold);margin-bottom:6px}
.gad-ship-help p{margin:0 0 6px;color:var(--muted)}
.gad-ship-help .ln{font-size:.82rem}

/* ══════════════════════════════════════════════════════════════════
   GAD v4 · ajustes de set/2026
   (arquivos CSS renomeados para *-v4.css: o CDN da Nuvemshop estava
   servindo a versão antiga de gad-bootstrap/gad-platform, o que deixava
   os 5 cartões da cartografia visíveis ao mesmo tempo, a gaveta do
   carrinho aberta e o login espremido.)
   ══════════════════════════════════════════════════════════════════ */

/* ── campos com rótulo acima (contato, login) ─────────────────────── */
.gf{display:flex;flex-direction:column;gap:10px}
.gf label{display:block;margin:0;font-family:var(--f-mono);font-size:.64rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);line-height:1.3}
.gf label small{font-size:inherit;letter-spacing:inherit;opacity:.6;text-transform:none;margin-left:4px}
.gf input[type="text"],.gf input[type="email"],.gf input[type="tel"],.gf input[type="password"],.gf textarea{
  width:100%;height:54px;padding:0 16px;margin:0;border:1px solid var(--line);border-radius:0;background:var(--paper);
  font-family:var(--f-sans);font-size:15px;color:var(--fg);transition:border-color .35s var(--e-out),box-shadow .35s var(--e-out)}
.gf textarea{height:auto;min-height:150px;padding:14px 16px;resize:vertical;line-height:1.6}
.gf input::placeholder,.gf textarea::placeholder{color:var(--muted);opacity:.55}
.gf input:focus,.gf textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(242,176,30,.14);outline:0}
.gf:focus-within label{color:var(--gold-d,var(--gold))}
[data-theme="dark"] .gf:focus-within label{color:var(--gold)}

/* ── retrato do manifesto clicável (Rio Panorama) ─────────────────── */
.portrait-link{display:block;width:100%;height:100%}
.portrait-link img{transition:transform 1.2s var(--e-out)}
.portrait-link:hover img{transform:scale(1.035)}

/* ── listagem: painel Refinar ─────────────────────────────────────── */
.cat-side{position:sticky;top:calc(var(--nav-h) + 86px);max-height:calc(100vh - var(--nav-h) - 110px);overflow-y:auto;padding-right:10px;scrollbar-width:thin}
.refine{position:relative}
.refine-head{display:flex;justify-content:space-between;align-items:baseline;padding-bottom:14px;border-bottom:1px solid var(--line)}
.refine-head .eyebrow{margin:0}
.refine-clear{font-family:var(--f-mono);font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-d,var(--gold));text-decoration:underline;text-underline-offset:3px}
.refine-group{padding:20px 0;border-bottom:1px solid var(--line-2)}
.refine-t,.refine .filters-container h6,.refine .filters-container .h6{display:block;margin:0 0 14px;font-family:var(--f-mono);font-size:.63rem;letter-spacing:.17em;text-transform:uppercase;color:var(--fg);font-weight:500}
.refine-links{list-style:none;margin:0;padding:0}
.refine-links li{margin:0}
.refine-links a{display:flex;align-items:center;gap:0;padding:7px 0;font-size:.95rem;color:var(--muted);transition:color .3s}
.refine-links a::before{content:"";width:0;height:1px;margin-right:0;background:var(--gold);transition:width .35s var(--e-out),margin .35s var(--e-out)}
.refine-links a:hover,.refine-links a.on{color:var(--fg)}
.refine-links a:hover::before,.refine-links a.on::before{width:14px;margin-right:10px}
.refine-pills{display:block}
.refine-pill,.refine-more .refine-pill{display:inline-flex;align-items:center;gap:7px;height:34px;padding:0 12px;margin:0 6px 8px 0;
  border:1px solid var(--line);border-radius:99px;cursor:pointer;font-family:var(--f-sans);font-size:.82rem;letter-spacing:0;text-transform:none;
  color:var(--fg);background:transparent;transition:border-color .3s,background .3s,color .3s;user-select:none}
.refine-pill{position:relative}
.refine-pill input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer;appearance:none;-webkit-appearance:none;border:0;background:none;padding:0}
.refine-pill:has(input:focus-visible){outline:2px solid var(--gold);outline-offset:2px}
.refine-pill small{font-family:var(--f-mono);font-size:.6rem;color:var(--muted)}
.refine-pill:hover{border-color:var(--fg)}
.refine-pill.on{background:var(--ink);border-color:var(--ink);color:var(--bone)}
.refine-pill.on small{color:rgba(246,242,234,.6)}
[data-theme="dark"] .refine-pill.on{background:var(--gold);border-color:var(--gold);color:var(--ink)}
[data-theme="dark"] .refine-pill.on small{color:rgba(16,14,11,.6)}
.refine-dot{width:12px;height:12px;border-radius:50%;border:1px solid var(--line)}
.refine-toggle{display:inline-block;margin-top:4px;font-family:var(--f-mono);font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);text-decoration:underline;text-underline-offset:3px}
.refine-price input[type="number"],.refine-price input[type="text"]{height:42px;padding:0 10px;font-size:14px}
.refine-price .btn{margin-top:8px}
.refine-help{padding:20px 0 6px}
.refine-help .ln{font-size:.88rem;margin-top:6px}
.refine .filters-overlay{display:grid;place-items:center;background:rgba(246,242,234,.7);font-family:var(--f-mono);font-size:.66rem;letter-spacing:.14em;text-transform:uppercase}
.chip-filter{gap:8px}
.chip-dot{width:6px;height:6px;border-radius:50%;background:var(--gold);display:inline-block}
.applied{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;margin-bottom:26px}
.applied .chip span{opacity:.7;margin-left:2px}
.applied .ln{font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-left:4px}
#grid[data-cols="2"] > .js-item-product{flex:0 0 50%;max-width:50%}
@media (min-width:768px){ #grid[data-cols="2"] > .js-item-product{flex:0 0 50%;max-width:50%} }
@media (max-width:991px){.filters-r{gap:10px}}

/* ── páginas institucionais (produção, trocas, privacidade) ───────── */
.pg-cta{display:flex;justify-content:space-between;align-items:center;gap:24px 40px;flex-wrap:wrap;padding:clamp(24px,3vw,40px);border:1px solid var(--line);background:var(--paper)}
.pg-cta > div:first-child{max-width:60ch}
.pg-note{padding:clamp(24px,3vw,40px);background:var(--ink);color:var(--bone);--muted:rgba(246,242,234,.66)}
.pg-note .eyebrow{color:var(--gold)}
.pg-note .muted{color:rgba(246,242,234,.66);font-weight:300;line-height:1.75}
.pg-warn{display:flex;gap:14px;align-items:flex-start;padding:18px 20px;border:1px solid var(--line);border-left:2px solid var(--gold);background:var(--paper)}
.pg-warn svg{flex:0 0 18px;width:18px;height:18px;fill:var(--gold);margin-top:3px}
.pg-warn p{margin:0;font-size:.95rem;line-height:1.65}
.pg-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line-2)}
.pg-list li{position:relative;padding:18px 0 18px 30px;border-bottom:1px solid var(--line-2);color:var(--muted);font-weight:300;line-height:1.7}
.pg-list li::before{content:"";position:absolute;left:0;top:30px;width:14px;height:1px;background:var(--gold)}
/* texto legal */
.legal-aside{position:sticky;top:calc(var(--nav-h) + 30px);padding:clamp(20px,2.4vw,30px);border:1px solid var(--line);background:var(--paper)}
.legal-sum{list-style:none;margin:14px 0 0;padding:0}
.legal-sum li{position:relative;padding:10px 0 10px 22px;border-bottom:1px solid var(--line-2);font-size:.9rem;line-height:1.55;color:var(--muted)}
.legal-sum li::before{content:"";position:absolute;left:0;top:19px;width:10px;height:1px;background:var(--gold)}
.legal-contact{margin-top:22px}
.legal-contact p{margin:4px 0;font-size:.92rem}
.prose.legal{max-width:72ch}
.prose.legal h2,.prose.legal h3{font-family:var(--f-display);font-size:clamp(1.3rem,2vw,1.75rem);letter-spacing:-.02em;margin:46px 0 14px;color:var(--fg);font-weight:400}
.prose.legal h2:first-child,.prose.legal h3:first-child{margin-top:0}
.prose.legal p{margin:0 0 14px}
.prose.legal b,.prose.legal strong{color:var(--fg);font-weight:500}
.prose.legal a{color:var(--fg);text-decoration:underline;text-underline-offset:3px}
.legal-date{font-family:var(--f-mono);font-size:.64rem!important;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-d,var(--gold))!important}
@media (max-width:991px){.legal-aside{position:static}}

/* ── login (páginas de conta) ─────────────────────────────────────── */
.template-account-login{padding-top:0}
.acc-split{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);min-height:calc(100svh - var(--nav-h));margin-top:var(--nav-h);border-top:1px solid var(--line-2)}
.acc-media{position:relative;overflow:hidden;background:var(--ink);color:var(--bone)}
.acc-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 45%}
.acc-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(16,14,11,.15) 0%,rgba(16,14,11,.2) 45%,rgba(16,14,11,.85) 100%)}
.acc-media-in{position:absolute;z-index:2;left:clamp(24px,4vw,64px);right:clamp(24px,4vw,64px);bottom:clamp(28px,5vw,72px)}
.acc-media-in .d3{color:var(--bone);line-height:1.05}
.acc-perks{list-style:none;margin:0;padding:0;max-width:40ch}
.acc-perks li{position:relative;padding:9px 0 9px 24px;border-top:1px solid rgba(246,242,234,.16);color:rgba(246,242,234,.78);font-size:.92rem;font-weight:300}
.acc-perks li::before{content:"";position:absolute;left:0;top:19px;width:12px;height:1px;background:var(--gold)}
.acc-form{display:flex;align-items:center;justify-content:center;padding:clamp(40px,6vw,80px) clamp(20px,5vw,72px)}
.acc-box{width:100%;max-width:440px}
.acc-box .crumbs{margin-bottom:10px}
.acc-forgot{font-family:var(--f-mono);font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);text-decoration:underline;text-underline-offset:3px}
.acc-forgot:hover{color:var(--fg)}
.acc-pass{position:relative}
.acc-pass input{padding-right:52px!important}
.acc-eye{position:absolute;right:0;top:0;width:52px;height:54px;display:grid;place-items:center;cursor:pointer;color:var(--muted)}
.acc-eye svg{width:18px;height:18px;fill:currentColor}
.acc-login input[type="submit"]{width:100%}
.acc-alt{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-top:22px;border-top:1px solid var(--line)}
.acc-alt p{margin:0}
.acc-note{line-height:1.6;text-transform:none;letter-spacing:.02em}
@media (max-width:991px){
  .acc-split{grid-template-columns:1fr}
  .acc-media{min-height:300px;order:2}
}
/* v4.1 · painel Refinar: coluna no desktop, gaveta lateral no celular */
.cat-side-top{display:none}
@media (min-width:992px){ .chip-filter{display:none} }
@media (max-width:991px){
  .cat-aside{position:fixed;top:0;bottom:0;left:0;z-index:955;margin:0!important;width:min(400px,90vw);max-width:none;padding:0;background:var(--bg);
    border-right:1px solid var(--line);transform:translateX(-102%);visibility:hidden;transition:transform .5s var(--e-out),visibility 0s linear .5s}
  body.filters-open .cat-aside{transform:none;visibility:visible;transition:transform .5s var(--e-out),visibility 0s}
  .cat-side{position:static;max-height:none;height:100%;overflow-y:auto;padding:0 20px 40px}
  .cat-side-top{display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:2;margin:0 -20px 6px;padding:14px 20px;background:var(--bg);border-bottom:1px solid var(--line)}
  .cat-side-top .mono{font-size:.66rem;letter-spacing:.15em;text-transform:uppercase}
}
.acc-login{margin-top:28px!important}.acc-login .gf + .gf{margin-top:20px!important}
.numbox{height:100%}

/* ══════════════════════════════════════════════════════════════════
   GAD v4.1 · área do cliente, busca e utilidades
   ══════════════════════════════════════════════════════════════════ */
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
/* telas de acesso usam o layout em duas colunas (o respiro vem do .acc-split) */
.template-account-register,.template-account-reset,.template-account-newpass,
.template-account-info,.template-account-orders,.template-account-order,
.template-account-addresses,.template-account-address{padding-top:0}
.acc-login .gf + .gf{margin-top:20px!important}
.acc-login .gf .alert{margin:4px 0 0}
.acc-login .g-recaptcha{margin-top:22px!important}

/* abas da conta */
.dash-tabs{display:flex;gap:4px 26px;flex-wrap:wrap;border-bottom:1px solid var(--line)}
.dash-tabs a{position:relative;padding:14px 0;font-family:var(--f-mono);font-size:.66rem;letter-spacing:.15em;text-transform:uppercase;color:var(--muted);transition:color .3s}
.dash-tabs a::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .45s var(--e-out)}
.dash-tabs a:hover,.dash-tabs a.on{color:var(--fg)}
.dash-tabs a.on::after{transform:scaleX(1)}
.dash-tabs .dash-out{margin-left:auto}
.dash-aside{position:sticky;top:calc(var(--nav-h) + 30px)}
.dash-dl{display:grid;grid-template-columns:auto 1fr;gap:8px 16px;margin:0 0 14px;font-size:.92rem}
.dash-dl dt{font-family:var(--f-mono);font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);padding-top:3px}
.dash-dl dd{margin:0;color:var(--fg);word-break:break-word}
.dash-addr{font-size:.92rem;line-height:1.6;color:var(--muted)}
.dash-help{padding-top:18px;border-top:1px solid var(--line-2)}
.dash-help .ln{font-size:.9rem;margin-top:6px}
.dash-empty{border:1px dashed var(--line);padding:clamp(40px,6vw,80px) 24px}
@media (max-width:991px){.dash-aside{position:static}}

/* pedidos */
.orders{display:flex;flex-direction:column;gap:14px}
.ocard{display:grid;grid-template-columns:104px 1fr;gap:20px;padding:16px;border:1px solid var(--line);background:var(--paper);transition:border-color .35s}
.ocard:hover{border-color:var(--gold)}
.ocard-fig{position:relative;display:block;aspect-ratio:1;background:var(--bone-2);overflow:hidden}
.ocard-fig img{width:100%;height:100%;object-fit:cover}
.ocard-n{position:absolute;right:6px;bottom:6px;padding:2px 7px;background:var(--ink);color:var(--bone);font-family:var(--f-mono);font-size:.6rem}
.ocard-total{font-family:var(--f-display);font-size:1.35rem;letter-spacing:-.01em}
.ostat{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 10px;border:1px solid var(--line);border-radius:99px;font-family:var(--f-mono);font-size:.58rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.ostat::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.6}
.ostat-paid{color:var(--moss,#5b6b3a);border-color:currentColor}
.ostat-pending,.ostat-authorized{color:var(--gold-d,#b07d0f);border-color:currentColor}
.ostat-voided,.ostat-refunded,.ostat-abandoned{color:var(--clay,#9a4b32);border-color:currentColor}
[data-theme="dark"] .ostat-pending,[data-theme="dark"] .ostat-authorized{color:var(--gold)}
@media (max-width:560px){.ocard{grid-template-columns:72px 1fr;gap:14px}}
.oitems{border-top:1px solid var(--line)}
.oitem{display:grid;grid-template-columns:72px 1fr auto;gap:18px;align-items:center;padding:16px 0;border-bottom:1px solid var(--line-2)}
.oitem-fig{aspect-ratio:1;background:var(--bone-2);overflow:hidden}
.oitem-fig img{width:100%;height:100%;object-fit:cover}
.oitem-t{font-family:var(--f-display);font-size:1.1rem;margin:0}
.osum{margin-left:auto;max-width:420px;display:flex;flex-direction:column;gap:10px}
.osum > div{display:flex;justify-content:space-between;gap:20px;font-size:.94rem;color:var(--muted)}
.osum .osum-total{padding-top:12px;border-top:1px solid var(--line);color:var(--fg);font-family:var(--f-display);font-size:1.6rem}

/* endereços */
.addr-card{display:flex;flex-direction:column;height:100%;min-height:190px;padding:clamp(20px,2.4vw,28px);border:1px solid var(--line);background:var(--paper);transition:border-color .35s}
.addr-card.is-main{border-color:var(--gold)}
.addr-card .ln{margin-top:auto;padding-top:14px}
.addr-new{align-items:center;justify-content:center;gap:10px;border-style:dashed;background:transparent;color:var(--muted)}
.addr-new:hover{border-color:var(--gold);color:var(--fg)}
.addr-plus{font-family:var(--f-display);font-size:2.4rem;line-height:1;color:var(--gold)}
.addr-new .mono{font-size:.66rem;letter-spacing:.15em;text-transform:uppercase}
.sel-field select{height:54px;padding:0 40px 0 16px;font-family:var(--f-sans);font-size:15px;letter-spacing:0;text-transform:none;color:var(--fg);appearance:none;-webkit-appearance:none}

/* busca */
.srch-form{display:flex;gap:10px}
.srch-form input[type="search"]{flex:1;height:54px;padding:0 16px;border:1px solid var(--line);background:var(--paper);font-size:15px}
.srch-form input[type="search"]:focus{border-color:var(--gold)}
.srch-form .btn{height:54px;--bh:54px}
@media (max-width:560px){.srch-form{flex-direction:column}.srch-form .btn{width:100%}}
/* avisos nativos (cookies / última compra) */
.gad-note{position:fixed;z-index:935;left:16px;right:16px;bottom:16px;max-width:560px;display:flex;align-items:center;gap:16px;padding:16px 18px;
  background:var(--ink);color:var(--bone);border:1px solid rgba(246,242,234,.12);box-shadow:0 20px 50px -20px rgba(0,0,0,.5);font-size:.88rem;line-height:1.5}
.gad-note p{margin:0;color:rgba(246,242,234,.8)}
.gad-note .ln{color:var(--gold)}
.gad-note .btn{flex:0 0 auto}
.gad-note .btn-solid{background:var(--gold);color:var(--ink)} /* v4.3: valia só no tema escuro; no claro o "Entendi" ficava sem forma */
.gad-note-order{top:calc(var(--nav-h) + 12px);bottom:auto;right:16px;left:auto}
.gad-note .ibtn{color:var(--bone)}
@media (max-width:560px){.gad-note{flex-direction:column;align-items:flex-start}}
.gad-note[style*="block"]{display:flex!important}

/* ── v4.1 · correções da auditoria ──────────────────────────────── */
/* modais nativos (parcelas, frete, filtros) acima da nav e da busca */
.modal{z-index:970}
.modal-overlay{z-index:965}
.modal-zindex-top{z-index:975}
/* botão flutuante não cobre a barra fixa da peça no celular */
body:has(.pdpbar.on) .fab{bottom:92px}
/* anel de foco visível no teclado em campos e selects */
.form-control:focus-visible,select:focus-visible,textarea:focus-visible,input:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
/* variantes do tema escuro dos blocos novos */
[data-theme="dark"] .refine .filters-overlay{background:rgba(16,14,11,.72);color:var(--bone)}
[data-theme="dark"] .pg-note{background:var(--ink-3);border:1px solid var(--line)}
figure.portrait{margin:0}
.template-account-info .acc-login input[type="submit"],.template-account-address .acc-login input[type="submit"]{width:auto}

/* v4.3 · crédito "Nuvemshop" no rodapé (obrigatório): mesmo tom discreto da barra final */
.foot-powered{display:inline-flex;align-items:center}
.foot-powered a{color:inherit;display:inline-flex;align-items:center;gap:6px;transition:color .3s}
.foot-powered a:hover{color:var(--gold)}
.foot-powered img,.foot-powered svg{height:14px;width:auto;opacity:.55;transition:opacity .3s}
.foot-powered a:hover img,.foot-powered a:hover svg{opacity:1}


/* v4.8 · âncoras do menu para seções da home */
#quem-faz,
#sob-encomenda {
  scroll-margin-top: calc(var(--nav-h, 76px) + 18px);
}
