/* Only the contact CTA on the Home. */
.home-cta { position:relative; isolation:isolate; overflow:hidden; background:#0D2416; color:#FFFFFF; }
.home-cta__background { position:absolute; z-index:0; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; }
.home-cta--with-background::before { content:""; position:absolute; z-index:1; inset:0; background:linear-gradient(90deg,rgba(8,31,19,.94) 0%,rgba(8,31,19,.82) 48%,rgba(8,31,19,.38) 100%); pointer-events:none; }
.home-cta__inner { position:relative; z-index:2; display:flex; align-items:center; width:calc(100% - 64px); max-width:1320px; min-height:420px; margin-inline:auto; padding-block:64px; }
.home-cta__content { display:flex; flex-direction:column; align-items:flex-start; gap:var(--space-md); width:100%; max-width:660px; }
.home-cta .home-cta__eyebrow { margin:0; color:rgba(255,255,255,.85); font-size:.8125rem; line-height:1.5; font-weight:650; letter-spacing:.1em; text-transform:uppercase; }
.home-cta .home-cta__title { margin:0; color:#FFFFFF; font-size:clamp(1.75rem,3vw,2.75rem); line-height:1.1; font-weight:750; }
.home-cta__title-main,.home-cta__accent { display:block; white-space:pre-line; }
.home-cta__accent { color:var(--brand-highlight); }
.home-cta .home-cta__text { max-width:600px; margin:0; color:rgba(255,255,255,.9); font-size:1rem; line-height:1.6; white-space:pre-line; }
.home-cta__button { display:inline-flex; align-items:center; justify-content:center; min-height:var(--button-height); max-width:100%; margin-top:4px; padding:8px 18px; border:0; border-radius:8px; background:var(--action-primary); color:#FFFFFF; font-size:.875rem; line-height:1.5; font-weight:650; text-align:center; text-decoration:none; transition:background-color .2s ease; }
.home-cta__button:hover { background:var(--action-primary-hover); color:#FFFFFF; }
.home-cta__button:focus-visible { outline:3px solid #FFFFFF; outline-offset:4px; }
@media (max-width:800px) {
    .home-cta__inner { width:calc(100% - 48px); min-height:370px; padding-block:52px; }
    .home-cta__content { max-width:600px; }
    .home-cta .home-cta__text { font-size:1rem; }
}
@media (max-width:540px) {
    .home-cta__inner { width:calc(100% - 40px); min-height:0; padding-block:var(--section-padding-compact); }
    .home-cta__content { gap:16px; }
    .home-cta .home-cta__title { font-size:clamp(1.75rem,7.5vw,2rem); }
    .home-cta .home-cta__text { font-size:.9375rem; }
    .home-cta--with-background::before { background:rgba(8,31,19,.84); }
}
@media (prefers-reduced-motion:reduce) { .home-cta__button { transition:none; } }
