/* ON1 source values; core DOM adapters live beside their owner. */
.hero {background:linear-gradient(120deg,#f9fcff,#eef6ff);overflow:hidden;}
.hero-grid {display:grid;grid-template-columns:1.05fr 1fr;gap:30px;align-items:center;min-height:580px;padding-block:62px;}
.hero h1 {margin-bottom:24px;}
.hero p:not(.eyebrow):not(.breadcrumb) {max-width:520px;font-size:17px;}
.hero-media {position:relative;isolation:isolate;}
.hero-media>img {border-radius:14px;aspect-ratio:1.35;object-fit:cover;box-shadow:0 22px 70px #19468016;}
.section-head {display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:34px;}
.section-head p:not(.eyebrow):not(.breadcrumb) {font-size:15px;max-width:540px;margin-top:14px;line-height:1.8;}
.section-head.center {display:block;text-align:center;}
.section-head.center p {margin-inline:auto;}
.subhero .hero-grid {min-height:475px;padding-top:28px;padding-bottom:54px;}
.subhero h1 {font-size:clamp(34px,3.7vw,54px);}
.subhero .hero-grid>div:first-child {align-self:center;}
.subhero p:not(.eyebrow):not(.breadcrumb) {font-size:15px;}
.subhero .hero-media img {aspect-ratio:1.35;}
@media(min-width:1400px) {.hero-grid {gap:55px;}}
@media(max-width:1150px) {.hero-grid {min-height:540px;}}
@media(max-width:900px) {.hero-grid {grid-template-columns:1fr 1fr;gap:25px;min-height:480px;padding-block:45px;}}
@media(max-width:900px) {.hero p:not(.eyebrow):not(.breadcrumb) {font-size:15px;}}
@media(max-width:900px) {.hero-media>img {aspect-ratio:1;object-fit:cover;}}
@media(max-width:900px) {.section-head {align-items:start;}}
@media(max-width:640px) {.hero-grid {grid-template-columns:1fr;gap:36px;padding-top:38px;padding-bottom:42px;min-height:0;}}
@media(max-width:640px) {.subhero .hero-grid {grid-template-columns:1fr;gap:36px;padding-top:38px;padding-bottom:42px;min-height:0;}}
@media(max-width:640px) {.hero h1 {margin-bottom:20px;}}
@media(max-width:640px) {.hero p:not(.eyebrow):not(.breadcrumb) {font-size:14px;line-height:1.85;}}
@media(max-width:640px) {.hero-media>img {aspect-ratio:1.45;border-radius:19px;}}
@media(max-width:640px) {.subhero .hero-media img {aspect-ratio:1.5;border-radius:19px;}}
@media(max-width:640px) {.hero-media {padding:0 4px;}}
@media(max-width:640px) {.section-head {display:block;margin-bottom:28px;}}
@media(max-width:640px) {.section-head p:not(.eyebrow):not(.breadcrumb) {font-size:15px;margin-top:12px;}}
@media(max-width:640px) {.subhero h1 {font-size:37px;}}
.section-head h2 {font-size:clamp(29px,2.8vw,42px);}
