@font-face{font-family:'DM Serif Text';src:url('/assets/fonts/dmseriftext-regular.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'DM Serif Text';src:url('/assets/fonts/dmseriftext-italic.woff2') format('woff2');font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:'Gotham';src:url('/assets/fonts/gotham-light.woff2') format('woff2');font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:'Gotham Book';src:url('/assets/fonts/gotham-book.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Gotham';src:url('/assets/fonts/gotham-medium.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'Gotham';src:url('/assets/fonts/gotham-bold.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'Gotham Condensed';src:url('/assets/fonts/gothamcondensed-book.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Gotham Condensed';src:url('/assets/fonts/gothamcondensed-medium.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}

:root{
  --steel-blue:#091f3d; --golden-sand:#b8904a; --white-smoke:#f6f6f6;
  --dusk-blue:#30568b; --footer-black:#070504; --light-grey:#ececec; --white:#fff;
  --serif:'DM Serif Text',Georgia,serif;
  --gotham:'Gotham',Arial,sans-serif; --gotham-book:'Gotham Book',Arial,sans-serif; --gotham-cond:'Gotham Condensed',Arial,sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{font-size:16px}
html.lenis,html.lenis body{height:auto}
body{background:var(--footer-black);color:var(--white);font-family:var(--gotham-book);font-weight:400;font-size:1rem;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
::selection{background:var(--golden-sand);color:var(--steel-blue)}
.container{width:min(1360px,94vw);margin:0 auto}
.serif{font-family:var(--serif);font-weight:400}
.section{position:relative;z-index:10;background:var(--white);overflow:hidden}
.section.border-10{border-radius:10px}
.section.navy{background:var(--steel-blue);color:var(--white)}
.section.light{background:var(--light-grey);color:var(--steel-blue)}
.section.white{background:var(--white);color:var(--steel-blue)}
.pad{padding:7em 0}
.label-row{display:flex;align-items:baseline;gap:4.5em;margin-bottom:2.2em}
.label-num{font-family:var(--gotham-cond);color:var(--golden-sand);font-size:.95em;letter-spacing:.08em}
.label{font-family:var(--gotham-cond);text-transform:uppercase;letter-spacing:.18em;font-size:.82em;color:var(--golden-sand)}
.label.center{display:block;text-align:center}
.h-hero{font-family:var(--serif);font-size:4.1em;line-height:1.18em;font-weight:400;max-width:11em;color:var(--white)}
.h-large{font-family:var(--serif);font-size:3.5em;line-height:1.2em;font-weight:400;text-align:center}
.h-grid{font-family:var(--serif);font-size:4em;line-height:1.1em;font-weight:400}
.h-basic{font-family:var(--serif);font-size:2.4em;line-height:1.3em;font-weight:400}
.gold{color:var(--golden-sand)}
.btn{display:inline-flex;justify-content:space-between;align-items:center;gap:1.2em;min-width:15em;min-height:4em;padding:1em 1.5em;border-radius:3px;border:1px solid #b8904a6b;background:#b8904a1a;backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);font-family:var(--gotham-book);font-size:.85em;letter-spacing:.14em;text-transform:uppercase;color:#fff;position:relative;overflow:hidden;z-index:0;transition:background .55s cubic-bezier(.22,1,.36,1),color .45s,border-color .55s}
.btn::before{content:"";position:absolute;inset:0;background:var(--white-smoke);transform:translateX(-102%);transition:transform .65s cubic-bezier(.22,1,.36,1);z-index:-1}
.btn:hover::before,.btn:active::before{transform:translateX(0)}
.btn:hover,.btn:active{background:#b8904a1a;color:var(--steel-blue);border-color:#e6e0d4}
.btn.dark{color:var(--steel-blue);border-color:#091f3d55;background:#091f3d0d}
.btn.dark::before{background:var(--steel-blue)}
.btn.dark:hover,.btn.dark:active{background:#091f3d0d;color:#fff;border-color:var(--steel-blue)}
.btn.solid{background:var(--golden-sand);color:var(--steel-blue)}
.btn.solid::before{background:var(--white-smoke)}
.btn.solid:hover,.btn.solid:active{background:var(--golden-sand);color:var(--steel-blue)}
.btn-row{display:flex;gap:1.2em;flex-wrap:wrap}
svg.arr{width:1.15em;height:auto;flex:none;transition:transform .4s cubic-bezier(.25,.46,.45,.94)}
.btn .arr{color:currentColor}
.btn:hover .arr{color:var(--golden-sand);transform:translateX(5px)}

/* Nav */
.nav{position:fixed;top:0;left:0;right:0;z-index:200;transition:transform .5s cubic-bezier(.22,1,.36,1),background .4s}
.nav.scrolled{background:#091f3dd9;backdrop-filter:blur(12px)}
.nav.hidden{transform:translateY(-100%)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;padding:2.8em 2.2em 1.6em}
.nav-left{display:flex;align-items:center;gap:1.8em}
.burger{width:2em;cursor:pointer;display:flex;flex-direction:column;gap:.4em;padding:.6em .3em}
.burger span{height:2px;background:#fff;display:block}
.burger span:nth-child(2){width:70%}
.nav-sep{width:1px;height:2.4em;background:#ffffff33}
.nav-logo img{height:2.6em}
.nav-links{display:flex;gap:3em;align-items:center;font-family:var(--gotham-book);font-size:.9em}
.nav-links a{position:relative;color:#fff}
.nav-links a:not(.btn)::after{content:"";position:absolute;left:0;bottom:-6px;width:100%;height:1px;background:var(--golden-sand);transform:scaleX(0);transform-origin:right;transition:transform .4s cubic-bezier(.22,1,.36,1)}
.nav-links a:not(.btn):hover::after{transform:scaleX(1);transform-origin:left}
.nav .btn{min-width:auto;min-height:auto;padding:.9em 1.6em}
@media(max-width:900px){.nav-links a:not(.btn){display:none}}

/* FAB */
.fab{position:fixed;right:2.2em;bottom:2.2em;z-index:150;height:4.4em;border-radius:6px;border:1px solid #ffffff40;display:flex;align-items:center;justify-content:flex-start;gap:1em;padding:0 0 0 1.55em;width:4.4em;overflow:hidden;color:#fff;backdrop-filter:blur(10px);background:#0000001f;transition:width .55s cubic-bezier(.22,1,.36,1),border-color .3s,background .35s}
.fab svg{flex:none}
.fab:hover{width:13.5em;background:#091f3dcc;border-color:var(--golden-sand)}
.fab-label{font-family:var(--gotham-cond);text-transform:uppercase;letter-spacing:.16em;font-size:.75em;opacity:0;transition:opacity .35s .15s;white-space:nowrap}
.fab:hover .fab-label{opacity:1}

/* Hero */
.hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;overflow:hidden;border-radius:10px;background:var(--steel-blue)}
.hero video,.hero .hero-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
/* the poster is a real image so it paints first; the video fades in over it once it is playing */
.hero video{opacity:0;transition:opacity .8s ease}
.hero video.is-playing{opacity:1}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,#091f3df2 0%,#091f3daa 30%,#091f3d33 60%,#091f3d1a 100%)}
.hero-content{position:relative;z-index:2;padding:11em 0 9vh 6.5vw;max-width:62em}
.hero .line-mask{display:block;overflow:hidden}
.hero .line-mask>span{display:block}
.hero-kicker{display:inline-flex;align-items:center;gap:1em;font-family:var(--gotham-cond);text-transform:uppercase;letter-spacing:.2em;font-size:.82em;color:var(--golden-sand);margin-bottom:1.6em}
.hero-kicker::before{content:"";width:2.6em;height:1px;background:var(--golden-sand);display:block}
.hero-sub{max-width:36em;color:#ffffffd9;margin-top:1.4em;font-size:1.05em}
.hero-cta{margin-top:2.4em}
.hero-chips{display:flex;gap:0;margin-top:3.2em;flex-wrap:wrap;border:1px solid #ffffff2e;backdrop-filter:blur(10px);background:#091f3d40;max-width:fit-content}
.chip{padding:1.4em 2.2em;border-right:1px solid #ffffff2e}
.chip:last-child{border-right:none}
.chip .cv{font-family:var(--serif);font-size:1.9em;line-height:1.1;color:#fff}
.chip .cl{font-family:var(--gotham-cond);text-transform:uppercase;letter-spacing:.14em;font-size:.72em;color:#ffffffb3;margin-top:.4em}
.hero-note{margin-top:1.4em;font-size:.8em;color:#ffffff8a;max-width:44em}
@media(max-width:900px){.hero-chips{border:none;background:none;gap:1em}.chip{border:1px solid #ffffff2e;background:#091f3d40}}

/* trust bar */
.trustbar{background:var(--footer-black);color:#fff;padding:2.6em 0;position:relative;z-index:11}
.trust-grid{display:flex;justify-content:space-between;gap:2em;flex-wrap:wrap}
.tstat{text-align:center;flex:1;min-width:9em}
.tstat .tv{font-family:var(--serif);font-size:2.1em;color:#fff}
.tstat .tl{font-family:var(--gotham-cond);text-transform:uppercase;letter-spacing:.14em;font-size:.72em;color:#ffffff8a;margin-top:.3em}
.trustbar .foot{color:#ffffff59;font-size:.72em;text-align:center;margin-top:1.8em}

/* reveals + threads (shared system) */
[data-reveal]{opacity:0;transform:translateY(45px)}
.no-motion [data-reveal]{opacity:1!important;transform:none!important}
@media(prefers-reduced-motion:reduce){[data-reveal]{opacity:1;transform:none}}
.tseg{width:0;border-left:1px solid var(--golden-sand);margin-left:auto;margin-right:auto;transform:scaleY(0);transform-origin:50% 0}
.no-motion .tseg{transform:none}
.thread-wrap{position:absolute;left:0;right:0;display:flex;justify-content:center;pointer-events:none}
.thread-wrap.full{top:0;bottom:0}
.thread{border-left:1px solid var(--golden-sand);width:0;height:100%;transform:scaleY(0);transform-origin:50% 0}
.no-motion .thread{transform:scaleY(1)}
.draw-box{position:relative}
.draw-box .draw{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:3}
.draw-box .draw rect{fill:none;stroke:var(--golden-sand);stroke-width:1.2;stroke-dasharray:100;stroke-dashoffset:100}
.no-motion .draw-box .draw rect{stroke-dashoffset:0}
.img-reveal{clip-path:inset(0 100% 100% 0)}
.img-reveal.from-right{clip-path:inset(0 0 100% 100%)}
.no-motion .img-reveal,.no-motion .img-reveal.from-right{clip-path:none!important}
.z2{position:relative;z-index:2}
.gold-line{height:3px;width:5em;background:var(--golden-sand);margin:1.6em 0}

/* gap / thesis */
.gap-sec{background:var(--white);color:var(--steel-blue);overflow:visible}
.gap-sec .h-large{max-width:16em;margin:0 auto}
.gap-sec .lede{max-width:46em;margin:1.6em auto 0;text-align:center;color:#091f3dcc;font-size:1.05em}
.gap-sec b{font-family:var(--gotham);font-weight:500}
.thesis-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.6em;margin-top:4em}
.th-card{padding:2.4em 2em;background:var(--white-smoke);position:relative}
.th-card .tv{font-family:var(--serif);font-size:2.6em;line-height:1;color:var(--steel-blue)}
.th-card .tv small{font-size:.45em;font-family:var(--gotham-cond);letter-spacing:.08em}
.th-card .tl{margin-top:.8em;font-size:.9em;color:#091f3db3}
.th-card.navy{background:var(--steel-blue)}
.th-card.navy .tv{color:#fff}
.th-card.navy .tl{color:#ffffffb3}
@media(max-width:900px){.thesis-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.thesis-grid{grid-template-columns:1fr}}
.storage-note{display:flex;align-items:center;gap:2em;margin:3.4em auto 0;max-width:52em;background:#091f3d08;border-left:3px solid var(--golden-sand);padding:1.8em 2.2em;color:#091f3dcc}
.storage-note .big{font-family:var(--serif);font-size:2.2em;white-space:nowrap;color:var(--steel-blue)}
@media(max-width:760px){.storage-note{flex-direction:column;align-items:flex-start;gap:.8em;padding:1.5em 1.4em}.storage-note .big{white-space:normal}}

/* markets */
.invest{color:#fff}
.invest-wrap{display:grid;grid-template-columns:1fr 1fr;gap:5em;align-items:center;padding:6em 0}
.invest-txt .label-row{margin-bottom:1.6em}
.invest-txt .h-basic{color:var(--white-smoke);margin-bottom:.9em}
.invest-txt p{max-width:34em;color:#ffffffcc;margin-bottom:2.2em}
.invest-img{position:relative;overflow:hidden;aspect-ratio:4/3}
.invest-img img,.invest-img video{position:absolute;inset:0;width:100%;height:110%;object-fit:cover}
.mk-stats{display:flex;gap:2.6em;margin:1.8em 0 2.2em;flex-wrap:wrap}
.mk-stat .v{font-family:var(--serif);font-size:1.9em;color:var(--golden-sand)}
.mk-stat .l{font-family:var(--gotham-cond);text-transform:uppercase;letter-spacing:.12em;font-size:.72em;color:#ffffff8a;margin-top:.2em;max-width:12em}
@media(max-width:900px){.invest-wrap{grid-template-columns:1fr;gap:2.5em}}

/* first close */
.close-sec{background:var(--light-grey);color:var(--steel-blue)}
.close-head{text-align:center;padding-top:6.5em}
.close-head p{max-width:44em;margin:1.4em auto 0;color:#091f3dbb}
.asset-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.8em;padding:3.5em 0 6.5em}
.asset-card{position:relative;overflow:hidden;aspect-ratio:16/12;display:flex;align-items:flex-end;color:#fff}
.asset-card img.cover{position:absolute;inset:0;width:100%;height:112%;object-fit:cover;transition:transform .8s cubic-bezier(.22,1,.36,1)}
.asset-card:hover img.cover{transform:scale(1.04)}
.asset-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#091f3d08 20%,#091f3daf 68%,#091f3df2 100%)}
.asset-body{position:relative;z-index:2;padding:2.6em 3em;width:100%}
.asset-body .tag{font-family:var(--gotham-cond);text-transform:uppercase;letter-spacing:.16em;font-size:.78em;color:var(--golden-sand);display:block;margin-bottom:.7em}
.asset-body h3{font-family:var(--serif);font-size:2em;font-weight:400;margin-bottom:.5em}
.asset-facts{display:flex;gap:1.8em;flex-wrap:wrap;color:#ffffffd9;font-size:.9em}
.asset-facts span{border-left:2px solid var(--golden-sand);padding-left:.8em}
@media(max-width:900px){.asset-grid{grid-template-columns:1fr}}
.film-slot{position:relative;width:min(1360px,94vw);margin:0 auto 6.5em;aspect-ratio:16/7;overflow:hidden;background:var(--steel-blue)}
.film-slot video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.85}
.film-slot .film-tag{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:2;background:#091f3d66;color:#fff;text-align:center;padding:2em}
.film-tag h3{font-family:var(--serif);font-size:2em;font-weight:400}
.film-tag p{color:#ffffffb3;font-size:.9em;margin-top:.4em}

/* playbook stacking cards */
.power{background:var(--white);color:var(--steel-blue);overflow:visible}
.power-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:4.5em;align-items:start;padding:6em 0 9em}
.power-left{position:sticky;top:24vh}
.power-left p{color:#091f3db3;max-width:30em;margin:1.6em 0 2em}
.power-card{position:sticky;top:8em;margin-bottom:2em;padding:3.2em 3em;min-height:21em;box-shadow:0 -30px 60px -42px rgba(0,0,0,.5);will-change:transform}
.power-card .pn{font-family:var(--serif);font-size:2.8em;line-height:1;margin-bottom:.9em;display:block}
.power-card h3{font-family:var(--serif);font-size:1.8em;font-weight:400}
.power-card .tline{height:1px;background:var(--golden-sand);width:100%;margin:1.2em 0 1.6em;transform:scaleX(0);transform-origin:0 50%}
.no-motion .power-card .tline{transform:none}
.power-card.c1{background:#fff;color:var(--steel-blue)}
.power-card.c2{background:var(--dusk-blue);color:#fff}
.power-card.c3{background:var(--white-smoke);color:var(--steel-blue)}
.power-card.c4{background:var(--steel-blue);color:#fff}
.power-card.c5{background:var(--golden-sand);color:var(--steel-blue)}
@media(max-width:900px){.power-grid{grid-template-columns:1fr}.power-left{position:static}}

/* ===== Calculators ===== */
.calc-sec{background:var(--steel-blue);color:#fff;overflow:visible}
.calc-head{text-align:center;padding-top:6.5em}
.calc-head p{max-width:44em;margin:1.4em auto 0;color:#ffffffb3}
.calc-shell{display:grid;grid-template-columns:.9fr 1.1fr;gap:3.5em;padding:3.5em 0 4em;align-items:start}
@media(max-width:900px){.calc-shell{grid-template-columns:1fr}}
.calc-shell>*{min-width:0}
.calc-panel{background:#0e2a4f;border:1px solid #ffffff1f;padding:2.6em}
.calc-panel h3{font-family:var(--serif);font-size:1.6em;font-weight:400;margin-bottom:1.4em}
.field{margin-bottom:1.8em}
.field label{display:block;font-family:var(--gotham-cond);text-transform:uppercase;letter-spacing:.14em;font-size:.75em;color:var(--golden-sand);margin-bottom:.7em}
.amount-wrap{display:flex;align-items:center;background:#091f3d;border:1px solid #ffffff2e;padding:0 1.2em;transition:border-color .3s}
.amount-wrap:focus-within{border-color:var(--golden-sand)}
.amount-wrap .cur{font-family:var(--serif);font-size:1.6em;color:var(--golden-sand);margin-right:.4em}
.amount-wrap input{flex:1;background:none;border:none;outline:none;color:#fff;font-family:var(--serif);font-size:2em;padding:.45em 0;width:100%;min-width:0}
input[type=range]{width:100%;appearance:none;-webkit-appearance:none;height:2px;background:#ffffff33;outline:none;margin-top:1.2em}
input[type=range]::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:1.15em;height:1.15em;border-radius:50%;background:var(--golden-sand);cursor:pointer;border:2px solid #fff}
input[type=range]::-moz-range-thumb{width:1.15em;height:1.15em;border-radius:50%;background:var(--golden-sand);cursor:pointer;border:2px solid #fff}
.class-strip{display:flex;gap:.5em;flex-wrap:wrap}
.class-pill{flex:1;min-width:5.4em;text-align:center;padding:.75em .4em;border:1px solid #ffffff26;font-family:var(--gotham-cond);font-size:.78em;letter-spacing:.1em;color:#ffffff80;text-transform:uppercase;transition:all .35s}
.class-pill.active{border-color:var(--golden-sand);background:#b8904a1f;color:#fff}
.class-pill .pr{display:block;font-size:.85em;color:var(--golden-sand);margin-top:.2em}
.calc-note{font-size:.75em;color:#ffffff70;margin-top:1.4em;line-height:1.6}
.res-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#ffffff1f;border:1px solid #ffffff1f;margin-bottom:2em}
.res-cell{background:#0e2a4f;padding:1.6em 1.4em;text-align:center}
.res-cell .rv{font-family:var(--serif);font-size:2em;line-height:1.1;color:#fff}
.res-cell .rl{font-family:var(--gotham-cond);text-transform:uppercase;letter-spacing:.12em;font-size:.68em;color:#ffffff8a;margin-top:.45em}
.res-cell .rv .sm{font-size:.55em}
.chart{display:flex;align-items:flex-end;gap:.7em;height:11em;padding:0 .2em;margin:1.6em 0 .4em}
.bar-wrap{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%}
.bar{width:100%;background:linear-gradient(180deg,#d9b87c,var(--golden-sand));transform-origin:50% 100%;min-height:2px}
.bar-wrap.exit .bar{background:linear-gradient(180deg,#fff,#e8d5ae)}
.bar-amt{font-size:.62em;color:#ffffffb3;margin-bottom:.5em;white-space:nowrap}
.bar-yr{font-family:var(--gotham-cond);font-size:.7em;letter-spacing:.08em;color:#ffffff73;margin-top:.6em}
.dist-table{width:100%;border-collapse:collapse;font-size:.85em;margin-top:1.6em}
.dist-table th{font-family:var(--gotham-cond);text-transform:uppercase;letter-spacing:.12em;font-size:.85em;color:var(--golden-sand);text-align:right;padding:.6em .8em;border-bottom:1px solid #ffffff26}
.dist-table th:first-child{text-align:left}
.dist-table td{padding:.55em .8em;text-align:right;color:#ffffffd9;border-bottom:1px solid #ffffff12}
.dist-table td:first-child{text-align:left;font-family:var(--gotham-cond);letter-spacing:.06em;color:#ffffff9a}
.dist-table tr.total td{color:#fff;font-family:var(--gotham);font-weight:500;border-top:1px solid #ffffff40;border-bottom:none}

/* dep calc */
.tax-sec{background:var(--white);color:var(--steel-blue);overflow:visible}
.tax-sec .calc-panel{background:var(--white-smoke);border:1px solid #091f3d1a;color:var(--steel-blue)}
.tax-sec .amount-wrap{background:#fff;border:1px solid #091f3d2b}
.tax-sec .amount-wrap input{color:var(--steel-blue)}
.tax-sec input[type=range]{background:#091f3d26}
.tax-sec .calc-head p{color:#091f3dbb}
.tax-res{display:grid;grid-template-columns:1fr 1fr;gap:1.6em;margin-bottom:1.8em}
.tax-cell{padding:2.2em 2em;text-align:center}
.tax-cell.losses{background:var(--steel-blue);color:#fff}
.tax-cell.savings{background:var(--golden-sand);color:var(--steel-blue)}
.tax-cell .rv{font-family:var(--serif);font-size:2.6em;line-height:1.05}
.tax-cell .rl{font-family:var(--gotham-cond);text-transform:uppercase;letter-spacing:.13em;font-size:.7em;margin-top:.6em;opacity:.8}
.bracket-strip{display:flex;gap:.5em}
.bracket-pill{flex:1;text-align:center;padding:.8em .4em;border:1px solid #091f3d33;font-family:var(--gotham-cond);font-size:.85em;letter-spacing:.08em;color:#091f3d99;cursor:pointer;transition:all .3s;background:#fff}
.bracket-pill.active{border-color:var(--golden-sand);background:var(--steel-blue);color:#fff}
.tax-sec .field label{color:#8a6a33}
.tax-sec .calc-note{color:#091f3d80}
.oneone{display:flex;align-items:center;gap:1.6em;background:#091f3d;color:#fff;padding:1.6em 2em;margin-bottom:1.8em}
.oneone .big{font-family:var(--serif);font-size:2.4em;color:var(--golden-sand);white-space:nowrap}
.oneone p{font-size:.88em;color:#ffffffcc}

/* case studies */
.cases-head{display:grid;grid-template-columns:1.3fr .7fr;gap:4em;align-items:end;padding:6.5em 0 3em}
.case-grid{display:grid;grid-template-columns:1fr;gap:2.2em;padding-bottom:6.5em}
.case-card{position:relative;overflow:hidden;aspect-ratio:16/6.4;display:flex;align-items:flex-end;color:#fff}
.case-card img.cover{position:absolute;inset:0;width:100%;height:112%;object-fit:cover;transition:transform .8s cubic-bezier(.22,1,.36,1)}
.case-card:hover img.cover{transform:scale(1.04)}
.case-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#091f3d08 20%,#091f3daf 68%,#091f3df2 100%)}
.case-body{position:relative;z-index:2;display:flex;align-items:flex-end;justify-content:space-between;gap:2.5em;width:100%;padding:2.6em 3em}
.case-txt{border-left:4px solid var(--golden-sand);padding-left:1.6em}
.case-txt h3{font-family:var(--serif);font-size:1.7em;font-weight:400;line-height:1.3;max-width:20em;margin-bottom:.6em}
.case-txt p{color:#ffffffcc;font-size:.95em;max-width:36em;margin-bottom:0}
.case-stat{font-family:var(--gotham-cond);letter-spacing:.1em;font-size:.8em;color:var(--golden-sand);text-transform:uppercase;margin-top:.7em;display:block}
.case-card:hover .btn .arr{color:var(--golden-sand)}
@media(max-width:900px){.cases-head{grid-template-columns:1fr}.case-card{aspect-ratio:auto;min-height:22em}.case-body{flex-direction:column;align-items:flex-start}}

/* terms */
.terms-sec{background:var(--light-grey);color:var(--steel-blue);overflow:visible}
.ladder{width:100%;border-collapse:collapse;background:#fff;font-size:.95em}
.ladder th{background:var(--steel-blue);color:#fff;font-family:var(--gotham-cond);text-transform:uppercase;letter-spacing:.12em;font-size:.78em;padding:1.1em 1.2em;text-align:left;font-weight:400}
.ladder td{padding:1.05em 1.2em;border-bottom:1px solid #091f3d14;color:#091f3dcc}
.ladder td:first-child{font-family:var(--gotham);font-weight:500;color:var(--steel-blue)}
.ladder tr.hl td{background:#b8904a14}
.ladder .pref{font-family:var(--serif);font-size:1.25em;color:var(--golden-sand)}
.terms-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.6em;margin-top:3em}
.term-card{background:#fff;padding:1.8em 1.6em}
.term-card .tv{font-family:var(--serif);font-size:1.5em;color:var(--steel-blue);line-height:1.2}
.term-card .tl{font-family:var(--gotham-cond);text-transform:uppercase;letter-spacing:.12em;font-size:.7em;color:#8a6a33;margin-top:.5em}
@media(max-width:900px){.terms-grid{grid-template-columns:1fr 1fr}}
.timeline{display:flex;gap:0;margin-top:3.4em;border-top:1px solid #091f3d26;flex-wrap:wrap}
.tl-step{flex:1;min-width:12em;padding:1.8em 1.6em 0;position:relative}
.tl-step::before{content:"";position:absolute;top:-4px;left:0;width:7px;height:7px;border-radius:50%;background:var(--golden-sand)}
.tl-step .d{font-family:var(--gotham-cond);text-transform:uppercase;letter-spacing:.12em;font-size:.75em;color:#8a6a33}
.tl-step .t{font-family:var(--gotham);font-weight:500;margin-top:.3em;color:var(--steel-blue)}

/* founder */
.split-sec{background:var(--white);color:var(--steel-blue)}
.split-wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:5em;align-items:center;padding:6.5em 0}
.split-img{position:relative;overflow:hidden;aspect-ratio:4/3.4}
.split-img img{position:absolute;inset:0;width:100%;height:112%;object-fit:cover}
.split-txt .label{display:block;margin-bottom:1.2em}
.split-txt .h-basic{color:var(--steel-blue);font-size:2.4em;margin-bottom:.7em}
.split-txt p{color:#091f3dbb;max-width:32em;margin-bottom:1.6em}
.split-txt blockquote{font-family:var(--serif);font-size:1.35em;line-height:1.5;color:var(--steel-blue);border-left:3px solid var(--golden-sand);padding-left:1.2em;margin-bottom:1.6em}
.signature{font-family:var(--serif);font-style:italic;font-size:2.2em;line-height:1;margin:0 0 1.4em;display:inline-block;background:linear-gradient(100deg,#8a6a33 10%,#b8904a 35%,#f3ddab 50%,#b8904a 65%,#8a6a33 90%);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shimmer 4.5s ease-in-out infinite}
@keyframes shimmer{0%{background-position:130% 0}100%{background-position:-130% 0}}
.no-motion .signature{animation:none;background:none;color:var(--golden-sand)}
@media(max-width:900px){.split-wrap{grid-template-columns:1fr;gap:2.5em}}

/* FAQ */
.faq-sec{background:var(--white);color:var(--steel-blue)}
.faq-wrap{max-width:56em;margin:0 auto;padding-bottom:6.5em}
.faq{border-bottom:1px solid #091f3d1f}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:2em;padding:1.6em .2em;font-family:var(--serif);font-size:1.25em;color:var(--steel-blue)}
.faq summary::-webkit-details-marker{display:none}
.faq summary .pm{flex:none;width:1.6em;height:1.6em;border:1px solid var(--golden-sand);border-radius:50%;display:grid;place-items:center;font-family:var(--gotham-book);font-size:.8em;color:var(--golden-sand);transition:transform .4s,background .3s}
.faq[open] summary .pm{transform:rotate(45deg);background:var(--golden-sand);color:#fff}
.faq .fa{padding:0 .2em 1.8em;color:#091f3dbb;max-width:48em}

/* lead form */
.apply-sec{position:relative;background:var(--steel-blue);color:#fff;overflow:hidden}
.apply-sec .bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.9}
.apply-sec::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#091f3d80 0%,#091f3dd9 40%,#070504f5 100%);z-index:1}
.apply-wrap{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:5em;padding:7em 0;align-items:center}
.apply-txt h2{font-family:var(--serif);font-size:3em;font-weight:400;line-height:1.2;margin-bottom:.6em}
.apply-txt p{color:#ffffffcc;max-width:30em;margin-bottom:1.8em}
.apply-txt .contact-line{display:flex;flex-direction:column;gap:.7em;color:#ffffffb3;font-size:.95em}
.apply-txt .contact-line a{color:#fff}
.apply-txt .contact-line a:hover{color:var(--golden-sand)}
.lead-form{background:#ffffff0d;border:1px solid #ffffff26;backdrop-filter:blur(14px);padding:2.8em}
.lead-form h3{font-family:var(--serif);font-size:1.5em;font-weight:400;margin-bottom:1.4em}
.lf-row{display:grid;grid-template-columns:1fr 1fr;gap:1em;margin-bottom:1em}
.lead-form input[type=text],.lead-form input[type=email],.lead-form input[type=tel],.lead-form select{width:100%;background:#091f3d99;border:1px solid #ffffff2e;color:#fff;padding:1em 1.1em;font-family:var(--gotham-book);font-size:.95em;outline:none;transition:border-color .3s;appearance:none}
.lead-form input:focus,.lead-form select:focus{border-color:var(--golden-sand)}
.lead-form select{color:#ffffffd9}
.lead-form ::placeholder{color:#ffffff73}
.lf-check{display:flex;gap:.9em;align-items:flex-start;font-size:.85em;color:#ffffffb3;margin:1.2em 0 1.6em}
.lf-check input{margin-top:.3em;accent-color:var(--golden-sand)}
.lead-form .btn{width:100%;justify-content:center}
.lf-done{display:none;text-align:center;padding:2em 0}
.lf-done .big{font-family:var(--serif);font-size:1.8em;color:var(--golden-sand);margin-bottom:.5em}
.lf-note{font-size:.72em;color:#ffffff66;margin-top:1.2em}
@media(max-width:900px){.apply-wrap{grid-template-columns:1fr;gap:3em}.lf-row{grid-template-columns:1fr}}

/* footer */
.site-foot{background:var(--footer-black);color:#fff;padding:4em 0 2.5em}
.sf-top{display:flex;justify-content:space-between;align-items:center;gap:2em;flex-wrap:wrap;padding-bottom:2.5em;border-bottom:1px solid #ffffff1a}
.sf-top img{height:2.2em}
.sf-links{display:flex;gap:2.4em;font-family:var(--gotham-cond);text-transform:uppercase;letter-spacing:.14em;font-size:.8em;color:#ffffffb3}
.sf-links a:hover{color:var(--golden-sand)}
@media(max-width:760px){.sf-links{flex-wrap:wrap;gap:1.1em 1.8em}}
.disclosures{padding:2.5em 0 0;color:#ffffff59;font-size:.72em;line-height:1.7}
.disclosures p{margin-bottom:1em;max-width:100em}
.sf-bottom{display:flex;justify-content:space-between;gap:1.5em;padding-top:1.5em;color:#ffffff59;font-size:.8em;flex-wrap:wrap}

/* sticky mobile CTA */
.sticky-cta{position:fixed;left:0;right:0;bottom:0;z-index:180;display:none;grid-template-columns:1fr 1fr;gap:1px;background:#ffffff26;border-top:1px solid #ffffff26;backdrop-filter:blur(14px)}
.sticky-cta a{padding:1.2em;text-align:center;font-family:var(--gotham-cond);text-transform:uppercase;letter-spacing:.14em;font-size:.85em}
.sticky-cta .s1{background:#091f3df2;color:#fff}
.sticky-cta .s2{background:var(--golden-sand);color:var(--steel-blue)}
@media(max-width:760px){.hero-content{padding-right:6.5vw}.hero-chips{display:grid;grid-template-columns:1fr 1fr;gap:.7em;max-width:none}.chip{padding:1.1em 1.2em}.chip .cv{font-size:1.6em}}
@media(max-width:760px){.sticky-cta{display:grid}.fab{display:none}body{padding-bottom:3.6em}.nav .btn{display:none}.nav-inner{padding:1.6em 1.4em 1.2em}.h-hero{font-size:2.9em}.hero-content{padding-top:8em}}

/* fullscreen menu */
.menu{position:fixed;inset:0;z-index:300;background:var(--steel-blue);display:none;overflow:hidden}
.menu.open{display:block}
.menu-inner{position:relative;z-index:2;height:100%;display:grid;grid-template-columns:1.1fr .9fr;gap:4em;padding:11em 6vw 3em;align-items:center}
.menu-links a{display:block;font-family:var(--serif);font-size:clamp(2em,4vw,3.2em);line-height:1.35;color:var(--white-smoke);transition:color .3s,padding-left .4s cubic-bezier(.22,1,.36,1)}
.menu-links a:hover{color:var(--golden-sand);padding-left:.3em}
.menu-imgs{position:relative;height:64vh}
.m-card{position:absolute;overflow:hidden;box-shadow:0 30px 60px -30px rgba(0,0,0,.55)}
.m-card img{position:absolute;left:0;top:-15%;width:100%;height:130%;object-fit:cover}
.m1{left:0;top:6%;width:56%;aspect-ratio:3/3.8;z-index:1}
.m2{right:0;top:0;width:46%;aspect-ratio:3/3.3;z-index:2}
.m3{right:10%;bottom:0;width:52%;aspect-ratio:4/2.9;z-index:3}
@media(max-width:900px){.menu-imgs{display:none}.menu-inner{grid-template-columns:1fr}}
.menu-foot{position:absolute;left:6vw;right:6vw;bottom:2.2em;z-index:2;display:flex;justify-content:space-between;align-items:center;gap:2em;flex-wrap:wrap;border-top:1px solid #ffffff24;padding-top:1.6em}
.menu-foot .small-links{display:flex;gap:3em;font-family:var(--gotham-cond);text-transform:uppercase;letter-spacing:.14em;font-size:1.1em;color:#ffffffb3}
.menu-foot .small-links a:hover{color:var(--golden-sand)}
.menu-close{position:absolute;top:3.2em;right:2.2em;z-index:3;width:3.6em;height:3.6em;border-radius:50%;border:1px solid #ffffff40;display:grid;place-items:center;cursor:pointer;color:#fff;transition:border-color .3s,transform .4s cubic-bezier(.22,1,.36,1)}
.menu-close:hover{border-color:var(--golden-sand);transform:rotate(90deg)}
/* Calculator, tax and ladder blocks fit a phone screen (no sideways scroll) */
@media(max-width:600px){.calc-panel{padding:1.6em 1.25em}.res-cell{padding:1.2em .5em}.res-cell .rv{font-size:1.5em}.tax-cell{padding:1.6em 1em}.tax-cell .rv{font-size:2em}.ladder{font-size:.82em}.ladder th,.ladder td{padding:.9em .6em}}
@media(max-width:420px){.h-hero{font-size:2.68em}}
/* Hero entrance, in CSS so it starts with the first paint and never waits for a script download.
   Same order and easing as the GSAP timeline it replaces (power3.out / power4.out / back.out(1.6)).
   fill-mode backwards: the start state applies only before and during each step, so afterwards the
   element is back on its normal styles (which keeps .nav.hidden and the .fab hover working). */
@keyframes fv-up{from{opacity:0;transform:translateY(var(--fv-y,24px))}to{opacity:1;transform:none}}
@keyframes fv-mask{from{transform:translateY(115%)}to{transform:none}}
@keyframes fv-rise{from{transform:translateY(26px)}to{transform:none}}
@keyframes fv-fade{from{opacity:0}to{opacity:1}}
@keyframes fv-pop{from{opacity:0;transform:scale(0)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:no-preference){
  .nav{--fv-y:-30px;animation:fv-up .8s cubic-bezier(.215,.61,.355,1) backwards}
  #hero-kicker{--fv-y:20px;animation:fv-up .6s cubic-bezier(.215,.61,.355,1) .1s backwards}
  #hero-h1 .line-mask>span{animation:fv-mask 1.05s cubic-bezier(.165,.84,.44,1) .25s backwards}
  #hero-h1 .line-mask:nth-child(2)>span{animation-delay:.37s}
  #hero-h1 .line-mask:nth-child(3)>span{animation-delay:.49s}
  #hero-h1 .line-mask:nth-child(4)>span{animation-delay:.61s}
  /* the paragraph is the largest element on first paint (Google's LCP): it rises without fading, because a
     fading element only counts as painted when its fade ends */
  #hero-sub{animation:fv-rise .9s cubic-bezier(.215,.61,.355,1) backwards}
  #hero-cta{--fv-y:30px;animation:fv-up .8s cubic-bezier(.215,.61,.355,1) .75s backwards}
  #hero-chips .chip{animation:fv-up .7s cubic-bezier(.215,.61,.355,1) .9s backwards}
  #hero-chips .chip:nth-child(2){animation-delay:.98s}
  #hero-chips .chip:nth-child(3){animation-delay:1.06s}
  #hero-chips .chip:nth-child(4){animation-delay:1.14s}
  .hero-note{animation:fv-fade .6s ease 1.15s backwards}
  .fab{animation:fv-pop .6s cubic-bezier(.34,1.56,.64,1) 1.25s backwards}
}
