body{margin:0}
a{color:#111111}a:hover{color:#5E5E5A}
@keyframes rise{from{opacity:0;transform:translateY(48px)}to{opacity:1;transform:none}}
@keyframes slidex{from{opacity:0.15;transform:translateX(-10%)}to{opacity:1;transform:none}}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.rise{animation:rise 1.1s cubic-bezier(.2,.7,.2,1) both}
.d2{animation-delay:.25s}.d3{animation-delay:.45s}
.marquee{display:flex;width:max-content;animation:marquee 60s linear infinite}
.marquee:hover{animation-play-state:paused}
.row{transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.row:hover{transform:translateX(16px)}
.btn{transition:background-color .35s,color .35s}
.btn:hover{background-color:#F7F7F5;color:#111111 !important}
@supports (animation-timeline: view()){
.slide{animation:slidex linear both;animation-timeline:view();animation-range:entry 0% cover 40%}
.reveal{animation:rise linear both;animation-timeline:view();animation-range:entry 0% entry 70%}
}
@media (prefers-reduced-motion: reduce){.rise,.slide,.reveal,.marquee{animation:none !important}.row,.btn{transition:none}}
.logo{display:inline-flex;align-items:center}
.lw{display:inline-block;overflow:hidden;height:1.1em;line-height:1.1}
.l{display:inline-block;text-shadow:0 1.1em currentColor;animation:logoUp .9s cubic-bezier(.2,.7,.2,1) backwards;transition:transform .55s cubic-bezier(.7,0,.2,1)}
.lw+.lw .l{animation-delay:.14s;transition-delay:.07s}
.logo:hover .l,.logo:focus-visible .l{transform:translateY(-1.1em)}
@keyframes logoUp{from{transform:translateY(110%)}}
@media (prefers-reduced-motion: reduce){.l{animation:none;transition:none}}
.intro{position:fixed;inset:0;z-index:100;background:#111111;color:#F7F7F5;display:flex;align-items:center;justify-content:center;pointer-events:none;animation:introOut .9s cubic-bezier(.76,0,.24,1) 1.9s forwards}
@keyframes introOut{to{transform:translateY(-100%);visibility:hidden}}
.intro-inner{display:flex;flex-direction:column;align-items:center;gap:20px}
.intro-logo{margin:0;display:flex;font-family:'Inter Tight',sans-serif;font-weight:600;font-size:clamp(72px,14vw,160px);letter-spacing:-.02em;line-height:1}
.iw{display:inline-block;overflow:hidden;line-height:1.05}
.il{display:inline-block;animation:logoUp .9s cubic-bezier(.2,.7,.2,1) .15s backwards}
.iw+.iw .il{animation-delay:.3s}
.intro-line{display:block;width:120px;height:1px;background:#F7F7F5;transform:scaleX(0);transform-origin:left;animation:lineGrow .8s cubic-bezier(.7,0,.2,1) .7s forwards}
@keyframes lineGrow{to{transform:scaleX(1)}}
.intro-sub{margin:0;font-family:'Inter Tight',sans-serif;font-size:11px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:#B5B5B0;opacity:0;animation:introFade .6s ease 1s forwards}
@keyframes introFade{to{opacity:1}}
.has-intro .rise{animation-delay:2.3s}.has-intro .rise.d2{animation-delay:2.5s}.has-intro .rise.d3{animation-delay:2.7s}
.has-intro .l{animation-delay:2.2s}.has-intro .lw+.lw .l{animation-delay:2.35s}
html.seen .intro{display:none}
html.seen .has-intro .rise{animation-delay:0s}html.seen .has-intro .rise.d2{animation-delay:.25s}html.seen .has-intro .rise.d3{animation-delay:.45s}
html.seen .has-intro .l{animation-delay:0s}html.seen .has-intro .lw+.lw .l{animation-delay:.14s}
@media (prefers-reduced-motion: reduce){.intro{display:none}}
.site-header{-webkit-backdrop-filter:saturate(1.4) blur(14px);backdrop-filter:saturate(1.4) blur(14px)}
.btn-dark{transition:background-color .35s,color .35s}
.btn-dark:hover{background-color:#F7F7F5 !important;color:#111111 !important}
