/* Home consumes the approved header/hero system without redefining tokens. */
.home-main .ds-hero{min-height:var(--hero-min-height)}
@media(max-width:768px){.home-main .ds-hero{min-height:620px}.home-main .ds-hero h1{font-size:clamp(32px,5vw,40px)}}

@media(min-width:769px){.hero-title-line{display:block}}

/* COMPONENT: AboutIntro — composition of existing type, CTA and container. */
.home-about{--about-heading:38px;--about-heading-line:1.23;--about-column-gap:72px;--about-image-radius:20px;--about-background-width:972px;--about-background-offset:calc(50% - 252px);position:relative;isolation:isolate;overflow:clip;padding-block:var(--space-9);background:var(--surface);color:var(--text)}
.home-about-row{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--about-column-gap)}
.home-about-copy{display:flex;flex:1 1 0;flex-direction:column;align-items:flex-start;gap:var(--space-7);min-width:0}
.home-about h2{max-width:440px;font-size:var(--about-heading);font-weight:var(--heading-weight);line-height:var(--about-heading-line);margin:0}
.home-about-photo{display:block;flex:1 1 0;width:calc((100% - var(--about-column-gap))/2);min-width:0;aspect-ratio:1126/716;object-fit:cover;border-radius:var(--about-image-radius)}
.home-about-background{position:absolute;z-index:-1;pointer-events:none;max-width:none;width:var(--about-background-width);height:auto;left:var(--about-background-offset);top:0}
@media(max-width:1032px){.home-about{--about-heading:clamp(28px,3.5vw,38px);--about-column-gap:48px}}
@media(max-width:768px){.home-about{padding-block:var(--space-7);--about-heading:clamp(28px,5vw,36px);--about-column-gap:32px;--about-background-width:760px;--about-background-offset:calc(50% - 420px)}.home-about-row{flex-direction:column;gap:var(--space-6)}.home-about-copy{gap:var(--space-5)}.home-about-photo{flex:none;width:100%;max-width:100%}.home-about-background{top:auto;bottom:0}.home-about h2{max-width:100%}}

/* Desktop line breaks follow the supplied composition; small screens flow naturally. */
@media(min-width:1033px){.home-about-line{display:block}}

/* COMPONENT: ServiceCards — reference supplied for the Home services section. */
.home-services{--services-background:#EDF5FA;--services-heading:38px;--services-heading-line:1.23;--services-card-gap:20px;--services-title-gap:56px;--services-card-radius:20px;--services-body-min:252px;background:var(--services-background);color:var(--text);padding-block:var(--space-9)}
.home-services-inner{display:flex;flex-direction:column;gap:var(--services-title-gap)}
.home-services h2{margin:0;font-size:var(--services-heading);font-weight:var(--heading-weight);line-height:var(--services-heading-line)}
.home-services-cards{display:flex;align-items:stretch;gap:var(--services-card-gap)}
@media(max-width:768px){.home-services{--services-heading:clamp(28px,5vw,36px);--services-title-gap:32px;--services-card-gap:24px;--services-body-min:232px;padding-block:var(--space-7)}.home-services-cards{flex-direction:column;align-items:center}.service-card{flex:none;width:100%;max-width:480px}.service-card-body{padding:var(--space-5)}.home-services h2{max-width:100%}}
