/* Homepage hero closely follows the supplied design concept. */
.hero{background:#f8fbf9;overflow:hidden}
.hero .hero-grid{width:min(1440px,100%);min-height:560px;grid-template-columns:45% 55%}
.hero-copy{position:relative;z-index:3;padding:58px 26px 46px max(42px,calc((100vw - 1180px)/2));background:#f8fbf9}
.hero-copy:after{content:"";position:absolute;z-index:-1;top:0;right:-120px;width:150px;height:100%;background:linear-gradient(90deg,#f8fbf9 20%,rgba(248,251,249,0));pointer-events:none}
.hero-copy .eyebrow{display:none}
.hero h1{font-size:clamp(48px,5.2vw,72px);line-height:1.02;letter-spacing:-3px;max-width:610px}
.hero .lead{font-size:22px;max-width:500px;margin:18px 0 27px;color:#294941}
.hero-image{min-height:560px;background-position:center 42%;position:relative}
.hero-image:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(248,251,249,.82) 0,rgba(248,251,249,.17) 17%,transparent 38%)}
.hero .script-note{z-index:2;right:42px;top:34px;font-size:25px;padding-bottom:7px;border-bottom:2px solid rgba(0,62,50,.6)}
.hero .image-caption{z-index:2;right:42px;bottom:32px;line-height:1.7}
.hero .promise-row{margin-top:34px;gap:32px}
.hero .promise-row div{font-size:14px}
.hero .promise-row b{width:34px;height:34px;display:grid;place-items:center;color:#067354;font-size:20px}
@media(max-width:980px){.hero .hero-grid{grid-template-columns:1fr}.hero-copy{padding:50px 28px 42px;background:#f8fbf9}.hero-copy:after{display:none}.hero-image{min-height:410px}.hero-image:before{background:linear-gradient(180deg,rgba(248,251,249,.42),transparent 35%)}}
@media(max-width:700px){.hero h1{font-size:43px;letter-spacing:-1.8px}.hero .lead{font-size:19px}.hero-copy{padding:42px 20px 36px}.hero-image{min-height:330px}.hero .promise-row{gap:18px}.hero .script-note{right:20px;top:24px;font-size:20px}.hero .image-caption{right:20px;bottom:20px}}
