/* Homepage visual story, layered over the shared site and portal styles. */
.hero-surface{position:relative;overflow:hidden;background:radial-gradient(circle at 92% 12%,rgba(195,244,201,.78),transparent 35%),linear-gradient(125deg,#f5f7f4 0%,#e7f0e9 100%)}
.hero-surface::before{content:'';position:absolute;right:20px;bottom:35px;width:clamp(420px,50vw,760px);aspect-ratio:1743/938;background:rgba(46,111,66,.085);-webkit-mask-image:url('/images/a-mark.png');mask-image:url('/images/a-mark.png');-webkit-mask-size:200% 286%;mask-size:200% 286%;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;pointer-events:none}
.hero-surface .hero{position:relative;display:grid;grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);gap:clamp(42px,5vw,80px);align-items:center;min-height:680px;padding-top:64px;padding-bottom:55px}
.hero-surface .hero__copy{max-width:660px}
.hero-surface .hero__tag{display:block;margin-bottom:5px;font-size:clamp(27px,2.9vw,43px);font-weight:500;line-height:1.08;color:#1c4b34}
.hero-surface .hero__descriptor{margin-bottom:clamp(36px,4vw,58px);font-size:12px;letter-spacing:.15em}
.hero-surface .hero h1{font-size:clamp(58px,5.25vw,82px);line-height:.99;letter-spacing:-.068em;margin-bottom:27px}
.hero-surface .hero__lede{max-width:570px;font-size:clamp(16px,1.28vw,19px);line-height:1.57;margin-bottom:31px}
.hero-surface .hero__copy .button-row{margin-bottom:0}
.hero__film{min-width:0;position:relative}
.hero__film-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px;color:#294e38;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.hero__film-heading span:last-child{font-size:10px;font-weight:500;letter-spacing:.03em;text-transform:none}
.hero__film .promo-video{border:6px solid #fff;border-radius:25px;box-shadow:0 35px 75px rgba(21,55,37,.19)}
.hero__film .promo-video video{aspect-ratio:16/10}
.hero__outcomes{position:relative;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #b9d3be;padding-top:19px;padding-bottom:24px;color:#295339;font-size:12px;font-weight:700;letter-spacing:.04em}
.hero__outcomes span+span{border-left:1px solid #b9d3be;padding-left:24px}
.story{background:#fff;padding-bottom:clamp(64px,6vw,88px)}
.story__heading{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(50px,9vw,150px);align-items:end;margin-bottom:55px}
.story__heading h2{max-width:750px;font-size:clamp(48px,5.7vw,84px)}
.story__heading>p{max-width:440px;margin:0 0 7px;font-size:18px;line-height:1.6}
.story__grid{display:grid;grid-template-columns:1.14fr .86fr;gap:clamp(50px,7vw,110px);align-items:center}
.story__visual{margin:0;padding:25px 25px 18px;border-radius:25px;background:linear-gradient(145deg,#28513c,#0d2926 72%);box-shadow:0 27px 55px rgba(21,55,37,.15)}
.story__visual img{width:100%;aspect-ratio:1470/829;object-fit:contain;object-position:top;border-radius:11px;box-shadow:0 12px 30px rgba(0,0,0,.2)}
.story__visual figcaption{display:flex;justify-content:space-between;gap:12px;margin-top:15px;color:#daeedf;font-size:11px}
.story__visual figcaption span{font-weight:700}
.story__steps{display:flex;flex-direction:column}
.story__steps>div{padding:19px 0 22px;border-top:1px solid #cddbd0}
.story__steps>div:last-of-type{border-bottom:1px solid #cddbd0}
.story__steps>div>span{display:block;margin-bottom:9px;color:#447456;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.story__steps h3{max-width:470px;margin:0 0 8px;font-size:clamp(25px,2.5vw,36px)}
.story__steps p{max-width:500px;margin:0;font-size:14px;line-height:1.55}
.story__steps .editorial-link{align-self:flex-start;margin-top:30px}
.value-spotlight{position:relative;overflow:hidden;background:radial-gradient(circle at 85% 12%,rgba(104,171,119,.25),transparent 39%),linear-gradient(125deg,#244e3a,#102f29 57%,#09211f);color:#fff;padding-block:clamp(76px,7.5vw,112px)}
.value-spotlight::before{content:'';position:absolute;right:-7%;bottom:-21%;width:clamp(430px,51vw,760px);aspect-ratio:1743/938;background:rgba(195,244,201,.07);-webkit-mask-image:url('/images/a-mark.png');mask-image:url('/images/a-mark.png');-webkit-mask-size:200% 286%;mask-size:200% 286%;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;pointer-events:none}
.value-spotlight__grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(70px,9vw,150px);align-items:start}
.value-spotlight__copy h2{max-width:720px;font-size:clamp(51px,5.3vw,79px);line-height:1.02}
.value-spotlight__copy h2 em{color:var(--mint)}
.value-spotlight__copy p:not(.eyebrow){max-width:650px;color:#d6e8db;font-size:16px;line-height:1.7;margin:27px 0 0}
.value-spotlight__copy p.value-spotlight__lead{color:#fff;font-size:clamp(19px,1.6vw,23px);line-height:1.45;margin-top:34px}
.value-spotlight__copy .button{margin-top:35px}
.value-spotlight__detail{border-top:1px solid rgba(195,244,201,.5)}
.value-spotlight__date{display:flex;align-items:baseline;gap:15px;margin:14px 0 25px;color:#c3f4c9;font-size:clamp(26px,2.7vw,40px);line-height:1;letter-spacing:-.05em}
.value-spotlight__date strong{font-size:clamp(62px,6.8vw,102px);font-weight:400;letter-spacing:-.075em}
.value-spotlight__point{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:22px;padding:22px 0;border-top:1px solid rgba(195,244,201,.28)}
.value-spotlight__point h3{margin:0;color:#fff;font-size:clamp(20px,1.75vw,25px);line-height:1.2}
.value-spotlight__point p{margin:0;color:#d3e4d7;font-size:14px;line-height:1.55}
.value-spotlight__source{display:inline-flex;gap:12px;align-items:center;margin-top:25px;color:#c3f4c9;font-size:12px;font-weight:600;text-decoration:underline;text-underline-offset:4px}
.value-spotlight__source:hover{color:#fff}
.why{background:#f2f2f2;padding-top:clamp(64px,6vw,88px)}
.process{background:#fff;padding-bottom:clamp(64px,6vw,88px)}
.ask-section{background:radial-gradient(circle at 88% 16%,rgba(195,244,201,.62),transparent 43%),linear-gradient(125deg,#f1f6f2,#e5f1e7);padding-top:clamp(64px,6vw,88px)}
.ask-section__grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(55px,8vw,130px);align-items:center}
.ask-section__copy h2{font-size:clamp(47px,5.2vw,75px)}
.ask-section__copy h2 em{color:#39734d}
.ask-section__copy>p:not(.eyebrow){max-width:490px;margin:29px 0 36px;font-size:18px;line-height:1.6}
.ask-section .hero__ask{max-width:720px;width:100%;justify-self:end}
.evidence .product-view{min-height:0;padding:35px 35px 20px;background:linear-gradient(145deg,#e5f0e8,#d7e8db)}
.evidence .product-view img{width:min(100%,490px);height:510px;object-fit:cover;object-position:top;border-radius:10px 10px 0 0;box-shadow:0 14px 40px rgba(17,53,34,.18)}
.evidence .product-view figcaption{max-width:490px;text-align:center;line-height:1.45}
.final-cta{position:relative;overflow:hidden;background:radial-gradient(circle at 86% 12%,rgba(195,244,201,.95),transparent 45%),linear-gradient(125deg,#e9f5eb,#d0ecd6)}
.final-cta::before{content:'';position:absolute;right:1%;bottom:0;width:clamp(430px,48vw,760px);aspect-ratio:1743/938;background:rgba(46,111,66,.09);-webkit-mask-image:url('/images/a-mark.png');mask-image:url('/images/a-mark.png');-webkit-mask-size:200% 286%;mask-size:200% 286%;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;pointer-events:none}
.final-cta>.wrap{position:relative;z-index:1}
@media(max-width:1100px){.hero-surface .hero{grid-template-columns:1fr 1fr;gap:34px}.hero-surface .hero h1{font-size:clamp(49px,5.2vw,65px)}.hero__film-heading span:last-child{display:none}.story__grid{gap:50px}}
@media(max-width:800px){.hero-surface .hero{display:flex;flex-direction:column;align-items:stretch;gap:50px;min-height:0;padding-top:68px;padding-bottom:42px}.hero-surface .hero__copy{max-width:700px;margin-bottom:0}.hero-surface .hero h1{font-size:clamp(54px,8vw,76px)}.hero__film-heading span:last-child{display:inline}.story__heading,.story__grid,.ask-section__grid,.value-spotlight__grid{grid-template-columns:1fr;gap:34px}.story__heading{margin-bottom:36px}.story__heading>p{max-width:650px}.story__visual{max-width:700px}.ask-section .hero__ask{justify-self:stretch;max-width:none;margin-inline:0}.ask-section__copy>p:not(.eyebrow){max-width:670px}.evidence .product-view img{height:460px}.value-spotlight__detail{margin-top:18px}}
@media(max-width:600px){.hero-surface .hero{padding-top:55px;gap:43px}.hero-surface .hero h1{font-size:clamp(43px,11vw,58px)}.hero-surface .hero__tag{font-size:clamp(27px,7vw,34px)}.hero-surface .hero__descriptor{margin-bottom:31px}.hero__film-heading span:last-child{font-size:9px}.hero__film .promo-video{border-width:4px;border-radius:18px}.hero__outcomes{grid-template-columns:1fr;gap:6px;padding-top:14px;padding-bottom:17px;font-size:11px}.hero__outcomes span+span{border-left:0;padding-left:0}.hero__outcomes span::before{content:'↗';margin-right:9px}.story__heading h2{font-size:clamp(43px,10vw,57px)}.story__heading>p,.ask-section__copy>p:not(.eyebrow){font-size:16px}.story__visual{padding:12px 12px 14px;border-radius:19px}.story__visual figcaption{display:block;font-size:10px}.story__visual figcaption span{display:block}.story__steps h3{font-size:28px}.ask-section__copy h2{font-size:clamp(43px,10vw,57px)}.ask-section .hero__ask{margin-inline:0}.evidence .product-view{padding:20px 20px 15px}.evidence .product-view img{height:350px}}
@media(max-width:600px){.final-cta::before{right:-30px;width:330px;background:rgba(46,111,66,.06);-webkit-mask-size:170% 244%;mask-size:170% 244%;-webkit-mask-position:55% center;mask-position:55% center}}
@media(max-width:600px){.value-spotlight{padding-block:70px}.value-spotlight::before{right:-35%;bottom:-8%;width:520px}.value-spotlight__copy h2{font-size:clamp(45px,11vw,58px)}.value-spotlight__copy .value-spotlight__lead{font-size:19px}.value-spotlight__point{grid-template-columns:1fr;gap:7px}.value-spotlight__date strong{font-size:75px}}
