#tk-intro-root{--ink:#08070c;--fog:#15121d;--dust:#9a91c4;--lilac:#c8c0e6;--accent:#cbbfff;--hot:#8674ff;--text:#efedf6;--dim:#a9a3c2;--faint:#5e586e;--hairline:#c8c0e621;--hairline-strong:#c8c0e642;--accent-live:var(--hot);--font-display:"Fraunces", Georgia, "Times New Roman", serif;--font-ui:"Geist", system-ui, -apple-system, sans-serif;--font-mono:"Geist Mono", ui-monospace, "SF Mono", monospace;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-inout:cubic-bezier(.65, 0, .35, 1)}#tk-intro-root *{box-sizing:border-box;margin:0;padding:0}#tk-intro-root html{-webkit-text-size-adjust:100%}#tk-intro-root html.lenis,#tk-intro-root html.lenis body{height:auto}#tk-intro-root .lenis.lenis-smooth{scroll-behavior:auto!important}#tk-intro-root .lenis.lenis-stopped{overflow:hidden}#tk-intro-root html.intro-open,#tk-intro-root html.intro-open body{height:100%;overflow:hidden}#tk-intro-root body{background:var(--ink);color:var(--text);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-weight:400;overflow-x:hidden}#tk-intro-root #root{position:relative}#tk-intro-root .scene-canvas{z-index:0;pointer-events:none;width:100%;height:100%;position:fixed;inset:0}#tk-intro-root .scene-canvas canvas{display:block}#tk-intro-root ::selection{color:#fff;background:#8674ff4d}#tk-intro-root a{color:inherit;text-decoration:none}#tk-intro-root button{color:inherit;cursor:pointer;font-family:inherit}#tk-intro-root .kicker{font-family:var(--font-mono);letter-spacing:.34em;text-transform:uppercase;color:var(--dim);font-size:clamp(10px,.78vw,12px);font-weight:500}#tk-intro-root .serif{font-family:var(--font-display)}#tk-intro-root .serif-i{font-family:var(--font-display);font-style:italic;font-weight:400}@media (prefers-reduced-motion:reduce){#tk-intro-root *,#tk-intro-root :before,#tk-intro-root :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}#tk-intro-root .intro{z-index:50;transition:opacity 1.2s var(--ease-out), transform 1.3s var(--ease-out), filter 1.2s var(--ease-out);background:radial-gradient(130% 100% at 50% 38%,#0c0a12 0%,#050409 70%,#040308 100%);position:fixed;inset:0;overflow:hidden}#tk-intro-root .intro.is-leaving{opacity:0;filter:blur(12px);pointer-events:none;transform:scale(1.06)}#tk-intro-root .intro-emblem{z-index:1;width:min(88vmin,740px);height:min(88vmin,740px);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}#tk-intro-root .intro-emblem g{transform-origin:50%;transform-box:view-box}#tk-intro-root .intro-fade{animation:introFade .9s var(--ease-out) both}@keyframes introFade{0%{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}#tk-intro-root .intro-center{z-index:2;text-align:center;flex-direction:column;align-items:center;gap:30px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}#tk-intro-root .intro-word{line-height:1.02;font-family:var(--font-ui);text-transform:uppercase;letter-spacing:.16em;color:#fff;flex-direction:column;font-size:clamp(22px,3vw,40px);font-weight:600;display:flex}#tk-intro-root .intro-line{padding-left:.16em;display:block}#tk-intro-root .intro-char{will-change:opacity, transform, filter;display:inline-block}#tk-intro-root .intro-action{width:212px;height:50px;position:relative}#tk-intro-root .intro-loading{text-align:center;font-family:var(--font-mono);letter-spacing:.3em;text-transform:uppercase;color:var(--dim);font-size:11px;position:absolute;top:8px;left:0;right:0}#tk-intro-root .enter{cursor:pointer;transition:transform .4s var(--ease-out);background:0 0;border:0;place-items:center;display:grid;position:absolute;inset:0;pointer-events:none}#tk-intro-root .enter.is-ready{pointer-events:auto}#tk-intro-root .enter:hover{transform:translateY(-1px)}#tk-intro-root .enter-line{transform-origin:50%;background:#e6e2f599;height:1px;position:absolute;top:64%;left:0;right:0}#tk-intro-root .enter-box{z-index:1;transform-origin:50%;transition:border-color .35s var(--ease-out);border:1px solid #e6e2f566;border-radius:5px;position:absolute;inset:0}#tk-intro-root .enter:hover .enter-box{border-color:#ece7ffd9}#tk-intro-root .enter-fill{z-index:0;transform-origin:bottom;opacity:0;transition:transform .5s var(--ease-out), opacity .3s var(--ease-out);background:linear-gradient(#ece7ff,#cbbfff);border-radius:5px;position:absolute;inset:0;transform:scaleY(0)}#tk-intro-root .enter:hover .enter-fill{opacity:1;transform:scaleY(1)}#tk-intro-root .enter-label{z-index:2;height:1.1em;font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;font-size:12px;position:relative;overflow:hidden}#tk-intro-root .enter-track{transition:transform .5s var(--ease-out);flex-direction:column;display:flex}#tk-intro-root .enter-track span{height:1.1em;line-height:1.1em;display:block}#tk-intro-root .enter-track span:first-child{color:#fff}#tk-intro-root .enter-track span:last-child{color:#0a0810}#tk-intro-root .enter:hover .enter-track{transform:translateY(-1.1em)}#tk-intro-root .intro-foot{z-index:2;text-align:center;flex-direction:column;align-items:center;gap:18px;display:flex;position:absolute;bottom:clamp(34px,7vh,76px);left:50%;transform:translate(-50%)}#tk-intro-root .intro-skip{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--text);background:0 0;border:0;border-bottom:1px solid #e6e2f580;padding-bottom:4px;font-size:12px;transition:color .3s,border-color .3s}#tk-intro-root .intro-skip:hover{color:#fff;border-color:#fff}#tk-intro-root .intro-note{font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--faint);font-size:9.5px;line-height:1.7}
/*$vite$:1*/
/* neutralize the old razv .intro* animations bleeding from app.css */
#tk-intro-root .intro-emblem,#tk-intro-root .intro-center,#tk-intro-root .intro-foot,#tk-intro-root .intro-word,#tk-intro-root .intro-action,#tk-intro-root .intro-loading,#tk-intro-root .intro-skip,#tk-intro-root .intro-note{animation:none !important}

/* while the intro is up: drop the heavy WebGL canvas + overlays from compositing,
   and GPU-promote the emblem groups so their rotation never rasterizes per frame */
html.tk-intro-active .scene,html.tk-intro-active .grain,html.tk-intro-active .vignette{visibility:hidden !important}
#tk-intro-root .intro-emblem{will-change:transform}
#tk-intro-root .intro-emblem g{will-change:transform}
