:root{--bg:#f6f6f3;--ink:#141416;--soft:#54565a;--mute:#8e9095;--rule:#d5d5cf;--panel:#edede8;--accent:#6e7075;--sans:"Inter Tight","Helvetica Neue",Helvetica,Arial,sans-serif}
*{box-sizing:border-box;margin:0;padding:0}
::selection{background:#141416;color:#f6f6f3}
body{background:var(--bg);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;text-wrap:pretty}
a{color:inherit;text-decoration:none}
a:hover{color:var(--ink)}
:focus-visible{outline:2px solid var(--ink);outline-offset:4px}
.wrap{max-width:1500px;margin:0 auto;padding:0 clamp(20px,4.5vw,72px)}
nav{display:flex;justify-content:space-between;align-items:baseline;padding-top:clamp(24px,2.8vw,40px);gap:24px}
.mark{font-size:clamp(16px,1.2vw,19px);font-weight:600;letter-spacing:-.022em}
.navlinks{display:flex;gap:clamp(18px,2vw,34px);font-size:14.5px;font-weight:500;color:var(--soft)}
.navlinks a{position:relative}
.navlinks a.on{color:var(--ink)}
.navlinks a::after{content:"";position:absolute;left:0;right:100%;bottom:-3px;height:1px;background:currentColor;transition:right .32s cubic-bezier(.2,.7,.2,1)}
.navlinks a:hover::after,.navlinks a.on::after{right:0}
footer{display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px 32px;padding:clamp(18px,2vw,26px) 0 clamp(34px,4.5vw,64px);border-top:1px solid var(--rule);font-size:13px;color:var(--soft)}
footer .l{display:flex;gap:clamp(14px,1.8vw,28px)}
footer a:hover{text-decoration:underline;text-underline-offset:3px}
@media (prefers-reduced-motion:no-preference){.rv{opacity:0;transform:translateY(16px);transition:opacity .75s cubic-bezier(.2,.7,.2,1),transform .75s cubic-bezier(.2,.7,.2,1)}.rv.in{opacity:1;transform:none}}
