:root{--navy:#0a1527;--navy-2:#0a192f;--blue:#1778ff;--orange:#f36b21;--bone:#eceff3;--dim:#9faec0;--rule:rgba(255,255,255,.1);--max:1280px;--pad:clamp(1.25rem,4vw,4.5rem);--display:Montserrat,Arial,sans-serif;--body:Inter,Arial,sans-serif;color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--navy)}body{margin:0;background:var(--navy);color:var(--bone);font-family:var(--body);font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}img,video,canvas,svg{display:block;max-width:100%}button,input,textarea{font:inherit}.skip-link{position:fixed;z-index:1000;left:1rem;top:-6rem;padding:.7rem 1rem;background:var(--bone);color:var(--navy)}.skip-link:focus{top:1rem}.eyebrow{margin:0 0 1rem;color:var(--blue);font:700 .68rem/1 var(--display);letter-spacing:.16em;text-transform:uppercase}
.site-header{position:relative;z-index:30;min-height:92px;display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:2rem;padding:0 var(--pad);border-bottom:1px solid var(--rule);background:rgba(10,21,39,.94)}.wordmark{display:flex;flex-direction:column;font:700 1rem/1.1 var(--display);text-transform:uppercase;letter-spacing:.04em}.wordmark small{margin-top:.45rem;color:var(--dim);font:400 .58rem/1 var(--body);letter-spacing:.13em}.site-header ul{display:flex;gap:clamp(1rem,2vw,2.2rem);margin:0;padding:0;list-style:none}.site-header nav a{color:var(--dim);font-size:.78rem}.site-header nav a:hover,.site-header nav a:focus-visible,.footer-map a:hover{color:var(--bone)}.header-action,.primary-link{color:var(--bone);font:700 .72rem/1 var(--display);letter-spacing:.1em;text-transform:uppercase}.header-action span,.primary-link span{color:var(--orange)}
main{overflow:hidden}.page-hero,.section-intro,.plain-section,.text-grid,.framework-hub,.data-section,.framework-list,.not-list,.method,.embed,.keynote-list,.reel-request,.direct-routes,.book-feature,.educators,.download-row,.headshots,.copy-section,.current-work,.engage-routes,.article-index,.topic-links,.journal-index,.journal-entry,.next-links,.related-frameworks{width:min(var(--max),calc(100% - 2*var(--pad)));margin-inline:auto}.page-hero{padding:clamp(6rem,11vw,11rem) 0 clamp(4rem,8vw,8rem)}.page-hero.compact{padding-bottom:4rem}.page-hero h1,.section-intro h2,.enquiry h2,.newsletter h2,.faq h2,.book-feature h2,.article-header h1,.journal-hero h1{max-width:1050px;margin:.1em 0;font:700 clamp(2.7rem,7.4vw,7.5rem)/.91 var(--display);letter-spacing:-.06em}.page-hero.compact h1{font-size:clamp(2.6rem,6vw,6rem)}.page-hero>p:last-child,.standfirst{max-width:760px;color:var(--dim);font-size:clamp(1.05rem,2vw,1.35rem)}
.answer-block{padding:3rem var(--pad);background:var(--bone);color:var(--navy)}.answer-block p{max-width:1120px;margin:auto;font:600 clamp(1.35rem,3vw,2.5rem)/1.35 var(--display)}.section-intro{padding:6rem 0 3rem}.section-intro h2,.faq h2,.enquiry h2,.newsletter h2,.book-feature h2{font-size:clamp(2rem,4.8vw,4.8rem)}.plain-section{padding:4rem 0;border-top:1px solid var(--rule)}.plain-section p{max-width:780px}.text-grid,.framework-hub,.framework-list,.direct-routes,.engage-routes{display:grid;grid-template-columns:repeat(2,1fr);gap:0;padding-bottom:7rem}.text-grid article,.framework-hub article,.framework-list article,.direct-routes a,.engage-routes a{padding:clamp(2rem,4vw,4rem);border:1px solid var(--rule);margin:-1px 0 0 -1px}.text-grid h2,.framework-hub h2,.framework-list h3,.direct-routes h2{margin-top:0;font:700 clamp(1.4rem,2.5vw,2.4rem)/1.1 var(--display)}.framework-hub a,.framework-list a,.direct-routes a,.engage-routes a{transition:background .2s}.framework-hub a:hover,.framework-list a:hover,.direct-routes a:hover,.engage-routes a:hover{background:var(--navy-2)}
.quick-take{width:min(1040px,calc(100% - 2*var(--pad)));margin:4rem auto;padding:2rem 0;border-block:1px solid var(--rule)}.quick-take ul{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin:0;padding:0;list-style:none}.quick-take li{font-weight:700}.quick-take li::before{content:"—";display:block;margin-bottom:1rem;color:var(--orange)}
.proof-band{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid var(--rule);margin:4rem 0}.proof-band div{min-height:190px;padding:2.2rem var(--pad);border-right:1px solid var(--rule)}.proof-band strong{display:block;color:var(--bone);font:700 clamp(2rem,4vw,4.4rem)/1 var(--display);letter-spacing:-.05em;font-variant-numeric:tabular-nums}.proof-band span{display:block;margin-top:1rem;color:var(--dim);font-size:.78rem}.proof-band.expanded{grid-template-columns:repeat(4,1fr)}.proof-band.expanded div{padding:2rem}.capacity-link,.journal-link{display:grid;grid-template-columns:1fr 3fr auto;align-items:center;gap:2rem;padding:clamp(3rem,7vw,7rem) var(--pad);border-block:1px solid var(--rule)}.capacity-link span,.journal-link span{color:var(--blue);font-size:.72rem;text-transform:uppercase;letter-spacing:.14em}.capacity-link strong,.journal-link strong{font:700 clamp(1.6rem,4vw,4rem)/1.05 var(--display)}.capacity-link i{color:var(--orange);font-style:normal}
.faq{width:min(var(--max),calc(100% - 2*var(--pad)));margin:8rem auto}.faq-list{display:grid;grid-template-columns:repeat(2,1fr)}.faq article{padding:2rem 0;border-top:1px solid var(--rule)}.faq article:nth-child(odd){padding-right:3rem}.faq article:nth-child(even){padding-left:3rem}.faq h3{margin:0;font:700 1rem var(--display)}.faq article p{color:var(--dim)}.newsletter,.enquiry{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,8vw,8rem);padding:clamp(4rem,8vw,8rem) var(--pad);background:var(--navy-2);border-block:1px solid var(--rule)}.newsletter p{max-width:620px;color:var(--dim)}.newsletter form,.enquiry-form,.engage-form{display:grid;gap:1rem}.newsletter label,.enquiry label,.engage-form label,.model-controls label{display:grid;gap:.5rem;color:var(--dim);font-size:.75rem;letter-spacing:.05em}.newsletter input,.enquiry input,.enquiry textarea,.engage-form input,.engage-form textarea,.engage-form select{width:100%;border:0;border-bottom:1px solid var(--dim);padding:1rem 0;background:transparent;color:var(--bone);outline:none}.enquiry textarea,.engage-form textarea{min-height:120px;resize:vertical}.newsletter input:focus,.enquiry input:focus,.enquiry textarea:focus,.engage-form :focus{border-color:var(--blue)}button{width:max-content;border:1px solid var(--blue);padding:.9rem 1.2rem;background:var(--blue);color:white;cursor:pointer;font-weight:700}.form-state{margin:0;color:var(--dim);font-size:.75rem}.is-error{color:#ff9a84!important}
.data-section{padding-bottom:7rem}.data-section table{width:100%;border-collapse:collapse}.data-section th,.data-section td{padding:1.2rem 0;border-top:1px solid var(--rule);text-align:left;vertical-align:top}.data-section th{width:25%;color:var(--dim);font-size:.75rem;text-transform:uppercase;letter-spacing:.08em}.not-list{padding:5rem 0}.not-list>p:not(.eyebrow){font:600 clamp(1.25rem,2.5vw,2rem)/1.35 var(--display)}.credential-row{display:grid;grid-template-columns:1fr 3fr;gap:2rem;padding:1.4rem 0;border-top:1px solid var(--rule)}.pillar .definition{font:600 clamp(1.35rem,3vw,2.5rem)/1.35 var(--display)}.article-body{width:min(760px,calc(100% - 2*var(--pad)));margin:4rem auto 8rem}.article-body p{margin:0 0 1.4rem}.article-body h2{margin:4rem 0 1rem;font:700 clamp(1.7rem,3vw,2.6rem)/1.1 var(--display)}.article-body blockquote{margin:0 0 4rem;padding-left:2rem;border-left:3px solid var(--orange);color:var(--bone);font:600 1.35rem/1.5 var(--display)}
.article-index{border-top:1px solid var(--rule)}.article-row{display:grid;grid-template-columns:140px 1fr auto;gap:2rem;padding:2rem 0;border-bottom:1px solid var(--rule)}.article-row time,.article-row span,.article-row i{color:var(--dim);font-size:.72rem;font-style:normal}.article-row h2{margin:.3rem 0;font:700 clamp(1.25rem,2.5vw,2rem)/1.15 var(--display)}.article-row p{margin:0;color:var(--dim)}.topic-links{display:flex;flex-wrap:wrap;gap:.6rem;padding-bottom:3rem}.topic-links a{padding:.45rem .8rem;border:1px solid var(--rule);color:var(--dim);font-size:.72rem}.article-header{width:min(1040px,calc(100% - 2*var(--pad)));margin:auto;padding:clamp(6rem,10vw,10rem) 0 4rem}.article-header h1{font-size:clamp(2.5rem,6vw,5.8rem)}.article-meta{display:flex;align-items:center;gap:1.5rem;margin-top:3rem;color:var(--dim);font-size:.75rem}.article-meta a{display:flex;align-items:center;gap:.7rem;color:var(--bone)}.article-meta img,.author-bio img{border-radius:50%;object-fit:cover}.author-bio{display:flex;align-items:center;gap:2rem;width:min(760px,calc(100% - 2*var(--pad)));margin:5rem auto;padding-top:2rem;border-top:1px solid var(--rule)}.related-articles,.next-links,.related-frameworks{display:grid;gap:0;padding-bottom:6rem}.related-articles a,.next-links a,.related-frameworks a{padding:1.2rem 0;border-top:1px solid var(--rule)}.related-articles h2{font:700 2rem var(--display)}
.topic-links span{padding:.45rem .8rem;border:1px solid var(--rule);color:var(--dim);font-size:.72rem}
.model-controls>div{display:grid;grid-template-columns:1fr auto;gap:.5rem;color:var(--dim);font-size:.75rem;letter-spacing:.05em}.model-controls>div input{grid-column:1/-1;width:100%;accent-color:var(--orange)}.model-controls>div output{font-variant-numeric:tabular-nums;color:var(--bone)}
.capacity-model{width:min(var(--max),calc(100% - 2*var(--pad)));margin:0 auto 7rem;display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--rule)}.model-controls,.model-result{padding:clamp(2rem,5vw,5rem)}.model-controls{display:grid;gap:2rem;border-right:1px solid var(--rule)}.model-controls label{grid-template-columns:1fr auto}.model-controls input{grid-column:1/-1;width:100%;accent-color:var(--orange)}.model-controls output{font-variant-numeric:tabular-nums;color:var(--bone)}.model-result{display:flex;flex-direction:column;justify-content:center}.model-result strong{font:700 clamp(2.4rem,6vw,6rem)/1 var(--display);letter-spacing:-.06em;font-variant-numeric:tabular-nums;color:var(--orange)}.model-result p{color:var(--dim)}.model-bars{grid-column:1/-1;display:grid;grid-template-columns:repeat(12,1fr);align-items:end;height:140px;border-top:1px solid var(--rule);padding:1rem;gap:.4rem}.model-bars i{height:30%;background:var(--blue);transition:height .25s}.embed pre{overflow:auto;padding:1.5rem;border:1px solid var(--rule);color:var(--dim)}.embed{padding-block:5rem}
.book-feature{display:grid;grid-template-columns:340px 1fr;gap:clamp(3rem,8vw,8rem);padding-block:7rem}.book-feature img{width:100%;height:auto}.forthcoming{padding:1rem 0;border-top:1px solid var(--rule);color:var(--dim)}.download-row,.headshots,.copy-section,.current-work{padding-block:4rem;border-top:1px solid var(--rule)}.download-row a{color:var(--orange)}.headshots{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.headshots img{width:100%;aspect-ratio:4/3;object-fit:cover}.copy-section pre{white-space:pre-wrap;color:var(--dim)}.engage-form{width:min(800px,calc(100% - 2*var(--pad)));margin:0 auto 8rem}.engage-form select{background:var(--navy)}.engage-form button{margin-top:1rem}
.journal-zone{background:#1a2332;color:#eee7dc}.journal-zone .site-header{background:#1a2332;border-color:rgba(212,175,55,.18)}.journal-zone .site-header nav a,.journal-zone .wordmark small{color:#c3b49e}.journal-zone .header-action span{color:#d4af37}.journal-zone .footer-legal,.journal-zone .site-footer{border-color:rgba(212,175,55,.18)}.journal-hero{width:min(var(--max),calc(100% - 2*var(--pad)));margin:auto;padding:8rem 0}.journal-hero>p,.journal-row span,.journal-entry header>p{color:#d4af37}.journal-hero h1{font-family:Georgia,serif;font-weight:400}.journal-row{display:grid;grid-template-columns:150px 1fr;padding:2rem 0;border-top:1px solid rgba(212,175,55,.18)}.journal-row h2{font:400 2rem Georgia,serif}.journal-row p,.journal-row time,.journal-entry span,.journal-entry time{color:#c3b49e}.journal-entry{max-width:760px;padding:7rem 0}.journal-entry h1{font:400 clamp(2.5rem,6vw,5rem)/1 Georgia,serif}.journal-entry p{font:1.12rem/1.8 Georgia,serif}.journal-zone .site-footer{color:#eee7dc;background:#3d2817}.journal-zone .footer-map a,.journal-zone .footer-contact a,.journal-zone .footer-legal,.journal-zone .footer-lead span{color:#d8c7ae}
.site-footer{display:grid;grid-template-columns:1fr 2fr 1fr;gap:3rem;padding:5rem var(--pad) 2rem;border-top:1px solid var(--rule)}.footer-lead,.footer-contact{display:flex;flex-direction:column}.footer-lead span,.footer-contact a,.footer-map a,.footer-legal{color:var(--dim);font-size:.72rem}.footer-map{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.footer-legal{grid-column:1/-1;padding-top:2rem;border-top:1px solid var(--rule)}
.home .site-header{position:absolute;width:100%;background:transparent}.cinematic{height:520vh;background:#040b15}.film-stage{position:sticky;top:0;height:100vh;overflow:hidden}.film-stage canvas,.film-fallback,.film-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.film-fallback{display:none}.film-shade{background:linear-gradient(90deg,rgba(4,11,21,.82),rgba(4,11,21,.12) 65%,rgba(4,11,21,.58))}.film-hero{position:absolute;z-index:2;left:var(--pad);top:50%;width:min(780px,75vw);transform:translateY(-50%)}.film-hero h1{margin:0;font:700 clamp(4.2rem,10vw,10rem)/.78 var(--display);letter-spacing:-.08em;text-transform:uppercase}.film-hero>p:last-child{max-width:620px;color:var(--dim)}.film-route{position:absolute;z-index:3;inset:0;width:100%;height:100%;pointer-events:none}.film-route path{fill:none;stroke-width:3}.route-base{stroke:rgba(255,255,255,.16)}.route-live{stroke:var(--orange);stroke-dasharray:2300;stroke-dashoffset:2300}.film-nodes article{position:absolute;z-index:4;max-width:290px;padding:1rem 0;border-top:1px solid var(--orange);opacity:0;transform:translateY(15px);transition:.5s}.film-nodes article.is-live{opacity:1;transform:none}.film-nodes b,.film-nodes span{display:block}.film-nodes b{font:700 .8rem var(--display)}.film-nodes span{color:var(--dim);font-size:.68rem}.film-nodes article:nth-child(1){left:8%;top:72%}.film-nodes article:nth-child(2){left:25%;top:43%}.film-nodes article:nth-child(3){left:47%;top:63%}.film-nodes article:nth-child(4){left:64%;top:32%}.film-nodes article:nth-child(5){right:4%;top:55%}.terminator-line{position:absolute;z-index:5;right:var(--pad);bottom:7vh;max-width:580px;margin:0;text-align:right;font:600 clamp(1.2rem,2.5vw,2.2rem)/1.2 var(--display);opacity:0}.home-mobile-router{display:none}.router{width:min(var(--max),calc(100% - 2*var(--pad)));margin:auto;padding:8rem 0}.router-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--rule)}.router-grid a{min-height:280px;display:flex;flex-direction:column;padding:2rem;border-right:1px solid var(--rule)}.router-grid a:last-child{border:0}.router-grid b{font:700 1.45rem var(--display)}.router-grid span{margin-top:1rem;color:var(--dim)}.router-grid i{margin-top:auto;color:var(--orange);font-style:normal}.signal-route{background:var(--navy-2)}.film-loader{position:fixed;z-index:100;inset:0;display:grid;place-content:center;background:#040b15;transition:opacity .5s,visibility .5s}.film-loader>div{display:flex;justify-content:space-between;width:min(420px,75vw);font:700 .7rem var(--display);letter-spacing:.12em;text-transform:uppercase}.film-loader strong::after{content:"%"}.film-loader>i{display:block;width:min(420px,75vw);height:2px;margin-top:1rem;background:var(--rule)}.film-loader b{display:block;width:0;height:100%;background:var(--orange);transition:width .15s}.film-loader.is-done{opacity:0;visibility:hidden}
@media(max-width:900px){.site-header{grid-template-columns:1fr auto}.site-header nav{display:none}.site-header{min-height:76px}.quick-take ul,.proof-band,.proof-band.expanded{grid-template-columns:1fr 1fr}.newsletter,.enquiry,.capacity-model,.book-feature{grid-template-columns:1fr}.model-controls{border-right:0;border-bottom:1px solid var(--rule)}.text-grid,.framework-hub,.framework-list,.direct-routes,.engage-routes{grid-template-columns:1fr}.site-footer{grid-template-columns:1fr 1fr}.footer-map{grid-column:2}.footer-contact{grid-column:1}.router-grid{grid-template-columns:1fr 1fr}.capacity-link,.journal-link{grid-template-columns:1fr}.home-mobile-router{display:block}.home-desktop-router{display:none}.cinematic{height:auto}.film-stage{position:relative;height:78vh;min-height:620px}.film-stage canvas{display:none}.film-fallback{display:block}.film-nodes,.film-route,.terminator-line{display:none}.film-hero{top:auto;bottom:3rem;transform:none;width:calc(100% - 2*var(--pad))}.film-hero h1{font-size:clamp(3.6rem,16vw,7rem)}.film-loader{display:none}}
@media(max-width:600px){:root{--pad:1.15rem}.header-action{font-size:.62rem}.quick-take ul,.proof-band,.proof-band.expanded,.faq-list,.headshots{grid-template-columns:1fr}.proof-band div{border-bottom:1px solid var(--rule)}.faq article:nth-child(n){padding-inline:0}.article-row{grid-template-columns:1fr}.article-row>i{display:none}.article-meta{align-items:flex-start;flex-wrap:wrap}.router-grid{grid-template-columns:1fr}.router-grid a{min-height:180px;border:0;border-bottom:1px solid var(--rule)}.site-footer{grid-template-columns:1fr}.footer-map,.footer-contact{grid-column:1}.journal-row{grid-template-columns:1fr}.page-hero{padding-top:6rem}.film-stage{height:72vh}.film-hero h1{font-size:15vw}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}.cinematic{height:auto}.film-stage{position:relative;height:85vh}.film-stage canvas{display:none}.film-fallback{display:block}.film-nodes,.film-route,.terminator-line{display:none}.film-loader{display:none}}
