body{margin:0;background:#fdfaf1;color:#1d3347;font-family:"Instrument Sans","Helvetica Neue",Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit}
a:hover{color:#132a3d}
.bo{--navy:#132a3d;--ink:#0f2233;--body:#1d3347;--gold:#ffd32d;--cream:#fdfaf1;--paper:#ffffff;--serif:"Cormorant Garamond",Georgia,"Times New Roman",serif;--sans:"Instrument Sans","Helvetica Neue",Helvetica,Arial,sans-serif;--display:"Poppins","Instrument Sans","Helvetica Neue",Helvetica,Arial,sans-serif;--gutter:clamp(24px,5vw,96px);--sp-s:clamp(36px,6vw,64px);--sp-m:clamp(60px,9vw,96px);--sp-l:clamp(88px,13vw,140px);--sp-xl:clamp(112px,17vw,200px);width:100%;overflow-x:clip}
.wrap{max-width:1200px;margin:0 auto;padding:0 var(--gutter)}
.eyebrow{margin:0;font-family:var(--sans);font-weight:600;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--navy)}
.eyebrow--gold{color:#b58a2e}
.eyebrow--light{color:rgba(255,255,255,.78)}
.sal{margin:0;font-family:var(--serif);font-style:italic;font-weight:500;font-size:clamp(30px,3.2vw,44px);line-height:1.05;letter-spacing:-.005em;color:var(--navy)}
.h-display{margin:10px 0 0;font-family:var(--display);font-weight:600;font-size:clamp(34px,5.4vw,78px);line-height:1.04;letter-spacing:-.025em;color:var(--ink);text-wrap:balance}
.h2{margin:14px 0 0;font-family:var(--display);font-weight:600;font-size:clamp(30px,4.2vw,58px);line-height:1.06;letter-spacing:-.02em;color:var(--ink);text-wrap:balance}
.h3{margin:0;font-family:var(--display);font-weight:600;font-size:clamp(22px,2vw,30px);line-height:1.12;letter-spacing:-.015em;color:var(--ink)}
.support{margin:14px 0 0;max-width:30em;font-size:clamp(16px,1.25vw,19px);line-height:1.55;color:var(--body)}
.q{margin:0;font-family:var(--serif);font-style:italic;font-weight:500;font-size:clamp(26px,3vw,46px);line-height:1.12;letter-spacing:-.012em;color:var(--ink);text-wrap:balance}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 30px;background:var(--gold);color:var(--navy);text-decoration:none;font-family:var(--sans);font-size:12.5px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;border-radius:2px;transition:background-color .2s ease,transform .2s ease}
.button:hover{background:#ffdc57;color:var(--navy)}
.button:active{transform:translateY(1px)}
.button--ghost{background:transparent;color:var(--navy);border:1.5px solid var(--navy)}
.button--ghost:hover{background:var(--navy);color:#fff}
.button--onnavy{color:var(--navy)}
.mk{position:relative;display:inline-block}
.mk__line{position:absolute;left:-.03em;bottom:-.12em;width:calc(100% + .06em);height:.18em;overflow:visible;pointer-events:none}
.mk__line path{fill:none;stroke:#ffd32d;stroke-width:7;stroke-linecap:round;vector-effect:non-scaling-stroke}
em.gold{font-style:inherit;color:var(--gold)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px var(--gutter)}
.nav__brand{font-weight:600;font-size:15px;letter-spacing:.24em;text-decoration:none;color:var(--navy);padding:12px 0}
.nav__brand b{color:#b58a2e;font-weight:600}
.nav__links{display:flex;gap:28px;list-style:none;margin:0;padding:0;font-size:13px;font-weight:500;letter-spacing:.04em}
.nav__links a{text-decoration:none;color:var(--body)}
.nav__cta{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;background:transparent;color:var(--navy);border:1px solid var(--navy);text-decoration:none;font-size:10.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;border-radius:2px}
.nav__cta:hover{background:var(--navy);color:#fff}
.hero{background:linear-gradient(180deg,#ffffff 0%,#fdfaf1 100%);padding:0 0 var(--sp-l)}
.hero__grid{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,6fr);gap:clamp(32px,5vw,80px);align-items:center;padding-top:var(--sp-m)}
.hero__copy{max-width:36rem}
.hero__meta{margin:16px 0 0;font-size:13px;letter-spacing:.04em;color:#5c6874}
.hero__actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}
.sheet{position:relative;display:flex;justify-content:center}
.sheet img{display:block;width:min(100%,560px);height:auto;box-shadow:0 30px 70px rgba(19,42,61,.22),0 4px 14px rgba(19,42,61,.12);transform:rotate(-2deg);background:#fff}
.sheet__tag{position:absolute;right:4%;bottom:-18px;background:var(--navy);color:#fff;font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:600;padding:12px 16px;border-radius:2px}
.s-pain{background:var(--cream);padding:var(--sp-xl) 0 var(--sp-l)}
.pain__head{max-width:40em}
.pain__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,3vw,48px);margin-top:var(--sp-s);border-top:1px solid #d9d3bf;padding-top:32px}
.pain__n{font-family:var(--display);font-weight:600;font-size:13px;letter-spacing:.2em;color:#8a94a0}
.pain__t{margin:12px 0 0;font-family:var(--serif);font-weight:500;font-size:clamp(21px,1.8vw,27px);line-height:1.25;color:var(--ink);text-wrap:pretty}
.stat{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(24px,4vw,64px);align-items:center;margin-top:var(--sp-m);padding:clamp(28px,3vw,44px);background:var(--paper);border:1px solid #efe9d8}
.stat__n{margin:0;font-family:var(--display);font-weight:700;font-size:clamp(44px,5.6vw,84px);line-height:1;letter-spacing:-.04em;color:var(--navy)}
.stat__t{margin:0;font-size:clamp(17px,1.4vw,21px);line-height:1.5;color:var(--body)}
.s-ideal{background:var(--paper);padding:var(--sp-xl) 0;border-top:1px solid #efe9d8;border-bottom:1px solid #efe9d8}
.ideal__grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(32px,5vw,80px);align-items:center}
.ideal__door{position:relative;display:flex;justify-content:center}
.ideal__door img{display:block;width:min(100%,520px);height:auto;box-shadow:0 24px 60px rgba(19,42,61,.18)}
.ideal__cite{margin:22px 0 0;font-size:13px;letter-spacing:.04em;color:#5c6874}
.s-program{background:var(--cream);padding:var(--sp-xl) 0 var(--sp-l)}
.piece{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,5vw,80px);align-items:center;padding:var(--sp-m) 0;border-top:1px solid #d9d3bf}
.piece:first-of-type{border-top:0;padding-top:var(--sp-s)}
.piece--flip .piece__media{order:-1}
.piece__n{font-family:var(--display);font-weight:700;font-size:clamp(48px,5vw,72px);line-height:1;letter-spacing:-.04em;color:#e9dfb8}
.piece__k{margin:6px 0 0;font-family:var(--sans);font-weight:600;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:#b58a2e}
.piece__h{margin:10px 0 0;font-family:var(--display);font-weight:600;font-size:clamp(26px,2.6vw,38px);line-height:1.08;letter-spacing:-.02em;color:var(--ink)}
.piece__p{margin:14px 0 0;font-size:clamp(16px,1.2vw,18px);line-height:1.6;color:var(--body);max-width:32em}
.piece__media img{display:block;width:100%;height:auto;background:#fff;box-shadow:0 20px 50px rgba(19,42,61,.16)}
.piece__media--badge{display:flex;justify-content:center}
.piece__media--badge img{width:min(60%,300px);box-shadow:none}
.piece__media--person img{box-shadow:none}
.tag{display:inline-block;margin-left:10px;padding:4px 8px;background:var(--gold);color:var(--navy);font-size:10px;letter-spacing:.16em;text-transform:uppercase;font-weight:600;border-radius:2px;vertical-align:middle}
.s-doors{position:relative;isolation:isolate;overflow:clip;background:#0f2233;color:#fff;padding:var(--sp-xl) 0;border-top-left-radius:50% clamp(28px,6vw,96px);border-top-right-radius:50% clamp(28px,6vw,96px);margin-top:-1px}
.s-doors::before{content:"";position:absolute;inset:-20%;z-index:-1;pointer-events:none;background:radial-gradient(42% 38% at 30% 30%,rgba(46,92,138,.55),rgba(46,92,138,0) 70%),radial-gradient(36% 40% at 78% 70%,rgba(31,66,102,.6),rgba(31,66,102,0) 70%),radial-gradient(30% 34% at 70% 22%,rgba(255,211,45,.07),rgba(255,211,45,0) 70%)}
.doors__head{text-align:center;max-width:44em;margin:0 auto}
.doors__h{margin:14px auto 0;font-family:var(--display);font-weight:600;font-size:clamp(32px,4.6vw,66px);line-height:1.04;letter-spacing:-.025em;color:#fffaf0;text-wrap:balance}
.doors__sub{margin:18px auto 0;max-width:30em;font-family:var(--serif);font-weight:500;font-size:clamp(19px,1.7vw,26px);line-height:1.35;color:#fffaf0}
.doors{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(24px,3vw,48px);margin-top:var(--sp-m)}
.door{position:relative;padding:clamp(28px,3vw,44px);border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.04)}
.door__l{font-family:var(--sans);font-weight:600;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}
.door__h{margin:12px 0 0;font-family:var(--display);font-weight:600;font-size:clamp(26px,2.6vw,38px);line-height:1.08;letter-spacing:-.02em;color:#fff}
.door__p{margin:14px 0 0;font-size:clamp(16px,1.2vw,18px);line-height:1.6;color:rgba(255,250,240,.9)}
.door__pay{margin:22px 0 0;padding-top:18px;border-top:1px solid rgba(255,255,255,.22);display:flex;gap:28px;flex-wrap:wrap}
.door__pay b{display:block;font-family:var(--display);font-weight:600;font-size:clamp(24px,2.4vw,34px);letter-spacing:-.02em;color:var(--gold);line-height:1}
.door__pay span{display:block;margin-top:6px;font-size:13px;line-height:1.4;color:rgba(255,250,240,.8);max-width:16em}
.door__icon{width:56px;height:56px;margin-bottom:18px}
.doors__foot{margin:var(--sp-s) auto 0;max-width:44em;text-align:center;font-family:var(--serif);font-style:italic;font-weight:500;font-size:clamp(20px,2vw,30px);line-height:1.25;color:#fffaf0}
.s-seller{background:var(--paper);padding:var(--sp-l) 0}
.seller__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,5vw,80px);align-items:start}
.terms{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 28px}
.terms li{display:flex;gap:14px;align-items:flex-start;padding:18px 0;border-top:1px solid #efe9d8;font-size:clamp(16px,1.2vw,18px);line-height:1.5;color:var(--body)}
.terms svg{flex:0 0 auto;width:22px;height:22px;margin-top:2px}
.s-coach{background:var(--cream);padding:var(--sp-l) 0}
.coach__grid{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(32px,5vw,80px);align-items:center}
.coach__img img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:50% 20%}
.coach__stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:28px;padding-top:24px;border-top:1px solid #d9d3bf}
.coach__stats b{display:block;font-family:var(--display);font-weight:700;font-size:clamp(34px,3.6vw,56px);line-height:1;letter-spacing:-.035em;color:var(--navy)}
.coach__stats span{display:block;margin-top:8px;font-size:14px;color:#5c6874;letter-spacing:.02em}
.coach__brands{margin:22px 0 0;font-size:14px;line-height:1.6;color:#5c6874}
.s-price{background:var(--paper);padding:var(--sp-xl) 0;border-top:1px solid #efe9d8}
.price__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,5vw,80px);align-items:start}
.price__card{padding:clamp(28px,3vw,44px);background:var(--cream);border:1px solid #e9e2cc}
.price__amt{display:flex;align-items:baseline;gap:8px;margin-top:18px}
.price__amt b{font-family:var(--display);font-weight:700;font-size:clamp(72px,8vw,120px);line-height:.9;letter-spacing:-.05em;color:var(--navy)}
.price__amt span{font-family:var(--display);font-weight:600;font-size:clamp(22px,2vw,30px);letter-spacing:-.02em;color:var(--navy)}
.price__notes{list-style:none;margin:22px 0 0;padding:0;display:grid;gap:8px;font-size:15px;line-height:1.5;color:var(--body)}
.price__notes li{padding-left:18px;position:relative}
.price__notes li::before{content:"";position:absolute;left:0;top:.6em;width:8px;height:8px;background:var(--gold)}
.price__cta{margin-top:28px;display:grid;gap:12px}
.price__fine{margin:0;font-size:13px;line-height:1.5;color:#5c6874}
.inc{list-style:none;margin:22px 0 0;padding:0}
.inc li{display:flex;gap:16px;align-items:flex-start;padding:18px 0;border-top:1px solid #efe9d8;font-size:clamp(16px,1.25vw,19px);line-height:1.5;color:var(--body)}
.inc li:last-child{border-bottom:1px solid #efe9d8}
.inc svg{flex:0 0 auto;width:22px;height:22px;margin-top:3px}
.deadline{margin:22px 0 0;padding:18px 22px;background:#fff4b5;border-left:0;font-size:15px;line-height:1.55;color:var(--ink)}
.s-call{background:var(--cream);padding:var(--sp-l) 0}
.call__grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(32px,5vw,80px);align-items:center}
.tease{margin-top:var(--sp-m);padding-top:var(--sp-s);border-top:1px solid #d9d3bf;display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(24px,4vw,64px);align-items:center}
.tease__p{margin:10px 0 0;font-size:clamp(16px,1.2vw,18px);line-height:1.6;color:var(--body);max-width:34em}
.s-close{position:relative;isolation:isolate;overflow:clip;background:#0f2233;color:#fff;padding:var(--sp-xl) 0 var(--sp-l);text-align:center}
.s-close::before{content:"";position:absolute;inset:-20%;z-index:-1;pointer-events:none;background:radial-gradient(48% 42% at 20% 80%,rgba(24,52,84,.9),rgba(24,52,84,0) 70%),radial-gradient(42% 38% at 70% 20%,rgba(46,92,138,.5),rgba(46,92,138,0) 70%)}
.close__h{margin:16px auto 0;max-width:14em;font-family:var(--display);font-weight:600;font-size:clamp(40px,6.4vw,96px);line-height:.98;letter-spacing:-.035em;color:#fff;text-wrap:balance}
.close__sub{margin:22px auto 0;max-width:34em;font-family:var(--serif);font-weight:500;font-size:clamp(19px,1.8vw,27px);line-height:1.35;color:#fffaf0}
.close__meta{margin:28px 0 0;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.6)}
.s-expect{background:var(--paper);padding:var(--sp-xl) 0 var(--sp-l);border-top:1px solid #efe9d8}
.steps{list-style:none;margin:var(--sp-s) 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(20px,2.5vw,36px);counter-reset:none}
.step{padding:24px 0 0;border-top:2px solid var(--navy)}
.step__n{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--gold);color:var(--navy);font-family:var(--display);font-weight:700;font-size:15px}
.step__h{margin:16px 0 0;font-family:var(--display);font-weight:600;font-size:clamp(18px,1.5vw,22px);line-height:1.15;letter-spacing:-.01em;color:var(--ink)}
.step__p{margin:10px 0 0;font-size:15px;line-height:1.55;color:var(--body)}
.packet{margin-top:var(--sp-m);padding-top:var(--sp-s);border-top:1px solid #efe9d8}
.packet__head{max-width:40em}
.packet__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(20px,2.5vw,36px);margin-top:32px}
.page{margin:0;display:flex;flex-direction:column;gap:14px}
.page img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;object-position:50% 0;background:#fff;box-shadow:0 14px 34px rgba(19,42,61,.16)}
.page__sheet{aspect-ratio:3/4;padding:22px;background:#fff;box-shadow:0 14px 34px rgba(19,42,61,.16);display:flex;flex-direction:column}
.page__sheet--navy{background:#0f2233}
.page__k{font-family:var(--sans);font-weight:600;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#b58a2e}
.page__k--light{color:var(--gold)}
.page__t{margin-top:8px;font-family:var(--display);font-weight:600;font-size:20px;line-height:1.1;letter-spacing:-.015em;color:var(--ink)}
.page__t--light{color:#fff}
.page__line{height:8px;margin-top:14px;background:#e9e2cc}
.page__line:first-of-type{margin-top:22px}
.page__photos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:22px}
.page__ph{aspect-ratio:1/1;background:#e9e2cc}
.page__cap,.page figcaption{display:grid;gap:6px}
.page__cap b,.page figcaption b{font-family:var(--display);font-weight:600;font-size:15px;color:var(--ink)}
.page__cap span,.page figcaption span{font-size:14px;line-height:1.5;color:var(--body)}
.after{margin-top:var(--sp-m);padding-top:var(--sp-s);border-top:1px solid #efe9d8;display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(24px,4vw,64px);align-items:start}
.after__list{list-style:none;margin:0;padding:0}
.after__list li{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:16px;padding:18px 0;border-top:1px solid #efe9d8}
.after__list li:last-child{border-bottom:1px solid #efe9d8}
.after__list b{font-family:var(--display);font-weight:600;font-size:17px;color:var(--ink)}
.after__list span{font-size:15px;line-height:1.55;color:var(--body)}
.close__grid{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,6fr);gap:clamp(32px,5vw,80px);align-items:center;text-align:left}
.close__copy .close__h{margin-left:0;max-width:10em}
.close__copy .close__sub{margin-left:0}
.close__steps{list-style:none;margin:28px 0 0;padding:0;display:grid;gap:14px}
.close__steps li{display:flex;gap:14px;align-items:flex-start;font-size:16px;line-height:1.5;color:rgba(255,250,240,.9)}
.close__steps b{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;background:var(--gold);color:var(--navy);font-family:var(--display);font-weight:700;font-size:13px}
.lead{margin:0;padding:clamp(28px,3vw,40px);background:var(--paper);color:var(--body);display:grid;gap:18px}
.lead__k{margin:0;font-family:var(--sans);font-weight:600;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:#b58a2e}
.lead__f{display:grid;gap:8px}
.lead__f label{font-size:13px;font-weight:600;letter-spacing:.04em;color:var(--navy)}
.lead__f input{min-height:50px;padding:0 14px;border:1.5px solid #cfd6dc;border-radius:2px;background:#fff;font:inherit;font-size:16px;color:var(--ink)}
.lead__f input:focus{outline:3px solid var(--gold);outline-offset:2px;border-color:var(--navy)}
.lead__btn{border:0;cursor:pointer;font-family:var(--sans);width:100%}
.lead__fine{margin:0;font-size:12.5px;line-height:1.5;color:#5c6874}
.s-close .close__meta{text-align:center}
.footer{background:#0f2233;color:rgba(255,255,255,.7);padding:28px var(--gutter);border-top:1px solid rgba(255,255,255,.14);display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:12px;letter-spacing:.06em}
.footer a{text-decoration:none;color:rgba(255,255,255,.7)}
.footer a:hover{color:#fff}
@media (max-width:899px){
  .nav__links{display:none}
  .hero__grid,.ideal__grid,.piece,.doors,.seller__grid,.coach__grid,.price__grid,.call__grid,.tease,.stat{grid-template-columns:minmax(0,1fr)}
  .piece--flip .piece__media{order:0}
  .pain__grid{grid-template-columns:minmax(0,1fr)}
  .terms{grid-template-columns:minmax(0,1fr)}
  .coach__img{max-width:320px}
  .sheet img{transform:none}
  .s-doors{border-top-left-radius:50% 28px;border-top-right-radius:50% 28px}
  .steps,.packet__grid,.after,.after__list li,.close__grid{grid-template-columns:minmax(0,1fr)}
  .steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .packet__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
/* FNLS-22 S1 additions — not from the mockup */
.s-call .tease:first-child{margin-top:0;padding-top:0;border-top:0}
.bo-legal{max-width:760px;margin:0 auto;padding:var(--sp-m) var(--gutter)}
.bo-legal h1{font-family:var(--display);font-weight:600;font-size:clamp(30px,4vw,48px);line-height:1.1;color:var(--ink);margin:0 0 12px}
.bo-legal h2{font-family:var(--display);font-weight:600;font-size:clamp(20px,2vw,26px);color:var(--ink);margin:32px 0 8px}
.bo-legal p,.bo-legal li{font-size:16px;line-height:1.65;color:var(--body)}
.bo-hp{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important}
.lead__err{margin:0;font-size:13px;font-weight:600;color:#b42318}
