.contact-banner {
    margin-bottom: -75px;
}

.contact-banner .top-row,
.contact-banner .bottom-row {
    display: flex;
    width: 100%;
}

/* Green */
.contact-banner .top-row .green {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: center;
    gap: 15px;
    background-color: #48B800;
    padding: 38px 66px 40px 66px;
    border-radius: 0 75px 0 0;
}
.contact-banner .top-row .green > * {
    width: 100%;
    max-width: 428px;
}
.contact-banner .top-row .green .title {
    font-size: 60px;
    line-height: 60px;
}
.contact-banner .top-row .green .text {
    font-size: 38px;
    line-height: 42px;
    font-weight: 700;
    text-transform: uppercase;
    color: #FFFFFF;
}

/* Black */
.contact-banner .top-row .black {
    display: flex;
    background-color: #000000;
    padding: 43px 47px;
    border-radius: 75px 0 0 0;
}


/* Brown */
.contact-banner .bottom-row .brown {
    position: relative;
    background-color: #6C4A31;
    height: 166px;
    width: 40%;
    border-radius: 0 0 75px 0;
}
.contact-banner .bottom-row .brown img {
    position: absolute;
    width: 100%;
    height: auto;
    left: 0;
    bottom: 0;
    pointer-events: none;
}

/* Purple */
.contact-banner .bottom-row .purple {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #63338D;
    height: 166px;
    width: 60%;
    border-radius: 0 0 0 75px;
}
.contact-banner .bottom-row .purple .text,
.contact-banner .bottom-row .purple .text a {
    font-size: 36px;
    line-height: 46px;
    color: #FFFFFF;
    text-align: center;
    font-weight: 700;
}

@media screen and (max-width: 1180px) and (orientation: portrait),
screen and (max-width: 1024px) { 
    .contact-banner .top-row .green > * {
        max-width: 197px;
    }

    .contact-banner .top-row .green .title {
        font-size: 42px;
        line-height: 48px;
    }
    .contact-banner .top-row .green .text {
        font-size: 24px;
        line-height: 28px;
    }

    .contact-banner .top-row .black {
        padding: 33px 37px;
    }

    .contact-banner .bottom-row .purple .text,
    .contact-banner .bottom-row .purple .text a {
        font-size: 24px;
        line-height: 32px;
    }
}

@media screen and (max-width: 767px) {
    .contact-banner {
        margin-bottom: -50px;
    }
    /* Green */
    .contact-banner .top-row .green {
        gap: 13px;
        background-color: #48B800;
        padding: 16px 10px 16px 24px;
        border-radius: 0 30px 0 0;
    }
    .contact-banner .top-row .green > * {
        width: 100%;
        max-width: 428px;
    }
    .contact-banner .top-row .green .title {
        font-size: 30px;
        line-height: 36px;
    }
    .contact-banner .top-row .green .text {
        font-size: 19px;
        line-height: 22px;
    }
    
    /* Black */
    .contact-banner .top-row .black {
        padding: 27px 25px 23px 25px;
        border-radius: 30px 0 0 0;
    }
    .contact-banner .top-row .black img {
        width: 73px;
    }
    
    /* Brown */
    .contact-banner .bottom-row .brown {
        display: none;
    }
    
    /* Purple */
    .contact-banner .bottom-row .purple {
        height: 89px;
        width: 100%;
        border-radius: 30px 0 0 0;
    }
    .contact-banner .bottom-row .purple .text,
	.contact-banner .bottom-row .purple .text a{
        font-size: 18px;
        line-height: 24px;
    }
    
}