.template-component-form-field {
    border-width: 0px;
    border-style: none;
}

#booking form,
.template-component-contact-form,
.template-component-booking > form,
.confirmation-container {
    padding-top: 20px;
    background: none;
    border: 1px solid #8bb8ea;
    border-top: 1px solid #8bb8ea;
    border-radius: 16px;
}
.confirmation-container {
    padding: 20px 25px 30px 25px;
}

#template-booking select.form-control {
    border: 1px solid #e7e7e7;
    border-radius: 8px;
    margin: 15px 25px 0px 25px;
}

.template-component-form-field label {
    padding: 15px 25px 0px 25px;
}

#template-booking select.form-control,
#template-booking select.form-control option {
    font-family: "Roboto", sans-serif !important;
}

#template-booking select::placeholder,
#template-booking input::placeholder,
#template-booking select option {
    font-family: "Roboto", sans-serif;
}

#booking label,
.booking label,
#contact-form label {
    color: #222222;
}

.template-component-form-field input,
.template-component-form-field textarea {
    border: 1px solid #e7e7e7;
    border-radius: 8px;
    margin: 15px 25px 0px 25px;
}

.label-h2 {
    color: #222222;
    font-size: 28px;
    display: block;
    font-weight: 500;
}

.label-h3 {
    color: #222222;
    font-size: 20px;
    font-weight: 700;
    padding: 15px 25px 0px 25px;
    display: block;
}

.template-component-form-field textarea {
    width: calc(100% - 50px);
    min-height: 100px;
    padding: 10px;
}

#template-booking select.form-control,
#template-booking input.form-control,
.template-component-form-field input,
.template-component-form-field textarea {
    width: calc(100% - 50px);
}

.info-message {
    background: #e7efff;
    color: #000000;
    border-radius: 20px;
    padding: 10px 15px;
    margin: 25px;
}

.info-message h4 {
    font-size: 20px;
    margin-bottom: 0;
    text-transform: none;
}

.info-message p {
    font-size: 16px;
}

#template-booking .template-component-button {
    background-color: #36527d;
    border-width: 0px;
    padding: 10px 38px 10px 38px;
}

.padding-horizontal {
    padding: 0px 25px;
}
.margin-left {
    margin-left: 15px;
}
.margin-right {
    margin-right: 15px;
}

.black {
    color: #000000 !important;
}

.booking {
    background: none;
    border: 0px solid #8bb8ea !important;
    border-top: 3px solid #8bb8ea;
}
.booking-info {
    background-color: #afcfff;
    border-radius: 20px;
    color: #222222;
}
.booking-info span,
.booking-info .template-icon-feature-piggy-bank {
    color: #222222 !important;
}

.template-icon-feature-piggy-bank {
    transform: scaleX(-1);
}

.template-component-booking .template-component-booking-summary > li {
    border: 0px;
    border-width: 0px;
    border-style: none;
}
.template-component-booking .template-component-booking-item-content {
    margin-top: 0px;
}

.template-component-booking .template-component-booking-summary > li {
    width: calc(50% - 50px);
}

.header-blue {
    margin-top: -20px;
    padding-top: 20px;
}

#complete_booking .bordes-none {
    margin-top: 20px;
}

#complete_booking .titulo {
    border-radius: 20px;
}

#complete_booking .before-title {
    margin-top: -20px;
    padding-top: 20px;
}

#complete_booking .border-bottom {
    border-bottom-right-radius: 20px;
    border-bottom-left-radius: 20px;
    margin-bottom: 20px;
}

#complete_booking .bordes li h4,
#complete_booking .bordes-none li h4 {
    margin-bottom: 0px;
}

.num_booking {
    border-color: #afcfff;
    border-radius: 100px;
    color: #36527d;
    margin: 0;
}
#complete_booking .titulo {
    background-color: #afcfff;
}

.template-footer.new-footer {
    background: #36527d;
    color: #fff;
}
.footer-logos {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    margin: 10px 0px;
    gap: 30px;
}
.footer-logos img {
    max-height: 60px;
}
.template-footer.new-footer a {
    color: #fff;
}
.template-footer.new-footer .template-footer-bottom {
    border-color: #afcfff;
}

/* ---- Responsive ---- */
@media (max-width: 768px) {
    .footer-logos {
        flex-direction: column;
        gap: 15px;
    }
}

@media only screen and (min-width: 0px) and (max-width: 479px) {
    #template-booking h2 {
        font-size: 16px;
    }
    #template-booking h3 {
        font-size: 14px;
    }
    #template-booking h4 {
        font-size: 12px;
    }
    .template-component-booking .template-component-booking-summary > li {
        width: calc(100% - 30px);
    }
}

@media only screen and (min-width: 480px) and (max-width: 767px) {
    #template-booking h2 {
        font-size: 20px;
    }
    #template-booking h3 {
        font-size: 16px;
    }
    #template-booking h4 {
        font-size: 14px;
    }
    .template-component-booking .template-component-booking-summary > li {
        width: calc(100% - 30px);
    }
}
