:root {
    ---bitter-family: "Bitter", serif;
    ---title-font-size: 20px;
    ---media-main-font: 14px;
    ---media-sub-title: 16px;
    ---media-title: 18px;
}

.contact-section {
    display: flex;
    gap: 20px;
    padding: 20px 0;
    flex-wrap: wrap;
}

.contact-left {
    flex: 1;
    /* min-width: 300px; */
    padding: 15px;
    border-radius: 8px;
    display: flex;
    flex-direction: column;
    text-align: left;
    border: 1px solid #ccc;
}
.contact-right {
    flex: 2;
    /* min-width: 300px; */
    border: 1px solid #ccc;
    padding: 15px;
    border-radius: 8px;
}

.contact-center {
    flex: 1;
    /* min-width: 300px; */
    border: 1px solid #ccc;
    padding: 15px;
    border-radius: 8px;
}

.contact-left h2,
.contact-left h3 {
    color: #01aa3f;
    font-family: "Bitter", serif;
}

.contact-left h2 {
    font-size: 34px;
}

.contact-left h3 {
    font-size: 24px;
    margin-bottom: 5px;
}

.contact-left p,
.contact-center p,
.contact-right form {
    margin-bottom: 10px;
}

.contact-left .social-icons a img {
    width: 24px;
    height: 24px;
    margin-right: 10px;
}

.contact-center {
    display: flex;
    justify-content: center;
}

.contact-center .profile {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 7px;
}

.contact-center .profile p {
    margin: 0;
}

.contact-center .profile h3 {
    margin: 0;
}

.contact-center .profile .profile-image {
    border: 2px solid green;
    width: 173px;
    height: 176px;
    border-radius: 50%;
    overflow: hidden;
    border: 3px solid #7cc195;
    display: flex;
    justify-content: center;
    align-items: center;
}

.contact-center .profile .profile-image img {
    width: 75%;
    height: 100%;
    object-fit: cover;
}

.contact-right form {
    display: flex;
    flex-direction: column;
}

.contact-right .form-group {
    display: flex;
    gap: 10px;
}

.contact-right .form-group input,
.contact-right textarea {
    width: 100%;
    padding: 10px;
    margin-bottom: 10px;
    border: 1px solid #ccc;
    border-radius: 4px;
}

.contact-right textarea {
    resize: none;
    height: 100px;
}

.contact-right .captcha {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 10px;
}

.contact-right button {
    background-color: green;
    color: white;
    padding: 10px;
    border: none;
    border-radius: 4px;
    cursor: pointer;
}

.contact-right button:hover {
    background-color: darkgreen;
}

.map {
    margin-top: 20px;
    border: 1px solid #ccc;
    border-radius: 8px;
    overflow: hidden;
}

.contact-right form {
    display: flex;
    gap: 15px;
}

.contact-button {
    color: white;
    font-size: 20px;
    /* font-family: ; */
    border-radius: 10px;
    background-color: #01aa3f;
    transition: background-color 0.3s ease;
}
.contact-button button {
    /* font-size: 30px; */
}
/* .social-icons .facebook {
    font-size: 25px;
}
.social-icons .youtube {
    font-size: 25px;
}
.social-icons .twitter {
    font-size: 25px;
} */

.social-icons a {
    /* margin: 0 3px; */
    font-size: 25px;
    color: gray;
    transition: color 0.3s ease;
}

.social-icons a[aria-label="Facebook"]:hover {
    color: #1877f2;
}

.social-icons a[aria-label="YouTube"]:hover {
    color: #ff0000;
}

.social-icons a[aria-label="Twitter"]:hover {
    color: #3786ee;
}

#scrollToTopBtn {
    position: fixed;
    bottom: 18px;
    right: 20px;
}

/* MOBILE VIEW */
@media (max-width: 768px) {
    .contact-section {
        flex-direction: column;
        gap: 10px;
        padding-top: 0px;
    }

    .contact-left,
    .contact-center,
    .contact-right {
        flex: none;
        min-width: auto;
        width: 100%;
    }

    .contact-center {
        /* border: 2px solid green; */
        display: flex;
        justify-content: center;
    }

    .contact-left h2 {
        font-size: var(---title-font-size);
    }

    .contact-left h3 {
        font-size: var(---media-title);
    }

    .contact-left p,
    .contact-center p {
        font-size: var(---media-main-font);
    }

    .contact-center .profile {
        /* border: 2px solid green;  */
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .contact-center .profile img {
        width: 120px;
        height: 120px;
        margin: 0 auto 10px;
    }

    .contact-right form {
        gap: 10px;
    }

    .contact-right .form-group {
        flex-direction: column;
    }

    .contact-right .form-group input,
    .contact-right textarea {
        width: 100%;
    }

    .contact-right button {
        width: 100%;
        padding: 12px;
        font-size: 18px;
    }

    .map {
        margin-top: 15px;
        height: 250px;
    }
}
