/* Static homepage hero only. The original photograph is never cropped or stretched. */
.cce-home-hero { position: relative; isolation: isolate; background: #f6f7f8; font-family: "Open Sans", Arial, sans-serif; color: #222; }
.cce-home-hero__background { display: block; width: 100%; height: auto; aspect-ratio: 3 / 1; }
.cce-home-hero__content { position: absolute; inset: 0; display: flex; align-items: center; padding: 2.5% 3%; }
.cce-home-hero__card { width: 35%; max-width: 560px; padding: clamp(20px, 2.5vw, 44px); border: 0; border-radius: 32px; background: linear-gradient(105deg, rgba(255,255,255,.98) 0%, rgba(255,255,255,.95) 65%, rgba(255,255,255,.82) 100%); box-shadow: -8px 12px 34px rgba(0,0,0,.20), 0 3px 10px rgba(0,0,0,.08); text-align: center; }
.cce-home-hero__logo { display: block; width: 100%; max-width: 360px; height: auto; margin: 0 auto 1.25rem; }
.cce-home-hero__slogan { margin: 0 0 .5rem; font-size: clamp(18px, 1.65vw, 26px); font-weight: 600; line-height: 1.4; }
.cce-home-hero__support { margin: 0; font-size: clamp(14px, 1.15vw, 18px); line-height: 1.5; }
@media (min-width: 576px) and (max-width: 991.98px) {
    .cce-home-hero__content { padding: 2% 2.5%; }
    .cce-home-hero__card { width: 36%; padding: 18px; border-radius: 26px; }
    .cce-home-hero__logo { margin-bottom: .75rem; }
    .cce-home-hero__slogan { font-size: 17px; }
    .cce-home-hero__support { font-size: 13px; }
}
@media (max-width: 575.98px) {
    .cce-home-hero { padding-bottom: 24px; }
    .cce-home-hero__content { position: relative; display: block; padding: 0 16px; margin-top: -12px; }
    .cce-home-hero__card { width: 100%; max-width: 420px; margin: 0 auto; padding: 24px 20px; border-radius: 26px; background: linear-gradient(105deg, rgba(255,255,255,.99), rgba(255,255,255,.94)); box-shadow: -4px 10px 26px rgba(0,0,0,.17), 0 2px 6px rgba(0,0,0,.06); }
    .cce-home-hero__logo { max-width: 280px; margin-bottom: 1rem; }
    .cce-home-hero__slogan { font-size: 19px; }
    .cce-home-hero__support { font-size: 15px; }
}