/* v3.3 · Splash (abre la app) */
.splash{display:none}
.splash-on .splash{display:flex;position:fixed;inset:0;z-index:10000;background:#fff;align-items:center;justify-content:center;cursor:pointer;-webkit-tap-highlight-color:transparent;animation:spOut .45s ease-in 2.25s forwards}
.sp-stage{display:flex;flex-direction:column;align-items:center;gap:22px;transform:translateY(-4vh)}
.sp-logo{display:block;width:min(58vw,230px);height:auto;overflow:visible}
.sp-bottle{transform-box:fill-box;transform-origin:50% 70%;animation:spIn .55s cubic-bezier(.2,.7,.2,1) both}
.sp-cap{transform-box:fill-box;transform-origin:50% 100%;animation:spCap .7s cubic-bezier(.3,.1,.2,1) .55s both}
.sp-mist ellipse,.sp-mist path{transform-box:fill-box;transform-origin:50% 50%;opacity:0}
.sp-mist .m1{animation:spMist 1.15s ease-out .8s both}
.sp-mist .m2{animation:spMistL 1.1s ease-out .92s both}
.sp-mist .m3{animation:spMistR 1.1s ease-out 1.02s both}
.sp-mist .k1{animation:spSpark .8s ease-out .95s both}
.sp-mist .k2{animation:spSpark .8s ease-out 1.1s both}
.sp-mist .k3{animation:spSpark .8s ease-out 1.25s both}
.sp-mist .k4{animation:spSpark .75s ease-out 1.35s both}
.sp-mist .k5{animation:spSpark .75s ease-out 1.05s both}
.sp-mist .m4{animation:spMist 1s ease-out 1.15s both}
.sp-star{transform-box:fill-box;transform-origin:50% 55%;animation:spStar .6s ease-in-out 1.15s both}
.sp-glint{transform-box:fill-box;transform-origin:50% 50%;opacity:0;animation:spGlint .6s ease-in-out 1.15s both}
.sp-name{margin:0;font-family:var(--sans);font-size:15px;letter-spacing:.32em;color:#111;white-space:nowrap;padding-left:.32em;animation:spName .6s ease-out 1.3s both}
.sp-name b{font-weight:600}.sp-name span{font-weight:300}
.splash.sp-skip{animation:spOut .2s ease-in forwards}
@keyframes spIn{from{opacity:0;transform:scale(.9)}to{opacity:1;transform:none}}
@keyframes spCap{0%{transform:none}55%{transform:translate(5px,-70px) rotate(-10deg)}100%{transform:translate(7px,-80px) rotate(-12deg)}}
@keyframes spMist{0%{opacity:0;transform:translateY(0) scale(.4)}35%{opacity:1}100%{opacity:0;transform:translateY(-95px) scale(1.8)}}
@keyframes spMistL{0%{opacity:0;transform:translate(0,0) scale(.4)}35%{opacity:.9}100%{opacity:0;transform:translate(-26px,-58px) scale(1.5)}}
@keyframes spMistR{0%{opacity:0;transform:translate(0,0) scale(.4)}35%{opacity:.9}100%{opacity:0;transform:translate(24px,-62px) scale(1.5)}}
@keyframes spSpark{0%{opacity:0;transform:translateY(0) scale(.2) rotate(0)}40%{opacity:1;transform:translateY(-22px) scale(1.15) rotate(30deg)}100%{opacity:0;transform:translateY(-48px) scale(.5) rotate(60deg)}}
@keyframes spStar{0%,100%{transform:none}45%{transform:scale(1.35)}}
@keyframes spGlint{0%{opacity:0;transform:scale(.2) rotate(0)}45%{opacity:.95;transform:scale(1) rotate(45deg)}100%{opacity:0;transform:scale(.3) rotate(90deg)}}
@keyframes spName{from{opacity:0;letter-spacing:.5em;transform:translateY(6px)}to{opacity:1;letter-spacing:.32em;transform:none}}
@keyframes spOut{to{opacity:0;visibility:hidden}}
@media (prefers-reduced-motion:reduce){
  .splash-on .splash{animation:spOut .3s linear 1.2s forwards}
  .sp-bottle,.sp-cap,.sp-star,.sp-name{animation:none}
  .sp-mist,.sp-glint{display:none}
}

/* v3.4 · logotipo nuevo */
.sp-name{letter-spacing:0;padding-left:0;line-height:0}
.sp-name img{display:block;width:240px;max-width:70vw;height:auto}
