/* ============================================================================
   LevFin Academy — editorial light theme
   Warm ivory · near-black slate · terracotta held in reserve ·
   grotesque + serif pairing · underline-as-emphasis · zero shadows.
   ============================================================================ */
@font-face{font-family:'Inter';font-weight:400;font-style:normal;font-display:swap;src:url('fonts/inter-400.woff2') format('woff2');}
@font-face{font-family:'Inter';font-weight:500;font-style:normal;font-display:swap;src:url('fonts/inter-500.woff2') format('woff2');}
@font-face{font-family:'Inter';font-weight:600;font-style:normal;font-display:swap;src:url('fonts/inter-600.woff2') format('woff2');}
@font-face{font-family:'Inter';font-weight:700;font-style:normal;font-display:swap;src:url('fonts/inter-700.woff2') format('woff2');}
@font-face{font-family:'Playfair Display';font-weight:400;font-style:normal;font-display:swap;src:url('fonts/playfair-400.woff2') format('woff2');}
@font-face{font-family:'Playfair Display';font-weight:600;font-style:normal;font-display:swap;src:url('fonts/playfair-600.woff2') format('woff2');}
@font-face{font-family:'Playfair Display';font-weight:400;font-style:italic;font-display:swap;src:url('fonts/playfair-400i.woff2') format('woff2');}
@font-face{font-family:'JetBrains Mono';font-weight:400;font-style:normal;font-display:swap;src:url('fonts/jetbrains-400.woff2') format('woff2');}
@font-face{font-family:'JetBrains Mono';font-weight:500;font-style:normal;font-display:swap;src:url('fonts/jetbrains-500.woff2') format('woff2');}

:root{
  --slate-dark:#141413;--ivory-light:#faf9f5;--ivory-medium:#f0eee6;--ivory-dark:#e8e6dc;--oat:#e3dacc;
  --cloud-medium:#b0aea5;--cloud-light:#d1cfc5;--cloud-dark:#5f5e59;--slate-medium:#3d3d3a;--slate-light:#5e5d59;
  --clay:#d97757;          /* bright terracotta — decorative / dark-card accent only */
  --clay-strong:#b5532f;   /* burnt terracotta — AA-safe on ivory: button fills + accent text */
  --ember:#c6613f;--olive:#788c5d;
  --sans:'Inter',ui-sans-serif,system-ui,-apple-system,sans-serif;
  --serif:'Playfair Display',ui-serif,Georgia,serif;
  --mono:'JetBrains Mono',ui-monospace,'IBM Plex Mono',Menlo,Consolas,monospace;
  --max-w:1200px;--card-pad:31px;
}
*,*::before,*::after{box-sizing:border-box;}
body{margin:0;background:var(--ivory-light);color:var(--slate-dark);font-family:var(--sans);font-size:16px;line-height:1.55;letter-spacing:-0.002em;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:clip;}
a{color:inherit;}img,svg{display:block;max-width:100%;}
.wrap{max-width:var(--max-w);margin:0 auto;padding:0 32px;}
.section{padding:66px 0;}
.skip{position:absolute;left:-9999px;top:0;z-index:200;background:var(--slate-dark);color:var(--ivory-light);padding:10px 16px;font-family:var(--mono);font-size:13px;text-decoration:none;}
.skip:focus{left:8px;top:8px;}
/* type */
.eyebrow{font-family:var(--mono);font-size:12px;font-weight:500;letter-spacing:0.18em;text-transform:uppercase;color:var(--slate-dark);}
.eyebrow--accent{color:var(--clay-strong);}
.kicker{font-family:var(--mono);font-size:11.5px;font-weight:500;letter-spacing:0.16em;text-transform:uppercase;color:var(--cloud-dark);}
.h-lg{font-family:var(--sans);font-weight:700;font-size:clamp(38px,5.4vw,61px);line-height:1.05;letter-spacing:-0.022em;margin:0;}
.h2{font-family:var(--sans);font-weight:600;font-size:clamp(26px,3.2vw,40px);line-height:1.12;letter-spacing:-0.015em;margin:0;}
.h3{font-family:var(--sans);font-weight:600;font-size:20px;line-height:1.3;letter-spacing:-0.01em;margin:0;}
.display{font-family:var(--serif);font-weight:400;line-height:1.08;letter-spacing:0;}
.lede{font-size:18px;line-height:1.55;color:var(--slate-light);}
.body{font-size:15.5px;line-height:1.6;color:var(--slate-medium);}
.u{text-decoration:underline;text-decoration-thickness:0.11em;text-underline-offset:0.1em;text-decoration-skip-ink:none;}
.muted{color:var(--cloud-dark);}
strong,b{font-weight:600;color:var(--slate-dark);}
/* buttons */
.btn{display:inline-flex;align-items:center;gap:8px;font-family:var(--sans);font-size:15px;font-weight:500;padding:13px 28px;border:1px solid var(--slate-dark);background:var(--ivory-light);color:var(--slate-dark);text-decoration:none;border-radius:0;cursor:pointer;transition:background .15s,color .15s,border-color .15s;}
.btn:hover{background:var(--slate-dark);color:var(--ivory-light);}
.btn--asym{border-radius:0 0 8px 8px;}
.btn--accent{background:var(--clay-strong);border-color:var(--clay-strong);color:#fff;font-weight:600;}
.btn--accent:hover{background:#993f20;border-color:#993f20;color:#fff;}
.btn--ghost{background:transparent;}
.btn--ondark{background:var(--ivory-light);border-color:var(--ivory-light);}
.btn--ondark:hover{background:transparent;color:var(--ivory-light);}
.arrow{font-weight:500;text-decoration:none;}
.arrow::after{content:" \2192";}
.arrow:hover{text-decoration:underline;text-decoration-thickness:0.1em;text-underline-offset:0.14em;}
/* nav */
.nav{position:sticky;top:0;z-index:100;background:rgba(240,238,230,0.92);backdrop-filter:saturate(1.1) blur(6px);border-bottom:1px solid transparent;}
.nav__row{display:flex;align-items:center;justify-content:space-between;height:66px;gap:16px;position:relative;}
.nav__toggle{display:none;}
.nav__burger{display:none;cursor:pointer;padding:10px;margin-right:-10px;user-select:none;}
.nav__burger span{display:block;width:22px;height:2px;background:var(--slate-dark);margin:5px 0;border-radius:1px;transition:transform .2s ease, opacity .2s ease;}
.nav__toggle:checked ~ .nav__burger span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.nav__toggle:checked ~ .nav__burger span:nth-child(2){opacity:0;}
.nav__toggle:checked ~ .nav__burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
.h2{scroll-margin-top:80px;}
h2[id],section[id]{scroll-margin-top:80px;}
.wordmark{display:flex;align-items:center;gap:10px;font-weight:700;font-size:16px;letter-spacing:-0.01em;color:var(--slate-dark);text-decoration:none;}
.wordmark sup{font-size:0.5em;vertical-align:super;}
.nav__links{display:flex;align-items:center;gap:2px;}
.nav__link{font-size:15px;font-weight:400;color:var(--slate-dark);text-decoration:none;padding:8px 13px;}
.nav__link:hover{text-decoration:underline;text-decoration-thickness:0.09em;text-underline-offset:0.16em;}
.logomark{width:28px;height:28px;flex:none;}
/* hero */
.hero{padding:78px 0 36px;}
.hero__grid{display:grid;grid-template-columns:1.5fr 1fr;gap:48px;align-items:end;}
.hero__verbs{font-size:18px;line-height:1.5;color:var(--slate-dark);font-weight:500;margin:0 0 14px;}
.hero__cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:6px;}
.hero__sub{margin-top:18px;font-family:var(--mono);font-size:12.5px;letter-spacing:0.02em;color:var(--slate-light);}
/* strips */
.statstrip{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--cloud-light);border-bottom:1px solid var(--cloud-light);margin-top:54px;}
.statstrip>div{padding:26px 4px 26px 0;}
.statstrip>div+div{padding-left:26px;border-left:1px solid var(--cloud-light);}
.stat__n{font-size:30px;font-weight:600;letter-spacing:-0.02em;line-height:1;}
.stat__n span{color:var(--clay-strong);}
.stat__l{font-family:var(--mono);font-size:11px;letter-spacing:0.07em;text-transform:uppercase;color:var(--cloud-dark);margin-top:9px;}
.pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--cloud-light);}
.pillars>div{padding:24px 22px;}
.pillars>div+div{border-left:1px solid var(--cloud-light);}
.pillars__n{font-family:var(--mono);font-size:12px;color:var(--clay-strong);letter-spacing:0.1em;}
.pillars__t{font-weight:600;font-size:16px;margin-top:10px;letter-spacing:-0.01em;}
.pillars__b{font-size:13.5px;color:var(--slate-light);margin-top:6px;line-height:1.5;}
/* section header */
.sec-head{margin-bottom:34px;}
.sec-head .eyebrow{display:block;margin-bottom:14px;}
.sec-head .lede{margin-top:18px;max-width:720px;}
/* cards / grids */
.grid{display:grid;gap:18px;}
.g2{grid-template-columns:repeat(2,1fr);}
.g3{grid-template-columns:repeat(3,1fr);}
.g4{grid-template-columns:repeat(4,1fr);}
.card{background:var(--ivory-medium);border-radius:8px;padding:var(--card-pad);}
.card--oat{background:var(--oat);}
.card--outline{background:transparent;border:1px solid var(--slate-dark);}
/* session cards (curriculum) — subgrid so the two cards in a pair share row heights (dividers align) */
.sessions-pair{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:repeat(5,auto);gap:0 18px;}
.sessions-pair + .sessions-pair{margin-top:18px;}
.session-card{display:grid;grid-template-rows:subgrid;grid-row:1 / span 5;background:var(--ivory-medium);border-radius:8px;padding:0 30px;}
.session__hd{padding-top:30px;}
.session__meta{font-family:var(--mono);font-size:11px;letter-spacing:0.14em;text-transform:uppercase;color:var(--cloud-dark);}
.session__t{font-weight:600;font-size:21px;letter-spacing:-0.015em;margin:10px 0 18px;}
.session__item{padding:14px 0;border-top:1px solid var(--cloud-light);}
.session__item:last-child{padding-bottom:30px;}
.session__item p{margin:5px 0 0;font-size:14px;line-height:1.55;color:var(--slate-light);}
/* dark feature card */
.feature{background:var(--slate-dark);color:var(--ivory-dark);border-radius:24px;padding:54px 52px;overflow:hidden;}
.feature .display{color:var(--ivory-light);}
.feature__grid{display:grid;grid-template-columns:1.1fr 1fr;gap:44px;align-items:center;}
.feature .eyebrow{color:var(--clay);}
/* framework boxes */
.fxrow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:16px;align-items:stretch;}
.fxop{display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:30px;color:var(--clay-strong);}
.fxbox{background:var(--ivory-medium);border-radius:8px;padding:26px;}
.fxbox--hi{background:var(--slate-dark);color:var(--ivory-dark);}
.fxbox--hi .h3{color:var(--ivory-light);}
.fxbox--hi .kicker{color:var(--clay);}
.fxbox .h3{font-size:18px;margin:10px 0 10px;}
.fxbox p{margin:0;font-size:13.5px;line-height:1.55;color:var(--slate-light);}
.fxbox--hi p{color:var(--ivory-dark);}
/* option grid */
.optgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
.optcell{border:1px solid var(--cloud-light);border-radius:8px;padding:18px;}
.optcell b{display:block;font-size:14.5px;font-weight:600;margin-bottom:7px;letter-spacing:-0.01em;}
.optcell span{font-family:var(--mono);font-size:12px;color:var(--slate-light);line-height:1.5;}
.tool-actions{display:flex;flex-wrap:wrap;align-items:flex-start;gap:10px 12px;margin-top:20px;}
.tool-actions .btn{justify-content:center;min-width:152px;}
.optfoot{display:flex;gap:36px;flex-wrap:wrap;margin-top:20px;padding-top:18px;border-top:1px solid var(--cloud-light);}
.optfoot div span{font-family:var(--mono);font-size:11px;letter-spacing:0.12em;text-transform:uppercase;color:var(--cloud-dark);}
.optfoot div p{margin:5px 0 0;font-size:14px;color:var(--slate-dark);}
/* decomposition — one accent: positives terracotta, negatives neutral */
.decomp{background:var(--ivory-medium);border-radius:16px;padding:34px;}
.decomp__legend{display:flex;gap:24px;flex-wrap:wrap;font-family:var(--mono);font-size:11px;letter-spacing:0.04em;color:var(--slate-light);margin-bottom:20px;}
.decomp__legend i{font-style:normal;display:inline-flex;align-items:center;gap:7px;}
.dot{width:9px;height:9px;border-radius:2px;display:inline-block;}
.dot--neg{background:var(--cloud-medium);}.dot--pos{background:var(--clay-strong);}
.decomp__cols{display:grid;grid-template-columns:1fr 1fr;gap:0 40px;}
.drow{display:flex;justify-content:space-between;gap:16px;padding:8px 0;border-bottom:1px solid var(--cloud-light);font-size:13.5px;}
.drow span:first-child{color:var(--slate-medium);}
.drow .v{font-family:var(--mono);font-weight:500;color:var(--slate-medium);}
.v.pos{color:var(--clay-strong);font-weight:600;}
.dtotal{display:flex;justify-content:space-between;margin-top:16px;padding-top:14px;border-top:2px solid var(--slate-dark);font-weight:700;font-size:15px;}
.dtotal .v{font-weight:700;color:var(--slate-dark);}
.dstrip{display:grid;grid-template-columns:repeat(5,1fr);border:1px solid var(--cloud-light);border-radius:8px;overflow:hidden;margin-top:26px;}
.dstrip>div{padding:22px 14px;text-align:center;}
.dstrip>div+div{border-left:1px solid var(--cloud-light);}
.dstrip .n{font-size:26px;font-weight:600;letter-spacing:-0.02em;}
.dstrip .l{font-family:var(--mono);font-size:10px;letter-spacing:0.06em;text-transform:uppercase;color:var(--cloud-dark);margin-top:8px;}
/* sponsor frontier — eta formula + tier table */
.formula{display:inline-flex;align-items:center;gap:11px;margin-top:18px;border:1px solid var(--slate-dark);border-radius:6px;padding:9px 16px;}
.formula__sym{font-family:var(--serif);font-style:italic;font-size:22px;color:var(--clay-strong);line-height:1;}
.formula__eq{color:var(--cloud-dark);font-size:15px;}
.formula__def{font-size:13.5px;color:var(--slate-dark);}
.formula__op{color:var(--clay-strong);font-weight:600;padding:0 3px;}
.frontier{border:1px solid var(--slate-dark);border-radius:8px;overflow:hidden;margin-top:6px;}
.tier-group + .tier-group .tier-band{border-top:1px solid var(--slate-dark);}
.tier-band{display:flex;align-items:baseline;gap:11px;flex-wrap:wrap;background:var(--oat);padding:11px 22px;}
.tier-band__n{font-family:var(--mono);font-weight:600;font-size:13px;color:var(--clay-strong);letter-spacing:0.04em;}
.tier-band__t{font-weight:600;font-size:15px;letter-spacing:-0.01em;}
.tier-band__cond{font-family:var(--mono);font-size:10.5px;letter-spacing:0.06em;text-transform:uppercase;color:var(--slate-light);margin-left:auto;}
.trow{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 22px;border-top:1px solid var(--cloud-light);font-size:14px;color:var(--slate-medium);}
.trow .eta{font-family:var(--mono);font-weight:600;font-size:13px;color:var(--slate-dark);background:var(--ivory-medium);border:1px solid var(--cloud-light);border-radius:5px;padding:3px 10px;min-width:64px;text-align:center;flex:none;}
.trow .eta::before{content:"η\00a0";color:var(--cloud-dark);font-weight:400;}
.trow .eta.neg{color:var(--cloud-dark);}
.trow .more{color:var(--cloud-dark);font-style:italic;}
/* who cards */
.who b{display:block;font-weight:600;font-size:16px;margin-bottom:8px;letter-spacing:-0.01em;}
.who p{margin:0;font-size:14px;color:var(--slate-light);line-height:1.55;}
/* instructor */
.instructor{display:grid;grid-template-columns:300px 1fr;gap:40px;align-items:center;background:var(--oat);border-radius:24px;padding:42px;}
.instructor img{width:100%;height:auto;border-radius:16px;}
.instructor .stats{display:flex;gap:30px;flex-wrap:wrap;margin-top:22px;}
.instructor .stats b{font-size:18px;font-weight:600;}
.instructor .stats span{display:block;font-family:var(--mono);font-size:11px;color:var(--cloud-dark);text-transform:uppercase;letter-spacing:0.06em;margin-top:4px;}
/* enroll */
.cohorts{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.cohort{border:1px solid var(--cloud-light);border-radius:8px;padding:28px;display:flex;flex-direction:column;}
.cohort--hl{border-color:var(--clay-strong);background:rgba(181,83,47,0.04);}
.cohort .m{display:flex;justify-content:space-between;font-family:var(--mono);font-size:11px;letter-spacing:0.1em;text-transform:uppercase;color:var(--cloud-dark);}
.cohort .t{font-family:var(--serif);font-size:28px;margin:14px 0 8px;}
.cohort .d{font-family:var(--mono);font-size:12.5px;color:var(--slate-light);}
.cohort .tag{font-family:var(--mono);font-size:10.5px;letter-spacing:0.1em;text-transform:uppercase;color:var(--clay-strong);margin-top:10px;font-weight:500;}
.cohort .btn{margin-top:auto;justify-content:center;}
.slotband{font-family:var(--mono);font-size:12px;color:var(--slate-light);text-align:center;border:1px solid var(--cloud-light);border-radius:8px;padding:16px;margin:18px 0;letter-spacing:0.02em;}
.pricebox{border:1px solid var(--slate-dark);border-radius:16px;overflow:hidden;}
.pricebox__grid{display:grid;grid-template-columns:1.4fr 1fr;}
.pricebox__main{padding:38px;}
.pricebox__side{padding:38px;background:var(--ivory-medium);border-left:1px solid var(--cloud-light);}
.deliv{list-style:none;margin:18px 0 0;padding:0;}
.deliv li{padding:9px 0;border-top:1px solid var(--cloud-light);font-size:14px;display:flex;gap:11px;}
.deliv li::before{content:"\2726";color:var(--clay-strong);flex:none;}
.deliv span{color:var(--slate-light);}
.callout{border:1px solid var(--cloud-medium);border-radius:8px;padding:16px 18px;margin-top:22px;}
.callout span{font-family:var(--mono);font-size:11px;letter-spacing:0.1em;text-transform:uppercase;color:var(--clay-strong);}
.callout p{margin:8px 0 0;font-size:13.5px;color:var(--slate-light);}
.price{font-family:var(--serif);font-size:54px;line-height:1;margin-top:6px;}
.price s{font-size:24px;color:var(--cloud-medium);vertical-align:0.18em;margin-left:6px;}
.afterband{grid-column:1/-1;border-top:1px solid var(--slate-dark);padding:24px 38px;display:flex;gap:14px;align-items:flex-start;}
/* book table of contents */
.toc-part{border-top:1px solid var(--cloud-light);padding:26px 0;display:grid;grid-template-columns:260px 1fr;gap:28px;}
.toc-part__h .n{font-family:var(--mono);font-size:12px;color:var(--clay-strong);letter-spacing:0.1em;}
.toc-part__h .t{font-weight:700;font-size:18px;letter-spacing:-0.01em;margin-top:8px;text-transform:uppercase;}
.toc-part__h .d{font-size:13px;color:var(--slate-light);font-style:italic;margin-top:8px;line-height:1.5;}
.toc-ch{display:flex;gap:12px;padding:7px 0;border-bottom:1px solid var(--cloud-light);font-size:14.5px;}
.toc-ch .cn{font-family:var(--mono);font-size:12px;color:var(--cloud-dark);min-width:24px;}
.bookhero__strip{display:flex;gap:40px;margin-top:30px;border-top:1px solid var(--cloud-light);padding-top:24px;}
.bookhero__strip b{font-family:var(--serif);font-size:34px;}
.bookhero__strip span{display:block;font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:0.08em;color:var(--cloud-dark);margin-top:4px;}
/* footer */
.footer{border-top:1px solid var(--cloud-light);padding:30px 0;}
.footer__top{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;padding-bottom:22px;}
.footer__row{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px 24px;font-family:var(--mono);font-size:12px;color:var(--slate-light);padding-top:20px;border-top:1px solid var(--cloud-light);}
/* responsive */
@media(max-width:960px){
  .nav__toggle{display:block;appearance:none;position:absolute;top:11px;right:-10px;width:44px;height:44px;margin:0;border:0;background:transparent;opacity:0;cursor:pointer;z-index:2;}
  .nav__burger{display:block;}
  .nav__toggle:focus-visible + .nav__burger{outline:2px solid var(--clay-strong);outline-offset:2px;}
  .nav__links{position:absolute;top:66px;left:0;right:0;background:rgba(240,238,230,0.98);backdrop-filter:saturate(1.1) blur(8px);flex-direction:column;align-items:stretch;gap:0;padding:14px 0;border-bottom:1px solid var(--cloud-light);box-shadow:0 12px 24px -18px rgba(20,20,19,0.35);max-height:0;overflow:hidden;padding-top:0;padding-bottom:0;transition:max-height .25s ease, padding .25s ease;pointer-events:none;}
  .nav__toggle:checked ~ .nav__links{max-height:70vh;padding-top:14px;padding-bottom:14px;pointer-events:auto;}
  .nav__links .nav__link{display:block;padding:12px clamp(18px,6vw,32px);font-size:16px;}
  .nav__links .btn{margin:8px clamp(18px,6vw,32px);text-align:center;justify-content:center;}
  .nav__links .btn--ghost{display:block;}
}
@media(max-width:900px){
  .hero__grid,.feature__grid,.pricebox__grid,.instructor,.toc-part{grid-template-columns:1fr;}
  .tier-band__cond{margin-left:0;width:100%;}
  .g2,.g3,.g4,.cohorts,.optgrid,.pillars{grid-template-columns:1fr;}
  .sessions-pair{grid-template-columns:1fr;grid-template-rows:none;gap:18px;}
  .session-card{display:block;grid-row:auto;padding:30px;}
  .session__hd{padding-top:0;}
  .session__item:last-child{padding-bottom:0;}
  .statstrip{grid-template-columns:repeat(2,1fr);}
  .statstrip>div:nth-child(3){border-left:0;}
  .fxrow{grid-template-columns:1fr;}.fxop{padding:6px;}
  .decomp__cols{grid-template-columns:1fr;}
  .dstrip{grid-template-columns:repeat(2,1fr);}
  .pricebox__side{border-left:0;border-top:1px solid var(--cloud-light);}
  .pillars>div+div,.statstrip>div+div{border-left:0;border-top:1px solid var(--cloud-light);}
  .feature,.instructor{padding:34px 24px;}
  .afterband{padding:22px 24px;}
  .bookhero__strip{gap:26px;}
}
@media(max-width:560px){
  .wrap{padding-left:18px;padding-right:18px;}
  .hero{padding-top:54px;}
  .feature{padding:30px 20px;border-radius:18px;}
  .feature__grid>*{min-width:0;}
  .feature .display{font-size:clamp(34px,11vw,46px)!important;max-width:100%;overflow-wrap:break-word;}
  .feature .btn{max-width:100%;white-space:normal;justify-content:center;text-align:center;}
  .bookhero__strip{flex-wrap:wrap;gap:20px 26px;}
}
