/* ===== Store FX layer — mismo sistema (navy · oro · púrpura), más impacto ===== */
@keyframes fxDrift1{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(8%,10%) scale(1.15)}}
@keyframes fxDrift2{0%,100%{transform:translate(0,0) scale(1.1)}50%{transform:translate(-10%,-6%) scale(.9)}}
@keyframes fxDrift3{0%,100%{transform:translate(0,0)}50%{transform:translate(6%,-12%)}}
@keyframes fxShine{0%{background-position:0% 50%}100%{background-position:300% 50%}}
@keyframes fxMarq{to{transform:translateX(-50%)}}
@keyframes fxTwinkle{0%,100%{opacity:0;transform:scale(.4) rotate(0)}50%{opacity:1;transform:scale(1) rotate(45deg)}}
@keyframes fxRing{0%{box-shadow:0 0 0 0 rgba(245,201,69,.55),inset 0 1px 0 rgba(255,255,255,.6),0 14px 36px -12px rgba(245,201,69,.7)}70%,100%{box-shadow:0 0 0 16px rgba(245,201,69,0),inset 0 1px 0 rgba(255,255,255,.6),0 14px 36px -12px rgba(245,201,69,.7)}}
@keyframes fxBump{0%{transform:scale(1);filter:none}35%{transform:scale(1.08);filter:drop-shadow(0 0 14px rgba(245,201,69,.75))}100%{transform:scale(1);filter:none}}
/* progreso de scroll en la línea firma del header */
.st-head::after{transform-origin:left center;transform:scaleX(max(.06,var(--sp,0)));transition:transform .12s linear}
.st-head::before{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:rgba(255,255,255,.05);pointer-events:none}
/* HERO: aurora + spotlight */
.st-hero-x{position:relative;isolation:isolate}
.st-aurora{position:absolute;inset:-10% -5% -10% -5%;z-index:-1;pointer-events:none;filter:blur(70px);opacity:.9}
.st-aurora i{position:absolute;border-radius:50%;mix-blend-mode:screen}
.st-aurora i:nth-child(1){width:46vw;height:46vw;max-width:720px;max-height:720px;right:-6%;top:-18%;background:radial-gradient(circle,rgba(179,71,255,.55),transparent 65%);animation:fxDrift1 18s ease-in-out infinite}
.st-aurora i:nth-child(2){width:34vw;height:34vw;max-width:540px;max-height:540px;left:-8%;bottom:-20%;background:radial-gradient(circle,rgba(245,201,69,.28),transparent 65%);animation:fxDrift2 22s ease-in-out infinite}
.st-aurora i:nth-child(3){width:28vw;height:28vw;max-width:440px;max-height:440px;left:38%;top:30%;background:radial-gradient(circle,rgba(251,146,60,.20),transparent 65%);animation:fxDrift3 26s ease-in-out infinite}
.st-spot{position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(520px circle at var(--sx,70%) var(--sy,30%),rgba(199,125,255,.16),transparent 60%);transition:background .1s}
/* titular: brillo que recorre la palabra acento */
.st-hero-x h1 em{background:linear-gradient(90deg,#b347ff 0%,#c77dff 20%,#fde68a 32%,#c77dff 44%,#9b30ff 60%,#b347ff 100%);background-size:300% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:fxShine 7s linear infinite}
.st-hero-x h1{text-shadow:0 20px 60px rgba(179,71,255,.25)}
/* CTA principal con anillo pulsante */
.st-hero-x .cta .st-btn-gold{animation:fxRing 2.6s ease-out infinite}
/* arco: halo + destellos */
.st-hero-x .st-hero-img{box-shadow:0 50px 120px -40px rgba(179,71,255,.55),0 0 0 1px rgba(245,201,69,.12)}
.st-spark{position:absolute;width:18px;height:18px;pointer-events:none;z-index:3;animation:fxTwinkle 3.2s ease-in-out infinite}
.st-spark::before,.st-spark::after{content:"";position:absolute;left:50%;top:50%;background:#fde68a;border-radius:2px;box-shadow:0 0 12px #f5c945}
.st-spark::before{width:2px;height:18px;margin:-9px 0 0 -1px}
.st-spark::after{width:18px;height:2px;margin:-1px 0 0 -9px}
.st-spark.s1{top:6%;left:-4%}.st-spark.s2{top:38%;right:-5%;animation-delay:1.1s;transform:scale(.7)}.st-spark.s3{bottom:12%;left:8%;animation-delay:2.1s}
/* MARQUEE de catálogo */
.st-marquee{position:relative;overflow:hidden;border-block:1px solid rgba(245,201,69,.22);background:linear-gradient(90deg,rgba(179,71,255,.08),rgba(245,201,69,.05),rgba(179,71,255,.08));padding:22px 0;margin:0 0 clamp(48px,6vw,88px);-webkit-mask:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.st-marquee .tr{display:flex;width:max-content;animation:fxMarq 48s linear infinite}
.st-marquee:hover .tr{animation-play-state:paused}
.st-marquee .grp{display:flex;align-items:center;gap:34px;padding-right:34px}
.st-marquee b{font-family:'Poppins',sans-serif;font-weight:800;font-size:clamp(22px,2.6vw,38px);letter-spacing:-.02em;white-space:nowrap;color:transparent;-webkit-text-stroke:1px rgba(253,230,138,.55)}
.st-marquee b:nth-of-type(3n+1){color:#fde68a;-webkit-text-stroke:0;background:linear-gradient(180deg,#fff3c4,#f5c945 60%,#d99e17);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.st-marquee b:nth-of-type(3n+2){-webkit-text-stroke:1px rgba(199,125,255,.75)}
.st-marquee i{flex:none;width:10px;height:10px;transform:rotate(45deg);background:linear-gradient(135deg,#fde68a,#b347ff);box-shadow:0 0 12px rgba(179,71,255,.7)}
/* TILT + GLARE */
.st-card,.st-pkg,.st-area{transform-style:preserve-3d;transition:transform .45s var(--ease),box-shadow .3s,border-color .2s,background .2s;will-change:transform}
.st-card.is-tilt,.st-pkg.is-tilt,.st-area.is-tilt{transition:transform .08s linear,box-shadow .3s,border-color .2s;box-shadow:0 30px 60px -28px rgba(0,0,0,.85),0 20px 60px -20px rgba(179,71,255,.35)}
.st-glare{position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:4;opacity:0;transition:opacity .3s;background:radial-gradient(420px circle at var(--mx,50%) var(--my,0%),rgba(255,255,255,.13),rgba(245,201,69,.06) 30%,transparent 60%)}
.is-tilt>.st-glare{opacity:1}
/* imagen se acerca al hover */
.st-area .img image-slot,.st-area .img .st-imgph,.st-card .img .st-imgph,.st-pkg .img .st-imgph{transition:transform .9s var(--ease)}
.st-area:hover .img .st-imgph,.st-card:hover .img .st-imgph,.st-pkg:hover .img .st-imgph{transform:scale(1.05)}
.st-card .img,.st-pkg .img,.st-area .img{overflow:hidden}
/* áreas: numeral gigante en marca de agua */
.st-areas-x .st-area .body{overflow:hidden}
.st-areas-x .st-area .num{position:relative}
.st-areas-x .st-area .go svg{transition:transform .3s var(--ease)}
.st-areas-x .st-area:hover .go svg{transform:translateX(6px)}
/* títulos de sección: subrayado que se dibuja */
.st-sec-center h2{position:relative;padding-bottom:22px}
.st-sec-center h2::after{content:"";position:absolute;left:50%;bottom:0;width:120px;height:3px;border-radius:3px;transform:translateX(-50%) scaleX(0);transform-origin:center;background:var(--grad-progress);transition:transform 1s var(--ease) .2s}
.st-sec-head.in h2::after,.st-sec-head:not(.st-reveal) h2::after{transform:translateX(-50%) scaleX(1)}
/* REVEAL */
.st-reveal{opacity:0;transform:translateY(34px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.st-reveal.in{opacity:1;transform:none}
.st-areas>.st-reveal:nth-child(2),.st-pkgs>.st-reveal:nth-child(2){transition-delay:.1s}
.st-areas>.st-reveal:nth-child(3),.st-pkgs>.st-reveal:nth-child(3){transition-delay:.2s}
/* precio que late al cambiar */
.st-price.st-bump{animation:fxBump .55s var(--ease);display:inline-block}
/* paquete destacado: aura respirando */
@keyframes fxBreath{0%,100%{box-shadow:0 0 0 4px rgba(245,201,69,.08),0 30px 70px -30px rgba(245,201,69,.45)}50%{box-shadow:0 0 0 6px rgba(245,201,69,.14),0 40px 90px -30px rgba(245,201,69,.7)}}
.st-pkg.is-pop:not(.is-tilt){animation:fxBreath 4s ease-in-out infinite}
@media (max-width:860px){.st-aurora{filter:blur(50px)}.st-spot{display:none}.st-spark{display:none}.st-marquee{padding:16px 0}}
@media (prefers-reduced-motion:reduce){.st-marquee .tr,.st-aurora i,.st-hero-x h1 em,.st-spark{animation:none!important}.st-reveal{opacity:1;transform:none}}

/* ===== FX · pantallas internas ===== */
.st-fxhead{position:relative;isolation:isolate}
.st-fxhead>.st-aurora-sm{inset:-40% -30vw -30% -30vw;-webkit-mask:radial-gradient(60% 70% at 50% 40%,#000 30%,transparent 75%);mask:radial-gradient(60% 70% at 50% 40%,#000 30%,transparent 75%)}
html{overflow-x:clip}
.st-aurora-sm{inset:-60% -10% -40% -10%;filter:blur(60px);opacity:.7}
.st-aurora-sm i:nth-child(1){width:36vw;height:36vw;max-width:520px;max-height:520px;right:4%;top:-10%}
.st-aurora-sm i:nth-child(2){width:26vw;height:26vw;max-width:380px;max-height:380px;left:2%;bottom:-30%}
.st-aurora-sm i:nth-child(3){display:none}
.st-cv-head h1,.st-page-h h1{background:linear-gradient(90deg,#fff 0%,#fff 38%,#fde68a 48%,#fff 58%,#fff 100%);background-size:300% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:fxShine 9s linear infinite}
.st-pd h1{text-shadow:0 18px 50px rgba(179,71,255,.25)}
/* tabs: activo con brillo dorado */
.st-tabs .st-chip{transition:color .2s,border-color .2s,background .2s,box-shadow .3s,transform .2s}
.st-tabs .st-chip:hover{transform:translateY(-1px)}
.st-tabs .st-chip[aria-pressed="true"]{background:linear-gradient(180deg,#ffe27a,#f5c945 55%,#e6ad1f);color:#1a1200;border-color:transparent;font-weight:700;box-shadow:inset 0 1px 0 rgba(255,255,255,.6),0 8px 24px -8px rgba(245,201,69,.7)}
/* detalle: arco + halo */
.st-pd-media{isolation:isolate}
.st-pd-media .main{box-shadow:0 0 0 1px var(--gold-line),0 50px 110px -40px rgba(179,71,255,.6)}
.st-pd-media::before{content:"";position:absolute;inset:8% -6% -6% -6%;z-index:-1;border-radius:50%;background:radial-gradient(circle,rgba(179,71,255,.35),transparent 65%);filter:blur(40px);pointer-events:none}
.st-pd-media .st-spark.s1{top:4%;left:4%}.st-pd-media .st-spark.s2{top:30%;right:-2%}.st-pd-media .st-spark.s3{bottom:8%;left:-2%}
/* pasos del configurador: entrada escalonada */
.st-enter .st-pd>div:last-child>*{animation:stEnter .6s var(--ease) both}
.st-enter .st-pd>div:last-child>:nth-child(2){animation-delay:.05s}.st-enter .st-pd>div:last-child>:nth-child(3){animation-delay:.1s}.st-enter .st-pd>div:last-child>:nth-child(4){animation-delay:.15s}.st-enter .st-pd>div:last-child>:nth-child(5){animation-delay:.2s}.st-enter .st-pd>div:last-child>:nth-child(n+6){animation-delay:.25s}
.st-opt{transition:border-color .2s,background .2s,box-shadow .3s,transform .2s}
.st-opt:hover{transform:translateY(-2px)}
.st-opt[aria-checked="true"] .ck{animation:fxBump .45s var(--ease)}
.st-row{transition:background .2s}
.st-row:hover{background:var(--card-hover)}
.st-incl li svg{filter:drop-shadow(0 0 6px rgba(74,222,128,.6))}
/* caja de compra y resumen: brillo superior */
.st-buy,.st-sum{overflow:hidden}
.st-buy::before,.st-sum::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--grad-progress);pointer-events:none}
.st-buy .tot,.st-sum .tot{position:relative}
.st-buy .st-btn-gold,.st-sum .st-btn-gold{animation:fxRing 2.6s ease-out infinite}
/* carrito */
.st-item{transition:border-color .2s,transform .3s var(--ease),box-shadow .3s}
.st-item:hover{transform:translateX(4px);border-color:var(--gold-line);box-shadow:0 20px 50px -30px rgba(179,71,255,.5)}
.st-item .th .st-imgph{transition:transform .8s var(--ease)}.st-item:hover .th .st-imgph{transform:scale(1.06)}
.st-item .th{box-shadow:0 0 0 1px var(--gold-line)}
.st-cartbtn .n{transition:transform .3s var(--ease)}
.st-cartbtn:hover .n{transform:scale(1.12)}
/* resumen: próximos pasos con numeral degradado */
.st-next{position:relative;background:linear-gradient(180deg,rgba(179,71,255,.06),transparent);border-color:rgba(179,71,255,.25)}
.st-next b{font-family:'Poppins',sans-serif;font-weight:800;font-size:20px;background:linear-gradient(90deg,#c77dff,#fde68a);-webkit-background-clip:text;background-clip:text;color:transparent}
.st-rv-row{transition:background .2s}.st-rv-row:hover{background:rgba(255,255,255,.025)}
/* vacío / error */
.st-empty{position:relative;overflow:hidden;isolation:isolate;border-color:rgba(245,201,69,.25)}
.st-empty::before{content:"";position:absolute;inset:-40%;z-index:-1;background:radial-gradient(circle at 50% 40%,rgba(179,71,255,.22),transparent 55%);animation:fxDrift1 16s ease-in-out infinite;pointer-events:none}
.st-err::before{background:radial-gradient(circle at 50% 40%,rgba(244,63,94,.18),transparent 55%)}
/* toast con barrido dorado */
.st-toast{overflow:hidden}
.st-toast::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(253,230,138,.18) 50%,transparent 70%);background-size:200% 100%;animation:stSheen 1.4s var(--ease) .1s 1 both;pointer-events:none}
/* skeleton dorado */
.st-skel i{background:linear-gradient(90deg,rgba(255,255,255,.04),rgba(245,201,69,.10),rgba(255,255,255,.04));background-size:200% 100%}
/* footer */
.st-foot{position:relative}
.st-foot::before{content:"";position:absolute;left:10%;right:10%;top:-1px;height:1px;background:linear-gradient(90deg,transparent,rgba(245,201,69,.5),rgba(179,71,255,.5),transparent)}
@media (max-width:860px){.st-pd-media .st-spark{display:none}.st-item:hover{transform:none}}
@media (prefers-reduced-motion:reduce){.st-cv-head h1,.st-page-h h1,.st-empty::before{animation:none!important}}

/* image-slot dentro de tarjetas: sin anillo punteado; texto vacío arriba, lejos del título */
.st-area image-slot::part(ring),.st-card image-slot::part(ring),.st-pkg image-slot::part(ring),.st-hero-img image-slot::part(ring),.st-pd-media image-slot::part(ring),.st-item image-slot::part(ring),.st-lab-slot image-slot::part(ring){display:none}
.st-areas-x .st-area image-slot::part(empty){justify-content:flex-start;padding-top:18%;opacity:.55}
.st-area image-slot::part(empty),.st-card image-slot::part(empty),.st-pkg image-slot::part(empty){background:radial-gradient(120% 90% at 70% 10%,rgba(179,71,255,.22),transparent 60%),linear-gradient(180deg,#171b46,#0c1032)}
.st-image-slot-fit image-slot::part(image){object-fit:cover}

/* ===== Checkout + orden recibida ===== */
.st-form{display:flex;flex-direction:column;gap:18px}
.st-form fieldset{margin:0;padding:24px 26px 26px;border-radius:20px;background:var(--card);border:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;gap:16px;min-width:0}
.st-form legend{float:left;width:100%;margin-bottom:4px;padding:0;font-size:12px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}
.st-fgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.st-fld{display:flex;flex-direction:column;gap:8px;min-width:0}
.st-fld .l{font-size:13px;font-weight:600;color:var(--text-2)}
.st-fld .l i{font-style:normal;font-weight:400;color:var(--text-3)}
.st-fld input,.st-fld textarea{width:100%;min-height:50px;padding:13px 16px;border-radius:12px;background:rgba(255,255,255,.04);border:1.5px solid rgba(255,255,255,.12);color:#fff;font:500 15px 'Poppins',sans-serif;outline:none;transition:border-color .2s,box-shadow .2s,background .2s;color-scheme:dark}
.st-fld textarea{resize:vertical;min-height:96px}
.st-fld input:focus,.st-fld textarea:focus{border-color:var(--gold);background:rgba(245,201,69,.04);box-shadow:0 0 0 4px rgba(245,201,69,.12)}
.st-fld.is-err input,.st-fld.is-err textarea{border-color:#f43f5e;box-shadow:0 0 0 4px rgba(244,63,94,.12)}
.st-fld .e{font-size:12.5px;color:#ff8fa3;font-weight:500}
.st-sum .st-err{color:#ffb3c1}
@media (max-width:600px){.st-fgrid{grid-template-columns:1fr}.st-form fieldset{padding:20px 18px}}
.st-done{position:relative;isolation:isolate;overflow-x:clip;max-width:760px;margin:0 auto;padding:clamp(48px,7vw,96px) 0 clamp(72px,8vw,120px);display:flex;flex-direction:column;align-items:center;text-align:center;gap:16px}
.st-done .ok{width:84px;height:84px;border-radius:50%;display:grid;place-items:center;color:#062b12;background:radial-gradient(circle at 40% 35%,#86efac,#22c55e 60%,#15803d);box-shadow:0 0 0 8px rgba(34,197,94,.12),0 0 50px rgba(34,197,94,.5);animation:fxBump .7s var(--ease)}
.st-done h1{font-family:'Poppins',sans-serif;font-weight:800;letter-spacing:-.035em;font-size:clamp(40px,5vw,64px);line-height:1}
.st-done p{font-size:17px;line-height:1.6;color:var(--text-2);max-width:520px}
.st-done .folio{display:inline-flex;align-items:center;gap:14px;padding:12px 22px;border-radius:14px;border:1px solid var(--gold-line);background:rgba(245,201,69,.06)}
.st-done .folio span{font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--text-3)}
.st-done .folio b{font:800 24px 'Poppins',sans-serif;letter-spacing:.02em;color:var(--gold-2)}
.st-done .st-rv,.st-done .st-next{width:100%;text-align:left}
.st-done .st-rv-row:last-child{background:rgba(245,201,69,.05)}
