:root {
    --main-color: #22b3c1;
    --heading-color: #2a2a2a;
    --paragraph-color: #afafaf;
    --grey-light: #eeeeee;
}

.reservation-hero-section {
    background-image: url(assets/heading-bg-02.jpg) !important;
}

.reservation-hero-content {
    width: 100%;
    height: 70%;
    margin-top: 100px;
    padding: 70px 50px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.contacts-content {
    width: 100%;
    position: relative;
    margin-top: -70px;
    display: flex;
    flex-wrap: wrap !important;
    align-items: center;
    justify-content: space-around;
}

.contacts-card {
    box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.15);
    background-color: #fff;
    border-radius: 25px;
    padding: 30px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    width: 360px;
    height: 200px;
    margin-bottom: 30px;
}

.reservation-span {
    width: 60px !important;
    height: 60px !important;
    border-radius: 50%;
    background-color: var(--grey-light);
    margin-bottom: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.contacts-card>span>i {
    color: var(--main-color);
    font-size: 20px;
}

.reservation-map {
    margin-top: 100px;
}

.reservation-map-wrapper {
    width: 100% !important;
}

.reservation-map-wrapper .map {
    width: 100%;
}

.reservation-form-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin: 100px 0;
    padding-bottom: 100px;
    background-color: #f9f9f9;
    border-radius: 23px;
    padding-left: 0;
    padding-right: 0;
}

.reservation-form-container>h2 {
    margin: 50px 0;
}


.form-item-50>label,
.form-item-50>input::placeholder,
.form-item-100>label,
.form-item-100>input::placeholder {
    color: #afafaf;
}

.form-item-50>input,
.form-item-50>select,
.form-item-100>input,
.form-item-100>select {
    height: 46px;
    width: 100%;
    background-color: transparent;
    border-radius: 23px;
    border: 1px solid #e0e0e0;
    padding: 0 20px;
    cursor: pointer;
    margin-bottom: 30px;
}

.reservation-form-container > form {
    width: 80%;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
}

.reservation-form-container>form>input[type=submit] {
    background-color: var(--main-color);
    color: #fff;
    border: none;
    height: 46px;
    width: 100%;
    border-radius: 23px;
    cursor: pointer;
    padding: 0 20px;
}

.form-item-50 {
    width: 49%;
    display: block;
}

.form-item-100 {
    width: 100%;
    display: block;
}

@media screen and (max-width: 768px) {
   .reservation-hero-content,
   .reservation-form-container {
    text-align: center !important;
   }
}

@media screen and (max-width: 576px) {
    .reservation-form-container > form {
        width: 90%;
        flex-direction: column;
    }

    .form-item-50,
    .form-item-100 {
        width: 90%;
    }
}