/* =============================================================
   UV-Life · Tienda — hoja de estilos de la plantilla
   Child theme: basel-child
   Ruta: inc/css/style-tienda.css
   Todos los selectores estan encapsulados bajo .uvl-tienda
   ============================================================= */


/* ===== Sistema UV-Life (línea gráfica index-v6) ===== */
.uvl-tienda{--ink:#1b1436; --muted:#6b6488; --line:#e9e4f6;
  --violet:#7c4dff; --violet-d:#5f2fe0; --violet-l:#a78bfa; --violet-bright:#7c4dff; --uv-glow:#a78bfa; --lav:#c9b6ff;
  --aqua:#22b8d6; --aqua-d:#128aa6; --aqua-l:#7fe3f0;
  --bg:#ffffff; --paper:#ffffff; --soft:#f7f5ff; --dark:#150d2e; --dark2:#1f1544;
  --amber:#e08a1e; --wa:#25d366; --danger:#e0413b; --green:#0f9d58;
  --rad:16px; --shadow:0 20px 44px -22px rgba(60,30,140,.45);}
.uvl-tienda,.uvl-tienda *{box-sizing:border-box;margin:0;padding:0}
.uvl-tienda{scroll-behavior:smooth}
.uvl-tienda{font-family:'Poppins',system-ui,sans-serif;color:var(--ink);background:var(--bg);line-height:1.6;-webkit-font-smoothing:antialiased}
.uvl-tienda img{max-width:100%;display:block}
.uvl-tienda a{text-decoration:none;color:var(--violet-d)}
.uvl-tienda .wrap{max-width:1160px;margin:0 auto;padding:0 24px}
.uvl-tienda h1,.uvl-tienda h2,.uvl-tienda h3{letter-spacing:-.02em;line-height:1.15}
.uvl-tienda .gradtext{background:linear-gradient(100deg,#c9b6ff 0%,#a78bfa 40%,#7c4dff 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.uvl-tienda .txt-white{color:#fff}
.uvl-tienda .eyebrow{display:inline-block;font-weight:600;font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:var(--violet-d);background:#efeaff;padding:6px 14px;border-radius:100px;margin-bottom:16px}
.uvl-tienda .eyebrow.light{background:rgba(255,255,255,.14);color:#dccdff}
.uvl-tienda .eyebrow--center{display:block;width:max-content;margin-left:auto;margin-right:auto}
.uvl-tienda .btn{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:.96rem;padding:13px 24px;border-radius:100px;transition:transform .15s,box-shadow .15s,background .15s;cursor:pointer;border:0}
.uvl-tienda .btn-primary{background:var(--violet);color:#fff;box-shadow:0 12px 26px -12px rgba(124,77,255,.7)}
.uvl-tienda .btn-primary:hover{background:var(--violet-d);transform:translateY(-2px)}
.uvl-tienda .btn-ghost{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.5)}
.uvl-tienda .btn-ghost:hover{background:rgba(255,255,255,.12)}
.uvl-tienda .btn-outline{background:transparent;color:var(--violet-d);border:1.5px solid var(--violet)}
.uvl-tienda .btn-outline:hover{background:var(--violet);color:#fff;transform:translateY(-2px)}
.uvl-tienda .btn-wa{background:var(--wa);color:#fff;box-shadow:0 12px 26px -12px rgba(37,211,102,.7)}
.uvl-tienda .btn-wa:hover{background:#1eb856;transform:translateY(-2px)}


/* HERO */
.uvl-tienda .hero{position:relative;background:radial-gradient(120% 120% at 80% 0%,#3a2470 0%,#231a56 45%,#150d2e 100%);color:#efeafe;overflow:hidden}
.uvl-tienda .hero-in{padding:74px 0 56px;text-align:center}
.uvl-tienda .hero h1{font-size:clamp(2.1rem,4.6vw,3.35rem);font-weight:800;color:#fff;margin-bottom:18px;max-width:15em;margin-left:auto;margin-right:auto}
.uvl-tienda .hero .lead{font-size:1.12rem;color:#d3caf0;margin:0 auto 26px;max-width:46em}
.uvl-tienda .chips{display:flex;flex-wrap:wrap;gap:9px;margin:0 auto 34px;justify-content:center}
.uvl-tienda .chip{font-size:.82rem;font-weight:500;background:rgba(255,255,255,.08);border:1px solid rgba(167,139,250,.45);color:#efe8ff;padding:7px 13px;border-radius:100px}

/* TRUST */
.uvl-tienda .trust{border-top:1px solid rgba(255,255,255,.1);background:rgba(0,0,0,.18)}
.uvl-tienda .trust-in{display:flex;flex-wrap:wrap;gap:14px 34px;padding:20px 0;justify-content:space-between}
.uvl-tienda .t-item{font-size:.9rem;color:#c8bfe6}
.uvl-tienda .t-item b{color:#fff;font-weight:600}

/* SECTIONS */
.uvl-tienda .sec{padding:74px 0}
.uvl-tienda .sec-head{max-width:780px;margin-bottom:40px}
.uvl-tienda .sec-head--center{margin-left:auto;margin-right:auto;text-align:center}
.uvl-tienda .sec-head .eyebrow{margin-bottom:14px}
.uvl-tienda .sec h2{font-size:clamp(1.7rem,3vw,2.35rem);font-weight:700;margin-bottom:12px}
.uvl-tienda .sec-head p{color:var(--muted);font-size:1.05rem}

/* TIENDA / CATEGORÍAS */
.uvl-tienda .shop{background:var(--soft)}
.uvl-tienda .cat{padding-top:14px;margin-top:52px;scroll-margin-top:80px}
.uvl-tienda .cat:first-of-type{margin-top:0}
.uvl-tienda .cat-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;border-bottom:2px solid var(--line);padding-bottom:16px;margin-bottom:26px}
.uvl-tienda .cat-head h3{font-size:1.5rem;font-weight:700;display:flex;align-items:center;gap:11px}
.uvl-tienda .cat-head h3 .kic{width:38px;height:38px;border-radius:11px;background:#efeaff;display:inline-flex;align-items:center;justify-content:center;font-size:1.1rem;flex:none}
.uvl-tienda .cat-head p{color:var(--muted);font-size:.94rem;max-width:46em;margin-top:6px}
.uvl-tienda .cat-head .cat-note{font-size:.82rem;font-weight:600;color:var(--violet-d);background:#efeaff;padding:6px 14px;border-radius:100px;white-space:nowrap}
.uvl-tienda .prod-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.uvl-tienda .card{background:#fff;border:1px solid var(--line);border-radius:var(--rad);overflow:hidden;box-shadow:0 14px 40px -24px rgba(60,30,140,.4);display:flex;flex-direction:column;transition:transform .16s,box-shadow .16s}
.uvl-tienda .card:hover{transform:translateY(-5px);box-shadow:0 22px 48px -24px rgba(60,30,140,.55)}
.uvl-tienda .card-img{position:relative;background:linear-gradient(160deg,#f5f3fb 0%,#ffffff 60%);padding:26px;display:flex;align-items:center;justify-content:center;min-height:230px}
.uvl-tienda .card-img img{max-height:200px;width:auto;object-fit:contain}
.uvl-tienda .card-img img.wide{width:100%;max-width:100%;max-height:none;height:auto}
.uvl-tienda .card-tag{position:absolute;top:14px;left:14px;font-size:.66rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:5px 11px;border-radius:100px}
.uvl-tienda .card-tag.combo{background:#efeaff;color:var(--violet-d)}
.uvl-tienda .card-tag.pro{background:#eafaff;color:var(--aqua-d)}
.uvl-tienda .card-tag.pack{background:#eafbf0;color:var(--green)}
.uvl-tienda .uvcblock{position:absolute;bottom:14px;right:14px;display:inline-flex;align-items:baseline;gap:3px;font-size:.62rem;font-weight:600;letter-spacing:.04em;color:#fff;background:var(--violet-d);padding:6px 12px;border-radius:100px;box-shadow:0 6px 16px -6px rgba(95,47,224,.7)}
.uvl-tienda .uvcblock b{font-weight:800;letter-spacing:.08em}
.uvl-tienda .card-flag{position:absolute;top:14px;right:14px;font-size:.64rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:5px 10px;border-radius:100px;background:#f2eff8;color:var(--muted)}
.uvl-tienda .card-body{padding:22px 22px 24px;display:flex;flex-direction:column;flex:1}
.uvl-tienda .card-body h3{font-size:1.15rem;font-weight:700;margin-bottom:10px}
.uvl-tienda .card-body ul{list-style:none;display:grid;gap:0;margin-bottom:16px}
.uvl-tienda .card-body li{position:relative;padding:9px 0 9px 28px;font-size:.88rem;color:var(--ink);border-bottom:1px solid var(--line)}
.uvl-tienda .card-body li:last-child{border-bottom:0}
.uvl-tienda .card-body li::before{content:"";position:absolute;left:0;top:11px;width:17px;height:17px;background:var(--violet) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11' height='11' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") center/11px no-repeat;border-radius:50%}
.uvl-tienda .card-body li.no::before{background:var(--danger) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11' height='11' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='18' y1='6' x2='6' y2='18'/%3E%3Cline x1='6' y1='6' x2='18' y2='18'/%3E%3C/svg%3E") center/11px no-repeat}
.uvl-tienda .price{font-size:1.6rem;font-weight:800;color:var(--violet-d);margin-bottom:16px}
.uvl-tienda .price small{font-size:.8rem;font-weight:500;color:var(--muted)}
.uvl-tienda .price.quote{font-size:1.05rem;font-weight:700;color:var(--muted)}
.uvl-tienda .card-btns{margin-top:auto;display:flex;gap:10px;flex-wrap:wrap}
.uvl-tienda .card-btns .btn{flex:1 1 0;justify-content:center;min-width:118px;padding:11px 14px;font-size:.88rem}
@media(max-width:960px){
.uvl-tienda .prod-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:560px){
.uvl-tienda .prod-grid{grid-template-columns:1fr}
}
.uvl-tienda .equip-note{max-width:900px;margin:34px auto 0;background:#fff;border:1px solid var(--line);border-left:4px solid var(--amber);border-radius:12px;padding:16px 20px;font-size:.92rem;color:var(--muted)}
.uvl-tienda .equip-note b{color:var(--ink)}

/* FAQ */
.uvl-tienda .faq{background:#fff}
.uvl-tienda .faq-list{max-width:840px;margin:38px auto 0;display:grid;gap:12px}
.uvl-tienda .faq-item{border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden}
.uvl-tienda .faq-item summary{cursor:pointer;list-style:none;padding:18px 22px;font-weight:600;font-size:1rem;color:var(--ink);display:flex;justify-content:space-between;gap:16px;align-items:center}
.uvl-tienda .faq-item summary::-webkit-details-marker{display:none}
.uvl-tienda .faq-item summary::after{content:"+";font-size:1.5rem;line-height:1;color:var(--violet-d);flex:none}
.uvl-tienda .faq-item[open] summary::after{content:"–"}
.uvl-tienda .faq-item .a{padding:0 22px 20px;color:var(--muted);font-size:.96rem;line-height:1.62}

/* FINAL CTA */
.uvl-tienda .final-sec{background:var(--soft)}
.uvl-tienda .final{background:radial-gradient(900px 500px at 50% 0%,#3a2470 0%,#231a56 55%,#150d2e 100%);border-radius:32px;color:#fff;text-align:center;padding:66px 40px;position:relative;overflow:hidden}
.uvl-tienda .final .eyebrow{margin-bottom:16px}
.uvl-tienda .final h2{color:#fff;font-size:clamp(1.8rem,3.2vw,2.5rem);margin-bottom:12px}
.uvl-tienda .final p{color:#d3e6f0;max-width:44em;margin:0 auto 26px;font-size:1.06rem}
.uvl-tienda .cta-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
@media(max-width:520px){
.uvl-tienda .final{padding:48px 22px}
}

