/* Loja própria Open Field: páginas de produto, busca, carrinho e checkout no mesmo visual da loja */
:root{--lj-ink:#111;--lj-muted:#6b6b6b;--lj-line:#e5e5e5;--lj-soft:#f5f5f5;--lj-green:#25d366;--lj-green-d:#1eae54;--lj-wine:#a73546;--lj-orange:#e8590c;--lj-r:6px;--lj-sys:-apple-system,BlinkMacSystemFont,"Avenir Next",Avenir,"Helvetica Neue",Helvetica,Roboto,"Segoe UI",Arial,sans-serif}
body.lj{margin:0;background:#fff;color:var(--lj-ink);font-family:var(--lj-sys);-webkit-font-smoothing:antialiased}
.lj *{box-sizing:border-box}
.lj-main{min-height:50vh}
.lj a{color:inherit}
.lj-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 24px;border:0;border-radius:var(--lj-r);background:var(--lj-ink);color:#fff!important;font:600 14px var(--lj-sys);letter-spacing:.02em;text-decoration:none;cursor:pointer}
.lj-btn:hover{background:#2b2b2b}
.lj-btn:focus-visible,.lj button:focus-visible,.lj input:focus-visible,.lj select:focus-visible,.lj a:focus-visible{outline:2px solid var(--lj-ink);outline-offset:2px}
.lj-bread{display:flex;flex-wrap:wrap;gap:8px;align-items:center;width:min(1400px,94%);margin:22px auto 26px;font-size:12.5px;color:var(--lj-muted)}
.lj-bread a{text-decoration:none}.lj-bread a:hover{color:var(--lj-ink)}.lj-bread b{font-weight:500;color:var(--lj-ink)}
/* ---------- produto ---------- */
.lj-prod{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr);gap:56px;width:min(1240px,94%);margin:0 auto 64px;align-items:start}
.lj-gal{display:grid;grid-template-columns:84px minmax(0,1fr);gap:14px;position:sticky;top:150px}
.lj-thumbs{display:flex;flex-direction:column;gap:10px;max-height:640px;overflow:auto;scrollbar-width:none}
.lj-thumbs::-webkit-scrollbar{display:none}
.lj-thumbs button{position:relative;padding:0;border:1.5px solid transparent;border-radius:var(--lj-r);background:var(--lj-soft);aspect-ratio:1/1;overflow:hidden;cursor:pointer}
.lj-thumbs button.on{border-color:var(--lj-ink)}
.lj-thumbs img,.lj-thumbs video{width:100%;height:100%;object-fit:cover;display:block}
.lj-thumbs .play{position:absolute;inset:auto 6px 6px auto;width:22px;height:22px;border-radius:50%;background:rgba(0,0,0,.65);display:grid;place-items:center}
.lj-thumbs .play::after{content:"";border-left:7px solid #fff;border-top:4.5px solid transparent;border-bottom:4.5px solid transparent;margin-left:2px}
.lj-stage{position:relative;border-radius:var(--lj-r);overflow:hidden;background:var(--lj-soft)}
.lj-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
.lj-track::-webkit-scrollbar{display:none}
.lj-slide{flex:0 0 100%;scroll-snap-align:center;aspect-ratio:1/1}
.lj-slide img,.lj-slide video{width:100%;height:100%;object-fit:cover;display:block}
.lj-seta{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;border:0;border-radius:50%;background:#fff;box-shadow:0 4px 16px rgba(0,0,0,.14);display:grid;place-items:center;cursor:pointer;font-size:20px;line-height:1}
.lj-seta.ant{left:12px}.lj-seta.prox{right:12px}
.lj-dots{display:none;justify-content:center;gap:6px;margin-top:10px}
.lj-dots i{width:7px;height:7px;border-radius:50%;background:#d0d0d0}.lj-dots i.on{background:var(--lj-ink)}
.lj-info h1{margin:0 0 14px;font:700 clamp(24px,2.3vw,32px)/1.15 var(--lj-sys);letter-spacing:-.02em}
.lj-preco{padding-top:16px;border-top:1px solid var(--lj-line)}
.lj-preco del{display:block;color:var(--lj-muted);font-size:14px}
.lj-preco .p{font-size:32px;font-weight:800;letter-spacing:-.02em}
.lj-preco .pix{display:block;margin-top:2px;font-size:19px;font-weight:700}.lj-preco .pix small{font-size:14px;font-weight:500;color:var(--lj-muted)}
.lj-preco .parc{display:block;margin-top:2px;color:var(--lj-muted);font-size:15px}
.lj-fretebar{margin:18px 0 6px;font-size:14.5px}
.lj-fretebar b{color:var(--lj-orange)}.lj-fretebar .ok{color:#15803d;font-weight:600}
.lj-fretebar .bar{height:6px;margin-top:8px;border-radius:99px;background:#ececec;overflow:hidden}.lj-fretebar .bar i{display:block;height:100%;background:linear-gradient(90deg,#f59f00,#2f9e44);border-radius:99px;transition:width .4s ease}
.lj-opcoes{display:flex;flex-direction:column;gap:20px;margin:22px 0}
.lj-op h3{margin:0 0 10px;font-size:15px;font-weight:500}.lj-op h3 span{color:var(--lj-muted);font-weight:400}
.lj-op .ls{display:flex;flex-wrap:wrap;gap:10px}
.lj-op .ls button{min-width:52px;min-height:46px;padding:0 16px;border:1px solid #d4d4d4;border-radius:var(--lj-r);background:#fff;font:500 14px var(--lj-sys);color:var(--lj-ink);cursor:pointer;transition:border-color .15s}
.lj-op .ls button:hover{border-color:#8a8a8a}
.lj-op .ls button.on{border:2px solid var(--lj-ink);font-weight:600}
.lj-op .ls button:disabled{color:#b5b5b5;background:#fafafa;text-decoration:line-through;cursor:not-allowed}
.lj-op .ls.cores button{width:46px;min-width:46px;padding:0;border-radius:50%;position:relative}
.lj-op .ls.cores button i{position:absolute;inset:5px;border-radius:50%;border:1px solid rgba(0,0,0,.12)}
.lj-op .ls.cores button.on{box-shadow:0 0 0 2px #fff inset}
.lj-buy{width:100%;min-height:58px;border:0;border-radius:var(--lj-r);background:var(--lj-green);color:#fff;font:700 17px var(--lj-sys);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;animation:lj-pulso 2.2s ease-in-out infinite}
.lj-buy:hover{background:var(--lj-green-d)}
.lj-buy:disabled{background:#9ca3af;animation:none;cursor:not-allowed}
@keyframes lj-pulso{0%,100%{box-shadow:0 0 0 0 rgba(37,211,102,.45)}50%{box-shadow:0 0 0 10px rgba(37,211,102,0)}}
@media (prefers-reduced-motion:reduce){.lj-buy{animation:none}}
.lj-msg{min-height:20px;margin:8px 0 0;font-size:13.5px;color:#b42318}
.lj-cep{margin:22px 0;padding:16px;border:1px solid var(--lj-line);border-radius:var(--lj-r)}
.lj-cep label{display:block;margin-bottom:10px;font-size:14px;font-weight:600}
.lj-cep>div:first-of-type{display:flex;gap:8px}
.lj-cep input{flex:1;min-width:0;height:46px;padding:0 14px;border:1px solid #d4d4d4;border-radius:var(--lj-r);font:500 15px var(--lj-sys)}
.lj-cep button{height:46px;padding:0 18px;border:1px solid var(--lj-ink);border-radius:var(--lj-r);background:#fff;font:600 14px var(--lj-sys);cursor:pointer}
#ljCepRes{font-size:14px;margin-top:10px;line-height:1.5}#ljCepRes b{font-weight:600}
.lj-garantias{list-style:none;margin:0 0 18px;padding:0;display:grid;gap:8px;font-size:13.5px;color:#3a3a3a}
.lj-garantias li::before{content:"✓";margin-right:8px;color:#15803d;font-weight:700}
.lj-desc{border-top:1px solid var(--lj-line);padding-top:14px}
.lj-desc summary{font-weight:600;cursor:pointer;margin-bottom:10px}
.lj-desc div{font-size:15px;line-height:1.65;color:#2d2d2d}
.lj-rel,.lj-lista{width:min(1400px,94%);margin:0 auto 64px}
.lj-rel h2,.lj-lista h1{font:700 26px var(--lj-sys);letter-spacing:-.02em;margin:0 0 6px}
.lj-sub{color:var(--lj-muted);margin:0 0 24px}
.lj-rel h2{margin-bottom:22px}
/* ---------- vitrine ---------- */
.lj-grade{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 20px}
.lj-card{display:flex;flex-direction:column;align-items:center;gap:7px;text-decoration:none;text-align:center}
.lj-card-img{position:relative;display:block;width:100%;aspect-ratio:1/1;border-radius:var(--lj-r);overflow:hidden;background:var(--lj-soft);margin-bottom:8px}
.lj-card-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity .3s}
.lj-card-img .hv{opacity:0}.lj-card:hover .lj-card-img .hv{opacity:1}
.lj-card-img em{position:absolute;top:10px;left:10px;padding:4px 8px;border-radius:4px;background:var(--lj-wine);color:#fff;font:700 11px var(--lj-sys);font-style:normal}
.lj-card b{font-size:12.5px;font-weight:600;letter-spacing:.03em;text-transform:uppercase}
.lj-card-preco{font-size:14px;font-weight:700}.lj-card-preco del{margin-right:6px;color:var(--lj-muted);font-weight:400}
.lj-cores{display:flex;gap:6px}.lj-cores i{width:13px;height:13px;border-radius:50%;border:1px solid rgba(0,0,0,.18)}
.lj-card small{font-size:11.5px;color:var(--lj-muted)}
.lj-vazio{width:min(560px,92%);margin:56px auto;text-align:center}.lj-vazio h1{font-size:26px}.lj-vazio p{color:var(--lj-muted);margin-bottom:22px}
.lj-texto{width:min(760px,92%);margin:40px auto 72px;line-height:1.7}.lj-texto h1{font-size:30px;letter-spacing:-.02em}
.lj-rastreio{display:grid;gap:14px;max-width:420px}.lj-rastreio label{display:grid;gap:6px;font-size:14px;font-weight:600}.lj-rastreio input{height:46px;padding:0 14px;border:1px solid #d4d4d4;border-radius:var(--lj-r);font:15px var(--lj-sys)}
/* ---------- carrinho (gaveta) ---------- */
.lj-cart-bg{position:fixed;inset:0;z-index:9998;background:rgba(17,17,17,.42);opacity:0;pointer-events:none;transition:opacity .22s}
.lj-cart{position:fixed;top:0;right:0;bottom:0;z-index:9999;width:min(440px,100vw);display:flex;flex-direction:column;background:#fff;box-shadow:-12px 0 40px rgba(0,0,0,.16);transform:translateX(100%);transition:transform .26s cubic-bezier(.22,1,.36,1);font-family:var(--lj-sys);color:var(--lj-ink)}
.lj-cart-aberto .lj-cart{transform:none}.lj-cart-aberto .lj-cart-bg{opacity:1;pointer-events:auto}
.lj-cart header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid var(--lj-line)}
.lj-cart header h2{margin:0;font-size:18px}.lj-cart header button{width:40px;height:40px;border:0;background:none;font-size:26px;line-height:1;cursor:pointer}
.lj-cart-corpo{flex:1;overflow:auto;padding:16px 20px}
.lj-cart-fim{padding:16px 20px 20px;border-top:1px solid var(--lj-line);display:grid;gap:10px}
.lj-linha{display:grid;grid-template-columns:76px 1fr auto;gap:12px;padding:12px 0;border-bottom:1px solid #f0f0f0}
.lj-linha img{width:76px;height:76px;object-fit:cover;border-radius:var(--lj-r);background:var(--lj-soft)}
.lj-linha b{display:block;font-size:14px;font-weight:600}.lj-linha small{display:block;color:var(--lj-muted);font-size:12.5px;margin-top:2px}
.lj-qtd{display:inline-flex;align-items:center;margin-top:8px;border:1px solid #d4d4d4;border-radius:var(--lj-r)}
.lj-qtd button{width:34px;height:34px;border:0;background:none;font-size:17px;cursor:pointer}.lj-qtd span{min-width:24px;text-align:center;font-size:14px}
.lj-linha .dir{text-align:right;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-end}
.lj-linha .dir b{font-size:14px}.lj-tirar{border:0;background:none;color:var(--lj-muted);font-size:12.5px;text-decoration:underline;cursor:pointer;padding:4px 0}
.lj-res{display:flex;justify-content:space-between;font-size:14.5px}.lj-res.tot{font-size:18px;font-weight:800}.lj-res .neg{color:#b42318}
.lj-cupom{display:flex;gap:8px}.lj-cupom input{flex:1;min-width:0;height:44px;padding:0 12px;border:1px solid #d4d4d4;border-radius:var(--lj-r);font:14px var(--lj-sys);text-transform:uppercase}
.lj-cupom button{height:44px;padding:0 16px;border:1px solid var(--lj-ink);border-radius:var(--lj-r);background:#fff;font:600 13.5px var(--lj-sys);cursor:pointer}
.lj-aviso{font-size:13px;color:#b42318}.lj-ok{font-size:13px;color:#15803d}
.lj-finalizar{min-height:54px;border:0;border-radius:var(--lj-r);background:var(--lj-green);color:#fff;font:700 16px var(--lj-sys);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;text-decoration:none;display:flex;align-items:center;justify-content:center}
.lj-finalizar:hover{background:var(--lj-green-d)}
.lj-cart-vazio{text-align:center;padding:48px 10px;color:var(--lj-muted)}
.lj-carrinho-pag{width:min(760px,92%);margin:30px auto 72px}
/* ---------- checkout ---------- */
.lj-ck{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:40px;width:min(1100px,94%);margin:30px auto 72px;align-items:start}
.lj-ck h1{grid-column:1/-1;margin:0;font-size:28px;letter-spacing:-.02em}
.lj-ck fieldset{border:1px solid var(--lj-line);border-radius:var(--lj-r);padding:20px;margin:0 0 18px}
.lj-ck legend{padding:0 6px;font-weight:700;font-size:16px}
.lj-ck .cp{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}
.lj-ck label{display:grid;gap:6px;font-size:13.5px;font-weight:600;grid-column:span 6}
.lj-ck label.m1{grid-column:span 1}.lj-ck label.m3{grid-column:span 3}.lj-ck label.m2{grid-column:span 2}.lj-ck label.m4{grid-column:span 4}
.lj-ck input,.lj-ck select{height:46px;padding:0 12px;border:1px solid #d4d4d4;border-radius:var(--lj-r);font:500 15px var(--lj-sys);background:#fff}
.lj-ck .ajuda{font-weight:400;font-size:12px;color:var(--lj-muted)}
.lj-op-frete,.lj-op-pag{display:grid;gap:10px}
.lj-op-frete label,.lj-op-pag label{display:flex;align-items:center;gap:10px;padding:14px;border:1px solid #d4d4d4;border-radius:var(--lj-r);font-weight:500;cursor:pointer}
.lj-op-frete label:has(input:checked),.lj-op-pag label:has(input:checked){border:2px solid var(--lj-ink)}
.lj-op-frete input,.lj-op-pag input{width:18px;height:18px;margin:0;accent-color:#111}
.lj-op-frete span,.lj-op-pag span{flex:1}
.lj-resumo{position:sticky;top:20px;border:1px solid var(--lj-line);border-radius:var(--lj-r);padding:20px;display:grid;gap:10px;background:#fcfcfc}
.lj-resumo h2{margin:0 0 6px;font-size:17px}
.lj-pend{padding:14px;border-radius:var(--lj-r);background:#fff7ed;border:1px solid #fed7aa;font-size:14px;line-height:1.5}
/* ---------- celular ---------- */
@media (max-width:1023px){.lj-prod{grid-template-columns:1fr;gap:26px}.lj-gal{position:static;grid-template-columns:1fr}.lj-thumbs{display:none}.lj-dots{display:flex}.lj-seta{display:none}.lj-grade{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 12px}.lj-ck{grid-template-columns:1fr}.lj-resumo{position:static}}
@media (max-width:640px){.lj-bread{margin:14px auto 16px}.lj-preco .p{font-size:28px}.lj-ck label.m3,.lj-ck label.m4{grid-column:span 6}.lj-ck label.m2{grid-column:span 3}.lj-ck label.m1{grid-column:span 3}.lj-ck fieldset{padding:16px}}
/* menu do celular (páginas próprias) */
.lj-mm-bg{position:fixed;inset:0;z-index:9996;background:rgba(0,0,0,.4)}
.lj-mm{position:fixed;top:0;left:0;bottom:0;z-index:9997;width:min(330px,86vw);background:#fff;padding:20px;overflow:auto;font-family:var(--lj-sys)}
.lj-mm a{display:block;padding:14px 0;border-bottom:1px solid #f0f0f0;font-weight:600;text-transform:uppercase;font-size:14px;letter-spacing:.04em;text-decoration:none}
.lj-mm button{float:right;width:40px;height:40px;border:0;background:none;font-size:26px;cursor:pointer}
