*{box-sizing:border-box}
x-shape{display:block}
x-shape[kind=ellipse]{border-radius:50%}
x-shape[kind=arrow-right]{clip-path:polygon(0 30%,60% 30%,60% 0,100% 50%,60% 100%,60% 70%,0 70%)}
section{position:relative;width:1920px;overflow:hidden}
:root{--fyc-forest:#2D3F35;--fyc-sage:#91A385;--fyc-peach:#FCBBA2;--fyc-cream:#F4F1EC;--fyc-dark:#1A2420;--fyc-white:#FFFFFF;--text-secondary:#5B5F52;--border-subtle:#E0DCD3;--sage-tint:#E4EBDD;--peach-tint:#FBE9DF;--forest-tint:#E1E8E3;--font-serif:"Lora",Georgia,serif;--font-sans:"Public Sans",-apple-system,"Segoe UI",sans-serif}
section{background:var(--fyc-cream);color:var(--fyc-forest);font-family:var(--font-sans);padding:88px 104px 120px;display:flex;flex-direction:column}
section.dark{background:linear-gradient(135deg,#1F2C26 0%,#2D3F35 55%,#3A5244 100%);color:var(--fyc-white)}
h1,h2,h3{font-family:var(--font-serif);font-weight:600;margin:0;letter-spacing:-0.01em}
h1{font-size:76px;line-height:1.1}
h2{font-size:56px;line-height:1.15;margin-bottom:32px}
h2.big{font-size:104px;line-height:1.08;margin-bottom:64px}
h3{font-size:34px;line-height:1.25}
p{margin:0;font-size:26px;line-height:1.45}
.eyebrow{font-size:24px;font-weight:600;letter-spacing:0.12em;text-transform:uppercase;color:var(--text-secondary);margin-bottom:20px}
.eyebrow.on-dark{color:#B7C7AA}
.lead{font-size:34px;line-height:1.4}
.lead.on-dark,.src.on-dark{color:#D5DDD3}
.foot{position:absolute;left:104px;right:104px;bottom:48px;width:1712px;display:flex;justify-content:space-between;font-size:24px;color:var(--text-secondary);border-top:1px solid var(--border-subtle);padding-top:14px}
.dark .foot{color:#B9C4B8;border-top-color:#4A5C51}
/* cover */
section.cover{flex-direction:row;align-items:center;gap:72px;padding:104px}
.covl{width:860px;display:flex;flex-direction:column;gap:32px}
.covl.wide{width:1712px}
.covl .eyebrow{margin-bottom:0}
.byline{font-size:24px;color:#B9C4B8;margin-top:24px}
.covr{flex:1}
.covr img{width:840px;height:525px;object-fit:cover;border-radius:16px;box-shadow:0 24px 64px rgba(0,0,0,0.35)}
/* quote + stats */
.quote{background:var(--fyc-white);border:1px solid var(--border-subtle);border-radius:20px;padding:28px 44px;margin-bottom:28px}
.quote .q{font-family:var(--font-serif);font-size:50px;line-height:1.2;font-weight:600}
.quote .qa{font-size:24px;color:var(--text-secondary);margin-top:16px}
.stats{display:flex;gap:32px}
.stat{flex:1;border-top:4px solid var(--fyc-sage);padding-top:20px}
.stat .num{font-family:var(--font-serif);font-size:64px;font-weight:600;line-height:1.05}
.stat .lab{font-size:26px;color:var(--text-secondary);margin-top:8px}
/* statement */
.two{display:flex;gap:40px}
.job{flex:1;background:rgba(255,255,255,0.07);border:1px solid #4A5C51;border-radius:20px;padding:40px 44px}
.job .jn{font-size:24px;font-weight:600;letter-spacing:0.12em;text-transform:uppercase;color:#B7C7AA;margin-bottom:12px}
.job h3{margin-bottom:14px}
.job p{color:#D5DDD3}
.src{font-size:24px;margin-top:36px}
/* shot slides */
.shotrow{display:flex;gap:48px;align-items:flex-start}
.frame{border-radius:14px;overflow:hidden;box-shadow:0 12px 32px rgba(45,63,53,0.16);border:1px solid var(--border-subtle);background:var(--fyc-white);line-height:0}
.shot .frame img{width:1264px;height:711px;object-fit:contain}
.shot.tall .frame img{width:1138px;height:711px}
.notes{flex:1;display:flex;flex-direction:column;gap:26px}
.note{border-top:3px solid var(--fyc-sage);padding-top:14px}
.note .nk{font-size:26px;font-weight:700;margin-bottom:4px}
.note .nt{font-size:24px;line-height:1.4;color:var(--text-secondary)}
/* pillars */
.pillars{display:flex;align-items:center;gap:20px;margin-top:8px}
.pill{flex:1;background:var(--fyc-white);border:1px solid var(--border-subtle);border-radius:20px;padding:44px;box-shadow:0 1px 2px rgba(45,63,53,0.08)}
.pill .pn{font-size:24px;font-weight:600;letter-spacing:0.12em;text-transform:uppercase;color:var(--text-secondary)}
.pill h3{font-size:56px;margin:6px 0 4px}
.pill .pd{font-size:28px;color:var(--text-secondary);margin-bottom:22px}
.pill ul{margin:0 0 26px;padding-left:28px;font-size:26px;line-height:1.6}
.pill .keep{display:inline-block;background:var(--sage-tint);border-radius:999px;padding:8px 22px;font-size:24px;font-weight:600}
.arrow{width:56px}
/* funnel */
.tracks{display:flex;flex-direction:column;gap:28px}
.track{background:var(--fyc-white);border:1px solid var(--border-subtle);border-radius:20px;padding:28px 36px}
.track .tl{font-size:24px;font-weight:600;letter-spacing:0.12em;text-transform:uppercase;color:var(--text-secondary);margin-bottom:16px}
.steps{display:flex;gap:16px}
.st{flex:1;background:var(--forest-tint);border-radius:12px;padding:22px 24px;font-size:26px;font-weight:600;line-height:1.3}
.st.last{background:var(--sage-tint)}
.rule{margin-top:32px;background:var(--fyc-forest);border-radius:16px;padding:26px 36px}
.rule p{color:var(--fyc-white);font-size:26px}
/* reel */
.reelrow{display:flex;gap:40px;align-items:flex-start}
.gif img{width:836px;height:470px;object-fit:cover}
.sb img{width:836px;height:470px;object-fit:contain}
.cap{font-size:24px;color:var(--text-secondary);margin-top:28px}
/* bites */
.cols{display:flex;gap:32px}
.col{flex:1;display:flex;flex-direction:column;gap:14px}
.col .ch{font-family:var(--font-serif);font-size:36px;font-weight:600;border-bottom:4px solid var(--fyc-sage);padding-bottom:10px;margin-bottom:6px}
.bite{display:flex;gap:20px;align-items:flex-start;background:var(--fyc-white);border:1px solid var(--border-subtle);border-radius:14px;padding:18px 22px}
.bite .bc{flex:none;width:64px;height:64px;border-radius:999px;background:var(--fyc-forest);color:var(--fyc-white);font-size:24px;font-weight:700;display:flex;align-items:center;justify-content:center;line-height:1}
.bite h3{font-family:var(--font-sans);font-size:27px;font-weight:700;letter-spacing:0}
.bite p{font-size:24px;line-height:1.3;color:var(--text-secondary)}
/* waves */
.waves{display:flex;gap:24px}
.wave{flex:1;background:var(--fyc-white);border:1px solid var(--border-subtle);border-radius:20px;padding:32px;border-top:8px solid var(--fyc-forest)}
.wave .wn{font-size:24px;font-weight:600;letter-spacing:0.12em;text-transform:uppercase;color:var(--text-secondary)}
.wave h3{margin:6px 0 18px}
.chips{display:flex;gap:10px;margin-bottom:20px;flex-wrap:wrap}
.chip{background:var(--fyc-forest);color:var(--fyc-white);border-radius:999px;padding:8px 20px;font-size:24px;font-weight:700}
.wave p{font-size:25px;color:var(--text-secondary)}
/* next */
.needs{display:flex;gap:40px;margin-top:16px}
.needs>div{flex:1;background:rgba(255,255,255,0.07);border:1px solid #4A5C51;border-radius:20px;padding:32px 40px}
.needs .nh{font-size:24px;font-weight:600;letter-spacing:0.12em;text-transform:uppercase;color:#B7C7AA;margin-bottom:12px}
.needs ul{margin:0;padding-left:28px;font-size:27px;line-height:1.6;color:var(--fyc-white)}
/* motion */
@keyframes rise{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
.rise{animation:rise .6s cubic-bezier(0.2,0.8,0.2,1) both}
.rise.d1{animation-delay:.12s}.rise.d2{animation-delay:.24s}.rise.d3{animation-delay:.36s}
/* pillar dividers */
section.divider{padding:120px 128px;justify-content:center}
.divider .dnum{position:absolute;right:96px;top:40px;width:760px;text-align:right;font-family:var(--font-serif);font-weight:700;font-size:400px;line-height:1;color:#405848}
.divider .dbody{position:relative;display:flex;flex-direction:column;gap:28px;width:1500px}
.divider .dbody .eyebrow{margin-bottom:0;font-size:28px}
.divider .dname{font-size:260px;line-height:0.95;font-weight:700;letter-spacing:-0.02em;color:var(--fyc-white)}
.divider .drule{width:220px;height:10px;border-radius:999px;background:var(--fyc-sage)}
.divider .dline{font-size:44px;line-height:1.3;color:#E4EBDD;font-family:var(--font-serif)}
.divider .dchips{display:flex;gap:16px;margin-top:8px}
.divider .dchip{border:2px solid var(--fyc-sage);color:var(--fyc-white);border-radius:999px;padding:12px 30px;font-size:28px;font-weight:600}

/* cover layers */
section.cover{flex-direction:column;justify-content:center;align-items:flex-start;padding:104px}
.cover .orb{position:absolute}
.cover .o1{left:980px;top:70px;width:900px;height:900px;background:#91A385;opacity:0.14}
.cover .o2{left:860px;top:150px;width:1000px;height:860px;background:#1A2420;opacity:0.35}
.cover .o3{left:1700px;top:120px;width:120px;height:120px;background:#91A385;opacity:0.5}
.cover .card{position:absolute;border-radius:16px;overflow:hidden;line-height:0;background:#FFFFFF;border:1px solid #4A5C51}
.cover .cback{left:1180px;top:130px;width:640px;height:400px;transform:rotate(4deg);box-shadow:0 24px 60px rgba(0,0,0,0.40);opacity:0.92}
.cover .cback img{width:640px;height:400px;object-fit:cover}
.cover .cmid{left:1240px;top:610px;width:600px;height:338px;transform:rotate(-3deg);box-shadow:0 24px 60px rgba(0,0,0,0.40)}
.cover .cmid img{width:600px;height:338px;object-fit:cover}
.cover .cfront{left:900px;top:300px;width:800px;height:500px;box-shadow:0 40px 64px rgba(0,0,0,0.55),0 8px 20px rgba(0,0,0,0.30)}
.cover .cfront img{width:800px;height:500px;object-fit:cover}
.cover .covl{width:760px}
.cover h1{font-size:72px;text-shadow:0 4px 24px rgba(0,0,0,0.35)}
.crule{width:140px;height:8px;border-radius:999px;background:var(--fyc-peach)}

.cover .covl.wide{width:1712px}
/* left behind band */
.stat .lab{font-size:24px}
.behind{margin-top:28px;background:var(--fyc-forest);border-radius:20px;padding:28px 36px;display:flex;gap:36px;align-items:flex-start;box-shadow:0 12px 32px rgba(45,63,53,0.14)}
.behind .bh{width:400px;flex:none}
.behind .bk{font-size:24px;font-weight:600;letter-spacing:0.12em;text-transform:uppercase;color:#B7C7AA;margin-bottom:8px}
.behind h3{color:var(--fyc-white);font-size:36px;line-height:1.2}
.behind .bc2{flex:1;border-left:2px solid #4A5C51;padding-left:28px}
.behind .bn{font-family:var(--font-serif);font-weight:600;font-size:52px;line-height:1.1;color:var(--fyc-white);margin-bottom:6px}
.behind .bt{font-size:24px;line-height:1.35;color:#D5DDD3}

/* what's next */
.divider .dname.wn{font-size:200px}
.divider .done{display:flex;gap:28px}
.divider .dn{display:flex;gap:20px;align-items:center;background:rgba(255,255,255,0.07);border:1px solid #4A5C51;border-radius:20px;padding:24px 32px}
.divider .dck{width:52px;height:52px;color:#B7C7AA;flex:none}
.divider .dn h3{font-size:36px;color:var(--fyc-white)}
.divider .dn p{font-size:24px;color:#D5DDD3}

/* order slide, filled */
.wave{padding:28px 30px}
.wave h3{margin:4px 0 14px}
.wave .ww{font-size:25px;color:var(--fyc-forest);font-weight:600;margin-bottom:10px}
.wave ul{margin:0 0 16px;padding-left:26px;font-size:24px;line-height:1.5;color:var(--text-secondary)}
.wave .when{background:var(--sage-tint);border-radius:10px;padding:10px 16px;font-size:24px;font-weight:600;color:var(--fyc-forest)}
.orow{display:flex;gap:24px;margin-top:24px;align-items:stretch}
.oq{flex:1;background:var(--fyc-white);border:1px solid var(--border-subtle);border-radius:16px;padding:22px 32px}
.oq .q{font-family:var(--font-serif);font-weight:600;font-size:32px;line-height:1.25}
.oq .qa{font-size:24px;color:var(--text-secondary);margin-top:6px}
.orow .rule{flex:1;margin-top:0;display:flex;align-items:center}

/* market, filled */
.statement h2.big{font-size:84px;margin-bottom:36px}
.mstats{display:flex;gap:28px;margin-bottom:32px}
.ms{flex:1;border-top:4px solid var(--fyc-sage);padding-top:16px}
.ms .mn{font-family:var(--font-serif);font-weight:600;font-size:88px;line-height:1.05;color:var(--fyc-white)}
.ms .ml{font-size:24px;line-height:1.35;color:#D5DDD3;margin-top:6px}
.statement .job{padding:30px 36px}
.mq{font-family:var(--font-serif);font-size:32px;color:var(--fyc-white);margin-top:28px}
.mqa{color:#B7C7AA}
/* plan, filled */
.pillars{align-items:stretch}
.arrow{display:flex;align-items:center}
.pill{padding:36px 40px;display:flex;flex-direction:column}
.pill h3{font-size:64px}
.pill ul{font-size:28px;margin-bottom:22px}
.pq{background:var(--fyc-cream);border-radius:14px;padding:20px 24px;margin-bottom:22px;flex:1}
.pq .pqt{font-family:var(--font-serif);font-weight:600;font-size:28px;line-height:1.3}
.pq .pqa{font-size:24px;color:var(--text-secondary);margin-top:8px}
.pill .keep{align-self:flex-start}

/* bites, aligned */
.cols{align-items:stretch;gap:36px}
.col{gap:16px}
.col .ch{margin-bottom:8px}
.bite{height:138px;align-items:center;padding:0 26px;gap:22px}
.bite .bc{width:68px;height:68px}
.bite h3{font-size:29px;line-height:1.2;margin-bottom:4px}
.bite p{font-size:24px;line-height:1.3}
