/* Capital is a self-contained public portfolio, sharing only VEX's type and wordmark. */
.capital-page { --capital-bg:#080b10; --capital-surface:#0e131b; --capital-ink:#edf0f5; --capital-muted:#a2acbc; --capital-line:#26303c; --capital-faint:#151d27; background:var(--capital-bg); color:var(--capital-ink); font-weight:400; }
.capital-shell { width:min(1232px, calc(100% - 112px)); margin:0 auto; }
.capital-page button, .capital-page summary, .capital-page a { -webkit-tap-highlight-color:transparent; }
.capital-page :focus-visible { outline:2px solid #c4d9f4; outline-offset:5px; border-radius:3px; }
.capital-page #main:focus { outline:none; }
.capital-header { min-height:88px; display:flex; align-items:center; gap:24px; border-bottom:1px solid #202833; }
.capital-header .wordmark { font-size:27px; }
.capital-header .brand { gap:10px; }
.capital-header .brand-os { font-size:10px; border-color:#465162; color:#c0c9d7; }
.capital-header-divider { height:22px; width:1px; background:#303946; }
.capital-header-name { color:#bbc3ce; font-size:14px; letter-spacing:-.01em; }
.capital-demo { margin-left:auto; display:flex; align-items:center; gap:9px; font-size:12px; color:#aeb7c5; }
.capital-demo > span { width:6px; height:6px; border:1px solid #aeb7c5; border-radius:50%; }
.capital-skip { position:fixed; top:12px; left:12px; z-index:20; padding:12px 18px; color:#080b10; background:#edf0f5; transform:translateY(-180%); }
.capital-skip:focus { transform:none; }
.capital-intro { position:relative; display:flex; align-items:flex-end; justify-content:space-between; gap:32px; padding:48px 0 40px; overflow:hidden; isolation:isolate; }
.capital-eyebrow { font-size:11px; font-weight:500; text-transform:uppercase; letter-spacing:.16em; color:#a9b8cb; margin:0 0 19px; }
.capital-intro h1 { font-size:clamp(50px, 5.1vw, 70px); line-height:1.08; letter-spacing:-.065em; font-weight:400; margin:0 0 23px; }
.capital-description { font-size:17px; color:#aeb7c5; line-height:1.7; letter-spacing:-.012em; margin:0; }
.capital-intro-link { flex-shrink:0; display:flex; align-items:center; gap:20px; font-size:13px; color:#c9d3e1; padding:12px 0; margin-bottom:3px; transition:color .2s; }
.capital-intro-link svg { width:22px; height:22px; transition:transform .25s; }
.capital-intro-link:hover { color:white; }.capital-intro-link:hover svg { transform:translateX(4px); }
.capital-overview { border:1px solid #2b3542; border-radius:10px; background:var(--capital-surface); overflow:hidden; }
.capital-section-top { display:flex; align-items:center; justify-content:space-between; padding:22px 30px; border-bottom:1px solid #26303c; gap:16px; }
.capital-section-top h2 { font-weight:450; font-size:14px; margin:0; letter-spacing:-.01em; }
.capital-section-top p { color:#a6b1c1; font-size:11px; margin:0; }
.capital-section-top p > span { padding:0 7px; }
.capital-composition { display:grid; grid-template-columns:36% 64%; }
.capital-position { padding:37px 34px 31px 30px; border-right:1px solid #26303c; }
.capital-label { color:#afbacb; font-size:12px; margin:0 0 12px; }
.capital-balance { font-size:clamp(44px,4.8vw,64px); font-weight:400; letter-spacing:-.065em; line-height:1.08; font-variant-numeric:tabular-nums; margin:0 0 12px; }
.capital-balance-context { font-size:12px; color:#a6b1c1; margin:0; }
.capital-allocation { display:block; height:5px; width:100%; margin:31px 0 27px; border-radius:1px; }
.capital-position-facts { display:grid; grid-template-columns:1fr 1fr; gap:20px; margin:0; }
.capital-position-facts dt { font-size:11px; color:#a6b1c1; margin-bottom:7px; }.capital-position-facts dd { margin:0; font-size:23px; letter-spacing:-.04em; font-variant-numeric:tabular-nums; }
.capital-undrawn { font-size:11px; color:#a6b1c1; border-top:1px solid #25303b; padding-top:17px; margin:23px 0 0; }
.capital-cashflow { margin:0; padding:29px 30px 24px 28px; min-width:0; display:flex; flex-direction:column; justify-content:space-between; }
.capital-cashflow figcaption { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; padding-left:6px; }
.capital-cashflow h3 { font-size:13px; font-weight:450; margin:0 0 6px; }
.capital-cashflow figcaption p { font-size:11px; color:#a6b1c1; margin:0; }
.capital-cashflow figcaption strong { font-size:25px; font-weight:400; font-variant-numeric:tabular-nums; letter-spacing:-.04em; line-height:1.1; }
.capital-flow-chart { width:100%; display:block; height:220px; margin:8px 0 5px; overflow:visible; }
.cashflow-guide { fill:none; stroke:#25303d; stroke-width:.7; }.cashflow-value { font-size:10px; font-weight:400; fill:#b5c0d0; font-variant-numeric:tabular-nums; }.cashflow-month { font-size:11px; fill:#a6b1c1; }
.capital-flow-legend { display:flex; flex-wrap:wrap; gap:8px 18px; list-style:none; padding:0; margin:5px 0 14px 6px; font-size:10px; color:#b1bdcd; }.capital-flow-legend li { display:flex; align-items:center; gap:6px; }.capital-flow-legend li::before { content:""; width:6px; height:6px; background:var(--deal-color); border-radius:1px; }
.capital-chart-note { display:flex; align-items:center; gap:6px; margin:0 0 0 6px; font-size:10px; color:#a8b4c5; }
.capital-chart-note > span:last-child { margin-left:auto; color:#a0adbf; }
.capital-chart-key { width:6px; height:6px; background:#b0c4df; border-radius:1px; }
.orbit { --deal-color:#a6bddc; --deal-tint:#a6bddc12; }.moss { --deal-color:#99b8a3; --deal-tint:#99b8a312; }.drift { --deal-color:#b0a1c6; --deal-tint:#b0a1c612; }.orchard { --deal-color:#c5ac83; --deal-tint:#c5ac8312; }.tile { --deal-color:#79a3ae; --deal-tint:#79a3ae12; }
.capital-allocation rect, .capital-flow-chart rect { fill:var(--deal-color); }
.capital-portfolio { padding-top:46px; scroll-margin-top:30px; }
.capital-portfolio-heading { display:flex; justify-content:space-between; align-items:center; gap:16px; margin-bottom:25px; }
.capital-portfolio-heading h2 { font-size:25px; font-weight:400; letter-spacing:-.04em; margin:0; }
.capital-portfolio-heading p { font-size:12px; color:#a2adbd; margin:0; }.capital-portfolio-heading p > span { padding:0 8px; color:#4a586a; }
.capital-ledger-head, .capital-facility > summary { display:grid; grid-template-columns:minmax(260px, 2.5fr) repeat(3,minmax(94px,1fr)) minmax(127px,1.25fr) 22px; gap:22px; align-items:center; }
.capital-ledger-head { padding:0 18px 13px 22px; font-size:10px; color:#a0adbf; border-bottom:1px solid #303a47; }
.capital-ledger-head > span:not(:first-child) { text-align:right; }
.capital-facility { border-bottom:1px solid #252e39; }
.capital-facility > summary { list-style:none; cursor:pointer; min-height:94px; padding:18px 18px 18px 22px; position:relative; transition:background .25s; border-radius:3px; }
.capital-facility > summary::-webkit-details-marker { display:none; }
.capital-facility > summary::before { content:''; position:absolute; left:0; top:27px; bottom:27px; width:2px; background:var(--deal-color); transform:scaleY(0); transition:transform .25s; }
.capital-facility > summary:hover, .capital-facility > summary:focus-visible { background:#141b25; }.capital-facility > summary:hover::before, .capital-facility > summary:focus-visible::before { transform:scaleY(1); }
.facility-identity { display:flex; align-items:center; gap:17px; min-width:0; }.facility-index { font-size:10px; color:#8694a7; font-variant-numeric:tabular-nums; width:14px; }
.facility-icon { display:grid; place-items:center; width:43px; height:43px; background:var(--deal-tint); border:1px solid color-mix(in srgb,var(--deal-color) 24%,transparent); color:var(--deal-color); border-radius:10px; flex-shrink:0; }.facility-icon svg { width:36px; height:36px; }.icon-solid { fill:currentColor; stroke:none; }
.facility-name { display:block; font-size:14px; font-weight:450; letter-spacing:-.015em; white-space:nowrap; }.facility-meta { font-size:10px; color:#a2adbd; display:block; margin-top:6px; white-space:nowrap; }.facility-meta > span { padding:0 3px; color:#66778e; }
.facility-value { text-align:right; color:#bdc7d5; font-size:14px; font-variant-numeric:tabular-nums; letter-spacing:-.025em; }.facility-outstanding { color:#f1f4f8; }.facility-maturity { color:#acb8c8; font-size:12px; text-align:right; }.facility-arrow { width:18px; height:18px; color:#8d9bad; transition:transform .25s,color .25s; }.capital-facility > summary:hover .facility-arrow { color:var(--deal-color); transform:translateX(3px); }.facility-mobile-label { display:none; }
.capital-notes { margin:21px 0 0; }.capital-notes p { color:#9aa7b9; font-size:11px; line-height:1.65; margin:0 0 5px; }
.capital-footer { border-top:1px solid #252e39; margin-top:53px; padding:23px 0 30px; display:flex; align-items:center; justify-content:space-between; color:#98a5b7; font-size:11px; }.capital-footer > span > span { margin:0 9px; color:#5d6d83; }.capital-footer a { padding:8px 0; color:#b1bed0; }.capital-footer a > span { padding-left:10px; }
.capital-dialog { width:min(600px,100%); max-width:100%; max-height:100dvh; height:100dvh; margin:0 0 0 auto; padding:0; inset:0; border:0; border-left:1px solid #3a4657; color:#edf0f5; background:#10161f; overflow:auto; overscroll-behavior:contain; box-shadow:-24px 0 100px #0004; }
.capital-dialog[open] { animation:capital-panel-in .25s ease-out; }
.capital-dialog::backdrop { background:#02050ac9; backdrop-filter:blur(5px); }
.capital-dialog-top { display:flex; align-items:center; justify-content:space-between; padding:21px 32px; border-bottom:1px solid #2c3745; font-size:12px; color:#b0bdcf; position:sticky; top:0; z-index:1; background:#10161ff5; backdrop-filter:blur(10px); }
.capital-close { display:grid; place-items:center; width:38px; height:38px; cursor:pointer; background:#1b2431; border:1px solid #354354; border-radius:50%; transition:background .2s; }.capital-close:hover { background:#2a3748; }.capital-close svg { width:19px; height:19px; }
.capital-dialog-content { padding:32px; }
.facility-detail { padding:28px 32px; background:#10161f; }.capital-dialog-content > .facility-detail { padding:0; }
.facility-detail-brand { display:flex; align-items:center; gap:15px; font-size:11px; color:#b0bdcf; }.facility-detail-brand > span > span { padding:0 7px; color:#566b87; }.facility-detail-brand .facility-icon { width:49px; height:49px; }
.facility-detail-title { margin:26px 0 7px; font-size:38px; font-weight:400; letter-spacing:-.055em; }.facility-detail-subtitle { color:#a6b5c9; margin:0; font-size:13px; }.facility-detail-subtitle > span { padding:0 6px; }.facility-detail-intro { color:#cad3e0; font-size:14px; line-height:1.7; margin:26px 0; max-width:420px; }
.facility-detail-facts { display:grid; grid-template-columns:1fr 1fr; row-gap:25px; padding:26px 0; border-top:1px solid #344152; border-bottom:1px solid #344152; margin:0 0 30px; }.facility-detail-facts dt { font-size:11px; color:#a6b5c9; margin-bottom:7px; }.facility-detail-facts dd { font-size:26px; font-weight:400; letter-spacing:-.04em; margin:0; font-variant-numeric:tabular-nums; }
.facility-schedule-heading { display:flex; align-items:baseline; justify-content:space-between; gap:10px; }.facility-schedule-heading h3 { font-size:15px; font-weight:450; margin:0; letter-spacing:-.015em; }.facility-schedule-heading strong { font-size:20px; font-weight:400; letter-spacing:-.03em; }.facility-schedule-note { font-size:11px; color:#a6b5c9; line-height:1.7; margin:8px 0 20px; }
.facility-table-wrap { max-width:100%; overflow:auto; }.facility-schedule { width:100%; border-collapse:collapse; font-size:11px; font-variant-numeric:tabular-nums; }.facility-schedule th { text-align:left; font-weight:400; }.facility-schedule td, .facility-schedule th:not(:first-child) { text-align:right; }.facility-schedule thead th { color:#a6b5c9; font-size:10px; padding:0 0 12px; border-bottom:1px solid #344152; }.facility-schedule tbody td, .facility-schedule tbody th { padding:13px 0; border-bottom:1px solid #253141; }.facility-schedule tbody th { color:#a6b5c9; }.facility-schedule tfoot th, .facility-schedule tfoot td { padding-top:16px; color:#e7effa; }.facility-schedule tfoot td:last-child { color:var(--deal-color,#c3d9f2); }
.facility-detail-footnote { margin:26px 0 0; color:#a6b5c9; font-size:11px; line-height:1.75; }
.capital-modal-open { overflow:hidden; }
.capital-echo { position:absolute; top:0; left:0; width:360px; height:360px; border:1px solid #bbd0ee24; border-radius:50%; pointer-events:none; z-index:-1; opacity:0; box-shadow:0 0 60px 5px #bad2f305,inset 0 0 40px 2px #bad2f304; }
.sr-only { position:absolute; width:1px; height:1px; margin:-1px; padding:0; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
@keyframes capital-panel-in { from { opacity:.4; transform:translateX(28px); } to { opacity:1; transform:translateX(0); } }
@media (min-width:1500px) { .capital-shell { width:min(1280px,calc(100% - 160px)); }.capital-intro { padding-top:80px; padding-bottom:67px; } }
@media (max-width:1150px) { .capital-shell { width:calc(100% - 64px); }.capital-ledger-head,.capital-facility > summary { grid-template-columns:minmax(220px,2.5fr) repeat(3,minmax(75px,1fr)) minmax(116px,1.1fr) 18px; gap:15px; padding-left:12px; padding-right:12px; }.facility-index { display:none; }.facility-identity { gap:12px; }.capital-position { padding-right:25px; padding-left:25px; }.capital-cashflow { padding-left:20px; padding-right:20px; }.capital-composition { grid-template-columns:35% 65%; }.capital-balance { font-size:52px; }.capital-chart-note { font-size:9px; } }
@media (max-width:900px) { .capital-intro { padding:54px 0 42px; }.capital-intro-link { display:none; }.capital-composition { grid-template-columns:1fr; }.capital-position { border-right:0; border-bottom:1px solid #26303c; display:grid; grid-template-columns:1fr 1fr; padding:27px; column-gap:40px; }.capital-label { grid-column:1; }.capital-balance { grid-column:1; grid-row:2 / span 2; font-size:56px; }.capital-balance-context { grid-column:1; grid-row:4; }.capital-allocation { grid-column:1 / -1; grid-row:5; margin:24px 0 0; }.capital-position-facts { grid-column:2; grid-row:2; align-self:center; }.capital-undrawn { grid-column:2; grid-row:3 / span 2; margin:15px 0 0; padding-top:12px; }.capital-cashflow { padding:26px; }.capital-flow-chart { max-height:260px; }.capital-ledger-head,.capital-facility > summary { grid-template-columns:minmax(210px,2.5fr) repeat(3,minmax(70px,1fr)) 18px; gap:15px; }.capital-ledger-head > span:nth-child(5),.facility-maturity { display:none; }.capital-chart-note { font-size:11px; } }
@media (max-width:620px) { .capital-shell { width:calc(100% - 36px); }.capital-header { min-height:80px; gap:13px; }.capital-header .wordmark { font-size:24px; }.capital-header .brand { gap:7px; }.capital-header .brand-os { font-size:8px; padding:4px; }.capital-header-divider { height:18px; }.capital-header-name { font-size:12px; }.capital-demo { font-size:9px; gap:6px; }.capital-demo > span { width:5px; height:5px; }.capital-intro { padding:45px 0 37px; }.capital-eyebrow { font-size:10px; letter-spacing:.14em; margin-bottom:17px; }.capital-intro h1 { font-size:53px; margin-bottom:19px; }.capital-description { font-size:13px; line-height:1.8; }.capital-section-top { padding:18px; align-items:flex-start; flex-direction:column; gap:8px; }.capital-section-top h2 { font-size:13px; }.capital-section-top p { font-size:10px; }.capital-overview { border-radius:8px; }.capital-position { display:block; padding:24px 18px 20px; }.capital-label { margin-bottom:12px; }.capital-balance { font-size:58px; margin-bottom:10px; }.capital-balance-context { font-size:11px; }.capital-allocation { margin:23px 0; height:4px; }.capital-position-facts dd { font-size:25px; }.capital-undrawn { margin-top:20px; padding-top:15px; }.capital-cashflow { padding:23px 10px 21px; }.capital-cashflow figcaption { padding:0 8px; }.capital-cashflow figcaption strong { font-size:23px; }.capital-cashflow h3 { font-size:12px; }.capital-cashflow figcaption p { font-size:10px; }.capital-flow-chart { margin:13px 0 9px; height:auto; }.cashflow-value { display:none; }.cashflow-month { font-size:18px; }.capital-flow-legend { gap:8px 13px; font-size:9px; margin:0 8px 15px; }.capital-chart-note { flex-wrap:wrap; font-size:9px; margin:0 8px; gap:5px; line-height:1.5; }.capital-chart-note > span:last-child { margin-left:auto; }.capital-portfolio { padding-top:34px; }.capital-portfolio-heading { align-items:baseline; margin-bottom:15px; }.capital-portfolio-heading h2 { font-size:23px; }.capital-portfolio-heading p { font-size:10px; }.capital-portfolio-heading p > span { padding:0 3px; }.capital-ledger-head { display:none; }.capital-facilities { border-top:1px solid #303a47; }.capital-facility > summary { grid-template-columns:1fr 1fr 1fr 18px; gap:19px 12px; padding:21px 8px; }.facility-identity { grid-column:1 / span 3; grid-row:1; gap:13px; }.facility-name { font-size:15px; }.facility-meta { font-size:10px; }.facility-value { text-align:left; grid-row:2; font-size:16px; }.facility-arrow { grid-column:4; grid-row:1; }.facility-icon { width:42px; height:42px; }.facility-mobile-label { display:block; font-size:10px; margin-bottom:7px; color:#a0aec1; font-weight:400; letter-spacing:0; }.capital-notes { margin-top:19px; }.capital-notes p { font-size:10px; line-height:1.8; margin-bottom:8px; }.capital-footer { margin-top:32px; padding:19px 0 23px; font-size:10px; }.capital-footer > span > span { margin:0 5px; }.capital-dialog { border-left:0; }.capital-dialog-top { padding:15px 20px; }.capital-dialog-content { padding:26px 20px; }.facility-detail-title { font-size:35px; }.facility-detail-intro { font-size:13px; }.facility-detail-facts { column-gap:15px; }.facility-detail-facts dd { font-size:25px; }.facility-detail-facts dt { font-size:10px; }.facility-schedule-heading h3 { font-size:14px; }.facility-schedule-heading strong { font-size:19px; }.facility-schedule { font-size:10px; }.facility-detail { padding:22px 12px; }.facility-detail-footnote { font-size:10px; } }
@media (max-width:360px) { .capital-demo { max-width:80px; line-height:1.5; }.capital-intro h1 { font-size:46px; }.capital-description { font-size:12px; }.capital-portfolio-heading p { font-size:9px; }.capital-chart-note > span:last-child { margin-left:11px; width:100%; } }
@media (prefers-reduced-motion:reduce) { .capital-page *, .capital-page *::before, .capital-page *::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; }.capital-echo { display:none; } }
