h3, h5{
    text-transform: none !important;
}

img.flag-form{
    width:24px;
    height:16px;
}

.social-icon a{
    font-size: 1.8em !important;
}
.social-icon a.social_facebook_link:hover{
    color: #3b5a9a !important;
}
.social-icon a.social_instagram_link:hover{
    color: #7c4a3a !important;
}
.social-icon a.social_xtwitter_link:hover{
    color: #000 !important;
}

.booking-form{
    margin:10px auto;
    padding:24px 16px;
    border: solid 1px #aaa;
    background-color: #cdd4e3;
    border-radius: 6px;
}

.booking-form-alert{
    border: solid 1px #a90000;
    background-color: #e3cdcd;
}

.booking-form-private{
    border: solid 1px #aaa;
    background-color: #cdd4e3;
}

.booking-form-luxury{
    border: solid 1px #fcdf7e;
    background-color: #fff0c9;
}

.booking-form-shared{
    border: solid 1px #b7ff9f;
    background-color: #e5ffdf;
}

.booking-form-userdata{
    padding-bottom:0px;
    margin-bottom:16px;
}

.booking-form-confirm b{
    color: #333;
}
.booking-form-confirm label{
    color: #777;
    font-size:0.9em;
}
.confirm-note-div{
    background-color: #eaeff8;
    padding:6px 12px;
    border-radius:3px;
}

.booking-form-help-div{
    background-color: #ffe9e9;
    border-color: #c78b8b;
    padding:10px 16px;
    padding-bottom:6px;
    border-radius: 6px;
    font-size: 12px !important;
}

.numInputWrapper span{
    opacity: 1 !important;
    width: 32px !important;

}
.numInputWrapper span.arrowDown:after, .numInputWrapper span.arrowUp:after{
    left:33% !important;
}
.numInputWrapper span.arrowDown:hover, .numInputWrapper span.arrowUp:hover{
    background-color:#42a5f5 !important;
}


.page-header.has-black-hoverlay {
    position: relative;
}
.page-header.has-black-hoverlay::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,0.8);
    z-index: 0;
}
.page-header.has-black-hoverlay > .container {
    position: relative;
    z-index: 1;
}


.input-group select,
select.form-control,
select.update-total {
    -webkit-appearance: auto !important;
    -moz-appearance: auto !important;
    appearance: auto !important;

    background-image: none !important;  /* nel caso il tema metta una freccia custom */
    padding-right: 0.75rem;             /* evita padding enorme lasciato da frecce custom */
}

/* Edge/IE legacy: ripristina il dropdown arrow */
select::-ms-expand {
    display: block;
}

.booking-form-userdata .form-group i{
    color: #47648b;
}
.booking-form-userdata label{
    color: #333;
}
.booking-form-userdata small{
    color: #333;
}

.arrow{
    background: transparent url(/assets/public/img/arrows.png) no-repeat 0 0 !important;
    width: 47px;
    height: 120px;
    display: inline-block;
    position: relative;
}

u.alternative-font{
    text-decoration: none !important;
}



@media (max-width: 991px) {
    #header .header-nav-main nav > ul li {
        padding: 4px 0 !important;
    }
    #header .header-nav-main nav > ul li a{
        display:block !important;
    }
}

.container table{
    width: 90%;
    margin-bottom:20px;
}
.container table, .container table th, .container table td{
    border: 1px solid black;
    border-collapse: collapse;
}
.container table tr th{
    background-color: #5476a4;
    color: #fff;
    text-align: center;
}
.container table tr td{
    padding: 2px 6px;
}

.container h2, .container h3, .container h4, .container h5{
    margin-top: 24px !important;
    margin-bottom: 6px !important;
}


.flatpickr-current-month .numInputWrapper .arrowUp,
.flatpickr-current-month .numInputWrapper .arrowDown {
    display: none !important;
}


