.full-height {
    height: 100vh;
}

.custom-height {
    height: 120vh;
}

.overflow-hidden {
    overflow: hidden;
}

.contact-main {
    margin-top: 5.5rem;
    position: relative;
    overflow: hidden;
}

.contact * img {
    padding: 3rem;
}

.left-leaf {
    transform: scaleX(-1);
    width: 50%;
    left: -24rem;
    top: -28rem;

}

.right-leaf {
    transform: scaleX(-1);
    right: -16rem;
    top: -12rem;
    width: 40%;
}

.contact-container {
    position: relative;

}

.contact-container>h1 {
    position: relative;
}


.contact-container>h2 {
    position: absolute;
    right: 0rem;
    top: 3rem;
}

.contact-container>p {
    font-size: 16px;
    line-height: 1.4rem;
    width: 54ch;
    padding: 3rem 0;
    font-family: "Gilroy-Medium", serif;
}

.left-content {
    margin-left: 40px;
}

.contact-info {
    margin-top: 3rem;
}

.contact-info div {
    margin-bottom: 15px;
}

.resort-address {
    background-color: #053c36;
    color: #fff;
}

.resort-address * h4 {
    color: #DBB369;
}

.slick-slider .slide {
    padding: 3rem;
}





.right-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.right-column {
    width: 60vw;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 0;
    right: 0;
    height: 100vh;
}

.left-column {
    margin-right: 50vw;
}


.left-form>img {
    bottom: 36rem;
    right: 30rem;
}

.info-items p {
    color: var(--prime-green);
}

.message-us>h3 {
    font-family: 'Gilroy-ExtraBold', serif;
    font-size: 42px;
    line-height: 2.4rem;
}

.contact-form {
    margin: 15px;
}

.form-box {
    padding: 20px;
    border-radius: 24px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    background-color: var(--prime-green);
    width: 75%;
}

.form-control {
    border-radius: none;
}


.form-field {
    position: relative;
    margin-bottom: 20px;
}


.form-field label {
    color: var(--prime-yellow);
    font-size: 16px;
    font-weight: normal;
    position: absolute;
    pointer-events: none;
    left: 10px;
    top: 10px;
    transition: all 0.2s ease-in-out;
    -moz-transition: 0.1s ease all;
    -webkit-transition: 0.1s ease all;
}

.form-field input,
.form-field textarea {
    width: 100%;
    padding: 10px;
    font-size: 16px;
    border: none;
    border-radius: none;
    border-bottom: 1px solid #fff;
    outline: none;
    color: var(--prime-yellow);
    background-color: var(--prime-green);
}


.form-field input:autofill,
.form-field textarea:autofill{
    background-color: #053c36 !important;
}

.form-field input:focus,
.form-field textarea:focus {
    border-color: var(--prime-yellow);
    background-color: var(--primary-green) !important;
    color: var(--prime-yellow) !important;
}

.form-field input:not(:placeholder-shown)+label,
.form-field textarea:not(:placeholder-shown)+label {
    visibility: hidden;
    opacity: 0;
}




.form-check label {
    color: var(--prime-yellow);
}


form .submit {
    background-color: var(--prime-yellow);
    color: var(--secondary-green);
    font-family: 'Gilroy-SemiBold', serif;
    gap: 2px;
    border-radius: 30px 0;
    padding: 10px 20px;
}

form .submit:hover {
    background-color: var(--primary-green);
    color: var(--prime-yellow);
    border: 1px solid var(--prime-yellow);
}


.leaf-element {
    z-index: 1;
    width: 50%;
    top: -29rem;
    right: -22rem;
}

.lead {
    font-size: 16px;
    line-height: 1.4rem;
}


.slick-dots li button::before {
    color: gray;
    opacity: 1;
}

/* Change the color of the active dot */
.slick-dots li.slick-active button::before {
    color: #fff;
}


/* Large devices (desktops, 992px and up to 1200px) */
@media (min-width: 992px) and (max-width: 1200px) {

    .left-leaf {
        left: -15rem;
        top: -20rem;
    }


    .right-leaf {
        right: -11rem;
        top: -8rem;
    }

    .leaf-element {
        width: 60%;
        top: -22rem;
        right: -20rem;
    }
}

/* Medium devices (tablets, 768px and up to 991px) */
@media (min-width: 768px) and (max-width: 991px) {



    .leaf-element {
        width: 60%;
        top: -15rem;
        right: -15rem;
    }
}




@media (max-width: 768px) {

    .contact-main {
        margin-top: 5.5rem;
    }

    .contact {
        text-align: center;
    }

    .contact * img {
        padding: 0rem;
    }

    .contact-container>h2 {
        top: 2rem;
    }

    .left-column,
    .right-column {
        width: 100vw;
        height: auto;
        padding: 10px;
    }

    .right-column {
        display: block;
    }

    .slick-slider .slide {
        padding: 2rem;
    }

    .lead {
        padding: 0 2rem;
    }

    .left-form {
        justify-content: center;
        padding: 0;
    }

    .message-us {
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
    }

    .message-us>h3 {
        font-size: 33px;
        line-height: 2rem;
        padding: 0px 15px;
    }


    .form-box {
        width: 100%;

    }
}


/* extra Small devices ( phones)*/
@media (min-width: 320px) and (max-width: 578px) {
    .form-box {
        width: 100%;
        border-radius: 0;
    }
}