:root{--background: #FFFFFF;--surface: #F2F6F5;--inset: #E3EFED;--ink: #152B2A;--muted: #4C6461;--line: #C6D4D1;--controlBorder: #6A807B;--brand: #075E59;--brandHover: #064C48;--brandActive: #043B38;--onBrand: #FFFFFF;--diagram: #063D38;--onDiagram: #F0F5F3;--accent: #C4E4A1;--onAccent: #152B2A;--focus: #075E59;--onDiagramFocus: #C4E4A1;--dockShadow: 0 -4px 16px rgb(21 43 42 / .08);--lh-add: 0;color-scheme:light}@supports (color: oklch(.5 .1 180)){:root{--surface: oklch(.969839 .004443 179.7348);--inset: oklch(.942575 .013011 185.0864);--ink: oklch(.270495 .028152 191.8597);--muted: oklch(.482886 .029064 186.8076);--line: oklch(.858422 .015694 181.7128);--controlBorder: oklch(.580765 .026685 180.0116);--brand: oklch(.43537 .073533 188.3907);--brandHover: oklch(.376638 .062983 188.6128);--brandActive: oklch(.318771 .05302 189.0642);--diagram: oklch(.325401 .054013 185.4573);--onDiagram: oklch(.965811 .005919 170.4471);--accent: oklch(.879228 .09477 128.9366);--onAccent: oklch(.270495 .028152 191.8597);--focus: oklch(.43537 .073533 188.3907);--onDiagramFocus: oklch(.879228 .09477 128.9366)}}:root[data-theme=dark]{--background: #101817;--surface: #182523;--inset: #203431;--ink: #F0F5F3;--muted: #AAC0B9;--line: #354D47;--controlBorder: #74978B;--brand: #A4D9CD;--brandHover: #BDE8DD;--brandActive: #83C4B4;--onBrand: #10251F;--diagram: #183E35;--onDiagram: #F0F5F3;--accent: #D2E8B9;--onAccent: #152B2A;--focus: #A4D9CD;--onDiagramFocus: #D2E8B9;--dockShadow: 0 -4px 16px rgb(0 0 0 / .24);--lh-add: .05;color-scheme:dark}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--background: #101817;--surface: #182523;--inset: #203431;--ink: #F0F5F3;--muted: #AAC0B9;--line: #354D47;--controlBorder: #74978B;--brand: #A4D9CD;--brandHover: #BDE8DD;--brandActive: #83C4B4;--onBrand: #10251F;--diagram: #183E35;--onDiagram: #F0F5F3;--accent: #D2E8B9;--onAccent: #152B2A;--focus: #A4D9CD;--onDiagramFocus: #D2E8B9;--dockShadow: 0 -4px 16px rgb(0 0 0 / .24);--lh-add: .05;color-scheme:dark}}:root{--fs-display: clamp(36px, 25.6px + 2.667vw, 64px);--fs-page: clamp(36px, 28.57px + 1.905vw, 56px);--fs-section: clamp(28px, 23.54px + 1.143vw, 40px);--fs-item: clamp(22px, 19.77px + .571vw, 28px);--fs-metric: clamp(28px, 25.03px + .762vw, 36px);--fs-body: 16px;--fs-lead: 18px;--ease-out: cubic-bezier(.22, 1, .36, 1)}@media(min-width:768px){:root{--fs-body: 18px;--fs-lead: 20px}}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--background);color:var(--ink);font-family:Segoe UI Variable,Segoe UI,Arial,sans-serif;font-size:var(--fs-body);line-height:calc(1.6 + var(--lh-add))}h1,h2,h3,p,figure,blockquote,dl,dd,ul{margin:0}h1,h2,h3{font-weight:600;text-wrap:balance}h1{font-size:var(--fs-page);line-height:calc(1.15 + var(--lh-add));letter-spacing:-.025em}h2{font-size:var(--fs-section);line-height:calc(1.2 + var(--lh-add));letter-spacing:-.025em}h3{font-size:var(--fs-item);line-height:calc(1.3 + var(--lh-add));letter-spacing:-.015em}p{max-width:66ch}p+p{margin-top:16px}img{max-width:100%;height:auto}a{color:var(--brand);text-underline-offset:4px;overflow-wrap:anywhere}a:hover{color:var(--brandHover);text-decoration-thickness:2px}a:active{color:var(--brandActive)}a,button,summary,select{transition:background-color .12s var(--ease-out),color .12s var(--ease-out)}:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:4px}.wrap{width:calc(100% - 240px);max-width:1200px;margin-inline:auto}@media(max-width:1439px){.wrap{width:calc(100% - 64px)}}@media(max-width:767px){.wrap{width:calc(100% - 40px)}}@media(max-width:350px){.wrap{width:calc(100% - 32px)}}.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.muted{color:var(--muted)}.small{font-size:16px;line-height:calc(1.5 + var(--lh-add))}.lead{font-size:var(--fs-lead);line-height:calc(1.6 + var(--lh-add))}.skip{position:absolute;top:-100px;left:20px;z-index:40;background:var(--background);color:var(--brand);padding:12px 16px;border:1px solid var(--controlBorder);border-radius:4px}.skip:focus{top:8px}.site-header{border-bottom:1px solid var(--line)}.header-inner{min-height:80px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{font-weight:600;font-size:18px;color:var(--ink);text-decoration:none;min-height:48px;display:inline-flex;align-items:center}.brand:hover{color:var(--ink);text-decoration:underline}.brand .short{display:none}.nav{display:flex;gap:24px;align-items:center}.nav a{min-height:48px;display:inline-flex;align-items:center;font-size:16px;color:var(--ink);text-decoration:none}.nav a:hover{color:var(--ink);text-decoration:underline}.theme-control{display:none;align-items:center;gap:8px;font-size:16px}.js .theme-control{display:inline-flex}.theme-control select{min-height:48px;padding:0 12px;font:inherit;font-size:16px;color:var(--ink);background:var(--background);border:1px solid var(--controlBorder);border-radius:4px}.menu,.mobile-tools{display:none}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:24px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 16px;border:1px solid var(--controlBorder);border-radius:4px;text-decoration:none;font-size:16px;font-weight:600;line-height:1.25;color:var(--ink);background:var(--background)}.button:hover{background:var(--surface);color:var(--ink)}.button:active{background:var(--inset)}.button.primary{background:var(--brand);border-color:var(--brand);color:var(--onBrand)}.button.primary:hover{background:var(--brandHover);border-color:var(--brandHover);color:var(--onBrand)}.button.primary:active{background:var(--brandActive)}.button.primary:focus-visible{outline:3px solid var(--focus);box-shadow:0 0 0 2px var(--background)}.text-action{min-height:48px;padding:12px;display:inline-flex;align-items:center;font-size:16px}.section{padding-block:96px}.band{background:var(--surface)}.section-head{display:flex;justify-content:space-between;gap:32px;align-items:start;margin-bottom:48px}.section-head p{max-width:46ch;color:var(--muted);margin-top:16px}.section-head>a{white-space:nowrap;min-height:48px;display:inline-flex;align-items:center}.hero{display:grid;grid-template-columns:7fr 5fr;gap:24px;padding-top:48px;padding-bottom:64px;align-items:start}.identity{font-size:24px;font-weight:600;line-height:1.3}.role{color:var(--muted);font-size:16px;margin-top:4px}.hero h1{font-size:var(--fs-display);line-height:calc(1.1 + var(--lh-add));letter-spacing:-.035em;margin-top:24px;max-width:650px}.hero .lead{margin-top:24px;max-width:54ch}.location{font-size:16px;color:var(--muted);margin-top:16px}.diagram{background:var(--diagram);color:var(--onDiagram);border-radius:12px;padding:32px;min-height:456px;display:flex;flex-direction:column;justify-content:space-between;margin-top:4px}.diagram-title{font-size:24px;line-height:1.3;font-weight:600;letter-spacing:-.015em}.diagram .side{font-size:36px;font-weight:600;letter-spacing:-.025em;line-height:1.2}.diagram .side small{font-size:16px;line-height:1.5;font-weight:400;letter-spacing:0;display:block;margin-top:8px}.axis{color:var(--accent);font-size:40px;line-height:1;display:flex;align-items:center;gap:16px;margin-block:16px}.axis span{height:1px;background:var(--accent);flex:1}.diagram-foot{font-size:16px;margin-top:24px}.proof{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding-top:32px;padding-bottom:16px}.proof dt{font-size:var(--fs-metric);line-height:1.2;font-weight:600;letter-spacing:-.025em;font-variant-numeric:tabular-nums}.proof dd{font-size:16px;line-height:1.5;margin-top:8px;color:var(--muted)}.proof-note{font-size:16px;color:var(--muted);padding-bottom:24px}.tablist{display:flex;gap:8px;margin-top:32px}.tablist button{min-height:48px;padding:12px 16px;font:inherit;font-size:16px;font-weight:400;color:var(--ink);background:var(--background);border:1px solid var(--controlBorder);border-radius:4px;cursor:pointer}.tablist button:hover{background:var(--surface)}.tablist button[aria-selected=true]{background:var(--inset);font-weight:600;text-decoration:underline;text-underline-offset:4px}.two-sides{display:grid;grid-template-columns:1fr 1fr;gap:48px;margin-top:32px}.two-sides h3{margin-bottom:16px}.two-sides .panel-link{display:inline-flex;min-height:48px;align-items:center;margin-top:16px}.two-sides.enhanced{grid-template-columns:7fr 5fr}.two-sides.enhanced [role=tabpanel][hidden]{display:none}.switch-side{align-self:start;padding-top:8px}.switch-side button{min-height:48px;padding:0;font:inherit;font-size:16px;color:var(--brand);background:none;border:0;text-decoration:underline;text-underline-offset:4px;cursor:pointer}.scope{padding-top:24px;margin-top:32px;border-top:1px solid var(--line);font-size:16px;color:var(--muted);max-width:none}.work-row{display:grid;grid-template-columns:3fr 6fr 3fr;gap:24px;padding:32px 0;border-top:1px solid var(--line)}.context{font-size:16px;color:var(--muted)}.context span{display:block}.work-title{color:var(--ink);text-decoration:none;display:block}.work-title:hover{color:var(--ink);text-decoration:underline}.work-title .read{display:block;color:var(--brand);font-size:16px;font-weight:600;line-height:1.5;margin-top:16px;text-decoration:underline;letter-spacing:0}.work-row p{margin-top:12px}.outcome{font-size:var(--fs-item);line-height:1.3;font-weight:600;letter-spacing:-.015em;margin-top:0!important;font-variant-numeric:tabular-nums}.outcome small{display:block;color:var(--muted);font-size:16px;font-weight:400;letter-spacing:0;line-height:1.5;margin-top:8px}.work-row.no-outcome{grid-template-columns:3fr 9fr}details{border-top:1px solid var(--line);margin-top:24px}summary{cursor:pointer;min-height:48px;padding:12px 0;font-weight:600;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:24px}summary::-webkit-details-marker{display:none}summary:after{content:"+";font-size:22px;line-height:24px;font-weight:400}details[open]>summary:after{content:"−"}summary:hover{background:var(--surface)}.detail-body{padding:16px 0 24px}.career-list{display:grid;gap:24px}.career-list dt{font-weight:600}.career-list dd{margin-top:8px;color:var(--muted);max-width:72ch}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.principle{padding-top:24px}.principle h3{font-size:24px;margin-bottom:16px}.principle.featured{background:var(--diagram);color:var(--onDiagram);padding:24px;border-radius:12px}.principle.featured a{color:var(--onDiagram);display:inline-flex;align-items:center;min-height:48px;margin-top:16px;font-size:16px}.principle.featured a:focus-visible{outline-color:var(--onDiagramFocus)}.principle blockquote{font-size:24px;line-height:1.4;margin-bottom:16px}.update{display:grid;grid-template-columns:160px 1fr;gap:32px;padding:32px 0;border-top:1px solid var(--line)}.update time{font-size:16px;color:var(--muted)}.update h3{font-size:24px;margin-bottom:12px}.update .tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px;padding:0;list-style:none}.tag{font-size:16px;display:inline-block;background:var(--inset);padding:4px 12px;border-radius:4px}.update .metric{font-weight:600;font-size:16px;margin-top:12px}.update .update-link{display:inline-flex;align-items:center;min-height:48px;margin-top:8px;font-size:16px}.update-body{margin-top:12px}.empty-feed{padding:32px 0;border-top:1px solid var(--line)}.lab{display:grid;grid-template-columns:1fr 2fr;gap:48px;margin-top:64px;padding-top:48px;border-top:1px solid var(--line)}.lab h2{font-size:32px}.empty-lab{padding:24px;background:var(--inset);border-radius:12px}.empty-lab p+p{color:var(--muted);font-size:16px}.recognition{display:grid;grid-template-columns:1fr 1fr;gap:64px}.award{padding:24px 0;border-top:1px solid var(--line)}.award h3{font-size:22px;margin-bottom:8px}.award p{font-size:16px;color:var(--muted)}.voice{padding:24px 0;border-top:1px solid var(--line)}.voice blockquote{font-size:20px;line-height:1.6}.voice:first-child blockquote{font-size:28px;line-height:1.4}.voice figcaption{font-size:16px;margin-top:16px;color:var(--muted)}.beyond{display:grid;grid-template-columns:1fr;gap:64px;align-items:start;margin-top:64px;padding-top:48px;border-top:1px solid var(--line)}.beyond.has-portrait{grid-template-columns:1fr 160px}.beyond h2{font-size:32px;margin-bottom:24px}.portrait{width:160px;height:200px;object-fit:cover;object-position:center 30%;border-radius:4px}.contact{border-top:1px solid var(--line)}.contact h2{max-width:15ch}.contact .lead{margin-top:24px}.contact .support{margin-top:16px;color:var(--muted)}.email-address{display:inline-flex;align-items:center;min-height:48px;width:fit-content;overflow-wrap:anywhere;margin-top:8px}.site-footer{border-top:1px solid var(--line)}.footer-inner{padding:24px 0 32px;display:flex;gap:24px;justify-content:space-between;align-items:center;font-size:16px;color:var(--muted)}.footer-inner a{min-height:48px;display:inline-flex;align-items:center}.dock{display:none}.breadcrumb{font-size:16px;margin-bottom:24px;color:var(--muted)}.breadcrumb ol{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px}.breadcrumb li+li:before{content:"/";margin-right:8px}.breadcrumb a{display:inline-flex;align-items:center;min-height:48px}.page-intro{padding-top:64px;padding-bottom:48px}.page-intro .context{margin-bottom:16px}.page-intro h1{max-width:19ch}.page-intro .lead{margin-top:24px;max-width:58ch}.page-intro .meta{font-size:16px;color:var(--muted);margin-top:16px}.case-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;padding:32px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.case-metrics dt{font-weight:600;font-size:var(--fs-item);line-height:1.3;letter-spacing:-.015em;font-variant-numeric:tabular-nums}.case-metrics dd{font-size:16px;color:var(--muted);margin-top:12px}.article-grid{display:grid;grid-template-columns:8fr 1fr 3fr;gap:24px;padding-bottom:96px}.article{max-width:720px;grid-column:1}.article h2{font-size:32px;margin:48px 0 24px;scroll-margin-top:24px}.article h3{font-size:22px;margin:32px 0 16px}.article p{max-width:720px}.article p+p{margin-top:16px}.article blockquote{font-size:24px;line-height:1.4;margin-top:24px}.article blockquote+p{font-size:16px;color:var(--muted);margin-top:12px}.article .designs{display:grid;gap:0}.article .designs>div{display:grid;grid-template-columns:160px 1fr;gap:24px;padding:16px 0;border-top:1px solid var(--line)}.article .designs dt{font-weight:600}.toc{grid-column:3;grid-row:1;align-self:start;padding-top:48px}.toc p{font-size:16px;font-weight:600}.toc ul,.mobile-toc ul{list-style:none;padding:0;margin:0}.toc a,.mobile-toc a{display:flex;align-items:center;min-height:48px;font-size:16px}.mobile-toc{display:none;margin-bottom:24px}.anatomy-section{scroll-margin-top:24px}.anatomy{display:grid;grid-template-columns:1fr 4fr;gap:16px;margin-top:24px}.model{padding:16px;background:var(--inset);border-radius:4px;font-size:16px}.model strong{display:block;font-size:28px;margin-bottom:16px}.engineering{border:1px solid var(--controlBorder);border-radius:4px;padding:16px}.engineering>strong{display:block;font-size:28px}.engineering details{margin-top:8px}.engineering summary,.engineering p{font-size:16px}.engineering .detail-body{padding:8px 0 16px}.caption{font-size:16px;color:var(--muted);margin-top:16px}.case-end{border-top:1px solid var(--line);padding:32px 0;display:flex;gap:24px;justify-content:space-between}.case-end a{min-height:48px;display:inline-flex;align-items:center}.updates-wrap{max-width:960px}.filters{display:none;flex-wrap:wrap;gap:8px;margin:24px 0}.js .filters{display:flex}.filters button{min-height:48px;padding:12px 16px;font:inherit;font-size:16px;line-height:24px;color:var(--ink);background:var(--background);border:1px solid var(--controlBorder);border-radius:4px;cursor:pointer}.filters button:hover{background:var(--surface)}.filters button[aria-pressed=true]{background:var(--inset);font-weight:600;text-decoration:underline;text-underline-offset:4px}.filter-empty button{margin-top:12px}.page-note{font-size:16px;color:var(--muted);margin-top:16px}.updates-list{padding-bottom:96px}.updates-list .update[hidden]{display:none}@media(min-width:768px)and (max-width:1199px){.hero{grid-template-columns:1fr}.diagram{min-height:280px;display:grid;grid-template-columns:1fr 1fr;gap:24px}.diagram-title,.diagram-foot{grid-column:1 / -1}.diagram-sides{display:contents}.axis{display:none}.work-row{grid-template-columns:2fr 4fr 2fr}.work-row.no-outcome{grid-template-columns:2fr 6fr}.principles{grid-template-columns:1fr 1fr}.principle:last-child{grid-column:1 / -1}.article-grid{display:block}.toc{display:none}.mobile-toc{display:block}.recognition{gap:32px}.nav,.header-inner{gap:16px}}@media(max-width:767px){html{scroll-padding-bottom:88px}body{padding-bottom:calc(72px + env(safe-area-inset-bottom,0px))}.header-inner{min-height:64px;gap:8px;flex-wrap:wrap}.brand .full{display:none}.brand .short{display:inline}.nav,.header-inner>.theme-control{display:none!important}.mobile-tools{display:flex;align-items:center;gap:8px}.js .mobile-tools .theme-control{display:inline-flex}.menu{display:block;border:0;margin:0;font-size:16px}.menu summary{padding:12px;gap:12px}.header-inner:has(.menu[open]) .mobile-tools{width:100%;align-items:start;flex-wrap:wrap}.menu[open]{flex:1 1 100%;order:2}.menu-links a{display:flex;align-items:center;min-height:48px;padding:0 8px;color:var(--ink);text-decoration:none}.section{padding-block:64px}.hero{grid-template-columns:1fr;gap:32px;padding-top:32px;padding-bottom:48px}.identity{font-size:22px}.hero h1,.hero .lead{margin-top:16px}.location{margin-top:12px}.actions{margin-top:16px}.hero .actions .button{flex:1 1 auto}.hero .actions .text-action{padding-left:0}.diagram{min-height:400px;padding:24px;margin:0}.diagram .side{font-size:32px}.proof{grid-template-columns:1fr 1fr;gap:0;padding:16px 0}.proof>div{padding:16px}.section-head{display:block;margin-bottom:32px}.section-head>a{margin-top:16px}.two-sides,.two-sides.enhanced{grid-template-columns:1fr;gap:32px}.tablist button{flex:1 1 0}.work-row,.work-row.no-outcome{grid-template-columns:1fr;gap:16px}.principles{grid-template-columns:1fr;gap:32px}.principle{padding:0}.principle.featured{padding:24px}.principle h3{font-size:22px}.update{grid-template-columns:1fr;gap:12px;padding:24px 0}.update h3{font-size:22px}.lab{grid-template-columns:1fr;gap:24px;margin-top:48px;padding-top:32px}.lab h2,.beyond h2{font-size:28px}.recognition{grid-template-columns:1fr;gap:32px}.voice:first-child blockquote{font-size:24px}.beyond{gap:24px;margin-top:48px;padding-top:32px}.beyond.has-portrait{grid-template-columns:1fr 120px}.beyond.has-portrait>div:first-child{grid-column:1 / -1}.portrait{width:120px;height:150px}.footer-inner{display:block}.dock{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;position:fixed;bottom:0;left:0;right:0;z-index:20;min-height:calc(72px + env(safe-area-inset-bottom,0px));padding:12px 12px calc(12px + env(safe-area-inset-bottom,0px));background:var(--background);box-shadow:var(--dockShadow)}.dock:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:var(--line)}.dock a{min-width:0;min-height:48px;display:flex;align-items:center;justify-content:center;font-size:16px;line-height:1.25;text-align:center;border:1px solid var(--controlBorder);border-radius:4px;text-decoration:none;padding:4px;color:var(--ink)}.dock a.primary{background:var(--brand);color:var(--onBrand);border-color:var(--brand)}.dock a:hover{background:var(--surface);color:var(--ink)}.page-intro{padding-top:32px;padding-bottom:32px}.page-intro h1{max-width:100%}.case-metrics{grid-template-columns:1fr;gap:24px}.case-metrics dd{margin-top:8px}.article-grid{display:block;padding-bottom:64px}.article h2{font-size:28px;margin-top:32px}.article .designs>div{grid-template-columns:1fr;gap:4px}.toc{display:none}.mobile-toc{display:block}.anatomy{grid-template-columns:1fr}.model strong{display:inline;margin-right:16px}.case-end{display:block;padding-block:24px}.case-end a{display:flex}.updates-list{padding-bottom:64px}}@media(max-width:350px){.hero .actions .button{flex-basis:100%}.proof>div{padding:12px}.brand{font-size:16px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition-duration:0ms!important;animation:none!important;scroll-behavior:auto!important}}@media(forced-colors:active){:focus-visible{outline:3px solid Highlight}.button,.filters button,.tablist button,.engineering,.dock a{border:1px solid ButtonText}.diagram,.principle.featured{border:1px solid CanvasText}}
