/* One type family, a restrained hierarchy, and Fibonacci spacing. */
@font-face{font-family:Archivo;src:url('/assets/fonts/Archivo-VariableFont_wdth,wght.ttf') format('truetype');font-weight:100 900;font-stretch:62% 125%;font-display:swap}
:root{--font-sans:Archivo,Arial,sans-serif;--font-mono:var(--font-sans);--bg-color:#000000;--text-color:#f4f1e9;--subtle-color:#d1d0c7;--muted-color:#b0b3a6;--rule-color:#3a3f35;--s1:8px;--s2:13px;--s3:21px;--s4:34px;--s5:55px;--s6:89px;--s7:144px;--gutter:clamp(21px,5vw,55px)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-padding-top:34px}
body.home,body.roster{margin:0;background:var(--bg-color);color:var(--text-color);font-family:var(--font-sans);font-size:18px;font-weight:400;font-stretch:100%;font-variation-settings:'wdth' 100;line-height:1.618;-webkit-font-smoothing:antialiased;display:block;overflow-x:visible}
a{color:inherit;text-underline-offset:.25em;text-decoration-thickness:1px}
a:hover{opacity:.8}
a:focus-visible{outline:2px solid currentColor;outline-offset:5px}
::selection{background:#d6dec4;color:#000000}
.home .cap,.home .roster-nav,.home .statement-block,.home .pillars,.home .who,.home .pitch,.home .contact,.home .base{width:100%;max-width:987px;margin-inline:auto;padding-inline:var(--gutter)}
.home .cap{padding-top:34px;display:grid;gap:34px}
.telemetry-bar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:13px;font-size:13px;color:var(--muted-color)}
.glyph-badge{display:flex;align-items:center;gap:13px}
.glyph-box{width:34px;height:34px}
.glyph-box svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:3}
.home .mark{width:min(100%,610px);display:grid;gap:8px;padding:0}
.home .mark svg{width:100%;height:auto;display:block;overflow:visible}
.home .mark text{font-family:var(--font-sans);font-weight:700;fill:var(--text-color);font-variation-settings:'wdth' 100,'wght' 700;letter-spacing:-.02em}
.home h1,.home h2,.home h3,.roster .roster-main h1,.roster .roster-main h2,.roster .roster-main h3{font-family:var(--font-sans);font-weight:600;font-stretch:100%;font-variation-settings:'wdth' 100,'wght' 600;letter-spacing:-.025em;text-transform:none;text-wrap:balance;line-height:1.18}
.home h1.subtitle-bar{font-size:clamp(34px,4vw,55px);margin:0;max-width:21ch}
.home .roster-nav{display:flex;gap:34px;border:0;padding-top:21px;padding-bottom:21px;font-size:18px;font-weight:500;letter-spacing:0;text-transform:none}
.home .roster-nav a{display:inline-flex;align-items:center;gap:13px;min-height:44px;padding:0;border:0;box-shadow:none;background:none;color:var(--text-color);text-decoration:none}
.home .nav-arrow{font-size:18px}
.home .statement-block{padding-top:21px;padding-bottom:55px}
.home .statement-text{max-width:55ch;font-size:21px;line-height:1.618;margin:0;color:var(--subtle-color)}
.home .pillars,.home .who,.home .pitch,.home .contact{padding-top:55px;padding-bottom:34px}
.home .rule{height:1px;background:var(--rule-color);margin-bottom:34px}
.home .vectors-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 55px}
.home .vector-node{display:flex;flex-direction:column;gap:13px;min-width:0}
.home .vector-head,.home .eyebrow{font:500 13px/1.618 var(--font-sans);letter-spacing:0;text-transform:none;color:var(--muted-color)}
.home .vector-label{font-size:21px;line-height:1.3;font-weight:600;font-stretch:100%;font-variation-settings:'wdth' 100,'wght' 600;letter-spacing:-.015em;text-transform:none;margin:0}
.home .vector-body,.home .who-body p{font-size:18px;line-height:1.618;color:var(--subtle-color);letter-spacing:0;margin:0;max-width:55ch}
.home .who-grid{display:block}
.home .who-label,.home .pitch-head{display:grid;gap:13px;margin-bottom:34px}
.home .who-title,.home .pitch-title h2{font-size:clamp(34px,4vw,55px);margin:0;max-width:21ch}
.home .pitch-title{max-width:none;container-type:normal}
.home .pitch-title h2 span{display:inline;white-space:normal}
.home .who-body{display:flex;flex-direction:column;gap:21px;max-width:610px}
.home .pitch-body{margin:0;grid-column:auto}
.home .who-body .who-lead{font-size:21px;line-height:1.618;color:var(--text-color);letter-spacing:-.01em}
.home .terms{list-style:none;margin:13px 0 0;padding:0}
.home .terms li{border-top:1px solid var(--rule-color);padding:34px 0;gap:13px}
.home .terms li:last-child{padding-bottom:0}
.home .who-body .pitch-close,.home .contact .pitch-close{border-top:0;padding-top:13px;margin:0;font-size:21px;font-weight:500;font-stretch:100%;font-variation-settings:'wdth' 100,'wght' 500;line-height:1.618;letter-spacing:0;text-transform:none}
.home .pitch-close span{display:block}
.home .contact{margin-top:34px;border-top:1px solid var(--rule-color);display:grid;gap:21px}
.home .contact>p{margin:0;max-width:55ch;font-size:21px}
.home .contact a{display:inline-block;padding-block:13px}
.home .base{padding-top:55px;padding-bottom:34px}
.home .quadrants{display:grid;grid-template-columns:1fr;gap:21px}
.home .terminal,.home .secondary{font:400 13px/1.618 var(--font-sans);text-transform:none;letter-spacing:0;color:var(--muted-color);max-width:55ch;text-align:left;margin:0}
.home .status-dot{display:none}
/* Carry the same reading rhythm through the roster. */
.roster .roster-main{max-width:987px;margin:auto;padding:55px var(--gutter) 89px}
.roster .roster-main h1{font-size:clamp(55px,8vw,89px);line-height:1.05;margin:34px 0 55px}
.roster .roster-main h2{font-size:clamp(26px,4vw,34px)}
.roster .roster-intro p,.roster .entry-detail,.roster .profile-grid p{font-size:18px;line-height:1.618;letter-spacing:0;max-width:55ch}
.roster .entry-num,.roster .entry-meta,.roster .eyebrow,.roster .data-label,.roster .entry-link{font-family:var(--font-sans);font-size:13px;letter-spacing:0;text-transform:none}
.roster .data-value{font-family:var(--font-sans);font-size:13px;overflow-wrap:anywhere}
.roster .profile-grid{gap:34px;padding-top:21px}
.roster .profile-grid h2{margin:13px 0 21px}
@media(min-width:900px){.home .pillars,.home .who,.home .pitch,.home .contact{padding-top:89px;padding-bottom:34px}}
@media(max-width:600px){.home .vectors-grid{grid-template-columns:1fr;gap:34px}.home .cap{gap:21px}.home .telemetry-bar{align-items:flex-start}.home .telemetry-bar>div:last-child{font-size:13px}.home .mark{max-width:377px}.home .statement-text{font-size:18px}.home .contact>p{font-size:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Keep the original full-width, expanded monolith as the brand anchor. */
.home .cap{max-width:none;padding-inline:clamp(20px,3.2vw,56px)}
.home .mark{width:100%;max-width:none;gap:clamp(2px,.5vw,8px)}
.home .mark text{font-weight:900;font-stretch:125%;font-variation-settings:'wdth' 125,'wght' 900}
.home .mark .ltr{transform-box:fill-box;will-change:transform,opacity}
/* Shared navigation and contact, following the same spacing rhythm. */
.site-nav{width:100%;max-width:987px;margin:21px auto 0;padding:13px var(--gutter);display:flex;flex-wrap:wrap;align-items:center;gap:8px 21px;font:500 16px/1.618 var(--font-sans);border-block:1px solid var(--rule-color)}
.site-nav a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none}
.site-nav a[aria-current=page]{text-decoration:underline;text-underline-offset:8px}
.site-nav .begin-link{margin-left:auto}
.glyph-box{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;text-decoration:none}
.contact-header{max-width:987px;margin:0 auto;padding:34px var(--gutter) 13px;display:flex;gap:13px;align-items:center}
.contact-main{max-width:987px;margin:auto;padding:55px var(--gutter)}
.contact-main h1{font-size:clamp(34px,5vw,55px);margin:0 0 34px}
.contact-main p{max-width:55ch;color:var(--subtle-color);margin:0 0 21px;overflow-wrap:anywhere}
.contact-main .email-link{font-size:clamp(16px,2.5vw,21px);color:var(--text-color)}
.intake{max-width:610px;margin-top:55px;padding-top:34px;border-top:1px solid var(--rule-color)}
.intake h2{font-size:34px;margin:0 0 21px}
.intake form{display:grid;gap:13px}
.intake label{margin-top:13px;font-size:18px}
.intake label span{color:var(--muted-color);font-size:13px}
.intake input,.intake select,.intake textarea,.intake button{font:inherit;color:var(--text-color);background:var(--bg-color);border:1px solid var(--muted-color);border-radius:5px;padding:13px;width:100%;min-width:0;min-height:48px}
.intake textarea{resize:vertical}
.intake button{margin-top:21px;width:fit-content;padding-inline:21px;cursor:pointer;background:var(--text-color);color:var(--bg-color);font-weight:600}
.intake :is(input,select,textarea,button):focus-visible{outline:2px solid var(--text-color);outline-offset:3px}
.intake #intake-status{font-size:16px;margin-top:8px}
@media(max-width:375px){.site-nav{gap:8px 13px;font-size:15px}}
/* Give the homepage opening distinct pauses between each reading level. */
.home .cap{row-gap:clamp(55px,6vw,89px)}
.home .cap + .site-nav{margin-top:clamp(55px,6vw,89px);padding-block:21px}
.home .cap ~ .statement-block{padding-top:clamp(55px,6vw,89px)}
/* Founder narrative: the same type family and Fibonacci reading rhythm. */
.founder-main{max-width:987px;margin:auto;padding:55px var(--gutter) 34px}
.founder-main h1{font-size:clamp(30px,4.8vw,55px);margin:13px 0 34px;overflow-wrap:anywhere}
.founder-main h2{font-size:clamp(26px,3.4vw,34px);margin:0 0 21px}
.founder-main p{max-width:55ch;color:var(--subtle-color);margin:0 0 21px}
.founder-main .founder-lead{font-size:21px;color:var(--text-color)}
.founder-main section{max-width:610px;margin-top:55px;padding-top:34px;border-top:1px solid var(--rule-color)}
.founder-principles{max-width:610px;margin:34px 0 0}
.founder-principles>div{margin-top:21px}
.founder-principles dt{font-weight:600;color:var(--text-color)}
.founder-principles dd{margin:8px 0 0;color:var(--subtle-color)}
@media(max-width:600px){.site-nav{column-gap:13px;font-size:15px}}
/* Material-style page outline: current location and direct section jumps. */
html{scroll-padding-top:var(--outline-offset,34px)}
.page-outline{max-width:987px;margin:21px auto;padding:13px var(--gutter);background:var(--bg-color);color:var(--subtle-color);border-bottom:1px solid var(--rule-color);z-index:20;font-family:var(--font-sans)}
.page-outline-title{font-size:13px;font-weight:500;margin:0 0 13px;color:var(--muted-color)}
.page-outline ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px 13px}
.page-outline a{display:block;padding:8px 13px;border:1px solid transparent;border-radius:21px;font-size:14px;line-height:1.5;text-decoration:none;color:var(--subtle-color)}
.page-outline a[aria-current=location]{border-color:var(--muted-color);color:var(--text-color);font-weight:600}
.page-outline .page-outline-mobile{display:none}
@media(max-width:1439px){
 .page-outline.is-enhanced{position:sticky;top:0;display:flex;align-items:center;gap:13px;margin-bottom:0}
 .page-outline.is-enhanced .page-outline-title,.page-outline.is-enhanced ol{display:none}
 .page-outline.is-enhanced .page-outline-mobile{display:block}
 .page-outline label{font-size:13px;color:var(--muted-color);flex-shrink:0}
 .page-outline select{font:500 15px/1.5 var(--font-sans);color:var(--text-color);background:var(--bg-color);border:1px solid var(--rule-color);border-radius:8px;padding:8px;min-height:44px;min-width:0;width:100%;text-overflow:ellipsis}
 .page-outline select:focus-visible{outline:2px solid var(--text-color);outline-offset:3px}
}
@media(min-width:1440px){
 .page-outline{position:fixed;top:89px;right:21px;width:min(210px,calc((100vw - 987px)/2 - 42px));padding:0;margin:0;max-height:calc(100vh - 178px);overflow-y:auto;border:0}
 .page-outline.is-enhanced{visibility:hidden;opacity:0;pointer-events:none}
 .page-outline.is-in-reading-area{visibility:visible;opacity:1;pointer-events:auto}
 .page-outline ol{display:block}
 .page-outline li+li{margin-top:8px}
 .page-outline a{padding:13px;font-size:15px}
}
.founder-portrait{width:100%;max-width:377px;margin:0;padding:8px 8px 13px;border:1px solid var(--rule-color);border-radius:21px;background:var(--bg-color)}
.founder-portrait-crop{aspect-ratio:1;overflow:hidden;border-radius:13px}
.founder-portrait img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 0;transform:scale(1.12);transform-origin:50% 20%}
.founder-portrait figcaption{margin-top:13px;padding-inline:5px;font-size:13px;line-height:1.618;color:var(--muted-color);text-align:center}

/* Compose the portrait and biography as one editorial introduction. */
.founder-layout{display:flex;flex-direction:column;gap:34px;align-items:stretch}
.founder-layout .founder-portrait{align-self:center;max-width:320px}
.founder-intro-copy p:last-child{margin-bottom:0}
@media(min-width:900px){
 .founder-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:55px;align-items:center}
 .founder-layout .founder-portrait{grid-column:2;grid-row:1;max-width:377px;justify-self:end}
 .founder-intro-copy{grid-column:1;grid-row:1;min-width:0}
}

/* The divider below the portrait spans the full introductory composition. */
.founder-main #founder-work{max-width:none}

/* A native full-viewport opening; studio identity follows on scroll. */
.home .cap{min-height:100vh;min-height:100svh;padding-block:34px;place-items:center;row-gap:0}
.home .cap .mark{width:min(100%,calc((100vh - 68px)*2.3));width:min(100%,calc((100svh - 68px)*2.3));margin-inline:auto}
