.contactContainer {
    display: grid;
    grid-template-columns: 1fr 2fr;
}
.pair {
    margin-bottom: 2rem;
}
label {
    width: 20%;
    display: inline-block;
    vertical-align: top;
    transition: .3s;
}
label:has(+input:focus),
label:has(+textarea:focus) {
    color: var(--complementary);
}
label:has(+input:focus) .fa,
label:has(+textarea:focus) .fa {
    color: var(--complementary);
}
input, 
textarea {
    width: 70%;
}
input {
    padding: .5rem 0;
}
textarea {
    height: 10rem;
}
input[name="captcha"] {
    margin: 1rem auto !important;
    display: block;
}
.easyContactForm .fa {
    color: var(--mainLight);
    transition: .3s;
    margin-right: .5rem;
}
#submit {
    width: 8rem;
    padding: 1rem;
    background-color: var(--complementary);
    border: var(--complementary);
    color: var(--neutralLight);
    cursor: pointer;
    transition: .3s;
    display: block;
    margin: 0 auto;
    box-shadow: 1px 1px 3px 1px rgba(0, 0, 0, .5);
}
#submit:hover {
    background-color: var(--mainDark);
    border-color: var(--mainDark);
}
div[style*="-webkit-touch-callout"] {
    margin: 0 auto;
    margin-top: 4rem !important;
}

@media only screen and (max-width: 1500px) {
    .contactContainer {
        grid-template-columns: 1fr 3fr;
    }
    .cke-outer {
        margin-left: 1rem;
    }
    label {
        width: 25%;
    }
    label {
        display: block;
        width: 100%;
    }
    input,
    textarea {
        width: 100%;
    }
}
@media only screen and (max-width: 930px) {
    .contactContainer {
        grid-template-columns: 1fr;
        grid-template-rows: 1fr 1fr;
    }
    iframe {
        width: 100%;
    }
    .map {
        order: 2;
        margin-top: 1rem;
    }
}