/* Produto (pagina propria) + pop-up de previa da home -- MESMO arquivo pras
   duas superficies, pra garantir identidade visual identica (contrato do
   modelo aprovado 12/09/2026: Sentient/Switzer, navy/dourado, composicao do
   piloto). Fontes (Fontshare Sentient+Switzer, JetBrains Mono) ja carregadas
   pelo <head> de cada pagina -- nao duplicar aqui. */
:root{--navy:#101d32;--paper:#f5f7fa;--bone:#edf0f6;--muted:#586477;--line:#d8dfe9;--gold:#a8772b}
*{box-sizing:border-box}
.lp-page{color:var(--navy);background:var(--paper);font-family:Switzer,system-ui,sans-serif}
.lp-header{margin:0 auto;max-width:1320px;padding:22px 40px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);gap:24px}
.lp-header .lp-brand img{width:123px;height:56px;object-fit:contain}
.lp-header nav{display:flex;gap:28px;margin-left:auto}
.lp-header nav a{font-size:13px;text-decoration:none;color:var(--muted);padding:10px 0}
.lp-header nav a[aria-current]{color:var(--navy);border-bottom:1px solid var(--gold)}
.lp-header #lp-open-cart{display:flex;align-items:center;gap:8px;border:0;background:transparent;color:var(--navy);font:500 12px Switzer,system-ui,sans-serif;cursor:pointer;padding:10px 0 10px 12px;border-left:1px solid var(--line)}
.lp-header #lp-cart-count{display:grid;place-items:center;min-width:22px;height:22px;border-radius:50%;background:var(--navy);color:#fff;font-size:11px}
.lp-main{max-width:1240px;margin:auto;padding:0 40px}
.lp-breadcrumb{font-size:12px;color:var(--muted);margin:25px 0 30px}
.lp-breadcrumb a{color:var(--muted);text-decoration:none}
.lp-breadcrumb a:hover{color:var(--navy);text-decoration:underline}
.lp-breadcrumb span{padding:0 12px;color:#a0a8b3}
.product-layout{display:grid;grid-template-columns:1.12fr 1fr;gap:64px;align-items:start}
.visual{min-width:0}
.photo{background:#fff;border:1px solid #e6eaf0;aspect-ratio:1;display:grid;place-items:center;padding:24px}
.photo img{width:100%;height:100%;max-height:490px;object-fit:contain}
.photo-caption{display:flex;justify-content:space-between;gap:12px;padding-top:14px;font-size:11px;color:var(--muted)}
.photo-caption span:last-child{font-size:9px;letter-spacing:.12em}
.category{font-size:10px;letter-spacing:.18em;margin:0 0 16px;color:var(--gold)}
h1.lp-h1,h2.lp-h2{font-family:Sentient,Georgia,serif;font-weight:400;letter-spacing:-.04em}
h1.lp-h1{font-size:clamp(36px,4vw,52px);line-height:1.08;margin:0 0 14px}
.subtitle{font-size:17px;margin:0 0 20px}
.description{font-size:14px;line-height:1.65;color:var(--muted);margin:0;max-width:410px}
.tag-row{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}
.stock-tag,.imported-tag{font-size:9px;letter-spacing:.02em;padding:7px 9px;border-radius:2px;white-space:nowrap;display:inline-block}
.stock-tag{background:#f3eadb;border:1px solid #e4d3b5;color:#805a23}
.imported-tag{background:#e9edf5;border:1px solid #ccd6e8;color:#2c3e5c}
.stock-tag[hidden],.imported-tag[hidden]{display:none}
.price-block{padding:26px 0 24px;border-bottom:1px solid var(--line);margin-bottom:23px}
.price-block del{display:block;font-size:14px;color:var(--muted);margin-bottom:3px}
.price-block del[hidden]{display:none}
.price-block strong{font-weight:500;font-size:35px;letter-spacing:-.04em}
.price-block>span{font-size:12px;margin-left:8px;color:var(--muted)}
label{display:block;font-size:12px;font-weight:500;margin-bottom:9px}
select{font:inherit;font-size:14px;color:var(--navy);background:#fff;border:1px solid var(--line);border-radius:3px;width:100%;padding:13px;margin-bottom:18px}
.buy-row{display:flex;gap:12px}
.quantity{display:flex;align-items:center;border:1px solid var(--line);background:#fff;border-radius:3px}
.quantity button{height:50px;width:33px;border:0;background:transparent;color:var(--navy);font-size:21px;cursor:pointer}
.quantity input{width:37px;padding:0;border:0;background:transparent;text-align:center;font:inherit;font-size:15px;-moz-appearance:textfield}
.quantity input::-webkit-inner-spin-button{appearance:none}
.add,#lp-cart-checkout{flex:1;border:0;border-radius:3px;background:var(--navy);color:#fff;padding:15px 21px;font:500 14px Switzer,system-ui,sans-serif;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:15px}
.add:hover,#lp-cart-checkout:hover{background:#223854}
.buy{width:100%;margin-top:10px;border:1px solid var(--navy);border-radius:3px;background:transparent;color:var(--navy);padding:15px 21px;font:500 14px Switzer,system-ui,sans-serif;cursor:pointer;display:flex;justify-content:center;align-items:center;gap:15px}
.buy:hover{background:var(--bone)}
.buy:disabled,.add:disabled{opacity:.65;cursor:not-allowed}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.buy-help{font-size:12px;line-height:1.55;color:var(--muted);margin:12px 0 23px}
.support{padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.support>span{font-size:12px;font-weight:600}
.support p{font-size:12px;color:var(--muted);margin:5px 0 0}
.sku{font-size:10px;color:var(--muted);margin-top:16px}
.sku span{margin-left:9px;color:var(--navy)}
.function-summary h2,.function-summary h3{font:600 12px Switzer,system-ui,sans-serif;letter-spacing:0;margin:0 0 8px}
.function-summary .description{max-width:440px}
.details{display:grid;grid-template-columns:1fr 1.12fr;gap:64px;padding:50px 0 30px;margin-top:34px;border-top:1px solid var(--line)}
.lp-main h2.lp-h2{font-size:32px;margin:0}
dl.lp-dl{margin:0}
dl.lp-dl>div{display:grid;grid-template-columns:1fr 1.4fr;gap:16px;padding:14px 0;border-bottom:1px solid var(--line);font-size:13px;line-height:1.5}
dl.lp-dl dt{color:var(--muted)}
dl.lp-dl dd{margin:0}
.snapshot{font-size:11px;line-height:1.6;color:var(--muted);max-width:720px;margin:0 0 34px}
.lp-footer{padding:25px max(5%,calc((100vw - 1160px)/2));background:var(--bone);display:flex;flex-wrap:wrap;justify-content:space-between;font-size:12px;gap:20px}
.lp-footer a{color:var(--navy)}
.lp-footer .lp-footer-muted{color:var(--muted)}
@media(max-width:760px){
  .lp-header{padding:15px 20px;gap:12px}
  .lp-header .lp-brand img{width:91px;height:44px}
  .lp-header nav{gap:14px}
  .lp-header nav a{font-size:11px}
  .lp-header .cart-label{display:none}
  .lp-header #lp-open-cart{padding-left:8px;gap:5px}
  .lp-main{padding:0 20px}
  .lp-breadcrumb{margin:20px 0;font-size:11px}
  .product-layout{grid-template-columns:1fr;gap:0}
  .photo{aspect-ratio:1.12;padding:17px}
  .photo img{max-height:310px}
  .photo-caption{font-size:10px}
  .category{margin-bottom:12px}
  h1.lp-h1{font-size:40px}
  .subtitle{font-size:16px;margin-bottom:13px}
  .price-block{padding-top:22px;margin-bottom:20px}
  .purchase>.function-summary{margin:0 0 24px}
  .details{grid-template-columns:1fr;gap:14px;margin-top:35px;padding-top:30px}
  .lp-main h2.lp-h2{font-size:29px}
  .snapshot{margin-bottom:25px}
  .lp-footer{padding:22px 20px;font-size:11px}
  .add{font-size:12px;padding:15px 13px}
}
@media(prefers-reduced-motion:no-preference){.buy,.add{transition:background .15s}}

/* Carrinho (dialog compartilhado, produto + pop-up) */
#lp-cart-dialog{color:var(--navy);position:fixed;inset:0 0 0 auto;margin:0;width:min(510px,100vw);height:100dvh;max-height:100dvh;max-width:100vw;padding:30px;border:0;background:var(--paper);box-shadow:-18px 0 80px #0a162826;overflow-y:auto}
#lp-cart-dialog::backdrop{background:#101d3270;backdrop-filter:blur(3px)}
.cart-heading{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:24px}
.cart-heading h2{font-size:34px;font-family:Sentient,Georgia,serif;font-weight:400}
.cart-heading .category{margin-bottom:10px}
#lp-close-cart{border:1px solid var(--line);width:40px;height:40px;background:transparent;border-radius:50%;font-size:26px;color:var(--navy);cursor:pointer}
.cart-item{display:grid;grid-template-columns:65px minmax(0,1fr) auto;gap:14px;padding:24px 0;border-bottom:1px solid var(--line)}
.cart-item>img{width:65px;height:78px;object-fit:contain;background:#fff}
.cart-item-title{display:block;font-size:15px;font-weight:500;text-decoration:none;color:var(--navy)}
.cart-option{font-size:11px;color:var(--muted);margin:5px 0 12px}
.cart-item-controls{display:flex;gap:14px;align-items:center}
.cart-item-controls .quantity button{height:32px;width:28px;font-size:18px}
.item-quantity{display:inline-block;width:22px;text-align:center;font-size:12px}
.remove-item{border:0;background:transparent;color:var(--muted);text-decoration:underline;text-underline-offset:3px;padding:5px 0;font-size:11px;cursor:pointer}
.line-total{font-size:13px;font-weight:500;white-space:nowrap}
.cart-bottom{padding-top:28px}
.cart-total{display:flex;justify-content:space-between;align-items:center;font-size:15px}
.cart-total strong{font-size:26px;font-weight:500}
.cart-bottom>p{font-size:12px;line-height:1.6;color:var(--muted);margin:12px 0 20px}
#lp-cart-checkout{width:100%}
#lp-cart-checkout:disabled{background:#a9b0bb;cursor:default}
#lp-continue-shopping{display:block;width:100%;border:0;background:transparent;color:var(--navy);padding:18px;font:500 12px Switzer,system-ui,sans-serif;cursor:pointer}
.empty-cart{padding:40px 0;color:var(--muted);font-size:14px;line-height:1.6}
.feedback{font-size:12px;line-height:1.6;color:#426249}
.feedback:empty{display:none}
button:disabled{cursor:default;opacity:.55}
@media(max-width:760px){
  #lp-cart-dialog{padding:25px 20px}
  .cart-item{grid-template-columns:50px minmax(0,1fr) auto;gap:10px}
  .cart-item>img{width:50px;height:65px}
  .cart-item-title{font-size:14px}
  .cart-item-controls{gap:10px}
  .line-total{font-size:12px}
}

/* Home: grade de cards com previa (pop-up) */
.lp-home-products{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:38px;margin:24px 0 45px}
.lp-product-card{min-width:0}
.lp-card-photo{position:relative;width:100%;aspect-ratio:1.2;background:#fff;border:1px solid var(--line);padding:35px;cursor:pointer}
.lp-card-photo>img{width:100%;height:100%;object-fit:contain}
.lp-card-photo>span{position:absolute;bottom:15px;right:15px;padding:10px 15px;background:var(--paper);font:500 12px Switzer,system-ui;color:var(--navy)}
.lp-card-info{display:flex;justify-content:space-between;gap:18px;padding:20px 0 15px}
.lp-card-info .category{margin:0 0 8px}
.lp-card-info h3{font-size:22px;margin:0;font-family:Sentient,Georgia,serif;font-weight:400}
.lp-card-info a{color:inherit;text-decoration:none}
.lp-card-info strong{font-size:18px;font-weight:500;white-space:nowrap;padding-top:14px}
.lp-card-preview{width:100%;border:0;border-top:1px solid var(--line);padding:14px 0;background:transparent;display:flex;justify-content:space-between;color:var(--navy);font:500 12px Switzer,system-ui;cursor:pointer}
body.lp-modal-open{overflow:hidden}
#lp-quick-view{inset:0;margin:auto;width:min(1020px,calc(100vw - 64px));height:fit-content;max-height:calc(100dvh - 64px);padding:0;background:var(--paper);border:1px solid #d8dfe9;border-radius:6px;box-shadow:0 30px 100px #101d3233;overflow-y:auto;overscroll-behavior:contain}
#lp-quick-view::backdrop{background:#101d3280;backdrop-filter:blur(5px)}
.quick-top{display:flex;justify-content:space-between;align-items:center;padding:18px 28px 12px;background:var(--paper);position:sticky;top:0;z-index:1}
.quick-top>span{font-size:9px;letter-spacing:.15em;color:var(--muted)}
.quick-top i{font-style:normal;color:#aeb8c5;padding:0 11px}
#lp-quick-close{flex-shrink:0;display:grid;place-items:center;width:35px;height:35px;font-size:25px;line-height:1;background:transparent;border:1px solid var(--line);border-radius:50%;color:var(--navy);cursor:pointer}
.quick-layout{display:grid;grid-template-columns:1.04fr 1fr;align-items:start;gap:36px;padding:8px 32px 28px}
.quick-visual{min-width:0}
.quick-visual .photo{padding:22px;aspect-ratio:1}
.quick-visual .photo img{max-height:375px}
.quick-visual .photo-caption{font-size:10px}
.quick-heading .category{margin-bottom:12px}
.quick-heading h2{font-size:40px;line-height:1.1;margin:0 0 10px;font-family:Sentient,Georgia,serif;font-weight:400}
.quick-heading .subtitle{font-size:15px;margin:0 0 8px;line-height:1.5}
.quick-price{display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid var(--line);margin-bottom:18px;padding:17px 0}
.quick-price .price-block{padding:0;border:0;margin:0}
.quick-price .price-block strong{font-size:31px}
.quick-purchase select{padding:10px 12px;margin-bottom:15px}
.quick-purchase .add{font-size:12px;padding:14px 15px}
.quick-purchase .buy{font-size:12px;padding:13px}
.quick-purchase .quantity button{height:47px}
.quick-purchase .buy-help{font-size:11px;margin:10px 0 16px;max-width:335px}
.quick-purchase .function-summary{border-top:1px solid var(--line);padding-top:17px;margin-top:16px}
.quick-purchase .description{font-size:12px;line-height:1.65}
.quick-details{display:flex;justify-content:space-between;gap:16px;padding:16px 0 11px;color:var(--navy);font-size:12px;text-decoration:underline;text-underline-offset:4px}
.quick-footnote{font-size:10px;margin:4px 0 0;color:var(--muted)}
#lp-quick-see-cart{padding:0 0 5px;border:0;background:transparent;color:var(--navy);font:500 11px Switzer,system-ui;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
#lp-quick-feedback{margin:8px 0;font-size:11px}
@media(max-width:760px){
  .lp-home-products{grid-template-columns:1fr 1fr;gap:20px}
  .lp-card-photo{aspect-ratio:1.25}
  .lp-card-info h3{font-size:18px}
  #lp-quick-view{width:calc(100vw - 20px);max-height:calc(100dvh - 20px);border-radius:5px}
  .quick-top{padding:11px 17px 7px}
  .quick-top>span{font-size:8px;letter-spacing:.11em}
  #lp-quick-close{width:32px;height:32px}
  .quick-layout{grid-template-columns:1fr;gap:0;padding:9px 20px 22px}
  .quick-heading h2{font-size:33px;margin-bottom:8px}
  .quick-heading .subtitle{font-size:13px;margin-bottom:18px}
  .quick-visual .photo{aspect-ratio:1.4;padding:13px}
  .quick-visual .photo img{max-height:205px}
  .quick-price{padding:16px 0;margin-bottom:16px}
  .quick-price .price-block strong{font-size:30px}
}
@media(prefers-reduced-motion:no-preference){#lp-quick-view[open]{animation:lp-quick-enter .18s ease-out}@keyframes lp-quick-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}}
