/* Homepage background hero. CMS images, copy and existing controls stay native. */
.home-hero{position:relative;isolation:isolate;overflow:hidden;padding:0!important;background:#102c49!important;color:#fff;min-height:640px;min-height:calc(100svh - 100px);display:flex;align-items:center}
.home-hero:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(5,24,46,.88) 0%,rgba(7,30,56,.77) 32%,rgba(9,35,63,.39) 57%,rgba(9,35,63,.06) 85%)}
.home-hero .hero-grid{position:static!important;display:block!important;width:100%;padding-top:90px;padding-bottom:100px}
.home-hero .hero-grid>div:first-child{position:relative;z-index:2;width:57%;max-width:720px;min-width:0}
.home-hero .hero-visual{position:absolute!important;inset:0;z-index:0;width:100%!important;height:100%!important;max-width:none!important;margin:0!important;border:0!important;border-radius:0!important;background:none!important;padding:0!important;box-shadow:none!important}
.home-hero .hero-carousel,.home-hero .hero-carousel-track,.home-hero .hero-slide{width:100%;height:100%;border-radius:0!important}
.home-hero .hero-carousel-track{align-items:stretch}
.home-hero .hero-slide .hero-image{width:100%!important;height:100%!important;max-height:none!important;aspect-ratio:auto!important;object-fit:cover!important;object-position:68% 30%;border-radius:0!important}
.home-hero .eyebrow{color:#e2f0ff;font-size:14px;letter-spacing:.08em;margin-bottom:24px}
.home-hero h1{font-size:clamp(38px,3.7vw,64px);line-height:1.22;letter-spacing:-.035em;color:white;margin:0 0 25px;text-shadow:0 2px 24px #061b342b}
.home-hero h1 span{color:#fff!important}
.home-hero .hero-grid>div:first-child>p{color:#e3ebf4;font-size:17px;line-height:1.95;max-width:570px;margin:0 0 24px}
.home-hero .pills{gap:10px;margin:0 0 34px}.home-hero .pills span{color:#fff;background:rgba(255,255,255,.1);border:1px solid #ffffff45;backdrop-filter:blur(6px);font-size:12px}
.home-hero .hero-actions{gap:14px}.home-hero .hero-actions .btn{min-height:50px;padding:14px 25px;border-radius:6px;background:#0873dc;color:white;border:1px solid #0873dc;box-shadow:none}
.home-hero .hero-actions .btn.outline{background:#ffffff0d;border-color:#ffffff90;color:white}.home-hero .hero-actions .btn:hover{background:#065eb9}.home-hero .hero-actions .btn.outline:hover{background:#ffffff24}
.home-hero .hero-carousel-controls{position:absolute;bottom:26px;left:0;right:0;z-index:3}.home-hero .hero-carousel-dot:after{background:#ffffff70}.home-hero .hero-carousel-dot.is-active:after{background:#fff}
.home-hero .hero-carousel-arrow{top:auto;bottom:24px;z-index:3;background:#0a244e70}.home-hero .hero-carousel-prev{left:auto;right:76px}.home-hero .hero-carousel-next{right:28px}
@media(min-width:1800px){.home-hero .hero-grid{padding-top:120px;padding-bottom:130px}}
@media(max-width:950px){.home-hero{min-height:calc(100svh - 84px)}.home-hero .hero-grid>div:first-child{width:76%}.home-hero .hero-grid{padding-top:80px;padding-bottom:90px}.home-hero .hero-slide .hero-image{object-position:65% center}.home-hero:after{background:linear-gradient(90deg,#071e38e6,#0925428c 75%,#09254233)}}
@media(max-width:600px){.home-hero .hero-grid>div:first-child{width:100%}.home-hero h1{font-size:36px}.home-hero .hero-grid{padding-top:58px;padding-bottom:76px}.home-hero .hero-grid>div:first-child>p{font-size:15px}.home-hero .eyebrow{font-size:11px}.home-hero .pills{gap:6px}.home-hero .hero-actions .btn{padding:12px 17px}}
/* The separate mobile renderer keeps its original image and consultation flow. */
main>section.hero{position:relative;isolation:isolate;overflow:hidden;background:#102c49!important;padding:0!important;min-height:calc(100svh - 76px);display:flex;align-items:center;color:#fff}
main>section.hero:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(5,24,46,.86),rgba(7,29,53,.59)),linear-gradient(0deg,rgba(5,24,46,.5),transparent 70%)}
main>section.hero .hero-inner{position:static;display:block;padding-top:64px;padding-bottom:76px;width:100%}
main>section.hero .hero-inner>div:first-child{position:relative;z-index:2;max-width:620px}
main>section.hero .hero-photo{position:absolute!important;inset:0;z-index:0;width:100%!important;height:100%!important;margin:0!important;border:0!important;border-radius:0!important;max-height:none!important;box-shadow:none!important}
main>section.hero .hero-photo img{display:block;width:100%!important;height:100%!important;max-height:none!important;object-fit:cover!important;object-position:65% center;border-radius:0!important}
main>section.hero h1{color:#fff;font-size:clamp(32px,8.6vw,46px);line-height:1.3;letter-spacing:-.025em;margin:20px 0}
main>section.hero .eyebrow{color:#e3efff;font-size:11px;letter-spacing:.025em;background:transparent;border:0;padding:0;line-height:1.8}
main>section.hero .intro{color:#e6edf6;font-size:15px;line-height:1.95;margin-bottom:24px}
main>section.hero .hero-badges{gap:8px;margin-bottom:28px}main>section.hero .hero-badges span{background:#ffffff13;border:1px solid #ffffff55;color:#fff;font-size:11px}
main>section.hero .hero-actions{display:flex;flex-wrap:wrap;gap:10px}main>section.hero .hero-actions .btn{background:#0873dc;color:#fff;border:1px solid #0873dc;box-shadow:none;border-radius:6px;min-height:48px;padding:12px 18px}main>section.hero .hero-actions .secondary{background:#ffffff13;border-color:#ffffff88;color:#fff}
@media(max-width:375px){main>section.hero .hero-inner{padding-top:44px;padding-bottom:55px}main>section.hero h1{font-size:31px}main>section.hero .intro{font-size:14px}}

.home-hero .hero-grid{min-height:0!important;width:calc(100% - 80px)!important;max-width:1240px;box-sizing:border-box}.home-hero .hero-carousel-track{grid-template-rows:minmax(0,1fr)}.home-hero .hero-slide{min-height:0;overflow:hidden}.home-hero{min-height:calc(100svh - 170px)}
@media(max-width:600px){.home-hero .hero-grid{width:calc(100% - 40px)!important}}
main>section.hero{min-height:calc(100svh - 117px)}

/* Compact hero: include the four evidence metrics in the first viewport. */
.home-hero{min-height:0!important;height:clamp(515px,calc(100svh - 145px),715px)!important}
.home-hero .hero-grid{padding-top:35px!important;padding-bottom:40px!important}
.home-hero h1{font-size:clamp(36px,3.4vw,58px);margin-bottom:18px}
.home-hero .eyebrow{margin-bottom:18px}.home-hero .hero-grid>div:first-child>p{font-size:16px;line-height:1.8;margin-bottom:18px}.home-hero .pills{margin-bottom:24px}
.stats .wrap{padding-top:20px;padding-bottom:20px}
main>section.hero{min-height:0!important;height:auto!important}
main>section.hero .hero-inner{padding-top:38px;padding-bottom:40px}
main>section.hero h1{font-size:clamp(30px,8vw,40px);margin:14px 0}
main>section.hero .intro{font-size:14px;line-height:1.8;margin-bottom:18px}
main>section.hero .hero-badges{margin-bottom:20px;gap:6px}
.proof-strip{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:0!important;padding:14px 18px!important;margin:0!important;background:#fff}
.proof-strip>div{padding:10px 4px!important;min-width:0;border:0!important}.proof-strip strong{font-size:24px!important;line-height:1.2!important}.proof-strip span{font-size:11px!important;line-height:1.6!important}
@media(max-width:375px){main>section.hero .hero-inner{padding-top:26px;padding-bottom:28px}main>section.hero .intro{font-size:13px}main>section.hero h1{font-size:29px}.proof-strip{padding-top:10px!important;padding-bottom:10px!important}}
@media(max-height:700px) and (min-width:951px){.home-hero{height:515px!important}.home-hero h1{font-size:36px}.home-hero .eyebrow{margin-bottom:12px}.home-hero .hero-grid>div:first-child>p{font-size:15px}.home-hero .pills{margin-bottom:18px}}

/* Airier, left-anchored copy; preserve native CMS content and actions. */
.home-hero .hero-grid{padding-top:36px!important;padding-bottom:66px!important}
.home-hero .hero-grid>div:first-child{width:66%;max-width:800px;text-align:left}
.home-hero .eyebrow{margin-bottom:28px;letter-spacing:.1em}
.home-hero h1{line-height:1.3;margin-bottom:26px;letter-spacing:-.02em}
.home-hero .hero-grid>div:first-child>p{max-width:610px;line-height:1.95;margin-bottom:26px}
.home-hero .pills{justify-content:flex-start;gap:12px;margin-bottom:32px}
.home-hero .hero-actions{justify-content:flex-start;gap:16px}
@media(max-height:700px) and (min-width:951px){.home-hero .eyebrow{margin-bottom:20px}.home-hero h1{margin-bottom:22px}.home-hero .pills{margin-bottom:26px}}
@media(max-width:950px){.home-hero .hero-grid>div:first-child{width:85%}}
@media(max-width:600px){.home-hero .hero-grid>div:first-child{width:100%}}
/* Mobile hero fills the first screen below the 101px native header.
   Reserve space inside the background for the fixed 120px consultation bar. */
main>section.hero{min-height:calc(100svh - 101px)!important;height:auto!important;align-items:stretch}
main>section.hero .hero-inner{display:flex;align-items:center;box-sizing:border-box;min-height:inherit;padding-top:42px;padding-bottom:150px}
main>section.hero .hero-inner>div:first-child{width:100%;text-align:left}
main>section.hero .eyebrow{margin-bottom:24px;line-height:1.9}
main>section.hero h1{line-height:1.4;margin:0 0 24px}
main>section.hero .intro{line-height:1.95;margin:0 0 26px}
main>section.hero .hero-badges{justify-content:flex-start;gap:8px;margin-bottom:30px}
main>section.hero .hero-actions{justify-content:flex-start;gap:12px}
@media(max-width:375px){main>section.hero .hero-inner{padding-top:28px;padding-bottom:140px}main>section.hero .eyebrow{margin-bottom:18px}main>section.hero h1{margin-bottom:20px}main>section.hero .intro{margin-bottom:22px}main>section.hero .hero-badges{margin-bottom:24px}}
