/* split-text: line / letter / scroll-scrub text reveals. Zyqor Components, MIT. */
.st-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.st-vis{display:block}
.st-word{display:inline-block}
.st-line{display:block;overflow:clip;padding:.04em 0 .1em;margin:-.04em 0 -.1em}
.st-line-in{display:block;transform:translate3d(0,108%,0) rotate(2.5deg);transform-origin:0 100%;transition:transform 1.05s var(--ease-out,cubic-bezier(.16,1,.3,1)) calc(var(--li,0) * 90ms + var(--st-delay,0ms))}
.st.is-in .st-line-in{transform:none}
.st--chars .st-char{display:inline-block;opacity:0;transform:translate3d(0,.55em,0) rotate(10deg);transform-origin:0 100%;transition:opacity .5s ease calc(var(--ci,0) * 22ms + var(--st-delay,0ms)),transform .8s var(--ease-out,cubic-bezier(.16,1,.3,1)) calc(var(--ci,0) * 22ms + var(--st-delay,0ms))}
.st--chars.is-in .st-char{opacity:1;transform:none}
.st--scrub .st-word{opacity:calc(.16 + var(--lit,0) * .84);transition:opacity .12s linear}
.st--static .st-line-in,.st--static .st-char{transform:none!important;opacity:1!important;transition:none!important}
.st--static.st--scrub .st-word{opacity:1}
@media (prefers-reduced-motion:reduce){.st-line-in,.st-char{transform:none!important;opacity:1!important;transition:none!important}.st--scrub .st-word{opacity:1}}
/* demo page only */
.st-demo{display:grid;gap:clamp(48px,9vw,120px)}
.st-h{font:760 clamp(44px,9vw,132px)/.9 var(--display);letter-spacing:-.04em;font-stretch:84%;margin:0;max-width:11ch}
.st-h .serif{color:var(--acc)}
.st-k{font:700 clamp(30px,5vw,64px)/1 var(--display);letter-spacing:-.03em;margin:0}
.st-p{font:500 clamp(22px,3.2vw,40px)/1.22 var(--display);letter-spacing:-.02em;margin:0;max-width:26ch}
.st-p .serif{color:var(--acc)}
.st-row{display:flex;justify-content:space-between;align-items:end;gap:16px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:16px}
.st-row .mono{color:var(--soft)}
.st-btn{font:600 14px/1 var(--body);background:transparent;color:var(--ink);border:1px solid currentColor;border-radius:999px;padding:12px 16px;cursor:pointer;min-height:44px}
.st-btn:hover{background:var(--ink);color:var(--bg)}
.st-spacer{height:30vh}
