:root{color-scheme:dark;--white:#f5f7fc;--line:rgba(235,246,255,.42);--ice:#d4e9ff;--muted:#d7e1ed;--gutter:clamp(24px,5.55vw,100px);--navigation-size:1.125rem;font-family:Arial,Helvetica,sans-serif;font-synthesis:none;font-weight:400;color:var(--white);background:#091525}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:24px}
body{margin:0}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;cursor:pointer}
a,button{touch-action:manipulation}
button,a,summary{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid white;outline-offset:7px}
::selection{background:#e8f4ff;color:#112244}
p{font-size:1.0625rem;line-height:1.65}
figure{margin:0}
.skip-link{position:fixed;top:-100px;left:20px;z-index:40;background:#07172e;padding:14px 20px}
.skip-link:focus{top:12px}
.scene{position:fixed;inset:0;z-index:-1;overflow:hidden;background:#071221;pointer-events:none;contain:strict}
.scene video{width:100%;height:100%;display:block;object-fit:contain;object-position:center;opacity:1;filter:none;transform:none}
.scene canvas{position:absolute;inset:0;width:100%;height:100%;display:block;opacity:1}
.scene [hidden]{display:none}

/* The blue Knight is the standalone Home logo. */
.logo-knight{display:flex;align-items:center;justify-content:center;flex:none;width:62px;height:98px}
.logo-knight img{display:block;width:100%;height:100%;object-fit:contain}
/* Anchored to the document top: the header scrolls away with the page. */
.masthead{position:absolute;top:0;right:0;left:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:132px;padding:16px var(--gutter);background:transparent;transform:none;transition:none;text-shadow:0 1px 9px #071426,0 0 3px #071426}
/* One translucent glass band unifies the knight and navigation frames. */
.masthead{background:linear-gradient(110deg,rgba(12,30,51,.42),rgba(27,53,79,.2) 55%,rgba(12,30,51,.34));border-bottom:1px solid rgba(178,216,255,.3);box-shadow:inset 0 1px 0 rgba(218,238,255,.1),0 10px 28px rgba(0,10,25,.12);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.brand{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;flex-shrink:0}
/* Navigation and both footer lines share the same typography at every size. */
.navigation,.footer{font-family:Arial,Helvetica,sans-serif;font-size:var(--navigation-size);font-weight:400;letter-spacing:0;color:var(--ice)}
/* Alternating translucent tiles echo the light and dark squares of the board. */
.navigation{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-left:auto;white-space:nowrap;font-size:clamp(1.125rem,1.35vw,1.3125rem)}
.navigation a{display:flex;align-items:center;justify-content:center;position:relative;min-height:68px;padding:0 clamp(14px,1.5vw,24px);border:1px solid rgba(191,220,250,.42);border-radius:0;background:rgba(7,23,43,.2);font:inherit;line-height:1.2;letter-spacing:.015em;transition:border-color .2s,background-color .2s,color .2s,box-shadow .2s}
.navigation a:nth-of-type(even){background:rgba(181,215,247,.1);border-color:rgba(210,231,252,.5)}
.navigation a:after{content:"";position:absolute;width:22px;height:2px;left:calc(50% - 11px);bottom:10px;background:currentColor;transform:scaleX(0);transition:transform .2s}
.navigation a[aria-current],.navigation a:hover,.navigation a:focus-visible{border-color:#c6e3ff;background:rgba(141,196,247,.17);color:#f5faff;box-shadow:inset 0 0 15px rgba(124,185,255,.06),0 0 16px rgba(124,185,255,.1)}
.navigation a[aria-current]:after,.navigation a:hover:after,.navigation a:focus-visible:after{transform:scaleX(1)}
.separator{display:none}
.motion-toggle{display:flex;gap:9px;align-items:center;justify-content:flex-end;min-width:44px;min-height:44px;padding:10px 0 10px 10px;border:0;background:none;text-shadow:0 1px 8px #071426}
.motion-label{font-size:.875rem;letter-spacing:.04em}
.pause-icon{width:10px;height:11px;border-left:2px solid currentColor;border-right:2px solid currentColor}
.motion-toggle[aria-pressed=true] .pause-icon{width:0;height:0;border:6px solid transparent;border-right:0;border-left:9px solid currentColor}

.section{position:relative;padding:0 var(--gutter);min-height:100svh;text-shadow:0 2px 18px rgba(0,12,35,.8),0 1px 3px rgba(0,12,35,.85);scroll-margin-top:0}
.hero{display:flex;flex-direction:column;justify-content:flex-end;align-items:center;min-height:100svh;padding-top:max(150px,34svh);padding-bottom:28px}
.hero-content{width:100%;text-align:center;display:flex;flex-direction:column;flex:1}
.hero h1{max-width:1120px;margin:0 auto;font-size:clamp(2.35rem,4.55vw,5.2rem);font-weight:400;letter-spacing:-.055em;line-height:1.12;text-wrap:balance}
.hero h1>span{display:block}
em{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.065em}
.hero h1 em{color:var(--ice);white-space:nowrap}
.aum-stack{display:grid;gap:16px;width:min(100%,600px);margin: auto auto 0;padding-top:clamp(32px,5svh,64px)}
.aum-stat{display:grid;grid-template-columns:110px minmax(0,1fr) 110px;align-items:center;min-height:136px;padding:4px 0}
.aum-stat+.aum-stat{border-top:1px solid rgba(235,246,255,.3);padding-top:14px}
.aum-copy{grid-column:2;grid-row:1;margin:0;text-align:center}
.aum-copy dt{font-size:1rem;line-height:1.5;letter-spacing:.09em;margin:0 0 7px}
.aum-copy dd{font-size:clamp(3.125rem,4.2vw,4.125rem);font-weight:400;line-height:1.15;letter-spacing:-.045em;font-variant-numeric:tabular-nums;margin:0;color:var(--ice)}
.aum-piece{grid-column:1;grid-row:1;position:relative;width:96px;aspect-ratio:3/4;overflow:hidden;justify-self:center;text-shadow:none}
.aum-piece img{position:absolute;top:0;left:0;display:block;width:200%;max-width:none;height:100%;object-fit:fill}
.current-piece img{left:-8.66%}
.target-piece img{left:-95.96%}
.hero-foot{position:absolute;left:var(--gutter);right:var(--gutter);bottom:28px;display:flex;align-items:center;justify-content:center}
.scroll-cue{display:flex;align-items:center;gap:22px;font-size:.8125rem;white-space:nowrap}
.eyebrow{display:flex;gap:12px;align-items:center;font-size:.75rem;letter-spacing:.17em;line-height:1.6;font-weight:500;margin:0 0 26px}

.section-label{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:22px;font:.75rem 'Courier New',monospace;letter-spacing:.1em}
.section:not(.hero){padding-top:146px;padding-bottom:90px}
.section-body{display:grid;grid-template-columns:1.25fr 1fr;align-items:center;gap:80px;min-height:65vh}
.section h2{font-size:clamp(3rem,5.6vw,6rem);font-weight:400;letter-spacing:-.06em;line-height:1.08;margin:32px 0}
.section h2 em{color:var(--ice)}
.section-copy{max-width:690px}
.section-copy>p:not(.lede){max-width:465px;color:var(--muted)}
.section-copy .lede{font-size:1.375rem;line-height:1.4;max-width:470px;margin-bottom:26px}
.about-body{grid-template-columns:1fr;min-height:65vh}
.about-body .section-copy{max-width:790px}
.strategy-body{grid-template-columns:1fr}
.section-right{text-align:right}
.section-right .section-label{flex-direction:row-reverse}
.section-right .section-label span:last-child{text-align:left}
.section-right .section-copy,.section-right .section-copy>p,.section-right .performance-body,.section-right .performance-note,.section-right .disclosure{margin-left:auto}
.section-right .eyebrow{justify-content:flex-end}
.section-right .performance-note{flex-direction:row-reverse}
.text-link{display:inline-flex;align-items:center;gap:40px;border-bottom:1px solid var(--line);font-size:.875rem;padding:12px 0;margin-top:20px}
.text-link span{font-size:1.4rem;transition:transform .2s}
.text-link:hover span{transform:translate(3px,-3px)}
.piece-study{position:relative;min-width:0;mix-blend-mode:screen;text-shadow:none}
.piece-study img{display:block;object-fit:contain;width:100%;height:100%;max-height:590px}
.piece-study figcaption{display:flex;align-items:center;gap:24px;justify-content:center;font:.75rem 'Courier New',monospace;letter-spacing:.09em;padding-top:20px;color:#fff}
.piece-study figcaption span{font:.8125rem Arial,sans-serif;letter-spacing:0;color:var(--muted)}

.research-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:50px;padding-top:30px}
.research-heading>p{margin:0 0 36px;max-width:350px;color:var(--muted)}
.research-list{margin-top:54px}
details{border-top:1px solid var(--line)}
details:last-child{border-bottom:1px solid var(--line)}
summary{display:flex;align-items:center;gap:50px;cursor:pointer;list-style:none;min-height:100px;padding:24px 0}
summary::-webkit-details-marker{display:none}
.row-number{font:.8125rem 'Courier New',monospace;color:var(--muted)}
.row-title{font-size:clamp(1.625rem,2.6vw,2.8rem);letter-spacing:-.04em}
.detail-symbol{position:relative;width:20px;height:20px;margin-left:auto;margin-right:4px}
.detail-symbol:before,.detail-symbol:after{content:"";position:absolute;top:9px;left:0;width:20px;height:1px;background:white}
.detail-symbol:after{transform:rotate(90deg)}
details[open] .detail-symbol:after{transform:rotate(0)}
.detail-body{display:flex;align-items:flex-end;justify-content:space-between;gap:50px;padding:0 4px 32px 68px}
.detail-body p{max-width:530px;margin:0;color:var(--muted)}
.row-caption{font:.75rem 'Courier New',monospace;letter-spacing:.13em}

.performance-body{padding-top:70px;max-width:900px}
.performance-body .eyebrow{margin-bottom:8px}
.performance-body h2{font-size:clamp(3.25rem,6.7vw,7.25rem);margin-top:20px}
.performance-note{display:flex;gap:24px;align-items:center;margin-top:50px;padding:24px 0;max-width:600px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.note-mark{font-size:1.375rem;color:var(--ice)}
h3{font-size:1rem;font-weight:500;margin:0 0 6px}
.performance-note p{margin:0;color:var(--muted);font-size:.9375rem}
.disclosure{font-size:.8125rem;max-width:470px;color:var(--muted);margin-top:26px}

.contact-body{display:grid;grid-template-columns:1fr;align-items:center;gap:30px;min-height:65vh;padding-top:50px}
.contact-body h2{font-size:clamp(3rem,5.4vw,6rem)}
.contact-details{border-top:1px solid var(--line);max-width:440px;padding-top:24px;margin-top:50px}
.contact-details p{font-size:.9375rem;color:var(--muted);margin:0}
.section.contact-section{display:flex;flex-direction:column;min-height:120svh;padding-bottom:12px}
.footer{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;border-top:1px solid var(--ice);padding-top:28px;margin-top:auto}
.founded,.footer-disclosure{font:inherit;line-height:1.6;color:inherit;margin:0;text-wrap:balance}
.footer-disclosure{max-width:1100px}
.footer .motion-toggle{position:absolute;right:var(--gutter);bottom:112px;margin:0}
.scroll-track{position:fixed;right:0;top:0;bottom:0;width:2px;z-index:15;pointer-events:none}
#scroll-progress{display:block;height:100%;background:#e6f3ff;transform:scaleY(0);transform-origin:top}

@media(max-width:1000px){
 .navigation{gap:8px;font-size:1.0625rem}.navigation a{padding:0 12px}.section-body{gap:30px}.research-heading>p{max-width:280px}.piece-study figcaption{flex-direction:column;gap:7px}
}
@media(max-width:760px){
 :root{--navigation-size:.875rem}
 html{scroll-padding-top:24px}
 .masthead{display:grid;grid-template-columns:1fr;align-content:start;gap:12px;padding-top:12px;padding-bottom:16px}
 .brand{justify-self:start;min-height:40px}
 .logo-knight{width:52px;height:84px}
 .navigation{justify-self:end;justify-content:flex-end;flex-wrap:wrap;gap:8px;width:min(100%,560px);margin-left:0;font-size:clamp(.8125rem,2.8vw,1rem)}
 .navigation a{flex:1 1 calc(33.333% - 8px);min-height:54px;padding:0 8px}
 .navigation a:after{bottom:7px}
 .hero{padding-top:max(264px,34svh);padding-bottom:24px}
 .hero h1{font-size:clamp(1.75rem,5.8vw,2.9rem);line-height:1.16;letter-spacing:-.045em;max-width:620px}
 .aum-stack{width:min(100%,500px);gap:12px;margin-top:auto;padding-top:32px}
 .aum-stat{grid-template-columns:76px minmax(0,1fr) 76px;min-height:120px}
 .aum-piece{width:76px}
 .aum-copy dt{font-size:.9375rem}
 .aum-copy dd{font-size:clamp(2.85rem,7.6vw,3.5rem)}
 .hero-foot{bottom:24px}
 .scroll-cue{gap:10px;font-size:.75rem}
 .eyebrow{font-size:.75rem;letter-spacing:.09em;gap:9px;margin-bottom:24px}
 .section:not(.hero){padding-top:132px;padding-bottom:55px}
 .section-label{font-size:.75rem;letter-spacing:.03em}
 .section-label span:last-child{max-width:148px;text-align:right;line-height:1.5}
 .section-body{grid-template-columns:1fr;gap:5px}
 .section h2{font-size:clamp(2.65rem,9vw,4.2rem);margin-top:35px}
 .section-copy .lede{font-size:1.25rem}
 .section-copy>p:not(.lede){font-size:1rem}
 .piece-study img{max-height:390px}
 .research-heading{display:block;padding-top:4px}
 .research-heading>p{max-width:100%;font-size:1rem;margin-top:22px;margin-bottom:0}
 .research-list{margin-top:36px}
 summary{gap:25px;min-height:88px;padding:21px 0}
 .row-title{font-size:1.5rem}
 .detail-body{display:block;padding:0 0 26px 43px}
 .detail-body p{font-size:1rem}
 .row-caption{display:block;margin-top:18px}
 .performance-body{padding-top:45px}
 .performance-body h2{font-size:clamp(2.9rem,10vw,4.5rem)}
 .performance-note{margin-top:40px;gap:16px}
 .performance-note p{font-size:.875rem}
 .contact-body{grid-template-columns:1fr;gap:25px;padding-top:40px}
 .contact-body h2{font-size:clamp(2.45rem,8.1vw,4rem)}
 .contact-details{margin-top:36px}
 .section.contact-section{padding-bottom:12px}
 .footer{margin-top:auto}
 .footer .motion-toggle{bottom:128px}
}
@media(max-width:380px){
 :root{--gutter:16px;--navigation-size:.8125rem}
 .aum-stat{grid-template-columns:60px minmax(0,1fr) 60px}.aum-piece{width:64px}.aum-copy dd{font-size:2.65rem}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}
}

/* Content panels only: section labels, hero, navigation and footer stay open. */
main{position:relative;isolation:isolate}
.section-copy,.research-heading,.research-list,.performance-body,.contact-copy{
 background:rgba(6,18,35,.91);border:1px solid rgba(210,230,255,.28);
 padding:clamp(24px,3.2vw,48px);text-shadow:none;
}
.section-body{padding-top:36px}
.section-copy{width:100%;max-width:790px}
.section-copy h2{margin-top:0}
.research-heading{margin-top:36px;align-items:center}
.research-heading h2{margin:0}
.research-heading>p{margin:0;flex:0 1 350px}
.research-list{margin-top:24px;padding-top:0;padding-bottom:0}
.research-list details:first-child{border-top:0}
.research-list details:last-child{border-bottom:0}
.performance-body{margin-top:36px;max-width:900px}
.contact-copy{width:fit-content;max-width:100%}
.contact-body h2{margin-top:0}
.scroll-cue{min-height:44px;font-size:.875rem}
/* Dotted paths live in the whitespace between the five reading panels. */
.perspective-path{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden;color:var(--ice)}
.perspective-path path{fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-dasharray:1 11;opacity:.85}
.perspective-path .path-tip{stroke-dasharray:none;stroke-width:2;opacity:1}
@media(max-width:1000px){
 .research-heading{flex-wrap:wrap;gap:24px}
 .research-heading>p{flex-basis:100%;max-width:100%}
}
@media(max-width:760px){
 .section-copy,.research-heading,.performance-body,.contact-copy{padding:24px}
 .section-copy h2,.contact-body h2{font-size:clamp(2.1rem,7.5vw,4.2rem);overflow-wrap:break-word}
 .section-body{padding-top:36px}
 .research-heading{padding:24px;margin-top:36px}
 .research-heading h2{font-size:clamp(2.1rem,7.5vw,4.2rem)}
 .research-heading>p{margin-top:22px}
 .research-list{padding:0 20px}
 .research-list summary{gap:16px}
 .research-list .row-title{font-size:clamp(1.2rem,4.8vw,1.5rem)}
 .detail-body{padding-left:0}
 .performance-body h2{font-size:clamp(2.1rem,7.5vw,4.5rem)}
 .scroll-cue span:first-child{display:inline}
 .perspective-path path{stroke-width:2;stroke-dasharray:1 9}
 .perspective-path .path-tip{stroke-dasharray:none}
}
