.at-contactBlock {
    position: relative;
}

.at-contactBlock__inner {
    display: flex;
    flex-direction: column;
    gap: var(--marginSmallMedium);
    position: relative;
    border-radius: var(--borderRadiusLarge);
    background-color: var(--baseLight100);
}

.at-contactBlock__inner:after {
    display: none;
}

.at-contactBlock__contentWrapper {
    width: 100%;
    padding: var(--marginMedium) clamp(2rem, 8vw, 4rem) 0;
    text-align: center;
    z-index: 1;
}

.at-contactBlock__title {
    margin-bottom: var(--marginSmall);
    color: var(--primaryColor500);
    font-size: var(--h3Size);
}

.at-contactBlock .u-buttonWrapper {
    margin-block-start: var(--marginExtraSmallMedium);
    justify-content: center;
}

.at-contactBlock__inner:after,
.at-contactBlock__imageWrapper:after {
    position: absolute;
    inset: 0;
    background-color: var(--secondaryColor500);
    content: '';
    border-radius: var(--borderRadiusLarge);
    overflow: clip;
}

.at-contactBlock__imageWrapper {
    max-height: 350px;
}

.at-contactBlock__imageWrapper:after {
    clip-path: ellipse(140% 75% at 50% 140%)
}

.at-contactBlock__image {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    max-height: 350px;
    padding-bottom: var(--marginExtraSmallMedium);
    aspect-ratio: 1;
    object-fit: contain;
    z-index: 1;
}

@media (min-width: 400px) {
    .at-contactBlock__imageWrapper:after {
        clip-path: ellipse(140% 80% at 50% 140%);
    }
}

@media (min-width: 992px) {
    .at-contactBlock__inner:after {
        display: block;
        clip-path: ellipse(33% 100% at 0% 50%);
    }

    .at-contactBlock__contentWrapper {
        max-width: 60%;
        margin-left: auto;
        padding: var(--marginLarge) 4rem var(--marginLarge) 2rem;
        text-align: left;
    }

    .at-contactBlock .u-buttonWrapper {
        justify-content: flex-start;
    }

    .at-contactBlock__imageWrapper {
        position: absolute;
        top: var(--marginExtraSmallMedium);
        left: var(--marginExtraSmallMedium);
        bottom: var(--marginExtraSmallMedium);
        max-height: none;
    }

    .at-contactBlock__imageWrapper:after {
        display: none;
    }

    .at-contactBlock__image {
        max-height: none;
        max-width: 350px;
        padding-bottom: 0;
    }
}
