/* PYRINAS KINETIC / shared page motion */
:root{--scroll-progress:0;--pointer-x:0;--pointer-y:0}
html{scroll-padding-top:32px}body{overflow-x:clip}
.kinetic-progress{position:fixed;top:0;left:0;height:5px;width:100%;transform:scaleX(var(--scroll-progress));transform-origin:left;z-index:9995;pointer-events:none;background:linear-gradient(90deg,#f9fa53,#ff7ecb,#43ef9d,#7658fa)}
.kinetic-curtain{position:fixed;inset:0;z-index:9000;pointer-events:none;background:#7658fa;clip-path:inset(0 0 100% 0);transition:clip-path .55s cubic-bezier(.76,0,.24,1)}
.kinetic-curtain.on{clip-path:inset(0 0 0 0)}
.kinetic-curtain::after{content:'P';position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(10deg);font-size:min(45vw,350px);font-weight:900;color:#f9fa53;line-height:1}
.kinetic-reveal{opacity:0;translate:0 60px;transition:opacity .85s ease,translate 1s cubic-bezier(.2,.8,.2,1)}.kinetic-reveal.kinetic-visible{opacity:1;translate:0 0}
.kinetic-split{overflow:hidden}.kinetic-split .kinetic-word{display:inline-block;transform:translateY(115%) rotate(4deg);opacity:0;transition:transform .85s cubic-bezier(.18,.85,.18,1),opacity .65s ease;transition-delay:calc(var(--word-i)*65ms);white-space:pre}.kinetic-split.kinetic-visible .kinetic-word{transform:translateY(0) rotate(0);opacity:1}
.kinetic-float{will-change:transform;transform:translate3d(0,var(--parallax-y,0px),0) rotate(var(--parallax-r,0deg));}
.kinetic-grid{position:relative;isolation:isolate;overflow:hidden}.kinetic-grid::after{content:'';position:absolute;inset:-30%;z-index:0;pointer-events:none;opacity:.22;background:repeating-linear-gradient(45deg,transparent 0 45px,rgba(255,255,255,.45) 45px 46px,transparent 46px 90px);transform:translate3d(var(--grid-x,0px),var(--grid-y,0px),0) rotate(var(--grid-r,0deg));will-change:transform}.kinetic-grid>*{position:relative;z-index:1}
.kinetic-chroma{animation:kinetic-colors 14s ease-in-out infinite alternate}@keyframes kinetic-colors{0%{filter:hue-rotate(0deg)}100%{filter:hue-rotate(28deg)}}
.kinetic-ribbon{overflow:hidden;background:#f9fa53;border-block:2px solid #111;padding:12px 0;color:#111}.kinetic-ribbon-track{display:flex;width:max-content;gap:45px;font-weight:900;font-size:clamp(22px,4vw,54px);letter-spacing:-.065em;white-space:nowrap;animation:kinetic-marquee 26s linear infinite}.kinetic-ribbon-track span{flex:none}.kinetic-ribbon:nth-of-type(even){background:#43ef9d}.kinetic-ribbon:nth-of-type(even) .kinetic-ribbon-track{animation-direction:reverse}@keyframes kinetic-marquee{to{transform:translateX(-50%)}}
.kinetic-sticky{position:relative}.kinetic-sticky .kinetic-accent{position:absolute;top:10%;right:3%;font-size:clamp(100px,18vw,300px);line-height:1;font-weight:900;color:#f9fa53;opacity:.18;pointer-events:none;transform:rotate(11deg) translateY(var(--accent-y,0px));z-index:0}
.kinetic-punch{transition:transform .4s cubic-bezier(.2,.8,.2,1),background-color .3s}.kinetic-punch:hover{transform:translateY(-9px) rotate(-1.2deg)}
.p-cursor svg{transform:rotate(11deg);transform-origin:center}.p-cursor.is-link svg{transform:rotate(11deg) scale(.72)}
@media(pointer:fine) and (hover:hover){body.p-motion a,body.p-motion button,body.p-motion [role="button"],body.p-motion label,body.p-motion input,body.p-motion textarea,body.p-motion select{cursor:pointer!important}body.p-motion input,body.p-motion textarea{cursor:text!important}}
@media(max-width:800px){.kinetic-reveal{translate:0 22px}.kinetic-grid::after{opacity:.13}.kinetic-curtain{display:none}}
@media(prefers-reduced-motion:reduce){.kinetic-reveal,.kinetic-split .kinetic-word{opacity:1!important;translate:none!important;transform:none!important;transition:none!important}.kinetic-chroma,.kinetic-ribbon-track{animation:none!important}.kinetic-grid::after{transform:none!important}.kinetic-float{transform:none!important}.kinetic-curtain{display:none!important}}

/* V15: left-leaning cursor and flowing full-word watermark */
.p-cursor svg{transform:rotate(-11deg);transform-origin:50% 50%}
.p-cursor.is-link svg{transform:rotate(-11deg) scale(.72)}
.closing{isolation:isolate}
.closing .closing-shape{font-size:clamp(105px,19vw,350px)!important;letter-spacing:-.095em;white-space:nowrap;font-weight:900;right:auto!important;left:-17%!important;top:12%!important;line-height:1.15;opacity:.22;color:#113c31!important;animation:word-weave 15s ease-in-out infinite alternate!important;transform-origin:center center;z-index:0;pointer-events:none;will-change:transform}
.closing .closing-shape::after{content:'PYRINAS';position:absolute;left:14%;top:95%;color:#7658fa;opacity:.33;letter-spacing:-.095em;transform:rotate(-8deg);animation:word-weave-echo 13s ease-in-out infinite alternate}
@keyframes word-weave{0%{transform:translate3d(-3%,0,0) rotate(-8deg) skewX(-5deg)}50%{transform:translate3d(12%,20%,0) rotate(3deg) skewX(4deg)}100%{transform:translate3d(-1%,42%,0) rotate(-5deg) skewX(-2deg)}}
@keyframes word-weave-echo{0%{transform:translateX(8%) rotate(8deg)}100%{transform:translateX(-13%) rotate(-8deg)}}
@media(max-width:700px){.closing .closing-shape{font-size:clamp(85px,23vw,170px)!important;left:-45%!important;top:26%!important;opacity:.16}}
@media(prefers-reduced-motion:reduce){.closing .closing-shape,.closing .closing-shape::after{animation:none!important;transform:rotate(-8deg)}}
