.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/fonts/ibm-plex-sans-400-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/fonts/ibm-plex-sans-400-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/fonts/ibm-plex-sans-500-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/fonts/ibm-plex-sans-500-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/jetbrains-mono-400-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/jetbrains-mono-400-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/jetbrains-mono-500-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/jetbrains-mono-500-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Newsreader;font-style:normal;font-weight:200 400;font-display:swap;src:url(/fonts/newsreader-200-400-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Newsreader;font-style:normal;font-weight:200 400;font-display:swap;src:url(/fonts/newsreader-200-400-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--color-paper:oklch(96.5% .006 245);--color-paper-2:oklch(93.8% .008 245);--color-paper-3:oklch(90.5% .009 245);--color-rule:oklch(84% .01 245);--color-rule-2:oklch(70% .014 245);--color-neutral:oklch(50% .014 245);--color-muted:oklch(40% .016 245);--color-ink:oklch(19.5% .016 248);--color-accent:oklch(44% .13 248);--color-accent-2:oklch(62% .09 248);--color-focus:oklch(52% .15 248);--color-caution:oklch(46% .135 45);--font-display:"Newsreader", ui-serif, Georgia, serif;--font-body:"IBM Plex Sans", ui-sans-serif, system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, SFMono-Regular, monospace;--text-2xs:.6875rem;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.1875rem;--text-xl:1.5rem;--text-2xl:2rem;--text-3xl:2.667rem;--text-4xl:3.556rem;--text-display-s:clamp(2.25rem, 4.5vw, 3.556rem);--text-display:clamp(2.75rem, 6.2vw, 5.25rem);--space-3xs:.125rem;--space-2xs:.25rem;--space-xs:.5rem;--space-sm:.75rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2.5rem;--space-2xl:4rem;--space-3xl:6rem;--space-4xl:9rem;--page-gutter:clamp(1.125rem, 4vw, 3.5rem);--measure:62ch;--rule-hair:1px;--rule-thick:2px;--radius-none:0;--radius-sm:2px;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.7, 0, .84, 0);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-micro:.12s;--dur-short:.22s;--dur-long:.42s;--z-base:1;--z-raised:10;--z-dropdown:100;--z-sticky:200;--z-modal:400;--z-toast:500;--z-tooltip:600}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--color-paper:oklch(17% .013 245);--color-paper-2:oklch(20.5% .015 245);--color-paper-3:oklch(24% .015 245);--color-rule:oklch(33% .016 245);--color-rule-2:oklch(44% .018 245);--color-neutral:oklch(68% .016 245);--color-muted:oklch(80% .012 245);--color-ink:oklch(94% .008 245);--color-accent:oklch(72% .11 248);--color-accent-2:oklch(58% .09 248);--color-focus:oklch(76% .12 248);--color-caution:oklch(76% .11 55)}:root:not([data-theme=light]) body{font-weight:350}}:root[data-theme=dark]{--color-paper:oklch(17% .013 245);--color-paper-2:oklch(20.5% .015 245);--color-paper-3:oklch(24% .015 245);--color-rule:oklch(33% .016 245);--color-rule-2:oklch(44% .018 245);--color-neutral:oklch(68% .016 245);--color-muted:oklch(80% .012 245);--color-ink:oklch(94% .008 245);--color-accent:oklch(72% .11 248);--color-accent-2:oklch(58% .09 248);--color-focus:oklch(76% .12 248);--color-caution:oklch(76% .11 55)}:root[data-theme=dark] body{font-weight:350}*,:before,:after{box-sizing:border-box}[hidden]{display:none!important}html{-webkit-text-size-adjust:100%;overflow-x:clip}body{background:var(--color-paper);color:var(--color-ink);font-family:var(--font-body);font-size:var(--text-base);font-feature-settings:"kern" 1;-webkit-font-smoothing:antialiased;margin:0;font-weight:400;line-height:1.6;overflow-x:clip}h1,h2,h3,h4{overflow-wrap:anywhere;min-width:0;margin:0;font-style:normal}p{margin:0}a{color:inherit}ol,ul{margin:0;padding:0;list-style:none}table{border-collapse:collapse}svg{display:block}:focus-visible{outline:var(--rule-thick) solid var(--color-focus);outline-offset:2px}.wrap{max-width:82rem;padding-inline:var(--page-gutter);margin-inline:auto}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.readout{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;letter-spacing:-.01em}.muted{color:var(--color-muted)}.neutral{color:var(--color-neutral)}.mast{padding-top:var(--space-md)}.mast__block{text-align:center;gap:var(--space-2xs);display:grid}.mast__name{font-family:var(--font-display);font-weight:300;font-size:clamp(1.75rem, 4vw, var(--text-2xl));letter-spacing:.36em;text-indent:.36em;margin:0;line-height:1}.mast__strip{font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:.14em;text-transform:uppercase;color:var(--color-neutral);justify-content:center;gap:var(--space-xs) var(--space-md);flex-wrap:wrap;display:flex}.mast__strip b{color:var(--color-muted);font-weight:500}.mast__nav ul{justify-content:center;gap:var(--space-md) var(--space-lg);margin-top:var(--space-xs);flex-wrap:wrap;display:flex}.mast__nav a{font-size:var(--text-sm);white-space:nowrap;padding-block:var(--space-2xs);border-bottom:var(--rule-hair) solid transparent;transition:border-color var(--dur-micro) var(--ease-out);text-decoration:none}.mast__nav a:hover{border-bottom-color:var(--color-accent)}.mast__nav a[aria-current=page]{border-bottom-color:var(--color-ink)}.rule-double{border:0;border-top:var(--rule-hair) solid var(--color-rule-2);border-bottom:var(--rule-hair) solid var(--color-rule-2);height:3px;margin:var(--space-md) 0 0}.hero{padding-block:var(--space-xl) var(--space-2xl)}.hero__lede{margin-bottom:var(--space-xl);gap:var(--space-xl);grid-template-columns:minmax(0,1fr);align-items:start;display:grid}.hero__lede>div{max-width:46ch}.pair-scroll{overflow-x:auto}.pair{width:100%;min-width:17rem;font-size:var(--text-xs)}.pair caption{text-align:left;font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:.14em;text-transform:uppercase;color:var(--color-neutral);padding-bottom:var(--space-xs)}.pair thead th{font-family:var(--font-mono);font-weight:500;font-size:var(--text-sm);letter-spacing:.06em;text-align:right;padding:0 0 var(--space-xs);border-bottom:var(--rule-hair) solid var(--color-ink)}.pair thead td{border-bottom:var(--rule-hair) solid var(--color-ink)}.pair tbody th{font-weight:400;font-size:var(--text-2xs);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--color-neutral);text-align:left;padding:var(--space-xs) var(--space-md) var(--space-xs) 0;border-bottom:var(--rule-hair) solid var(--color-rule);white-space:nowrap}.pair tbody td{font-family:var(--font-mono);font-variant-numeric:tabular-nums;text-align:right;padding:var(--space-xs) 0;border-bottom:var(--rule-hair) solid var(--color-rule);white-space:nowrap}.pair tbody td span{font-family:var(--font-body);font-size:var(--text-2xs);color:var(--color-neutral);display:block}.pair td+td{padding-left:var(--space-sm)}.pair .is-limit{color:var(--color-caution)}.pair tbody th{padding-right:var(--space-sm)}.pair__note{margin-top:var(--space-md);font-size:var(--text-xs);color:var(--color-neutral);max-width:46ch;line-height:1.6}@media (width>=30rem){.pair{font-size:var(--text-sm)}.pair td+td{padding-left:var(--space-md)}.pair tbody th{padding-right:var(--space-md)}}.hero__orient{font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:.16em;text-transform:uppercase;color:var(--color-accent);margin-bottom:var(--space-sm)}.hero h1{font-family:var(--font-display);font-weight:300;font-size:var(--text-display-s);letter-spacing:-.02em;line-height:1.04}.hero h1 em{text-decoration:underline;text-decoration-color:var(--color-accent);text-underline-offset:.14em;text-decoration-skip-ink:none;font-style:normal;text-decoration-thickness:2px}.hero__sub{margin-top:var(--space-md);max-width:50ch;color:var(--color-muted);font-size:var(--text-lg);line-height:1.55}.chart{gap:var(--space-xl);grid-template-columns:minmax(0,1fr);align-items:start;display:grid}.chart__figure{background:var(--color-paper-2);border:var(--rule-hair) solid var(--color-rule);margin:0;position:relative}.chart__svg{width:100%;height:auto}.chart__caption{font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:.08em;text-transform:uppercase;color:var(--color-neutral);padding:var(--space-xs) var(--space-sm);border-top:var(--rule-hair) solid var(--color-rule);gap:var(--space-xs) var(--space-md);flex-wrap:wrap;justify-content:space-between;display:flex}.c-state{fill:none;stroke:var(--color-rule-2);stroke-width:.75px}.c-grat{fill:none;stroke:var(--color-rule);stroke-width:.5px;stroke-dasharray:2 4}.c-node{fill:var(--color-neutral)}.c-node--on{fill:var(--color-accent)}.c-halo{fill:none;stroke:var(--color-accent);stroke-width:1px;opacity:.5}.c-label{font-family:var(--font-mono);fill:var(--color-muted);letter-spacing:.04em;paint-order:stroke fill;stroke:var(--color-paper-2);stroke-width:3px;stroke-linejoin:round;font-size:9px}.c-label--on{fill:var(--color-accent);font-weight:500}.c-route{fill:none;stroke:var(--color-accent);stroke-width:1.6px;stroke-linecap:round}.c-ring{fill:none;stroke:var(--color-accent);stroke-width:.6px;stroke-dasharray:2 6;opacity:.34}.c-route{stroke-dasharray:var(--len,900);stroke-dashoffset:var(--len,900);animation:draw 1.4s var(--ease-out) .26s forwards}@keyframes draw{to{stroke-dashoffset:0}}.quote{border:var(--rule-hair) solid var(--color-ink);background:var(--color-paper)}.quote__head{padding:var(--space-sm) var(--space-md);border-bottom:var(--rule-hair) solid var(--color-rule);font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:.14em;text-transform:uppercase;color:var(--color-muted);justify-content:space-between;gap:var(--space-sm);display:flex}.quote__fields{grid-template-columns:minmax(0,1fr);display:grid}.field{gap:var(--space-3xs);padding:var(--space-xs) var(--space-md) var(--space-sm);border-bottom:var(--rule-hair) solid var(--color-rule);display:grid}.field label{font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:.12em;text-transform:uppercase;color:var(--color-neutral)}.field input{font:inherit;font-family:var(--font-mono);font-size:var(--text-lg);letter-spacing:.02em;color:var(--color-ink);outline:var(--rule-thick) solid transparent;outline-offset:1px;background:0 0;border:0;width:100%;min-height:2.75rem;padding:0}.field input::placeholder{color:var(--color-neutral);opacity:1}.field input:hover{color:var(--color-accent)}.field input:focus-visible{outline-color:var(--color-focus)}.field input:disabled,.field input[aria-disabled=true]{opacity:.55;cursor:not-allowed}.field:focus-within{background:var(--color-paper-2)}.field:has(input:disabled){opacity:.55}.field__hint{font-size:var(--text-2xs);color:var(--color-neutral);min-height:1lh}.quote__submit{font:inherit;font-family:var(--font-mono);font-size:var(--text-sm);letter-spacing:.14em;text-transform:uppercase;width:100%;min-height:3.25rem;padding-inline:var(--space-md);background:var(--color-ink);color:var(--color-paper);cursor:pointer;justify-content:space-between;align-items:center;gap:var(--space-sm);transition:background var(--dur-micro) var(--ease-out);border:0;display:flex}.quote__submit:hover{background:var(--color-accent)}.quote__submit:active{background:var(--color-accent);transform:translateY(1px)}.quote__submit:disabled{opacity:.55;cursor:not-allowed;background:var(--color-muted)}.quote__note{padding:var(--space-sm) var(--space-md);font-size:var(--text-xs);color:var(--color-neutral);border-top:var(--rule-hair) solid var(--color-rule);line-height:1.5}.quote__note[data-tone=ok]{color:var(--color-ink)}.quote__note[data-tone=warn]{color:var(--color-caution)}.quote__note a{color:inherit}.ask{gap:var(--space-xl);padding-top:var(--space-3xl);grid-template-columns:minmax(0,1fr);align-items:start;display:grid}@media (width>=64rem){.ask{gap:var(--space-2xl);grid-template-columns:minmax(0,1fr) minmax(0,26rem)}}.ask__lede{gap:var(--space-md);max-width:46ch;display:grid}.ask__lede h2{font-family:var(--font-display);font-weight:300;font-size:var(--text-2xl);letter-spacing:-.015em;line-height:1.15}.ask__lede p{color:var(--color-muted)}.field textarea{font:inherit;font-size:var(--text-base);color:var(--color-ink);resize:vertical;outline:var(--rule-thick) solid transparent;outline-offset:1px;background:0 0;border:0;width:100%;min-height:4.5rem;padding:0}.field textarea::placeholder{color:var(--color-neutral);opacity:1}.field textarea:focus-visible{outline-color:var(--color-focus)}.field--static{gap:var(--space-2xs)}.field__label{font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:.12em;text-transform:uppercase;color:var(--color-neutral)}.field__opt{text-transform:none;letter-spacing:0;color:var(--color-neutral)}.request__trap{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.result{padding-block:var(--space-2xl);border-top:var(--rule-hair) solid var(--color-rule)}.head-hang{max-width:54ch;padding-bottom:var(--space-xl)}.head-hang:not(:first-child){padding-top:var(--space-3xl)}.index-grid{margin-block-end:var(--space-2xl)}.group+.group{padding-top:var(--space-3xl)}.letter-jump+.group{padding-top:var(--space-2xl)}.letter-jump{padding-block:var(--space-md) var(--space-lg)}.bars+.bar__legend+.letter-jump{margin-top:var(--space-xl)}.head-hang h2{font-family:var(--font-display);font-weight:300;font-size:var(--text-3xl);letter-spacing:-.015em;line-height:1.1}.head-hang p{margin-top:var(--space-md);color:var(--color-muted)}.sheet-scroll{overflow-x:auto}.sheet{width:100%;min-width:46rem;font-size:var(--text-sm);text-align:left}.sheet thead th{font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:.12em;text-transform:uppercase;color:var(--color-neutral);padding:0 var(--space-md) var(--space-xs) 0;border-bottom:var(--rule-hair) solid var(--color-ink);vertical-align:bottom;font-weight:500}.sheet tbody th{font-weight:400;font-family:var(--font-display);font-size:var(--text-lg);letter-spacing:-.01em;padding:var(--space-md) var(--space-md) var(--space-md) 0;border-bottom:var(--rule-hair) solid var(--color-rule);vertical-align:top;white-space:nowrap}.sheet tbody th span{font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:.1em;text-transform:uppercase;color:var(--color-neutral);margin-top:var(--space-3xs);display:block}.sheet td{padding:var(--space-md) var(--space-md) var(--space-md) 0;border-bottom:var(--rule-hair) solid var(--color-rule);vertical-align:top;font-variant-numeric:tabular-nums;font-family:var(--font-mono);letter-spacing:-.01em;white-space:nowrap}.sheet td.price{color:var(--color-ink)}.sheet tr.is-out th,.sheet tr.is-out td{color:var(--color-neutral)}.flag{font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:.08em;text-transform:uppercase;color:var(--color-caution);border:var(--rule-hair) solid var(--color-caution);padding:0 var(--space-2xs);white-space:nowrap;display:inline-block}.sheet__foot{margin-top:var(--space-md);font-size:var(--text-xs);color:var(--color-neutral);max-width:var(--measure);line-height:1.6}.constraint{margin-top:var(--space-xl);gap:var(--space-md);border-left:var(--rule-thick) solid var(--color-accent);padding-left:var(--space-lg);grid-template-columns:minmax(0,1fr);max-width:58ch;display:grid}.constraint p{color:var(--color-muted)}.constraint strong{color:var(--color-ink);font-weight:500}.mcp{padding-block:var(--space-3xl);border-top:var(--rule-hair) solid var(--color-rule)}.steps{margin-top:var(--space-lg);gap:0;display:grid}.steps li{gap:var(--space-xs);padding-block:var(--space-lg);border-top:var(--rule-hair) solid var(--color-rule);grid-template-columns:minmax(0,1fr);display:grid}.steps li:last-child{border-bottom:var(--rule-hair) solid var(--color-rule)}.stage{font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:.14em;color:var(--color-accent)}.steps h3{font-family:var(--font-display);font-weight:300;font-size:var(--text-xl);letter-spacing:-.01em}.steps p{color:var(--color-muted);max-width:var(--measure)}.code{margin:var(--space-md) 0 0;padding:var(--space-md);background:var(--color-paper-2);border:var(--rule-hair) solid var(--color-rule);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-muted);tab-size:2;line-height:1.7;overflow-x:auto}.code b{color:var(--color-ink);font-weight:500}.code i{color:var(--color-accent);font-style:normal}.cta{padding-block:var(--space-2xl) var(--space-3xl)}.cta__line{font-family:var(--font-display);font-weight:300;font-size:var(--text-2xl);letter-spacing:-.015em;max-width:30ch;line-height:1.15}.cta-outline{margin-top:var(--space-lg);align-items:center;gap:var(--space-xs);min-height:3rem;padding:var(--space-sm) var(--space-lg);border:var(--rule-hair) solid var(--color-ink);font-family:var(--font-mono);font-size:var(--text-sm);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;transition:background var(--dur-micro) var(--ease-out), color var(--dur-micro) var(--ease-out);text-decoration:none;display:inline-flex}.cta-outline:hover{background:var(--color-ink);color:var(--color-paper)}.cta-outline:active{transform:translateY(1px)}.colophon{border-top:var(--rule-hair) solid var(--color-rule-2);padding-block:var(--space-xl) var(--space-2xl);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-neutral);line-height:2.15}.colophon__log{gap:var(--space-sm);max-width:72ch;display:grid}.colophon__log b{color:var(--color-muted);font-weight:500}.colophon a{padding-block:var(--space-2xs);color:var(--color-muted);border-bottom:var(--rule-hair) solid var(--color-rule-2);white-space:nowrap;text-decoration:none;display:inline-block}.colophon a:hover{color:var(--color-accent);border-bottom-color:var(--color-accent)}.colophon__legal{margin-top:var(--space-lg);padding-top:var(--space-md);border-top:var(--rule-hair) solid var(--color-rule);max-width:88ch;color:var(--color-muted)}.reveal{opacity:0;animation:reveal var(--dur-long) var(--ease-out) forwards;animation-delay:calc(var(--i,0) * 70ms);transform:translateY(8px)}@keyframes reveal{to{opacity:1;transform:none}}@media (width>=48rem){.quote__fields{grid-template-columns:repeat(2,minmax(0,1fr))}.field:nth-child(odd){border-right:var(--rule-hair) solid var(--color-rule)}}@media (width>=64rem){.hero{padding-block:var(--space-xl) var(--space-3xl)}.hero__lede{gap:var(--space-2xl);margin-bottom:var(--space-xl);grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:start}.hero__lede>div{max-width:none}.chart{gap:var(--space-2xl);grid-template-columns:minmax(0,2.1fr) minmax(0,1fr)}.hero h1{font-size:var(--text-display)}.constraint{margin-left:var(--space-2xl);grid-template-columns:minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.15s!important;animation-duration:.15s!important;animation-iteration-count:1!important}.c-route{stroke-dashoffset:0;animation:none}.reveal{animation:.15s linear forwards reveal}}.skip{left:var(--space-md);top:calc(-1 * var(--space-3xl));z-index:var(--z-toast);background:var(--color-ink);color:var(--color-paper);padding:var(--space-sm) var(--space-md);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;transition:top var(--dur-micro) var(--ease-out);text-decoration:none;position:absolute}.skip:focus{top:var(--space-md)}.mast__name a{color:inherit;text-decoration:none}.crumbs{padding-top:var(--space-md)}.crumbs ol{gap:var(--space-xs);font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:.1em;text-transform:uppercase;color:var(--color-neutral);flex-wrap:wrap;display:flex}.crumbs li+li:before{content:"/";margin-right:var(--space-xs);color:var(--color-rule-2)}.crumbs a{color:var(--color-muted);text-decoration:none}.crumbs a:hover{color:var(--color-accent)}.faq{gap:0;display:grid}.faq__item{padding-block:var(--space-lg);border-top:var(--rule-hair) solid var(--color-rule)}.faq__item:last-child{border-bottom:var(--rule-hair) solid var(--color-rule)}.faq dt{font-family:var(--font-display);font-weight:400;font-size:var(--text-xl);letter-spacing:-.01em;max-width:54ch;line-height:1.2}.faq dd{margin:var(--space-sm) 0 0;color:var(--color-muted);max-width:var(--measure);line-height:1.65}.link-cols{gap:var(--space-xl);padding-top:var(--space-lg);border-top:var(--rule-hair) solid var(--color-rule);grid-template-columns:minmax(0,1fr);display:grid}.link-cols h3{font-family:var(--font-mono);font-weight:500;font-size:var(--text-2xs);letter-spacing:.14em;text-transform:uppercase;color:var(--color-neutral);margin-bottom:var(--space-sm)}.link-list{gap:var(--space-xs);font-size:var(--text-sm);display:grid}.link-list a{font-family:var(--font-mono);color:var(--color-accent);text-decoration:none}.link-list a:hover{text-underline-offset:3px;text-decoration:underline}.link-list .muted{font-size:var(--text-xs)}.index-grid{border-top:var(--rule-hair) solid var(--color-ink);grid-template-columns:minmax(0,1fr);gap:0;display:grid}.index-row{gap:var(--space-2xs);padding-block:var(--space-sm);border-bottom:var(--rule-hair) solid var(--color-rule);grid-template-columns:minmax(0,1fr) auto;align-items:baseline;display:grid}.index-row a{font-family:var(--font-display);font-size:var(--text-lg);text-decoration:none}.index-row a:hover{color:var(--color-accent)}.index-row .meta{font-family:var(--font-mono);font-size:var(--text-2xs);font-variant-numeric:tabular-nums;color:var(--color-neutral);letter-spacing:.04em;white-space:nowrap}.index-row .sub{font-size:var(--text-xs);color:var(--color-neutral);grid-column:1/-1}.letter-jump{gap:var(--space-xs);padding-block:var(--space-md);font-family:var(--font-mono);font-size:var(--text-xs);flex-wrap:wrap;display:flex}.letter-jump a{color:var(--color-muted);padding:var(--space-2xs) var(--space-xs);border:var(--rule-hair) solid var(--color-rule);text-decoration:none}.letter-jump a:hover{border-color:var(--color-accent);color:var(--color-accent)}.flag--warn{color:var(--color-accent);border-color:var(--color-accent)}.bars{gap:var(--space-sm);margin-top:var(--space-md);display:grid}.bar{gap:var(--space-3xs);grid-template-columns:minmax(0,1fr);display:grid}.bar__head{justify-content:space-between;gap:var(--space-sm);font-family:var(--font-mono);font-size:var(--text-2xs);font-variant-numeric:tabular-nums;color:var(--color-muted);display:flex}.bar__head b{color:var(--color-ink);font-weight:500}.bar__track{background:var(--color-paper-2);border:var(--rule-hair) solid var(--color-rule);height:.75rem;position:relative}.bar__fill{inset-block:0;background:var(--color-accent-2);position:absolute;left:0}.bar__fill--out{background:var(--color-rule-2)}.bar__mark{width:var(--rule-thick);background:var(--color-caution);position:absolute;inset-block:-3px}.bar__legend{margin-top:var(--space-sm);font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--color-neutral);gap:var(--space-md);flex-wrap:wrap;display:flex}.bar__swatch{vertical-align:middle;width:1.5rem;height:.5rem;display:inline-block}.prose{max-width:var(--measure)}.prose h2{font-family:var(--font-display);font-weight:300;font-size:var(--text-2xl);letter-spacing:-.015em;margin-top:var(--space-xl);line-height:1.15}.prose h3{font-family:var(--font-display);font-weight:400;font-size:var(--text-xl);margin-top:var(--space-lg)}.prose p{margin-top:var(--space-md);color:var(--color-muted);line-height:1.7}.prose ul{margin-top:var(--space-md);gap:var(--space-xs);display:grid}.prose li{color:var(--color-muted);padding-left:var(--space-md);position:relative}.prose li:before{content:"";width:var(--space-xs);height:var(--rule-hair);background:var(--color-rule-2);position:absolute;top:.7em;left:0}.prose strong{color:var(--color-ink);font-weight:500}.prose a{color:var(--color-accent)}@media (width>=48rem){.link-cols{grid-template-columns:repeat(3,minmax(0,1fr))}.index-row{gap:var(--space-lg);grid-template-columns:minmax(0,1fr) auto auto}.index-row .sub{text-align:right;grid-column:auto}}@media (width>=64rem){.index-grid{column-gap:var(--space-2xl)}}.hero h1.is-name{font-size:var(--text-3xl);line-height:1.06}@media (width>=64rem){.hero h1.is-name{font-size:var(--text-4xl)}}@view-transition{navigation:auto}::view-transition-old(root),::view-transition-new(root){animation-duration:var(--dur-short);animation-timing-function:var(--ease-out)}@media (prefers-reduced-motion:reduce){::view-transition-old(root),::view-transition-new(root){animation:none}}.photo{margin:0 0 var(--space-lg);background:var(--color-paper-2);border:var(--rule-hair) solid var(--color-rule)}.photo img{aspect-ratio:3/2;object-fit:cover;width:100%;height:auto;display:block}.photo-row{gap:var(--space-lg);margin-bottom:var(--space-lg);grid-template-columns:minmax(0,1fr);display:grid}@media (width>=48rem){.photo-row{grid-template-columns:repeat(2,minmax(0,1fr))}}.photo-row .photo{margin:0}.photo__credit{text-transform:none;letter-spacing:.04em}.photo__credit a{color:inherit;text-underline-offset:.2em;white-space:nowrap}.plan-figure,.section-figure{background:var(--color-paper-2);border:var(--rule-hair) solid var(--color-rule);margin:0}.plan,.section{width:100%;height:auto;display:block}.plan__body{fill:var(--color-paper-3);stroke:var(--color-ink);stroke-width:.35px;stroke-linejoin:round}.plan__ghost{fill:none;stroke:var(--color-rule-2);stroke-width:.3px;stroke-dasharray:1.4 1.4}.plan__dim{stroke:var(--color-accent);stroke-width:.22px;fill:none}.plan__lead{stroke:var(--color-accent);stroke-width:.12px;fill:none;stroke-dasharray:.9 .9;opacity:.6}.plan__label{font-family:var(--font-mono);fill:var(--color-accent);letter-spacing:.04em;font-size:2.6px}.plan__label--ghost{fill:var(--color-neutral);font-size:2.3px}.section__skin{fill:var(--color-paper-3);stroke:var(--color-rule-2);stroke-width:.06px}.section__cabin{fill:var(--color-paper);stroke:var(--color-ink);stroke-width:.05px}.section__floor{stroke:var(--color-ink);stroke-width:.06px}.section__seat{fill:var(--color-paper-3);stroke:var(--color-rule-2);stroke-width:.03px}.section__person{fill:var(--color-accent);opacity:.85}.section__dim{stroke:var(--color-accent);stroke-width:.035px;fill:none}.section__label{paint-order:stroke fill;font-family:var(--font-mono);fill:var(--color-accent);letter-spacing:.03em;font-size:.42px}.draw-caption{font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:.08em;text-transform:uppercase;color:var(--color-neutral);padding:var(--space-xs) var(--space-sm);border-top:var(--rule-hair) solid var(--color-rule);gap:var(--space-xs) var(--space-md);flex-wrap:wrap;justify-content:space-between;display:flex}.verdict{margin-top:var(--space-md);font-family:var(--font-display);font-weight:300;font-size:var(--text-xl);letter-spacing:-.01em;max-width:30ch;line-height:1.2}.verdict span{color:var(--color-accent)}.verdict--no span{color:var(--color-caution)}.draw-pair{gap:var(--space-xl);grid-template-columns:minmax(0,1fr);align-items:start;display:grid}@media (width>=64rem){.draw-pair{gap:var(--space-2xl);grid-template-columns:minmax(0,1.7fr) minmax(0,1fr)}}
