:root{--night:#080e1c;--surface:#101a2e;--paper:#f0f3f9;--white:#f6f8ff;--ink:#10182a;--muted:#a8b4cc;--line:#29344b;--blue:#7d9fff;--electric:#245af6;--max:1320px;--pad:clamp(24px,5.5vw,88px);color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--night);color:var(--white);font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}::selection{background:var(--blue);color:var(--night)}h1,h2,h3,p,figure,blockquote{margin:0}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid var(--blue);outline-offset:7px}a{-webkit-tap-highlight-color:transparent}em{font-family:Georgia,"Times New Roman",serif;font-weight:400}.wrap{max-width:calc(var(--max) + var(--pad)*2);margin-inline:auto;padding-inline:var(--pad)}.skip{position:fixed;top:12px;left:12px;transform:translateY(-180%);padding:14px 20px;background:var(--paper);color:var(--night);z-index:10}.skip:focus{transform:translateY(0)}
.header{height:108px;display:flex;align-items:center;justify-content:space-between;gap:24px;position:relative;z-index:2}.wordmark{font-size:24px;font-weight:650;letter-spacing:-1px;white-space:nowrap}.wordmark>span{color:var(--blue)}nav{display:flex;gap:34px;font-size:14px;line-height:1.5}nav a{padding:12px 0;color:var(--muted);transition:color .2s}nav a:hover,nav a[aria-current=page]{color:var(--white)}nav a[aria-current=page]{text-decoration:underline;text-underline-offset:7px}
.hero{position:relative;min-height:680px;padding-top:76px;isolation:isolate;display:flex;flex-direction:column;justify-content:center}.hero-copy{position:relative;z-index:1;max-width:850px;padding-bottom:96px;pointer-events:none}.hero-copy a{pointer-events:auto}.eyebrow{font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:1.8px;line-height:1.7}.hero h1{font-size:clamp(72px,8vw,118px);font-weight:500;line-height:1.02;letter-spacing:-6px}.hero h1 em{color:var(--blue);font-size:1.1em;letter-spacing:-5px;line-height:1.15}.hero-intro{font-size:30px;line-height:1.4;margin-top:30px;letter-spacing:-.8px}.lead-roles{max-width:490px;color:var(--muted);font-size:16px;line-height:1.8;margin-top:16px}.lead-roles a{text-decoration:underline;text-decoration-color:#52607b;text-underline-offset:4px}.lead-roles a:hover{color:var(--white)}.text-link{font-size:15px;min-height:44px;display:inline-flex;align-items:center;justify-content:space-between;gap:48px;border-bottom:1px solid currentColor;padding-block:10px;transition:color .2s}.text-link span{font-size:22px}.text-link:hover{color:var(--blue)}.hero-link{margin-top:25px}
.portrait{position:absolute;z-index:0;right:calc(var(--pad)*.2);top:0;bottom:55px;width:52%;max-width:720px;pointer-events:none}.portrait img{width:100%;height:100%;display:block;object-fit:contain;opacity:.82;--portrait-mask:radial-gradient(ellipse 68% 64% at 53% 39%,#000 24%,rgba(0,0,0,.92) 43%,rgba(0,0,0,.5) 67%,transparent 91%),linear-gradient(to bottom,transparent,#000 16%,#000 62%,transparent 97%);-webkit-mask-image:var(--portrait-mask);mask-image:var(--portrait-mask);-webkit-mask-composite:source-in;mask-composite:intersect}.hero-foot{z-index:1;position:relative;display:flex;justify-content:space-between;align-items:center;gap:30px;border-top:1px solid var(--line);padding-block:24px;color:var(--muted);font-size:13px;line-height:1.5}.hero-foot>a{display:flex;align-items:center;gap:24px;padding-block:5px}.hero-foot>a:hover{color:var(--white)}
.section{padding-block:100px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:48px;margin-bottom:48px}.section-heading .eyebrow{color:var(--muted);margin-bottom:24px}h2{font-size:clamp(46px,5.4vw,76px);font-weight:450;line-height:1.08;letter-spacing:-3px}h2 em{font-size:1.08em}.section-intro{font-size:18px;line-height:1.65;color:var(--muted);max-width:350px;padding-bottom:5px}.accent{color:var(--blue)}.light-band{background:var(--paper);color:var(--ink);color-scheme:light}.light-band .eyebrow,.light-band .section-intro{color:#526078}.light-band a:focus-visible{outline-color:#245af6}.light-band .text-link:hover{color:#1648cd}
.journal-feature{display:grid;grid-template-columns:1.15fr 1fr;gap:55px;background:var(--night);color:var(--white);padding:clamp(28px,4.5vw,64px);position:relative;border-left:5px solid var(--electric);align-items:center}.journal-feature time{font-size:13px;color:var(--muted);line-height:1.6}.journal-feature h3{font-size:clamp(34px,3.8vw,52px);line-height:1.13;letter-spacing:-1.8px;font-weight:450;margin:20px 0 14px}.journal-feature h3 a::after{content:"";position:absolute;inset:0}.journal-feature h3 a:hover{color:var(--blue)}.journal-feature blockquote{font-family:Georgia,"Times New Roman",serif;font-size:clamp(24px,2.7vw,38px);font-style:italic;line-height:1.45;color:#cad7f7}.feature-arrow{font-size:28px;color:var(--blue)}.journal-companions{display:grid;grid-template-columns:1fr 1fr;gap:48px;margin-top:36px}.journal-companions .journal-item{display:block;padding:25px 0;border-top:1px solid #c6ccda;border-bottom:0}.journal-item time{font-size:13px;color:#526078;line-height:1.7}.journal-item h3{font-size:28px;line-height:1.2;font-weight:500;letter-spacing:-.8px;margin-top:15px}.journal-item h3 a:hover{color:#245af6}.journal-item p{font-size:16px;line-height:1.7;color:#526078;margin-top:14px;max-width:620px}.journal-link{margin-top:24px}.journal-empty{font-size:18px;line-height:1.7;padding-block:40px;border-block:1px solid var(--line)}
.ventures{display:grid;grid-template-columns:1fr 1fr;gap:20px}.venture{padding:32px;background:var(--surface);border:1px solid #29344b;display:flex;flex-direction:column;align-items:flex-start;transition:background .2s,border-color .2s,transform .2s;min-width:0}.venture:hover{background:#14213c;border-color:#6080c3;transform:translateY(-3px)}.venture-top{display:flex;width:100%;align-items:center;gap:16px;margin-bottom:45px}.index{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.category{font-size:12px;letter-spacing:.5px;color:var(--muted);line-height:1.5}.visit{font-size:25px;margin-left:auto;line-height:1;color:var(--blue)}.venture h3{font-size:36px;letter-spacing:-1.3px;font-weight:450;line-height:1.15}.venture>p{font-size:16px;line-height:1.7;color:var(--muted);margin-top:18px;max-width:480px}.venture-primary{grid-row:span 2;padding:40px;background:#14234a;border-color:#2d4781}.venture-primary:hover{background:#192c5d}.venture-primary h3{font-size:54px}.venture-primary .venture-top{margin-bottom:65px}.venture .venture-proof{margin-top:auto;padding-top:55px;color:var(--white)}.venture-proof strong{display:block;font-size:clamp(58px,6.2vw,88px);line-height:1;letter-spacing:-5px;font-weight:450;color:var(--blue)}.venture-proof span{display:block;margin-top:18px;font-size:15px;line-height:1.6}.venture-note{margin-top:20px;color:var(--blue);font-size:13px;line-height:1.6}
.about-band{background:#1747c9;color:white}.about{display:grid;grid-template-columns:1fr 3fr;gap:40px}.about>.eyebrow{padding-top:10px;color:#d2ddff}.about h2{font-size:clamp(38px,4.4vw,62px);line-height:1.17;letter-spacing:-2px}.about-story>p{font-size:19px;line-height:1.7;color:#e0e8ff;margin-top:30px;max-width:600px}.about-meta{display:flex;flex-wrap:wrap;gap:30px 50px;border-top:1px solid #5d7ad2;padding-top:32px;margin-top:44px;font-size:16px;line-height:1.5}.about-meta span{display:block;font-size:12px;text-transform:uppercase;letter-spacing:1px;color:#d2ddff;margin-bottom:9px}.footer{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:35px}.footer>p,.footer>a:last-child{font-size:13px;color:var(--muted)}.footer>a:last-child{display:flex;align-items:center;gap:24px;min-height:44px}.footer>a:last-child:hover{color:var(--white)}
/* A quiet reading surface within the same visual identity. */
.journal-page{background:var(--paper);color:var(--ink);color-scheme:light}.journal-page .header,.journal-page .footer{background:var(--night);color:var(--white);max-width:none}.journal-main{min-height:70vh;padding-top:75px;padding-bottom:100px}.journal-heading{max-width:900px;margin-bottom:50px}.journal-heading .eyebrow{color:#526078;margin-bottom:18px}.journal-heading h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(48px,6.5vw,88px);font-weight:400;letter-spacing:-3px;line-height:1.1;overflow-wrap:anywhere}.journal-heading>p{font-size:20px;color:#526078;margin-top:24px;line-height:1.65;max-width:650px}.journal-heading time{display:block;font-size:14px;color:#526078;margin-bottom:22px;line-height:1.6}.journal-page .journal-list{border-top:1px solid #c6ccda}.journal-page .journal-item{display:grid;grid-template-columns:1fr 2.6fr;gap:40px;padding-block:32px;border-bottom:1px solid #c6ccda}.journal-page .journal-item h3{margin-top:0;font-size:32px}.journal-article{max-width:860px;margin-inline:auto}.journal-back{margin-bottom:52px}.journal-page .text-link:hover{color:#245af6}.journal-page a:focus-visible{outline-color:#245af6}.journal-body{max-width:740px;font-family:Georgia,"Times New Roman",serif;font-size:23px;line-height:1.8;overflow-wrap:anywhere}.journal-body p+p{margin-top:30px}.article-end{display:block;width:28px;height:4px;background:var(--electric);margin-top:50px}
@media(min-width:1550px){.hero{min-height:780px}.portrait{bottom:38px}.hero-copy{padding-bottom:130px}}
@media(max-width:1150px){.hero{padding-top:55px;min-height:620px}.hero h1{font-size:clamp(65px,8.2vw,94px);letter-spacing:-4.5px}.hero h1 em{letter-spacing:-4px}.hero-copy{padding-bottom:84px}.portrait{width:51%;bottom:65px;right:0}.lead-roles{max-width:390px}.hero-intro{font-size:27px}.venture{padding:26px}.venture-primary{padding:30px}.venture h3{font-size:32px}.venture-primary h3{font-size:44px}.venture-top{gap:10px}.journal-feature{gap:32px}.about{grid-template-columns:1fr 3.8fr}}
@media(max-width:800px){.header{height:88px}nav{gap:22px}.hero{min-height:0;padding-top:44px}.hero-copy{padding-bottom:0;max-width:none}.hero h1{font-size:clamp(56px,10vw,82px);letter-spacing:-3.5px}.hero h1 em{letter-spacing:-3px}.hero-intro{margin-top:22px}.lead-roles{max-width:410px}.hero-link{margin-top:20px}.portrait{position:relative;width:min(100%,520px);aspect-ratio:4/5;right:auto;top:auto;bottom:auto;align-self:flex-end;margin-top:-35px;margin-bottom:-65px;z-index:0}.hero-foot{font-size:12px;padding-block:20px;gap:20px}.hero-foot>span{display:none}.hero-foot>a{width:100%;justify-content:space-between;gap:15px}.section{padding-block:68px}.section-heading{gap:25px;align-items:flex-start;margin-bottom:34px}.section-heading .eyebrow{margin-bottom:18px}h2{font-size:52px;letter-spacing:-2.4px}.section-intro{font-size:16px;max-width:270px}.journal-feature{grid-template-columns:1fr;gap:28px;padding:30px}.journal-feature h3{font-size:38px;margin-top:16px;max-width:450px}.journal-feature blockquote{font-size:27px}.journal-companions{gap:25px}.journal-item h3{font-size:25px}.ventures{gap:16px}.venture-top{flex-wrap:wrap;gap:8px;margin-bottom:30px}.category{order:3;width:100%;font-size:12px}.venture-primary .venture-top{margin-bottom:44px}.venture-primary h3{font-size:38px}.venture-proof strong{font-size:58px;letter-spacing:-3px}.venture>p{font-size:16px}.venture h3{font-size:29px}.about{grid-template-columns:1fr;gap:24px}.about h2{font-size:48px}.about-story>p{font-size:18px}.about-meta{gap:28px 38px}.journal-main{padding-top:50px;padding-bottom:70px}.journal-body{font-size:21px}}
@media(max-width:540px){:root{--pad:24px}.header{height:auto;align-items:flex-start;flex-wrap:wrap;padding-top:23px;padding-bottom:20px;gap:15px}.wordmark{font-size:24px}.header nav{width:100%;gap:30px;font-size:14px}.hero{padding-top:34px}.hero h1{font-size:clamp(50px,11.8vw,65px);letter-spacing:-2.5px}.hero h1 em{letter-spacing:-2.5px}.hero-intro{font-size:26px}.lead-roles{font-size:16px;max-width:330px}.portrait{margin-top:0;margin-bottom:-55px;width:100%}.hero-copy{pointer-events:auto}.hero-foot{padding-block:16px}.section-heading{display:block}.section-intro{margin-top:24px;max-width:360px}h2{font-size:48px}.journal-companions{grid-template-columns:1fr;gap:0;margin-top:18px}.journal-companions .journal-item{padding-block:26px}.journal-feature{padding:26px}.journal-feature h3{font-size:34px;letter-spacing:-1px}.journal-feature blockquote{font-size:25px}.journal-link{margin-top:12px}.ventures{grid-template-columns:1fr}.venture{padding:28px}.venture-primary{grid-row:auto}.venture-primary .venture-top{margin-bottom:35px}.venture-primary h3{font-size:44px}.venture .venture-proof{padding-top:35px}.venture-proof strong{font-size:clamp(48px,15.2vw,72px)}.venture-top{flex-wrap:nowrap;gap:12px}.category{order:0;width:auto;max-width:210px}.venture h3{font-size:34px}.about h2{font-size:40px;letter-spacing:-1.6px}.about h2 br{display:none}.about-meta{display:grid;grid-template-columns:1fr;gap:25px}.footer{flex-wrap:wrap;gap:18px}.footer>.wordmark{width:100%}.journal-main{padding-top:40px}.journal-heading h1{font-size:49px;letter-spacing:-2px}.journal-page .journal-item{grid-template-columns:1fr;gap:13px}.journal-page .journal-item h3{font-size:29px}.journal-heading>p{font-size:18px}.journal-back{margin-bottom:36px}.journal-body{font-size:20px;line-height:1.75}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* Company identities, using the original marks and brand colours. */
@font-face{font-family:"Mabry Brand";src:url("/assets/brands/MabryPro-Medium.woff2") format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"Walsheim Brand";src:url("/assets/brands/GT-Walsheim-Bold.woff2") format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"Biruni Geist";src:url("/assets/brands/Geist.woff2") format("woff2");font-weight:100 900;font-display:swap}
@font-face{font-family:"Biruni Mono";src:url("/assets/brands/GeistMono.woff2") format("woff2");font-weight:100 900;font-display:swap}
.venture[class*="brand-"]{--card-text:#fff;--card-muted:#c7ceca;--card-accent:#3bd55a;--card-bg:#12291c;--card-border:#31583d;--card-rule:#36543e;background:var(--card-bg);border-color:var(--card-border);color:var(--card-text);padding:36px;position:relative;overflow:hidden;transition:transform .2s,border-color .2s;min-height:310px}
.venture[class*="brand-"]:hover{background:var(--card-bg);border-color:var(--card-accent);transform:translateY(-4px)}
.venture[class*="brand-"]:focus-visible{outline:3px solid var(--blue);outline-offset:5px}
.venture[class*="brand-"] .venture-top{margin-bottom:36px;gap:14px}
.venture[class*="brand-"] .index,.venture[class*="brand-"] .category{color:var(--card-muted)}
.venture[class*="brand-"] .visit{color:var(--card-text)}
.venture[class*="brand-"]>p{color:var(--card-muted);font-size:16px;line-height:1.65;margin-top:22px}
.venture h3.brand-logo{width:100%;line-height:1;letter-spacing:0}
.brand-logo img{display:block;max-width:100%;height:auto;width:255px;object-fit:contain;object-position:left center}
.venture.brand-licensed{padding:42px;border-top:4px solid #3bd55a}
.brand-licensed .brand-logo img{width:278px}
.venture.brand-licensed .venture-top{margin-bottom:65px}
.venture.brand-licensed>p{max-width:370px;font-size:18px;line-height:1.7}
.venture.brand-licensed .venture-proof{margin-top:auto;padding-top:80px;padding-bottom:32px;color:#e7f3e9}
.brand-licensed .venture-proof strong{font-size:clamp(60px,6.5vw,88px);color:#3bd55a;font-weight:500;letter-spacing:-5px}
.brand-licensed .venture-proof span{font-size:16px;line-height:1.6}
.venture-destination{display:flex;width:100%;justify-content:space-between;align-items:center;border-top:1px solid var(--card-rule);padding-top:22px;font-size:14px;color:var(--card-muted)}
.venture-destination>span{color:var(--card-accent);font-size:22px}
.venture.brand-guardpass{--card-bg:#1a1a1a;--card-border:#3a3a40;--card-rule:#3a3a40;--card-accent:#00cf2e;--card-muted:#c5c5cc}
.venture-products{display:flex;flex-wrap:wrap;gap:24px;margin-top:auto;padding-top:26px;font-size:14px;font-weight:500}
.venture-products>span{display:flex;align-items:center;gap:8px}
.venture-products>span::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--product-colour)}
.guard-hire{--product-colour:#c448b1}.guard-check{--product-colour:#f3ae0d}.guard-train{--product-colour:#4768ce}
.venture.brand-onsiren{--card-bg:#f5f5f5;--card-text:#000;--card-muted:#4a4a4a;--card-border:#f5f5f5;--card-accent:#fff427;border-top:4px solid #fff427;color-scheme:light}
.brand-onsiren .brand-logo img{width:250px}
.venture.brand-onsiren .brand-line{color:#000;font-family:"Walsheim Brand",Arial,sans-serif;font-size:29px;letter-spacing:-1px;font-weight:700;line-height:1.2;margin-top:26px}
.venture.brand-onsiren .brand-line+p{margin-top:14px}
.venture.brand-glome{--card-bg:#fdffc3;--card-text:#001433;--card-muted:#344461;--card-border:#fdffc3;--card-accent:#2949f5;color-scheme:light}
.venture.brand-glome .venture-top{margin-bottom:0}


.venture.brand-glome .brand-line{font-family:"Mabry Brand",Arial,sans-serif;font-size:32px;line-height:1.2;letter-spacing:-1px;font-weight:500;color:#14277c;margin-top:0}
.venture.brand-glome .brand-line+p{margin-top:16px}
.venture.brand-biruni{--card-bg:#f5f5f3;--card-text:#111113;--card-muted:#55555a;--card-border:#f5f5f3;--card-accent:#2545f5;--card-rule:#d6d6d1;border-top:4px solid #2545f5;color-scheme:light}
.venture h3.biruni-logo{display:flex;align-items:center;gap:12px;font-family:"Biruni Geist",Arial,sans-serif;font-size:26px;line-height:1.1;font-weight:600;text-transform:uppercase;letter-spacing:.17em}
.biruni-logo>img{width:54px;height:48px;flex-shrink:0}
.biruni-sub{display:block;color:#2545f5;font-family:"Biruni Mono",monospace;font-weight:500;font-size:13px;line-height:1.5;letter-spacing:.28em;margin-top:3px}
.venture.brand-biruni .brand-line{color:#111113;font-family:"Biruni Geist",Arial,sans-serif;font-size:30px;line-height:1.2;letter-spacing:-1px;font-weight:500;margin-top:30px}
.venture.brand-biruni .brand-line+p{margin-top:16px}
.partner-lockup{margin-top:auto;padding-top:30px;width:100%}
.partner-lockup img{display:block;width:212px;max-width:100%;height:auto}
@media(max-width:1150px){.venture[class*="brand-"]{padding:28px}.venture.brand-licensed{padding:34px}.venture.brand-licensed>p{font-size:17px}.venture.brand-licensed .venture-top{margin-bottom:52px}.brand-licensed .venture-proof strong{font-size:clamp(54px,6.8vw,76px);letter-spacing:-4px}.venture.brand-onsiren .brand-line,.venture.brand-glome .brand-line,.venture.brand-biruni .brand-line{font-size:27px}}
@media(max-width:800px){.venture[class*="brand-"]{padding:25px}.venture.brand-licensed .venture-top{margin-bottom:36px}.venture[class*="brand-"] .venture-top{margin-bottom:30px}.venture[class*="brand-"] .category{max-width:100%}.venture.brand-licensed .venture-proof{padding-top:45px}.brand-licensed .venture-proof strong{font-size:clamp(42px,7vw,56px);letter-spacing:-3px}.venture h3.biruni-logo{font-size:22px;gap:7px}.biruni-logo>img{width:45px;height:40px}.biruni-sub{font-size:11px}.venture-products{gap:16px}}
@media(max-width:650px){.ventures{grid-template-columns:1fr}.venture.brand-licensed{grid-row:auto}.venture[class*="brand-"]{padding:30px;min-height:0}.venture[class*="brand-"] .venture-top{flex-wrap:nowrap;margin-bottom:35px}.venture[class*="brand-"] .category{order:0;width:auto;font-size:12px}.venture.brand-licensed .venture-top{margin-bottom:42px}.brand-licensed .venture-proof strong{font-size:clamp(50px,14vw,76px);letter-spacing:-3px}.venture.brand-licensed .venture-proof{padding-top:45px}.venture.brand-glome .venture-top{margin-bottom:0}.venture.brand-onsiren .brand-line,.venture.brand-glome .brand-line,.venture.brand-biruni .brand-line{font-size:29px}.partner-lockup{padding-top:32px}.partner-lockup img{width:200px}.venture h3.biruni-logo{font-size:26px;gap:12px}.biruni-sub{font-size:12px}.biruni-logo>img{width:54px;height:48px}}

/* Glome master geometry and drawn wordmark, composed at the canonical 10 × 9 ratio. */
.venture.brand-glome .venture-top{margin-bottom:0}
.venture h3.glome-brand-stage{display:flex;align-items:center;justify-content:center;width:100%;height:266px;flex-shrink:0}
.glome-lockup{position:relative;display:block;width:140px;height:126px}
.glome-dome{position:absolute;inset:0;background:linear-gradient(180deg,#2949f5 11.06%,rgba(41,73,245,0) 91.35%);mask:url("/assets/brands/glome-dome-master.svg") center/contain no-repeat;-webkit-mask:url("/assets/brands/glome-dome-master.svg") center/contain no-repeat}
.glome-wordmark{position:absolute;left:10%;bottom:14px;width:80%;aspect-ratio:305/72;background:#2949f5;mask:url("/assets/brands/glome-wordmark-clean.png") center/contain no-repeat;-webkit-mask:url("/assets/brands/glome-wordmark-clean.png") center/contain no-repeat}

/* Personal library: a browsable catalogue of books, conversations and people. */
.library-preview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}
.library-preview-grid h3{font-size:19px;font-weight:550;line-height:1.4;margin-bottom:16px}
.library-items{list-style:none;padding:0;margin:0;min-width:0}
.library-items>li{min-width:0;border-bottom:1px solid #c6ccda}
.library-item{display:flex;gap:15px;align-items:flex-start;padding:22px 0;min-width:0;height:100%}
.library-item-text{display:flex;flex-direction:column;gap:8px;min-width:0}
.library-item-title{font-family:Georgia,"Times New Roman",serif;font-size:23px;line-height:1.25;letter-spacing:-.4px;overflow-wrap:anywhere}
.library-item-by{font-size:14px;line-height:1.6;color:#526078}
a.library-item:hover .library-item-title,a.library-item:focus-visible .library-item-title{color:#1747c9}
.library-external{color:#1747c9;font-size:18px;margin-left:auto;padding-left:6px;flex:none}
.library-index{flex:none;font-size:14px;line-height:1.8;color:#637089;font-variant-numeric:tabular-nums}
.library-more{display:inline-block;padding:16px 0;color:#1747c9;font-size:14px;line-height:1.5;text-decoration:underline;text-underline-offset:5px}
.library-open{margin-top:32px}
.library-hero{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(40px,7vw,110px);padding-top:70px;padding-bottom:82px;align-items:center}
.library-hero .eyebrow{color:var(--muted);font-size:14px;margin-bottom:24px}
.library-hero h1{font-size:clamp(54px,6.5vw,90px);line-height:1.05;letter-spacing:-4px;font-weight:450}
.library-hero h1 em{color:var(--blue)}
.library-intro{font-size:19px;line-height:1.75;color:var(--muted);max-width:500px;margin-top:28px}
.library-quote{padding-left:30px;border-left:2px solid var(--blue)}
.library-quote blockquote{font-family:Georgia,"Times New Roman",serif;font-size:clamp(25px,2.7vw,36px);line-height:1.45;letter-spacing:-.6px}
.library-quote figcaption{font-size:14px;color:var(--blue);line-height:1.6;margin-top:24px}
.library-quote figcaption a{text-decoration:underline;text-underline-offset:5px}
.library-catalogue{padding-bottom:85px}
.library-jump{flex-wrap:wrap;gap:12px 30px;border-bottom:1px solid #bcc6d8;padding-block:22px;font-size:15px}
.library-jump a{color:#283954;padding-block:10px}
.library-jump a:hover{color:#1747c9}
.library-group{padding-top:64px;scroll-margin-top:32px}
.library-group-heading{display:flex;align-items:baseline;gap:22px;border-bottom:2px solid #1747c9;padding-bottom:22px;margin-bottom:8px}
.library-group-heading h2{font-size:clamp(28px,3.3vw,42px);line-height:1.2;letter-spacing:-1.3px;font-weight:450}
.library-group-number{font-size:14px;color:#1747c9;font-variant-numeric:tabular-nums}
.library-group>.library-items{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 38px}
.library-group .library-item{padding-block:26px;min-height:112px}
.library-group .library-item-title{font-size:25px}
.library-reflection{display:flex;justify-content:space-between;align-items:center;gap:35px;margin-top:72px;padding:38px;background:#dfe7f8;border-left:3px solid #1747c9}
.library-reflection h2{font-size:33px;line-height:1.25;letter-spacing:-1px;margin-top:14px}
.library-reflection p:last-child{font-size:16px;line-height:1.65;color:#526078;margin-top:12px}
.library-reflection .text-link{flex-shrink:0;color:#1747c9}
@media(max-width:950px){.library-preview-grid{gap:24px}.library-group>.library-items{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 30px}.library-hero{gap:38px}.library-hero h1{letter-spacing:-2.5px}.library-quote{padding-left:22px}}
@media(max-width:700px){.library-preview-grid{grid-template-columns:1fr;gap:32px}.library-preview-grid h3{margin-bottom:6px}.library-preview-grid .library-item{padding-block:18px}.library-hero{grid-template-columns:1fr;padding-top:42px;padding-bottom:52px;gap:36px}.library-hero h1{font-size:clamp(48px,10vw,68px)}.library-hero .eyebrow{font-size:13px}.library-intro{font-size:18px}.library-quote blockquote{font-size:26px}.library-quote figcaption{margin-top:16px}.library-jump{gap:0 22px}.library-group{padding-top:45px}.library-group-heading{gap:14px;padding-bottom:18px}.library-group-heading h2{font-size:30px}.library-group>.library-items{grid-template-columns:1fr}.library-group .library-item{padding-block:21px;min-height:0}.library-item-title,.library-group .library-item-title{font-size:24px}.library-reflection{display:block;padding:27px;margin-top:48px}.library-reflection h2{font-size:29px}.library-reflection .text-link{margin-top:20px}.library-catalogue{padding-bottom:55px}}
@media(prefers-reduced-motion:reduce){.library-page{scroll-behavior:auto}}

/* The Journal is organised around ideas and subjects. */
.journal-page .journal-main{padding-top:56px}
.journal-page .journal-heading{margin-bottom:36px}
.journal-heading>.eyebrow{font-size:12px;line-height:1.7;margin:0 0 18px;letter-spacing:1.8px}
.journal-page .journal-heading>p:last-child{max-width:610px}
.journal-collection{scroll-margin-top:32px}
.journal-topics{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:48px;padding-block:20px;border-block:1px solid #bcc6d8}
.journal-topics a{padding:11px 18px;border:1px solid #bcc6d8;border-radius:3px;font-size:15px;line-height:1.4;color:#283954;background:#f7f9fc;transition:background .18s,color .18s,border-color .18s}
.journal-topics a:hover,.journal-topics a:focus-visible{background:#1747c9;color:white;border-color:#1747c9}
.journal-topic-section{scroll-margin-top:32px}
.journal-topic-section+.journal-topic-section{margin-top:72px}
.journal-topic-heading{display:flex;justify-content:space-between;align-items:baseline;gap:24px;margin-bottom:24px;padding-bottom:20px;border-bottom:2px solid #1747c9}
.journal-topic-heading h2{font-family:Georgia,"Times New Roman",serif;font-size:clamp(32px,3.8vw,48px);font-weight:400;line-height:1.2;letter-spacing:-1.3px}
.journal-topic-top{font-size:14px;color:#526078;white-space:nowrap;padding:10px 0}
.journal-topic-top:hover{color:#1747c9}
.journal-topic-top span{margin-left:8px}
.journal-page .journal-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 56px;border:0}
.journal-page .journal-item{display:block;position:relative;min-width:0;padding:28px 0 32px;border-bottom:1px solid #c6ccda}
.journal-page .journal-item h3{font-family:Georgia,"Times New Roman",serif;font-size:30px;font-weight:400;line-height:1.23;letter-spacing:-.6px;max-width:540px}
.journal-item h3 a::after{content:"";position:absolute;inset:0}
.journal-item:focus-within h3 a,.journal-item:hover h3 a{color:#1747c9}
.journal-page .journal-item p{font-size:16px;line-height:1.65;margin-top:14px;max-width:510px}
.journal-topic-label{font-size:14px;font-weight:500;line-height:1.5;color:#bbcef9}
.journal-companions .journal-item{position:relative}
.journal-article-topic a{color:#1747c9;text-decoration:underline;text-underline-offset:5px;letter-spacing:1px}
.journal-context{max-width:740px;color:#526078;font-size:16px;line-height:1.7}
.journal-source-credit{margin-top:44px}
.journal-source-credit a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:700px){.journal-topics{gap:8px;margin-bottom:40px}.journal-topics a{padding:10px 13px;font-size:14px}.journal-page .journal-list{grid-template-columns:1fr;gap:0}.journal-topic-section+.journal-topic-section{margin-top:48px}.journal-topic-heading{gap:16px;margin-bottom:8px;padding-bottom:16px}.journal-topic-heading h2{font-size:33px;letter-spacing:-.8px}.journal-topic-top{font-size:13px}.journal-page .journal-item{padding:24px 0}.journal-page .journal-item h3{font-size:28px}.journal-page .journal-heading{margin-bottom:30px}}
/* Original product artwork from Figma and the businesses' public product pages. */
.venture.brand-licensed{grid-row:auto}
.venture.has-product{--card-pad:36px;padding-bottom:0}
.venture.brand-licensed .venture-proof{padding-top:60px}
.venture.brand-guardpass .venture-products{margin-top:0;padding-top:24px;padding-bottom:30px}
.product-preview{margin:32px calc(-1 * var(--card-pad)) 0;width:calc(100% + 2 * var(--card-pad));max-width:none}
.product-stage{position:relative;display:flex;justify-content:center;align-items:center;overflow:hidden;isolation:isolate}
.product-preview figcaption{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;padding:20px var(--card-pad);font-size:14px;line-height:1.5}
.product-preview figcaption>span{font-size:12px;opacity:.7}
.product-screen{display:block;flex:none;width:212px;height:auto;border-radius:22px;box-shadow:0 18px 35px #0004}
.guardpass-preview{margin-top:auto}
.guardpass-preview .product-stage{height:290px;align-items:flex-start;background:#1a1a1a;padding-top:10px}
.guardpass-preview .product-stage>img{width:min(420px,90%);height:auto;display:block}
.guardpass-preview figcaption{background:#222225;color:#d7d7db;border-top:1px solid #35353b}
.onsiren-preview{background:#121212;color:#f5f5f5;margin-top:auto}
.onsiren-preview .product-stage{min-height:515px;padding:30px;align-items:center}
.onsiren-preview .product-screen{border:1px solid #454545;box-shadow:0 18px 42px #0008}
.onsiren-preview figcaption{border-top:1px solid #333;color:#fff427}
.venture.brand-onsiren>p:last-of-type,.venture.brand-glome>p:last-of-type{margin-bottom:32px}
.venture.brand-onsiren .venture-top,.venture.brand-glome .venture-top{margin-bottom:36px}
.venture h3.glome-wordmark-heading{display:flex;align-items:center;width:100%;height:54px;margin:0}
.glome-wordmark-heading>span{display:block;width:228px;max-width:100%;aspect-ratio:305/72;background:#2949f5;mask:url("/assets/brands/glome-wordmark-clean.png") left center/contain no-repeat;-webkit-mask:url("/assets/brands/glome-wordmark-clean.png") left center/contain no-repeat}
.venture.brand-glome .brand-line{margin-top:26px;font-size:29px}
.glome-preview{background:#14277c;color:#fdffc3;margin-top:auto}
.glome-preview .product-stage{min-height:515px;gap:18px;padding:36px 24px;align-items:flex-start}
.glome-preview .product-screen{width:190px;max-width:45%;border-radius:20px}
.glome-preview .walk-screen{margin-top:44px}
.glome-preview figcaption{border-top:1px solid #5362a0}
.venture.brand-biruni{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) 250px;column-gap:60px;min-height:0}
.brand-biruni .venture-top{grid-column:1/-1}
.brand-biruni .biruni-logo,.brand-biruni>p{grid-column:1}
.venture.brand-biruni>p{max-width:620px}
.brand-biruni .partner-lockup{grid-column:2;grid-row:2/5;align-self:center;justify-self:end;margin:0;padding:0;width:auto}
.brand-biruni .partner-lockup img{width:230px}
@media(max-width:1150px){.venture.has-product{--card-pad:28px}.onsiren-preview .product-stage,.glome-preview .product-stage{min-height:475px}.product-screen{width:192px}.glome-preview .product-screen{width:174px}.glome-preview .product-stage{gap:14px;padding-inline:18px}.venture.brand-biruni{column-gap:35px;grid-template-columns:minmax(0,1fr) 215px}.brand-biruni .partner-lockup img{width:205px}}
@media(max-width:800px){.venture.has-product{--card-pad:25px}.onsiren-preview .product-stage,.glome-preview .product-stage{min-height:400px}.product-screen{width:156px}.glome-preview .product-stage{align-items:center;gap:10px;padding-inline:14px}.glome-preview .product-screen{width:150px}.glome-preview .walk-screen{margin-top:35px}.guardpass-preview .product-stage{height:225px}.venture.brand-biruni{column-gap:28px;grid-template-columns:minmax(0,1fr) 180px}.brand-biruni .partner-lockup img{width:180px}}
@media(max-width:650px){.venture.has-product{--card-pad:30px;padding-bottom:0}.venture.brand-onsiren .venture-top,.venture.brand-glome .venture-top{margin-bottom:35px}.guardpass-preview .product-stage{height:290px}.product-screen{width:210px}.onsiren-preview .product-stage,.glome-preview .product-stage{min-height:475px}.glome-preview .product-stage{align-items:flex-start;padding:32px 22px;gap:14px}.glome-preview .product-screen{width:180px}.glome-preview .walk-screen{margin-top:38px}.venture.brand-biruni{display:flex}.brand-biruni .partner-lockup{align-self:flex-start;padding-top:32px}.brand-biruni .partner-lockup img{width:205px}.venture.brand-glome .brand-line{margin-top:26px}.glome-preview .product-stage{min-height:0}.product-preview figcaption{font-size:13px}}
/* Living city models: keep the supplied diagram complete and readable. */
.city-models{padding-top:0}
.city-models .section-heading{border-top:1px solid var(--line);padding-top:72px}
.city-models h2 em{color:#fff427}
.city-models-intro{max-width:390px}
.city-models .section-intro{max-width:none;margin:0}
.project-status{display:inline-flex;align-items:center;gap:10px;margin-bottom:20px;color:#dce4f4;font-size:12px;letter-spacing:1px;text-transform:uppercase;line-height:1.6}
.project-status::before{content:"";width:7px;height:7px;border-radius:50%;background:#fff427}
.city-model-image{display:block;background:linear-gradient(90deg,#0c1217,#111922) top/100% 50% no-repeat,linear-gradient(90deg,#0b1015,#111921 14%,#17212b) bottom/100% 50% no-repeat}
.city-model-image img{display:block;width:100%;height:auto}
/* Separate the artwork's original title and caption without moving the city geometry. */
.city-model-base{-webkit-mask:url("/assets/projects/city-label-mask-v2.svg") center/100% 100% no-repeat;mask:url("/assets/projects/city-label-mask-v2.svg") center/100% 100% no-repeat}
.city-model-corner{position:absolute;left:2.8%;bottom:3.2%;z-index:2;color:#f4f5ec;font-size:clamp(10px,1.2vw,18px);font-weight:500;line-height:1;letter-spacing:.06em;pointer-events:none}
.city-model-artwork figcaption{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-top:20px;color:var(--muted)}
.city-model-artwork figcaption>span{font-size:12px;text-transform:uppercase;letter-spacing:1.5px}
.city-model-artwork .text-link{font-size:13px;color:var(--white);gap:24px}
.city-model-artwork .text-link:hover{color:#fff427}
@media(max-width:800px){.city-models .section-heading{display:flex;align-items:flex-start;flex-direction:column;gap:28px;padding-top:48px}.city-models-intro{max-width:540px}.project-status{margin-bottom:14px}}
@media(max-width:540px){.city-model-artwork figcaption{align-items:flex-start;flex-direction:column;gap:8px}}

/* Small, independent movements grounded in the London illustration. */
.city-model-image{position:relative;isolation:isolate}
.city-motion{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;opacity:0;overflow:hidden}
.has-motion .city-motion{opacity:1}
.city-world{--signal:#fff427;--water:#c5d9dd;--warm:#fff2c4}
.boat-hull{fill:#f1f1dc;stroke:#b99a55;stroke-width:.8}
.boat-shadow{fill:#07151c;opacity:.75;transform:translate(1px,2px)}
.boat-cabin{fill:#525e62;stroke:#f9ebc3;stroke-width:.65}
.boat-windows{fill:none;stroke:#cee4ea;stroke-width:.7}
.boat-bow-light{fill:#fff4bb}
.boat-wake{fill:none;stroke:#d9e9e8;stroke-width:.8;opacity:.55;animation:city-wake 3s ease-in-out infinite alternate}
.boat-wake .wake-inner{stroke-width:.5;opacity:.65}
.water-current{fill:none;stroke:#cfdee2;stroke-width:.6;stroke-dasharray:3 22 6 32;opacity:.22;animation:city-current 18s linear infinite;animation-delay:var(--delay)}
.water-glint{fill:none;stroke:#e6e7c6;stroke-width:.8;opacity:0;animation:city-water-light var(--duration,5s) ease-in-out infinite;animation-delay:var(--delay)}
.car-body{fill:#b1b9b6;stroke:#fff2c4;stroke-width:.4}
.car-glass{stroke:#253037;stroke-width:1.1}
.car-headlights{fill:none;stroke:#fff2c4;stroke-width:.8;opacity:.85}
.car-tail{stroke:#c4a15a;stroke-width:1.2}
.train-body{fill:#fff1c5;stroke:#091619;stroke-width:.8}
.train-roof{fill:#607073}
.train-windows{fill:none;stroke:#fff427;stroke-width:.7}
.rail-sheen{fill:none;stroke:#fff9ba;stroke-width:1.5;stroke-dasharray:3 140;opacity:.35;animation:city-current 20s linear infinite}
.city-location-pulse{fill:none;stroke:var(--signal);stroke-width:1;transform-box:fill-box;transform-origin:center;animation:city-arrival 11s ease-out infinite;animation-delay:var(--delay)}
.station-arrival{fill:#fff427;fill-opacity:.15;stroke:#fffbc9;stroke-width:1;opacity:var(--arrival,0)}
.station-centre{fill:#fff9c1;stroke:#b8ab32;stroke-width:1}
.station-passengers circle{fill:#fff5b2;animation:city-footstep 6s ease-in-out infinite alternate;animation-delay:var(--delay)}
.city-window{fill:#ffe6a4;animation:city-window var(--duration) ease-in-out infinite;animation-delay:var(--delay)}
.data-packet{fill:#fff5ae}
.data-packet-halo{fill:#fff427;opacity:.14}
.document-read{fill:none;stroke:#fffbc9;stroke-width:1.3;stroke-dasharray:7 45;animation:city-document 9s ease-in-out infinite;animation-delay:var(--delay)}
.document-received{fill:#fff427;animation:city-received 9s ease-in-out infinite;animation-delay:var(--delay)}
.city-message circle{fill:#fffbe1;animation:city-message 4s ease-in-out infinite;animation-delay:var(--delay)}
.city-rain{fill:none;stroke:#d8e4e3;stroke-width:.8;animation:city-rain 2.8s linear infinite;animation-delay:var(--delay)}
.city-sun{fill:none;stroke:#fff8ad;stroke-width:1.4;animation:city-sunlight 10s ease-in-out infinite}
.city-calendar{fill:#fff8aa;animation:city-received 8s ease-in-out infinite}
.city-crowd{fill:#f1e2a0;animation:city-footstep 7s ease-in-out infinite alternate;animation-delay:var(--delay)}
.city-world *{animation-play-state:paused!important}
.is-playing .city-world *{animation-play-state:running!important}
@keyframes city-current{to{stroke-dashoffset:-300}}
@keyframes city-wake{from{opacity:.25}to{opacity:.7}}
@keyframes city-water-light{0%,100%{opacity:.08}45%{opacity:.65}70%{opacity:.16}}
@keyframes city-arrival{0%,55%,100%{opacity:0;transform:scale(.6)}62%{opacity:.7}86%{opacity:0;transform:scale(2.8)}}
@keyframes city-footstep{0%,20%{opacity:.25;transform:translate(0,0)}65%,100%{opacity:.8;transform:translate(3px,1px)}}
@keyframes city-window{0%,17%,100%{opacity:.2}30%,80%{opacity:.85}}
@keyframes city-document{0%,15%{stroke-dashoffset:45;opacity:0}30%,65%{opacity:.9}85%,100%{stroke-dashoffset:-45;opacity:0}}
@keyframes city-received{0%,40%,100%{opacity:.1}52%,70%{opacity:.9}}
@keyframes city-message{0%,70%,100%{opacity:.1}30%,45%{opacity:1}}
@keyframes city-rain{0%{opacity:0;transform:translate(2px,-3px)}25%{opacity:.65}80%{opacity:.3}100%{opacity:0;transform:translate(-4px,9px)}}
@keyframes city-sunlight{0%,100%{opacity:.2}50%{opacity:.9}}
@media(prefers-reduced-motion:reduce){.city-motion{display:none!important}}
.river-ring{fill:none;stroke:#e4e9dc;stroke-width:.7;transform-box:fill-box;transform-origin:center;animation:river-ring 7s ease-out infinite;animation-delay:var(--delay)}
.bridge-reflection{fill:none;stroke:#ffe9a7;stroke-width:1.2;stroke-dasharray:2 3;animation:river-reflection 6s ease-in-out infinite;animation-delay:var(--delay)}
@keyframes river-ring{0%{opacity:0;transform:scale(.3)}20%{opacity:.6}100%{opacity:0;transform:scale(2.4)}}
@keyframes river-reflection{0%,100%{opacity:.15;stroke-dashoffset:0}50%{opacity:.65;stroke-dashoffset:12}}

/* Weather passes over the mapped planes; the service status follows the trains. */
.city-world{--rain-strength:1;--wind-strength:.85;--sun-strength:.2;--rail-delay:0}
.city-rain-field,.city-river-rain,.city-weather{opacity:var(--rain-strength)}
.city-raindrop{fill:none;stroke:#c3e3f0;stroke-width:1.25;stroke-linecap:round;animation:city-rainfall var(--fall) linear infinite;animation-delay:var(--delay)}
.city-rain-splash{fill:none;stroke:#d8edf2;stroke-width:.9;animation:city-splash var(--fall) linear infinite;animation-delay:var(--delay);transform-box:fill-box;transform-origin:center}
.city-rain-ripple{fill:none;stroke:#dceef0;stroke-width:.8;animation:city-rain-ripple 2.4s ease-out infinite;animation-delay:var(--delay);transform-box:fill-box;transform-origin:center}
.city-sun{animation:none;opacity:var(--sun-strength)}
.sun-rays{animation:city-rays 30s linear infinite;transform-origin:0 0}
.city-wind{fill:none;stroke:#c2dce3;stroke-width:1.2;stroke-linecap:round;stroke-dasharray:22 45;opacity:var(--wind-strength)}
.city-wind path{animation:city-gust 5s ease-in-out infinite}
.city-condition-alert{opacity:calc(var(--rain-strength) * .7);fill:#fff42712;stroke:#fff427;stroke-width:1.3}
.city-calendar{animation:none}
.city-calendar rect{animation:city-calendar-day 8.4s ease-in-out infinite;animation-delay:var(--delay)}
.station-signal path{stroke:#bdc9b3;stroke-width:1}
.signal-ready{fill:#c2e2ad}
.signal-wait{fill:#ffba63;opacity:var(--delay-active,0)}
.signal-halo{fill:none;stroke:#ffc87d;stroke-width:.8;opacity:var(--delay-active,0)}
.station-passengers{opacity:calc(.5 + var(--delay-active,0) * .5)}
.pedestrian-shadow{fill:#050d10;opacity:.6}
.pedestrian-body{fill:#eac77b}
.pedestrian-head{fill:#fff0c4}
.city-safety-shield{fill:none;stroke:#fff8b5;stroke-width:1.5;stroke-dasharray:16 70;animation:city-shield 9s ease-in-out infinite}
.city-officer-ping{fill:none;stroke:#fff427;stroke-width:.9;animation:city-arrival 10s ease-out infinite;transform-box:fill-box;transform-origin:center}
.city-road-signal rect{fill:#111b20;stroke:#9ba8a2;stroke-width:.5}
.road-signal-red{fill:#efaa85;animation:city-signal-red 15s step-end infinite;animation-delay:var(--delay)}
.road-signal-green{fill:#bce5b2;animation:city-signal-green 15s step-end infinite;animation-delay:var(--delay)}
.city-status rect{fill:#10202bd9;stroke:#80949b44;stroke-width:.7}
.city-status text{fill:#d6e8e9;font-family:inherit;font-size:18px;font-weight:500;letter-spacing:.1px}
.city-status-dot{fill:#b5dace}
.city-status-weather .city-status-dot{fill:#b3dcec}
.city-status-rail .city-status-dot{fill:color-mix(in srgb,#bbdfae calc(100% - var(--rail-delay) * 100%),#ffba63)}
.city-status-reports .city-status-dot{fill:#fff427;animation:city-report-signal 6s ease-in-out infinite}
@keyframes city-rainfall{0%{opacity:0;transform:translate(6px,-17px)}12%{opacity:.65}78%{opacity:.5}100%{opacity:0;transform:translate(-9px,23px)}}
@keyframes city-splash{0%,68%,100%{opacity:0;transform:scale(.3)}76%{opacity:.65;transform:scale(.7)}96%{opacity:0;transform:scale(1.8)}}
@keyframes city-rain-ripple{0%{opacity:0;transform:scale(.2)}18%{opacity:.65}100%{opacity:0;transform:scale(2.8)}}
@keyframes city-rays{to{transform:rotate(360deg)}}
@keyframes city-gust{0%,100%{stroke-dashoffset:55;opacity:.1;transform:translate(-5px,0)}40%,60%{opacity:.85}80%{stroke-dashoffset:-55;transform:translate(8px,0)}}
@keyframes city-calendar-day{0%,20%,100%{opacity:.15}5%,15%{opacity:1}}
@keyframes city-shield{0%,100%{stroke-dashoffset:86;opacity:.15}25%,65%{opacity:.9}80%{stroke-dashoffset:0;opacity:.3}}
@keyframes city-signal-red{0%,42%,100%{opacity:1}43%,99%{opacity:.12}}
@keyframes city-signal-green{0%,47%,100%{opacity:.12}48%,99%{opacity:1}}
@keyframes city-report-signal{0%,100%{opacity:.35}30%,60%{opacity:1}}

/* The physical city is neutral; information brings colour to the planes above it. */
.city-physical-tone,.city-layer-labels{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.city-physical-tone{-webkit-mask:url("/assets/projects/city-label-mask-v2.svg") center/100% 100% no-repeat;mask:url("/assets/projects/city-label-mask-v2.svg") center/100% 100% no-repeat}
.city-layer-labels text{fill:#f1f3f4;font-family:monospace;font-size:18px;letter-spacing:.35px}
.city-layer-labels .layer-description{fill:#bfc8ce;font-size:14px;letter-spacing:0}
.city-physical{filter:grayscale(1)}
.transport-road{fill:none;stroke:#ccdce5;stroke-opacity:.24;stroke-width:7;stroke-linejoin:round}
.city-transport .car-body{fill:#f1f4f5;stroke:#14222b;stroke-width:.7}
.city-transport .car-headlights{stroke:#fff;stroke-width:1}
.city-transport .car-tail{stroke:#ff895a}
.bus-body{fill:#fff427;stroke:#14222b;stroke-width:.7}
.bus-windows{fill:none;stroke:#182838;stroke-width:1.1;stroke-dasharray:2 1}
.city-police-body .car-body{fill:#fff;stroke:#14222b;stroke-width:.65}
.police-checks{fill:none;stroke:#266aff;stroke-width:.8;stroke-dasharray:1 1}
.police-lightbar{--police-blue:#4b94ff}
.police-light-glow{fill:var(--police-blue);opacity:.12;animation:city-police-glow 2.8s ease-in-out infinite}
.police-light-left,.police-light-right{stroke:var(--police-blue);stroke-width:2;stroke-linecap:round;animation:city-police-beacon 2.8s ease-in-out infinite}
.police-light-right{animation-delay:-1.4s}
.city-incident{opacity:.9}
.incident-radius{fill:#ed1b1b0c;stroke:#ed5656;stroke-width:1.1;animation:city-incident-spread 6s ease-out infinite;animation-delay:var(--delay);transform-box:fill-box;transform-origin:center}
.incident-pin{fill:#17212b;stroke:#ef7772;stroke-width:1.5}
.incident-mark{fill:none;stroke:#ffd5d1;stroke-width:1.6;stroke-linecap:round}
.crime-history{fill:#a0a9b61a;stroke:#b5beca;stroke-width:.8;opacity:.6}
.chat-incoming>path:first-child{fill:#142633;stroke:#e8eff4;stroke-width:1.1}
.chat-line{fill:none;stroke:#c5d3df;stroke-width:1.4;stroke-linecap:round}
.chat-reply>path{fill:#253326;stroke:#fff427;stroke-width:1}
.chat-reply circle{fill:#fff427}
.chat-incoming{animation:city-conversation-in 8s ease-in-out infinite;animation-delay:var(--delay)}
.chat-reply{animation:city-conversation-back 8s ease-in-out infinite;animation-delay:var(--delay)}
.officer-ground{fill:#fff42712;stroke:#fff427;stroke-width:.8;animation:city-officer-aware 8s ease-in-out infinite;animation-delay:var(--delay)}
.officer-head{fill:#f0f2ee;stroke:#12212a;stroke-width:1.2}
.officer-vest{fill:#fff427;stroke:#12212a;stroke-width:1.4}
.officer-reflective{fill:none;stroke:#f5f5f5;stroke-width:1.2}
.officer-legs{fill:none;stroke:#d0d7dc;stroke-width:2.3;stroke-linecap:round}
.officer-briefing rect{fill:#152738;stroke:#a9c9fa;stroke-width:1.2}
.officer-briefing path{fill:none;stroke:#d7e7ff;stroke-width:1.1}
.officer-briefing{animation:city-conversation-back 8s ease-in-out infinite;animation-delay:var(--delay)}
.officer-receive{fill:none;stroke:#fff427;stroke-width:1.6;stroke-linecap:round;animation:city-conversation-in 8s ease-in-out infinite;animation-delay:var(--delay)}
.awareness-link{fill:none;stroke:#fff427;stroke-opacity:.22;stroke-width:1.2}
[data-flow="back"] .data-packet{fill:#d9e8ff}
[data-flow="back"] .data-packet-halo{fill:#80abff;opacity:.22}
[data-flow="briefing"] .data-packet{fill:#b5d1ff}
.event-reach{fill:#fff4270b;stroke:#fff427;stroke-width:.8;animation:city-officer-aware 8s ease-in-out infinite;animation-delay:var(--delay)}
.event-ticket{fill:#14232d;stroke:#fff427;stroke-width:1.2}
.event-ticket-line{fill:none;stroke:#fff427;stroke-width:1;stroke-dasharray:2 2}
.event-person{fill:#e8eac5;animation:city-footstep 7s ease-in-out infinite alternate;animation-delay:var(--delay)}
.city-status-knowledge .city-status-dot{fill:#b5d1ff}
.city-status-safety .city-status-dot{fill:#619dff}
.city-awareness-summary{display:grid;grid-template-columns:1fr 1.25fr;gap:24px 64px;padding:36px 0 0;margin-top:28px;border-top:1px solid var(--line)}
.city-awareness-summary .eyebrow{margin-bottom:12px}
.city-awareness-summary h3{font-size:clamp(24px,3vw,38px);font-weight:500;line-height:1.14;letter-spacing:-.04em;margin:0}
.city-awareness-summary>p{grid-column:2;margin:0;color:var(--muted);font-size:16px;line-height:1.65;max-width:560px}
.city-awareness-flow{display:flex;align-items:center;gap:12px;font-size:14px;line-height:1.4;align-self:center}
.city-awareness-flow span[aria-hidden]{color:#fff427;font-size:24px}
@keyframes city-police-beacon{0%,100%{opacity:.22}20%,35%{opacity:1}60%,85%{opacity:.22}}
@keyframes city-police-glow{0%,50%,100%{opacity:.05}20%,70%{opacity:.25}}
@keyframes city-incident-spread{0%,100%{opacity:.08;transform:scale(.65)}25%{opacity:.7}85%{opacity:0;transform:scale(1.6)}}
@keyframes city-conversation-in{0%,100%{opacity:.4;transform:translateY(2px)}12%,65%{opacity:1;transform:translateY(0)}}
@keyframes city-conversation-back{0%,18%,100%{opacity:.2;transform:translateY(3px)}38%,85%{opacity:1;transform:translateY(0)}}
@keyframes city-officer-aware{0%,100%{opacity:.25}35%,65%{opacity:.9}}
@media(max-width:700px){.city-awareness-summary{grid-template-columns:1fr;gap:24px;padding-top:28px;margin-top:20px}.city-awareness-summary>p{grid-column:1}.city-awareness-flow{flex-wrap:wrap;gap:10px}.city-awareness-summary h3 br{display:none}}

/* LinkedIn profile links */
.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px 32px;margin-top:25px}.hero-actions .hero-link{margin-top:0}.linkedin-link{display:inline-flex;align-items:center;gap:9px;min-height:44px;font-size:15px;line-height:1.4;white-space:nowrap}.linkedin-link svg{flex:none}.linkedin-link:hover{color:var(--blue)}.footer-links{display:flex;align-items:center;flex-wrap:wrap;gap:12px 28px;color:var(--muted)}.footer-links>a{min-height:44px;display:inline-flex;align-items:center;gap:9px;font-size:14px}.footer-links>a:hover{color:var(--white)}@media(max-width:800px){.hero-actions{margin-top:20px}}@media(max-width:540px){.footer-links{width:100%;justify-content:space-between}}

/* Shared intelligence connects places across the entire upper city plane. */
.city-intelligence-map{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.intelligence-link{fill:none;stroke:#fff427;stroke-width:1;stroke-opacity:.4}
.intelligence-link-pulse{fill:none;stroke:#fff7a1;stroke-width:1.6;stroke-linecap:round;stroke-dasharray:16 84;opacity:.75;animation:city-intelligence-flow var(--signal-duration) linear infinite;animation-delay:var(--signal-delay)}
.intelligence-node-aura{fill:#fff427;opacity:.1;animation:city-intelligence-node 5s ease-in-out infinite;animation-delay:var(--signal-delay)}
.intelligence-node-ring{fill:#11202b;stroke:#fff427;stroke-width:1;stroke-opacity:.8}
.intelligence-node-core{fill:#fff7a1}
.intelligence-input .intelligence-node-core{fill:#fff}
.city-intelligence-map *{animation-play-state:paused!important}
.is-playing .city-intelligence-map *{animation-play-state:running!important}
@keyframes city-intelligence-flow{from{stroke-dashoffset:100}to{stroke-dashoffset:0}}
@keyframes city-intelligence-node{0%,100%{opacity:.07}40%,60%{opacity:.32}}
@media(prefers-reduced-motion:reduce){.city-intelligence-map *{animation:none!important}.intelligence-link-pulse{display:none}}

/* London transport, local conditions and the worker feedback loop. */
.underground-track{fill:none;stroke:#df534f;stroke-width:3.5;stroke-opacity:.72;stroke-linecap:round;stroke-linejoin:round}
.rail-track{fill:none;stroke:#d8e1e9;stroke-width:2.8;stroke-opacity:.75}
.underground-roundel circle{fill:#f3f3ed;stroke:#e54444;stroke-width:3.5}
.underground-roundel>path{stroke:#2357a7;stroke-width:5}
.underground-roundel .roundel-lettering{stroke:#fff;stroke-width:.7}
[data-service="underground"] .train-body{fill:#f4f3eb;stroke:#122431;stroke-width:.9}
[data-service="underground"] .train-roof{fill:#2357a7}
[data-service="underground"] .train-windows{stroke:#aed7f4;stroke-width:.7}
.train-cab{fill:none;stroke:#ed4545;stroke-width:1.8}
.train-doors{fill:none;stroke:#d64141;stroke-width:1.1}
[data-at-stop="true"] .train-doors{stroke:#fff427;stroke-width:1.8}
.city-transport .bus-body{fill:#dc3d40;stroke:#f0d9d2;stroke-width:.7}
.city-transport .bus-windows{stroke:#b7dbf0}
.concert-area{fill:#fff42710;stroke:#fff427;stroke-width:.8}
.concert-stage{fill:#233543;stroke:#e4e8eb;stroke-width:1}
.concert-truss{fill:none;stroke:#c9d4de;stroke-width:1.7}
.concert-note{fill:#fff427;stroke:#fff427;stroke-width:1.6}
.concert-beam{fill:#fff427;opacity:.1;transform-box:fill-box;transform-origin:50% 0;animation:city-concert-light 5s ease-in-out infinite alternate}
.beam-two{fill:#a4c7f9;animation-delay:-2.5s}
.concert-equaliser{fill:#fff427;transform-box:fill-box;transform-origin:bottom;animation:city-equaliser 1.8s ease-in-out infinite alternate;animation-delay:var(--delay)}
.ticket-gate{fill:none;stroke:#e5eced;stroke-width:2}
.ticket-scan{fill:none;stroke:#b6f7bb;stroke-width:2;animation:city-scan 3s ease-in-out infinite}
.protest-route{fill:none;stroke:#fff427;stroke-width:2;stroke-dasharray:3 8;opacity:.25}
.protest-stick{fill:none;stroke:#dbe3e6;stroke-width:1.7}
.protest-sign{fill:#eeeeda;stroke:#203142;stroke-width:1.1}
.protest-line{fill:none;stroke:#475662;stroke-width:1}
.air-zone{fill:#bac9bc;opacity:calc(var(--air-intensity,.4) * .13);stroke:#c8d9ce;stroke-width:.6}
.air-sensor{fill:#1a2934;stroke:#cadcd0;stroke-width:1.3}
.air-indicator{fill:#d4dfa3}
.air-particles circle{fill:#d3dfc3;opacity:var(--air-intensity,.4);animation:city-air-drift 5s linear infinite;animation-delay:var(--delay)}
.city-news-feed rect{fill:#162733;stroke:#dce7e8;stroke-width:1}
.city-news-feed text{fill:#e3ecec;font:9px monospace;letter-spacing:1.5px}
.news-headline{fill:none;stroke:#dce7e8;stroke-width:1;stroke-dasharray:20 40;animation:city-news-lines 5s linear infinite;animation-delay:var(--delay)}
.news-broadcast{fill:none;stroke:#b4d5dd;stroke-width:1;animation:city-report-signal 5s ease-in-out infinite;animation-delay:var(--delay)}
.ward-boundary{fill:#6497e810;stroke:#8fb6ed;stroke-width:1;stroke-opacity:.55;stroke-dasharray:5 3}
.ward-refresh{fill:#659af1;stroke:#a7c5f6;stroke-width:1.1;opacity:calc(var(--ward-update,.25) * .25)}
.ward-report{fill:#192b42;stroke:#bdcff3;stroke-width:1}
.ward-update{fill:#94bcff;opacity:var(--ward-update,.25)}
.worker-device rect{fill:#162941;stroke:#b6d2ff;stroke-width:1.2}
.worker-incoming{fill:none;stroke:#d0e5ff;stroke-width:1.3;opacity:var(--worker-receive,.2)}
.worker-outgoing{fill:#fff427;opacity:var(--worker-share,.2)}
.worker-receive-wave{fill:none;stroke:#b6d2ff;stroke-width:1.6;opacity:var(--worker-receive,.2)}
.worker-intake-link{fill:none;stroke:#91bfff;stroke-width:1;stroke-opacity:.28;stroke-dasharray:2 6}
.worker-return-link{fill:none;stroke:#fff427;stroke-width:1;stroke-opacity:.22;stroke-dasharray:3 8}
.city-status text{font-size:16px}
.city-status-air .city-status-dot{fill:#d4dfa3}
@keyframes city-concert-light{from{opacity:.08;transform:skewX(-10deg)}to{opacity:.27;transform:skewX(10deg)}}
@keyframes city-equaliser{from{transform:scaleY(.35)}to{transform:scaleY(1)}}
@keyframes city-scan{0%,100%{opacity:.15;transform:translateY(-2px)}50%{opacity:1;transform:translateY(4px)}}
@keyframes city-air-drift{0%{transform:translate(-10px,3px);opacity:.1}40%{opacity:var(--air-intensity,.4)}100%{transform:translate(12px,-5px);opacity:0}}
@keyframes city-news-lines{from{stroke-dashoffset:40}to{stroke-dashoffset:-40}}

/* Concepts: perception, language and beliefs. */
.library-concept-link{margin-top:26px;font-size:16px;line-height:1.6;flex-wrap:wrap}.concept-closing>.concept-library-link{display:flex;width:fit-content;margin-top:20px}
/* Diagrams use the site's midnight palette, with blue for signals and violet for interpretation. */
.header nav{flex-wrap:wrap;column-gap:clamp(18px,2.4vw,34px);row-gap:0}
.concept-preview{border-top:1px solid var(--line)}
.concept-preview-link{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:center;border:1px solid #344a73;background:#101c34;padding:clamp(28px,4vw,64px);transition:border-color .2s}
.concept-preview-link:hover{border-color:#9bb6ff}
.concept-number{display:block;font-size:0.875rem;color:#afc4f7;margin-bottom:28px}
.concept-preview-copy h3{font-size:clamp(36px,4vw,58px);font-weight:450;letter-spacing:-1.8px;line-height:1.12}
.concept-preview-copy>p{font-size:1.125rem;color:#c5d0e5;line-height:1.65;max-width:350px;margin-block:24px 32px}
.concept-mini{display:flex;flex-direction:column;align-items:center;text-align:center;font-size:1rem;line-height:1.7;max-width:340px;width:100%;justify-self:center}
.mini-label{font-size:0.875rem;color:#acbddb;margin-bottom:10px}
.mini-inputs{color:#d5e3ff}.mini-arrow{color:#88acf9;font-size:1.5rem;line-height:1.6}
.mini-filters{width:100%;display:grid;gap:6px}
.mini-filters>span{padding:5px 20px;border:1px solid #758cbf;background:#203961;transform:skewY(-3deg)}
.mini-filters>span:nth-child(2){margin-inline:12px;background:#353764;border-color:#8e89cb}
.mini-filters>span:nth-child(3){margin-inline:24px;background:#443965;border-color:#a994da}
.mini-output{border-bottom:2px solid #b7a0ef;padding:6px 15px;font-family:Georgia,"Times New Roman",serif;font-size:1.6875rem;color:#e3d5ff}
.concept-heading{padding-top:42px;padding-bottom:38px}
.concept-heading .eyebrow{font-size:0.875rem;margin-bottom:22px;color:var(--blue)}
.concept-heading h1{font-size:clamp(42px,5vw,72px);font-weight:450;letter-spacing:-2.8px;line-height:1.1;max-width:1100px}
.concept-heading>p{font-size:1.25rem;line-height:1.6;color:var(--muted);margin-top:22px}
.concept-instruction{font-size:0.875rem;color:var(--muted);margin-bottom:20px}
.concept-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;margin:0;padding:0;gap:28px}
.concept-stage{min-width:0;position:relative;--stage-accent:#91b9ff}
.concept-stage:nth-child(3){--stage-accent:#c4adff}.concept-stage:nth-child(4){--stage-accent:#e1c6f9}
.concept-stage:not(:last-child)::after{content:'→';position:absolute;right:-25px;top:60%;color:#94a7cc;font-size:1.5625rem;line-height:1;pointer-events:none}
.concept-stage-button{appearance:none;font:inherit;text-align:left;cursor:pointer;color:var(--white);display:flex;flex-direction:column;width:100%;height:100%;background:transparent;border:0;border-top:2px solid #35425f;padding:18px 0 0;transition:border-color .25s}
.concept-stage-button:hover,.concept-stage-button[aria-pressed=true]{border-color:var(--stage-accent)}
.concept-stage-button:focus-visible,.concept-context-button:focus-visible,.concept-reset:focus-visible{outline:3px solid var(--blue);outline-offset:6px}
.concept-stage-index{font-size:0.875rem;color:#a3b1cb;margin-bottom:13px}
.concept-stage-button[aria-pressed=true] .concept-stage-index{color:var(--stage-accent)}
.concept-stage-title{font-size:1.4375rem;line-height:1.3;letter-spacing:-.5px;font-weight:500}
.concept-stage-kicker{font-size:0.875rem;color:#a7b5ce;line-height:1.5;margin-top:7px;min-height:42px}
.concept-stage-visual{height:208px;display:flex;position:relative;width:100%;margin-top:12px;align-items:center;justify-content:center;border-radius:2px;background:#101a2b;overflow:hidden}
.concept-stage-button[aria-pressed=true] .concept-stage-visual{background:#17223a}
.concept-world{width:90%;max-width:200px;height:auto;margin-bottom:20px}
.concept-world path{fill:none;stroke:#758eaf;stroke-width:1}
.concept-world circle{fill:#c2d8f5;stroke:#17223a;stroke-width:3}
.concept-world-caption{position:absolute;bottom:16px;font-size:0.875rem;color:#c2ccdd;text-align:center;width:100%}
.concept-visual-senses{padding-inline:13px;gap:4px}
.sense-labels{font-size:0.875rem;line-height:1.4;flex:1;display:flex;flex-direction:column;gap:10px;position:relative;z-index:1}
.concept-signals{width:42%;height:160px;overflow:visible}
.concept-signals path{fill:none;stroke:#8abafa;stroke-width:1.5;vector-effect:non-scaling-stroke}
.concept-signals circle{fill:#bcdfff}
.filter-stack{display:grid;gap:7px;transform:skewY(-7deg);padding:12px 15px;width:100%}
.filter-stack>span{font-size:0.875rem;line-height:1.5;border:1px solid #8b81b6;background:#29294b;padding:3px 10px;color:#e8ddff;box-shadow:0 4px 0 #090f22}
.filter-stack>span:nth-child(2){margin-left:4px}.filter-stack>span:nth-child(3){margin-left:8px}.filter-stack>span:nth-child(4){margin-left:12px}.filter-stack>span:nth-child(5){margin-left:16px}
.experience-lens{display:flex;align-items:center;justify-content:center;text-align:center;aspect-ratio:1;width:155px;border:1px solid #ad8dca;border-radius:50%;box-shadow:0 0 0 9px #14192b,0 0 0 10px #4f416c,0 0 0 19px #121a2b,0 0 0 20px #302c4a;background:#25213d}
.experience-lens>span{font-family:Georgia,"Times New Roman",serif;font-size:1.5625rem;line-height:1.2;color:#ecd9ff}
.concept-stage-button[aria-pressed=true] .concept-signals path{animation:concept-signal .8s ease-out both}
@keyframes concept-signal{from{stroke-dasharray:220;stroke-dashoffset:220}to{stroke-dasharray:220;stroke-dashoffset:0}}
.concept-feedback{display:flex;align-items:center;gap:13px;max-width:78%;margin:22px 0 0 auto;padding:12px 0 0 20px;border-left:1px solid #526788;border-top:1px solid #526788}
.concept-feedback>span{font-size:1.5625rem;line-height:1;color:#9baed0}.concept-feedback>p{font-size:0.875rem;line-height:1.6;color:var(--muted)}
.concept-step-detail{display:grid;grid-template-columns:200px 1fr;gap:28px;margin-top:28px;padding:22px 26px;background:#14223a;border-left:2px solid #a8bbf1;align-items:start}
.concept-detail-label{font-size:1rem;color:#dce6ff;font-weight:550;line-height:1.65}
.concept-step-detail>p{font-size:1rem;line-height:1.65;color:#c4d0e8;max-width:850px;min-height:3.3em}
.concept-model-note{font-size:0.8125rem;color:#9aa9c1;line-height:1.5;margin-top:12px}
.concept-static-explanation{font-size:1rem;line-height:1.6}.concept-static-explanation p{margin-top:16px}
.concept-thought{display:grid;grid-template-columns:1fr 1.4fr;gap:clamp(36px,7vw,110px);padding-top:100px;padding-bottom:100px;align-items:start}
.concept-thought .eyebrow{font-size:0.875rem;margin-bottom:24px;color:var(--blue)}
.concept-thought h2{font-size:clamp(40px,4.5vw,64px);line-height:1.12}
.concept-prose{font-family:Georgia,"Times New Roman",serif;font-size:1.3125rem;line-height:1.75;color:#d2dced}
.concept-prose p+p{margin-top:24px}
.concept-comparison .eyebrow{margin-bottom:22px;font-size:0.875rem}
.concept-comparison h2{font-size:clamp(38px,4.8vw,68px);letter-spacing:-2px;line-height:1.12;max-width:1050px}
.shared-event{text-align:center;margin:50px auto 0;max-width:600px;border:1px solid #b1bfd8;background:white;padding:24px}
.concept-event-label{display:block;font-size:0.875rem;line-height:1.5;color:#455674}
.shared-event>p{font-family:Georgia,"Times New Roman",serif;font-size:2.375rem;line-height:1.25;letter-spacing:-.6px;margin-top:12px}
.concept-event-caption{font-size:0.875rem;line-height:1.6;color:#526078;display:block;margin-top:10px}
.interpretation-split{display:grid;grid-template-columns:1fr 1fr;width:50%;height:40px;margin-inline:auto}
.interpretation-split>span:first-child{border-left:1px solid #98a8c5;border-top:1px solid #98a8c5;margin-top:20px}
.interpretation-split>span:last-child{border-left:1px solid #98a8c5;border-right:1px solid #98a8c5;padding-top:20px;position:relative}
.interpretation-split>span:last-child::after{content:'';position:absolute;top:20px;left:0;right:0;border-top:1px solid #98a8c5}
.interpretations{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.interpretation{padding:30px;background:#e4eafa;border-top:3px solid #345aad;--interpretation-accent:#294889;min-width:0}
.interpretation-b{background:#e9e3f7;border-color:#7959ae;--interpretation-accent:#65408e}
.interpretation-label{font-size:1rem;font-weight:600;color:var(--interpretation-accent)}
.interpretation-memory{font-size:1rem;line-height:1.65;max-width:470px;margin-top:16px;color:#44506a;min-height:3.3em}
.interpretation-screen{padding-top:30px;margin-top:26px;border-top:1px solid #b9c5de}
.interpretation-b .interpretation-screen{border-color:#c8bbdf}
.interpretation-caption{font-size:0.875rem;line-height:1.5;color:#56617d}
.interpretation-screen h3{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-1px;font-size:clamp(27px,3vw,41px);line-height:1.2;min-height:2.4em;margin-top:14px}
.interpretation-screen>p{font-size:1.0625rem;line-height:1.6;color:#384960;min-height:3.2em;margin-top:18px}
.concept-context-controls{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:36px}
.concept-context-button,.concept-reset{appearance:none;font:inherit;font-size:1rem;line-height:1.5;cursor:pointer;padding:14px 22px;border:1px solid var(--electric);background:var(--electric);color:white;min-height:48px}
.concept-context-button>span{margin-left:15px}.concept-context-button:hover{background:#183faa}
.concept-reset{background:transparent;color:#2147aa;border-color:#9daccd}.concept-reset:hover{background:#e1e7f5}
.revealed-context{max-width:750px;margin:24px auto 0;padding:28px;text-align:center;background:#fff;border:1px solid #9bacca;border-top:3px solid #245af6;animation:concept-reveal .45s ease-out}
.revealed-context>p:first-of-type{font-family:Georgia,"Times New Roman",serif;font-size:1.875rem;line-height:1.4;margin-top:12px}
.revealed-context .context-insight{font-size:1.0625rem;color:#445471;line-height:1.65;margin-top:18px}
.context-revealed .interpretation-screen{animation:concept-reveal .45s ease-out}
@keyframes concept-reveal{from{opacity:.35;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
.concept-example-note{font-size:0.875rem;line-height:1.65;color:#526078;text-align:center;max-width:750px;margin:24px auto 0;min-height:3.3em}
.context-no-js{font-size:1.0625rem;line-height:1.65;max-width:750px;margin:24px auto 0}
.concept-closing{padding-top:85px;padding-bottom:80px}
.concept-question{font-size:clamp(30px,3.5vw,47px);letter-spacing:-1px;line-height:1.3;margin-bottom:35px}
.concept-question em{color:#bbccf5}.concept-closing>.text-link{font-size:1rem;line-height:1.6;flex-wrap:wrap}
.concept-sources{margin-top:65px;border-top:1px solid #3a4760;font-size:1rem;line-height:1.75;max-width:900px;color:#bccae0}
.concept-sources summary{padding-block:20px;cursor:pointer;color:#dce6ff;font-size:1rem;min-height:48px}
.concept-sources summary:focus-visible{outline:2px solid var(--blue);outline-offset:5px}
.concept-sources>div{padding-bottom:20px}.concept-sources ul{padding-left:20px;margin-top:24px}.concept-sources li+li{margin-top:22px}.concept-sources a{color:#a6bfff;text-decoration:underline;text-underline-offset:4px}.concept-sources li>span{display:block;margin-top:6px;font-size:0.9375rem}
.concepts-page [hidden]{display:none!important}
@media(max-width:1050px){.concept-flow{gap:20px}.concept-stage:not(:last-child)::after{right:-19px;font-size:1.3125rem}.concept-stage-title{font-size:1.25rem}.concept-stage-visual{height:190px}.concept-stage-kicker{min-height:42px}.experience-lens{width:122px}.experience-lens>span{font-size:1.375rem}.filter-stack{padding-inline:8px}.filter-stack>span{padding-inline:6px}.concept-visual-senses{padding-inline:8px}.sense-labels{font-size:0.8125rem;gap:12px}.concept-world-caption{font-size:0.8125rem}.concept-thought{gap:40px}}
@media(max-width:800px){.concept-heading{padding-top:30px}.concept-heading h1{letter-spacing:-1.8px}.concept-flow{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}.concept-stage:not(:last-child)::after{content:none}.concept-stage-button{position:relative}.concept-stage-index{position:absolute;top:19px;right:0;font-size:0.875rem}.concept-stage-title{padding-right:26px;font-size:1.4375rem}.concept-stage-kicker{min-height:0}.concept-stage-visual{height:200px}.experience-lens{width:145px}.sense-labels{font-size:0.875rem;gap:10px}.concept-visual-senses{padding-inline:20px}.concept-world-caption{font-size:0.875rem}.filter-stack{padding-inline:18px}.filter-stack>span{padding-inline:10px}.concept-feedback{max-width:100%;margin-top:28px}.concept-step-detail{grid-template-columns:1fr;gap:8px}.concept-thought{padding-block:70px;grid-template-columns:1fr;gap:30px}.concept-thought h2 br{display:none}.concept-preview-link{gap:32px}.concept-mini{font-size:0.875rem}.concept-preview-copy>p{font-size:1.0625rem}.interpretation{padding:25px}.interpretation-memory{min-height:5em}}
@media(max-width:620px){.header{height:auto;flex-wrap:wrap;padding-top:23px;padding-bottom:20px;gap:12px}.header nav{width:100%;gap:0 22px}.concept-heading{padding-bottom:28px}.concept-heading h1{font-size:2.6875rem}.concept-heading>p{font-size:1.125rem}.concept-preview-link{grid-template-columns:1fr;padding:28px}.concept-preview-copy h3{font-size:2.6875rem}.concept-mini{max-width:280px;margin-top:6px}.concept-preview-copy>p{max-width:none}.concept-flow{grid-template-columns:1fr;gap:30px}.concept-stage:not(:last-child)::after{content:'↓';right:50%;top:auto;bottom:-28px;font-size:1.25rem;line-height:1.2}.concept-stage-button{display:grid;grid-template-columns:1fr 1.3fr;grid-template-rows:auto 1fr;column-gap:16px;align-items:start;padding-top:18px}.concept-stage-index{position:static;grid-column:1;grid-row:1;font-size:0.875rem;margin:0 0 8px}.concept-stage-title{grid-column:1;grid-row:2;padding-right:0;font-size:1.375rem}.concept-stage-kicker{grid-column:1;grid-row:3;font-size:0.875rem;margin-top:8px;padding-bottom:8px}.concept-stage-visual{grid-column:2;grid-row:1 / 4;margin-top:0;height:190px}.concept-visual-senses{padding-inline:9px}.sense-labels{font-size:0.875rem;gap:10px}.concept-signals{width:26%}.filter-stack{padding-inline:8px}.filter-stack>span{font-size:0.875rem;padding-inline:7px;margin-left:0!important}.experience-lens{width:110px;box-shadow:0 0 0 7px #14192b,0 0 0 8px #4f416c}.experience-lens>span{font-size:1.375rem}.concept-world-caption{font-size:0.8125rem;padding-inline:6px;bottom:10px}.concept-world{margin-bottom:25px}.concept-step-detail{padding:20px}.concept-step-detail>p{min-height:0}.concept-thought{padding-block:60px}.concept-prose{font-size:1.25rem}.concept-comparison h2{font-size:2.375rem;letter-spacing:-1.4px}.concept-comparison h2 br{display:none}.shared-event{margin-top:35px;padding:22px}.shared-event>p{font-size:2.0625rem}.interpretation-split{display:none}.interpretations{grid-template-columns:1fr;gap:18px;margin-top:25px}.interpretation-memory,.interpretation-screen h3,.interpretation-screen>p{min-height:0}.interpretation-screen h3{font-size:1.9375rem}.interpretation-screen{margin-top:22px;padding-top:22px}.concept-context-button{width:100%}.revealed-context{padding:22px}.revealed-context>p:first-of-type{font-size:1.625rem}.concept-closing{padding-block:60px}.concept-sources{margin-top:45px}.concept-question{font-size:2rem}}
@media(prefers-reduced-motion:reduce){.concepts-page *,.concepts-page *::before,.concepts-page *::after{animation:none!important;transition:none!important}.concept-preview-link{transition:none}}

/* Let diagram text expand when visitors increase their text size. */
.concept-stage-visual{min-height:13rem;height:auto;overflow:visible}.concept-visual-world{padding-bottom:2rem}.concept-world-caption{bottom:.65rem}.concept-visual-senses{padding-block:1.2rem}.concept-visual-filters{padding-block:1rem}.concept-visual-experience{padding-block:1.5rem}.experience-lens{max-width:calc(100% - 24px);height:auto;min-height:110px;flex-shrink:0}.experience-lens>span{padding:10px 4px}.concept-stage-visual svg{flex-shrink:1}.concept-context-controls{flex-wrap:wrap}
@media(max-width:380px){.concept-stage-button{display:flex;gap:5px}.concept-stage-index{margin-bottom:5px}.concept-stage-kicker{margin-top:0}.concept-stage-visual{margin-top:10px;width:100%}.concept-world{max-width:180px}.sense-labels{max-width:140px}.concept-signals{max-width:100px}}

/* The growing collection of visual concepts. */
.concept-collection-nav{display:flex;flex-wrap:wrap;gap:8px 25px;border-block:1px solid var(--line);padding-block:13px;font-size:14px;line-height:1.5}.concept-collection-nav a{display:flex;align-items:center;gap:10px;padding:7px 0;color:#b8c5df}.concept-collection-nav a>span{color:#8ca9df;font-size:12px}.concept-collection-nav a[aria-current=page]{color:#fff;text-decoration:underline;text-underline-offset:5px}
.more-concepts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;margin-top:30px}.more-concepts>a{display:block;border-top:1px solid #65779d;padding:27px 0;position:relative}.more-concepts .concept-number{margin-bottom:17px}.more-concepts h3{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:30px;line-height:1.2;letter-spacing:-.6px;max-width:300px;padding-right:20px}.more-concepts p{color:#b3c1da;font-size:16px;line-height:1.65;margin-top:17px;max-width:350px}.more-concept-arrow{position:absolute;right:0;top:27px;color:var(--blue);font-size:22px}.more-concepts>a:hover h3{color:#adc5ff}
.concept-note-page .concept-heading>p{max-width:850px}.concept-note-page .concept-heading h1{font-size:clamp(40px,5vw,65px)}.concept-lab{padding-bottom:60px}.concept-scenario{border-left:2px solid #829fd9;padding:4px 0 4px 18px;margin-bottom:24px}.concept-scenario>span{font-size:14px;color:#a8b8d5}.concept-scenario>p{font-size:22px;line-height:1.45;margin-top:7px}.concept-mode-controls{display:flex;flex-wrap:wrap;gap:10px;margin:25px 0}.concept-mode-controls button{appearance:none;cursor:pointer;font:inherit;font-size:16px;line-height:1.5;border:1px solid #5e6f91;background:#101c33;color:#cbd6ed;padding:12px 22px;min-height:48px}.concept-mode-controls button[aria-pressed=true]{background:#d9e5ff;color:#102246;border-color:#d9e5ff}.concept-mode-controls button:focus-visible{outline:3px solid #9bbfff;outline-offset:5px}.concept-brain-note{display:flex;flex-wrap:wrap;gap:8px 16px;font-size:14px;line-height:1.65;color:#acbad7;margin-bottom:23px}.concept-brain-note strong{color:#d7c3f5;font-weight:500}
.concept-loop-nodes{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(var(--node-count),minmax(0,1fr));gap:30px}.concept-loop-nodes>li{padding:25px 23px;border-top:3px solid #bc98e3;background:#1f2039;position:relative;min-width:0;transition:background .25s,border-color .25s}.concept-loop-nodes>li:not(:last-child)::after{content:'→';position:absolute;right:-26px;top:50%;color:#b9bfda;font-size:25px;line-height:1}.loop-node-number{font-size:14px;color:#c1b2d7}.concept-loop-nodes h2{font:500 20px/1.35 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:0;margin-top:17px;overflow-wrap:anywhere}.concept-loop-nodes p{font:400 22px/1.4 Georgia,"Times New Roman",serif;color:#f0e9fc;margin-top:16px;min-height:5.6em}.concept-loop-outcome{font-size:16px;line-height:1.7;color:#bac8e5;margin-top:25px;border-bottom:1px solid #66789b;padding-bottom:20px}.concept-loop-outcome::before{content:'↶';font-size:24px;color:#a6c1f2;margin-right:12px}.concept-lab[data-observing=true] .concept-loop-nodes>li{background:#132b3b;border-color:#8acdd1}.concept-lab[data-observing=true] .loop-node-number{color:#98d7db}
.concept-note-prose{padding-block:70px}.concept-note-prose>.wrap{max-width:1000px}.concept-note-prose .concept-prose{color:#1c2a43;max-width:760px}.concept-note-question{font:400 clamp(30px,3.5vw,43px)/1.25 Georgia,"Times New Roman",serif;letter-spacing:-.6px;margin-top:40px;max-width:760px}.concept-evidence-note{font-size:15px;line-height:1.7;color:#4e5e77;border-top:1px solid #bec9dd;margin-top:40px;padding-top:23px;max-width:760px}.concept-readings{display:flex;flex-direction:column;gap:14px;margin-top:24px;max-width:760px}.concept-readings a{font-size:15px;line-height:1.65;color:#224da7;text-decoration:underline;text-underline-offset:4px}.concept-no-js{font-size:16px;line-height:1.7}.concept-no-js h2{font-size:25px;margin-top:25px}.concept-no-js p{margin-top:15px}
.library-personal-note{font-size:15px;line-height:1.65;color:#526078;padding-bottom:24px;margin-top:-7px;max-width:600px}.library-edition-note{font-size:14px;line-height:1.7;color:#526078;padding-top:25px;max-width:760px}.library-health-link{padding-bottom:38px}.library-health-link>a{flex-wrap:wrap;line-height:1.6}
.journal-evidence-note{margin-top:45px;padding:25px;border:1px solid #bcc8dc;background:#e5eaf3;font-size:16px;line-height:1.7;color:#374763}.journal-evidence-note h2{font:550 18px/1.5 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:0;margin-bottom:15px}.journal-evidence-note ul{padding-left:20px;margin:20px 0 0}.journal-evidence-note li+li{margin-top:10px}.journal-evidence-note a{text-decoration:underline;text-underline-offset:4px;color:#234c9a}
@media(max-width:1000px){.concept-loop-nodes{gap:20px}.concept-loop-nodes>li{padding:20px 16px}.concept-loop-nodes>li:not(:last-child)::after{right:-18px;font-size:20px}.concept-loop-nodes p{font-size:20px}.more-concepts{gap:23px}}
@media(max-width:800px){.concept-loop-nodes{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}.concept-loop-nodes>li:not(:last-child)::after{content:none}.concept-loop-nodes p{min-height:0}.more-concepts{grid-template-columns:1fr}.more-concepts h3,.more-concepts p{max-width:none}.more-concepts>a{padding-block:24px}.concept-note-prose{padding-block:55px}}
@media(max-width:540px){.concept-collection-nav{flex-direction:column;gap:0}.concept-collection-nav a{padding-block:8px}.concept-mode-controls{display:grid;grid-template-columns:1fr;width:100%}.concept-mode-controls button{text-align:left;padding:12px 16px}.concept-loop-nodes{grid-template-columns:1fr;gap:29px}.concept-loop-nodes>li{padding:22px}.concept-loop-nodes>li:not(:last-child)::after{content:'↓';right:50%;top:auto;bottom:-25px;font-size:21px}.concept-loop-nodes h2{margin-top:10px}.concept-loop-nodes p{margin-top:12px;font-size:23px}.concept-lab{padding-bottom:45px}.journal-evidence-note{padding:21px}.concept-note-page .concept-heading h1{font-size:42px}}
@media(prefers-reduced-motion:reduce){.concept-loop-nodes>li{transition:none}}

/* Pleasure, repetition and the point of enough. */
.pleasure-explorer{padding-bottom:70px;max-width:1180px}.pleasure-chart-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:27px}.pleasure-chart-heading h2{font:400 clamp(26px,3vw,36px)/1.25 Georgia,"Times New Roman",serif;letter-spacing:-.5px}.pleasure-chart-heading>span{font-size:14px;line-height:1.5;color:#aebddd}.pleasure-axis-title{font-size:15px;line-height:1.6;color:#c3d2ee;margin-bottom:12px}.pleasure-chart{display:grid;grid-template-columns:92px minmax(0,1fr);gap:2px}.pleasure-y-labels{position:relative;font-size:14px;line-height:1.2;color:#afc1e1}.pleasure-y-labels>span{position:absolute;top:13.3%;transform:translateY(-50%)}.pleasure-y-labels>span:nth-child(2){top:65%}.pleasure-y-labels>span:nth-child(3){top:86.7%;color:#e8b2ac}.pleasure-svg{display:block;width:100%;height:auto;overflow:visible}.pleasure-axis{stroke:#56698d;stroke-width:1;fill:none}.pleasure-zero{stroke:#a2b4d7;stroke-width:1;stroke-dasharray:5 6;fill:none}.pleasure-full-curve{stroke:url(#pleasure-colour);stroke-width:4;fill:none;opacity:.4}.pleasure-progress{stroke:#abcaff;stroke-width:4;fill:none;stroke-linecap:round}.pleasure-marker{fill:#b7d2ff;stroke:#080e1c;stroke-width:3}.pleasure-guide{stroke:#98b0dc;stroke-width:1;stroke-dasharray:4 5}.pleasure-svg path,.pleasure-svg line,.pleasure-svg circle{vector-effect:non-scaling-stroke}.pleasure-explorer[data-stage="3"] .pleasure-marker{fill:#ffada1}.pleasure-x-labels{display:flex;justify-content:space-between;gap:20px;padding-left:96px;font-size:14px;line-height:1.5;color:#c2d0e9;margin-top:2px}.pleasure-figure figcaption{font-size:14px;line-height:1.7;color:#9aaecf;margin-top:20px;max-width:800px}.pleasure-controls{margin-top:28px}.pleasure-controls[hidden]{display:none}.pleasure-controls>label{display:block;font-size:16px;line-height:1.5}.pleasure-controls input{display:block;accent-color:#a8c7ff;width:100%;height:42px;margin:10px 0 15px;cursor:pointer}.pleasure-controls input:focus-visible{outline:2px solid #b8d3ff;outline-offset:5px;border-radius:2px}.pleasure-stage-buttons{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.pleasure-stage-buttons button{cursor:pointer;text-align:left;padding:14px 16px;min-height:56px;background:#101c33;border:1px solid #576c94;color:#d8e4fa;font-weight:400;font-family:inherit;font-size:16px;line-height:1.4}.pleasure-stage-buttons button>span{display:block;font-size:14px;margin-bottom:8px;opacity:.7}.pleasure-stage-buttons button[aria-pressed=true]{background:#dbe7ff;border-color:#dbe7ff;color:#142440}.pleasure-stage-buttons button:focus-visible{outline:3px solid #a7c8ff;outline-offset:4px}.pleasure-result{display:grid;grid-template-columns:180px minmax(0,1fr);gap:25px;min-height:112px;align-items:start;padding-top:27px}.pleasure-result h3{font:400 27px/1.3 Georgia,"Times New Roman",serif;color:#b9d2ff}.pleasure-result p{font-size:18px;line-height:1.7;max-width:740px;color:#d0daf0}.pleasure-limit{font-size:15px;line-height:1.7;color:#aebfdb;max-width:820px;margin-top:18px}.pleasure-static{padding-left:24px;font-size:17px;line-height:1.7}.pleasure-static li{margin-top:15px}.pleasure-thought{padding-block:60px 80px}.pleasure-thought>.wrap{max-width:1050px}.pleasure-loop{display:flex;flex-wrap:wrap;align-items:center;gap:14px 18px;font-size:16px;line-height:1.6;border-block:1px solid #b7c5df;padding-block:24px;margin-bottom:48px;color:#283c62}.pleasure-loop b{font-weight:400;color:#5d729a;font-size:25px}.pleasure-thought .concept-prose{max-width:760px;color:#22324e}.pleasure-desire{margin-block:52px;max-width:760px}.pleasure-desire h2{font-size:clamp(36px,4vw,52px);line-height:1.15}.pleasure-desire>p:not(.eyebrow){font-size:20px;line-height:1.7;margin-top:23px;max-width:650px}.pleasure-desire>a{display:inline-block;margin-top:23px}.pleasure-reading{border-top:1px solid #b3c0d8;padding-top:22px;max-width:800px;font-size:16px;line-height:1.7;color:#334969}.pleasure-reading summary{cursor:pointer;font-size:17px;color:#233959}.pleasure-reading p{margin-top:20px}.pleasure-reading ul{padding-left:20px;margin-top:20px}.pleasure-reading li{margin-top:12px}.pleasure-reading a{text-decoration:underline;text-underline-offset:4px;color:#224da7}.more-concepts{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:700px){.pleasure-chart-heading{display:block}.pleasure-chart-heading>span{display:block;margin-top:12px}.pleasure-chart{grid-template-columns:78px minmax(0,1fr)}.pleasure-y-labels{font-size:14px}.pleasure-x-labels{padding-left:80px;gap:10px;font-size:14px}.pleasure-stage-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}.pleasure-result{grid-template-columns:1fr;gap:12px;min-height:165px}.pleasure-result p{font-size:17px}.pleasure-explorer{padding-bottom:45px}.pleasure-thought{padding-block:40px 55px}.pleasure-loop{gap:12px;font-size:15px}.more-concepts{grid-template-columns:1fr}}

/* The world outside and a person's experience within. */
.world-model-artwork{position:relative;isolation:isolate;min-width:0;background:#080e1c}.world-model-artwork>img{display:block;width:100%;height:auto;mask-image:linear-gradient(to bottom,transparent,#000 7%,#000 88%,transparent),linear-gradient(to right,transparent,#000 5%,#000 96%,transparent);mask-composite:intersect}.world-model-label{position:absolute;z-index:1;transform:translate(-50%,-50%);display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:7px 12px;border:1px solid #7f9cc77a;border-radius:5px;background:#0b162ad9;color:#dce8ff;font-family:inherit;font-size:clamp(14px,1.35vw,18px);font-weight:450;line-height:1.35;text-align:center;white-space:nowrap;box-shadow:0 4px 20px #02091466;backdrop-filter:blur(8px)}.world-model-world{left:18%;top:17%}.world-model-senses{left:43%;top:47%}.world-model-beliefs{left:64%;top:25%}.world-model-language{left:84%;top:18%}.world-model-memory{left:78%;top:60%}.world-model-experience{left:77%;top:51%;color:#ffe4b9;border-color:#cba96f88;background:#251d20e6}.world-model-me{position:absolute;left:74%;top:85%;font-family:Georgia,"Times New Roman",serif;font-size:clamp(22px,3vw,36px);color:#d6e4ff;font-style:italic}.world-model-interactive button{cursor:pointer;min-height:44px;transition:background .18s,border-color .18s,box-shadow .18s}.world-model-interactive button:hover{background:#203655;border-color:#c5d9ff}.world-model-interactive button[aria-pressed=true]{background:#e3eaff;color:#12203b;border-color:#fff;box-shadow:0 0 30px #a5bfff66}.world-model-interactive button:focus-visible{outline:3px solid #ddc3ff;outline-offset:5px}.person-explorer{max-width:1180px}.person-explorer .concept-instruction{font-size:15px;line-height:1.6;margin-bottom:8px}.person-explorer .concept-feedback{max-width:100%;margin-top:0;padding-top:16px;border-left:0;padding-left:0}.person-explorer .concept-step-detail{margin-top:22px}.person-explorer .concept-model-note{font-size:14px;line-height:1.6}.person-preview{grid-template-columns:.65fr 1.35fr;gap:20px;padding:30px 0;background:transparent;border:0;border-top:1px solid #405577;border-bottom:1px solid #405577}.person-preview .concept-preview-copy{padding:24px 0}.person-preview .world-model-label{font-size:14px;min-height:30px;padding:4px 7px}.person-preview .world-model-me{font-size:24px}.person-preview .world-model-senses{left:41%;top:48%}.person-preview .world-model-world{top:17%}.person-preview .world-model-memory{top:62%}
@media(max-width:960px){.person-preview{grid-template-columns:1fr;gap:5px;padding:24px 0 0}.person-preview .concept-preview-copy{padding:0 0 12px}.person-preview .concept-preview-copy h3{font-size:40px}.person-preview .concept-preview-copy h3 br{display:none}.person-preview .concept-preview-copy>p{max-width:650px}.person-preview .world-model-label{font-size:15px}.person-explorer .world-model-label{font-size:15px;min-height:40px;padding:6px 9px}}
@media(max-width:540px){.world-model-artwork{margin-inline:calc(-1 * var(--pad,24px))}.person-preview .world-model-artwork{margin-inline:0}.person-preview .world-model-label,.person-explorer .world-model-label{font-size:14px;padding:5px 7px;min-height:36px}.world-model-world{left:20%;top:15%}.world-model-senses,.person-preview .world-model-senses{left:38%;top:42%}.world-model-beliefs{left:64%;top:20%}.world-model-language{left:83%;top:9%}.world-model-memory,.person-preview .world-model-memory{left:79%;top:67%}.world-model-experience{left:79%;top:51%}.world-model-me{left:70%;top:87%;font-size:22px}.person-preview .world-model-label{font-size:14px;min-height:30px}.person-preview .world-model-world{left:23%;top:8%}.person-preview .world-model-beliefs{left:66%;top:24%}.person-preview .world-model-language{left:83%;top:8%}.person-preview .world-model-memory{left:76%;top:69%}.person-preview .world-model-experience{left:77%;top:50%}.person-preview .world-model-senses{left:36%;top:39%}.person-explorer .concept-step-detail{padding:20px}.person-preview .world-model-me{top:87%;font-size:22px}}
@media(prefers-reduced-motion:reduce){.world-model-interactive button{transition:none}}
.environment-drawing{display:block;width:104px;height:104px;max-width:100%;margin:22px 0 27px;color:#9cb0d0;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;overflow:visible;transition:color .35s ease}
.environment-drawing g{transform-box:fill-box;transform-origin:center;transition:transform .45s ease}
.environment-lab .concept-loop-nodes>li::after{display:none}
.environment-lab:not([data-observing=true]) .environment-object-a{transform:rotate(-12deg) translate(-2px,2px)}
.environment-lab:not([data-observing=true]) .environment-object-b{transform:translate(4px,-5px) rotate(14deg)}
.environment-lab[data-observing=true] .environment-drawing{color:#b2cfff}
.environment-lab[data-observing=true] .environment-drawing g{transform:translate(0,0) rotate(0deg)}
@media(prefers-reduced-motion:reduce){.environment-drawing,.environment-drawing g{transition:none}}

/* Awareness: one continuous scene, with attention moving through the experience. */
.awareness-page .concept-heading>p{max-width:800px}.awareness-explorer{max-width:1260px;padding-bottom:65px}.awareness-figure{margin:0}.awareness-scene{position:relative;isolation:isolate;overflow:hidden;aspect-ratio:3/2;background:var(--night)}.awareness-scene>img{display:block;width:100%;height:100%;object-fit:contain;mask-image:radial-gradient(ellipse 73% 72% at 50% 50%,#000 48%,transparent 100%)}.awareness-wash{position:absolute;inset:0;pointer-events:none;opacity:0;background:radial-gradient(ellipse at center,#bccfff16,transparent 72%);transition:opacity .65s ease}.awareness-contours{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;fill:none;stroke:#c5d7ff;stroke-width:1.2}.awareness-whole{stroke-dasharray:4 11;opacity:0;transition:opacity .65s ease}.awareness-continuity{stroke-width:1.5;stroke-dasharray:1100;stroke-dashoffset:1100;opacity:0;transition:stroke-dashoffset 1.5s ease,opacity .7s ease}.awareness-pin{position:absolute;display:flex;flex-direction:column;align-items:center;transform:translate(-50%,-50%);font-size:14px;line-height:1.5;color:#e0e8f9;white-space:nowrap;text-shadow:0 1px 8px #000;transition:color .4s ease}.awareness-pin::before{content:'';position:absolute;inset:-5px -9px 13px;background:#080e1ccc;z-index:-1;border:1px solid #7487a448;border-radius:3px;transition:border-color .4s ease}.awareness-pin>span{position:relative;width:6px;height:6px;border:1px solid #b9cfff;border-radius:50%;margin-top:14px;background:#1b2b47;box-shadow:0 0 0 0 #b8cdff00;transition:box-shadow .6s ease,background .4s ease}.awareness-pin>span::before{content:'';position:absolute;width:1px;height:10px;left:2px;bottom:8px;background:#b9cfff80}.awareness-pin-world{left:32%;top:43%}.awareness-pin-hand{left:57%;top:62%}.awareness-pin-body{left:81%;top:65%}.awareness-pin-thought{left:80%;top:19%}.awareness-field-label{position:absolute;left:8%;top:12%;font:400 clamp(17px,2.8vw,34px)/1.3 Georgia,"Times New Roman",serif;color:#dbe5ff;opacity:0;transform:translateY(8px);transition:opacity .65s ease,transform .65s ease;max-width:45%}
.awareness-explorer[data-attention=hand] .awareness-pin-hand,.awareness-explorer[data-attention=body] .awareness-pin-body,.awareness-explorer[data-attention=thought] .awareness-pin-thought,.awareness-explorer[data-attention=world] .awareness-pin-world{color:#fff}.awareness-explorer[data-attention=hand] .awareness-pin-hand>span,.awareness-explorer[data-attention=body] .awareness-pin-body>span,.awareness-explorer[data-attention=thought] .awareness-pin-thought>span,.awareness-explorer[data-attention=world] .awareness-pin-world>span{background:#e0eaff;box-shadow:0 0 0 12px #b8cdff28,0 0 0 24px #b8cdff12,0 0 24px 8px #b8cdff60}.awareness-explorer[data-attention=awareness] .awareness-wash,.awareness-explorer[data-attention=field] .awareness-wash{opacity:1}.awareness-explorer[data-attention=awareness] .awareness-whole{opacity:.7}.awareness-explorer[data-attention=awareness] .awareness-field-label,.awareness-explorer[data-attention=field] .awareness-field-label{opacity:1;transform:none}.awareness-explorer[data-attention=field] .awareness-continuity{opacity:.7;stroke-dashoffset:0}.awareness-explorer[data-attention=field] .awareness-pin>span{background:#d8e5ff;box-shadow:0 0 0 10px #b8cdff18,0 0 24px 6px #b8cdff50}
.awareness-figure figcaption,.awareness-ocean figcaption{font-size:14px;line-height:1.65;color:#a8b9d4;margin-top:12px}.awareness-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:25px}.awareness-controls[hidden]{display:none}.awareness-controls button{font-family:inherit;font-size:16px;line-height:1.5;text-align:left;min-height:55px;padding:14px 18px;display:flex;align-items:center;gap:14px;cursor:pointer;background:#101c33;border:1px solid #52678f;color:#d8e4fa}.awareness-controls button>span{font-size:12px;opacity:.8}.awareness-controls button:hover{border-color:#a6c2ff}.awareness-controls button[aria-pressed=true]{background:#dbe6ff;border-color:#dbe6ff;color:#14284d}.awareness-controls button:focus-visible{outline:3px solid #b8d3ff;outline-offset:4px}.awareness-result{margin-top:25px;padding:26px 0 0;border-top:1px solid #334561;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:30px;align-items:start;min-height:150px}.awareness-result h2{font:400 clamp(24px,2.7vw,34px)/1.25 Georgia,"Times New Roman",serif;letter-spacing:-.5px}.awareness-result>p{font-size:17px;line-height:1.75;color:#becee9;max-width:660px}.awareness-ocean{display:grid;grid-template-columns:1fr 1.25fr;align-items:center;gap:60px;padding-top:25px;padding-bottom:90px}.awareness-ocean .eyebrow{color:var(--blue);margin-bottom:24px}.awareness-ocean h2{font-size:clamp(38px,4.8vw,60px);letter-spacing:-1.5px}.awareness-ocean p:last-child{font-size:17px;line-height:1.75;color:#becee9;margin-top:24px;max-width:440px}.awareness-ocean figure{margin:0;min-width:0}.awareness-ocean svg{display:block;width:100%;height:auto}.awareness-ocean figcaption{text-align:center}.awareness-related{margin-top:36px;font-size:16px;line-height:1.6}.awareness-reading{max-width:780px;margin-top:40px;border-top:1px solid #bec9dd;padding-top:24px;font-size:15px;line-height:1.75;color:#4e5e77}.awareness-reading summary{cursor:pointer;color:#182d51;font-size:16px}.awareness-reading p,.awareness-reading ul{margin-top:18px}.awareness-reading ul{padding-left:20px}.awareness-reading li+li{margin-top:12px}.awareness-reading a{color:#224da7;text-decoration:underline;text-underline-offset:3px}.awareness-static{padding-left:25px;color:#c4d1e8;line-height:1.7}.awareness-static li{margin-top:24px}.awareness-static h3{font-size:20px;font-weight:500}.awareness-static p{margin-top:10px}
@media(max-width:800px){.awareness-ocean{gap:28px;grid-template-columns:1fr 1.1fr}.awareness-controls button{padding:12px;gap:8px;font-size:15px}.awareness-result{grid-template-columns:1fr;gap:14px;min-height:180px}.awareness-ocean h2{font-size:39px}.awareness-ocean p:last-child{font-size:16px}}
@media(max-width:540px){.awareness-page .concept-heading h1{font-size:43px}.awareness-page .concept-heading>p br{display:none}.awareness-scene{margin-inline:-14px;width:calc(100% + 28px)}.awareness-pin{font-size:12px}.awareness-pin::before{inset:-3px -5px 12px}.awareness-pin>span{margin-top:10px}.awareness-pin>span::before{height:6px}.awareness-pin-body{left:82%;top:80%}.awareness-pin-hand{left:54%;top:60%}.awareness-pin-thought{left:80%;top:21%}.awareness-field-label{left:9%;top:15%;max-width:45%;font-size:19px}.awareness-controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.awareness-controls button{font-size:14px;min-height:58px;padding:10px}.awareness-result{min-height:225px}.awareness-result>p{font-size:16px}.awareness-explorer{padding-bottom:25px}.awareness-ocean{grid-template-columns:1fr;gap:25px;padding-bottom:55px}.awareness-ocean svg{margin-bottom:-25px}.awareness-ocean svg g text{font-size:26px}.awareness-ocean .eyebrow{font-size:12px}.awareness-ocean h2 br{display:none}.awareness-ocean h2{font-size:37px}.awareness-ocean p:last-child{max-width:none}.awareness-figure figcaption{font-size:13px}}
@media(prefers-reduced-motion:reduce){.awareness-page *{transition:none!important}}

/* Decision pictures: reversibility, a branching recommendation, learning and bounded bets. */
.concept-browser{border-block:1px solid var(--line);margin-top:24px}.concept-browser summary{cursor:pointer;padding:17px 0;font-size:16px;color:#e1e8f9}.concept-browser summary>span{font-size:13px;color:#a4b4d0;margin-left:15px}.concept-browser .concept-collection-nav{margin:0;padding:8px 0 20px;border:0}.concept-browser summary:focus-visible{outline:2px solid #a6c2ff;outline-offset:5px}
.decision-page .concept-heading>p{max-width:840px}.decision-page .concept-heading h1{font-size:clamp(40px,5.2vw,68px)}.decision-explorer,.asymmetry-explorer{padding-bottom:65px;max-width:1180px}.decision-controls{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}.decision-controls[hidden]{display:none}.decision-controls button{cursor:pointer;min-height:50px;border:1px solid #566c94;color:#d4e2fa;background:#111d33;padding:12px 20px;font:400 16px/1.5 Arial,sans-serif}.decision-controls button[aria-pressed=true]{background:#dce7ff;color:#142644;border-color:#dce7ff}.decision-controls button:hover{border-color:#acc8ff}.decision-controls button:focus-visible{outline:3px solid #b9d1ff;outline-offset:4px}.decision-result{border-top:1px solid #33445f;padding-top:26px;margin-top:25px;display:grid;grid-template-columns:1fr 1.4fr;gap:30px;min-height:145px}.decision-result h2{font:400 clamp(25px,2.8vw,35px)/1.3 Georgia,serif;letter-spacing:-.5px}.decision-result>p{font-size:18px;line-height:1.7;color:#bdcde7}.decision-related{font-size:16px;line-height:1.6;margin-top:30px}.diagram-caption{font-size:14px;line-height:1.7;color:#acbdd8;margin-top:22px;max-width:850px}.decision-static{padding-left:24px}.decision-static li{margin-top:22px;line-height:1.7;color:#c4d3e9}.decision-static h3{font-weight:500;font-size:20px}.decision-static p{margin-top:8px}
.reversal-picture{margin:0}.reversal-picture>figcaption{font-size:18px;line-height:1.6;color:#c4d4ef;margin-bottom:35px}.reversal-rows{display:grid;gap:24px}.reversal-row{display:grid;grid-template-columns:100px minmax(0,1fr) 180px;align-items:center;gap:25px;padding:20px 0;opacity:.65;transition:opacity .3s}.reversal-row[data-selected=true]{opacity:1}.reversal-row>span{font:400 32px/1.25 Georgia,serif}.reversal-row>p{font-size:16px;line-height:1.5;color:#b4c5e2}.reversal-track{height:18px;background:#14213a;position:relative}.reversal-track>span{display:block;height:100%;background:#aac2fa;position:relative;min-width:20px}.reversal-track>span:after{content:'';position:absolute;right:0;top:-7px;width:2px;height:32px;background:#dde7ff}.reversal-row:first-child .reversal-track>span{background:#9bd6bd}.reversal-row:last-child .reversal-track>span{background:#e5ad9f}.reversal-row[data-selected=true] .reversal-track{box-shadow:0 0 0 1px #8ba4d345}
.coaching-problem{display:flex;align-items:center;gap:26px;padding:24px 0 32px;max-width:620px;margin:auto}.coaching-problem>span{font:400 75px/1 Georgia,serif;color:#a7c2ff}.coaching-problem small{font-size:14px;line-height:1.6;color:#aebed8}.coaching-problem h2{font-size:30px;letter-spacing:-.5px;line-height:1.3;margin-top:10px}.coaching-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;position:relative;padding-top:38px}.coaching-options:before{content:'';position:absolute;top:12px;left:16.5%;right:16.5%;border-top:1px solid #5a709b}.coaching-options>div{position:relative;border-top:2px solid #4b6084;padding:25px 18px 22px;background:#101a2b;transition:background .3s,border-color .3s}.coaching-options>div:before{content:'';height:26px;position:absolute;left:50%;top:-28px;border-left:1px solid #5a709b}.coaching-options>div>span{font-size:14px;color:#93abd5}.coaching-options h3{font:400 25px/1.3 Georgia,serif;margin-top:15px}.coaching-options p{font-size:16px;line-height:1.6;color:#b0c2df;margin-top:18px}.coaching-options [data-selected=true]{background:#1b2c49;border-color:#c2d5ff}.coaching-converge{display:flex;justify-content:center;align-items:center;gap:20px;font-size:16px;line-height:1.5;margin-top:27px;color:#b7caec}.coaching-converge>span:nth-child(2){font-size:26px;color:#86a9ec}
.principles-picture{display:grid;grid-template-columns:1fr;list-style:none;margin:0 auto;padding:0;max-width:780px}.principles-picture>li{display:flex;align-items:center;gap:25px;padding:22px 25px;margin-left:calc(var(--step,0)*20px);border-bottom:1px solid #344660;position:relative;transition:background .3s}.principles-picture>li:nth-child(2){--step:1}.principles-picture>li:nth-child(3){--step:2}.principles-picture>li:nth-child(4){--step:3}.principles-picture>li>span:first-child{font:400 40px/1 Georgia,serif;color:#91abda}.principles-picture h2{font:400 25px/1.35 Georgia,serif;letter-spacing:0}.principles-picture p{font-size:16px;line-height:1.5;color:#acbfdc;margin-top:5px}.principles-picture [data-selected=true]{background:#1a2944}.principles-line{height:2px;background:#7797ce;flex:1;margin-left:15px;max-width:160px;opacity:.4}.principles-picture [data-selected=true] .principles-line{opacity:1}
.vision-picture{margin:0 auto;max-width:660px}.vision-picture svg{display:block;width:100%;height:auto;overflow:visible}.vision-path{stroke:#52688b;stroke-width:1.5;fill:none}.vision-arrows{stroke:#9ab6e7;stroke-width:1.5;fill:none}.vision-centre text{font:400 27px Georgia,serif;text-anchor:middle;fill:#d8e4fa}.vision-picture [data-decision-node] rect{fill:#111f35;stroke:#5e789f;stroke-width:1;transition:fill .3s,stroke .3s}.vision-picture [data-decision-node] text{font:400 28px Arial,sans-serif;text-anchor:middle;fill:#bacfeb}.vision-picture [data-selected=true] rect{fill:#dce7ff;stroke:#dce7ff}.vision-picture [data-selected=true] text{fill:#122847}.vision-picture figcaption{text-align:center;font-size:14px;line-height:1.6;color:#9fb3d5;margin-top:8px}
@media(max-width:800px){.decision-result{grid-template-columns:1fr;gap:14px;min-height:180px}.reversal-row{grid-template-columns:82px minmax(0,1fr) 140px;gap:18px}.reversal-row>span{font-size:27px}.reversal-row>p{font-size:14px}.coaching-options{gap:12px}.coaching-options>div{padding:22px 15px}.coaching-options h3{font-size:22px}}
@media(max-width:620px){.reversal-row{grid-template-columns:80px minmax(0,1fr);gap:12px;padding-block:13px}.reversal-row>p{grid-column:2}.reversal-row>span{grid-row:1 / 3}.reversal-rows{gap:18px}.reversal-track{height:14px}.reversal-track>span:after{top:-5px;height:24px}.coaching-options{grid-template-columns:1fr;padding-top:0;gap:14px}.coaching-options:before,.coaching-options>div:before{content:none}.coaching-options>div{display:grid;grid-template-columns:25px 1fr;gap:8px 12px;padding:18px}.coaching-options h3{margin:0}.coaching-options p{grid-column:2;margin-top:3px}.coaching-problem{gap:20px}.coaching-problem h2{font-size:27px}.coaching-problem>span{font-size:64px}.principles-picture>li{padding:20px 14px;margin-left:calc(var(--step,0)*8px);gap:18px}.principles-picture h2{font-size:23px}.principles-picture p{font-size:14px}.principles-line{display:none}.decision-controls{gap:9px;display:grid;grid-template-columns:1fr 1fr}.decision-controls button{font-size:14px;padding:12px 10px}.decision-result>p{font-size:17px}.decision-page .concept-heading h1{font-size:40px}.vision-picture svg{margin-inline:-8px;width:calc(100% + 16px)}.decision-explorer,.asymmetry-explorer{padding-bottom:48px}}
@media(prefers-reduced-motion:reduce){.decision-page *{transition:none!important}}

/* Asymmetric bets: a bounded loss and an open-ended possible return. */
.asymmetry-figure{margin:0;border-block:1px solid #33445f;padding:32px 0 25px}.asymmetry-labels{display:grid;grid-template-columns:1fr 1fr;gap:35px}.asymmetry-labels h2{font:400 16px/1.5 Arial,sans-serif;letter-spacing:0;margin:0 0 9px}.asymmetry-labels p{font:400 clamp(25px,3.7vw,43px)/1.15 Georgia,serif;letter-spacing:-.6px;margin:0}.asymmetry-labels p>span{display:block;font:400 14px/1.6 Arial,sans-serif;letter-spacing:0;color:#b9c9df;margin-top:12px}.asymmetry-downside{color:#f0aca6}.asymmetry-upside{color:#a5ebce}.asymmetry-chart{position:relative;margin:8px 0 0}.asymmetry-chart svg{display:block;width:100%;height:auto;overflow:visible}.asymmetry-zero{position:absolute;left:0;top:59%;transform:translateY(-50%);font-size:14px;color:#bdcde7}.asymmetry-zero-line{fill:none;stroke:#52647f;stroke-width:1;stroke-dasharray:4 8}.asymmetry-floor-line{fill:none;stroke:#f0aca6;stroke-width:1;stroke-dasharray:3 10;opacity:.26}.asymmetry-floor-stop{fill:none;stroke:#f0aca6;stroke-width:4;stroke-linecap:round}.asymmetry-payoff{fill:none;stroke:url(#asymmetry-line);stroke-width:5;stroke-linecap:round}.asymmetry-flow{fill:none;stroke:#f2fff9;stroke-width:2;stroke-linecap:round;stroke-dasharray:4 115;animation:asymmetry-flow 14s linear infinite;opacity:.8}.asymmetry-arrow{fill:none;stroke:#a5ebce;stroke-width:5;stroke-linecap:round;stroke-linejoin:round}.asymmetry-axis{display:flex;justify-content:space-between;gap:20px;font-size:14px;line-height:1.5;margin-top:-12px;color:#aebfd9}.asymmetry-axis>span:first-child{color:#e3aaa5}.asymmetry-axis>span:last-child{text-align:right}.asymmetry-figure .diagram-caption{margin-top:28px;max-width:800px}@keyframes asymmetry-flow{to{stroke-dashoffset:-238}}@media(max-width:620px){.asymmetry-figure{padding-top:24px}.asymmetry-labels{gap:20px}.asymmetry-labels h2{font-size:14px}.asymmetry-labels p{font-size:25px;letter-spacing:-.4px}.asymmetry-labels p>span{font-size:14px}.asymmetry-chart{margin-top:25px}.asymmetry-axis{margin-top:2px;gap:14px}.asymmetry-payoff,.asymmetry-arrow{stroke-width:7}.asymmetry-floor-stop{stroke-width:6}.asymmetry-zero-line{stroke-width:2}.asymmetry-flow{stroke-width:3}}@media(prefers-reduced-motion:reduce){.asymmetry-flow{animation:none;display:none}}

.asymmetry-portfolio{padding:0 0 42px}.asymmetry-portfolio h2{font:400 clamp(26px,3vw,38px)/1.25 Georgia,serif;letter-spacing:-.5px;margin:0 0 18px}.asymmetry-portfolio>p{font-size:16px;line-height:1.7;max-width:850px;color:#c1cfe3}.asymmetry-bets{padding:0;list-style:none;display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:10px;margin:28px 0 14px}.asymmetry-bets li{display:flex;flex-direction:column;gap:13px;align-items:center;padding:15px 4px;border:1px solid #4d3946;background:#171321;color:#dcb4b5}.asymmetry-bets li>span{font-size:14px}.asymmetry-bets strong{font:400 20px/1.2 Arial,sans-serif;letter-spacing:0}.asymmetry-bets .asymmetry-winner{background:#15382f;border-color:#83cfb0;color:#c9ffe9}.asymmetry-outcomes{display:flex;justify-content:space-between;gap:15px;font-size:14px;line-height:1.5;color:#c9b8c6}.asymmetry-outcomes>span:last-child{color:#a5ebce;text-align:right}.asymmetry-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin:30px 0 20px;padding-top:24px;border-top:1px solid #33445f}.asymmetry-totals dt{font-size:14px;line-height:1.5;color:#bfcee2}.asymmetry-totals dd{font:400 clamp(23px,3vw,36px)/1.3 Georgia,serif;letter-spacing:-.4px;margin:9px 0 0}.asymmetry-totals>div:last-child dd{color:#a5ebce}.asymmetry-portfolio>.asymmetry-example-note{font-size:14px;color:#bdcde7}@media(max-width:620px){.asymmetry-bets{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.asymmetry-bets strong{font-size:18px}.asymmetry-totals{grid-template-columns:1fr;gap:19px}.asymmetry-totals>div{display:flex;align-items:center;justify-content:space-between;gap:18px}.asymmetry-totals dt{max-width:145px}.asymmetry-totals dd{font-size:26px;margin:0;white-space:nowrap}.asymmetry-outcomes{font-size:14px}.asymmetry-portfolio{padding-bottom:32px}}

/* Journal: native horizontal browsing, with a persistent reading toolbar. */
.journal-carousel{min-width:0}.journal-carousel-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc(100% - 34px);gap:18px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#9aa8bd transparent;padding-bottom:14px;position:relative}.journal-slide{min-width:0;scroll-snap-align:start;scroll-snap-stop:always;align-content:center;min-height:355px}.journal-slide h3{overflow-wrap:anywhere}.journal-slide blockquote{display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}.journal-step-controls{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;font:400 15px/1.2 Arial,sans-serif;letter-spacing:0}.journal-step-controls a,.journal-step-controls button,.journal-step-disabled{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:12px 17px;border:1px solid #a7b1c1;color:#17243a;background:transparent;border-radius:0;text-decoration:none;white-space:nowrap;font:inherit}.journal-step-controls>:first-child{justify-self:start}.journal-step-controls>:last-child{justify-self:end}.journal-step-controls a:hover,.journal-step-controls button:enabled:hover{background:#17243a;color:#fff}.journal-step-controls button{cursor:pointer}.journal-step-controls button:disabled,.journal-step-disabled{color:#697383;border-color:#d1d6df;cursor:default}.journal-position{color:#526078;font-size:13px;font-variant-numeric:tabular-nums;white-space:nowrap}.journal-carousel-controls{margin-top:14px}.journal-carousel-controls[hidden]{display:none}.journal-reader-nav{position:sticky;top:0;z-index:10;background:var(--paper);padding:12px 0;margin-bottom:38px;border-block:1px solid #c6ccda;box-shadow:0 8px 0 var(--paper)}.journal-article[data-journal-reader]{touch-action:pan-y pinch-zoom}.journal-article[data-journal-reader] .journal-back{margin-bottom:28px}
@media(max-width:800px){.journal-slide{min-height:390px;align-content:start}.journal-slide blockquote{font-size:25px}.journal-carousel-track{grid-auto-columns:calc(100% - 24px);gap:14px}}
@media(max-width:540px){.journal-carousel-track{grid-auto-columns:calc(100% - 18px);gap:12px}.journal-slide{min-height:390px;padding:25px;gap:23px}.journal-slide h3{font-size:31px}.journal-slide blockquote{font-size:21px;line-height:1.5;-webkit-line-clamp:5}.journal-step-controls{gap:10px;font-size:14px}.journal-step-controls a,.journal-step-controls button,.journal-step-disabled{gap:8px;padding:11px 12px;min-height:46px}.journal-reader-nav{margin-bottom:30px}.journal-carousel-controls{margin-top:10px}}
