   /* Scroll reveal helpers (vanilla) */
    .reveal{opacity:0;transform:translateY(24px);transition:all .7s ease-out;will-change:transform,opacity}
    .reveal.reveal-right{transform:translateX(24px)}
    .reveal.reveal-left{transform:translateX(-24px)}
    .reveal.reveal-down{transform:translateY(-24px)}
    .reveal.show{opacity:1;transform:none}
    /* Initial loader overlay */
    #initial-loader{position:fixed;inset:0;z-index:70;display:flex;align-items:center;justify-content:center;background:rgba(10,15,22,.95);backdrop-filter:saturate(100%) blur(6px);transition:opacity .5s ease}
    #initial-loader.hide{opacity:0;pointer-events:none}
    .spinner{position:relative;height:64px;width:64px}
    .spinner .ring{position:absolute;inset:0;border-radius:9999px;border:2px solid rgba(53,182,255,.2)}
    .spinner .ring2{position:absolute;inset:0;border-radius:9999px;border:2px solid rgba(53,182,255,.6);border-top-color:transparent;animation:spin 1s linear infinite}
    .spinner img{position:absolute;inset:0;margin:auto;height:40px;width:40px;animation:float 2.4s ease-in-out infinite;user-select:none}
    @keyframes spin{to{transform:rotate(360deg)}}