@font-face{font-family:Geist;font-style:normal;font-weight:400;font-display:swap;
  src:url(../fonts/Geist-400-latin.woff2) format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Geist;font-style:normal;font-weight:400;font-display:swap;
  src:url(../fonts/Geist-400-latin-ext.woff2) format("woff2");
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Geist;font-style:italic;font-weight:400;font-display:swap;
  src:url(../fonts/Geist-400-italic-latin.woff2) format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2212,U+FEFF,U+FFFD}
@font-face{font-family:Geist;font-style:italic;font-weight:400;font-display:swap;
  src:url(../fonts/Geist-400-italic-latin-ext.woff2) format("woff2");
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1E00-1E9F,U+2020,U+20A0-20AB,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Geist;font-style:normal;font-weight:500;font-display:swap;
  src:url(../fonts/Geist-500-latin.woff2) format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2212,U+FEFF,U+FFFD}
@font-face{font-family:Geist;font-style:normal;font-weight:500;font-display:swap;
  src:url(../fonts/Geist-500-latin-ext.woff2) format("woff2");
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1E00-1E9F,U+2020,U+20A0-20AB,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Geist;font-style:normal;font-weight:600;font-display:swap;
  src:url(../fonts/Geist-600-latin.woff2) format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2212,U+FEFF,U+FFFD}
@font-face{font-family:Geist;font-style:normal;font-weight:600;font-display:swap;
  src:url(../fonts/Geist-600-latin-ext.woff2) format("woff2");
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1E00-1E9F,U+2020,U+20A0-20AB,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Geist;font-style:normal;font-weight:700;font-display:swap;
  src:url(../fonts/Geist-700-latin.woff2) format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2212,U+FEFF,U+FFFD}
@font-face{font-family:Geist;font-style:normal;font-weight:700;font-display:swap;
  src:url(../fonts/Geist-700-latin-ext.woff2) format("woff2");
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1E00-1E9F,U+2020,U+20A0-20AB,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Geist Mono";font-style:normal;font-weight:400;font-display:swap;
  src:url(../fonts/GeistMono-400-latin.woff2) format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2212,U+FEFF,U+FFFD}
@font-face{font-family:"Geist Mono";font-style:normal;font-weight:400;font-display:swap;
  src:url(../fonts/GeistMono-400-latin-ext.woff2) format("woff2");
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1E00-1E9F,U+2020,U+20A0-20AB,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Geist Mono";font-style:normal;font-weight:500;font-display:swap;
  src:url(../fonts/GeistMono-500-latin.woff2) format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2212,U+FEFF,U+FFFD}
@font-face{font-family:"Geist Mono";font-style:normal;font-weight:500;font-display:swap;
  src:url(../fonts/GeistMono-500-latin-ext.woff2) format("woff2");
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1E00-1E9F,U+2020,U+20A0-20AB,U+2113,U+2C60-2C7F,U+A720-A7FF}

:root{
  
  --paper:#F2F4F5; --paper-warm:#EFEDE8; --paper-cool:#E7EAEC; --white:#FFFFFF;
  --ink:#0C0F11; --ink-surface:#171A1D;
  
  --steel-700:#3A4045; --steel-500:#6C737A; --steel-300:#A7ADB2;
  --steel-200:#C7CCCF; --steel-100:#DDE1E2;
  
  --deep-red:#9A1B24; --accent-red:#D11A26;
  
  --signal-steel:#3E6E85; --data-teal:#2E8C82; --machined-amber:#8A5A18; --deep-violet:#5B4B8A;
  
  --success:#2F7D52; --warning:#C8791E; --error:#B4472E; --info:#4A7F97;
  
  --focus-primary:#4A5257; --focus-signature:#4E0E12; --focus-secondary:#A7ADB2;
  --focus-tertiary:#3A4045; --focus-icon:#A7ADB2; --focus-field:#DDE1E2;

  
  --s4:4px; --s8:8px; --s12:12px; --s16:16px; --s24:24px;
  --s32:32px; --s48:48px; --s64:64px; --s96:96px;

  
  --margin:24px;            
  --gutter:8px;
  --reference:1600px;       
  --break:24px;             

  
  --radius:2px;
  --control:44px; --control-compact:32px;

  
  --bg:var(--paper); --fg:var(--ink); --muted:var(--steel-700); --rule:var(--steel-200);
  --hover:var(--paper-cool);
}
@media (min-width:768px){:root{--margin:48px;--gutter:12px;--break:32px}}
@media (min-width:1200px){:root{--margin:96px;--gutter:24px}}

.env-paper{--bg:var(--paper);--fg:var(--ink);--muted:var(--steel-700);--rule:var(--steel-200);--hover:var(--paper-cool);
  background:var(--bg);color:var(--fg)}
.env-paper-cool{--bg:var(--paper-cool);--fg:var(--ink);--muted:var(--steel-700);--rule:var(--steel-200);--hover:var(--steel-100);
  background:var(--bg);color:var(--fg)}
.env-ink{--bg:var(--ink);--fg:#FFFFFF;--muted:var(--steel-300);--rule:var(--steel-700);--hover:var(--ink-surface);
  background:var(--bg);color:var(--fg)}
.env-ink-surface{--bg:var(--ink-surface);--fg:#FFFFFF;--muted:var(--steel-300);--rule:var(--steel-700);--hover:var(--steel-700);
  background:var(--bg);color:var(--fg)}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);
  font:400 17px/1.65 Geist,"Helvetica Neue",Arial,sans-serif;
  font-feature-settings:"ss01" 0;text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased}
img{display:block;max-width:100%;height:auto}
button{font:inherit;color:inherit}
:where(h1,h2,h3,h4,p,figure,ul,ol){margin:0}
ul{padding:0;list-style:none}
hr{border:0;border-top:1px solid var(--rule);margin:0}

.display{font:700 clamp(32px,2.2rem + 2.6vw,68px)/1.04 Geist;letter-spacing:-.022em;max-width:15ch}
.h1{font:700 clamp(26px,1.4rem + 1.6vw,44px)/1.08 Geist;letter-spacing:-.018em}
.h2{font:600 clamp(21px,1.15rem + .9vw,30px)/1.18 Geist;letter-spacing:-.012em}
.h3{font:600 clamp(18px,1.05rem + .35vw,22px)/1.32 Geist;letter-spacing:-.006em}
.body{font:400 17px/1.65 Geist;max-width:66ch}
.subtitle{font:italic 400 clamp(15px,.9rem + .2vw,16px)/1.5 Geist}
.small{font:400 14px/1.55 Geist}
.note{font:400 14px/1.55 Geist}
.caption{font:600 13px/1.35 Geist;letter-spacing:.06em;text-transform:uppercase}
.label{font:500 13px/1.35 Geist;letter-spacing:.06em;text-transform:uppercase}
.technical{font:400 13px/1.45 "Geist Mono",ui-monospace,monospace;letter-spacing:.01em}
.muted{color:var(--muted)}

.figure{display:flex;align-items:baseline;gap:var(--s4);font-family:Geist;
  font-size:clamp(40px,2rem + 3.4vw,68px);line-height:1}
.figure__value{font-weight:500;font-size:1em;line-height:1;letter-spacing:-.022em}

.figure__unit{font-weight:400;font-size:.42em;line-height:1}

.note-rule{border-left:2px solid var(--signal-steel);padding-left:10px}
.note-rule--restriction{border-left-color:var(--deep-red)}

.wrap{width:100%;max-width:var(--reference);margin-inline:auto;
  padding-inline:var(--margin)}
.section{padding-block:clamp(48px,6vw,96px)}
.section--tight{padding-block:clamp(32px,4vw,64px)}

.section--flush-bottom{padding-bottom:0}
.stack>*+*{margin-top:var(--s24)}
.stack-16>*+*{margin-top:var(--s16)}
.stack-48>*+*{margin-top:var(--s48)}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s8);
  min-height:var(--control);padding:0 20px;border:1px solid transparent;border-radius:var(--radius);
  font:600 15px/1 Geist;text-decoration:none;cursor:pointer;
  transition:background-color .12s linear,border-color .12s linear,color .12s linear}
.btn--compact{min-height:var(--control-compact);padding:0 14px}

.btn--primary{background:var(--ink);color:#fff}
.btn--primary:hover{background:var(--steel-700)}
.btn--primary:focus-visible{outline:none;background:var(--focus-primary)}
.env-ink .btn--primary,.env-ink-surface .btn--primary{background:#fff;color:var(--ink)}
.env-ink .btn--primary:hover,.env-ink-surface .btn--primary:hover{background:var(--steel-200)}
.env-ink .btn--primary:focus-visible,.env-ink-surface .btn--primary:focus-visible{background:var(--steel-300)}

.btn--signature{background:var(--deep-red);color:#fff}
.btn--signature:hover{background:#7E161D}
.btn--signature:focus-visible{outline:none;background:var(--focus-signature)}

.btn--secondary{background:transparent;color:var(--ink);border-color:var(--steel-200)}
.btn--secondary:hover{background:var(--white);border-color:var(--steel-500)}
.btn--secondary:focus-visible{outline:none;background:var(--focus-secondary);border-color:var(--focus-secondary);color:var(--ink)}
.env-ink .btn--secondary,.env-ink-surface .btn--secondary{color:#fff;border-color:var(--steel-700)}
.env-ink .btn--secondary:hover,.env-ink-surface .btn--secondary:hover{background:var(--ink-surface);border-color:var(--steel-500)}
.env-ink .btn--secondary:focus-visible,.env-ink-surface .btn--secondary:focus-visible{background:var(--focus-tertiary);border-color:var(--focus-tertiary);color:#fff}

.btn--text{padding:0;min-height:auto;background:none;color:inherit;border:0;font-weight:600}
.btn--text:hover{text-decoration:underline;text-underline-offset:3px}
.btn--text:focus-visible{outline:none;color:var(--focus-primary)}
.env-ink .btn--text:focus-visible{color:var(--steel-300)}
.btn[disabled]{background:var(--steel-300);color:var(--steel-500);border-color:transparent;
  pointer-events:none}
@media (max-width:519px){.btn:not(.btn--text):not(.btn--compact){width:100%}}

.field{width:100%;min-height:var(--control);padding:0 var(--s16);
  background:var(--white);color:var(--ink);border:1px solid var(--steel-200);border-radius:var(--radius);
  font:400 17px/1.4 Geist;transition:border-color .12s linear,background-color .12s linear}
textarea.field{padding-block:12px;min-height:96px;resize:vertical}
.field::placeholder{color:var(--steel-700);opacity:1}
.field:hover{border-color:var(--steel-500)}
.field:focus{outline:none;background:var(--focus-field);border-color:var(--steel-500)}
.env-ink .field{background:var(--ink-surface);color:#fff;border-color:var(--steel-700)}
.env-ink .field::placeholder{color:var(--steel-300)}
.env-ink .field:focus{background:#20242899;border-color:var(--steel-300)}

a{color:inherit}
a.link{text-decoration:none;border-bottom:1px solid var(--rule);padding-bottom:1px}
a.link:hover{border-bottom-color:currentColor}
a.link:focus-visible{outline:none;color:var(--focus-primary);border-bottom-color:var(--focus-primary)}
.env-ink a.link:focus-visible{color:var(--steel-300);border-bottom-color:var(--steel-300)}

.icon{width:24px;height:24px;flex:none;stroke:currentColor;stroke-width:2;
  stroke-linecap:round;stroke-linejoin:round;fill:none}
.icon--16{width:16px;height:16px;stroke-width:1.5}
.icon--32{width:32px;height:32px}
.icon--48{width:48px;height:48px;stroke-width:2.5}

.table{width:100%;border-collapse:collapse}
.table th,.table td{text-align:left;padding:var(--s16) var(--s16) var(--s16) 0;
  border-bottom:1px solid var(--rule);vertical-align:top}
.table thead th{font:500 13px/1.35 Geist;letter-spacing:.06em;text-transform:uppercase;
  color:var(--muted);padding-bottom:var(--s12)}
.table td.num{font-family:"Geist Mono",ui-monospace,monospace;font-size:15px}

.skip{position:absolute;left:-9999px;top:0;z-index:100}
.skip:focus{left:var(--s16);top:var(--s16);padding:12px var(--s16);
  background:var(--ink);color:#fff;border-radius:var(--radius)}

@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;
  scroll-behavior:auto!important}}
