/* ============================================================
   shop-lia.css — tema del storefront de Lia Jensen al nivel de la HOME.
   La plantilla usa variables CSS (--rose, --cream, --text-dark, --font-body...)
   en todos sus componentes. Las REMAPEAMOS a la paleta de Lia → toda la
   plantilla adopta el tema oscuro makina. Luego pulimos los componentes clave.
   Se carga DESPUÉS del <style> de la plantilla, así gana por orden.
   ============================================================ */
:root{
  /* tokens Lia (home) */
  --cyan:#1DFFEF; --mag:#D600C5; --pur:#6908D6; --ink:#1E1E1D;
  --bg:#0a0a0b; --bg2:#0f0f11; --white:#f4f4f5; --mut:#8a8a90;
  --font:'Archivo',system-ui,sans-serif; --disp:'Archivo Black',var(--font);
  --edge:clamp(20px,5vw,80px);

  /* REMAP de las variables de la plantilla -> Lia */
  --primary:#D600C5; --primary-light:#E24CD6; --primary-pale:#2a0a28;
  --rose:#D600C5; --rose-light:#E24CD6; --rose-pale:#23082140;
  --sage:#1DFFEF; --sage-light:#1DFFEF; --sage-pale:#07201f;
  --cream:#0a0a0b; --cream-warm:#0f0f11; --sand:#1a1a1e; --sand-dark:#2a2a30;
  --blush:#140414; --lavender:#15121f; --lavender-dark:#6908D6;
  --sky:#07201f; --sky-dark:#1DFFEF;
  --text-dark:#f4f4f5; --text-body:#cfcfd4; --text-light:#8a8a90; --white:#f4f4f5;
  --font-display:'Archivo Black','Archivo',sans-serif; --font-body:'Archivo',system-ui,sans-serif;
  --radius:14px; --radius-sm:10px;
  --shadow:0 4px 20px rgba(0,0,0,.4); --shadow-md:0 8px 32px rgba(0,0,0,.5); --shadow-lg:0 16px 48px rgba(0,0,0,.6);
}
*{box-sizing:border-box}
html,body{overflow-x:hidden;max-width:100vw}
body{background:var(--bg)!important;color:var(--white)!important;font-family:var(--font)!important;-webkit-font-smoothing:antialiased;letter-spacing:.01em}
.internal-hero{overflow:hidden}
.internal-hero h1{max-width:100%!important;overflow-wrap:break-word;word-break:break-word}
.internal-hero p{max-width:min(500px,92vw)!important;overflow-wrap:break-word}
header.nav{max-width:100vw}
::selection{background:var(--mag);color:#fff}
a{color:inherit}
img{display:block;max-width:100%}

/* ---------- header = IGUAL que la home (header.nav), sticky + sólido en tienda ---------- */
header.nav{position:sticky;top:0;left:0;right:0;z-index:950;display:flex;align-items:center;justify-content:space-between;padding:14px var(--edge);background:rgba(10,10,11,.86);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.08)}
header.nav .brand{display:flex;align-items:center;gap:11px}
header.nav .brand img{height:30px;width:auto}
header.nav .brand b{font-family:var(--disp);font-weight:900;letter-spacing:.02em;font-size:1.02rem;text-transform:uppercase;color:#fff}
.navlinks{display:flex;align-items:center;gap:26px}
.navlinks a{font-weight:700;text-transform:uppercase;letter-spacing:.14em;font-size:.74rem;color:var(--mut);transition:color .2s;position:relative}
.navlinks a:hover,.navlinks a.active{color:var(--white)}
.navlinks a::after{content:"";position:absolute;left:0;bottom:-6px;height:2px;width:0;background:var(--cyan);transition:width .25s}
.navlinks a:hover::after,.navlinks a.active::after{width:100%}
.nav-right{display:flex;align-items:center;gap:18px}
.nav-cart{position:relative;color:#fff;display:inline-flex}
.nav-cart .cbadge{position:absolute;top:-7px;right:-9px;background:var(--mag);color:#fff;font-size:10px;font-weight:800;min-width:18px;height:18px;padding:0 4px;border-radius:9px;display:none;align-items:center;justify-content:center}
.burger{display:none;flex-direction:column;gap:5px;background:none;border:0;cursor:pointer;padding:6px}
.burger span{width:24px;height:2.5px;background:#fff;border-radius:2px}
@media(max-width:820px){.navlinks{display:none}.burger{display:flex}}

/* mobile menu (reusa .mobile-menu de la plantilla) */
.mobile-menu{position:fixed;inset:0;background:var(--bg);z-index:980;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;opacity:0;pointer-events:none;transition:opacity .35s}
.mobile-menu.open{opacity:1;pointer-events:auto}
.mobile-menu a{font-family:var(--disp);font-weight:900;text-transform:uppercase;font-size:1.8rem;color:#fff}
.mobile-menu a:nth-child(even){color:var(--cyan)}
.mobile-close{position:absolute;top:24px;right:28px;background:none;border:0;color:#fff;font-size:2.2rem;cursor:pointer}

/* ocultar el contact-bar/ticker original si quedara */
.contact-bar{display:none!important}

/* ---------- hero interno ---------- */
.internal-hero{background:linear-gradient(180deg,#050506,#0d0d10);text-align:center;padding:72px var(--edge) 44px}
.internal-hero h1{font-family:var(--disp);font-weight:900;text-transform:uppercase;font-size:clamp(2.6rem,7vw,5rem);line-height:.92;color:#fff}
.internal-hero p{color:var(--mut);text-transform:uppercase;letter-spacing:.14em;font-weight:700;font-size:.8rem;margin-top:14px}

/* ---------- category tabs ---------- */
.cat-tabs{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;padding:28px var(--edge) 6px;max-width:1320px;margin:0 auto}
.cat-tab{background:transparent;border:1px solid rgba(255,255,255,.2);color:#d3d3d8;font-weight:800;text-transform:uppercase;letter-spacing:.1em;font-size:.72rem;padding:10px 18px;border-radius:100px;cursor:pointer;transition:.2s}
.cat-tab:hover{border-color:var(--cyan);color:var(--cyan)}
.cat-tab.active{background:var(--mag);border-color:var(--mag);color:#fff}

/* ---------- product grid / cards ---------- */
.products-page{max-width:1320px;margin:0 auto;padding:36px var(--edge) 80px}
.prod-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.prod-card{background:linear-gradient(180deg,rgba(18,18,22,.9),rgba(10,10,12,.9));border:1px solid rgba(255,255,255,.09);border-radius:18px;overflow:hidden;display:flex;flex-direction:column;transition:border-color .3s,transform .3s}
.prod-card:hover{border-color:rgba(29,255,239,.4);transform:translateY(-5px)}
.prod-card-img,.prod-card-img-wrap{position:relative;aspect-ratio:3/4;overflow:hidden;background:#111}
.prod-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.prod-card:hover .prod-card-img img{transform:scale(1.05)}
.prod-card-body{padding:20px;display:flex;flex-direction:column;gap:8px;flex:1}
.prod-card-tag{font-weight:900;text-transform:uppercase;letter-spacing:.18em;font-size:.62rem;color:var(--mag)}
.prod-card-title{font-family:var(--disp);font-weight:900;text-transform:uppercase;font-size:1.05rem;color:#fff;line-height:1.05}
.prod-card-price-row{display:flex;align-items:baseline;gap:10px;margin-top:auto}
.prod-card-price{font-family:var(--disp);font-weight:900;font-size:1.3rem;color:var(--cyan)}
.prod-card-old-price{color:var(--mut);text-decoration:line-through;font-size:.9rem}
.prod-card-btn,.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:9px;background:var(--cyan);color:#04211f;font-weight:800;text-transform:uppercase;letter-spacing:.1em;font-size:.74rem;padding:13px 22px;border-radius:100px;border:0;cursor:pointer;transition:transform .2s,box-shadow .2s}
.prod-card-btn{width:100%;margin-top:12px}
.prod-card-btn:hover,.btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 30px rgba(29,255,239,.4)}
.btn-primary svg{width:18px;height:18px}

/* ---------- local CTA ---------- */
.local-cta{background:linear-gradient(180deg,#0d0d10,#060608);text-align:center;padding:70px var(--edge)}
.local-cta-inner{max-width:720px;margin:0 auto}
.local-cta h2{font-family:var(--disp);font-weight:900;text-transform:uppercase;font-size:clamp(1.8rem,4vw,3rem);color:#fff;line-height:1}
.local-cta h2 span{color:var(--cyan)!important}
.local-cta p{color:var(--mut);text-transform:uppercase;letter-spacing:.08em;font-weight:600;font-size:.82rem;margin:16px 0 26px}

/* ---------- PDP (producto) ---------- */
.pdp-wrap{max-width:1200px;margin:0 auto;padding:48px var(--edge) 70px;display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,64px);align-items:start}
.pdp-gallery-main,.pdp-main-img{border-radius:16px;overflow:hidden;border:1px solid rgba(255,255,255,.1);background:#111}
.gallery-thumbs{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap}
.gallery-thumbs img{width:72px;height:90px;object-fit:cover;border-radius:8px;border:1px solid rgba(255,255,255,.15);cursor:pointer;opacity:.6;transition:.2s}
.gallery-thumbs img:hover,.gallery-thumbs img.active{opacity:1;border-color:var(--cyan)}
.pdp-cat,.prod-card-tag{color:var(--mag)}
.pdp-title,.t-title{font-family:var(--disp)!important;font-weight:900;text-transform:uppercase;color:#fff!important;line-height:1.02}
.pdp-price{font-family:var(--disp);font-weight:900;color:var(--cyan);font-size:1.8rem}
.t-sub{color:var(--mut)}
.size-btn{min-width:48px;border:1px solid rgba(255,255,255,.25);background:transparent;color:#d3d3d8;border-radius:10px;padding:11px 14px;font-weight:800;text-transform:uppercase;cursor:pointer;transition:.2s}
.size-btn:hover{border-color:var(--cyan);color:var(--cyan)}
.size-btn.active,.size-btn.selected{background:var(--cyan);border-color:var(--cyan);color:#04211f}
.size-error{color:var(--mag)!important;font-weight:800;text-transform:uppercase;font-size:.72rem}
.qty-wrap,.qty{display:inline-flex;align-items:center;border:1px solid rgba(255,255,255,.2);border-radius:100px;overflow:hidden}
.qty-btn{background:transparent;color:#fff;border:0;width:40px;height:42px;font-size:1.1rem;cursor:pointer}
.qty-val{min-width:40px;text-align:center;font-weight:800;color:#fff}
.pdp-trust{border-top-color:rgba(255,255,255,.12)!important}
.pdp-trust-item{background:rgba(18,18,22,.7)!important;border:1px solid rgba(255,255,255,.1)!important;box-shadow:none!important;color:var(--mut)}
.pdp-trust-item .t-title{color:#fff!important}
.pdp-trust-item .t-sub{color:var(--mut)!important}
.pdp-trust-item svg{stroke:var(--cyan);color:var(--cyan)!important}

/* ---------- related ---------- */
.section-related{max-width:1320px;margin:0 auto;padding:20px var(--edge) 80px}
.related-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.related-card{background:rgba(18,18,22,.8);border:1px solid rgba(255,255,255,.09);border-radius:14px;overflow:hidden}
.related-card-img{aspect-ratio:3/4;object-fit:cover}
.related-card-name{color:#fff;font-weight:800}
.related-card-price{color:var(--cyan);font-weight:900}
.related-card-cat{color:var(--mag)}

/* ---------- carrito / checkout ---------- */
.t-title,h1,h2{color:#fff}
.summary-row,.summary-item,.summary-total{color:#d3d3d8;border-color:rgba(255,255,255,.1)!important}
.summary-total,.total{color:#fff;font-weight:900}
.summary-total .total,.total{color:var(--cyan)}
.form-group label,.acc-label{color:#d3d3d8;font-weight:700}
.form-group input,.form-group select,.form-group textarea{background:#121216;border:1px solid rgba(255,255,255,.18);color:#fff;border-radius:10px;padding:12px 14px;width:100%;font-family:var(--font)}
.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--cyan)}
.acc-item,.acc-inner{background:rgba(18,18,22,.7);border:1px solid rgba(255,255,255,.1);border-radius:14px}
.acc-icon{color:var(--cyan)}
.shipping-note{color:var(--mut)}
.spinner{border-color:rgba(255,255,255,.2);border-top-color:var(--cyan)}

/* cards de resumen/paneles genéricos de la plantilla */
section,.card,.panel{background:transparent}

/* paneles que la plantilla pinta con var(--white)/#fff -> oscuro */
.checkout-form,.checkout-summary,.contact-form-wrap,.map-section,.faq,.faq-item,.contact-page .card,.success-card{
  background:rgba(18,18,22,.75)!important;border:1px solid rgba(255,255,255,.1)!important;border-radius:16px}
.form-input,.contact-form-wrap input,.contact-form-wrap textarea,.contact-form-wrap select{
  background:#121216!important;border:1px solid rgba(255,255,255,.18)!important;color:#fff!important;border-radius:10px}
.form-input:focus{border-color:var(--cyan)!important;outline:none}
.checkout-summary .summary-total,.checkout-summary .total,.summary-total{color:#fff!important}
.checkout-form label,.contact-form-wrap label,.form-group label{color:#d3d3d8!important}
.faq-item h4,.faq-item summary,.faq-item strong{color:#fff}
.map-section,.map-section *{color:#d3d3d8}
.success-icon{background:rgba(29,255,239,.14)!important}

/* ---------- footer propio de Lia ---------- */
footer{background:var(--bg);border-top:1px solid rgba(255,255,255,.08);padding:56px var(--edge) 36px;color:var(--mut)}
.footer-grid{max-width:1320px;margin:0 auto;display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:30px}
.footer-brand h3{font-family:var(--disp);text-transform:uppercase;color:#fff;font-size:1.3rem;margin-bottom:10px}
.footer-brand p{color:var(--mut);text-transform:uppercase;letter-spacing:.08em;font-size:.76rem}
.footer-social a{display:inline-flex;margin-top:14px;color:#d3d3d8}
.footer-social svg{width:22px;height:22px;fill:currentColor}
.footer-social a:hover{color:var(--cyan)}
.footer-col h4{font-family:var(--disp);text-transform:uppercase;color:#fff;font-size:.9rem;margin-bottom:14px}
.footer-col a,.footer-contact-item{display:flex;align-items:center;gap:8px;color:var(--mut);font-weight:600;text-transform:uppercase;letter-spacing:.06em;font-size:.76rem;margin-bottom:10px}
.footer-col a:hover{color:var(--cyan)}
.footer-contact-item svg{width:16px;height:16px;stroke:var(--cyan)}
.footer-bottom{max-width:1320px;margin:34px auto 0;padding-top:22px;border-top:1px solid rgba(255,255,255,.07);color:var(--mut);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;text-align:center}
.footer-bottom a{color:var(--mut)}
.footer-bottom a:hover{color:var(--cyan)}

/* ---------- whatsapp float ---------- */
.wa-float{position:fixed;right:20px;bottom:20px;z-index:900;width:54px;height:54px;border-radius:50%;background:#25D366;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px rgba(0,0,0,.4)}
.wa-float svg{width:30px;height:30px;fill:#fff}

@media(max-width:820px){ .prod-grid{grid-template-columns:1fr 1fr} .pdp-wrap{grid-template-columns:1fr} .related-grid{grid-template-columns:1fr 1fr} .footer-grid{grid-template-columns:1fr 1fr}
  header.nav{padding:12px var(--edge)} header.nav .brand b{font-size:.92rem} header.nav .brand img{height:26px}
  .internal-hero{padding:48px var(--edge) 32px} .internal-hero h1{font-size:clamp(2rem,10vw,3.2rem);word-break:break-word}
  .internal-hero p{font-size:.72rem} }
@media(max-width:520px){ .prod-grid{grid-template-columns:1fr} .footer-grid{grid-template-columns:1fr 1fr} .related-grid{grid-template-columns:1fr 1fr}
  html,body{overflow-x:hidden;max-width:100vw} .nav-right{gap:12px} }
/* asegurar carrito + burger visibles en móvil (por si la plantilla los pisa) */
@media(max-width:820px){
  header.nav{display:flex!important;align-items:center!important;justify-content:space-between!important}
  header.nav .nav-right{display:flex!important;align-items:center;gap:14px;flex:none}
  header.nav .nav-cart{display:inline-flex!important;color:#fff!important}
  header.nav .nav-cart svg{stroke:#fff}
  header.nav .burger{display:flex!important}
  header.nav .burger span{background:#fff}
}
