/* Quantitative Relations — Maison layer. Restraint over effect: serif display, small caps, champagne hairlines, quieter light. */
:root{--ivory:#ECEEF5;--hair2:rgba(213,216,232,.16);--serif:'Cormorant Garamond','Libre Baskerville',Georgia,serif;--sans:'DM Sans',system-ui,sans-serif;--num:var(--mono)}
body{font-family:var(--sans)}
::selection{background:rgba(197,160,68,.28);color:#fff}
a{color:var(--text)}a:hover{color:var(--gold-hi)}
html{scrollbar-color:#2A2F3B transparent;scrollbar-width:thin}
body{letter-spacing:.003em}

/* Atmosphere: present, never loud */

/* Chrome */
.nav-logo{font-size:12.5px;letter-spacing:.36em;color:var(--ivory)}
.nav-r{gap:40px}
.nav-link{font-family:var(--sans);font-size:10px;font-weight:400;letter-spacing:.28em;text-transform:uppercase;color:var(--mid)}
.nav-link:hover{color:var(--ivory)}

/* Hero terminal — quieter keys, ivory cursor */

/* Section index — numeral, hairline, name */
.sec-idx{gap:0;align-items:center;padding-top:30px;font-family:var(--sans);text-transform:uppercase}
.sec-idx::before{width:32px;height:1px;top:-1px}
.sec-idx b{font-family:var(--num);font-weight:400;font-size:13px;letter-spacing:.2em;color:var(--gold-hi)}
.sec-idx b::after{content:'';display:inline-block;width:28px;height:1px;margin:0 18px;vertical-align:middle;background:var(--hair2)}
.sec-idx span{font-size:10px;letter-spacing:.36em;color:var(--mid)}

/* Reading */
.engine-lede,.ev-note,.portal .dsh-lede,.sx-l .dsh-lede{font-size:16px;line-height:1.8;color:var(--body)}
.dsh-lede .lead,.sx-l .dsh-lede .lead,.sx-sec p .lead{color:var(--ivory);font-weight:400}

/* Founder quote */
.strat-quote{border-left:1px solid var(--hair2)}
.strat-quote::before{background:var(--gold);height:34px}
.strat-quote blockquote{font-size:clamp(20px,1.6vw,24px)!important;line-height:1.45}
.strat-quote figcaption{font-family:var(--sans);font-size:9.5px!important;letter-spacing:.3em;white-space:nowrap;flex-wrap:wrap}
.sq-name{color:var(--ivory)}

/* Strategy chapters — text tabs on a hairline */
.sx-nav{align-items:flex-end;border-bottom:1px solid var(--hair);margin-bottom:44px!important;padding-bottom:0}
.sx-tabs{gap:0 34px!important}
.sx-tabs button{position:relative;border:0!important;background:none!important;padding:0 0 18px!important;font-family:var(--sans)!important;font-size:10.5px!important;letter-spacing:.26em;text-transform:uppercase;color:var(--mid)!important}
.sx-tabs button b{font-family:var(--num)!important;font-size:11px!important;letter-spacing:.06em;color:#4E5463!important;margin-right:2px}
.sx-tabs button::after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .6s cubic-bezier(.16,1,.3,1)}
.sx-tabs button:hover{color:var(--text)!important}
.sx-tabs button.on{color:var(--ivory)!important}.sx-tabs button.on b{color:var(--gold-hi)!important}
.sx-tabs button.on::after{transform:scaleX(1)}
.sx-nav .ec-arrows{padding-bottom:12px}
.sx-sec{border-top:0!important;padding-top:0!important}
.sx-sec>header{display:block!important;margin-bottom:28px!important}
.sx-sec>header .rn,.sx-sec>header .tag{display:none}
.sx-sec h3{font-family:var(--brand)!important;font-weight:400!important;font-size:clamp(26px,2.3vw,36px)!important;line-height:1.15;letter-spacing:-.015em;color:var(--ivory)!important}
.sx-sec p{font-size:15.5px!important;line-height:1.85!important;max-width:600px}
.sx-cta,.sx-count{font-family:var(--sans)!important;letter-spacing:.3em!important}
.sx-cta{font-size:10px!important;color:var(--gold-hi)!important;padding-bottom:6px;border-bottom:1px solid rgba(197,160,68,.35)}
.sx-count{margin-top:40px;font-size:9.5px;color:var(--mid)}
.sx-count b{font-family:var(--num);font-weight:400;font-size:12px;letter-spacing:.1em;color:var(--ivory)}

/* Round hairline controls */
.ec-arrows button,.ev-arrow{border-radius:50%!important;border:1px solid var(--hair2)!important;color:var(--mid)!important;font-family:var(--sans)!important;font-size:13px!important;transition:border-color .3s,color .3s,background .3s}
.ec-arrows button:hover,.ev-arrow:hover{border-color:rgba(197,160,68,.55)!important;color:var(--ivory)!important;background:rgba(197,160,68,.04)}

/* Engine */
.arch-link{white-space:nowrap;font-family:var(--sans)!important;font-size:10px!important;letter-spacing:.3em!important;color:var(--gold-hi)!important;border-bottom:1px solid rgba(197,160,68,.35)!important}
.ec-body{color:var(--body)!important;line-height:1.85!important}

.ec-rail button{font-family:var(--num)!important;font-size:10px!important;letter-spacing:.14em!important;color:#4E5463!important}
.ec-rail button::after{height:1px!important;background:var(--hair2)!important}
.ec-rail button:hover,.ec-rail button.on{color:var(--ivory)!important}
.ec-rail button.on::after{background:var(--blue)!important}.ec-rail button.out.on::after{background:rgb(232,76,62)!important}
.ec-hud{font-family:var(--sans);letter-spacing:.3em;font-size:9.5px}
.ec-hud b{font-family:var(--num);font-size:13px;letter-spacing:.1em}

/* Terminal */
.dsh-cap{font-family:var(--sans)!important;letter-spacing:.3em!important;font-size:9px!important}
.bp-list .row-x,.bp-list .grp-x{pointer-events:none!important;cursor:default!important}
.bp-list .row-x::before,.bp-list .row-x::after{display:none!important}

/* Metrics */
.ev-card{background:rgba(8,10,15,.5)!important;border:1px solid var(--hair)!important}
.ev-card::before{display:none!important}
.evc-top{font-family:var(--sans)!important;letter-spacing:.28em!important;font-size:9px!important;border-bottom:1px solid var(--hair)!important}
.evc-id{font-family:var(--num);font-size:10px;letter-spacing:.2em;color:var(--gold-hi)!important}
.evc-sub{color:var(--body)!important;font-size:13px!important;line-height:1.7!important}
.evc-stats{border-top:1px solid var(--hair)!important}
.evc-stats dt{font-family:var(--sans)!important;letter-spacing:.24em!important;color:var(--mid)!important}
.evc-stats dd{font-family:var(--num)!important;font-size:15px!important;color:var(--ivory)!important}
.evc-src{font-family:var(--sans)!important;letter-spacing:.2em!important;opacity:.6!important}
.ev-nav{font-family:var(--sans)!important;letter-spacing:.3em!important}
.ev-count b{font-family:var(--num);font-weight:400;font-size:12px;letter-spacing:.1em;color:var(--ivory)}

/* Questions */
.qa-sub{white-space:nowrap;font-family:var(--sans)!important;letter-spacing:.34em!important;font-size:9.5px!important;color:var(--mid)!important}
.qa-grid{border-top:1px solid var(--hair2)!important;column-gap:88px!important}
.qa-item{padding:34px 0 36px!important;border-bottom:1px solid var(--hair)!important;grid-template-columns:44px minmax(0,1fr)!important}
.qa-item i{font-family:var(--num)!important;font-size:11px!important;letter-spacing:.1em!important;color:var(--gold-hi)!important;padding-top:2px!important}
.qa-item h3{font-family:var(--brand)!important;font-weight:400!important;font-size:20px!important;line-height:1.3!important;color:var(--ivory)!important;margin-bottom:14px!important}
.qa-item p{color:var(--body)!important;font-size:14.5px!important;line-height:1.85!important}

/* Correspondence */
.access-copy h3{font-family:var(--serif)!important;font-weight:300!important;font-style:italic;font-size:clamp(28px,2.4vw,36px)!important;line-height:1.25!important;color:var(--ivory)!important}
.access-terms li{border-bottom:1px solid var(--hair)!important;padding:14px 0!important;font-size:13.5px!important;color:var(--body)!important;gap:16px!important}
.access-terms li::before{width:14px!important;height:1px!important;background:var(--gold)!important;transform:none!important;align-self:center}
.form-group{margin-bottom:22px!important}
.form-group label{font-family:var(--sans);font-size:9px!important;letter-spacing:.32em!important;font-weight:400!important;color:var(--mid)!important;margin-bottom:4px!important}
.form-group input,.form-group select,.form-group textarea{background:transparent!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;border:0!important;border-bottom:1px solid var(--hair2)!important;border-radius:0!important;padding:12px 0!important;font-size:15px!important;color:var(--ivory)!important;transition:border-color .4s}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-bottom-color:rgba(197,160,68,.6)!important}
.form-group input::placeholder,.form-group textarea::placeholder{color:#454B59!important}
.form-group textarea{min-height:96px}
.form-row{gap:28px!important}
.btn-submit{margin-top:18px!important;padding:19px!important;background:transparent!important;color:var(--ivory)!important;border:1px solid rgba(197,160,68,.45)!important;font-family:var(--sans)!important;font-size:10px!important;font-weight:400!important;letter-spacing:.42em!important;transition:background .4s,border-color .4s!important}
.btn-submit:hover{background:rgba(197,160,68,.07)!important;border-color:var(--gold)!important}
.form-disclaimer{font-size:12px!important;color:var(--mid)!important;text-align:center;margin-top:18px!important}
.form-success{background:transparent!important;border:1px solid var(--hair2)!important}
.form-success h4{font-family:var(--brand)!important;font-weight:400!important;font-size:26px!important;color:var(--ivory)!important}

/* Hero light — the faintest cool key from above */
.hero>.hero-light{position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse 60% 46% at 50% -8%,rgba(120,150,230,.075),rgba(120,150,230,.02) 50%,transparent 76%);-webkit-mask-image:linear-gradient(180deg,#000 70%,transparent);mask-image:linear-gradient(180deg,#000 70%,transparent)}
.hero-light i{display:none}

/* Footer */
footer{padding-top:64px!important;padding-bottom:64px!important;border-top:1px solid var(--hair)!important}
.footer-logo{font-size:12px!important;letter-spacing:.38em!important;color:var(--text)!important}
.footer-r{font-family:var(--sans);font-size:10px!important;letter-spacing:.2em!important;color:var(--mid)!important}
.footer-r a:hover{color:var(--gold-hi)!important}

/* Engine — what each stage works on */
.ec-keys{list-style:none;margin:0;padding:16px 0 0;border-top:1px solid var(--hair);display:flex;flex-direction:column;gap:11px;font-family:var(--sans);font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:var(--text)}
.ec-keys li{display:flex;align-items:center}
.ec-keys li::before{content:'';flex:none;width:3px;height:3px;margin-right:16px;background:var(--gold);transform:rotate(45deg)}
.ec-panel.out .ec-keys li::before{background:rgb(232,76,62)}
