*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--c-bg);color:var(--c-text);font:400 var(--step-0)/1.6 var(--f-body);font-stretch:100%}
img,video{max-width:100%;height:auto;display:block}
a{color:inherit;text-underline-offset:.18em;text-decoration-thickness:1px}
a:hover{text-decoration-thickness:2px}
:focus-visible{outline:3px solid #000;outline-offset:3px;box-shadow:0 0 0 6px #fff}
.ink :focus-visible,.stage :focus-visible,.hero :focus-visible,.site-footer :focus-visible{outline-color:#fff;box-shadow:0 0 0 6px #000}
h1,h2,h3{font-family:var(--f-display);line-height:1.04;margin:0 0 .45em;letter-spacing:-.02em}
h1{font-size:var(--step-3);font-weight:800;font-stretch:112%}
h2{font-size:var(--step-2);font-weight:750;font-stretch:108%}
h3{font-size:var(--step-1);font-weight:700;font-stretch:100%;letter-spacing:-.01em;line-height:1.15}
p,ul,ol{margin:0 0 1em}
.wrap{max-width:var(--max);margin-inline:auto;padding-inline:clamp(1.15rem, 4vw, 3rem)}
.skip{position:absolute;left:-999px;top:0;background:#000;color:#fff;padding:.75rem 1rem;z-index:100}
.skip:focus{left:1rem;top:1rem}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.placeholder{outline:2px dashed #c00;outline-offset:2px}
.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
