/* One content grid, with full-width fields defining the homepage sections. */
.home-page{--home-content:1360px;--home-edge:max(40px,calc((100% - var(--home-content))/2));background:#fff}
.home-page>.site-header{box-shadow:0 2px 12px #03465106}
.home-page>.site-header .navwrap{max-width:1440px;min-height:96px;padding:12px 40px;gap:24px}
.home-page>.site-header .logo{width:224px}
.home-page>.site-header nav{gap:24px;font-size:14px;line-height:20px}
.home-page .section{max-width:none;margin:0;padding:64px var(--home-edge)}
.home-page .section h2{font-size:36px;line-height:40px}
.home-page .eyebrow{font-size:12px;line-height:16px;margin-bottom:16px}
.home-page .hero-carousel{width:100%;margin:0}
.home-page .hero.slide{height:clamp(420px,30vw,560px)}
.home-page .hero.slide .herocopy{width:47%;padding:40px 24px 48px var(--home-edge)}
.home-page .hero.slide .herocopy h1{font-size:48px;line-height:1;max-width:600px;letter-spacing:-.025em}
.home-page #slide-1 .herocopy h2{font-size:36px;line-height:40px;max-width:560px}
.home-page .hero.slide .herocopy p{font-size:18px;line-height:28px;max-width:520px;margin:24px 0}
.home-page .hero.slide .herocopy .button{padding:8px 12px;font-size:16px;line-height:24px}
.home-page .slidecontrols{bottom:16px}
.home-page #products{background:#f5f7f7;padding-top:48px;padding-bottom:48px}
.home-page .home-products-head{display:grid;grid-template-columns:1.2fr 1fr;gap:48px;align-items:end;margin-bottom:32px}
.home-page .home-products-head h2{font-size:30px;line-height:36px;max-width:680px}
.home-page .home-products-head p{margin:0;font-size:14px;line-height:20px;max-width:480px;justify-self:end}
.home-page .home-products-head .eyebrow{margin-bottom:12px}
.home-page .productgrid{max-width:none;gap:16px;grid-template-columns:repeat(5,minmax(0,1fr));overflow:visible;padding:0}
.home-page .productcard{padding:0;border:1px solid #e0e7e5;border-radius:12px;box-shadow:none;overflow:hidden}
.home-page .productvisual{aspect-ratio:1.5;border-radius:0;height:auto}
.home-page .productbody{padding:16px}
.home-page .productbody h3{font-size:18px;line-height:28px;min-height:56px;padding-inline-end:16px}
.home-page .productbody h3:after{font-size:18px}
.home-page .productbody p{font-size:12px;line-height:20px;margin-top:8px}
.home-page .productcard:hover{box-shadow:0 8px 24px #075a5b0a;transform:translateY(-4px)}
.home-page #partnership{background:#fff;color:var(--ink);padding:32px var(--home-edge)}
.home-page .supportinner{max-width:none;padding:0;margin:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}
.home-page .supportitem{grid-template-columns:40px minmax(0,1fr);gap:0 16px}
.home-page .serviceicon{width:40px;height:40px;border-radius:50%;background:#eaf4f0;color:#07865f;grid-row:span 2}
.home-page .serviceicon svg{width:24px;height:24px}
.home-page .supportitem h3{font-size:18px;line-height:28px;color:var(--teal)}
.home-page .supportitem p{font-size:12px;line-height:20px;color:var(--muted);margin-top:8px;max-width:360px}
.home-page #about{background:#f5f7f7;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:32px 64px;padding-top:64px;padding-bottom:64px}
.home-page .about-heading{box-shadow:none;background:transparent;grid-column:1/-1}
.home-page .about-heading h2{max-width:800px;font-size:36px;line-height:40px}
.home-page .about-copy .lead{font-size:20px;line-height:28px;max-width:800px}
.home-page .about-copy .about-audience,.home-page .about-copy .about-services{font-size:14px;line-height:20px;margin-top:16px;max-width:800px}
.home-page .about .purpose{grid-column:2;grid-row:2;grid-template-columns:1fr;gap:24px;margin:0;padding:0}
.home-page .about .purpose article{background:none;border:0;border-radius:0;padding:0}
.home-page .about .purpose h3{font-size:18px;line-height:28px;color:var(--teal)}
.home-page .about .purpose p{font-size:14px;line-height:20px;margin-top:8px;max-width:480px}
.home-page .tagline.section{height:192px;min-height:192px;padding:32px var(--home-edge);background:#075a5b;display:flex;align-items:center;justify-content:center}
.home-page .tagline h2{font-size:36px;line-height:40px;white-space:nowrap;text-wrap:nowrap;letter-spacing:-.025em;max-width:none}
.home-page .tagline .slogan-map{height:75%;max-width:100%;width:auto}
.home-page #buying-guides{background:#f5f7f7}
.home-page .geo-section-head{gap:48px;margin-bottom:32px;grid-template-columns:1.2fr 1fr}
.home-page .geo-section-head h2{max-width:680px}
.home-page .geo-section-head p{font-size:14px;line-height:20px;max-width:480px}
.home-page #geo-guide-cards{grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
.home-page #geo-guide-cards .guide-card{padding:24px 16px;background:#fff;border:1px solid #e0e7e5;border-radius:12px;box-shadow:none}
.home-page #geo-guide-cards .guide-index{margin-bottom:24px;font-size:12px;line-height:16px}
.home-page #geo-guide-cards h3{font-size:18px;line-height:28px}
.home-page #geo-guide-cards p{font-size:12px;line-height:20px;margin-top:12px}
.home-page #geo-guide-cards .guide-action{font-size:12px;line-height:16px;padding-top:24px}
.home-page #buyer-questions{grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:64px;background:#fff}
.home-page #buyer-questions>div:first-child{max-width:480px}
.home-page #buyer-questions h2{font-size:30px;line-height:36px}
.home-page .buyer-question{border:0;background:#f5f7f7;border-radius:8px;margin-bottom:12px}
.home-page .buyer-question summary{font-size:14px;line-height:20px;padding:16px 48px 16px 24px}
.home-page .buyer-question summary:after{top:16px;font-size:18px;line-height:20px}
.home-page .buyer-question p{padding:0 24px 24px;font-size:14px;line-height:20px}
.home-page #contact{background:#edf2f2;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:80px;align-items:start}
.home-page #contact>div{padding-top:16px}
.home-page #contact h2{font-size:36px;line-height:40px;max-width:560px}
.home-page #contact>div>p{font-size:16px;line-height:24px;max-width:480px;margin-bottom:24px}
.home-page #contact .button{padding:8px 12px}
.home-page #contact form{padding:32px;border-radius:12px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;background:#fff}
.home-page #contact form>*{grid-column:1/-1;margin:0;min-width:0}
.home-page #contact form>label:nth-of-type(1){grid-column:1}
.home-page #contact form>label:nth-of-type(2){grid-column:2}
.home-page #contact form h3{font-size:20px;line-height:28px;margin-bottom:8px}
.home-page #contact label span{font-size:12px;line-height:16px}
.home-page #contact input,.home-page #contact textarea,.home-page #contact form select{padding:8px 12px;font-size:14px;line-height:20px}
.home-page #contact .fine{font-size:12px;line-height:20px}
.home-page #contact form>button{justify-self:start}
.home-page #formstatus:empty{display:none}
.home-page>footer{padding:32px var(--home-edge);background:#fff}
@media(min-width:1700px){.home-page .hero.slide .herocopy h1{font-size:60px;line-height:1}.home-page #slide-1 .herocopy h2{font-size:48px;line-height:1}.home-page .hero.slide .herocopy{width:48%}}
@media(min-width:901px) and (max-width:1200px){.home-page{--home-edge:32px}.home-page>.site-header .navwrap{padding-inline:32px;gap:16px}.home-page>.site-header .logo{width:192px}.home-page>.site-header nav{gap:16px}.home-page .hero.slide .herocopy{width:48%;padding-inline-end:16px}.home-page .hero.slide .herocopy h1{font-size:36px;line-height:40px}.home-page #slide-1 .herocopy h2{font-size:30px;line-height:36px}.home-page .hero.slide .herocopy p{font-size:16px;line-height:24px}.home-page .productbody{padding:12px}.home-page .productbody h3{font-size:16px;line-height:24px;min-height:72px}.home-page #geo-guide-cards{gap:12px}.home-page #geo-guide-cards .guide-card{padding:16px 12px}.home-page #geo-guide-cards h3{font-size:16px;line-height:24px}.home-page #contact{gap:40px}}
@media(max-width:900px){.home-page{--home-edge:24px}.home-page .section{padding:48px var(--home-edge)}.home-page .section h2{font-size:30px;line-height:36px}.home-page .hero.slide{height:auto}.home-page .hero.slide .herocopy{width:100%;height:auto;min-height:288px;padding:32px 24px 40px}.home-page .hero.slide .herocopy h1{font-size:36px;line-height:40px;max-width:600px}.home-page #slide-1 .herocopy h2{font-size:30px;line-height:36px}.home-page .hero.slide .herocopy p{font-size:16px;line-height:24px;max-width:600px;margin:16px 0 24px}.home-page .heroart,.home-page #slide-1 .heroart{aspect-ratio:1.9;height:auto}.home-page .heroart>img{object-fit:cover;object-position:right center}.home-page .hero.slide .herocopy .button{font-size:14px;line-height:20px}.home-page .home-products-head{grid-template-columns:1fr;gap:16px;margin-bottom:24px}.home-page .home-products-head p{justify-self:start;max-width:600px}.home-page #products{padding:32px 24px}.home-page .productgrid{grid-template-columns:repeat(5,minmax(232px,1fr));gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:16px}.home-page .productcard{scroll-snap-align:start}.home-page .productbody h3{font-size:18px;line-height:28px;min-height:56px}.home-page .productbody p{font-size:14px;line-height:20px}.home-page #partnership{padding:32px 24px}.home-page .supportinner{grid-template-columns:1fr;gap:24px}.home-page .supportitem{grid-template-columns:40px minmax(0,1fr)}.home-page .supportitem p{max-width:600px;font-size:14px;line-height:20px}.home-page #about{grid-template-columns:1fr;gap:24px;padding:48px 24px}.home-page .about-heading{grid-column:auto}.home-page .about-heading h2{font-size:30px;line-height:36px}.home-page .about-copy{grid-column:auto;grid-row:auto}.home-page .about-copy .lead{font-size:18px;line-height:28px}.home-page .about .purpose{grid-column:auto;grid-row:auto;grid-template-columns:1fr 1fr;gap:24px}.home-page .tagline.section{height:160px;min-height:160px;padding:24px}.home-page .tagline h2{font-size:24px;line-height:32px}.home-page .geo-section-head{grid-template-columns:1fr;gap:16px;margin-bottom:24px}.home-page #geo-guide-cards{grid-template-columns:1fr;gap:12px}.home-page #geo-guide-cards .guide-card{display:grid;grid-template-columns:24px minmax(0,1fr) 24px;align-items:center;gap:16px;padding:16px}.home-page #geo-guide-cards .guide-index{margin:0}.home-page #geo-guide-cards h3{font-size:16px;line-height:24px}.home-page #geo-guide-cards p{display:none}.home-page #geo-guide-cards .guide-action{font-size:0;padding:0}.home-page #geo-guide-cards .guide-action:after{content:'↗';font-size:20px;line-height:28px}.home-page #buyer-questions{grid-template-columns:1fr;gap:24px}.home-page #contact{grid-template-columns:1fr;gap:32px}.home-page #contact>div{padding:0}.home-page #contact h2{font-size:30px;line-height:36px}.home-page #contact form{padding:24px}.home-page>.site-header .navwrap{min-height:0}.home-page>footer{padding:32px 24px}}
@media(max-width:760px){.home-page>.site-header .navwrap{padding:8px 24px;gap:8px}.home-page>.site-header .logo{width:200px}.home-page>.site-header nav{font-size:12px;line-height:16px;gap:12px;overflow-x:auto;white-space:nowrap;justify-content:space-between}.home-page>.site-header #language{width:104px}.home-page .hero.slide .herocopy h1{font-size:30px;line-height:36px}.home-page .about .purpose{grid-template-columns:1fr;gap:24px}.home-page .tagline h2{font-size:18px;line-height:28px}.home-page #contact form>label:nth-of-type(1),.home-page #contact form>label:nth-of-type(2){grid-column:1/-1}}
@media(max-width:400px){.home-page>.site-header .logo{width:176px}.home-page>.site-header .navwrap{padding-inline:16px}.home-page>.site-header #language{width:96px}.home-page .hero.slide .herocopy{min-height:320px}.home-page .tagline h2{font-size:16px;line-height:24px}}
@media(prefers-reduced-motion:reduce){.home-page .guide-card,.home-page .productcard{transition:none}}

.about-profile-link{color:inherit}.about-profile-link:hover{color:#0a8e6c}.about-read-link{display:inline-block;margin-top:24px;color:#0a8e6c;font-size:14px;line-height:24px}.about-read-link:hover{text-decoration:underline}

/* Section headings lead directly into their content. */
.home-page .home-products-head{grid-template-columns:1fr}
.home-page .geo-section-head{grid-template-columns:minmax(0,1fr) auto;align-items:end}
.home-page .geo-section-head .guide-text-link{margin:0}
@media(max-width:760px){.home-page .geo-section-head{grid-template-columns:1fr;gap:16px}}

/* Five service pillars retain the homepage's existing light icon-and-copy language. */
.home-page .supportinner{grid-template-columns:repeat(5,minmax(0,1fr));gap:24px}.home-page .supportitem{grid-template-columns:1fr;gap:0}.home-page .serviceicon{grid-row:auto;margin-bottom:16px}.home-page .supportitem h3{font-size:16px;line-height:24px}.home-page .supportitem p{font-size:12px;line-height:20px}.support-model-link{display:block;width:fit-content;margin-top:24px;margin-inline-start:auto;color:#078567;font-size:14px;line-height:24px;font-weight:600}.support-model-link:hover{text-decoration:underline;text-underline-offset:4px}
.home-page #slide-2 .heroart{position:absolute;inset:0 0 0 38%;height:100%;width:auto}.home-page #slide-2 .heroart img{width:100%;height:100%;object-fit:cover;object-position:right center;filter:saturate(.82)}.home-page #slide-2 .herocopy h2{font-size:36px;line-height:40px;color:white;white-space:pre-line;max-width:560px}.slide-overlay-link{position:absolute;inset:0;z-index:2}.home-page #slide-2 .herocopy .button{position:relative;z-index:3}.home-page #slide-2 .bannerpanel{pointer-events:none}.home-page #slide-2 .herocopy{pointer-events:none}.home-page #slide-2 .herocopy .button{pointer-events:auto}
@media(min-width:1700px){.home-page #slide-2 .herocopy h2{font-size:48px;line-height:1}}
@media(max-width:1100px){.home-page .supportinner{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.home-page #slide-2 .herocopy h2{font-size:30px;line-height:36px}}
@media(max-width:900px){.home-page #slide-2 .heroart{position:relative;inset:auto;height:auto;aspect-ratio:1.9;width:100%;order:2}.home-page .supportinner{grid-template-columns:1fr;gap:24px}.home-page .supportitem{grid-template-columns:40px minmax(0,1fr);gap:0 16px}.home-page .serviceicon{grid-row:span 2;margin-bottom:0}.home-page .supportitem h3{font-size:18px;line-height:28px}.home-page .supportitem p{font-size:14px;line-height:20px}.support-model-link{margin-inline-start:56px;margin-inline-end:0}.home-page #slide-2 .herocopy{height:auto;min-height:288px}.home-page #slide-2 .herocopy h2{font-size:30px;line-height:36px}}

.home-page .serviceicon{width:56px;height:56px;background:#159c80;color:#fff;border-radius:50%;box-shadow:inset 0 2px 3px #ffffff45,inset 0 -3px 5px #005d5330,0 4px 10px #075a5b15;display:flex;align-items:center;justify-content:center}.home-page .serviceicon svg{width:32px;height:32px;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.home-page .supportitem{column-gap:16px}@media(max-width:900px){.home-page .supportitem{grid-template-columns:56px minmax(0,1fr)}.home-page .support-model-link{margin-inline-start:72px}}

.home-page #partnership{background:#034651;color:#fff}.home-page .supportitem h3{color:#fff}.home-page .supportitem p{color:#d1e3e3}.home-page .serviceicon{width:64px;height:64px;background:#109c79;box-shadow:inset 0 2px 4px #ffffff28,0 4px 12px #002d3326}.home-page .serviceicon svg{width:40px;height:40px}.home-page .support-model-link{color:#a4e3d0}@media(max-width:900px){.home-page .supportitem{grid-template-columns:64px minmax(0,1fr)}}

.home-page #partnership{background:#284c4d}.home-page .serviceicon{background:#38675f;color:#e4ece7;box-shadow:inset 0 1px 2px #ffffff20,0 4px 12px #142f3020}.home-page .serviceicon svg{filter:none}.home-page .supportitem p{color:#c7d7d5}.home-page .support-model-link{color:#c4dcd1}

/* A contained, calmer support field aligned to the homepage content grid. */
.home-page #partnership{width:calc(100% - 80px);max-width:1360px;margin:32px auto;padding:32px;border-radius:12px;background:#3b605c}.home-page .serviceicon{background:#4b756b;color:#eff3ef;box-shadow:inset 0 1px 2px #ffffff1a,0 4px 12px #23453f16}.home-page .supportitem p{color:#e1ebe6}.home-page .support-model-link{color:#edf4ee}.home-page .supportitem h3{font-size:16px;line-height:24px}.home-page #partnership .supportinner{gap:24px}@media(max-width:900px){.home-page #partnership{width:calc(100% - 32px);padding:24px;margin:24px auto}.home-page .serviceicon{width:48px;height:48px}.home-page .serviceicon svg{width:30px;height:30px}.home-page .supportitem{grid-template-columns:48px minmax(0,1fr)}.home-page .support-model-link{margin-inline-start:64px}}

/* Compact vertical rhythm; retain the original full-width support band. */
.home-page #partnership{width:100%;max-width:none;margin:0;padding:24px var(--home-edge);border-radius:0}.home-page #partnership .supportinner{max-width:1360px;margin:auto;gap:24px}.home-page #partnership .supportitem{grid-template-columns:48px minmax(0,1fr);gap:0 12px}.home-page #partnership .serviceicon{width:48px;height:48px;margin:0;grid-row:span 2}.home-page #partnership .serviceicon svg{width:30px;height:30px}.home-page #partnership .supportitem h3{font-size:16px;line-height:24px}.home-page #partnership .supportitem p{margin-top:8px;font-size:12px;line-height:20px}.home-page #partnership .support-model-link{margin-top:16px;margin-inline-start:auto;font-size:14px;line-height:20px}@media(max-width:900px){.home-page #partnership{width:100%;margin:0;padding:24px}.home-page #partnership .supportinner{gap:20px}.home-page #partnership .support-model-link{margin-inline-start:60px}.home-page #partnership .supportitem p{font-size:14px;line-height:20px}}
