.cursor-root{z-index:9999;pointer-events:none;opacity:0;transition:opacity .25s;position:fixed;inset:0}:root[data-cursor-ready=true] .cursor-root{opacity:1}.has-custom-cursor,.has-custom-cursor *{cursor:none!important}.cursor-dot,.cursor-ring{will-change:transform;border-radius:999px;position:fixed;top:0;left:0}.cursor-dot{background:var(--color-accent);width:7px;height:7px;box-shadow:0 0 8px color-mix(in srgb, var(--color-accent) 60%, transparent);transition:opacity .18s}.cursor-ring{border:1.5px solid var(--color-accent);width:36px;height:36px;transition:width .28s cubic-bezier(.16,1,.3,1),height .28s cubic-bezier(.16,1,.3,1),background-color .28s,border-color .28s,opacity .18s;box-shadow:0 0 0 1px #0000001f,inset 0 0 0 1px #0000000f}.cursor-icon{will-change:transform;width:0;height:0;position:fixed;top:0;left:0}.cursor-icon__glyph{opacity:0;filter:drop-shadow(0 6px 14px #00000059);width:40px;height:40px;transition:opacity .2s,transform .3s cubic-bezier(.16,1,.3,1);display:block;position:absolute;top:0;left:0;transform:translate(-50%,-50%)scale(.5)}.cursor-icon[data-hover=true] .cursor-icon__glyph{opacity:1;transform:translate(-50%,-50%)scale(1)}:root[data-cursor-mode=link] .cursor-dot,:root[data-cursor-mode=link] .cursor-ring{opacity:0}.cursor-ring[data-hover=true]{background:color-mix(in srgb, var(--color-accent) 14%, transparent);width:56px;height:56px}.cursor-ring[data-down]{background:color-mix(in srgb, var(--color-accent) 22%, transparent);width:26px;height:26px}.cursor-ring__drag{letter-spacing:.08em;text-transform:uppercase;color:var(--color-ink);opacity:0;justify-content:center;align-items:center;font-family:Geist,system-ui,sans-serif;font-size:12px;font-weight:800;transition:opacity .18s;display:flex;position:absolute;inset:0}:root[data-cursor-mode=drag] .cursor-dot{opacity:0}:root[data-cursor-mode=drag] .cursor-ring{background:var(--color-accent);border-color:var(--color-accent);width:76px;height:76px;box-shadow:0 8px 24px -6px color-mix(in srgb, var(--color-accent) 60%, transparent)}:root[data-cursor-mode=drag] .cursor-ring__drag{opacity:1}:root[data-cursor-mode=drag] .cursor-ring:before,:root[data-cursor-mode=drag] .cursor-ring:after{content:"";border-block:6px solid #0000;width:0;height:0;position:absolute;top:50%}:root[data-cursor-mode=drag] .cursor-ring:before{border-right:9px solid var(--color-ink);margin-right:8px;right:100%;transform:translateY(-50%)}:root[data-cursor-mode=drag] .cursor-ring:after{border-left:9px solid var(--color-ink);margin-left:8px;left:100%;transform:translateY(-50%)}@media (hover:none),(pointer:coarse){.cursor-root{display:none}}@media (prefers-reduced-motion:reduce){.cursor-ring{transition:opacity .2s}}.site-loader{z-index:9999;background:var(--color-hero-dark);color:#fff;--p:0;display:none;position:fixed;inset:0;overflow:hidden}html[data-loader=active] .site-loader,html[data-loader=done] .site-loader:not([data-phase=gone]){display:block}html[data-loader=active]{overflow:hidden}html[data-loader=active] .site-loader{animation:.6s 9s forwards site-loader-failsafe}@keyframes site-loader-failsafe{to{opacity:0;visibility:hidden}}.site-loader__center{z-index:1;flex-direction:column;justify-content:center;align-items:center;padding:0 1rem;display:flex;position:absolute;inset:0}.site-loader__name{letter-spacing:-.04em;white-space:nowrap;margin:0;font-size:clamp(3rem,13vw,12rem);font-weight:900;line-height:.9;display:flex}.site-loader__space{width:.28em}.site-loader__letter{--l:clamp(0, (var(--p) - var(--at) + .09) * 11, 1);opacity:var(--l);transform:scaleX(calc(.12 + .88 * var(--l)));transform-origin:50%;display:inline-block}.site-loader__count{color:var(--color-accent);font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:.04em;margin-top:clamp(.75rem,2vw,1.5rem);font-size:clamp(1rem,1.6vw,1.4rem);font-weight:600}.site-loader[data-phase] .site-loader__letter{opacity:0;transition:transform .32s cubic-bezier(.7,0,.84,0),opacity .32s;transition-delay:var(--out);transform:scaleX(0)}.site-loader[data-phase] .site-loader__count{opacity:0;transition:opacity .3s .2s}.site-loader{transition:transform .95s cubic-bezier(.76,0,.24,1)}.site-loader[data-phase=lift]{transform:translateY(-100%)}@media (prefers-reduced-motion:reduce){.site-loader__letter{transform:none}.site-loader,.site-loader[data-phase] .site-loader__letter{transition:opacity .35s}.site-loader[data-phase=lift]{opacity:0;transform:none}}
