/* Tabrein base: tokens, reset and the shared type scale. Page styles live in tabrein.css. */
:root{--paper:#f5f5f7;--white:#fff;--ink:#161617;--muted:#62626b;--line:#dedee4;--blue:#315bea;--blue-dark:#2448cb;--mono:'IBM Plex Mono',monospace;--sans:'DM Sans',Arial,sans-serif;--gutter:clamp(22px,5.1vw,88px)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:80px}
body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.6 var(--sans);-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit;color:inherit}
button{cursor:pointer}
a,button{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:5px}
::selection{background:#d9e1ff;color:var(--ink)}
h1,h2,h3,p{margin:0}
h1,h2,h3{font-weight:500}
h1,h2{letter-spacing:-.055em;line-height:1.05}
h2{font-size:clamp(38px,4.1vw,62px)}
h3{letter-spacing:-.035em;line-height:1.2}
p{color:var(--muted)}
svg{display:block}
[hidden]{display:none!important}
.container{max-width:1600px;margin-inline:auto;padding-inline:var(--gutter)}
.arrow{width:21px;height:21px;flex-shrink:0;transition:transform .2s}
.skip-link{position:fixed;top:-100px;left:20px;z-index:100;padding:15px 25px;background:#fff;color:var(--ink)}
.skip-link:focus{top:10px}
.legal-copy{max-width:900px;padding-top:60px;padding-bottom:90px;line-height:1.85}
.legal-copy h2{font-size:27px;margin:40px 0 15px;letter-spacing:-.025em;line-height:1.3}
.legal-copy p,.legal-copy ul{margin-bottom:18px}
.legal-copy li{color:var(--muted);margin-bottom:5px}
.legal-copy a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
