:root{
  --blue:#1F668F;--deep:#123F59;--gold:#C6A15B;--off:#F7F5F2;--obs:#0D0D0D;
  --navy:#071521;--navy2:#0C2232;--ink:#10202B;--muted:#6D7A82;
  --shadow:0 24px 70px rgba(3,12,20,.28);
}
*{box-sizing:border-box}
html,body{width:100%;height:100%;margin:0;overflow:hidden;background:#04090d}
body{font-family:"Poppins",Arial,sans-serif;color:var(--off);-webkit-font-smoothing:antialiased}
button,input,select{font:inherit}
button{cursor:pointer}
a{color:inherit;text-decoration:none}
#viewport{position:fixed;inset:0;display:grid;place-items:center;background:#04090d;overflow:hidden}
#deck{position:relative;width:1600px;height:900px;transform-origin:center center;background:var(--navy);box-shadow:0 30px 100px rgba(0,0,0,.48)}
.slide{position:absolute;inset:0;width:1600px;height:900px;overflow:hidden;opacity:0;visibility:hidden;pointer-events:none;transform:translateX(26px) scale(.997);transition:opacity .32s ease,transform .38s ease;background:var(--navy)}
.slide.active{opacity:1;visibility:visible;pointer-events:auto;transform:none}
.slide.light{background:var(--off);color:var(--ink)}
.slide.dark{background:linear-gradient(135deg,#071521 0%,#0d2536 62%,#123f59 140%)}
.photoSlide{background-size:cover;background-repeat:no-repeat}
.photoSlide::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,15,24,.96) 0%,rgba(5,15,24,.90) 29%,rgba(5,15,24,.70) 49%,rgba(5,15,24,.24) 73%,rgba(5,15,24,.06) 100%);z-index:0}
.photoSlide.softFade::before{background:linear-gradient(90deg,rgba(5,15,24,.94) 0%,rgba(5,15,24,.84) 34%,rgba(5,15,24,.55) 55%,rgba(5,15,24,.18) 76%,rgba(5,15,24,.03) 100%)}
.photoSlide.deepFade::before{background:linear-gradient(90deg,rgba(5,15,24,.98) 0%,rgba(5,15,24,.92) 42%,rgba(5,15,24,.52) 66%,rgba(5,15,24,.08) 100%)}
.frame{position:absolute;inset:0;z-index:2;padding:52px 66px 46px;display:flex;flex-direction:column}
.topbar{height:52px;display:flex;align-items:center;justify-content:space-between;flex:0 0 auto}
.brandLogo{height:44px;width:auto;object-fit:contain}
.meta{font-size:13px;letter-spacing:.18em;text-transform:uppercase;font-weight:600;opacity:.75}
.main{flex:1;display:flex;flex-direction:column;justify-content:center;position:relative}
.footer{height:34px;display:flex;align-items:flex-end;justify-content:space-between;gap:20px;font-size:11.5px;line-height:1.4;color:rgba(247,245,242,.58)}
.light .footer{color:#78868e}
.slideNum{letter-spacing:.08em;white-space:nowrap}
.eyebrow{font-size:14px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);font-weight:700;margin-bottom:16px}
h1{font-size:60px;line-height:1.04;letter-spacing:-.038em;font-weight:600;margin:0;max-width:1080px}
h2{font-size:37px;line-height:1.14;letter-spacing:-.025em;margin:0;font-weight:600}
h3{margin:0;font-size:22px;line-height:1.2}
.sub{font-size:21px;line-height:1.5;max-width:920px;margin:19px 0 0;color:rgba(247,245,242,.82)}
.light .sub{color:#52646d}
.kicker{font-size:17px;line-height:1.52;max-width:920px;color:rgba(247,245,242,.76)}
.light .kicker{color:#5d6e76}
.gold{color:var(--gold)}
.blue{color:var(--blue)}
.bigNumber{font-size:74px;line-height:.94;font-weight:700;letter-spacing:-.045em}
.smallCaps{font-size:12px;letter-spacing:.13em;text-transform:uppercase;font-weight:600}
.muted{opacity:.67}
.glass{background:rgba(8,23,35,.72);border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(12px);box-shadow:var(--shadow)}
.lightCard{background:rgba(255,255,255,.92);border:1px solid rgba(18,63,89,.12);box-shadow:0 18px 50px rgba(18,63,89,.10)}
.card{border-radius:24px;padding:26px 28px}

/* controls */
#progress{position:fixed;left:0;right:0;bottom:0;height:4px;background:rgba(255,255,255,.09);z-index:50}
#progress span{display:block;height:100%;background:var(--gold);width:0;transition:width .3s ease}
.navbtn{position:fixed;top:50%;transform:translateY(-50%);z-index:60;width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.24);background:rgba(5,15,24,.56);color:white;font-size:28px;display:grid;place-items:center;opacity:.55;backdrop-filter:blur(10px)}
.navbtn:hover{opacity:1;background:rgba(5,15,24,.84)}
#prev{left:18px}#next{right:18px}
#topActions{position:fixed;right:20px;top:18px;z-index:70;display:flex;gap:8px}
.utilityBtn{border:1px solid rgba(255,255,255,.24);background:rgba(5,15,24,.58);color:white;border-radius:999px;padding:10px 14px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;backdrop-filter:blur(10px)}

/* hero + full photo */
.heroCopy{max-width:830px;margin-top:auto;margin-bottom:88px}
.heroCopy h1{font-size:76px}
.heroBadge{display:inline-flex;align-items:center;gap:11px;margin-top:24px;padding:10px 15px;border-radius:999px;border:1px solid rgba(255,255,255,.22);background:rgba(6,18,28,.48);font-size:12px;letter-spacing:.09em;text-transform:uppercase}
.heroBadge::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 6px rgba(198,161,91,.13)}
.pillarsWrap{max-width:930px}
.pillarGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:30px}
.pathLabels{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:14px}.pathLabel{padding:12px 16px;border-radius:14px;border:1px solid rgba(255,255,255,.14);background:rgba(6,18,28,.42);font-size:12px;line-height:1.45}.pathLabel b{display:block;color:var(--gold);font-size:12px;letter-spacing:.06em;text-transform:uppercase;margin-bottom:3px}.pathLabel span{opacity:.82}
.planEligibility{font-size:12px;line-height:1.4;margin-top:9px;padding:7px 10px;border-radius:10px;background:rgba(198,161,91,.14);border:1px solid rgba(198,161,91,.35);color:#f1e2bf}
.calcPathNote{margin-top:-4px;margin-bottom:6px;font-size:11px;line-height:1.4;color:#50636d}.calcPathNote:empty{display:none}
.pillar{padding:18px 18px 20px;border-top:2px solid var(--gold);background:rgba(8,23,35,.54);backdrop-filter:blur(8px)}
.pillar b{display:block;font-size:17px;margin-bottom:6px}.pillar strong{display:block;font-size:15px;color:var(--gold);margin-bottom:7px}.pillar span{font-size:13px;line-height:1.48;color:rgba(247,245,242,.76)}

/* numbers */
.numberGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;margin-top:42px;border-top:1px solid rgba(18,63,89,.14);border-bottom:1px solid rgba(18,63,89,.14)}
.numberItem{min-height:280px;padding:36px 28px;border-right:1px solid rgba(18,63,89,.14);display:flex;flex-direction:column;justify-content:center}
.numberItem:last-child{border-right:0}.numberValue{font-size:76px;font-weight:700;letter-spacing:-.05em;line-height:.95;color:var(--deep)}.numberItem:last-child .numberValue{color:var(--gold)}.numberLabel{font-size:14px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:#60717a;margin-top:16px}.numberText{font-size:14px;line-height:1.5;color:#75828a;margin-top:8px}

/* closing math */
.closingLayout{max-width:760px}.definitionBox{margin-top:15px;max-width:700px;font-size:14px;line-height:1.5;padding:13px 16px;border-left:3px solid var(--gold);background:rgba(8,23,35,.48)}
.gciStrip{display:flex;align-items:center;gap:12px;margin-top:20px;flex-wrap:wrap}.gciChip{padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.14);font-size:14px}.gciChip.big{font-size:22px;font-weight:700;color:var(--gold)}
.mathStack{width:640px;margin-top:18px}.mathLine{display:flex;align-items:center;justify-content:space-between;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.13);font-size:17px}.mathLine b{font-size:24px}.mathTotal{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;margin-top:14px;padding:22px 26px;border-radius:22px;border:1px solid rgba(198,161,91,.75);background:rgba(6,20,30,.72)}.mathTotal .value{font-size:56px;line-height:1;font-weight:700;color:var(--gold)}.companyDollar{margin-top:14px;font-size:14px;color:rgba(247,245,242,.72)}

/* cap timeline */
.timelineWrap{max-width:980px}.capExplainer{max-width:980px;font-size:16px;line-height:1.52;color:rgba(247,245,242,.78);margin-top:15px}.timeline{display:flex;align-items:center;margin-top:30px;width:940px}.node{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;border:2px solid rgba(255,255,255,.40);background:rgba(8,23,35,.58);font-size:19px;font-weight:600;flex:0 0 auto;position:relative}.node.cap{background:var(--gold);color:#071521;border-color:var(--gold);box-shadow:0 0 0 10px rgba(198,161,91,.13)}.connector{height:2px;background:rgba(255,255,255,.28);flex:1;min-width:26px}.capTag{position:absolute;top:68px;color:var(--gold);font-size:11px;letter-spacing:.11em;text-transform:uppercase;white-space:nowrap}.compareGrid{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:760px;margin-top:62px}.compareBox{border-radius:20px;padding:20px 24px;background:rgba(7,22,33,.70);border:1px solid rgba(255,255,255,.17)}.compareBox.after{border-color:rgba(198,161,91,.8)}.compareValue{font-size:44px;font-weight:700;margin-top:8px}.takeaway{max-width:870px;margin-top:16px;font-size:14px;line-height:1.5;color:rgba(247,245,242,.72)}

/* fee + plans */
.feeGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:40px}.fee{min-height:245px;border-radius:22px;padding:26px;background:#fff;border:1px solid rgba(18,63,89,.11);box-shadow:0 18px 45px rgba(18,63,89,.08)}.feeAmount{font-size:48px;font-weight:700;color:var(--deep)}.fee:last-child .feeAmount{color:var(--gold)}.feeName{font-size:17px;font-weight:600;margin-top:11px}.feeText{font-size:14px;line-height:1.5;color:#6f7e86;margin-top:8px}.zeroRow{display:flex;gap:14px;margin-top:18px}.zeroPill{padding:12px 17px;border-radius:999px;background:rgba(31,102,143,.08);border:1px solid rgba(31,102,143,.15);font-size:14px;font-weight:600;color:var(--deep)}
.planGrid{display:grid;grid-template-columns:1fr 1.15fr 1fr;gap:18px;margin-top:34px}.plan{border-radius:26px;padding:25px 25px 23px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.05);display:flex;flex-direction:column;min-height:430px}.plan.featured{border:2px solid var(--gold);background:linear-gradient(180deg,rgba(198,161,91,.12),rgba(255,255,255,.05));transform:translateY(-8px)}.planBadge{align-self:flex-start;border-radius:999px;padding:7px 10px;font-size:11px;letter-spacing:.10em;text-transform:uppercase;font-weight:700;background:rgba(255,255,255,.12)}.featured .planBadge{background:var(--gold);color:#071521}.plan h3{font-size:22px;margin-top:17px}.planSplit{font-size:54px;font-weight:700;line-height:1;color:var(--gold);margin-top:11px}.planLead{font-size:13px;line-height:1.45;opacity:.72;margin-top:8px;min-height:56px}.plan ul{padding-left:18px;margin:14px 0 18px;font-size:13px;line-height:1.55;color:rgba(247,245,242,.78)}.detailBtn{margin-top:auto;border:1px solid rgba(255,255,255,.22);background:transparent;color:white;border-radius:999px;padding:10px 14px;font-size:12px;font-weight:600}.featured .detailBtn{border-color:var(--gold);color:var(--gold)}

/* connect */
.connectGrid{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:center}.moduleGrid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:28px}.module{padding:17px;border-left:3px solid var(--gold);background:#fff;border-radius:0 16px 16px 0;box-shadow:0 10px 26px rgba(18,63,89,.07)}.module b{display:block;font-size:16px;color:var(--deep)}.module span{font-size:13px;line-height:1.45;color:#677780;display:block;margin-top:5px}.browser{border-radius:24px;overflow:hidden;background:white;border:1px solid rgba(18,63,89,.14);box-shadow:0 25px 70px rgba(18,63,89,.17)}.browserTop{height:40px;background:#eaf0f3;display:flex;gap:7px;align-items:center;padding:0 14px}.browserDot{width:9px;height:9px;border-radius:50%;background:#a9b6bd}.browserScreen{height:510px;display:grid;grid-template-columns:150px 1fr;background:#f8fafb}.sideNav{background:#0d2b3c;color:white;padding:25px 17px;display:flex;flex-direction:column;gap:11px;font-size:12px}.sideNav b{font-size:15px;margin-bottom:8px}.sideNav span{opacity:.62;padding:7px 8px;border-radius:8px}.sideNav span.active{opacity:1;background:rgba(198,161,91,.18);color:#f2d9a0}.dash{padding:27px;color:#183040}.dash h4{font-size:22px;margin:0}.mini{font-size:12px;color:#78868d;margin-top:4px}.dashKpis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:22px}.kpi{padding:15px;border-radius:15px;background:white;border:1px solid #e4ebef}.kpi span{display:block;font-size:11px;color:#73828a}.kpi strong{display:block;font-size:24px;margin-top:6px;color:var(--deep)}.dashMain{display:grid;grid-template-columns:1.3fr .8fr;gap:12px;margin-top:12px}.fakeChart,.fakeList{height:265px;border-radius:16px;background:white;border:1px solid #e4ebef;padding:17px}.bars{height:185px;display:flex;align-items:flex-end;gap:11px;margin-top:16px}.bars i{display:block;flex:1;background:linear-gradient(180deg,var(--gold),#8f7542);border-radius:6px 6px 2px 2px}.listRow{display:flex;justify-content:space-between;padding:14px 0;border-bottom:1px solid #edf2f4;font-size:12px}.listRow b{color:var(--deep)}

/* support + three ways */
.supportGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;max-width:940px;margin-top:30px}.supportPoint{padding:17px 18px;border-top:2px solid var(--gold);background:rgba(8,23,35,.52);backdrop-filter:blur(8px)}.supportPoint b{display:block;font-size:17px}.supportPoint span{display:block;font-size:13px;line-height:1.47;color:rgba(247,245,242,.76);margin-top:6px}
.engineGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:34px}.engine{border-radius:24px;padding:25px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.05);min-height:300px}.engineNum{font-size:12px;letter-spacing:.14em;color:var(--gold);font-weight:700}.engineTitle{font-size:13px;letter-spacing:.10em;text-transform:uppercase;opacity:.65;margin-top:12px}.engine h3{font-size:25px;margin-top:13px}.engine p{font-size:14px;line-height:1.55;color:rgba(247,245,242,.76);margin-top:12px}.takeawayBar{margin-top:18px;padding:15px 19px;border-radius:16px;border:1px solid rgba(198,161,91,.45);background:rgba(198,161,91,.08);font-size:14px;line-height:1.5;color:#f1dfbc}

/* network chain + levels */
.chainWrap{max-width:1200px}.chain{display:flex;align-items:center;gap:10px;margin-top:32px;overflow:visible}.person{min-width:138px;padding:16px 13px;border-radius:18px;background:rgba(8,23,35,.66);border:1px solid rgba(255,255,255,.16);text-align:center}.person b{display:block;font-size:16px}.person span{display:block;font-size:11px;line-height:1.35;opacity:.7;margin-top:5px}.arrow{font-size:24px;color:var(--gold);opacity:.85}.chainNote{max-width:940px;margin-top:22px;font-size:14px;line-height:1.52;color:rgba(247,245,242,.74);padding-left:14px;border-left:3px solid var(--gold)}
.levelValueGrid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:38px}.levelValueCard{min-height:315px;border-radius:22px;padding:24px 20px;background:white;border:1px solid rgba(18,63,89,.12);box-shadow:0 18px 45px rgba(18,63,89,.08);display:flex;flex-direction:column;align-items:flex-start}.levelTag{font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:#72818a}.levelPercent{font-size:44px;font-weight:700;color:var(--deep);margin-top:15px}.levelDollar{font-size:32px;font-weight:700;color:var(--gold);margin-top:16px}.levelDesc{font-size:13px;line-height:1.46;color:#72818a;margin-top:auto}

/* cap freedom */
.freedomWrap{max-width:950px}.freedomCards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:26px}.freedomCard{border-radius:20px;padding:19px;background:rgba(8,23,35,.68);border:1px solid rgba(255,255,255,.16)}.freedomCard .label{font-size:11px;letter-spacing:.10em;text-transform:uppercase;opacity:.66}.freedomCard .value{font-size:37px;font-weight:700;color:var(--gold);margin-top:8px}.freedomTotal{display:grid;grid-template-columns:1fr auto 1fr;gap:22px;align-items:center;margin-top:18px}.freedomTotal .totalBox,.freedomTotal .capBox{padding:18px 21px;border-radius:19px;background:rgba(8,23,35,.68);border:1px solid rgba(255,255,255,.16)}.freedomTotal .capBox{border-color:rgba(198,161,91,.72)}.freedomTotal .value{font-size:46px;font-weight:700}.freedomTotal .equals{font-size:20px;color:var(--gold);text-transform:uppercase;letter-spacing:.11em}.freedomExplain{font-size:14px;line-height:1.54;color:rgba(247,245,242,.78);margin-top:18px;max-width:900px}.freedomFollow{font-size:14px;line-height:1.54;color:#f0d7a3;margin-top:8px;max-width:900px}

/* after cap */
.afterGrid{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:1000px;margin-top:28px}.flowCard{border-radius:22px;padding:22px 24px;background:rgba(8,23,35,.70);border:1px solid rgba(255,255,255,.16)}.flowCard .flowTitle{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);font-weight:700}.flowCard strong{display:block;font-size:23px;margin-top:11px}.flowCard p{font-size:14px;line-height:1.5;color:rgba(247,245,242,.73);margin:8px 0 0}.payments{display:flex;gap:9px;margin-top:16px;flex-wrap:wrap}.paymentPill{padding:9px 12px;border-radius:999px;border:1px solid rgba(198,161,91,.42);background:rgba(198,161,91,.08);font-size:13px;color:#f2dcaf}.signature{margin-top:20px;font-size:18px;font-weight:700;letter-spacing:.06em;color:var(--gold)}

/* beyond */
.beyondWrap{max-width:1080px}.beyondStats{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-top:27px}.beyondStat{padding:17px;border-radius:18px;background:rgba(8,23,35,.68);border:1px solid rgba(255,255,255,.15)}.beyondStat .v{font-size:37px;font-weight:700;color:var(--gold)}.beyondStat .l{font-size:11px;letter-spacing:.11em;text-transform:uppercase;font-weight:700;margin-top:6px}.beyondStat .t{font-size:12px;line-height:1.4;opacity:.7;margin-top:5px}.beyondPayments{display:flex;gap:14px;margin-top:16px}.beyondPay{padding:14px 17px;border-radius:16px;border:1px solid rgba(198,161,91,.45);background:rgba(198,161,91,.08);font-size:13px}.beyondPay b{font-size:22px;color:var(--gold);margin-right:7px}.beyondRule{font-size:14px;line-height:1.52;color:rgba(247,245,242,.77);margin-top:15px;max-width:970px}.beyondExplain{font-size:13px;line-height:1.5;color:#f1d9aa;margin-top:8px;max-width:970px}

/* seven path */
.pathGrid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-top:32px}.pathStep{min-height:300px;padding:20px;border-radius:22px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.05);position:relative}.pathNum{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--gold);color:#071521;font-weight:700}.pathStep h3{font-size:17px;margin-top:18px}.pathStep p{font-size:13px;line-height:1.5;color:rgba(247,245,242,.72);margin-top:10px}.pathTakeaway{margin-top:17px;font-size:14px;line-height:1.5;color:#f2d9a5;padding:13px 16px;border-left:3px solid var(--gold);background:rgba(198,161,91,.07)}

/* seven figure */
.sevenWrap{max-width:900px}.sevenRows{width:720px;margin-top:22px}.sevenRow{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.12);font-size:14px}.sevenRow b{font-size:22px}.sevenTotal{margin-top:14px;padding:19px 22px;border-radius:21px;border:1px solid rgba(198,161,91,.72);background:rgba(8,23,35,.74)}.sevenTotal span{font-size:11px;letter-spacing:.12em;text-transform:uppercase;opacity:.67}.sevenTotal strong{display:block;font-size:49px;line-height:1;color:var(--gold);margin-top:8px}.textBtn{margin-top:13px;border:1px solid rgba(255,255,255,.24);background:rgba(7,22,33,.44);color:white;border-radius:999px;padding:9px 13px;font-size:12px}.disclosure{font-size:10.5px;line-height:1.42;color:rgba(247,245,242,.58);max-width:860px;margin-top:10px}

/* calculator */
.calcGrid{display:grid;grid-template-columns:.88fr 1.12fr;gap:28px;margin-top:22px}.calcPanel{border-radius:24px;padding:22px;border:1px solid rgba(18,63,89,.12);background:white;box-shadow:0 16px 40px rgba(18,63,89,.08)}.control{margin-bottom:15px}.controlHead{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:#50636d;margin-bottom:8px}.controlHead b{color:var(--deep);font-size:16px}.control input[type=range]{width:100%;accent-color:var(--gold)}.control select{width:100%;padding:11px 12px;border:1px solid #d8e1e6;border-radius:12px;background:white;color:#183040}.calcAssumption{margin-top:12px;padding:12px 14px;border-radius:14px;background:#f7f3ea;border:1px solid rgba(198,161,91,.28);font-size:10px;line-height:1.45;color:#665c49}.combinedResult{padding:17px 20px;margin-bottom:12px;border-radius:18px;background:var(--deep);color:white;border:1px solid rgba(198,161,91,.7);box-shadow:0 12px 28px rgba(18,63,89,.14)}.combinedResult span{display:block;font-size:11px;font-weight:700;letter-spacing:.12em;color:#e2c98f}.combinedResult b{display:block;font-size:42px;line-height:1.08;margin:5px 0;color:white}.combinedResult small{display:block;font-size:10px;line-height:1.4;color:rgba(255,255,255,.75)}.resultGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.result{padding:14px 16px;border-radius:16px;background:#f6f9fa;border:1px solid #e0e8ec}.result span{display:block;font-size:10px;line-height:1.35;color:#72818a}.result b{display:block;font-size:24px;color:var(--deep);margin-top:4px}.result.goldResult{background:#fbf8f1;border-color:rgba(198,161,91,.36)}.result.goldResult b{color:#a47d34}.calcDetail{font-size:10px;line-height:1.45;color:#6f7e86;margin-top:11px}

/* worldwide */
.worldWrap{max-width:980px}.worldWrapV3 h1{max-width:850px}.worldWrapV3 .sub{max-width:840px}.worldColumns{display:grid;grid-template-columns:.72fr 1.28fr;gap:18px;margin-top:24px;max-width:1030px}.livePanel,.plannedPanel{border-radius:22px;padding:20px;border:1px solid rgba(255,255,255,.16);background:rgba(5,21,32,.62);backdrop-filter:blur(8px)}.livePanel{border-color:rgba(198,161,91,.58);box-shadow:0 16px 40px rgba(0,0,0,.12)}.worldLabel{font-size:12px;font-weight:700;letter-spacing:.14em;color:rgba(255,255,255,.72);margin-bottom:13px}.liveLabel{color:#efd391}.liveMarketGrid{display:grid;gap:10px}.liveMarket{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:10px;align-items:center;padding:11px 12px;border-radius:14px;background:rgba(198,161,91,.09);border:1px solid rgba(198,161,91,.28)}.liveMarket span{grid-row:1/3;font-size:9px;font-weight:700;letter-spacing:.12em;color:#efd391;border:1px solid rgba(198,161,91,.42);padding:5px 7px;border-radius:999px}.liveMarket b{font-size:16px;color:white}.liveMarket small{font-size:10px;color:rgba(255,255,255,.68)}.plannedList{display:flex;gap:7px;flex-wrap:wrap;max-width:900px}.plannedList span{font-size:10px;padding:7px 9px;border-radius:999px;border:1px solid rgba(255,255,255,.16);background:rgba(8,23,35,.48);color:rgba(255,255,255,.86)}.worldFooter{max-width:1000px;margin-top:16px;color:#ead19a;font-weight:500;font-size:11px;line-height:1.45}

/* join + CTA */
.joinSteps{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-top:30px;max-width:1180px}.joinStep{padding:18px;border-radius:18px;background:rgba(8,23,35,.62);border:1px solid rgba(255,255,255,.15)}.joinStep .n{font-size:12px;color:var(--gold);font-weight:700;letter-spacing:.12em}.joinStep b{display:block;font-size:15px;margin-top:10px}.joinStep span{display:block;font-size:12px;line-height:1.45;opacity:.7;margin-top:5px}.ctaRow{display:flex;gap:12px;margin-top:24px}.primaryCta,.secondaryCta{border-radius:999px;padding:13px 19px;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.primaryCta{border:1px solid var(--gold);background:var(--gold);color:#071521}.secondaryCta{border:1px solid rgba(255,255,255,.32);background:rgba(8,23,35,.45);color:white}.finalCopy{max-width:900px;margin-top:auto;margin-bottom:100px}.finalCopy h1{font-size:68px}.presenterLine{margin-top:22px;font-size:13px;opacity:.75}

/* overlays */
.overlayPanel{position:fixed;inset:0;z-index:100;display:none;background:rgba(4,11,17,.96);overflow:auto;color:white}.overlayPanel.open{display:block}.panelClose{position:fixed;right:26px;top:20px;border:0;background:var(--gold);color:#071521;width:40px;height:40px;border-radius:50%;font-size:24px}.panelInner{max-width:1480px;margin:0 auto;padding:62px 42px}.panelInner.narrow{max-width:1050px}.panelEyebrow{font-size:13px;letter-spacing:.17em;text-transform:uppercase;color:var(--gold);font-weight:700;margin-bottom:9px}#overviewGrid{display:grid;grid-template-columns:repeat(4,minmax(240px,1fr));gap:14px;margin-top:28px}.thumb{aspect-ratio:16/9;padding:17px;border-radius:16px;background:#0b1e2c;border:1px solid rgba(255,255,255,.15);display:flex;flex-direction:column;justify-content:space-between;transition:.18s}.thumb:hover{transform:translateY(-3px);border-color:var(--gold)}.thumb span{font-size:11px;opacity:.6}.thumb b{font-size:17px}.termsGrid{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:28px}.termCard{padding:18px;border-radius:17px;border:1px solid rgba(255,255,255,.13);background:#0b1e2c}.termCard b{display:block;color:var(--gold);font-size:16px}.termCard span{display:block;font-size:13px;line-height:1.5;opacity:.75;margin-top:6px}
.modal{position:fixed;inset:0;z-index:120;display:none;place-items:center;background:rgba(3,9,14,.78);backdrop-filter:blur(8px)}.modal.open{display:grid}.modalCard{width:min(900px,90vw);max-height:82vh;overflow:auto;border-radius:24px;background:#f8f7f4;color:#182b35;padding:30px 32px;position:relative;box-shadow:0 30px 90px rgba(0,0,0,.35)}.modalClose{position:absolute;right:17px;top:14px;border:0;background:#e7ecef;color:#183040;width:38px;height:38px;border-radius:50%;font-size:23px}.modalCard h2{font-size:32px;color:var(--deep)}.modalIntro{font-size:15px;line-height:1.55;color:#61727b;margin-top:9px}.modalStats{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:20px}.modalStat{padding:17px;border-radius:16px;background:white;border:1px solid #dde6ea}.modalStat b{display:block;font-size:24px;color:var(--deep)}.modalStat span{display:block;font-size:12px;color:#6f7e86;margin-top:4px}.modalBodyText{font-size:14px;line-height:1.58;color:#5f7079;margin-top:20px}.assumptionList{font-size:14px;line-height:1.58;color:#5f7079}.assumptionList li{margin-bottom:7px}

@media (max-width:900px){
  #topActions{right:8px;top:8px}.navbtn{width:42px;height:42px}.panelInner{padding:56px 20px}#overviewGrid{grid-template-columns:1fr 1fr}.termsGrid{grid-template-columns:1fr}
}

/* PREN Worldwide v4 — data-driven status map */
.worldWrapV4{max-width:1180px}
.worldWrapV4 h1{max-width:900px;font-size:50px}
.worldWrapV4 .sub{max-width:1060px;font-size:17px;margin-top:12px}
.worldMapLayout{display:grid;grid-template-columns:1.12fr .88fr;gap:18px;margin-top:18px;align-items:stretch;max-width:1180px}
.marketMapCard{position:relative;border-radius:24px;padding:14px 16px 12px;background:rgba(5,21,32,.72);border:1px solid rgba(255,255,255,.15);backdrop-filter:blur(10px);box-shadow:0 20px 50px rgba(0,0,0,.20)}
.marketMapLegend{display:flex;gap:9px;flex-wrap:wrap;align-items:center;margin-bottom:8px;font-size:9px;font-weight:700;letter-spacing:.10em;color:rgba(255,255,255,.72)}
.marketMapLegend>span{display:flex;align-items:center;gap:6px;padding:5px 8px;border-radius:999px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.09)}
.legendSwatch{width:9px;height:9px;border-radius:50%;display:inline-block}.legendSwatch.open{background:var(--gold);box-shadow:0 0 0 4px rgba(198,161,91,.14),0 0 14px rgba(198,161,91,.55)}.legendSwatch.planned{background:#3f9fd4;box-shadow:0 0 0 4px rgba(63,159,212,.14)}.legendSwatch.other{background:#65737d}
.marketMapStage{height:398px;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:18px;background:rgba(3,13,21,.58)}
.marketMapStage>img{display:block;height:100%;width:auto;max-width:100%;object-fit:contain;filter:drop-shadow(0 15px 28px rgba(0,0,0,.35))}
.marketMarkers{position:absolute;inset:0;pointer-events:none}
.marketMarker{position:absolute;transform:translate(-50%,-50%);width:26px;height:26px;border:0;padding:0;border-radius:50%;background:transparent;pointer-events:auto;color:white;display:grid;place-items:center;z-index:5}
.marketMarker i{position:absolute;width:10px;height:10px;border-radius:50%;background:#66737d;border:2px solid rgba(255,255,255,.72);box-shadow:0 0 0 5px rgba(102,115,125,.13)}
.marketMarker span{position:absolute;left:50%;top:-14px;transform:translateX(-50%);min-width:24px;padding:2px 5px;border-radius:999px;background:rgba(4,15,24,.90);border:1px solid rgba(255,255,255,.13);font-size:7px;font-weight:800;letter-spacing:.08em;line-height:1.4;white-space:nowrap;opacity:.78;transition:.2s ease}
.marketMarker:hover span{opacity:1;transform:translateX(-50%) translateY(-2px)}
.marketMarker.planned i{background:#3f9fd4;box-shadow:0 0 0 5px rgba(63,159,212,.14),0 0 15px rgba(63,159,212,.48)}
.marketMarker.open i{background:var(--gold);border-color:#fff4cf;box-shadow:0 0 0 6px rgba(198,161,91,.18),0 0 20px rgba(198,161,91,.86)}
.marketMarker.open span{color:#f3dca7;border-color:rgba(198,161,91,.48);background:rgba(35,28,12,.92)}
.marketMarker.open::before,.marketMarker.open::after{content:"";position:absolute;border-radius:50%;border:1.5px solid rgba(230,194,122,.78);width:18px;height:18px;animation:prenMarketPulse 2.25s ease-out infinite}
.marketMarker.open::after{animation-delay:1.1s}
@keyframes prenMarketPulse{0%{transform:scale(.55);opacity:.95}75%,100%{transform:scale(2.2);opacity:0}}
.mapHint{font-size:9px;line-height:1.4;color:rgba(255,255,255,.57);margin-top:8px}.mapHint b{color:#efd391}
.worldStatusStack{display:grid;grid-template-rows:auto 1fr;gap:12px;min-width:0}.worldStatusStack .livePanel,.worldStatusStack .plannedPanel{padding:15px 16px;border-radius:18px;background:rgba(5,21,32,.72);backdrop-filter:blur(9px)}.worldStatusStack .livePanel{border:1px solid rgba(198,161,91,.54)}.worldStatusStack .plannedPanel{border:1px solid rgba(63,159,212,.35)}
.worldStatusStack .liveMarketGrid{grid-template-columns:1fr 1fr 1fr;gap:7px}.worldStatusStack .liveMarket{padding:8px 9px;display:block}.worldStatusStack .liveMarket span{display:inline-block;font-size:7px;padding:3px 5px;margin-bottom:4px}.worldStatusStack .liveMarket b{display:block;font-size:12px}.worldStatusStack .liveMarket small{display:block;font-size:8px;margin-top:1px}
.worldStatusStack .plannedList{gap:5px}.worldStatusStack .plannedList span{font-size:8px;padding:5px 7px;background:rgba(63,159,212,.11);border-color:rgba(63,159,212,.24)}
.worldWrapV4 .worldFooter{font-size:9px;margin-top:9px;max-width:1150px;color:#ead19a}
@media (prefers-reduced-motion:reduce){.marketMarker.open::before,.marketMarker.open::after{animation:none}}
.mapImageBox{position:relative;height:100%;aspect-ratio:1122/1402;max-width:100%;margin:auto}
.mapImageBox>img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 15px 28px rgba(0,0,0,.35))}
.mapImageBox .marketMarkers{position:absolute;inset:0}

/* ── Living inside the app ─────────────────────────────────────────────────────────────────────
   Standalone, this deck relied on `body{color:var(--off)}`. Inside the app our globals.css sets a
   dark body colour and loads after this file, so every slide inherited near-black text on
   photography. The deck's own grounds are restated here, scoped to the deck, so nothing outside
   it is affected. */
#viewport,#deck,.slide{color:var(--off)}
.slide.light{color:var(--ink)}
.overlayPanel{color:var(--off)}

/* ── Site chrome ───────────────────────────────────────────────────────────────────────────────
   The back link and the language switch live in the package's own #topActions row, so they match
   its buttons and never sit on top of a slide's logo or its footnote. */
.v4Back{display:inline-grid;place-items:center;width:38px;padding:0;font-size:15px;line-height:1}
.v4Lang{align-self:stretch;display:inline-flex;align-items:stretch;
  border-color:rgba(255,255,255,.22);background:rgba(255,255,255,.06)}
.v4Lang a{display:flex;align-items:center;padding:0 10px}
#topActions{align-items:stretch}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* ── Fitting the tallest two slides ────────────────────────────────────────────────────────────
   The seven-figure slide runs past the bottom of the fixed canvas by ~44px in English and ~152px
   in Spanish, taking the slide number with it. The disclosure on that slide is required wording
   and is not cut, so the vertical rhythm gives up the space instead. Same for the calculator's
   assumption box, which only overflows in Spanish. */
.sevenRows{margin-top:13px}
.sevenRow{padding:6px 0;font-size:13.5px}
.sevenTotal{margin-top:10px;padding:14px 20px}
.disclosure{margin-top:8px;line-height:1.38}
.calcAssumption{margin-top:8px;padding:9px 12px;font-size:9.5px}
/* The two calculator panels are grid cells, so the taller one sets the height: it is the results
   column, not the inputs. Trimming the result cards is what actually buys the room. */
.result{padding:11px 14px}
.resultGrid{gap:8px}
.combinedResult{padding:15px 20px;margin-bottom:10px}

/* ── Questions panel ────────────────────────────────────────────────────────────────────────
   The LOI route, the Produce or Lead standard and the FAQ sit below the stacked slides. They use
   the deck's palette and type so the seam is invisible. */
.v4Card{border-radius:24px;padding:clamp(24px,3vw,38px);border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.04)}
.v4CardAccent{border-color:rgba(198,161,91,.6);background:rgba(198,161,91,.08)}
.v4Card h2,.v4Faq h2{font-size:clamp(21px,2.4vw,30px);font-weight:600;margin:0 0 12px;line-height:1.2}
.v4Card p{margin:0 0 18px;font-size:15px;line-height:1.6;color:rgba(247,245,242,.76);max-width:70ch}
.v4Card .primaryCta{display:inline-block}
.v4Faq{border-radius:24px;padding:clamp(24px,3vw,38px);border:1px solid rgba(255,255,255,.14)}
.v4Faq details{border-top:1px solid rgba(255,255,255,.12);padding:14px 0}
.v4Faq details:first-of-type{border-top:0}
.v4Faq summary{cursor:pointer;font-weight:600;font-size:15px;list-style:none}
.v4Faq summary::-webkit-details-marker{display:none}
.v4Faq summary::after{content:"+";float:right;color:var(--gold)}
.v4Faq details[open] summary::after{content:"–"}
.v4Faq p{margin:10px 0 0;font-size:14px;line-height:1.6;color:rgba(247,245,242,.72);max-width:78ch}
.v4FaqLink{color:var(--gold);text-decoration:underline}
.v4Apply{background:var(--gold);color:#0D0D0D;border-color:var(--gold);font-weight:600}
.v4Apply:hover{background:#d8b877;color:#0D0D0D}

/* Market dialog opened from a map marker. */
.marketMarker{cursor:pointer}
.modalOffices{display:grid;gap:12px;margin-top:18px}
.modalOffice{border:1px solid #dde6ea;border-radius:16px;padding:14px 16px;background:white}
.modalOffice b{display:block;font-size:15px;color:#182b35}
.modalOffice span{display:block;margin-top:3px;font-size:12.5px;color:#5f7079}
.modalOfficePhone{margin-top:6px;font-size:12.5px}
.modalOfficePhone a{color:#1F668F;font-weight:600}
.v4CtaRow{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}
.v4Note{margin-top:14px;padding-top:12px;border-top:1px solid rgba(255,255,255,.14);
  font-size:11.5px;line-height:1.55;color:rgba(247,245,242,.6);max-width:74ch}

/* ── Placing the canvas ────────────────────────────────────────────────────────────────────────
   scaleDeck() positions the deck by arithmetic, so layout must not also try. #viewport centred it
   with place-items, which was harmless while the window was NARROWER than 1600px — a grid cannot
   centre an oversized item, so it sat at 0 — and doubled the offset the moment the window was
   wider, pushing the deck off to the right. The deck is anchored at the origin and moved only by
   its own transform. */
#viewport { display: block; }
#deck { position: absolute; left: 0; top: 0; }

/* ── Phones ────────────────────────────────────────────────────────────────────────────────────
   The deck is a fixed 1600x900 canvas. In landscape a phone gives it most of the screen; in
   portrait it can only be a strip, so the chrome shrinks to stop it eating what is left and a
   line invites the reader to rotate. Nothing here changes the deck itself. */
@media (max-width: 860px) {
  #topActions { gap: 5px; right: 8px; top: 8px; }
  .utilityBtn { padding: 6px 10px; font-size: 10.5px; }
  .v4Back { width: 30px; }
  .v4Lang a { padding: 0 7px; font-size: 10px; }
  .navbtn { width: 38px; height: 38px; }
}
.v4Rotate { display: none; }
@media (orientation: portrait) and (max-width: 860px) {
  /* Sits under the letterboxed slide, in the space the 16:9 frame leaves empty anyway. */
  .v4Rotate {
    display: block; position: fixed; left: 0; right: 0; bottom: 26vh; z-index: 55;
    text-align: center; font-size: 12px; letter-spacing: .04em;
    color: rgba(247, 245, 242, .62);
  }
  #topActions { max-width: calc(100vw - 16px); flex-wrap: wrap; justify-content: flex-end; }
}
