@font-face{font-family:"Source Sans 3";src:url("../fonts/a78827b87688.woff2") format("woff2");font-weight:400 600;font-style:normal;font-display:swap}
@font-face{font-family:"IBM Plex Mono";src:url("../fonts/e9d40afb4e44.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"IBM Plex Mono";src:url("../fonts/1b58ea199ab8.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"Body Fallback";src:local("Arial");size-adjust:93%;ascent-override:102%;descent-override:28%;line-gap-override:0%}
:root{--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;--space-9:6rem;--radius-card:0px;--radius-control:3px;--header-height:6rem;--header-compact:4.75rem;--z-header:30;--z-chat:50;--z-consent:60;--z-dialog:70;--tap:2.75rem}
main,section,article,aside,header,footer,nav,div,form,fieldset,figure,li{min-width:0}fieldset{border:0;margin:0;padding:0}legend{padding:0}address{font-style:normal}button,summary,a,input,textarea,select{-webkit-tap-highlight-color:transparent}table{border-collapse:collapse;width:100%}caption{text-align:left}a,td,th,dd{overflow-wrap:anywhere}button{white-space:normal}sup{font-size:.7em;line-height:0}pre{overflow:auto;max-width:100%}img{object-fit:cover}main:focus{outline:none}section[id],main[id],article[id]{scroll-margin-top:7rem}
:root{--ink:#22211e;--paper:#f5f1e8;--oat:#e5ddcf;--stone:#c5baa9;--muted:#615b52;--white:#fff;--accent:#d52b1e;--line:rgba(34,33,30,.22);--line-light:rgba(245,241,232,.28);--gutter:clamp(1.25rem,4vw,5rem);--rhythm:clamp(3.5rem,7vw,7rem);--shell:90rem;--measure:68ch;--display:"Bitter",Georgia,serif;--body:"Source Sans 3","Trebuchet MS",sans-serif;--mono:"IBM Plex Mono","Courier New",monospace;--text-xs:.72rem;--text-sm:.88rem;--text-md:1rem;--text-lg:clamp(1.15rem,1.6vw,1.4rem);--text-xl:clamp(1.5rem,2.5vw,2.35rem);--text-xxl:clamp(2.5rem,5.5vw,6.4rem);--leading-tight:1.02;--leading-snug:1.2;--leading-body:1.55;--tracking-wide:.1em;--ease-out:cubic-bezier(.16,1,.3,1);--ease-standard:cubic-bezier(.2,.7,.2,1);--ease-in:cubic-bezier(.7,0,.84,0);--duration-fast:160ms;--duration-base:280ms;--duration-slow:700ms;--shadow:0 1.25rem 2.5rem rgba(34,33,30,.13);--focus:0 0 0 3px var(--paper),0 0 0 6px var(--accent)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-padding-block-start:var(--header-height);scroll-behavior:smooth;background:var(--paper);color:var(--ink);font-size:100%;overflow-x:hidden}
body{margin:0;min-width:320px;background:var(--paper);font-family:var(--body);font-size:var(--text-md);line-height:var(--leading-body);text-rendering:optimizeLegibility;overflow-x:hidden}
body.is-locked{overflow:hidden}
img,svg,video{display:block;max-width:100%;height:auto}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
a{color:inherit;text-decoration-thickness:.08em;text-underline-offset:.18em}
a:hover{text-decoration-thickness:.14em}
:focus-visible{outline:none;box-shadow:var(--focus)}
::selection{background:var(--accent);color:var(--white)}
h1,h2,h3,h4,h5,h6,p,ul,ol,figure,blockquote,dl,dd{margin:0}
ul,ol{padding:0;list-style:none}
h1,h2,h3,h4{font-family:var(--display);font-weight:700;line-height:var(--leading-tight);letter-spacing:-.035em;overflow-wrap:anywhere}
h1{font-size:var(--text-xxl);max-width:12ch}
h2{font-size:clamp(2rem,4vw,4.6rem);max-width:14ch}
h3{font-size:clamp(1.35rem,2.2vw,2.25rem)}
h4{font-size:clamp(1.1rem,1.4vw,1.35rem);letter-spacing:-.02em}
p{max-width:var(--measure)}
strong{font-weight:600}
small{font-size:var(--text-sm)}
label{font-weight:600;line-height:1.25}
input,select,textarea{width:100%;border:1px solid var(--muted);border-radius:0;background:var(--white);padding:.72rem .8rem;min-height:3rem}
textarea{min-height:8rem;resize:vertical}
input::placeholder,textarea::placeholder{color:#756e64;opacity:1}
hr{border:0;border-top:1px solid var(--line);margin:2rem 0}
.site-shell{width:min(100% - (2 * var(--gutter)),var(--shell));margin-inline:auto}
.full-bleed{width:100%}
.stack>*+*{margin-top:1.25rem}
.cluster{display:flex;flex-wrap:wrap;align-items:center;gap:1rem}
.grid{display:grid;min-width:0}
.flow>*+*{margin-top:clamp(1rem,2vw,1.75rem)}
.prose{max-width:var(--measure)}
.prose>*+*{margin-top:1.15em}
.prose h2{margin-top:2em}

.prose h3{margin-top:1.6em}
.prose ul,.prose ol{padding-left:1.25rem;list-style:disc}
.prose ol{list-style:decimal}
.prose li+li{margin-top:.55rem}
.prose blockquote{border-left:3px solid var(--accent);padding-left:1.25rem;font-family:var(--display);font-size:1.25rem;line-height:1.35}
.mono{font-family:var(--mono);font-size:var(--text-sm);letter-spacing:.04em}
.eyebrow{font-family:var(--mono);font-size:var(--text-xs);font-weight:500;letter-spacing:.14em;text-transform:uppercase;line-height:1.4}
.section-kicker{display:flex;gap:.75rem;align-items:center;font-family:var(--mono);font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase}
.section-kicker::before{content:'';display:block;width:2rem;height:2px;background:var(--accent);flex:0 0 auto}

.rule-accent{border-left:2px solid var(--accent);padding-left:1rem}
.icon{width:1.2rem;height:1.2rem;fill:none;stroke:currentColor;stroke-width:1.8;flex:0 0 auto}
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.skip-link{position:fixed;z-index:100;top:1rem;left:1rem;transform:translateY(-200%);padding:.8rem 1rem;background:var(--accent);color:var(--white);font-weight:600;transition:transform var(--duration-fast) var(--ease-out)}
.skip-link:focus{transform:translateY(0);box-shadow:var(--focus)}
@media (max-width:767px){:root{--gutter:clamp(1.25rem,6vw,2rem)}h1{max-width:11ch}.site-shell{width:min(100% - (2 * var(--gutter)),var(--shell))}}
@media (min-width:768px){.hide-tablet-up{display:none!important}}
@media (max-width:767px){.hide-mobile{display:none!important}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important;scroll-behavior:auto!important}}
@supports (animation-timeline:view()){.scroll-scene{view-timeline-name:--scene-view;view-timeline-axis:block}.scene-rule{animation:scene-rule-draw linear both;animation-timeline:--scene-view;animation-range:entry 10% cover 55%}@keyframes scene-rule-draw{from{transform:scaleX(0);transform-origin:left}to{transform:scaleX(1);transform-origin:left}}}

@media (min-width:1100px){.split-2{grid-template-columns:repeat(2,minmax(0,1fr))}.split-wide{grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr)}.split-reverse{grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr)}}
.surface-paper{background:var(--paper);color:var(--ink)}.surface-oat{background:var(--oat);color:var(--ink)}.surface-ink{background:var(--ink);color:var(--paper)}.surface-accent{background:var(--accent);color:var(--white)}
.text-muted{color:var(--muted)}.text-white{color:var(--white)}.accent{color:var(--accent)}.center{text-align:center;margin-inline:auto}.measure{max-width:var(--measure)}
[hidden]{display:none!important}

.pad-block{padding-block:var(--rhythm)}.pad-inline{padding-inline:var(--gutter)}.inset-rule{position:relative}.inset-rule::after{content:'';display:block;height:1px;background:var(--line);margin-top:1.5rem}.number{font-family:var(--mono);font-size:clamp(1.5rem,3vw,3rem);line-height:1;color:#ad2418}
