.cms-block {
    max-width: 1240px;
    margin: 0 auto 48px;
    padding: 0 32px;
}

.cms-hero {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    background: #e7eee8;
    padding: 64px 48px;
    max-width: 1440px;
}

.cms-hero-copy {
    max-width: 560px;
}

.cms-hero h2,
.cms-cta h2 {
    font: 800 clamp(32px, 4vw, 56px)/1.05 Manrope, sans-serif;
    color: #293640;
    letter-spacing: -0.04em;
    margin: 0 0 16px;
}

.cms-hero p,
.cms-cta p,
.cms-image-text-body {
    font-size: 18px;
    line-height: 1.7;
    color: #4e5e66;
}

.cms-hero-image,
.cms-image-text img {
    max-width: 100%;
    height: auto;
}

.cms-hero-image {
    width: min(420px, 40%);
    object-fit: cover;
}

.cms-image-text {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr);
    gap: 32px;
    align-items: center;
}

.cms-image-text-right img {
    order: 2;
}

.cms-rich-text,
.cms-image-text-body {
    font-size: 17px;
    line-height: 1.7;
    color: #29333d;
}

.cms-cta {
    background: #293940;
    color: #fff;
    padding: 48px;
    text-align: center;
}

.cms-cta h2,
.cms-cta p {
    color: #fff;
}

.cms-cta p {
    margin: 0 auto 20px;
    max-width: 640px;
}

@media (max-width: 800px) {
    .cms-hero,
    .cms-image-text {
        display: block;
    }

    .cms-hero-image {
        width: 100%;
        margin-top: 24px;
    }

    .cms-image-text img {
        margin-bottom: 20px;
    }
}


.mega-heading-image{display:block;height:92px;margin-bottom:12px;overflow:hidden;border-radius:5px;background:#f0f4ed}.mega-heading-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s}.mega-heading-image:hover img{transform:scale(1.04)}.mega-col h4 a{font-weight:800;color:var(--ink);text-decoration:none}.mega-col h4 a:hover{color:var(--green)}