/* Numérisite motion system — shared by all demo universes */
:root{--wow-accent:var(--accent,var(--pink,var(--red,#b7ff45)));--wow-ease:cubic-bezier(.2,.75,.18,1);--wow-x:50vw;--wow-y:35vh}
html{scroll-behavior:smooth}
body.wow-ready{overflow-x:clip}
body.wow-premium:before{content:"";position:fixed;z-index:999;left:0;top:0;width:38rem;height:38rem;border-radius:50%;pointer-events:none;background:radial-gradient(circle,color-mix(in srgb,var(--wow-accent) 15%,transparent),transparent 67%);transform:translate3d(calc(var(--wow-x) - 19rem),calc(var(--wow-y) - 19rem),0);opacity:.75;mix-blend-mode:screen;transition:opacity .35s}
.wow-page-wipe{position:fixed;z-index:10000;inset:0;pointer-events:none;background:var(--wow-accent);transform:scaleY(1);transform-origin:top;transition:transform .8s var(--wow-ease)}
.wow-ready.wow-entered .wow-page-wipe{transform:scaleY(0)}
.wow-ready.wow-leaving .wow-page-wipe{transform:scaleY(1);transform-origin:bottom;transition-duration:.34s}
.wow-reveal,.wow-reveal.wow-left,.wow-reveal.wow-right{opacity:1;transform:none;filter:none;will-change:transform,opacity}
.wow-reveal.is-visible{animation:wowRise .85s var(--wow-ease) both;animation-delay:var(--wow-delay,0ms)}
@keyframes wowRise{from{opacity:0;transform:translate3d(0,36px,0);filter:blur(5px)}to{opacity:1;transform:none;filter:none}}
.wow-image{clip-path:inset(0);opacity:1;filter:saturate(.82) contrast(1.03);transition:filter 1.1s var(--wow-ease),transform .8s var(--wow-ease);transition-delay:var(--wow-delay,80ms)}
.wow-image.wow-image-right{clip-path:inset(0)}
.wow-image.is-visible{clip-path:inset(0);opacity:1;filter:saturate(1) contrast(1)}
.wow-parallax{--wow-parallax-y:0px;transform:translate3d(0,var(--wow-parallax-y),0) scale(1.08)!important;will-change:transform}
.wow-hero-title{position:relative;isolation:isolate}
.wow-hero-title:after{content:"";display:block;width:min(7rem,28vw);height:.12em;margin-top:.18em;background:var(--wow-accent);transform:scaleX(0);transform-origin:left;animation:wowLine 1s .55s var(--wow-ease) forwards}
@keyframes wowLine{to{transform:scaleX(1)}}
.wow-word{display:inline-block;opacity:0;transform:translateY(.75em) rotate(2deg);animation:wowWord .85s var(--wow-ease) forwards;animation-delay:calc(140ms + var(--word-index)*65ms)}
@keyframes wowWord{to{opacity:1;transform:none}}
[data-wow-tilt]{transform-style:preserve-3d;transition:transform .22s ease,box-shadow .35s ease;will-change:transform}
[data-wow-tilt]:hover{box-shadow:0 28px 65px color-mix(in srgb,var(--wow-accent) 18%,transparent);z-index:2}
.wow-magnetic{transition:transform .22s ease,box-shadow .3s ease!important;will-change:transform}
.wow-magnetic:hover{box-shadow:0 14px 34px color-mix(in srgb,var(--wow-accent) 30%,transparent)}
.wow-count{font-variant-numeric:tabular-nums}
.wow-shine{position:relative;overflow:hidden}
.wow-shine:after{content:"";position:absolute;z-index:3;inset:-50%;pointer-events:none;background:linear-gradient(105deg,transparent 42%,color-mix(in srgb,var(--wow-accent) 35%,white) 50%,transparent 58%);transform:translateX(-80%) rotate(8deg);animation:wowShine 6s 1.2s infinite}
@keyframes wowShine{0%,60%{transform:translateX(-80%) rotate(8deg)}85%,100%{transform:translateX(80%) rotate(8deg)}}
.wow-premium .site-head,.wow-premium .radio-head,.wow-premium .news-header{transition:transform .45s var(--wow-ease),background .35s,box-shadow .35s}
.wow-scrolled .site-head,.wow-scrolled .radio-head{box-shadow:0 16px 45px #0002;backdrop-filter:blur(18px)}
.wow-premium main article img{transition:transform .8s var(--wow-ease),filter .8s var(--wow-ease),clip-path 1.25s var(--wow-ease)}
.wow-premium main article:hover img{transform:scale(1.045)}
.wow-premium .primary,.wow-premium .head-cta,.wow-premium .hero-play,.wow-premium .listen{position:relative;isolation:isolate;overflow:hidden}
.wow-premium .primary:before,.wow-premium .head-cta:before,.wow-premium .hero-play:before,.wow-premium .listen:before{content:"";position:absolute;z-index:-1;inset:0;background:white;opacity:.17;transform:translateX(-105%) skewX(-18deg);transition:transform .5s var(--wow-ease)}
.wow-premium .primary:hover:before,.wow-premium .head-cta:hover:before,.wow-premium .hero-play:hover:before,.wow-premium .listen:hover:before{transform:translateX(105%) skewX(-18deg)}
.wow-premium[data-variant="electric"] .wow-hero-title{animation:voltFlash .6s .25s both}
@keyframes voltFlash{0%,17%,35%{text-shadow:0 0 0 transparent}8%,28%{text-shadow:0 0 35px var(--wow-accent)}100%{text-shadow:0 0 0 transparent}}
.wow-premium[data-variant="yoga"] .brand i{animation:breathe 5s ease-in-out infinite}
@keyframes breathe{50%{transform:scale(1.12);box-shadow:0 0 0 12px color-mix(in srgb,var(--wow-accent) 10%,transparent)}}
.wow-premium[data-variant="jewel"] .premium-hero:after{content:"";position:absolute;z-index:1;inset:-30%;pointer-events:none;background:linear-gradient(115deg,transparent 43%,#fff4 50%,transparent 57%);transform:translateX(-65%);animation:jewelLight 7s 1s infinite}
@keyframes jewelLight{0%,55%{transform:translateX(-65%)}90%,100%{transform:translateX(65%)}}
.wow-premium .wave-logo i{animation:waveLogo .8s ease-in-out infinite alternate;animation-delay:calc(var(--bar,1)*-120ms)}
.wow-premium .wave-logo i:nth-child(2){--bar:2}.wow-premium .wave-logo i:nth-child(3){--bar:3}.wow-premium .wave-logo i:nth-child(4){--bar:4}
@keyframes waveLogo{to{transform:scaleY(.45)}}
.wow-premium .breaking{position:relative;overflow:hidden}.wow-premium .breaking:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,#fff3,transparent);transform:translateX(-100%);animation:breakingSweep 3.5s infinite}
@keyframes breakingSweep{70%,100%{transform:translateX(100%)}}
.wow-admin .metrics article{transition:transform .35s var(--wow-ease),border-color .35s}.wow-admin .metrics article:hover{transform:translateY(-7px);border-color:var(--red,#c20017)}
@media(max-width:800px){body.wow-premium:before{display:none}.wow-reveal,.wow-reveal.wow-left,.wow-reveal.wow-right{transform:translateY(30px)}[data-wow-tilt]{transform:none!important}.wow-parallax{transform:scale(1.04)!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}body.wow-premium:before,.wow-page-wipe{display:none!important}.wow-reveal,.wow-image,.wow-word{opacity:1!important;transform:none!important;filter:none!important;clip-path:none!important;animation:none!important;transition:none!important}.wow-parallax,[data-wow-tilt],.wow-magnetic{transform:none!important}.wow-shine:after,.brand i,.wave-logo i{animation:none!important}}
