@font-face{font-family:DM Sans;src:url(/fonts/dm-sans-latin-var.woff2) format("woff2-variations");font-weight:300 700;font-stretch:100%;font-style:normal;font-display:swap;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:DM Mono;src:url(/fonts/dm-mono-latin-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:DM Mono;src:url(/fonts/dm-mono-latin-500.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}:root{--navy: #162035;--steel: #3a5680;--sky: #7aafd4;--gold: #b8945a;--offwhite: #f8f7f4;--mist: #edf0f5;--paper: var(--offwhite);--paper-raised: #ffffff;--paper-sunk: var(--mist);--ink: var(--navy);--ink-soft: #55637d;--graphite: var(--steel);--rule: #c8d2e0;--rule-faint: #e2e7ef;--datum: var(--steel);--datum-deep: #24395c;--datum-wash: #edf2f8;--accent: var(--sky);--benchmark: var(--gold);--benchmark-deep: #7a5f2e;--font-sans: "DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "DM Mono", ui-monospace, "Cascadia Mono", Consolas, monospace;--t-display: clamp(2.2rem, 1.6rem + 2.8vw, 3.85rem);--t-h1: clamp(1.95rem, 1.45rem + 2.4vw, 3.1rem);--t-h2: clamp(1.55rem, 1.28rem + 1.3vw, 2.2rem);--t-h3: clamp(1.15rem, 1.06rem + .45vw, 1.375rem);--t-lead: clamp(1.1rem, 1.03rem + .36vw, 1.28rem);--t-body: 1.0625rem;--t-small: .9375rem;--t-micro: .8125rem;--s-1: .25rem;--s-2: .5rem;--s-3: .75rem;--s-4: 1rem;--s-5: 1.5rem;--s-6: 2rem;--s-7: 3rem;--s-8: 4rem;--s-9: 6rem;--s-10: 8rem;--section-y: clamp(4rem, 2.4rem + 6vw, 8rem);--measure: 62ch;--wrap: 1180px;--wrap-narrow: 740px;--r-sm: 3px;--r-md: 5px;--r-lg: 8px;--shadow-sm: 0 1px 2px rgba(22, 32, 53, .06), 0 1px 3px rgba(22, 32, 53, .05);--shadow-md: 0 2px 6px rgba(22, 32, 53, .07), 0 10px 28px rgba(22, 32, 53, .07);--ease: cubic-bezier(.4, .14, .3, 1);--header-h: 68px}*,*:before,*:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{font-family:var(--font-sans);font-size:var(--t-body);line-height:1.65;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-variant-numeric:tabular-nums}img,svg,picture,video{display:block;max-width:100%;height:auto}input,button,textarea,select{font:inherit;color:inherit}h1,h2,h3,h4{line-height:1.14;font-weight:500;letter-spacing:-.022em;text-wrap:balance}p{text-wrap:pretty}ul,ol{padding-inline-start:1.15rem}:focus-visible{outline:2.5px solid var(--datum);outline-offset:2px;border-radius:2px}:focus:not(:focus-visible){outline:none}.skip-link{position:absolute;left:var(--s-4);top:-100px;z-index:200;background:var(--paper-raised);color:var(--ink);padding:var(--s-3) var(--s-5);border-radius:var(--r-md);text-decoration:none;font-weight:600;transition:top .15s var(--ease)}.skip-link:focus{top:var(--s-4)}.wrap{width:min(100% - 2.5rem,var(--wrap));margin-inline:auto}.wrap-narrow{width:min(100% - 2.5rem,var(--wrap-narrow));margin-inline:auto}@media(max-width:640px){.wrap,.wrap-narrow{width:min(100% - 2rem,var(--wrap))}}.section{padding-block:var(--section-y)}.section--sunk{background:var(--paper-sunk)}.section--ink{background:var(--ink);color:#ced7e4}.section--ink h1,.section--ink h2,.section--ink h3{color:#fff}.section--ink a{color:var(--sky)}.stack>*+*{margin-top:var(--s-5)}.stack-lg>*+*{margin-top:var(--s-6)}.measure{max-width:var(--measure)}.grid-2{display:grid;gap:var(--s-6);grid-template-columns:1fr}.grid-3{display:grid;gap:var(--s-5);grid-template-columns:1fr}@media(min-width:760px){.grid-2{grid-template-columns:1fr 1fr;gap:var(--s-7)}.grid-3{grid-template-columns:repeat(2,1fr)}}@media(min-width:1040px){.grid-3{grid-template-columns:repeat(3,1fr)}}.display{font-size:var(--t-display);font-weight:500;letter-spacing:-.03em;line-height:1.05}.h1{font-size:var(--t-h1)}.h2{font-size:var(--t-h2)}.h3{font-size:var(--t-h3)}.lead{font-size:var(--t-lead);color:var(--graphite);line-height:1.55}.small{font-size:var(--t-small)}.muted{color:var(--ink-soft)}.eyebrow{font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.09em;color:var(--graphite);display:flex;align-items:center;gap:var(--s-4);margin-bottom:var(--s-5)}.eyebrow:after{content:"";flex:1;height:1px;background:var(--rule)}.section--ink .eyebrow{color:var(--sky)}.section--ink .eyebrow:after{background:#2c3a52}.mono{font-family:var(--font-mono);font-size:var(--t-micro);letter-spacing:.03em;font-variant-ligatures:none}a{color:var(--datum);text-underline-offset:.18em;text-decoration-thickness:1px}a:hover{color:var(--datum-deep)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s-3);padding:.85rem 1.6rem;border-radius:var(--r-md);font-weight:600;font-size:var(--t-body);line-height:1.2;text-decoration:none;border:1px solid transparent;cursor:pointer;min-height:48px;white-space:nowrap;flex:none;transition:background-color .16s var(--ease),border-color .16s var(--ease),transform .16s var(--ease)}.btn--primary{background:var(--navy);color:#fff}.btn--primary:hover{background:var(--steel);color:#fff}.btn--ghost{border-color:var(--rule);color:var(--ink);background:var(--paper-raised)}.btn--ghost:hover{border-color:var(--graphite);color:var(--ink)}.section--ink .btn--primary{background:var(--sky);color:var(--navy)}.section--ink .btn--primary:hover{background:#9cc4e0;color:var(--navy)}.section--ink .btn--ghost{background:transparent;border-color:#3a4a63;color:#fff}.section--ink .btn--ghost:hover{border-color:var(--sky);color:#fff}.btn:active{transform:translateY(1px)}.btn-row{display:flex;flex-wrap:wrap;gap:var(--s-4);align-items:center}.card{background:var(--paper-raised);border:1px solid var(--rule-faint);border-radius:var(--r-lg);padding:var(--s-6)}.card h3{margin-bottom:var(--s-3)}.elevation-band{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0;-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 55%,transparent 100%);mask-image:linear-gradient(to bottom,#000 0%,#000 55%,transparent 100%)}.elevation-band svg{width:100%;height:100%}.elevation-band .contour{fill:none;stroke:var(--sky);stroke-width:1;opacity:.55}.elevation-band .contour--index{stroke:var(--steel);stroke-width:1.6;opacity:.4}.elevation-band .contour--bench{stroke:var(--gold);opacity:.75;stroke-width:1.8}.section--ink .elevation-band .contour{stroke:var(--sky);opacity:.22}.section--ink .elevation-band .contour--index{stroke:var(--sky);opacity:.38}.section--ink .elevation-band .contour--bench{stroke:var(--gold);opacity:.5}.section-rule{display:block;width:100%;height:26px;overflow:hidden}.section-rule svg{width:100%;height:100%}.section-rule path{fill:none;stroke:var(--rule);stroke-width:1.25}.section-rule .tick{stroke:var(--rule);stroke-width:1}.coord-strip{display:flex;justify-content:space-between;align-items:center;gap:var(--s-4);font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-soft);padding-block:var(--s-3);border-bottom:1px solid var(--rule-faint)}.coord-strip span{white-space:nowrap}@media(max-width:720px){.coord-strip .coord-hide{display:none}}.hero{position:relative;padding-block:clamp(3rem,2rem + 4.5vw,5.5rem) var(--section-y)}.hero>.wrap{position:relative;z-index:1}.hero__hook{font-size:var(--t-display);font-weight:500;letter-spacing:-.03em;line-height:1.05;max-width:18ch}.hero__situation{font-size:var(--t-lead);color:var(--graphite);max-width:50ch;margin-top:var(--s-5)}.boundary{border-left:3px solid var(--benchmark);background:var(--paper-raised);border-radius:0 var(--r-md) var(--r-md) 0;padding:var(--s-5) var(--s-6);box-shadow:var(--shadow-sm)}.boundary__label{font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.09em;color:var(--benchmark-deep);margin-bottom:var(--s-2)}.boundary p{font-size:var(--t-lead);line-height:1.5}.section--ink .boundary{background:#1c2740;border-left-color:var(--gold)}.section--ink .boundary__label{color:var(--gold)}.section--ink .boundary p{color:#dbe3ee}.friction{background:var(--datum-wash);border:1px solid #d3e0ee;border-radius:var(--r-lg);padding:var(--s-6)}.friction h2,.friction h3{margin-bottom:var(--s-3)}.spec-list{list-style:none;padding:0;display:grid;gap:var(--s-3)}.spec-list li{display:grid;grid-template-columns:1.1rem 1fr;gap:var(--s-3);align-items:start;font-size:var(--t-small)}.spec-list li:before{content:"";width:7px;height:7px;margin-top:.55em;background:var(--steel);border-radius:1px;transform:rotate(45deg)}.tag-row{display:flex;flex-wrap:wrap;gap:var(--s-2)}.tag{font-family:var(--font-mono);font-size:var(--t-micro);padding:.3rem .62rem;border:1px solid var(--rule);border-radius:var(--r-sm);color:var(--graphite);background:var(--paper-raised);white-space:nowrap}.section--ink .tag{background:#1c2740;border-color:#33425c;color:#c6d4e4}.figure{margin:0}.figure img{width:100%;border:1px solid var(--rule);border-radius:var(--r-md);background:var(--paper-raised)}.figure figcaption{font-size:var(--t-small);color:var(--ink-soft);margin-top:var(--s-3);line-height:1.5;max-width:52ch}.site-header{position:sticky;top:0;z-index:100;background:var(--navy);border-bottom:1px solid #24304a}.site-header__inner{display:flex;align-items:center;justify-content:space-between;gap:var(--s-5);min-height:var(--header-h)}.brand{display:flex;align-items:center;gap:var(--s-3);text-decoration:none;color:#fff;font-weight:600}.brand__lockup{height:48px;width:auto;flex:none}@media(max-width:560px){.brand__lockup{height:42px}}.nav,.header-cta{display:none}@media(min-width:1200px){.nav{display:flex;align-items:center;gap:var(--s-5);flex-wrap:nowrap}.nav a{color:#c3cede;text-decoration:none;font-size:var(--t-small);font-weight:600;letter-spacing:.005em;padding-block:.4rem;white-space:nowrap}.nav a:hover{color:#fff}.nav a[aria-current=page]{color:#fff;box-shadow:inset 0 -2px 0 var(--gold)}.header-cta{display:inline-flex;padding:.6rem 1.15rem;min-height:42px;font-size:var(--t-small);background:var(--sky);color:var(--navy);font-weight:600}.header-cta:hover{background:#9cc4e0;color:var(--navy)}}.site-header :focus-visible{outline-color:var(--sky)}.nav-toggle{display:inline-flex;align-items:center;gap:var(--s-3);background:transparent;border:1px solid #3a4a63;border-radius:var(--r-md);padding:.5rem .85rem;min-height:44px;font-size:var(--t-small);font-weight:600;color:#fff;cursor:pointer;list-style:none}.nav-toggle::-webkit-details-marker{display:none}@media(min-width:1200px){.mobile-disclosure{display:none}}.mobile-nav{background:var(--navy)}.mobile-nav ul{list-style:none;padding:var(--s-3) 0 var(--s-5);margin:0}.mobile-nav a{display:flex;align-items:center;padding:.85rem var(--s-2);color:#dbe3ee;text-decoration:none;font-weight:600;border-bottom:1px solid #24304a;min-height:48px}.mobile-nav a[aria-current=page]{color:var(--sky)}.mobile-nav__group{font-size:var(--t-micro);font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:#8493ab;padding:var(--s-5) var(--s-2) var(--s-2)}.site-footer{background:var(--navy);color:#b3bfd0;padding-block:var(--s-8) var(--s-6)}.site-footer a{color:#cbd6e5;text-decoration:none}.site-footer a:hover{color:#fff;text-decoration:underline}.site-footer h2{font-size:var(--t-micro);font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:#8493ab;margin-bottom:var(--s-4)}.footer-grid{display:grid;gap:var(--s-6);grid-template-columns:1fr}@media(min-width:700px){.footer-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1000px){.footer-grid{grid-template-columns:1.5fr 1fr 1fr 1fr;gap:var(--s-7)}}.footer-grid ul{list-style:none;padding:0;display:grid;gap:var(--s-3);font-size:var(--t-small)}.footer-base{margin-top:var(--s-7);padding-top:var(--s-5);border-top:1px solid #26324a;display:flex;flex-wrap:wrap;gap:var(--s-4) var(--s-5);justify-content:space-between;align-items:center;font-size:var(--t-micro);color:#8493ab}.field{display:grid;gap:var(--s-2)}.field label{font-size:var(--t-small);font-weight:600}.field .hint{font-size:var(--t-micro);color:var(--ink-soft)}.field input,.field textarea,.field select{width:100%;padding:.75rem .85rem;border:1px solid var(--rule);border-radius:var(--r-md);background:var(--paper-raised);min-height:48px}.field textarea{min-height:140px;resize:vertical}.field input:focus-visible,.field textarea:focus-visible{border-color:var(--datum);outline-offset:0}.form-stack{display:grid;gap:var(--s-5)}.honeypot{position:absolute;left:-9999px;opacity:0;height:0;overflow:hidden}.prose{max-width:var(--measure)}.prose>*+*{margin-top:var(--s-5)}.prose h2{font-size:var(--t-h2);margin-top:var(--s-8)}.prose h3{font-size:var(--t-h3);margin-top:var(--s-7)}.prose ul,.prose ol{display:grid;gap:var(--s-2)}.prose img{border:1px solid var(--rule);border-radius:var(--r-md)}.prose blockquote{border-left:3px solid var(--benchmark);padding-left:var(--s-5);font-size:var(--t-lead);color:var(--graphite)}.prose code{font-family:var(--font-mono);font-size:.9em;background:var(--paper-sunk);padding:.1em .35em;border-radius:var(--r-sm)}.prose table{width:100%;border-collapse:collapse;font-size:var(--t-small)}.prose th,.prose td{text-align:left;padding:var(--s-3);border-bottom:1px solid var(--rule)}.table-scroll{overflow-x:auto}.quote-card{background:var(--paper-raised);border:1px solid var(--rule-faint);border-radius:var(--r-lg);padding:var(--s-6);display:flex;flex-direction:column;gap:var(--s-4)}.quote-card blockquote{font-size:var(--t-body);line-height:1.6}.quote-card cite{font-style:normal;font-size:var(--t-small);color:var(--ink-soft);line-height:1.55}.quote-card cite b{color:var(--ink);font-weight:600}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}@media print{.site-header,.site-footer,.elevation-band,.mobile-disclosure{display:none}body{background:#fff}}.mobile-disclosure[data-astro-cid-3ef6ksr2]{position:static}.mobile-nav[data-astro-cid-3ef6ksr2] .btn--primary{background:var(--sky);color:var(--navy);border-bottom:0}.mobile-nav-panel[data-astro-cid-3ef6ksr2]{position:absolute;left:0;right:0;top:100%;background:var(--navy);border-bottom:1px solid #24304a;box-shadow:0 18px 30px #16203547;max-height:calc(100dvh - var(--header-h));overflow-y:auto;padding-inline:max(1rem,calc((100vw - var(--wrap)) / 2 + 1.25rem))}
