@import url('/assets/fonts/gambarino.css');
:root{--font-display:'Gambarino',Georgia,serif;--font-body:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--bg:#121826;--deep:#0e1320;--cream:#f1ebe0;--muted:#a9b1c2;--brass:#e9b46c;--sky:#8fb3d9;--bg-rgb:18,24,38;--deep-rgb:14,19,32;--cream-rgb:241,235,224;--muted-rgb:169,177,194;--brass-rgb:233,180,108;--sky-rgb:143,179,217;--line:#f1ebe026;color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:112px}body{margin:0;font-family:var(--font-body);background:var(--bg);color:var(--cream);font-size:16px;line-height:1.6}::selection{background:var(--sky);color:var(--deep)}img{max-width:100%}button,a,summary{-webkit-tap-highlight-color:transparent}button{font:inherit}a{color:inherit}button:focus-visible,a:focus-visible,summary:focus-visible,[tabindex="0"]:focus-visible{outline:2px solid var(--sky);outline-offset:5px}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4{font-weight:400}h2{font-family:var(--font-display);font-size:clamp(43px,4.2vw,62px);line-height:1.08;letter-spacing:-.025em}h3{font-family:var(--font-display)}a:hover{color:var(--brass)}[id]{scroll-margin-top:112px}.atlas-skip{z-index:120}.atlas-page .atlas-primary{color:var(--bg)}.atlas-primary:focus-visible{outline-color:var(--sky)}
.site-header{background:#121826f5;border-bottom:1px solid transparent;position:sticky;top:0;z-index:40;backdrop-filter:blur(18px)}.header-inner{min-height:100px;display:flex;align-items:center;justify-content:space-between;gap:28px}.atlas-wordmark{font-size:31px;white-space:nowrap;line-height:1.2}.site-nav{display:flex;align-items:center;gap:32px;font-size:13px;color:var(--muted)}.site-nav a{padding:12px 0;white-space:nowrap}.site-nav a:hover{color:var(--cream)}.atlas-hero{padding-top:7px}.atlas-visual figcaption a{color:var(--brass);display:flex;gap:9px;align-items:center;font-size:11px}.atlas-visual figcaption a svg{width:14px;height:14px;stroke:currentColor;fill:none}.atlas-hero .atlas-intro h1{margin-bottom:0}.atlas-hero .atlas-role{line-height:1.5}.atlas-page .atlas-secondary{line-height:1.4}.atlas-description{line-height:1.7}.scope-strip{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:24px 0;color:var(--muted);font-size:12px}.scope-strip p{margin:0}.scope-strip a{display:flex;gap:20px;align-items:center}.scope-strip a span{font-size:20px;color:var(--brass)}
.section-kicker{font-size:12px;color:var(--brass);margin-bottom:22px;line-height:1.5}.body-copy{font-size:16px;line-height:1.85;color:var(--muted);max-width:540px}.body-copy p{margin-bottom:23px}.text-link{display:inline-flex;align-items:center;gap:18px;font-size:14px;border-bottom:1px solid #e9b46c65;padding:0 0 7px;line-height:1.5}.text-link:hover{border-color:var(--brass)}.text-link span{color:var(--brass);font-size:18px}.product-section{padding-top:126px;padding-bottom:135px}.product-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.product-grid h2{margin-bottom:34px}.product-grid .text-link{margin-top:12px}.system-map{margin:0;background:var(--deep);border:1px solid var(--line);padding:32px;border-radius:7px}.system-clients{display:grid;grid-template-columns:1fr 1fr;gap:14px}.system-clients>div{padding:18px;border:1px solid #f1ebe029;border-radius:3px}.system-map span{display:block;font-size:11px;color:var(--muted);margin-bottom:8px}.system-map strong{font-size:14px;font-weight:500;line-height:1.5;display:block}.system-connect{text-align:center;color:var(--brass);font-size:23px;padding:10px}.system-execution{border:1px solid #e9b46c80;padding:23px;text-align:center;background:#e9b46c08;border-radius:3px}.system-execution span{color:var(--brass);font-size:13px}.system-execution p{font-size:12px;color:var(--muted);margin:9px 0 0}.system-foundation{display:grid;grid-template-columns:1fr 1fr;gap:22px}.system-foundation>div{padding:17px 0 0;border-top:1px solid var(--line)}.system-foundation p{font-size:12px;line-height:1.8;color:var(--muted);margin:9px 0 0}.system-map figcaption{font-size:10px;color:#99a1b2;line-height:1.6;margin-top:28px}
.work-section{background:#0f1522;padding:102px 0 112px;border-top:1px solid #f1ebe00b;border-bottom:1px solid #f1ebe00b}.section-heading{display:flex;gap:60px;justify-content:space-between;align-items:flex-end;margin-bottom:64px}.section-heading h2{max-width:650px;margin:0}.section-heading>p{max-width:270px;color:var(--muted);font-size:14px;line-height:1.8;margin:0 0 4px}.case-entry{display:grid;grid-template-columns:minmax(210px,.8fr) minmax(0,1.55fr);column-gap:110px;padding:45px 0 46px;border-top:1px solid var(--line)}.case-entry:last-child{border-bottom:1px solid var(--line)}.case-number{display:block;color:var(--muted);font-size:11px;margin-bottom:8px}.case-identity h3{font-size:42px;line-height:1.2;letter-spacing:-.025em;margin:0 0 17px}.case-identity p{font-size:13px;line-height:1.8;color:var(--muted);max-width:320px;margin:0}.case-preview h4{font-family:var(--font-body);font-size:19px;line-height:1.5;margin:0 0 19px;max-width:580px}.decision-list{padding:0;margin:0;list-style:none}.decision-list li+li{margin-top:10px}.decision-list a{display:grid;grid-template-columns:35px 1fr;gap:16px;font-size:14px;line-height:1.6;color:#bcc4d5}.decision-list a span{font-size:10px;color:var(--brass);padding-top:3px}.decision-list a:hover{color:var(--cream)}.case-preview-foot{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin-top:24px}.case-preview-foot>span{font-size:11px;color:#9098a8;max-width:400px;line-height:1.6}.case-preview-foot .text-link{font-size:12px;white-space:nowrap}
.approach-section{padding-top:133px;padding-bottom:125px;display:grid;grid-template-columns:1fr 1fr;gap:120px}.approach-intro h2{margin-bottom:29px}.approach-intro>p{font-size:16px;color:var(--muted);line-height:1.85;max-width:490px;margin-bottom:31px}.approach-principles article{border-top:1px solid var(--line);padding:22px 0 25px}.approach-principles article:first-child{padding-top:0;border-top:0}.approach-principles h3{font-size:31px;line-height:1.2;margin-bottom:12px;letter-spacing:-.015em}.approach-principles p{font-size:14px;line-height:1.8;color:var(--muted);max-width:475px;margin:0}.evidence-invitation{display:grid;grid-template-columns:1fr 1fr;gap:120px;padding:67px 0 90px;border-top:1px solid var(--line)}.evidence-invitation h2{font-size:47px;margin-bottom:0}.evidence-invitation>div:last-child{padding-top:35px}.evidence-invitation p{max-width:470px;font-size:15px;line-height:1.8;color:var(--muted);margin-bottom:27px}.contact-section{background:var(--deep);padding:100px 0 109px;border-top:1px solid var(--line)}.contact-inner{text-align:center}.contact-inner h2{font-size:clamp(46px,4.7vw,70px);margin:0 0 29px}.contact-inner p{color:var(--muted);font-size:15px;line-height:1.9;margin-bottom:31px}.contact-actions{display:flex;justify-content:center;align-items:center;gap:30px}.site-footer{padding:40px 0 27px;background:var(--deep);border-top:1px solid var(--line)}.footer-top{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;font-size:13px}.footer-top p{margin-bottom:0}.footer-top p span{display:block;margin-top:5px;font-size:11px;color:var(--muted)}.footer-top>div{display:flex;flex-wrap:wrap;gap:12px 32px;color:var(--muted);font-size:12px}.footer-top>div a{white-space:nowrap}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #f1ebe015;margin-top:30px;padding-top:22px;font-size:10px;color:#8f97a8}
.breadcrumbs{display:flex;align-items:center;flex-wrap:wrap;gap:13px;padding:36px 0 44px;color:var(--muted);font-size:12px}.breadcrumbs>span[aria-hidden]{color:#5c6372}.case-masthead{max-width:1000px;padding:0 0 55px}.case-keyword{font-family:var(--font-display);font-size:35px;color:var(--brass);margin-bottom:20px;letter-spacing:-.01em}.case-masthead h1{font-family:var(--font-display);font-weight:400;font-size:clamp(53px,5.7vw,82px);line-height:1.065;letter-spacing:-.022em;max-width:1050px;margin-bottom:27px;text-wrap:pretty}.case-question{font-size:18px;line-height:1.8;color:var(--muted);max-width:740px;margin-bottom:24px}.case-meta{display:flex;gap:25px;color:#8f97a7;font-size:11px}.case-meta span+span{border-left:1px solid #f1ebe030;padding-left:25px}.case-reading-layout{display:grid;grid-template-columns:220px minmax(0,790px);gap:95px;border-top:1px solid var(--line);padding-top:52px;justify-content:space-between}.case-sidebar{align-self:start;position:sticky;top:126px}.case-sidebar nav>p{font-size:11px;color:var(--brass);margin:0 0 14px}.case-sidebar nav>a{display:block;font-size:12px;line-height:1.65;color:var(--muted);padding:11px 0;border-bottom:1px solid #f1ebe013}.case-sidebar nav>a span{color:var(--brass);display:block;font-size:10px;margin-bottom:3px}.case-sidebar nav>a[aria-current]{color:var(--cream);border-bottom-color:var(--brass)}.sidebar-note{padding-top:28px;font-size:11px;line-height:1.8;color:#939aab}.sidebar-note span{display:block;margin-bottom:9px;color:var(--brass)}.sidebar-note a{display:block;padding:5px 0}.contribution{border-left:2px solid var(--brass);padding:4px 0 4px 25px;margin-bottom:36px}.contribution>span{font-size:11px;color:var(--brass)}.contribution p{font-size:17px;line-height:1.75;color:var(--cream);margin:8px 0 0;max-width:710px}.prose{font-size:16px;line-height:1.9;color:#b7bfd1;overflow-wrap:anywhere}.prose p{margin:0 0 23px}.prose a{border-bottom:1px solid #e9b46c70;color:var(--brass);padding-bottom:2px}.prose a:hover{color:var(--cream)}.prose strong{color:var(--cream);font-weight:550}.prose ul,.prose ol{padding-left:24px}.prose li{margin-bottom:10px}.prose code{font-family:ui-monospace,Consolas,monospace;font-size:.83em;color:#f8c882}.prose pre{padding:23px;border:1px solid #f1ebe020;background:#0b0f1a;line-height:1.75;overflow:auto;border-radius:3px;white-space:pre-wrap;overflow-wrap:anywhere}.prose pre code{font-size:12px;color:#e0d8c9}.prose h2,.prose h3{font-family:var(--font-display);font-size:31px;line-height:1.2;color:var(--cream);margin:39px 0 19px}.prose h4{font-size:17px;margin:30px 0 15px;color:var(--cream)}.prose .table-wrap{overflow-x:auto;margin:26px 0}.prose table{width:100%;border-collapse:collapse;font-size:13px;line-height:1.7}.prose td,.prose th{padding:15px 14px;border-bottom:1px solid #f1ebe026;text-align:left;vertical-align:top;min-width:140px}.prose th{font-weight:500;color:var(--cream)}.case-reading>.case-figure{margin:40px 0 65px}.case-figure>figcaption{font-size:11px;line-height:1.7;color:var(--muted);padding-top:16px}.decision-section{border-top:1px solid var(--line);padding:45px 0 61px}.decision-section h2,.results-section h2{font-size:43px;line-height:1.14;max-width:690px;margin-bottom:31px}.decision-section .section-kicker{margin-bottom:14px}.evidence-card{display:block;border:1px solid #e9b46c42;background:var(--deep);border-radius:5px;padding:25px 28px;margin-top:33px;transition:border-color .15s}.evidence-card:hover{border-color:var(--brass);color:var(--cream)}.evidence-card>div:first-child{display:flex;gap:15px;align-items:center;color:var(--brass);font-size:10px;margin-bottom:14px}.evidence-id{padding:3px 7px;border:1px solid #e9b46c55;border-radius:3px}.evidence-kind{color:var(--muted)}.evidence-card h4{font-family:var(--font-display);font-size:28px;line-height:1.2;margin:0 0 12px;color:var(--cream)}.evidence-card p{font-size:13px;line-height:1.8;color:var(--muted);margin:0 0 20px}.evidence-action{font-size:12px;color:var(--brass);display:flex;justify-content:space-between;align-items:center}.results-section{border-top:1px solid var(--line);padding-top:43px}.scope-note{background:#8fb3d90a;border:1px solid #8fb3d93a;border-left:2px solid var(--sky);padding:23px 25px;margin-top:32px}.scope-note>span{font-size:11px;color:var(--sky)}.scope-note p{font-size:13px;line-height:1.8;color:var(--muted);margin:9px 0 0}.case-contact{padding:45px 0 30px;display:flex;align-items:center;justify-content:space-between;gap:20px}.case-contact p{font-size:15px;margin:0;color:var(--muted)}.case-pagination{display:grid;grid-template-columns:1fr 1fr;margin-top:95px;padding:36px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.case-pagination>a:last-child{text-align:right}.case-pagination span{display:block;font-size:11px;color:var(--muted);margin-bottom:10px}.case-pagination strong{font-family:var(--font-display);font-size:36px;line-height:1.2;font-weight:400}.all-cases{display:flex;flex-wrap:wrap;gap:12px 26px;justify-content:center;padding:30px 0 55px;font-size:12px;color:var(--muted)}.all-cases a[aria-current]{color:var(--brass)}
.library-header{max-width:865px;padding:0 0 52px}.library-header h1,.exhibit-header h1{font-family:var(--font-display);font-size:clamp(52px,5.2vw,77px);font-weight:400;line-height:1.08;letter-spacing:-.03em;margin:0 0 27px}.library-header>p{font-size:18px;line-height:1.8;color:var(--muted);max-width:780px}.library-header .library-note{font-size:13px;line-height:1.9;max-width:720px;margin-top:27px;color:#9ba3b4}.evidence-group{display:grid;grid-template-columns:220px 1fr;gap:65px;padding:38px 0 42px;border-top:1px solid var(--line)}.evidence-group h2{font-size:36px}.evidence-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px}.evidence-pair .evidence-card{margin-top:0;display:flex;flex-direction:column}.evidence-pair .evidence-card p{flex:1}.evidence-index{padding-bottom:72px}.exhibit-header{max-width:950px;padding-bottom:40px}.exhibit-header .section-kicker{margin-bottom:22px}.exhibit-header h1{font-size:clamp(48px,4.9vw,70px)}.exhibit-actions{display:flex;flex-wrap:wrap;gap:18px 28px;align-items:center;margin-top:31px}.copy-link{background:none;color:var(--muted);border:1px solid #a9b1c242;border-radius:4px;padding:8px 12px;font-size:12px;cursor:pointer}.copy-link:hover{color:var(--cream);border-color:var(--brass)}.copy-status{font-size:12px;color:var(--brass)}.evidence-document{background:#eee5d6;color:#171f2f;border-radius:5px;padding:40px clamp(26px,5vw,72px) 50px;max-width:1040px;margin:0 auto 0 0}.evidence-notice{font-size:12px;line-height:1.8;color:#555d6c;border-bottom:1px solid #59607033;padding-bottom:24px;margin-bottom:30px}.evidence-document .prose{color:#273146;max-width:none;font-size:15px;line-height:1.9}.evidence-document .prose :is(h2,h3,h4,strong,th){color:#141a29}.evidence-document .prose :is(td,th){border-color:#59607040}.evidence-document .prose pre{border:0;background:var(--bg)}.evidence-document .prose code{color:#815421}.evidence-document .prose pre code{color:#e9e1d2}.evidence-document .prose a{color:#815421;border-color:#81542180}.evidence-document .prose hr{border:0;border-top:1px solid #59607033;margin:30px 0}.exhibit-return{display:flex;justify-content:space-between;gap:25px;max-width:1040px;padding:37px 0 75px}
@media(min-width:1600px){.atlas-hero{padding-top:12px}.product-grid{gap:135px}.case-reading-layout{grid-template-columns:240px minmax(0,825px);gap:120px}}
@media(max-width:1100px){.atlas-shell{width:calc(100% - 72px)}.product-grid,.approach-section,.evidence-invitation{gap:55px}.case-entry{gap:55px;grid-template-columns:.85fr 1.4fr}.section-heading{gap:40px}.case-reading-layout{grid-template-columns:190px minmax(0,1fr);gap:50px}.case-preview-foot{align-items:flex-start;flex-direction:column;gap:15px}.evidence-group{grid-template-columns:170px 1fr;gap:30px}.evidence-pair{gap:15px}.evidence-card{padding:23px}.system-map{padding:24px}.site-nav{gap:22px}.case-masthead h1{font-size:65px}}
@media(max-width:820px){.atlas-shell{width:calc(100% - 48px)}.header-inner{min-height:90px}.atlas-wordmark{font-size:28px}.site-nav{gap:18px;font-size:12px}.site-nav a:nth-child(3){display:none}.atlas-hero .atlas-intro h1{max-width:10em}.product-section{padding:78px 0 83px}.product-grid{grid-template-columns:1fr;gap:46px}.product-grid .body-copy{max-width:640px}.system-map{max-width:650px}.work-section{padding:74px 0}.section-heading{display:block;margin-bottom:38px}.section-heading>p{max-width:500px;margin-top:23px}.case-entry{grid-template-columns:.8fr 1.2fr;gap:34px;padding:35px 0}.case-identity h3{font-size:34px}.case-identity p{font-size:12px}.case-preview h4{font-size:17px}.decision-list a{font-size:13px;gap:10px}.approach-section{padding:80px 0;grid-template-columns:1fr;gap:45px}.approach-intro>p{max-width:630px}.approach-principles{display:grid;grid-template-columns:1fr 1fr 1fr;gap:23px}.approach-principles article{padding:0;border:0}.approach-principles h3{font-size:27px}.approach-principles p{font-size:13px}.evidence-invitation{gap:40px;padding:48px 0 75px}.evidence-invitation h2{font-size:39px}.contact-section{padding:75px 0}.case-masthead h1{font-size:57px}.case-reading-layout{grid-template-columns:1fr;padding-top:30px;gap:35px}.case-sidebar{position:static;top:auto}.case-sidebar nav{display:flex;flex-wrap:wrap;gap:12px 22px}.case-sidebar nav>p{width:100%;margin-bottom:0}.case-sidebar nav>a{padding:4px 0;max-width:210px}.case-sidebar nav>a span{display:inline;margin-right:7px}.sidebar-note{display:none}.case-reading{max-width:760px}.case-masthead{padding-bottom:32px}.contribution p{font-size:16px}.case-question{font-size:16px}.evidence-group{grid-template-columns:1fr;gap:12px}.evidence-group h2{margin-bottom:10px}.evidence-pair{gap:18px}.library-header{padding-bottom:30px}.library-header h1{font-size:57px}.case-pagination{margin-top:60px}}
@media(max-width:520px){html{scroll-padding-top:126px}[id]{scroll-margin-top:126px}.atlas-shell{width:calc(100% - 40px)}.header-inner{min-height:103px;flex-direction:column;align-items:flex-start;justify-content:center;gap:9px;padding:13px 0 8px}.atlas-wordmark{font-size:28px}.site-nav{width:100%;justify-content:space-between;gap:14px;font-size:11px}.site-nav a{padding:4px 0 8px}.site-nav a:nth-child(3){display:block}.atlas-hero{padding-top:16px}.atlas-hero .atlas-intro{padding-top:0}.atlas-description{max-width:350px}.atlas-hero .atlas-visual figcaption a{font-size:10px}.scope-strip{align-items:flex-start;gap:18px;padding:19px 0;font-size:10px}.scope-strip a{white-space:nowrap;gap:9px;font-size:10px}.scope-strip p{max-width:210px}.scope-strip a span{font-size:15px}.product-section{padding:65px 0 70px}.section-kicker{font-size:11px;margin-bottom:17px}h2{font-size:41px}.product-grid{gap:32px}.product-grid h2{margin-bottom:25px}.body-copy{font-size:14px;line-height:1.85}.system-map{padding:20px 17px}.system-clients{gap:10px}.system-clients>div{padding:13px 10px}.system-map strong{font-size:12px}.system-map span{font-size:10px}.system-foundation{gap:17px}.system-foundation p{font-size:11px}.system-map figcaption{font-size:10px}.work-section{padding:61px 0 67px}.section-heading h2{font-size:42px}.section-heading>p{font-size:13px;line-height:1.8;margin-top:20px}.case-entry{grid-template-columns:1fr;gap:25px;padding:31px 0 35px}.case-identity h3{font-size:39px;margin-bottom:12px}.case-number{font-size:10px}.case-identity p{font-size:13px;max-width:100%}.case-preview h4{font-size:17px;line-height:1.5;margin-bottom:18px}.decision-list a{font-size:13px;grid-template-columns:29px 1fr;gap:11px}.decision-list a span{font-size:10px}.case-preview-foot{margin-top:21px;gap:19px}.case-preview-foot>span{font-size:11px}.approach-section{padding:65px 0;gap:35px}.approach-intro h2{font-size:41px}.approach-intro>p{font-size:14px}.approach-principles{grid-template-columns:1fr;gap:0}.approach-principles article{padding:24px 0;border-top:1px solid var(--line)}.approach-principles article:first-child{padding-top:24px;border-top:1px solid var(--line)}.approach-principles h3{font-size:30px}.approach-principles p{font-size:14px}.evidence-invitation{grid-template-columns:1fr;gap:21px;padding:43px 0 61px}.evidence-invitation>div:last-child{padding-top:0}.evidence-invitation p{font-size:14px}.evidence-invitation h2{font-size:39px}.contact-section{padding:65px 0}.contact-inner{text-align:left}.contact-inner h2{font-size:44px}.contact-inner p{font-size:14px}.contact-actions{justify-content:flex-start;gap:27px;flex-wrap:wrap}.contact-actions .atlas-primary{padding:14px 20px;font-size:13px!important;gap:20px}.footer-top{flex-direction:column;gap:22px}.footer-top>div{gap:26px}.footer-bottom{font-size:10px;flex-direction:column;gap:9px}.site-footer{padding-top:30px}.breadcrumbs{font-size:11px;padding:26px 0 31px;gap:10px}.case-keyword{font-size:28px;margin-bottom:17px}.case-masthead h1{font-size:48px;line-height:1.08;letter-spacing:-.025em;margin-bottom:23px}.case-question{font-size:15px;line-height:1.75;margin-bottom:22px}.case-meta{font-size:10px;gap:17px}.case-meta span+span{padding-left:17px}.case-sidebar nav{gap:9px 18px}.case-sidebar nav>a{font-size:11px;max-width:100%}.case-sidebar nav>a:nth-of-type(2),.case-sidebar nav>a:nth-of-type(3){flex-basis:100%}.contribution{padding-left:18px;margin-bottom:27px}.contribution p{font-size:15px;line-height:1.8}.prose{font-size:15px;line-height:1.85}.prose p{margin-bottom:21px}.case-reading>.case-figure{margin:32px 0 45px}.decision-section{padding:33px 0 44px}.decision-section h2,.results-section h2{font-size:35px;margin-bottom:25px}.evidence-card{padding:21px 20px;margin-top:27px}.evidence-card>div:first-child{align-items:flex-start}.evidence-card h4{font-size:26px}.evidence-card p{font-size:12px}.evidence-kind{font-size:10px}.scope-note{padding:19px}.scope-note p{font-size:12px}.case-contact{flex-direction:column;align-items:flex-start;gap:14px;padding-top:34px}.case-pagination{margin-top:43px;padding:28px 0;gap:24px}.case-pagination strong{font-size:29px;overflow-wrap:anywhere}.case-pagination span{font-size:10px}.all-cases{justify-content:flex-start;font-size:11px;gap:12px 20px;padding-bottom:38px}.library-header h1{font-size:49px}.library-header>p{font-size:15px}.library-header .library-note{font-size:12px}.evidence-pair{grid-template-columns:1fr;gap:16px}.evidence-group{padding:29px 0 34px}.evidence-group h2{font-size:35px}.exhibit-header h1{font-size:43px}.exhibit-header{padding-bottom:30px}.exhibit-actions{gap:19px;font-size:12px}.exhibit-actions .text-link{font-size:12px}.evidence-document{padding:25px 19px 30px}.evidence-notice{font-size:11px}.evidence-document .prose{font-size:14px}.prose h2,.prose h3{font-size:28px}.prose pre{padding:17px}.prose pre code{font-size:11px}.prose td,.prose th{font-size:12px;min-width:120px;padding:12px}.exhibit-return{flex-direction:column;align-items:flex-start;gap:24px;padding:30px 0 52px}.text-link{font-size:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{scroll-behavior:auto!important}.evidence-card{transition:none}}
@media print{.site-header,.site-footer,.case-sidebar,.case-contact,.case-pagination,.all-cases,.copy-link{display:none}.atlas-shell{width:100%;max-width:none}.case-reading-layout{display:block}.atlas-page{background:white;color:black}.prose,.prose strong,.case-question{color:black}.case-figure,.evidence-card,.scope-note{break-inside:avoid}.case-masthead h1{font-size:42px}.evidence-document{padding:0;background:white}.prose a:after{content:" (" attr(href) ")";font-size:10px}.case-masthead{padding-bottom:20px}}

/* ---------- 13 October 2026 rework: additions on top of the 11 October stylesheet ---------- */
:root{--frame-line:rgba(var(--brass-rgb),.32);--ease-out:cubic-bezier(.22,.68,0,1)}
/* 12 px floor: nothing a reader has to read is smaller than 12 px. */
.scope-strip,.scope-strip a,.section-kicker,.case-number,.decision-list a span,.case-preview-foot>span,.footer-top p span,.footer-bottom,.evidence-card>div:first-child,.evidence-kind,.case-sidebar nav>p,.case-sidebar nav>a span,.sidebar-note,.contribution>span,.case-figure>figcaption,.case-pagination span,.case-meta,.system-map span,.system-map figcaption,.system-execution p,.system-foundation p,.atlas-visual figcaption a,.breadcrumbs,.case-sidebar nav>a,.evidence-action,.copy-link,.copy-status,.exhibit-actions .text-link,.library-header .library-note,.evidence-notice,.text-link,.case-preview-foot .text-link{font-size:12px}
.evidence-card p,.case-identity p,.approach-principles p,.section-heading>p{font-size:14px}
.atlas-description{font-size:16px}
/* Section rhythm */
.product-section{padding-top:132px;padding-bottom:132px}
.facts-strip{margin:84px 0 0;padding-top:40px;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px 56px}
.facts-strip>div{min-width:0}
.facts-strip dt{font-size:12px;color:var(--brass);margin-bottom:9px;line-height:1.5}
.facts-strip dd{margin:0;font-size:15px;line-height:1.75;color:#bcc4d5;max-width:34em}
.facts-strip dd a{color:var(--cream);border-bottom:1px solid #e9b46c65}
.facts-strip dd a:hover{color:var(--brass)}
.made-section{padding-top:0;padding-bottom:132px}
.work-section{padding:120px 0 128px}
.approach-section{padding-top:132px;padding-bottom:132px}
.timeline{list-style:none;margin:0 0 34px;padding:0;border-top:1px solid var(--line)}
.timeline li{display:grid;grid-template-columns:140px minmax(0,1fr);gap:20px;padding:15px 0;border-bottom:1px solid var(--line);font-size:14px;line-height:1.75}
.timeline time{color:var(--brass);font-size:12px;padding-top:4px;white-space:nowrap}
.timeline span{color:var(--muted)}
.timeline span strong{color:var(--cream);font-weight:500}
.about-section{padding:124px 0 128px;display:grid;grid-template-columns:1fr 1fr;gap:120px;border-top:1px solid var(--line);align-items:start}
.about-section .body-copy{max-width:560px}
.about-visual{display:grid;gap:34px;align-content:start}
.portrait-frame{margin:0;width:min(100%,340px);background:#0b0f1a;border:1px solid var(--frame-line);border-radius:10px;padding:6px}
.portrait-frame img{display:block;width:100%;height:auto;border-radius:5px}
.about-facts{margin:0}
.about-facts>div{display:grid;grid-template-columns:120px minmax(0,1fr);gap:18px;padding:15px 0;border-top:1px solid var(--line);font-size:14px;line-height:1.75}
.about-facts>div:last-child{border-bottom:1px solid var(--line)}
.about-facts dt{color:var(--brass);font-size:12px;padding-top:4px}
.about-facts dd{margin:0;color:#bcc4d5}
.about-links{display:flex;flex-wrap:wrap;gap:20px 30px;margin-top:4px}
.case-result{font-family:var(--font-body);font-size:19px;line-height:1.55;margin:0 0 21px;max-width:580px;color:var(--cream)}
.case-result span{display:block;font-size:12px;color:var(--brass);margin-bottom:7px}
.case-result--masthead{font-size:18px;max-width:760px;border-left:2px solid var(--brass);padding-left:25px}
.decision-label{font-size:12px;color:var(--brass);margin:0 0 11px}
.evidence-card h3{font-family:var(--font-display);font-size:28px;line-height:1.2;margin:0 0 12px;color:var(--cream);font-weight:400}
.contact-inner p{max-width:560px;margin-left:auto;margin-right:auto}
.evidence-invitation{padding:80px 0 96px}
@media(max-width:1100px){.about-section{gap:60px}.facts-strip{gap:28px 36px}}
@media(max-width:820px){.product-section{padding:84px 0 90px}.facts-strip{grid-template-columns:1fr 1fr;margin-top:60px}.made-section{padding-bottom:90px}.work-section{padding:84px 0 90px}.approach-section{padding:84px 0 90px}.about-section{grid-template-columns:1fr;gap:48px;padding:84px 0 90px}.about-visual{grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:40px;align-items:start}.site-nav a:nth-child(3){display:block}.site-nav a:nth-child(4){display:none}}
@media(max-width:520px){.product-section{padding:70px 0 72px}.facts-strip{grid-template-columns:1fr;gap:22px;margin-top:48px}.made-section{padding-bottom:70px}.work-section{padding:64px 0 70px}.approach-section{padding:70px 0 72px}.timeline li{grid-template-columns:1fr;gap:4px;padding:13px 0}.about-section{padding:70px 0 72px;gap:36px}.about-visual{grid-template-columns:1fr;gap:28px}.portrait-frame{width:min(100%,260px)}.about-facts>div{grid-template-columns:96px 1fr;gap:12px}.site-nav{font-size:12px;gap:10px 16px;flex-wrap:wrap;justify-content:flex-start}.site-nav a:nth-child(4){display:block}.case-result{font-size:17px}.case-result--masthead{padding-left:18px}}

.all-cases{font-size:12px}

/* ---------- 14 October 2026: the MCP-first decision, exchange plates ---------- */
.decision-home{padding:120px 0 132px;border-top:1px solid var(--line)}
.decision-home .product-grid{align-items:center}
.carry-map{display:grid;grid-template-columns:1fr 1fr;gap:0;background:var(--deep);border:1px solid var(--line);border-radius:7px;overflow:hidden}
.carry-col{padding:30px 30px 32px}
.carry-col+.carry-col{border-left:1px solid var(--line)}
.carry-col>span{display:block;font-size:12px;margin-bottom:18px;line-height:1.5}
.carry-hidden>span{color:var(--muted)}
.carry-kept>span{color:var(--brass)}
.carry-col ul{list-style:none;margin:0;padding:0;display:grid;gap:13px}
.carry-col li{position:relative;padding-left:20px;font-size:15px;line-height:1.5}
.carry-col li::before{content:"";position:absolute;left:0;top:.55em;width:7px;height:7px;border-radius:50%}
.carry-hidden li{color:#8f97a7}
.carry-hidden li::before{border:1px solid #777e8e}
.carry-kept li{color:var(--cream)}
.carry-kept li::before{background:var(--brass)}
.xchg{list-style:none;margin:0;justify-items:stretch;padding:6px;gap:0}
.xchg-step{display:grid;grid-template-columns:190px minmax(0,1fr);gap:18px;padding:16px 14px;border-top:1px solid rgba(var(--cream-rgb),.07)}
.xchg-step:first-child{border-top:0}
.xchg-who{font-size:13px;line-height:1.55;color:#bcc4d5;display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.xchg-body{min-width:0}
.xchg-body pre{margin:0;padding:12px 14px;background:#080b15;border:1px solid rgba(var(--cream-rgb),.1);border-radius:6px;overflow-x:auto;white-space:pre-wrap;overflow-wrap:anywhere}
.xchg-body code{font-family:ui-monospace,'Cascadia Mono',Consolas,monospace;font-size:12.5px;line-height:1.7;color:#e0d8c9}
.xchg-note{margin:9px 0 0;font-size:13px;line-height:1.6;color:var(--muted)}
.pin.pin-inline{position:static;transform:none;flex:none;width:24px;height:24px}
.decision-page .prose .source-quote{margin:28px 0;padding:4px 0 4px 24px;border-left:2px solid var(--brass)}
.decision-page .prose .source-quote p{font-family:var(--font-display);font-size:25px;line-height:1.35;color:var(--cream);margin:0;letter-spacing:-.01em}
.decision-page .decision-section:first-of-type{border-top:0;padding-top:8px}
@media(max-width:820px){.decision-home{padding:84px 0 90px}.carry-map{max-width:650px}}
@media(max-width:520px){.decision-home{padding:70px 0 72px}.carry-map{grid-template-columns:1fr}.carry-col+.carry-col{border-left:0;border-top:1px solid var(--line)}.carry-col{padding:24px 20px}.xchg-step{grid-template-columns:1fr;gap:10px;padding:14px 10px}.decision-page .prose .source-quote p{font-size:21px}}
.plate-frame.xchg{justify-items:stretch;display:grid;gap:0;padding:6px}
.plate-frame.xchg .xchg-step{width:100%}

/* ---------- 14 October 2026: marketing showcase (one stage, five posts) ---------- */
.made-section{padding-top:120px;border-top:1px solid var(--line)}
.mk-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 26px}
.mk-tabs[hidden]{display:none}
.mk-tabs button{font:inherit;font-size:13px;line-height:1.3;color:var(--muted);background:transparent;border:1px solid rgba(var(--muted-rgb),.28);border-radius:999px;padding:8px 15px;cursor:pointer;transition:color .2s,border-color .2s,background .2s}
.mk-tabs button:hover{color:var(--cream);border-color:var(--brass)}
.mk-tabs button[aria-selected="true"]{color:var(--bg);background:var(--brass);border-color:var(--brass)}
.mk-panels{display:grid;gap:40px}
.mk.is-tabbed .mk-panels{gap:0}
.mk-panel{display:grid;grid-template-columns:minmax(0,560px) minmax(0,1fr);gap:56px;align-items:center}
.mk-panel[hidden]{display:none}
.mk-stage{height:620px;display:grid;place-items:center;padding:0}
.mk-frame{position:relative;height:100%;border-radius:8px;overflow:hidden;background:#04060d;box-shadow:0 24px 60px -28px rgba(0,0,0,.7)}
.mk-9x16{aspect-ratio:9/16}
.mk-4x5{aspect-ratio:4/5}
.mk-frame video{display:block;width:100%;height:100%;object-fit:cover}
.mk-controls{position:absolute;right:10px;bottom:10px;display:flex;gap:6px}
.mk-controls button{font:inherit;font-size:12px;line-height:1;color:var(--cream);background:rgba(6,9,18,.78);border:1px solid rgba(var(--cream-rgb),.25);border-radius:999px;padding:7px 11px;cursor:pointer}
.mk-controls button:hover{border-color:var(--brass)}
.mk-format{font-size:12px;color:var(--brass);margin:0 0 12px}
.mk-info h3{font-family:var(--font-display);font-size:clamp(30px,2.6vw,38px);line-height:1.12;letter-spacing:-.015em;margin:0 0 18px;max-width:16em}
.mk-body{font-size:15px;line-height:1.8;color:var(--muted);max-width:36em;margin:0 0 22px}
.mk-credits{margin:0 0 16px;border-top:1px solid var(--line)}
.mk-credits>div{display:grid;grid-template-columns:150px minmax(0,1fr);gap:16px;padding:12px 0;border-bottom:1px solid var(--line);font-size:14px;line-height:1.6}
.mk-credits dt{font-size:12px;color:var(--brass);padding-top:2px}
.mk-credits dd{margin:0;color:#bcc4d5}
.mk-credits code{font-family:ui-monospace,'Cascadia Mono',Consolas,monospace;font-size:12.5px;color:#f8c882;margin-right:8px;white-space:nowrap;display:inline-block}
.mk-note{font-size:13px;line-height:1.7;color:#939aab;margin:0 0 22px}
.mk-slides{display:flex;gap:12px}
.mk-slides img{width:132px;height:auto;border-radius:6px;border:1px solid rgba(var(--cream-rgb),.1)}
.mk-role{margin:30px 0 0;font-size:14px;color:var(--muted)}
@media(max-width:1100px){.mk-panel{grid-template-columns:minmax(0,440px) minmax(0,1fr);gap:36px}.mk-stage{height:540px;padding:18px}}
@media(max-width:820px){.made-section{padding-top:84px}.mk-panel{grid-template-columns:1fr;gap:28px}.mk-stage{height:auto;padding:16px}.mk-frame{height:auto;width:min(100%,380px)}.mk-9x16{width:min(100%,300px)}}
@media(max-width:520px){.made-section{padding-top:70px}.mk-tabs{gap:6px}.mk-tabs button{padding:7px 12px}.mk-credits>div{grid-template-columns:1fr;gap:4px}.mk-slides img{width:calc(50% - 6px)}}
.mk-stage{display:grid;grid-template-rows:minmax(0,1fr) auto;justify-items:center;gap:14px;padding:22px 24px 16px}
.mk-frame{height:100%}
.mk-controls{position:static;justify-self:center}
@media(max-width:820px){.mk-stage{grid-template-rows:auto auto}.mk-frame{height:auto}}

/* ---------- 14 October 2026: decisions on the home page, and the snapshot figure ---------- */
.decisions-home{padding:120px 0 132px;border-top:1px solid var(--line)}
.decision-cards{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.decision-card{display:flex;flex-direction:column;background:var(--deep);border:1px solid var(--line);border-radius:10px;padding:34px 34px 30px;transition:border-color .25s}
.decision-card:hover{border-color:rgba(var(--brass-rgb),.45)}
.decision-card .when{font-size:12px;color:var(--brass);margin:0 0 14px}
.decision-card h3{font-family:var(--font-display);font-size:clamp(32px,2.9vw,42px);line-height:1.08;letter-spacing:-.02em;margin:0 0 16px}
.decision-card h3 a:hover{color:var(--brass)}
.decision-card>p:not(.when){font-size:15px;line-height:1.8;color:var(--muted);margin:0 0 22px;max-width:34em}
.decision-card dl{margin:0 0 28px;border-top:1px solid var(--line)}
.decision-card dl>div{display:grid;grid-template-columns:132px minmax(0,1fr);gap:14px;padding:12px 0;border-bottom:1px solid var(--line);font-size:14px;line-height:1.6}
.decision-card dt{font-size:12px;color:var(--brass);padding-top:2px}
.decision-card dd{margin:0;color:#bcc4d5}
.decision-card .text-link{margin-top:auto;align-self:flex-start}
.snapfig{margin:34px 0 8px;background:var(--deep);border:1px solid var(--line);border-radius:14px;padding:26px 22px 22px}
.snapfig-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 20px;margin:0 8px 22px}
.snapfig-q{margin:0;font-size:13px;line-height:1.6;color:var(--muted)}
.snapfig-q b{color:var(--cream);font-weight:500}
.snapfig-toggle{display:flex;gap:6px}
.snapfig-toggle[hidden]{display:none}
.snapfig-toggle button{font:inherit;font-size:12px;line-height:1.3;color:var(--muted);background:transparent;border:1px solid rgba(var(--muted-rgb),.28);border-radius:999px;padding:6px 12px;cursor:pointer;transition:color .2s,background .2s,border-color .2s}
.snapfig-toggle button:hover{color:var(--cream);border-color:var(--brass)}
.snapfig-toggle button[aria-pressed="true"]{color:var(--bg);background:var(--brass);border-color:var(--brass)}
.snapfig-surfaces{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.snap-card{margin:0 8px;background:#131927;border:1px solid rgba(var(--cream-rgb),.12);border-radius:10px;padding:16px 16px 14px;display:grid;gap:6px;transition:border-color .6s}
.snap-where{font-size:12px;color:var(--muted)}
.snap-val,.snap-how,.snapfig-sources,.snapfig-verdict{display:grid}
.snap-val>span,.snap-how>span,.snapfig-sources>div,.snapfig-verdict>span{grid-area:1/1;transition:opacity .6s cubic-bezier(.22,.68,0,1)}
.snap-val{font-family:var(--font-display);font-weight:400;font-size:clamp(28px,3vw,40px);line-height:1.1;color:var(--cream);letter-spacing:-.01em}
.snap-how{font-size:12px;line-height:1.5;color:#939aab}
.snapfig-wires{display:block;width:100%;height:70px}
.snapfig-wires path{fill:none;stroke-width:1.5;vector-effect:non-scaling-stroke;transition:opacity .6s}
.w-before path{stroke:rgba(var(--muted-rgb),.38);stroke-dasharray:4 4}
.w-after path{stroke:rgba(var(--brass-rgb),.7)}
.src-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.src-row span{margin:0 8px;border:1px dashed rgba(var(--muted-rgb),.35);border-radius:8px;padding:10px 12px;font-size:12px;line-height:1.45;color:#939aab;text-align:center}
.src-one{justify-self:center;width:min(100%,460px);border:1px solid rgba(var(--brass-rgb),.6);background:rgba(var(--brass-rgb),.07);border-radius:10px;padding:12px 18px;text-align:center}
.src-one strong{display:block;font-weight:500;font-size:15px;color:var(--cream)}
.src-one span{display:block;font-size:12px;color:var(--muted);margin-top:3px}
.snapfig-verdict{margin:20px 8px 0;font-family:var(--font-display);font-size:24px;line-height:1.2;color:var(--cream);text-align:center}
.snapfig figcaption{margin:14px 8px 0;font-size:12px;line-height:1.7;color:var(--muted);text-align:center}
.snapfig[data-mode="after"] .v-before,.snapfig[data-mode="before"] .v-after,.snapfig[data-mode="after"] .w-before,.snapfig[data-mode="before"] .w-after{opacity:0}
.snapfig[data-mode="before"] .snap-card.is-off{border-color:rgba(227,154,134,.45)}
.snapfig[data-mode="before"] .snap-card.is-off .snap-val{color:#e39a86}
.snapfig[data-mode="after"] .snap-card{border-color:rgba(156,200,164,.4)}
.snapfig.is-still *{transition:none!important}
@media(max-width:820px){.decisions-home{padding:84px 0 90px}.decision-cards{grid-template-columns:1fr}}
@media(max-width:520px){.decisions-home{padding:70px 0 72px}.decision-card{padding:26px 22px 24px}.decision-card dl>div{grid-template-columns:1fr;gap:4px}.snapfig{padding:20px 10px 18px}.snap-card{margin:0 4px;padding:12px 10px}.snap-val{font-size:24px}.src-row span{margin:0 4px;padding:8px 6px}.snapfig-verdict{font-size:20px}}
.snapfig-sources{align-items:center}
.src-row{align-self:center;align-items:center}
.snapfig-sources{align-items:start}
.src-row,.src-one{align-self:start}

.case-entry--compact{padding:36px 0 38px;align-items:start}
.case-entry--compact .case-identity h3{margin-bottom:0}
.case-entry--compact .case-result{margin-bottom:16px}
.case-diagram>figcaption{font-size:12px;line-height:1.7;color:var(--muted);padding-top:16px}

/* Facts: all four in one row on desktop, two by two on tablet, stacked on phones. */
.facts-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:30px 44px}
@media(max-width:1100px){.facts-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 40px}}
@media(max-width:520px){.facts-strip{grid-template-columns:1fr;gap:22px}}

/* Plain-words opener on case pages (14 October 2026) */
.plain-words{border:1px solid #e9b46c42;background:var(--deep);border-radius:5px;padding:26px 28px;margin-bottom:36px}.plain-words>span{display:block;font-size:11px;color:var(--brass);margin-bottom:16px}.plain-words dl{margin:0;display:grid;gap:14px}.plain-words dl>div{display:grid;grid-template-columns:120px 1fr;gap:18px}.plain-words dt{font-size:12px;color:var(--brass);padding-top:3px}.plain-words dd{margin:0;font-size:16px;line-height:1.7;color:var(--cream)}
@media(max-width:520px){.plain-words{padding:20px 18px;margin-bottom:27px}.plain-words dl>div{grid-template-columns:1fr;gap:5px}.plain-words dd{font-size:15px}}

/* Faster every month (14 October 2026) */
.velocity-section{padding:0 0 124px}
.velocity-section .section-heading{margin-bottom:44px}
.velocity{margin:0;border:1px solid rgba(var(--brass-rgb),.32);border-radius:10px;background:#0b0f1a;padding:24px 26px 20px}
.velocity-head{display:flex;justify-content:space-between;align-items:baseline;gap:16px;flex-wrap:wrap}
.velocity-month{font-family:var(--font-display);font-size:36px;line-height:1;color:var(--cream);letter-spacing:-.01em;min-width:9ch}
.velocity-counts{font-size:13px;color:var(--muted)}
.velocity-counts b{color:var(--brass);font-size:22px;font-weight:400;font-variant-numeric:tabular-nums;margin-right:4px;font-family:var(--font-display)}
.velocity-strip{position:relative;margin-top:84px}
.velocity-svg{display:block;width:100%;height:150px}
.v-grid{stroke:rgba(var(--cream-rgb),.07);stroke-width:1}
.v-axis{stroke:rgba(var(--cream-rgb),.3);stroke-width:1}
.v-spec{fill:var(--brass)}.v-mig{fill:var(--sky)}


.velocity-axis{position:relative;height:16px;margin-top:6px}
.velocity-axis span{position:absolute;top:0;font-size:10.5px;color:var(--muted);white-space:nowrap;transform:translateX(-50%)}
.velocity-marks{list-style:none;margin:0;padding:0;position:absolute;left:0;right:0;top:0;height:0;z-index:1}
.velocity-marks li{position:absolute;bottom:-2px;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:7px;font-size:11px;line-height:1.3;color:var(--muted);white-space:nowrap;transition:opacity .5s}
.velocity-marks li i{width:7px;height:7px;border-radius:50%;background:var(--brass);display:block;box-shadow:0 0 0 3px #0b0f1a}
.velocity-marks li:nth-child(even){padding-bottom:28px}
.velocity-marks li:nth-child(even)::after{content:"";position:absolute;bottom:2px;width:1px;height:28px;background:rgba(var(--brass-rgb),.35)}
.velocity-marks li:last-child{transform:translateX(-88%);align-items:flex-end}
.velocity-marks li:last-child i{margin-right:0}
/* A label that hangs to one side keeps its star exactly on the date (5.5 px is half the 11 px star). */
.velocity-marks li.is-start{transform:translateX(-5.5px);align-items:flex-start}
.velocity-marks li.is-end{transform:translateX(calc(-100% + 5.5px));align-items:flex-end}
.velocity-marks li.is-start button{align-items:flex-start}.velocity-marks li.is-end button{align-items:flex-end}

.velocity-legend{display:flex;gap:22px;flex-wrap:wrap;font-size:11px;color:var(--muted);margin-top:18px}
.velocity-legend i{display:inline-block;width:9px;height:9px;margin-right:7px;vertical-align:-1px;border-radius:1px}
.velocity-legend .l-spec{background:var(--brass)}.velocity-legend .l-mig{background:var(--sky)}
.velocity-list{display:none;list-style:none;margin:18px 0 0;padding:0;border-top:1px solid var(--line)}
.velocity-list li{display:grid;grid-template-columns:110px 1fr;gap:12px;padding:9px 0;border-bottom:1px solid var(--line);font-size:12.5px;line-height:1.5}
.velocity-list time{color:var(--brass);font-size:11px;padding-top:2px}
.velocity-list span{color:var(--muted)}
.velocity figcaption{font-size:12px;line-height:1.7;color:var(--muted);margin-top:18px;display:flex;justify-content:space-between;align-items:flex-start;gap:12px 20px;flex-wrap:wrap}
.velocity figcaption>span{max-width:70ch}
.velocity-replay{font:inherit;font-size:12px;color:var(--brass);background:none;border:1px solid rgba(var(--brass-rgb),.4);border-radius:999px;padding:4px 12px;cursor:pointer;white-space:nowrap}
.velocity-replay:hover{border-color:var(--brass);color:var(--cream)}
.velocity-compare{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:34px}
.vc-col{border-top:1px solid var(--line);padding-top:18px}
.vc-col--now{border-top-color:var(--brass)}
.vc-col .section-kicker{margin-bottom:10px}
.vc-col dl{margin:0}
.vc-col dl>div{display:grid;grid-template-columns:150px 1fr;gap:14px;align-items:baseline;padding:12px 0;border-bottom:1px solid var(--line);font-size:14px;line-height:1.6}
.vc-col dt{color:var(--muted)}
.vc-col dd{margin:0;color:var(--cream)}
.vc-col dd b{font-family:var(--font-display);font-size:38px;line-height:1;font-weight:400;color:var(--brass);font-variant-numeric:tabular-nums}
@media(max-width:820px){.velocity-section{padding-bottom:86px}.velocity{padding:20px 18px 16px}.velocity-strip{margin-top:26px}.velocity-marks li span{display:none}.velocity-marks li:nth-child(even){padding-bottom:0}.velocity-marks li:nth-child(even)::after{display:none}.velocity-list{display:block}.velocity-month{font-size:30px}}
@media(max-width:520px){.velocity-section{padding-bottom:70px}.velocity-svg{height:120px}.velocity-axis span:nth-child(3n+2),.velocity-axis span:nth-child(3n+3){display:none}.velocity-compare{grid-template-columns:1fr;gap:18px}.vc-col dl>div{grid-template-columns:120px 1fr;gap:10px}.vc-col dd b{font-size:32px}.velocity-head{gap:8px}.velocity-counts b{font-size:20px}}

/* Cases as a vertical slide (14 October 2026, night): a sticky list of the six cases, and
   per case a painted night panel with one key number beside a minimal text column. */
.slides{display:grid;grid-template-columns:210px minmax(0,1fr);gap:56px;margin-top:12px}
.slides-nav{position:sticky;top:150px;align-self:start}
.slides-nav ol{list-style:none;margin:0;padding:0;display:grid;gap:16px}
.slides-nav a{display:flex;align-items:center;gap:14px;color:var(--muted);font-size:13px;line-height:1.35;transition:color .3s}
.slides-nav a:hover{color:var(--cream)}
.slides-nav i{flex:none;width:14px;height:1px;background:currentColor;opacity:.55;transition:width .4s var(--ease-out),opacity .3s,background .3s}
.slides-nav a.is-active{color:var(--cream)}
.slides-nav a.is-active i{width:32px;opacity:1;background:var(--brass)}
.slides-track{display:grid;gap:clamp(64px,9vw,120px)}
.slide{display:grid;grid-template-columns:minmax(0,440px) minmax(0,1fr);gap:clamp(40px,6vw,96px);align-items:stretch;scroll-margin-top:140px}
.slide-panel{position:relative;display:block;aspect-ratio:4/5;border-radius:16px;overflow:hidden;background:var(--deep);border:1px solid rgba(var(--cream-rgb),.08);box-shadow:0 40px 80px -48px rgba(0,0,0,.95)}
.slide-panel img{display:block;width:100%;height:100%;object-fit:cover}
.slide-panel::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(var(--bg-rgb),0) 55%,rgba(var(--bg-rgb),.55) 100%)}
.slide-metric{position:absolute;z-index:1;left:18px;right:18px;bottom:18px;display:grid;gap:6px;padding:16px 18px 15px;border-radius:12px;background:rgba(var(--bg-rgb),.5);backdrop-filter:blur(14px) saturate(1.2);-webkit-backdrop-filter:blur(14px) saturate(1.2);border:1px solid rgba(var(--cream-rgb),.14);box-shadow:inset 0 1px 0 rgba(var(--cream-rgb),.12)}
.slide-metric b{font:400 40px/1 var(--font-display);color:var(--cream);letter-spacing:-.01em}
.slide-metric small{font-size:12.5px;line-height:1.45;color:#c9cfdb}
.slide-text{display:flex;flex-direction:column;justify-content:space-between;gap:28px;max-width:430px;padding:26px 0 6px}
.slide-n{display:block;margin-bottom:16px;color:var(--brass);font-size:13px;font-variant-numeric:tabular-nums}
.slide-text h3{margin:0;font:400 clamp(30px,2.7vw,40px)/1.12 var(--font-display);letter-spacing:-.01em;text-wrap:balance}
.slide-text h3 a:hover{color:var(--brass)}
.slide-bottom p{margin:0 0 18px;color:var(--muted);font-size:15px;line-height:1.75}
@media(prefers-reduced-motion:no-preference){
  .slides.is-live .slide-panel img{transform:scale(1.05);transition:transform 1.4s var(--ease-out),filter 1.4s var(--ease-out);filter:saturate(.75) brightness(.85)}
  .slides.is-live .slide.is-active .slide-panel img{transform:scale(1);filter:none}
  .slides.is-live .slide-text{opacity:.45;transition:opacity .6s var(--ease-out)}
  .slides.is-live .slide.is-active .slide-text{opacity:1}
}
@media(max-width:1100px){.slides{grid-template-columns:1fr;gap:0}.slides-nav{display:none}}
@media(max-width:820px){.slide{grid-template-columns:1fr;gap:22px}.slide-panel{aspect-ratio:1/1}.slide-text{padding:0;gap:14px;max-width:none}.slide-n{margin-bottom:10px}.slide-metric{left:12px;right:12px;bottom:12px;padding:11px 13px 10px;gap:3px}.slide-metric b{font-size:26px}.slide-metric small{font-size:12px}.slides.is-live .slide-text{opacity:1}}

/* Landing-page eyebrows as small textured pills (14 October 2026, night): each one shows a
   different slice of a strip cut from the Observatory painting's cloud layer, darkened for
   legibility, with a rounded brass edge. The speed comparison's column labels stay plain. */
.home-page .section-kicker,.home-page .atlas-role{display:inline-flex;align-items:center;width:max-content;max-width:100%;padding:7px 14px 7px;border-radius:999px;color:var(--cream);font-size:12px;line-height:1.2;letter-spacing:.02em;text-shadow:0 1px 6px rgba(0,0,0,.65);background:linear-gradient(rgba(var(--bg-rgb),.3),rgba(var(--bg-rgb),.3)),url(/assets/slides/eyebrow-strip.webp) var(--eb-x,30%) 50%/1300px auto no-repeat,var(--deep);border:1px solid rgba(var(--brass-rgb),.4);box-shadow:inset 0 1px 0 rgba(var(--cream-rgb),.16),0 8px 20px -12px rgba(0,0,0,.9)}
.home-page .atlas-role{--eb-x:42%}
.home-page #product .section-kicker{--eb-x:6%}
.home-page #decision .section-kicker{--eb-x:20%}
.home-page #made .section-kicker{--eb-x:34%}
.home-page #work .section-kicker{--eb-x:50%}
.home-page #approach .section-kicker{--eb-x:12%}
.home-page #velocity .section-heading .section-kicker{--eb-x:72%}
.home-page #about .section-kicker{--eb-x:86%}
.home-page .evidence-invitation .section-kicker{--eb-x:48%}
.home-page #contact .section-kicker{--eb-x:94%}
.home-page .vc-col .section-kicker{display:block;width:auto;padding:0;border:0;border-radius:0;background:none;box-shadow:none;text-shadow:none;color:var(--brass);letter-spacing:0}

/* The speed chart as a day picker (14 October 2026): an invisible range input over the strip,
   a drawn cursor and knob on the zero line, unreached marks dimmed, the picked day's marks in
   cream, totals so far top right, milestones as jump buttons. */
.velocity-when{display:grid;gap:8px}
.velocity-date{font-family:var(--font-display);font-size:36px;line-height:1;color:var(--cream);letter-spacing:-.01em;font-variant-numeric:tabular-nums}
.velocity-day{font-size:12.5px;line-height:1.4;color:var(--muted);min-height:1.4em}
.velocity-counts{text-align:right}
.velocity-so-far{display:block;margin-bottom:4px;font-size:11px;letter-spacing:.02em;color:var(--muted)}
.velocity-scrub{position:relative}
.velocity.is-live rect{transition:opacity .25s}
.velocity.is-live rect:not(.is-on){opacity:.16}
.velocity rect.is-day{fill:var(--cream)}
.velocity-range{position:absolute;left:0;top:0;height:100%;margin:0;padding:0;opacity:0;cursor:ew-resize;touch-action:pan-y;-webkit-appearance:none;appearance:none;background:transparent;z-index:2}
.velocity-range::-webkit-slider-runnable-track{height:100%;background:transparent;border:0}
.velocity-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:2px;height:160px;border:0;background:transparent}
.velocity-range::-moz-range-thumb{width:2px;height:160px;border:0;background:transparent}
.velocity-range::-moz-range-track{background:transparent;border:0}
.velocity-cursor{position:absolute;top:-6px;bottom:-2px;width:1px;margin-left:-.5px;background:rgba(var(--cream-rgb),.85);pointer-events:none}
.velocity-knob{position:absolute;top:59.3%;width:16px;height:16px;margin:-8px 0 0 -8px;border-radius:50%;background:var(--brass);border:2px solid #0b0f1a;box-shadow:0 0 0 4px rgba(var(--brass-rgb),.22);pointer-events:none;transition:transform .2s,box-shadow .2s}
.velocity-scrub:hover .velocity-knob,.velocity-scrub:has(.velocity-range:active) .velocity-knob{transform:scale(1.18);box-shadow:0 0 0 6px rgba(var(--brass-rgb),.25)}
.velocity-scrub:has(.velocity-range:focus-visible){outline:2px solid rgba(var(--brass-rgb),.75);outline-offset:3px;border-radius:4px}
.velocity-marks button{display:flex;flex-direction:column;align-items:center;gap:7px;padding:0;margin:0;border:0;background:none;color:inherit;font:inherit;cursor:pointer}
.velocity-marks li:last-child button{align-items:flex-end}
.velocity-marks button:hover span,.velocity-marks button:focus-visible span{color:var(--cream)}
.velocity-marks button:focus-visible{outline:none}.velocity-marks button:focus-visible i{outline:2px solid var(--cream);outline-offset:3px}
.velocity.is-live .velocity-marks li{transition:opacity .3s}
.velocity.is-live .velocity-marks li:not(.is-on){opacity:.4}
.velocity-list button{display:grid;grid-template-columns:110px 1fr;gap:12px;width:100%;padding:0;margin:0;border:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}
.velocity figcaption{align-items:center}
.velocity-hint{font-size:12px;color:var(--muted)}
@media(max-width:820px){.velocity-counts{text-align:left}.velocity-date{font-size:28px}}
.velocity-list li{display:block}

/* Week and day views of the speed chart (14 October 2026): week by default. */
.velocity.is-week .v-days,.velocity:not(.is-week) .v-weeks{display:none}
.velocity .v-weeks rect{rx:1}
.velocity-actions{display:flex;align-items:center;gap:12px;margin-left:auto}
.velocity-mode{display:inline-flex;padding:3px;border-radius:999px;border:1px solid rgba(var(--cream-rgb),.14);background:rgba(var(--cream-rgb),.03)}
.velocity-mode button{font:inherit;font-size:12px;line-height:1;color:var(--muted);background:none;border:0;border-radius:999px;padding:6px 13px;cursor:pointer;transition:color .2s,background .2s}
.velocity-mode button:hover{color:var(--cream)}
.velocity-mode button[aria-pressed="true"]{color:#0b0f1a;background:var(--brass)}
.velocity-mode button:focus-visible{outline:2px solid var(--cream);outline-offset:2px}
.velocity-mode[hidden]{display:none}

/* The chip row inside the text column on wide screens (moved there by mk.js). */
.mk-info .mk-tabs{margin:0 0 34px}
@media(min-width:821px){.mk.is-tabbed .mk-panel{align-items:start}.mk.is-tabbed .mk-info{padding-top:64px}}

/* ===== Night sky pass (14 October 2026) ===== */

/* The speed chart as a night sky over still water. */
.velocity-scrub{height:186px}
.v-sky{position:absolute;inset:0;overflow:visible}
.v-lines{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.v-lines line{vector-effect:non-scaling-stroke}
.v-grid{stroke:rgba(var(--cream-rgb),.05);stroke-width:1}
.v-axis{stroke:rgba(var(--cream-rgb),.28);stroke-width:1}
.v-water{position:absolute;left:0;right:0;top:58%;bottom:0;background:linear-gradient(180deg,rgba(var(--sky-rgb),.075),rgba(var(--sky-rgb),0) 85%);pointer-events:none}
.v-shimmer{stroke:rgba(var(--sky-rgb),.07);stroke-width:1}
.v-field i,.v-star{position:absolute;display:block;width:var(--s);height:var(--s);margin:calc(var(--s) / -2) 0 0 calc(var(--s) / -2);border-radius:50%;opacity:var(--o)}
.v-field i{background:var(--cream)}
.v-star{transition:opacity .25s,transform .25s}
.v-star.v-spec{background:#ffe1ae;box-shadow:0 0 calc(var(--s) * .9) rgba(var(--brass-rgb),.75),0 0 calc(var(--s) * .25) rgba(var(--brass-rgb),.9)}
.v-star.v-mig{background:var(--sky);transform:scaleY(1.6);filter:blur(.4px);box-shadow:0 0 calc(var(--s) * .7) rgba(var(--sky-rgb),.45)}
.v-star.v-dot{box-shadow:none}
.v-stem{stroke-width:1;opacity:.22;transition:opacity .25s}
.v-stem.v-spec{stroke:var(--brass)}
.v-stem.v-mig{stroke:var(--sky)}
.velocity.is-live .v-star:not(.is-on){opacity:.09}
.velocity.is-live .v-stem:not(.is-on){opacity:.04}
.v-star.v-spec.is-day{transform:scale(1.35)}
.v-star.v-mig.is-day{transform:scale(1.35,2.15)}
/* Commits: a ridge on the horizon, on its own scale, behind the stars. The dim copy is the
   whole ridge; the lit copy is clipped to the picked period by velocity.js (--v-at). */
.v-ridge{position:absolute;inset:0;pointer-events:none}
.v-ridge svg{display:block;width:100%;height:100%;overflow:visible}
.v-ridge path{fill:rgba(var(--cream-rgb),.07);stroke:rgba(var(--cream-rgb),.42);stroke-width:1;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.velocity:not(.is-live) .v-ridge--dim{display:none}
.velocity.is-live .v-ridge--dim{opacity:.3}
.velocity.is-live .v-ridge--lit{clip-path:inset(0 calc(100% - var(--v-at,100%)) 0 0)}
.velocity-legend .l-commit{background:rgba(var(--cream-rgb),.55)}
.velocity.is-week .v-days,.velocity:not(.is-week) .v-weeks{display:none}

/* The cursor is a telescope reticle framing the picked star. */
.velocity-cursor{background:rgba(var(--cream-rgb),.35)}
.velocity-knob{width:28px;height:28px;margin:-14px 0 0 -14px;border-radius:50%;background:transparent;border:1px solid rgba(var(--cream-rgb),.85);box-shadow:0 0 0 3px rgba(var(--bg-rgb),.35),0 0 16px rgba(var(--brass-rgb),.28);transition:top .22s var(--ease-out),transform .2s}
.velocity-knob::before,.velocity-knob::after{content:"";position:absolute;background:rgba(var(--cream-rgb),.85)}
.velocity-knob::before{left:-8px;right:-8px;top:50%;height:1px;margin-top:-.5px;background:linear-gradient(90deg,rgba(var(--cream-rgb),.85) 0 6px,transparent 6px calc(100% - 6px),rgba(var(--cream-rgb),.85) calc(100% - 6px))}
.velocity-knob::after{top:-8px;bottom:-8px;left:50%;width:1px;margin-left:-.5px;background:linear-gradient(180deg,rgba(var(--cream-rgb),.85) 0 6px,transparent 6px calc(100% - 6px),rgba(var(--cream-rgb),.85) calc(100% - 6px))}
.velocity-scrub:hover .velocity-knob,.velocity-scrub:has(.velocity-range:active) .velocity-knob{transform:scale(1.12);box-shadow:0 0 0 3px rgba(var(--bg-rgb),.35),0 0 22px rgba(var(--brass-rgb),.4)}

/* Milestones are named stars joined into a constellation. */
.v-constellation{position:absolute;left:0;top:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:0}
.v-constellation line{stroke:rgba(var(--brass-rgb),.16);stroke-width:1;stroke-dasharray:2 4;transition:stroke .4s}
.v-constellation line.is-on{stroke:rgba(var(--brass-rgb),.5);stroke-dasharray:none}
.velocity-marks li i{width:11px;height:11px;border-radius:0;background:var(--brass);box-shadow:none;clip-path:polygon(50% 0,61% 39%,100% 50%,61% 61%,50% 100%,39% 61%,0 50%,39% 39%)}
.velocity-marks li:nth-child(even)::after{display:none}

/* How the work ran, and how it runs today. */
.then-now{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:clamp(36px,6vw,96px);margin-top:56px}
.tn{border-top:1px solid var(--line);padding-top:26px}
.tn--now{border-top-color:rgba(var(--brass-rgb),.6)}
.tn-mark{display:block;width:150px;height:100px;margin:0 0 14px -8px;overflow:visible}
.tn-label{display:block;margin-bottom:12px;font-size:12px;letter-spacing:.02em;color:var(--brass)}
.tn p{margin:0;font-family:var(--font-display);font-size:clamp(26px,2.5vw,36px);line-height:1.22;letter-spacing:-.005em;color:var(--cream);text-wrap:pretty}
.tn--then p{color:rgba(var(--cream-rgb),.62)}
.tn-halo{fill:rgba(var(--cream-rgb),.05);stroke:none}
.tn-lone{fill:#f6efe2;filter:drop-shadow(0 0 5px rgba(var(--cream-rgb),.55))}
.tn-node{fill:var(--cream)}
.tn--now .tn-node{fill:#ffe1ae;filter:drop-shadow(0 0 4px rgba(var(--brass-rgb),.85))}
.tn-edge{fill:none;stroke:rgba(var(--cream-rgb),.55);stroke-width:1;stroke-dasharray:1;stroke-dashoffset:0}
.tn-orbit{fill:none;stroke:rgba(var(--cream-rgb),.2);stroke-width:1;stroke-dasharray:2 5}
@media(prefers-reduced-motion:no-preference){
  html.js .tn--now:not(.is-in) .tn-edge{stroke-dashoffset:1}
  html.js .tn--now:not(.is-in) .tn-node{opacity:0}
  .tn--now.is-in .tn-edge{transition:stroke-dashoffset 1.1s var(--ease-out)}
  .tn--now.is-in .tn-edge:nth-of-type(3){transition-delay:.35s}
  .tn--now.is-in .tn-edge:nth-of-type(4){transition-delay:.7s}
  .tn--now .tn-node{transition:opacity .5s}
  .tn--now.is-in .tn-n2{transition-delay:.35s}.tn--now.is-in .tn-n3{transition-delay:.7s}
  .tn--now.is-in .tn-node{animation:tn-pulse 3.6s ease-in-out 1.6s infinite}
  .tn--now.is-in .tn-n2{animation-delay:2.8s}.tn--now.is-in .tn-n3{animation-delay:4s}
  .tn--then.is-in .tn-halo{animation:tn-breathe 5s ease-in-out infinite}
}
@keyframes tn-pulse{0%,100%{opacity:1}50%{opacity:.45}}
@keyframes tn-breathe{0%,100%{opacity:1}50%{opacity:.55}}

/* Observation log numbers on the principles. */

/* A telescope reticle draws in on the case panel being read. */
.slide-reticle{position:absolute;inset:26px;z-index:1;pointer-events:none;opacity:0;transition:opacity .6s var(--ease-out),inset .8s var(--ease-out)}
.slide-reticle i{position:absolute;width:18px;height:18px;border-color:rgba(var(--cream-rgb),.75);border-style:solid;border-width:0}
.slide-reticle i:nth-child(1){left:0;top:0;border-left-width:1px;border-top-width:1px}
.slide-reticle i:nth-child(2){right:0;top:0;border-right-width:1px;border-top-width:1px}
.slide-reticle i:nth-child(3){left:0;bottom:0;border-left-width:1px;border-bottom-width:1px}
.slide-reticle i:nth-child(4){right:0;bottom:0;border-right-width:1px;border-bottom-width:1px}
.slides:not(.is-live) .slide-reticle,.slide.is-active .slide-reticle{opacity:1;inset:14px}
@media(prefers-reduced-motion:reduce){.slide-reticle{transition:none}}

/* Signals travel the product map's connectors. */
.system-connect{position:relative}
@media(prefers-reduced-motion:no-preference){
  .system-connect::after{content:"";position:absolute;left:50%;top:2px;width:6px;height:6px;margin-left:-3px;border-radius:50%;background:#ffe1ae;box-shadow:0 0 8px 2px rgba(var(--brass-rgb),.7);opacity:0;animation:signal 2.8s cubic-bezier(.45,0,.55,1) infinite}
  .system-connect:nth-of-type(4)::after{animation-delay:1.4s}
}
@keyframes signal{0%{transform:translateY(0);opacity:0}15%{opacity:1}80%{opacity:1}100%{transform:translateY(34px);opacity:0}}

/* The page deepens into night as you scroll and ends at dawn. */
.home-page{background:linear-gradient(180deg,#121826 0,#101523 30%,#0d111e 62%,#0b0f1a 100%)}
.home-page .work-section{background:rgba(5,8,16,.28)}
.home-page .contact-section{position:relative;overflow:hidden;isolation:isolate;background:linear-gradient(180deg,#0b0f1a 0%,#10141f 60%,#171723 100%)}
.home-page .contact-section::before{content:"";position:absolute;left:-15%;right:-15%;bottom:-62%;height:120%;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 50% 100%,rgba(var(--brass-rgb),.40) 0%,rgba(214,128,106,.2) 28%,rgba(var(--sky-rgb),.06) 52%,transparent 70%)}
.home-page .site-footer{background:#12121c;border-top-color:rgba(var(--brass-rgb),.22)}

@media(max-width:520px){.then-now{grid-template-columns:1fr;gap:30px;margin-top:40px}.tn p{font-size:24px}.velocity-scrub{height:156px}}
@media(min-width:521px) and (max-width:820px){.then-now{grid-template-columns:1fr;gap:34px}}
/* Stars scale with the room each week has: full size on desktop, smaller on narrow screens. */
.v-star{--sz:calc(var(--s) * var(--k,1));width:var(--sz);height:var(--sz);margin:calc(var(--sz) / -2) 0 0 calc(var(--sz) / -2)}
.v-star.v-spec{box-shadow:0 0 calc(var(--sz) * .9) rgba(var(--brass-rgb),.75),0 0 calc(var(--sz) * .25) rgba(var(--brass-rgb),.9)}
.v-star.v-mig{box-shadow:0 0 calc(var(--sz) * .7) rgba(var(--sky-rgb),.45)}
.v-star.v-dot{box-shadow:none}
@media(max-width:1100px){.velocity{--k:.8}}
@media(max-width:820px){.velocity{--k:.6}}
@media(max-width:520px){.velocity{--k:.45}}

/* ===== The product chapter and How it was built (14 October 2026) ===== */

/* With Decisions folded into the product chapter the menu has five items, which fit on
   tablets, so the item hidden there earlier comes back. */
@media(max-width:820px){.site-nav a:nth-child(4){display:block}}

/* Product: the copy on the left, the system drawn as a star chart on the right. */
/* Map on the left, copy on the right; the copy stays first in the HTML for reading order and
   for the stacked layout below 1100px. */
.pm-grid{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(0,1fr);gap:clamp(48px,6vw,104px);align-items:start}
.pm-map{order:-1}
.pm-copy h2{margin-bottom:28px;text-wrap:balance}
.pm-copy .body-copy{max-width:480px;margin-bottom:34px}

.pm-map{position:relative}
.pm-figure{margin:0}
.pm-stage{position:relative;width:100%;aspect-ratio:600/500}
.pm-lines{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.pm-ring{fill:rgba(var(--brass-rgb),.035);stroke:rgba(var(--brass-rgb),.4);stroke-width:1;stroke-dasharray:2 5}
.pm-edge{stroke:rgba(var(--cream-rgb),.22);stroke-width:1}
.pm-star{fill:var(--cream);filter:drop-shadow(0 0 5px rgba(var(--cream-rgb),.55))}
.pm-star--hub{fill:#ffe1ae;filter:drop-shadow(0 0 10px rgba(var(--brass-rgb),.95))}
.pm-label{position:absolute;z-index:2;display:flex;flex-direction:column;gap:3px;width:max-content;max-width:200px;pointer-events:none}
.pm-label b{font-family:var(--font-display);font-weight:400;font-size:19px;line-height:1.1;color:var(--cream)}
.pm-label span{font-size:12px;line-height:1.4;color:var(--muted)}
.pm-label--above{align-items:center;text-align:center;transform:translate(-50%,calc(-100% - 14px))}
.pm-label--below{align-items:center;text-align:center;transform:translate(-50%,14px)}
.pm-label--right{transform:translateY(-50%)}

/* The decisions are pinned to the parts of the system they changed. */
.pm-pin{position:absolute;z-index:4;transform:translate(-50%,-50%)}
.pm-pin-btn{position:relative;display:block;width:30px;height:30px;padding:0;border:0;background:none;color:var(--cream);font:inherit;cursor:pointer}
.pm-pin-btn::before{content:"";position:absolute;inset:4px;border:1px solid rgba(var(--brass-rgb),.55);border-radius:50%}
.pm-spark{position:absolute;left:50%;top:50%;width:16px;height:16px;margin:-8px 0 0 -8px;background:#ffe1ae;clip-path:polygon(50% 0,61% 39%,100% 50%,61% 61%,50% 100%,39% 61%,0 50%,39% 39%);transition:transform .3s var(--ease-out)}
.pm-pin-label{position:absolute;right:calc(100% + 4px);top:50%;width:max-content;transform:translateY(-50%);text-align:right;font-family:var(--font-display);font-size:16px;line-height:1.15;color:#ffe1ae;text-shadow:0 0 3px rgba(4,5,11,.95),0 0 12px rgba(4,5,11,.9),0 0 22px rgba(4,5,11,.7)}
.pm-pin-n{display:none}
.pm-pin-btn:hover .pm-spark,.pm-pin.is-open .pm-spark{transform:scale(1.25) rotate(45deg)}
.pm-pin-btn:hover .pm-pin-label,.pm-pin.is-open .pm-pin-label{color:#fff3d6}
.pm-pin-btn:focus-visible{outline:none}
.pm-pin-btn:focus-visible::before{border-color:var(--cream);box-shadow:0 0 0 2px var(--cream)}
@media(prefers-reduced-motion:no-preference){
  .pm-pin-btn::after{content:"";position:absolute;inset:4px;border:1px solid rgba(var(--brass-rgb),.6);border-radius:50%;animation:obs-pulse 3.4s ease-out infinite}
  .pm-pin[data-k="numbers"] .pm-pin-btn::after{animation-delay:1.7s}
}

/* Decision cards: glass, like the hero's cards. Below the map on phones and without
   JavaScript; on wide screens they open from their pins (.pm-pop, set by product.js). */
.pm-decisions{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:30px}
.dc-card{position:relative;padding:20px 22px 18px;border-radius:16px;color:var(--cream);background:rgba(8,12,22,.6);backdrop-filter:blur(18px) saturate(1.3);-webkit-backdrop-filter:blur(18px) saturate(1.3);box-shadow:0 30px 70px -24px rgba(0,0,0,.85),inset 0 1px 0 rgba(254,246,230,.16)}
.dc-card::before{content:"";position:absolute;inset:0;padding:1px;border-radius:inherit;pointer-events:none;background:linear-gradient(140deg,rgba(247,239,223,.8),rgba(var(--brass-rgb),.3) 35%,rgba(var(--cream-rgb),.06) 60%,rgba(var(--brass-rgb),.45));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}
.dc-kicker{display:block;margin-bottom:8px;font-size:12px;color:var(--brass)}
.dc-card h3{text-wrap:balance;margin:0 0 14px;font-family:var(--font-display);font-weight:400;font-size:26px;line-height:1.1;letter-spacing:-.01em}
.dc-card h3 a:hover{color:#ffe1ae}
.dc-emblem{margin:0 0 14px}
.dc-doors{display:block;width:100%;max-width:280px;height:auto;overflow:visible}
.dc-ground{stroke:rgba(var(--cream-rgb),.18);stroke-width:1}
.dc-door{fill:none;stroke-width:1.4}
.dc-door--old{stroke:rgba(var(--cream-rgb),.34);stroke-dasharray:3 4}
.dc-door--new{stroke:#ffe1ae}
.dc-glow{fill:url(#dc-glow-g)}
.dc-spark{fill:#fff3d6;filter:drop-shadow(0 0 4px rgba(255,225,174,.95))}
.dc-doors text{font-size:11px;fill:var(--muted);text-anchor:middle}
.dc-readouts{width:100%;border-collapse:collapse}
.dc-readouts caption{caption-side:top;padding-bottom:6px;text-align:left;font-size:11px;color:var(--muted)}
.dc-readouts th,.dc-readouts td{padding:5px 4px;text-align:right;font-weight:400}
.dc-readouts thead th{vertical-align:bottom;font-size:10.5px;line-height:1.25;color:var(--muted)}
.dc-readouts tbody th{text-align:left;font-size:11px;color:var(--muted)}
.dc-readouts tbody td{font-family:ui-monospace,'Cascadia Mono',Consolas,monospace;font-size:13px;font-variant-numeric:tabular-nums;color:var(--cream)}
.dc-before td.is-off{color:#e29a89;text-decoration:line-through;text-decoration-color:rgba(226,154,137,.7)}
.dc-after{border-top:1px solid var(--line)}
.dc-after td{color:#ffe1ae}
.dc-note{margin:8px 0 0;font-size:11px;line-height:1.45;color:var(--muted)}
.dc-quote{margin:0 0 14px;padding:0 0 0 12px;border-left:1px solid rgba(var(--brass-rgb),.5)}
.dc-quote p{margin:0 0 6px;font-size:13.5px;line-height:1.55;color:#ebe2d3}
.dc-quote footer{font-size:11.5px;color:var(--muted)}
.dc-link{font-size:12px;color:var(--brass);border-bottom:1px solid rgba(var(--brass-rgb),.45);padding-bottom:2px}
.dc-link:hover{color:var(--cream);border-color:var(--cream)}
.pm-pop .pm-decisions{position:absolute;inset:0;z-index:6;display:block;margin:0;pointer-events:none}
.pm-pop .dc-card{position:absolute;left:0;top:0;width:330px;pointer-events:auto;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .22s ease,transform .22s ease,visibility 0s linear .22s}
.pm-pop .dc-card.is-open{opacity:1;visibility:visible;transform:none;transition:opacity .22s ease,transform .22s ease,visibility 0s}
@media(prefers-reduced-transparency:reduce){.dc-card{background:rgba(8,12,22,.94);backdrop-filter:none;-webkit-backdrop-filter:none}}
@keyframes dc-flash{0%{box-shadow:0 0 0 1px rgba(var(--brass-rgb),.9),0 0 30px rgba(var(--brass-rgb),.45)}100%{box-shadow:0 30px 70px -24px rgba(0,0,0,.85),inset 0 1px 0 rgba(254,246,230,.16)}}
.dc-card.is-flash{animation:dc-flash 1.4s ease-out}

/* Each card shows its before and after: the old door dims while the new one lights, and the
   three numbers that disagreed settle on one. It plays when a card opens or scrolls into
   view; without JavaScript or with reduced motion the end state shows both. */
@media(prefers-reduced-motion:no-preference){
  html.js .dc-card:not(.is-open):not(.is-shown) .dc-door--old{stroke:rgba(var(--cream-rgb),.85);stroke-dasharray:none}
  html.js .dc-card:not(.is-open):not(.is-shown) .dc-door--new{stroke:rgba(var(--cream-rgb),.4)}
  html.js .dc-card:not(.is-open):not(.is-shown) .dc-glow,html.js .dc-card:not(.is-open):not(.is-shown) .dc-spark{opacity:0}
  html.js .dc-card:not(.is-open):not(.is-shown) .dc-after td{opacity:0}
  html.js .dc-card:not(.is-open):not(.is-shown) .dc-before td.is-off{text-decoration-color:transparent}
  .dc-card.is-open .dc-door--old,.dc-card.is-shown .dc-door--old{animation:dc-old 1.2s ease both}
  .dc-card.is-open .dc-door--new,.dc-card.is-shown .dc-door--new{animation:dc-new .9s ease .45s both}
  .dc-card.is-open .dc-glow,.dc-card.is-shown .dc-glow{animation:dc-fade .9s ease .55s both}
  .dc-spark{transform-box:fill-box;transform-origin:center}
  .dc-card.is-open .dc-spark,.dc-card.is-shown .dc-spark{animation:dc-cross 1.3s var(--ease-out) .2s both}
  .dc-card.is-open .dc-before td.is-off,.dc-card.is-shown .dc-before td.is-off{transition:text-decoration-color .5s ease .35s}
  .dc-card.is-open .dc-after td,.dc-card.is-shown .dc-after td{animation:dc-rise .5s var(--ease-out) both}
  .dc-card.is-open .dc-after td:nth-child(2),.dc-card.is-shown .dc-after td:nth-child(2){animation-delay:.55s}
  .dc-card.is-open .dc-after td:nth-child(3),.dc-card.is-shown .dc-after td:nth-child(3){animation-delay:.7s}
  .dc-card.is-open .dc-after td:nth-child(4),.dc-card.is-shown .dc-after td:nth-child(4){animation-delay:.85s}
}
@keyframes dc-old{0%,45%{stroke:rgba(241,235,224,.85);stroke-dasharray:none}100%{stroke:rgba(241,235,224,.34);stroke-dasharray:3 4}}
@keyframes dc-new{from{stroke:rgba(241,235,224,.4)}to{stroke:#ffe1ae}}
@keyframes dc-fade{from{opacity:0}to{opacity:1}}
@keyframes dc-cross{0%{opacity:0;transform:translateX(-130px)}25%{opacity:1}100%{opacity:1;transform:none}}
@keyframes dc-rise{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}

/* How it was built: one chapter with the night sky and then and now. */
.built-section{padding-top:132px}
.built-section .section-heading h2{max-width:none}
.velocity-title{text-wrap:balance;margin:0 0 22px;font-family:var(--font-display);font-weight:400;font-size:clamp(24px,2.2vw,32px);line-height:1.15;letter-spacing:-.005em;color:var(--cream)}
/* The speed claim: lamplight, like the specification stars. */
.velocity-title em{font-style:normal;color:var(--brass);text-shadow:0 0 18px rgba(var(--brass-rgb),.35)}
.built-link{margin-top:64px}

@media(max-width:1100px){
  .pm-grid{grid-template-columns:1fr;gap:56px}
  .pm-map{order:0}
  .pm-copy .body-copy{max-width:620px}
  .pm-map{max-width:760px}
}
@media(max-width:820px){.built-section{padding-top:84px}}
@media(max-width:700px){.pm-decisions{grid-template-columns:1fr}}
@media(max-width:520px){
  .built-section{padding-top:70px}
  .pm-label span{display:none}
  .pm-label b{font-size:14px}
  .pm-label--below{max-width:100px}
  .pm-label--above{transform:translate(-50%,calc(-100% - 10px))}
  .pm-label--below{transform:translate(-50%,10px)}
  .pm-pin-label{display:none}
  .pm-pin-n{display:block;position:absolute;left:calc(100% - 4px);top:-4px;font-family:ui-monospace,'Cascadia Mono',Consolas,monospace;font-size:11px;color:#ffe1ae;text-shadow:0 0 6px rgba(4,5,11,.9)}
  .dc-card{padding:18px 18px 16px}
  .dc-card h3{font-size:23px}
  .built-link{margin-top:48px}
}

/* Closed beta (15 October 2026): a phase is a faint band in the sky and a bracket under the axis. */
.v-phase{position:absolute;top:0;bottom:0;background:rgba(var(--cream-rgb),.035);border-left:1px dashed rgba(var(--cream-rgb),.16);border-right:1px dashed rgba(var(--cream-rgb),.16);pointer-events:none}
.velocity-phases{position:relative;height:26px;margin-top:6px}
/* Two classes: .atlas-page button{font:inherit} in atlas.css would otherwise win the font size. */
.velocity-phases .v-phase-label{position:absolute;top:0;height:22px;display:flex;justify-content:center;padding:7px 0 0;margin:0;border:0;border-top:1px solid rgba(var(--cream-rgb),.32);background:none;color:var(--muted);font:inherit;font-size:11px;line-height:1.3;white-space:nowrap;cursor:pointer}
.v-phase-label::before,.v-phase-label::after{content:"";position:absolute;top:-5px;width:1px;height:9px;background:rgba(var(--cream-rgb),.32)}
.v-phase-label::before{left:0}.v-phase-label::after{right:0}
.v-phase-label:hover,.v-phase-label:focus-visible{color:var(--cream);outline:none}
.v-phase-label:focus-visible{border-top-color:var(--cream)}
.v-phase-label .l-short{display:none}
.velocity-list li.is-phase time{color:var(--muted)}
@media(max-width:620px){.v-phase-label .l-long{display:none}.v-phase-label .l-short{display:inline}}
@media(max-width:400px){.velocity-phases .v-phase-label{font-size:10px}}
