/* VEXO / Signal Fold — symbol-only identity, October 2026. */
body.vexo-store .vx-logo{display:inline-flex;width:76px;height:76px!important;align-items:center;justify-content:center;line-height:0;flex:none}
body.vexo-store .vx-logo>img{display:block;width:100%;height:100%!important;max-height:none;object-fit:contain}
body.vexo-store .vx-logo-light>img{filter:none}
body.vexo-store .vx-brand{display:flex;align-items:center;justify-content:center;min-width:110px}
body.vexo-store .vx-drawer-head .vx-logo{width:68px;height:68px!important}
body.vexo-store .vx-drawer-head{padding-block:5px}
body.vexo-store .vx-footer-brand>.vx-logo,body.vexo-store .vx-footer-brand>a>.vx-logo{width:104px;height:104px!important}
.vx-splash{display:none}
html.vx-intro .vx-splash{position:fixed;inset:0;z-index:999999;display:grid;place-items:center;overflow:hidden;isolation:isolate;background:#f5f7f0;pointer-events:none;animation:vx-splash-out .32s 1.1s both}
.vx-splash:before,.vx-splash:after{content:"";position:absolute;width:min(90vw,680px);aspect-ratio:1;border-radius:50%;border:1px solid #004f4610;transform:rotate(-25deg) scaleY(.55);z-index:-1}
.vx-splash:after{width:min(120vw,920px);transform:rotate(35deg) scaleY(.55);border-color:#004f4609}
.vx-splash-stage{position:relative;display:grid;place-items:center;width:236px;height:236px;animation:vx-symbol-enter .85s cubic-bezier(.2,.75,.25,1) both}
.vx-splash-stage:before{content:"";position:absolute;inset:15%;border-radius:50%;background:#d5ff5f30;filter:blur(32px);z-index:-1}
.vx-splash-symbol{display:block;width:220px;height:220px;object-fit:contain}
.vx-splash-orbit{position:absolute;inset:0;border:1px solid #004f461a;border-radius:50%;animation:vx-orbit-enter 1.15s cubic-bezier(.2,.7,.3,1) both}
.vx-splash-orbit:before{content:"";position:absolute;width:9px;height:9px;top:18%;right:12%;border-radius:50%;background:#ff765e;box-shadow:0 0 0 7px #ff765e10}
.vx-splash-orbit:after{content:"";position:absolute;width:5px;height:5px;bottom:12%;left:18%;border-radius:50%;background:#004f46}
.vx-splash-progress{position:absolute;bottom:max(12%,calc(34px + env(safe-area-inset-bottom)));width:56px;height:3px;border-radius:8px;background:#004f4610;overflow:hidden}
.vx-splash-progress:after{content:"";position:absolute;inset:0;background:#004f46;border-radius:inherit;transform-origin:right;animation:vx-splash-progress 1.05s cubic-bezier(.2,.65,.3,1) both}
@keyframes vx-symbol-enter{from{opacity:0;transform:translateY(12px) scale(.82) rotate(-8deg)}to{opacity:1;transform:translateY(0) scale(1) rotate(0)}}
@keyframes vx-orbit-enter{from{opacity:0;transform:scale(.76) rotate(-65deg)}to{opacity:1;transform:scale(1) rotate(12deg)}}
@keyframes vx-splash-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes vx-splash-out{to{opacity:0;visibility:hidden}}
@media(max-width:700px){body.vexo-store .vx-header .vx-brand{min-width:0;justify-self:center}body.vexo-store .vx-header .vx-logo{width:61px;height:61px!important}body.vexo-store .vx-drawer-head .vx-logo{width:64px;height:64px!important}.vx-splash-stage{width:208px;height:208px}.vx-splash-symbol{width:194px;height:194px}}
@media(prefers-reduced-motion:reduce){html.vx-intro .vx-splash{display:none}.vx-splash *{animation:none!important}}
