/* ═══════════════════════════════════════════════════════════
   LUMINELLE — Sistema de diseño (todas las páginas públicas)
   ═══════════════════════════════════════════════════════════ */

/* ── Tokens ────────────────────────────────────────────────── */
:root{
  --negro:#050505;--negro-2:#0B0B0C;
  --blanco:#F5F3EE;--blanco-70:rgba(245,243,238,.70);--blanco-45:rgba(245,243,238,.58);
  --blanco-22:rgba(245,243,238,.30);--linea:rgba(245,243,238,.10);--linea-2:rgba(245,243,238,.16);
  --amarillo:#FBCD16;--ambar:#FF7A18;--cian:#4FD8FF;--violeta:#4C30FC;
  --f-display:'Bodoni Moda','Didot','Bodoni MT','Times New Roman',serif;
  --f-texto:'Hanken Grotesk',system-ui,-apple-system,'Segoe UI',sans-serif;
  --fs-eyebrow:clamp(.62rem,.55rem + .25vw,.72rem);
  --fs-body:clamp(.94rem,.9rem + .22vw,1.05rem);
  --fs-h2:clamp(1.8rem,1.15rem + 2.6vw,3rem);
  --pad-x:clamp(20px,5vw,88px);--max:1440px;--radio:14px;
  --ease:cubic-bezier(.22,.61,.36,1);
}

/* ── Reset ─────────────────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--negro);color:var(--blanco);font-family:var(--f-texto);font-size:var(--fs-body);line-height:1.6;font-weight:350;overflow-x:hidden;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{max-width:100%;display:block}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
a{color:inherit;text-decoration:none}
ul{margin:0;padding:0;list-style:none}
h1,h2,h3{margin:0;font-weight:400}
p{margin:0 0 1em}
:focus-visible{outline:2px solid var(--amarillo);outline-offset:3px;border-radius:4px}
[hidden]{display:none!important}

/* ── Utilidades ────────────────────────────────────────────── */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.skip{position:fixed;top:10px;left:10px;z-index:200;padding:12px 18px;background:var(--amarillo);color:#111;border-radius:10px;font-weight:600;transform:translateY(-160%);transition:transform .25s var(--ease)}.skip:focus{transform:translateY(0)}
.eyebrow{font-size:var(--fs-eyebrow);font-weight:600;letter-spacing:.28em;text-transform:uppercase;color:var(--blanco-45);margin:0 0 clamp(14px,2vw,22px)}
.h2{font-family:var(--f-display);font-size:var(--fs-h2);line-height:1.06;font-weight:500;letter-spacing:-.005em}
.wrap{width:100%;max-width:var(--max);margin-inline:auto;padding-inline:var(--pad-x)}

/* ── Header ────────────────────────────────────────────────── */
.header{position:fixed;inset:0 0 auto 0;z-index:70;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:clamp(14px,1.6vw,22px) var(--pad-x);background:rgba(5,5,5,.82);-webkit-backdrop-filter:blur(14px) saturate(120%);backdrop-filter:blur(14px) saturate(120%);border-bottom:1px solid var(--linea)}
.header__logo{display:flex;align-items:center;min-height:44px}.header__logo img{width:clamp(122px,13vw,178px);height:auto}
.header__nav{display:flex;align-items:center;gap:clamp(6px,1.4vw,10px)}
.navlink{position:relative;display:inline-flex;align-items:center;min-height:44px;padding:0 14px;font-size:.86rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--blanco-70);transition:color .3s var(--ease)}
.navlink::after{content:"";position:absolute;left:14px;right:14px;bottom:11px;height:1px;background:linear-gradient(90deg,var(--amarillo),var(--cian));transform:scaleX(0);transform-origin:left;transition:transform .4s var(--ease)}
.navlink:hover,.navlink:focus-visible{color:var(--blanco)}.navlink:hover::after,.navlink:focus-visible::after{transform:scaleX(1)}
.navlink--active{color:var(--blanco)}.navlink--active::after{transform:scaleX(1)}
.icon-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;color:var(--blanco-70);transition:color .3s var(--ease),background .3s var(--ease)}
.icon-btn:hover,.icon-btn:focus-visible{color:var(--blanco);background:rgba(245,243,238,.06)}
.icon-btn svg{width:21px;height:21px}
.cart-count{position:absolute;top:5px;right:4px;min-width:17px;height:17px;padding:0 4px;display:grid;place-items:center;border-radius:9px;background:var(--amarillo);color:#0A0A0A;font-size:.62rem;font-weight:700;line-height:1;box-shadow:0 0 12px rgba(251,205,22,.45)}
.burger{display:none}

/* ── Menú móvil ────────────────────────────────────────────── */
.menu{position:absolute;top:100%;left:0;right:0;z-index:80;max-height:0;overflow:hidden;visibility:hidden;background:rgba(8,8,9,.97);border-bottom:1px solid transparent;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);transition:max-height .45s var(--ease),border-color .45s var(--ease),visibility 0s linear .45s}
.menu.is-open{max-height:min(70svh,420px);visibility:visible;border-bottom-color:var(--linea);transition:max-height .45s var(--ease),border-color .45s var(--ease),visibility 0s}
.menu__panel{padding:6px var(--pad-x) 22px}
.menu__list{display:flex;flex-direction:column;gap:2px;margin-top:4px}
.menu__link{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:56px;padding:2px 0;border-bottom:1px solid var(--linea);font-family:var(--f-display);font-size:clamp(1.25rem,6.4vw,1.55rem);font-weight:500;color:var(--blanco);opacity:0;transform:translateY(8px);transition:opacity .4s var(--ease),transform .4s var(--ease),color .3s var(--ease)}
.menu.is-open .menu__link{opacity:1;transform:none}
.menu__link:hover,.menu__link:focus-visible{color:var(--amarillo)}
.menu__badge{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:rgba(245,243,238,.08);font-family:var(--f-texto);font-size:.66rem;font-weight:600;color:var(--blanco-70)}
.menu__foot{margin-top:12px;padding-top:14px;border-top:1px solid var(--linea);font-size:.78rem;color:var(--blanco-45)}
.burger__l1,.burger__l2,.burger__l3{transition:transform .35s var(--ease),opacity .25s var(--ease)}
.burger[aria-expanded="true"] .burger__l1{transform:translateY(5px) rotate(45deg)}
.burger[aria-expanded="true"] .burger__l2{opacity:0;transform:scaleX(0)}
.burger[aria-expanded="true"] .burger__l3{transform:translateY(-5px) rotate(-45deg)}
@media(max-width:900px){.header__nav .navlink{display:none}.burger{display:inline-flex}}

/* ── Main content spacing ──────────────────────────────────── */
main{position:relative;z-index:10;padding-top:clamp(80px,10vw,120px)}

/* ── Hero section ──────────────────────────────────────────── */
.escena.hero{position:relative;padding-block:0}

/* ── Producto detalle ──────────────────────────────────────── */
.pdp{padding-block:clamp(30px,4vw,60px)}
.pdp__grid{display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(32px,5vw,80px);align-items:start}
@media(max-width:900px){.pdp__grid{grid-template-columns:1fr;gap:clamp(24px,4vw,40px)}}

/* Galería */
.gallery{position:sticky;top:clamp(80px,10vw,120px)}
@media(max-width:900px){.gallery{position:static}}
.gallery__hero{position:relative;width:100%;aspect-ratio:var(--ar,3/4);background:rgba(245,243,238,.02);border-radius:var(--radio);overflow:hidden;display:flex;align-items:center;justify-content:center}
.gallery__hero img,.gallery__hero video{width:100%;height:100%;object-fit:contain;transition:opacity .45s var(--ease)}
.gallery__thumbs{display:flex;gap:clamp(8px,1vw,12px);margin-top:clamp(12px,1.5vw,18px);overflow-x:auto;scrollbar-width:none;padding-bottom:4px}
.gallery__thumbs::-webkit-scrollbar{display:none}
.gallery__thumb{flex:0 0 clamp(56px,7vw,72px);height:clamp(56px,7vw,72px);border-radius:8px;overflow:hidden;border:2px solid transparent;cursor:pointer;opacity:.6;transition:opacity .3s var(--ease),border-color .3s var(--ease),transform .3s var(--ease)}
.gallery__thumb img{width:100%;height:100%;object-fit:cover}
.gallery__thumb:hover{opacity:.9;transform:scale(1.04)}
.gallery__thumb.is-active{border-color:var(--amarillo);opacity:1}

/* Info */
.info__title{font-family:var(--f-display);font-size:clamp(1.6rem,1.2rem + 1.8vw,2.6rem);line-height:1.08;font-weight:500;margin-bottom:clamp(8px,1.2vw,16px)}
.info__price{font-size:clamp(1.2rem,1rem + .8vw,1.6rem);font-weight:600;letter-spacing:.06em;color:var(--blanco);margin-bottom:clamp(8px,1vw,14px)}
.info__desc{color:var(--blanco-70);margin-bottom:clamp(24px,3vw,40px)}

/* Configurador */
.config{display:flex;flex-direction:column;gap:clamp(20px,2.5vw,32px)}
.config__group label{display:block;font-size:var(--fs-eyebrow);font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--blanco-45);margin-bottom:10px}
.config__options{display:flex;flex-wrap:wrap;gap:8px}
.opt-btn{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 clamp(14px,1.6vw,22px);border-radius:999px;font-size:.82rem;font-weight:600;letter-spacing:.04em;color:var(--blanco-70);background:rgba(245,243,238,.04);border:1px solid var(--linea);transition:color .3s var(--ease),background .3s var(--ease),border-color .3s var(--ease),transform .3s var(--ease)}
.opt-btn:hover,.opt-btn:focus-visible{color:var(--blanco);border-color:var(--linea-2);transform:translateY(-1px)}
.opt-btn.is-active{color:var(--amarillo);background:rgba(251,205,22,.08);border-color:rgba(251,205,22,.5);box-shadow:0 0 18px rgba(251,205,22,.12)}

/* Cantidad */
.qty{display:inline-flex;align-items:center;border:1px solid var(--linea);border-radius:999px;overflow:hidden}
.qty__btn{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;font-size:1.1rem;font-weight:600;color:var(--blanco-70);transition:color .3s var(--ease),background .3s var(--ease)}
.qty__btn:hover,.qty__btn:focus-visible{color:var(--blanco);background:rgba(245,243,238,.06)}
.qty__val{width:42px;text-align:center;font-size:.92rem;font-weight:700;font-variant-numeric:tabular-nums}

/* CTAs */
.ctas{display:flex;flex-direction:column;gap:12px;margin-top:clamp(24px,3vw,36px)}
.cta-add,.cta-buy{display:flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 28px;border-radius:999px;font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:background .38s var(--ease),color .38s var(--ease),border-color .38s var(--ease),transform .35s var(--ease),box-shadow .38s var(--ease)}
.cta-add{color:#0B0B0C;background:var(--amarillo);border:2px solid var(--amarillo);box-shadow:0 0 28px rgba(251,205,22,.28)}
.cta-add:hover,.cta-add:focus-visible{background:transparent;color:var(--amarillo);transform:translateY(-2px);box-shadow:0 0 40px rgba(251,205,22,.18)}
.cta-buy{color:var(--blanco);background:transparent;border:2px solid var(--linea-2)}
.cta-buy:hover,.cta-buy:focus-visible{border-color:var(--blanco-45);transform:translateY(-2px)}

/* Feedback toast */
.cta-feedback{position:fixed;bottom:90px;left:50%;transform:translateX(-50%) translateY(20px);padding:14px 28px;border-radius:999px;background:rgba(10,10,11,.92);border:1px solid rgba(251,205,22,.4);color:var(--amarillo);font-size:.78rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);opacity:0;pointer-events:none;z-index:80;transition:opacity .35s var(--ease),transform .35s var(--ease)}
.cta-feedback.is-show{opacity:1;transform:translateX(-50%) translateY(0)}

/* ── Descripción larga ─────────────────────────────────────── */
.long-desc{padding-block:clamp(40px,5vw,80px);border-top:1px solid var(--linea)}
.long-desc__title{font-family:var(--f-display);font-size:clamp(1.2rem,1rem + .6vw,1.6rem);font-weight:500;margin-bottom:clamp(16px,2vw,28px)}
.long-desc p{margin:0 0 1.2em;color:var(--blanco-70);max-width:68ch}

/* ── Políticas carousel ────────────────────────────────────── */
.pol{position:relative;padding-block:clamp(40px,5vw,80px);border-top:1px solid var(--linea)}
.polc__head{margin-bottom:clamp(24px,3.4vw,44px)}
.polc__ctrl{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:clamp(20px,2.8vw,36px)}
.rnd{display:inline-grid;place-items:center;width:48px;height:48px;border-radius:50%;border:1px solid var(--linea-2);color:var(--blanco-70);transition:color .3s var(--ease),border-color .3s var(--ease),background .3s var(--ease),opacity .3s var(--ease)}
.rnd svg{width:17px;height:17px}
.rnd:hover,.rnd:focus-visible{color:var(--blanco);border-color:rgba(251,205,22,.55);background:rgba(251,205,22,.06)}
.rnd[aria-disabled="true"]{opacity:.3;pointer-events:none}
.polc{position:relative;--cw:clamp(228px,19vw,268px);--cgap:clamp(12px,1.3vw,18px)}
.polc__viewport{overflow:hidden;touch-action:pan-y;cursor:grab}
.polc__viewport.is-dragging{cursor:grabbing}
.polc__track{display:flex;align-items:stretch;gap:var(--cgap);will-change:transform;transition:transform .75s var(--ease)}
.polc__track.no-anim{transition:none}
.pcard{position:relative;flex:0 0 var(--cw);width:var(--cw);display:flex;flex-direction:column;align-items:center;text-align:center;padding:clamp(26px,2.3vw,36px) clamp(16px,1.6vw,24px) clamp(30px,2.6vw,40px);border:1px solid var(--linea);border-radius:var(--radio);background:linear-gradient(180deg,rgba(245,243,238,.04) 0%,rgba(245,243,238,.01) 100%);overflow:hidden;transition:border-color .45s var(--ease),transform .45s var(--ease),box-shadow .45s var(--ease)}
.pcard::before{content:"";position:absolute;top:0;left:22%;right:22%;height:1px;background:linear-gradient(90deg,rgba(251,205,22,0),rgba(251,205,22,.55),rgba(251,205,22,0));opacity:0;transition:opacity .45s var(--ease)}
.pcard:hover{border-color:rgba(245,243,238,.24);transform:translateY(-4px);box-shadow:0 26px 60px rgba(0,0,0,.55)}
.pcard:hover::before{opacity:1}
.pcard__icon{width:36px;height:36px;color:var(--amarillo);margin-bottom:22px}
.pcard__icon svg{width:100%;height:100%;overflow:visible;filter:drop-shadow(0 0 10px rgba(251,205,22,.32))}
.pcard__icon path,.pcard__icon circle,.pcard__icon rect,.pcard__icon line,.pcard__icon polyline{stroke-dasharray:var(--len,180);stroke-dashoffset:var(--len,180);transition:stroke-dashoffset 1.1s var(--ease) var(--d,0s)}
.is-in .pcard__icon path,.is-in .pcard__icon circle,.is-in .pcard__icon rect,.is-in .pcard__icon line,.is-in .pcard__icon polyline{stroke-dashoffset:0}
.pcard h3{font-family:var(--f-texto);font-size:var(--fs-eyebrow);font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:var(--blanco);margin-bottom:16px}
.pcard p{margin:0 0 4px;color:var(--blanco-70);font-size:.94rem;line-height:1.62}
.pcard p strong{color:var(--blanco);font-weight:600}
.polc__rail{position:relative;height:1px;margin-top:clamp(26px,3vw,40px);background:var(--linea);overflow:hidden}
.polc__fill{position:absolute;left:0;top:0;height:100%;width:20%;background:linear-gradient(90deg,var(--amarillo),var(--cian));transition:transform .75s var(--ease),width .3s var(--ease)}

/* ── Recomendados ──────────────────────────────────────────── */
.recs{padding-block:clamp(40px,5vw,80px);border-top:1px solid var(--linea)}
.recs__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,3vw,40px);margin-top:clamp(24px,3vw,40px)}
@media(max-width:800px){.recs__grid{grid-template-columns:1fr;gap:0;display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:8px}.recs__grid::-webkit-scrollbar{display:none}}
.rec{display:flex;flex-direction:column;align-items:center;text-align:center;transition:transform .5s var(--ease)}
@media(max-width:800px){.rec{flex:0 0 80%;scroll-snap-align:center;padding-inline:8px}}
.rec:hover,.rec:focus-visible{transform:translateY(-6px)}
.rec__img{position:relative;width:100%;aspect-ratio:3/4;border-radius:var(--radio);overflow:hidden;background:rgba(245,243,238,.02);margin-bottom:clamp(14px,1.8vw,22px)}
.rec__img img{width:100%;height:100%;object-fit:contain;transition:transform .5s var(--ease)}
.rec:hover .rec__img img{transform:scale(1.03)}
.rec__name{font-family:var(--f-display);font-size:clamp(1rem,.9rem + .4vw,1.3rem);font-weight:500;margin-bottom:6px}
.rec__price{font-size:.88rem;color:var(--blanco-45);letter-spacing:.08em}

/* ── Carrito ───────────────────────────────────────────────── */
.cart-item{display:flex;align-items:center;gap:clamp(12px,2vw,20px);padding:clamp(14px,2vw,20px) 0;border-bottom:1px solid var(--linea)}
.cart-item__img{width:clamp(60px,8vw,80px);height:clamp(60px,8vw,80px);object-fit:cover;border-radius:8px;flex-shrink:0}
.cart-item__info{flex:1;min-width:0}
.cart-item__info strong{display:block;margin-bottom:4px}
.cart-item__info small{display:block;color:var(--blanco-45);font-size:.78rem;margin-bottom:6px}
.cart-item__price{font-weight:600;color:var(--amarillo)}
.cart-item__actions{display:flex;align-items:center;gap:12px;flex-shrink:0}
.cart-remove{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;font-size:1.2rem;color:var(--blanco-45);border:1px solid var(--linea);transition:color .3s,border-color .3s}
.cart-remove:hover{color:#e53e3e;border-color:rgba(229,62,62,.4)}
.cart-footer{margin-top:clamp(24px,3vw,40px);padding-top:clamp(20px,2.5vw,30px);border-top:1px solid var(--linea);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px}
.cart-total{font-size:clamp(1.1rem,1rem+.4vw,1.4rem)}.cart-total strong{color:var(--amarillo);margin-left:8px}

/* ── Checkout ──────────────────────────────────────────────── */
.checkout{padding-block:clamp(30px,4vw,60px)}
.checkout__grid{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(32px,5vw,60px);margin-top:clamp(24px,3vw,40px)}
@media(max-width:900px){.checkout__grid{grid-template-columns:1fr}}
.checkout__section-title{font-size:clamp(.9rem,.85rem+.2vw,1.05rem);font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin:clamp(20px,3vw,32px) 0 16px;color:var(--blanco-45)}
.checkout .field{margin-bottom:16px}
.checkout .field label{display:block;font-size:.76rem;font-weight:600;color:var(--blanco-45);text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px}
.checkout .field input,.checkout .field textarea,.checkout .field select{width:100%;padding:11px 14px;border-radius:8px;border:1px solid var(--linea);background:rgba(245,243,238,.03);color:var(--blanco);font-size:.88rem;transition:border-color .2s}
.checkout .field input:focus,.checkout .field textarea:focus{outline:none;border-color:var(--amarillo)}
.checkout .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
@media(max-width:600px){.checkout .form-grid{grid-template-columns:1fr}}
.checkout .field--full{grid-column:1/-1}
.summary-item{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid var(--linea)}
.summary-item__img{width:50px;height:50px;border-radius:6px;object-fit:cover;flex-shrink:0}
.summary-item div{flex:1}.summary-item strong{display:block;font-size:.88rem;margin-bottom:2px}
.summary-item small{display:block;color:var(--blanco-45);font-size:.72rem}
.summary-item span{display:block;margin-top:4px;font-weight:600;font-size:.88rem}
.summary-totals{margin-top:16px;padding-top:16px;border-top:1px solid var(--linea)}
.summary-line{display:flex;justify-content:space-between;padding:6px 0;font-size:.88rem;color:var(--blanco-70)}
.summary-line--total{font-size:1.1rem;font-weight:700;color:var(--blanco);border-top:1px solid var(--linea);padding-top:12px;margin-top:8px}
.alert{padding:12px 18px;border-radius:8px;margin-bottom:16px;font-size:.85rem;font-weight:500}
.alert--error{background:rgba(229,62,62,.1);border:1px solid rgba(229,62,62,.3);color:#fc8181}

/* ── Footer ────────────────────────────────────────────────── */
.footer{position:relative;z-index:10;padding-top:clamp(60px,7vw,110px);background:linear-gradient(to bottom,rgba(22,22,24,0) 0%,rgba(22,22,24,1) clamp(40px,5vw,80px))}
.footer::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--linea-2) 20%,var(--linea-2) 80%,transparent)}
.footer__cols{display:grid;grid-template-columns:1.4fr 1fr .8fr;gap:clamp(30px,4vw,60px)}
.footer h2{font-size:var(--fs-eyebrow);font-weight:700;letter-spacing:.26em;text-transform:uppercase;color:var(--blanco);margin-bottom:22px}
.footer__cols a:not(.ig){color:var(--blanco-70);transition:color .3s var(--ease)}.footer__cols a:not(.ig):hover{color:var(--amarillo)}
.footer__item{margin-bottom:20px}.footer__item span{display:block;color:var(--blanco-45);margin-bottom:2px}
.footer__link{display:inline-flex;align-items:center;min-height:44px}
.footer__email{font-style:italic;font-size:.84rem}
.ig{display:inline-grid;place-items:center;width:46px;height:46px;border-radius:12px;border:1px solid var(--linea-2);transition:border-color .3s var(--ease),box-shadow .3s var(--ease),transform .3s var(--ease)}
.ig:hover,.ig:focus-visible{border-color:rgba(220,39,67,.55);box-shadow:0 0 22px rgba(188,24,136,.25);transform:scale(1.06)}
.ig svg{width:20px;height:20px}
.footer__lum{text-align:center;margin-bottom:clamp(36px,5vw,64px)}
.footer__lum img{width:clamp(130px,14vw,196px);height:auto;margin-inline:auto;filter:brightness(0) invert(1) drop-shadow(0 0 16px rgba(245,243,238,.08))}
.footer__marca{margin-top:clamp(56px,7vw,104px);text-align:center}
.footer__marca img{width:clamp(112px,11vw,148px);height:auto;margin-inline:auto;filter:drop-shadow(0 0 8px rgba(76,48,252,.30))}
.footer__tag{font-size:11px;color:var(--blanco-45);letter-spacing:.06em;margin:14px 0 0}
.footer__base{margin-top:clamp(26px,3vw,40px);padding:22px 0 26px;border-top:1px solid var(--linea);display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:14px 26px;font-size:13px;color:var(--blanco-45);text-align:center}
@media(max-width:900px){.footer__cols{grid-template-columns:1fr;gap:36px}}

/* ── WhatsApp ──────────────────────────────────────────────── */
.wa{position:fixed;z-index:90;right:18px;bottom:18px;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:#0B0B0C;border:1px solid rgba(245,243,238,.16);color:var(--blanco);box-shadow:0 12px 34px rgba(0,0,0,.6);transition:transform .35s var(--ease),border-color .35s var(--ease)}
.wa::before{content:"";position:absolute;inset:-1px;border-radius:50%;box-shadow:0 0 0 0 rgba(251,205,22,.30);animation:pulso 3.4s var(--ease) infinite}
.wa:hover,.wa:focus-visible{transform:scale(1.06);border-color:rgba(251,205,22,.5)}.wa svg{width:26px;height:26px}
@keyframes pulso{0%{box-shadow:0 0 0 0 rgba(251,205,22,.28)}70%{box-shadow:0 0 0 16px rgba(251,205,22,0)}100%{box-shadow:0 0 0 0 rgba(251,205,22,0)}}

/* ── Revelados ─────────────────────────────────────────────── */
.js .rv{opacity:0;transform:translateY(26px)}
.rv.is-in{opacity:1;transform:none;transition:opacity .85s var(--ease) var(--d,0s),transform .85s var(--ease) var(--d,0s)}

/* ── Responsive ────────────────────────────────────────────── */
@media(max-width:900px){.polc{--cw:clamp(220px,72vw,268px)}.wa{width:52px;height:52px}.wa svg{width:24px;height:24px}}

/* ── Reduced motion ────────────────────────────────────────── */
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.15s!important}}
