@font-face {
    font-display: swap;
    font-family: 'Poppins';
    font-weight: 400;
    font-style: normal;
    src: url('https://static.cdn-immedia.net/fonts/google/poppins/poppins-400.woff2')
        format('woff2');
}

@font-face {
    font-display: swap;
    font-family: 'Poppins';
    font-weight: 400;
    font-style: italic;
    src: url('https://static.cdn-immedia.net/fonts/google/poppins/poppins-400italic.woff2')
        format('woff2');
}

@font-face {
    font-display: swap;
    font-family: 'Poppins';
    font-weight: 500;
    font-style: normal;
    src: url('https://static.cdn-immedia.net/fonts/google/poppins/poppins-500.woff2')
        format('woff2');
}

@font-face {
    font-display: swap;
    font-family: 'Poppins';
    font-weight: 500;
    font-style: italic;
    src: url('https://static.cdn-immedia.net/fonts/google/poppins/poppins-500italic.woff2')
        format('woff2');
}

@font-face {
    font-display: swap;
    font-family: 'Poppins';
    font-weight: 600;
    font-style: normal;
    src: url('https://static.cdn-immedia.net/fonts/google/poppins/poppins-600.woff2')
        format('woff2');
}

@font-face {
    font-display: swap;
    font-family: 'Poppins';
    font-weight: 600;
    font-style: italic;
    src: url('https://static.cdn-immedia.net/fonts/google/poppins/poppins-600italic.woff2')
        format('woff2');
}

@font-face {
    font-display: swap;
    font-family: 'Poppins';
    font-weight: 700;
    font-style: normal;
    src: url('https://static.cdn-immedia.net/fonts/google/poppins/poppins-700.woff2')
        format('woff2');
}

@font-face {
    font-display: swap;
    font-family: 'Poppins';
    font-weight: 700;
    font-style: italic;
    src: url('https://static.cdn-immedia.net/fonts/google/poppins/poppins-700italic.woff2')
        format('woff2');
}

html,
body {
    font-size: 1rem;
    font-family: 'Poppins', Arial, Helvetica, sans-serif;
    background: #ffffff;
    color: #004986;
}

#ReservationStep1 h1 {
    font-family: 'Poppins', Arial, Helvetica, sans-serif;
    font-weight: 700;
    font-size: 1.25rem !important;
    line-height: 1.3 !important;
}

#ReservationStep1 h1 + h4 {
    font-family: 'Poppins', Arial, Helvetica, sans-serif;
    font-size: 0.813rem;
    line-height: 1.3;
    font-weight: 600;
    color: #d33538;
    border: 0;
    padding-top: 0.25rem;
    padding-bottom: 0;
}

#ReservationStep1 .OrariEscursioni {
    font-family: 'Poppins', Arial, Helvetica, sans-serif;
    font-size: 1rem;
}

#ReservationStep1 .OrariEscursioni input {
    width: 1rem;
    height: 1rem;
    vertical-align: center;
}

#ReservationStep1 .OrariEscursioni label:hover {
    color: #004986;
    background: #eff6fc;
    box-shadow: 0;
}

#ReservationStep1 .Calcolatore {
    margin: 16px 0;
}

#ReservationStep1 .Calcolatore .CalcolaFascia {
    font-family: 'Poppins', Arial, Helvetica, sans-serif;
    border: 0;
    background: #eff6fc;
}

#ReservationStep1 .Calcolatore .CalcolaFascia .DropDown select {
    background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB0AAAARCAYAAAAhUad0AAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAOdEVYdFNvZnR3YXJlAEZpZ21hnrGWYwAAATRJREFUeAGt0sFNwzAUBuD/ueLeETIAQkQirbnREZgANgAmgA3oCLABG7Q3ovZQUMuZjOB7Gxu/SBVusUnc+peiRPbL+/KS0Gogb4w2YyJSmujhbPb+hsRxDRCeaFXIbwNk2wIi3J7OylckSgMavPyukBIapu8WcQEXIkH+gjyUUaKGHhkYlRr2gbazWpv6mvhyURTnPYgJgfq7T3XYqw6BGztgPp9/0HYpFdwGNj3drWPhLiBHuNu8Ufcot0i1c1uHb+z/aVBtbD8XbNZ9DRZSZicaE9sk22vinTgErgVGeVlW+/XCh3Ih3+Cb+HN4ee+uLYvhXQwYRP+DhTbPy4F85OuvCz7TOAZsatCS0Ku2mdrjKhbshLbA0WBntA2OAaPQEBwLcgQi4vm5prHgUeGpcWB+AJnj5BP6GxNmAAAAAElFTkSuQmCC');
    background-repeat: no-repeat;
    color: #004986;
    font-family: 'Poppins', Arial, Helvetica, sans-serif;
    font-size: 1rem;
    background-size: 14px;
}

#ReservationStep1 .OrariEscursioni label {
    font-size: 1rem;
}

#ReservationStep1 #PnlMezzi {
    margin-top: 1rem;
}

#ReservationStep1 #PnlMezzi label {
    font-size: 0.813rem;
    font-family: 'Poppins', Arial, Helvetica, sans-serif;
}

#ReservationStep1 #PnlMezzi label b {
    color: currentColor;
    min-width: unset;
}

#ReservationStep1 .CalendarioContainer {
    margin-top: 1.5rem;
    padding-top: 0;
}

#ReservationStep1 #Calendario {
}

#ReservationStep1 #Calendario .CalendarTitle {
    font-family: 'Poppins', Arial, Helvetica, sans-serif;
    font-size: 0.813rem;
    font-weight: 700;
    border-color: #0049865c;
    margin-bottom: 8px;
}

#ReservationStep1 #Calendario .CalendarNextPrev {
}

#ReservationStep1 #Calendario .CalendarNextPrev a {
    display: block;
    aspect-ratio: 1;
    padding: 6px;
    font-size: 1.25rem;
    font-weight: 400;
}

#ReservationStep1 #Calendario .CalendarDayHeader {
    font-size: 0.813rem;
    font-weight: 600;
    color: #d33538;
}

#ReservationStep1 #Calendario .Day-Selected {
    background-image: none;
    background-color: #d33538 !important;
    border-radius: 8px;
}

#ReservationStep1 #Calendario .Day-Active-Free a:hover {
    filter: drop-shadow(0 0 1px rgba(255, 0, 102, 1));
}

#ReservationStep1 #Calendario tbody > tr:not(:first-child) td {
    font-size: 0.813rem;
    font-weight: 600;
}

#ReservationStep1 #Calendario .Day-StopSales {
    color: #00498582;
}

#ReservationStep1 #Calendario .Day-SoldOut {
}

#ReservationStep1 #Calendario .Day-Active-Free a {
    font-size: 0.813rem;
    font-weight: 600;
    color: #004986 !important;
}

#ReservationStep1 .CalendarioContainer + h3 {
    font-family: 'Poppins', Arial, Helvetica, sans-serif;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.5;
    border: 0;
    margin-top: 1.5rem;
    margin-bottom: 1rem;
    color: #d33538;
}

#ReservationStep1 .sliders {
    display: flex;
    flex-direction: column !important;
    gap: 1rem;
}

#ReservationStep1 .sliders #MinutiEnd_handleImage,
#ReservationStep1 .sliders #MinutiStart_handleImage {
    content: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC8AAAAvCAYAAABzJ5OsAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAOdEVYdFNvZnR3YXJlAEZpZ21hnrGWYwAAA9lJREFUeAHVWj1M20AUfgkCVUqDLCFFTdUhQ5kJZIesBYZupVNpCTOhc1VC1bmEGVrCVLp1aFgJ7CR0phKpVDUVEmpEGqkCIXOfY0fO5c5xgmM7n3SxdO+wv/f8fD/fI0AOQFXVJLvEWZvQrwprMdOQKmtlvR2ydhIIBArkFUCYtQ3W/qq94Yy1Hd1xV0kfqM7ioK9OsJvHVOdJ89jBc8hJsBuuqL2nR7fAc9J2eAVsEN9gF8ub3dRqVC8WqX5cov+np3RVqdD170rTPvwwSiPRKN0bH6dQYpJCU1M0FA5TB2TYR71OvZLHa2SXRZkdhC8LR1TN72sOdANlfo4iqSUaYY5ZIMcceCkzSslbEUdkKxubVCsc0l1hwwmpA0LyjPgau2REtou9L3S+9bHrSFthKHyfIsspGlt4JhuSZQ6s8p1t5PFxYrDoDpUPWY18vwAHIstLMvMqc6CFVwt5fZoqUWOFbMGvd++p+i1P/QbS6NHbNyITVulJ5kDZ6AhyA5AubcTPt7ZdIQ7gOfieBACvHXNHk7zaWOEW+b8wctxNXHzek6VnUjWtxObIr/EjMau4TdwA3vaVaa0woclTI697k2y/gbOzSje4qf2jP1nhvNGMvhH5F/wIRN2tPJcBC2D9uCgyPcWPQT7JW71KFx6Xh0eibi3YQf0VxMwWvDKvo26gms+LUlcBb0Q+zlskr8oTIJD1YklkioP8DN+LDZefIAnmBMjH+F5sa/0ECZ+4kDxmGj/hWjzfKyCv2BzsGSTBjAVpgDHw5Mt857D10cx14PwrQBXkqzYHewZJMMsg/53vxSnfT5Dw+QnyJ3wvpAk/IZQQ8imIySds6SquITQ1Keo+CepqbUve4zSvzM2SH6DMz4oCWQZvY6rc5a2jM9PkB0RSKVF3AT8G+a+8FakzmpwhL4GoS8QoLdgaeT11CvyIB6srnuU+niuLulGYMK+wbaIm5vtI6hV5AYhPkqg3eTbJy6I/9nzBSobrCyykv5y5HMTvbSBotq240ddpTclyA5rwKpb8wKslO1rI61KaUBOHBGehIzoCRFsi9QHrZqkPkKnEEExWRDaoWefbnxxWicNaYCzSE8QzfKeVPp8jgZ4DNJQ06Jf7dFeEk9MUTaet9PldRnxRZOhUGcmRxAGgVycQaWXuibaOdNhHSYkDdmpSGRLomGY0alIldso/ZoflHxY1qcds8UtoexUb68cmI26rsGYJVOdUH1YDu3EAddic2l8cqE7XYTknBq8CLnECb+JM7Q1Ij+xdSHf8YO06Qg3NE9vQmN7MelCZGiskDj44djryXx+3jW1S1VqN5hcAAAAASUVORK5CYII=');
}

#ReservationStep1 .sliders .Slider-Container {
    border-radius: 10px;
    background-color: #eff6fc;
    margin-top: 0;
    margin-bottom: 0;
}

#ReservationStep1 .sliders .Slider-Container b {
    font-size: 0.813rem;
    font-weight: 400;
    text-transform: none;
    line-height: 1.5;
    margin-bottom: 0.25rem;
}

#ReservationStep1 .OccupancyContainer {
    margin-top: 1rem;
}

#ReservationStep1 .OccupancyContainer .Occupancy {
    background-color: #eff6fc;
    border-radius: 10px;
}

#ReservationStep1 .OccupancyContainer .Occupancy .ReservationNew {
    border-radius: 5px;
    font-size: 0.813rem;
    font-weight: 400;
}

#ReservationStep1 .OccupancyContainer span {
    font-size: 0.813rem;
    font-weight: 400;
    color: #004986;
}

#ReservationStep1 .OccupancyContainer .ReservationContainer {
    background: transparent;
}

#ReservationStep1 .OccupancyContainer .ReservationContainer .start,
#ReservationStep1 .OccupancyContainer .ReservationContainer .end {
    background-color: #ffffff;
}

#ReservationStep1 .OccupancyContainer .ReservationContainer .ReservationNew {
    border-radius: 10px;
    background-color: #d33538;
}

#ReservationStep1 #ReservationAccessori {
    margin-top: 1.5rem;
}

#ReservationStep1 #ReservationAccessori h4 {
    border-top: 0;
    padding: 0;
    margin-bottom: 1rem;
    font-size: 1rem;
    line-height: 1.5;
    font-family: 'Poppins', Arial, Helvetica, sans-serif;
    font-weight: 700;
    color: #004986;
}

#ReservationStep1 #ReservationAccessori > .row:last-child {
    margin-top: 1rem;
}

#ReservationStep1 #ReservationAccessori .col-inner {
    text-align: left;
    padding: 0;
}

#ReservationStep1 #ReservationAccessori .col-inner > p {
    font-family: 'Poppins', Arial, Helvetica, sans-serif;
    font-weight: 400;
    color: #004986;
    font-size: 0.813rem;
    padding: 0 0 0.25rem 0 !important;
    border: 0 !important;
}

#ReservationStep1 #ReservationAccessori .col-inner select {
    border: 0;
    margin: 0;
    font-family: 'Poppins', Arial, Helvetica, sans-serif;
    font-size: 0.813rem;
    font-weight: 400;
    line-height: 1.5;
    background: #eff6fc;
    padding: 4px;
    border-radius: 4px;
}

#ReservationStep1 #ReservationAccessori .col-inner .row {
    border-color: #0049865c !important;
    font-size: 0.813rem;
    font-weight: 400;
    line-height: 1.5;
}

#ReservationStep1 #ReservationAccessori > .row > div {
    padding: 0 8px;
}

#ReservationStep1 #ReservationAccessori > .row > div {
    width: 100%;
}

#ReservationStep1 #ReservationAccessori > .row > div:not(:first-child) {
    margin-top: 1rem;
}

#ReservationStep1 #ReservationAccessori .Cella100D {
    width: auto;
}

#ReservationStep1 h3 {
    margin: 1.875rem 0 1rem;
    font-size: 1rem;
    line-height: 1.5;
    font-family: 'Poppins', Arial, Helvetica, sans-serif;
    font-weight: 700;
    color: #004986;
    border: none;
}

#ReservationStep1 #form > .row:not(:first-child) {
    margin-top: 1rem;
}

#ReservationStep1 #form > .row > div {
    padding: 0 8px;
}

#ReservationStep1 #form h4 {
    font-family: 'Poppins', Arial, Helvetica, sans-serif;
    font-size: 0.813rem;
    font-weight: 400;
    line-height: 1.5;
    color: #004986;
    padding: 0 0 4px 0;
}

#ReservationStep1 #form input,
#ReservationStep1 #form textarea {
    font-family: 'Poppins', Arial, Helvetica, sans-serif;
    background-color: #ffffff;
    border: 1px solid rgba(0, 73, 134, 0.5);
    border-radius: 4px;
    padding: 12px 16px;
    font-size: 0.813rem;
    font-weight: 400;
    color: #004986;
    line-height: 1.5;
    margin: 0;
}

#ReservationStep1 #form select {
    background-color: #ffffff;
    font-family: 'Poppins', Arial, Helvetica, sans-serif;
    font-size: 0.813rem;
    font-weight: 400;
    color: #004986;
    border: 1px solid rgba(0, 73, 134, 0.5);
    padding: 12px 16px;
    border-radius: 4px;
    min-height: 46px;
    line-height: 1.5;
    margin: 0;
}

#ReservationStep1 #form + h3 {
    color: #d33538;
    font-size: 1rem;
    margin-top: 1.5rem;
    margin-bottom: 0;
}

#ReservationStep1 #form + h3 + h4 {
    font-family: 'Poppins', Arial, Helvetica, sans-serif;
    border: none;
    margin-top: 0.25rem;
    font-size: 0.813rem;
    font-weight: 700;
    color: #004986;
    line-height: 1.5;
    padding: 0;
}

#ReservationStep1 .col-inner {
    padding: 0;
}

#ReservationStep1 .col-inner .row a {
    color: #004986 !important;
    font-weight: 400;
}

#ReservationStep1 .Pulsante {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
}

#ReservationStep1 .Pulsante a {
    width: 100%;
    margin: 0;
    font-family: 'Poppins', Arial, Helvetica, sans-serif;
    display: inline-block;
    cursor: pointer;
    border: 0;
    border-radius: 100px;
    background: transparent;
    text-decoration: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    text-align: center;
    border: 1px solid #d33538;
    color: #ffffff;
    font-weight: 600;
    line-height: 1.5;
    font-size: 0.813rem;
    background-color: #d33538;
    box-shadow: none;
    transition:
        color 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53),
        background-color 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53),
        border-color 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
    padding: 10px 20px;
    height: auto;
    margin-top: 0.25rem;
}

#ReservationStep1 .Pulsante a:hover {
    background-color: transparent;
    color: #004986 !important;
    border-color: #004986;
}

#ReservationStep1 #form .row .col-inner p a {
    text-decoration: underline;
    color: #004986;
    font-weight: 400;
}

@media (min-width: 400px) {
    #ReservationStep1 h1 {
        font-size: 1.563rem;
        line-height: 1.4 !important;
        margin-bottom: 0.25rem !important;
    }

    #ReservationStep1 h1 + h4 {
        font-size: 1rem;
        line-height: 1.5;
    }

    #ReservationStep1 #PnlMezzi label {
        font-size: 1rem;
    }

    #ReservationStep1 .CalendarioContainer {
        margin-top: 1.875rem;
    }

    #ReservationStep1 #Calendario .CalendarTitle {
        font-size: 1rem;
    }

    #ReservationStep1 h3,
    #ReservationStep1 #ReservationAccessori h4 {
        font-size: 1.25rem;
        margin-top: 1.875rem;
    }

    #ReservationStep1 #ReservationAccessori {
        margin-top: 1.875rem;
    }

    #ReservationStep1 #ReservationAccessori .col-inner > p {
        font-size: 1rem;
    }

    #ReservationStep1 #ReservationAccessori .col-inner select {
        font-size: 1rem;
    }

    #ReservationStep1 #ReservationAccessori .col-inner .row {
        font-size: 1rem;
    }

    #ReservationStep1 #ReservationAccessori > .row > div {
        padding: 0;
    }

    #ReservationStep1 #ReservationAccessori > .row > div {
        width: 100%;
    }

    #ReservationStep1 #ReservationAccessori > .row > div:not(:first-child) {
        margin-top: 1rem;
    }

    #ReservationStep1 h3 {
        margin-top: 1.5rem;
    }

    #ReservationStep1 #form h4 {
        font-size: 1rem;
    }

    #ReservationStep1 #form input {
        font-size: 1rem;
    }

    #ReservationStep1 #form select {
        background-color: #ffffff;
        font-family: 'Poppins', Arial, Helvetica, sans-serif;
        font-size: 1rem;
        font-weight: 400;
        color: #004986;
        border: 1px solid rgba(0, 73, 134, 0.5);
        padding: 4px 8px;
        border-radius: 4px;
        min-height: 50px;
        line-height: 29px;
    }

    #ReservationStep1 #form + h3 {
        color: #d33538;
        font-size: 1.25rem;
        margin-top: 1.875rem;
    }

    #ReservationStep1 #form + h3 + h4 {
        font-size: 1rem;
    }

    #ReservationStep1 #form + h3 + h4 b {
        font-size: 1rem;
        font-weight: 400;
    }

    #ReservationStep1 .Pulsante {
        margin-top: 1.875rem;
    }

    #ReservationStep1 .Pulsante a {
        font-size: 1rem;
    }
}
