﻿#loyalties {
    text-align: center
}

#loyalties .loyalty-login-btn {
    display: block;
    width: 98%;
    margin: 10px auto;
    line-height: 18px;
    background: #546c88;
    text-align: center;
    color: #fff;
    padding: 10px;
    box-sizing: border-box;
    font-size: 1.1em;
    border-radius: 5px
}

#loyalties .loyalty-login-btn:hover {
    background-color: #90a4bb
}

#loyalties p {
    margin-bottom: 5px;
    font-size: larger
}

.room-rate-button-box-item .reserve a.not-loyalty-spendable {
    pointer-events: none;
    background-color: #dadce0
}

/*! HTML5 Boilerplate v5.2.0 | MIT License | https://html5boilerplate.com/ */
html {
    color: #222;
    font-size: 12px;
    line-height: 1.4;
    font-family: Roboto,sans-serif;
    font-weight: 400;
    overflow-x: hidden;
    background: url(../img/sfondo_hotel.jpg) no-repeat fixed center center/cover #fff
}

html.gateway-form {
    background-image: none;
    background-color: #fff
}

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none
}

::selection {
    background: #b3d4fc;
    text-shadow: none
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ddd;
    margin: 1em 0;
    padding: 0
}

audio,canvas,iframe,img,svg,video {
    vertical-align: middle
}

fieldset {
    border: 0;
    margin: 0;
    padding: 0
}

textarea {
    resize: vertical
}

.browserupgrade {
    margin: .2em 0;
    background: #ccc;
    color: #000;
    padding: .2em 0
}

#header {
    float: left;
    width: 100%;
    height: auto;
    margin-bottom: 15px;
    -webkit-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    -moz-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    box-shadow: 0 3px 3px 0 rgba(50,50,50,.2)
}

#header_mobile {
    display: none
}

#header_mobile_sx {
    display: none
}

#header_mobile_dx {
    display: none
}

.line {
    float: left;
    width: 100%;
    height: 30px;
    line-height: 30px;
    background: rgba(255,255,255,.8) none repeat scroll 0 0
}

.container {
    width: 940px;
    margin: 0 auto
}

#step .container,#wrapper .container {
    background: rgba(255,255,255,.6) none repeat scroll 0 0;
    display: table;
    padding: 10px
}

.titolo {
    float: left;
    width: 100%;
    height: 80px;
    line-height: 80px;
    background: #4f3e1f;
    border-bottom: 3px solid #546c88;
    display: none
}

.sfondo {
    position: fixed;
    width: 100%;
    height: 100%;
    z-index: -10;
    background-position: center;
    background: url(../img/sfondo_hotel.jpg);
    background-size: cover;
    display: none!important
}

#logo {
    float: left;
    width: 100%;
    text-align: center
}

#logo img {
    height: 60px;
    width: auto
}

#wrapper {
    float: left;
    margin-top: 0;
    width: 100%
}

a {
    text-decoration: none;
    color: #222
}

a:hover {
    color: #546c88
}

h1,h2,h3,h4,h5 {
    font-weight: 400
}

#puls_servizio {
    display: none
}

#sx {
    float: left;
    width: 360px;
    margin: 0 15px 0 0
}

#sx_pacchetti {
    float: left;
    width: 360px;
    margin: 0 5px 0 0
}

#dx {
    float: left;
    width: 565px;
    margin-bottom: 0
}

#dx_pacchetti {
    float: left;
    width: 565px;
    margin: 10px 0 0 0
}

#carrello_mobile {
    position: fixed;
    bottom: -80px;
    left: 0;
    width: 100%;
    padding: 10px 10px;
    box-sizing: border-box;
    color: #fff;
    display: none;
    background: #546c88;
    border-top: 1px solid #546c88;
    z-index: 999
}

#carrello_mobile .container {
    display: block;
    margin: 0 auto;
    max-width: 650px
}

#carrello_mobile .container .sx {
    float: left;
    text-transform: uppercase;
    margin-right: 6px
}

#carrello_mobile .container .sx .nome_camera {
    font-size: 1em
}

#carrello_mobile .container .sx .riga {
    width: 100%;
    line-height: 20px;
    margin: 0;
    padding: 0
}

#carrello_mobile .container .sx .riga_doppia {
    width: 100%;
    line-height: 40px;
    margin: 0;
    padding: 0;
    font-size: 1.25em
}

#carrello_mobile .container .dx {
    float: right
}

#carrello_mobile.fix {
    bottom: 0!important
}

#carrello_mobile .container .dx .continua {
    display: inline-block;
    padding: 0 20px;
    background: #6cab6c;
    color: #fff;
    height: 40px;
    line-height: 40px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px
}

#carrello_mobile .container .dx .continua:hover {
    background: #4b844b;
    color: #fff
}

#cont_pacchetti {
    float: left;
    width: 100%;
    margin: 0
}

.border-top {
    border-top: 1px solid #ddd
}

.border-bottom {
    border-bottom: 1px solid #ddd
}

.t-center {
    text-align: center
}

.t-right {
    text-align: right
}

.t_big {
    font-size: 1.3em;
    font-weight: 400
}

.t_pic {
    font-size: .8em
}

.t-medio {
    font-size: 1.2em;
    font-weight: 400
}

.add-top {
    margin-top: 10px
}

.add-top-blocco {
    margin-top: 20px
}

.add-top1 {
    margin-top: 7px
}

.add-bottom {
    margin-bottom: 10px
}

.add-bottom2 {
    margin-bottom: 20px
}

.add-bottom5 {
    margin-bottom: 5px
}

.sfondo_sel {
    background: #546c88;
    color: #fff
}

#step_mobile {
    display: none
}

#step {
    float: left;
    width: 100%;
    height: auto;
    margin-bottom: 15px
}

#step .container ul {
    float: left;
    width: 100%;
    margin: 0;
    padding: 0;
    list-style: none
}

#step .container ul li a {
    float: left;
    width: 19%;
    margin-right: 1%;
    height: 60px;
    border-bottom: 3px solid #546c88;
    font-size: 1.2em;
    background: #fff;
    opacity: .5
}

#step .container ul li:last-child a {
    width: 20%;
    margin-right: 0
}

#step .container ul li a .span_num {
    float: left;
    width: 40px;
    height: 60px;
    text-align: center
}

#step .container ul li a .span_num .val {
    float: left;
    width: 20px;
    height: 20px;
    line-height: 20px;
    background: #546c88;
    margin: 20px 10px 0 10px;
    color: #fff;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px
}

#step .container ul li a .t_step {
    width: auto;
    height: 60px;
    line-height: 20px;
    text-transform: uppercase;
    color: #222;
    display: table-cell;
    vertical-align: middle
}

#step .container ul li a:hover,#step .container ul li.sel a {
    opacity: 1
}

#cont_finestra_portale {
    margin: 0 auto 10px;
    text-align: center;
    max-width: 1120px;
    width: 100%;
    background: #f0ede8;
    -webkit-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    -moz-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    box-shadow: 0 3px 3px 0 rgba(50,50,50,.2)
}

.row_box_portale {
    display: table;
    margin: 0 auto;
    width: 100%;
    color: #546c88;
    font-family: Roboto,sans-serif;
    text-align: left
}

.title_comparison_first,.title_comparison_second {
    vertical-align: middle;
    display: table-cell
}

.title_comparison_first {
    width: 50%;
    background: #546c88;
    color: #fff
}

.title_comparison_second {
    width: 50%
}

.cont_inside_portale {
    padding: 10px 20px;
    margin: 0
}

.second_row-co .cont_inside_portale {
    display: block;
    padding: 10px 20px
}

.cont_inside_portale .box-inside_portale {
    vertical-align: middle;
    display: block
}

.cont_inside_portale .box-inside_portale ul {
    margin: 0;
    padding: 0;
    list-style: none
}

.title_ota_bold {
    line-height: 22px;
    font-size: 1.5em
}

.first_row-co .title_ota_bold {
    text-align: center
}

.text_ota_bold {
    font-size: 1em;
    line-height: 18px
}

.text_ota_bold i.far.fa-check {
    font-weight: 600;
    color: #6cab6c;
    padding-right: 6px
}

.divider_arrows {
    display: inline-block;
    text-align: right;
    float: right
}

.banner_comparativo {
    width: 100%;
    height: auto;
    display: none;
    box-sizing: border-box;
    margin-bottom: 15px;
    -webkit-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    -moz-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    box-shadow: 0 3px 3px 0 rgba(50,50,50,.2)
}

.banner_comparativo .row_portale {
    width: 100%;
    margin: 0 auto;
    text-align: center
}

.banner_comparativo .row_portale h2 {
    width: 24%;
    line-height: 20px;
    margin: 5px 0 0 1%;
    padding: 0;
    font-size: 1.2em;
    color: #333;
    font-weight: 700
}

.banner_comparativo .row_portale h2 .evidenziato {
    font-weight: 700;
    color: #44525e
}

.banner_comparativo .row_portale ul {
    height: auto;
    margin: 0;
    padding: 0;
    list-style: none;
    background: #f0ede8;
    display: table;
    width: 100%
}

.banner_comparativo .row_portale ul li {
    width: 33%;
    line-height: 22px;
    margin: 0;
    padding: 10px 0;
    text-align: center;
    border-left: 1px solid#ccc;
    box-sizing: border-box;
    display: table-cell;
    vertical-align: middle
}

.banner_comparativo .row_portale ul li .blocco {
    width: 100%;
    margin: 0 auto;
    display: table;
    vertical-align: middle
}

.banner_comparativo .row_portale ul li .blocco .icona,.banner_comparativo .row_portale ul li .blocco .prezzo {
    display: table-cell;
    vertical-align: middle;
    color: #546c88
}

.banner_comparativo .row_portale ul li .blocco .icona i.far {
    font-size: 30px;
    font-weight: 600
}

.banner_comparativo .row_portale ul li.ufficiale .blocco .icona i.far {
    color: #fff
}

.banner_comparativo .row_portale ul li .blocco .icona {
    width: 20%;
    text-align: center
}

.banner_comparativo .row_portale ul li .blocco .prezzo {
    width: 70%;
    text-align: center;
    padding-right: 10%
}

.banner_comparativo .row_portale ul li .blocco .prezzo .portale {
    font-size: 1em;
    color: #333;
    line-height: 15px!important;
    display: inline-block;
    padding-bottom: 3px
}

.banner_comparativo .row_portale ul li .blocco .prezzo .tariffa_comp {
    font-size: 1.4em;
    font-weight: 700;
    color: #546c88;
    display: block;
    line-height: 14px
}

.banner_comparativo .row_portale ul li.ufficiale {
    background: #6cab6c
}

.banner_comparativo .row_portale ul li.ufficiale .blocco .icona,.banner_comparativo .row_portale ul li.ufficiale .blocco .prezzo .portale,.banner_comparativo .row_portale ul li.ufficiale .blocco .prezzo .tariffa_comp {
    color: #fff
}

.banner_comparativo .row_portale ul li.score .blocco .prezzo {
    line-height: 13px;
    width: 100%
}

span.portale-explain {
    font-size: 9px
}

#group_link a,#hp a {
    float: left;
    line-height: 30px;
    color: #222
}

#group_link a {
    margin-left: 25px
}

#group_link a i.far {
    margin-right: 2px
}

.select_valute {
    float: right;
    width: 180px;
    padding: 0;
    margin: 0
}

.select_valute .valute {
    float: right
}

.select_valute .valute a {
    float: left;
    line-height: 30px;
    background: #546c88;
    color: #fff;
    padding: 0 7px 0 0;
    width: 180px;
    box-sizing: border-box
}

.select_valute .valute a.spento {
    background: 0 0;
    color: #222
}

.select_valute .valute a.spento:hover {
    background: #546c88;
    color: #fff
}

.select_valute .valute a i {
    float: left;
    width: 15px;
    height: 15px;
    margin: 0 7px;
    line-height: 30px
}

.select_valute .box_valute {
    position: relative;
    z-index: 9;
    width: 100%;
    height: auto;
    display: none
}

.select_valute .box_valute .elenco_valute {
    float: left;
    width: 100%;
    margin: 0;
    padding: 0;
    list-style: none;
    max-height: 200px;
    display: block;
    overflow: auto
}

.select_valute .box_valute .elenco_valute li a {
    float: left;
    width: 100%;
    padding: 0 5px;
    line-height: 24px;
    border-top: 1px solid #ddd;
    background: #fff;
    color: #222;
    box-sizing: border-box
}

.select_valute .box_valute .elenco_valute li a img {
    float: left;
    width: 15px;
    height: 15px;
    margin: 4px 10px 0 0;
    line-height: 24px
}

.select_valute .box_valute .elenco_valute li a span {
    float: left;
    line-height: 24px
}

.select_valute .box_valute .elenco_valute li a:hover {
    background: #546c88;
    color: #fff
}

.select_valute2 {
    float: right;
    width: 140px;
    padding: 0;
    margin: 0 15px 0 0;
    box-sizing: border-box
}

.select_valute2 .valute {
    float: right
}

.select_valute2 .valute a {
    float: left;
    line-height: 30px;
    height: 30px;
    margin: 5px 0 0 0;
    width: 140px;
    background: #546c88;
    color: #fff;
    padding: 0 10px 0 0;
    border: 1px solid #ddd;
    box-sizing: border-box
}

.select_valute2 .valute a.spento {
    background: 0 0;
    color: #222;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px
}

.select_valute2 .valute a.spento:hover {
    background: #546c88;
    border: 1px solid #546c88;
    color: #fff
}

.select_valute2 .valute a i {
    float: left;
    width: 15px;
    height: 30px;
    margin: 0 7px;
    line-height: 30px
}

.select_valute2 .box_valute {
    position: relative;
    z-index: 9;
    width: 100%;
    height: auto;
    display: none
}

.select_valute2 .box_valute .elenco_valute {
    float: left;
    width: 100%;
    margin: 0 0 5px 0;
    padding: 0;
    list-style: none
}

.select_valute2 .box_valute .elenco_valute li a {
    float: left;
    width: 100%;
    padding: 0 3px;
    line-height: 30px;
    background: #fff;
    color: #222;
    box-sizing: border-box;
    font-size: .8em;
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd
}

.select_valute2 .box_valute .elenco_valute li a:last-child {
    border-top: 0
}

.select_valute2 .box_valute .elenco_valute li a img {
    float: left;
    width: 15px;
    height: 30px;
    margin: 0 10px 0 0;
    line-height: 30px
}

.select_valute2 .box_valute .elenco_valute li a span {
    float: left;
    line-height: 20px;
    padding: 5px
}

.select_valute2 .box_valute .elenco_valute li a:hover {
    background: #f0ede8;
    color: #333
}

.select_lang {
    float: right;
    width: 150px;
    padding: 0;
    margin: 0
}

.select_lang .lang a {
    float: left;
    line-height: 30px;
    width: 143px;
    background: #546c88;
    color: #fff;
    padding: 0 7px 0 0
}

.select_lang .lang a.spento {
    background: 0 0;
    color: #222
}

.select_lang .lang a.spento:hover {
    background: #546c88;
    color: #fff
}

.select_lang .lang a i {
    float: left;
    width: 15px;
    height: 15px;
    margin: 0 7px;
    line-height: 30px
}

.select_lang .box_lingue {
    position: relative;
    z-index: 9;
    width: 100%;
    height: auto;
    display: none
}

.select_lang .box_lingue .elenco_lingue {
    float: left;
    width: 100%;
    margin: 0;
    padding: 0;
    list-style: none;
    -webkit-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    -moz-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    display: block;
    max-height: 200px;
    overflow: auto
}

.select_lang .box_lingue .elenco_lingue li a {
    float: left;
    width: 100%;
    padding: 0 5px;
    line-height: 24px;
    border-top: 1px solid #ddd;
    background: #fff;
    color: #222;
    box-sizing: border-box
}

.select_lang .box_lingue .elenco_lingue li a img {
    float: left;
    width: 15px;
    height: 15px;
    margin: 4px 10px 0 0;
    line-height: 24px
}

.select_lang .box_lingue .elenco_lingue li a span {
    float: left;
    line-height: 24px
}

.select_lang .box_lingue .elenco_lingue li a:hover {
    background: #f0ede8;
    color: #333
}

.select_lang2 {
    float: right;
    width: 140px;
    padding: 0;
    margin: 0 15px 0 0;
    box-sizing: border-box
}

.select_lang2 .lang {
    float: right
}

.select_lang2 .lang a {
    float: left;
    line-height: 30px;
    height: 30px;
    margin: 5px 0 0 0;
    width: 140px;
    background: #546c88;
    color: #fff;
    padding: 0 10px 0 0;
    border: 1px solid #ddd;
    box-sizing: border-box
}

.select_lang2 .lang a.spento {
    background: 0 0;
    color: #222;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px
}

.select_lang2 .lang a.spento:hover {
    background: #546c88;
    color: #fff;
    border: 1px solid #546c88
}

.select_lang2 .lang a i {
    float: left;
    width: 15px;
    height: 30px;
    margin: 0 7px;
    line-height: 30px
}

.select_lang2 .box_lingue {
    position: relative;
    z-index: 9;
    width: 100%;
    height: auto;
    display: none
}

.select_lang2 .box_lingue .elenco_lingue {
    float: left;
    width: 100%;
    margin: 0 0 5px 0;
    padding: 0;
    list-style: none
}

.select_lang2 .box_lingue .elenco_lingue li a {
    float: left;
    width: 100%;
    padding: 0 5px;
    line-height: 30px;
    background: #fff;
    color: #222;
    box-sizing: border-box;
    font-size: .8em;
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd
}

.select_lang2 .box_lingue .elenco_lingue li a:last-child {
    border-top: 0
}

.select_lang2 .box_lingue .elenco_lingue li a img {
    float: left;
    width: 15px;
    height: 15px;
    margin: 8px 10px 0 0;
    line-height: 30px
}

.select_lang2 .box_lingue .elenco_lingue li a span {
    float: left;
    line-height: 30px
}

.select_lang2 .box_lingue .elenco_lingue li a:hover {
    background: #f0ede8;
    color: #333
}

#scheda_hotel {
    float: left;
    width: 100%;
    height: auto
}

#box_scheda {
    float: left;
    width: 100%;
    padding: 0;
    margin: 0
}

#scheda_link {
    float: left;
    width: 100%;
    line-height: 50px;
    min-height: 50px;
    background: #fff
}

#scheda_link #logo-nome-hotel {
    text-align: center;
    padding: 10px
}

#scheda_link a {
    float: left;
    width: 100%;
    line-height: 50px;
    height: 50px;
    color: #546c88
}

#scheda_link a .sx {
    float: left;
    width: auto;
    line-height: 50px;
    height: 50px;
    margin-left: 20px;
    font-size: 1.5em
}

#scheda_link a .stelle {
    float: left;
    width: auto;
    line-height: 50px;
    height: 50px;
    margin-left: 10px;
    font-size: .8em;
    letter-spacing: .2em
}

#scheda_link a .dx {
    float: right;
    width: auto;
    line-height: 36px;
    height: 36px;
    margin: 7px 10px;
    background: #f0ede8;
    padding: 0 15px;
    color: #222!important;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px
}

#scheda_link a.spento {
    background: 0 0;
    color: #222
}

#scheda_link a.spento:hover {
    background: #241c0a;
    color: #fff
}

#box_pacchetti {
    float: left;
    width: 100%;
    height: auto;
    padding-bottom: 80px
}

#pacchetti {
    float: left;
    width: 100%;
    height: auto;
    background: #f0ede8;
    -webkit-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    -moz-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    padding: 0 0 15px 0;
    box-sizing: border-box
}

#pacchetti .contenuto {
    float: left;
    width: 100%
}

#box_carrello {
    float: left;
    width: 360px;
    height: auto
}

.carrello {
    float: left;
    width: 100%;
    height: auto
}

.stile_carrello {
    background: #f0ede8;
    -webkit-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    -moz-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    box-shadow: 0 3px 3px 0 rgba(50,50,50,.2)
}

.tab_carrello {
    float: left;
    width: 100%
}

.tab_carrello ul {
    float: left;
    width: 360px;
    list-style: none;
    margin: 0;
    padding: 0
}

.tab_carrello ul li a {
    float: left;
    width: 50%;
    height: 50px;
    line-height: 50px;
    text-align: center;
    background: #f0ede8;
    text-decoration: none;
    color: #222;
    font-size: 1.2em;
    opacity: .6;
    box-sizing: border-box;
    border-bottom: 1px solid rgba(0,0,0,.1);
    border-left: 1px solid rgba(0,0,0,.1)
}

.tab_carrello ul li:first-child a {
    border-left: 1px solid transparent
}

.tab_carrello ul li a:hover,.tab_carrello ul li.sel a {
    opacity: 1;
    border-bottom: transparent
}

.carrello nav ul li a:hover,.tab_carrello ul li.sel a {
    opacity: 1
}

.carrello .contenuto {
    float: left;
    width: 340px;
    margin: 10px 10px 5px 10px;
    padding: 0
}

.carrello .contenuto .box_contenuto {
    float: left;
    width: 320px;
    padding: 10px;
    background: #fff;
    margin-bottom: 15px;
    -webkit-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    -moz-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    box-shadow: 0 3px 3px 0 rgba(50,50,50,.2)
}

.riga {
    float: left;
    width: 100%
}

.riga h2 {
    float: left;
    width: 100%;
    margin: 0;
    padding: 0;
    line-height: 35px;
    height: 35px;
    color: #fff;
    font-size: 1.2em;
    text-align: center;
    background: #546c88
}

.riga h2 i {
    float: left;
    width: 30px;
    text-align: center;
    line-height: 35px;
    height: 35px;
    box-sizing: border-box
}

.riga .eti_lunga {
    float: left;
    width: 100%;
    height: 40px;
    line-height: 40px
}

.riga .blocco_corto {
    float: left;
    width: 50%;
    line-height: 30px;
    height: 30px
}

.riga .blocco_corto i {
    float: left;
    width: 24px;
    margin-left: 5px;
    height: 30px;
    line-height: 30px;
    text-align: center
}

.riga .blocco_corto span {
    float: left;
    width: auto
}

.riga .blocco_corto .valore {
    float: right;
    width: auto;
    margin-right: 0;
    height: 30px;
    line-height: 30px
}

.riga .pulsanti {
    float: left;
    width: 100%;
    margin: 10px 0 0 0
}

.riga .pulsanti a {
    float: left;
    width: 100%;
    background: #f0ede8;
    line-height: 20px;
    padding: 2px 5px;
    box-sizing: border-box;
    margin: 0;
    text-align: center
}

a.aggcalendario {
    background: #98d098!important;
    color: #fff;
    border-radius: 5px;
    padding: 8px!important;
    font-size: 1.2em
}

#camere li .row_camera .seleziona.eta-bambini {
    width: auto;
    margin-right: 15px
}

#camere li .row_camera .seleziona.eta-bambini .valore {
    width: auto
}

.carrello .contenuto .box_contenuto .riga .pulsanti a:hover {
    background: #546c88!important;
    color: #fff
}

.riga .pulsanti a i {
    display: inline-block;
    margin: 0 4px 0 0
}

.riga .puls {
    float: right;
    width: auto;
    height: 40px;
    line-height: 40px;
    margin-right: 10px
}

.riga .puls i {
    float: left;
    width: 24px;
    height: 40px;
    line-height: 40px;
    text-align: center
}

.riga .verifica {
    display: block;
    width: 98%;
    margin: 10px auto;
    height: 45px;
    line-height: 45px;
    background: #546c88;
    text-align: center;
    color: #fff;
    font-size: 1.4em;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px
}

.riga .verifica.attivo {
    background: #6cab6c
}

.riga .verifica.attivo:hover,.riga .verifica:hover {
    background: #4b844b
}

.riga .inserisci_sconto {
    display: block;
    width: 98%;
    margin: 10px auto;
    line-height: 18px;
    background: #f1db6b;
    text-align: center;
    color: #222;
    padding: 10px;
    box-sizing: border-box;
    font-size: 1.1em;
    border-radius: 5px
}

.riga .inserisci_sconto:hover {
    background: #546c88;
    color: #fff
}

.riga.fix_sconto {
    float: left;
    width: 100%;
    height: 24px
}

.riga .pulsanti_servizio {
    float: left;
    width: 100%;
    margin: 10px 0
}

.riga .pulsanti_servizio a {
    float: left;
    width: 48%;
    background: #f0ede8;
    height: 40px;
    padding: 5px;
    box-sizing: border-box;
    margin: 0 1%
}

.riga .pulsanti_servizio a:hover {
    background: #241c0a;
    color: #fff
}

.riga .pulsanti_servizio a i {
    float: left;
    width: 30px;
    text-align: center;
    line-height: 30px
}

.riga .pulsanti_servizio a span {
    float: left;
    width: 110px;
    text-align: left;
    line-height: 15px;
    font-size: .8em
}

.riga .messaggio_procedi {
    float: left;
    width: 100%;
    height: auto;
    padding: 10px;
    box-sizing: border-box;
    background: #546c88;
    color: #fff
}

.riga .messaggio_procedi i {
    float: left;
    width: 40px;
    line-height: 30px;
    text-align: left;
    font-size: 30px
}

.riga .messaggio_procedi span {
    float: left;
    width: 260px;
    line-height: 15px;
    font-size: .9em
}

.camera_sel {
    float: left;
    width: 320px;
    line-height: 20px;
    padding: 0;
    margin-top: 5px;
    border-bottom: 1px solid #ddd
}

.camera_sel .ncamera {
    float: left;
    width: 85px;
    margin-left: 5px;
    font-size: .9em
}

.camera_sel .ncamera i {
    display: inline-block;
    margin-right: 6px
}

.camera_sel .eti {
    float: left;
    width: 105px;
    text-align: center;
    font-size: .9em
}

.camera_sel .eti i {
    display: inline-block;
    margin-right: 6px
}

#camere {
    float: left;
    width: 100%;
    list-style: none;
    margin: 0;
    padding: 0
}

#camere li {
    float: left;
    width: 100%;
    padding: 0;
    border-bottom: 1px solid #ddd
}

#camere li .row_camera {
    float: left;
    width: 100%;
    height: auto
}

#camere li .row_camera .cancel {
    float: left;
    width: 20px;
    line-height: 30px;
    height: 30px;
    text-align: center
}

#camere li:first-child .row_camera .cancel i {
    display: none
}

#camere li .row_camera .num_camera {
    float: left;
    width: 93px;
    margin-left: 0;
    line-height: 30px;
    height: 30px
}

#camere li .row_camera.bambini .num_camera {
    font-size: 90%;
    vertical-align: middle;
    margin-right: auto;
    width: max-content
}

#camere li .row_camera.bambini .num_camera div {
    display: inline-block;
    margin-right: 4px
}

#camere li .row_camera .seleziona {
    float: left;
    width: 101px;
    line-height: 30px;
    height: 30px;
    font-size: .9em;
    text-align: center
}

#camere li .row_camera .seleziona .valore {
    display: inline-block;
    width: 100px;
    height: 30px;
    line-height: 30px
}

#camere li .row_camera .seleziona .valore .eta_bambino_label {
    display: inline-block;
    margin-left: 0;
    width: auto;
    margin-right: 5px
}

select.select-eta-bambini {
    padding: 3px;
    border: 1px solid #ddd
}

#camere li .row_camera.bambini {
    display: flex;
    align-items: center;
    padding-right: 28px;
    box-sizing: border-box;
    flex-wrap: wrap;
    justify-content: flex-end
}

.fancybox-inner .camera_sel {
    float: left;
    width: 100%;
    display: flex;
    flex-wrap: nowrap;
    box-sizing: border-box;
    padding-right: 20px
}

.fancybox-inner #camere li .row_camera .num_camera,.fancybox-inner .camera_sel .ncamera {
    margin-right: auto
}

.fancybox-inner #camere li .row_camera {
    display: flex
}

.fancybox-inner #camere li .row_camera.bambini {
    padding-right: 23px
}

#coupon {
    display: none;
    width: 100%;
    height: auto;
    margin: 0 auto
}

#coupon h2 {
    width: 100%;
    background: #546c88;
    color: #fff;
    line-height: 40px;
    text-align: center;
    margin: 0;
    padding: 0;
    text-transform: uppercase
}

#coupon ul {
    width: 100%;
    list-style: none;
    margin: 0 auto;
    padding: 0;
    background: #fff;
    display: inline-block
}

#coupon ul li {
    float: none;
    width: 100%;
    border-top: 1px solid #ddd;
    display: table;
    clear: both
}

#coupon ul li:first-child {
    border-bottom: 0
}

#coupon ul li .contenitore_1,#coupon ul li .contenitore_2 {
    display: table-cell;
    vertical-align: middle
}

#coupon ul li .contenitore_1 {
    width: 70%;
    text-align: left
}

#coupon ul li .contenitore_2 {
    text-align: right;
    width: 30%
}

.contenitore_1 .cont_interno_1_2,.contenitore_1 .cont_interno_2_2 {
    display: inline-table;
    padding: 0;
    vertical-align: middle;
    text-align: left
}

.contenitore_1 .cont_interno_1_2 {
    width: 20%
}

.contenitore_1 .cont_interno_2_2 {
    width: 40%;
    padding: 0 0 0 20px
}

.contenitore_2 .cont_interno_2 {
    text-align: left;
    padding: 0 20px
}

#coupon ul li span {
    float: left;
    width: 30%;
    line-height: 40px;
    text-transform: uppercase;
    padding: 0 0 0 20px;
    min-width: 170px
}

#coupon ul li input {
    float: left;
    margin: 0;
    border: 2px solid #ddd;
    padding: 1em 1.25em!important;
    width: 100%
}

#coupon ul li a {
    line-height: 40px;
    background: #6cab6c;
    text-align: center;
    color: #fff;
    border: none;
    padding: 0;
    margin: 5px auto;
    font-size: 1.1em;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    border-radius: 8px;
    width: 100%;
    min-width: 110px;
    display: block
}

#coupon ul li a:hover {
    background: #4b844b;
    color: #fff
}

.slick-next:focus,.slick-next:hover,.slick-prev:focus,.slick-prev:hover {
    outline: 0;
    background: #546c88;
    color: #fff
}

.slick-dots {
    float: left;
    list-style: none;
    display: block;
    text-align: center;
    padding: 0;
    width: 100%;
    z-index: 9990;
    background: #fff;
    height: 30px;
    margin: 0
}

.qty {
    width: 20px;
    height: 30px;
    text-align: center;
    border: 0;
    border: none
}

input.qtyplus {
    width: 20px;
    height: 20px;
    font-size: 1em;
    border: none;
    background: #f0ede8;
    color: #222
}

input.qtyminus {
    width: 20px;
    height: 20px;
    font-size: 1em;
    border: none;
    background: #f0ede8;
    color: #222
}

input.qtyminus:hover,input.qtyplus:hover {
    background: #546c88;
    color: #fff
}

input {
    margin: 0;
    padding: 0
}

.box_riepi {
    float: left;
    width: 100%
}

.box_riepi .riga {
    float: left;
    width: 100%;
    border-top: 1px solid #ddd;
    display: table
}

#riepilogo_viaggio .box_riepi .riga:first-child {
    border-top: none
}

.box_riepi .riga_lunga {
    float: left;
    width: 100%;
    border-bottom: 1px solid #fff;
    line-height: 30px;
    display: table
}

.box_riepi .riga i {
    float: left;
    line-height: 30px;
    text-align: center
}

.box_riepi .riga_lunga i {
    float: left;
    width: 30px;
    height: 30px;
    line-height: 30px;
    text-align: center
}

.box_riepi .riga .label {
    width: 80px;
    margin: 0;
    display: table-cell;
    padding: 5px;
    vertical-align: top
}

.box_riepi .riga .dettaglio_condizioni .label {
    width: 120px
}

.box_riepi.cancellation .riga .label {
    width: 200px
}

.box_riepi .riga_lunga .label {
    float: left;
    width: 150px;
    text-transform: uppercase
}

.box_riepi .riga .risultato {
    display: table-cell;
    padding: 5px
}

.box_riepi .riga.prezzi .risultato {
    text-align: right;
    font-weight: 700
}

.box_riepi .riga.prezzi:not(first-child) .label:after {
    content: ":"
}

.box_riepi .riga.prezzi.definitivo .label:after {
    content: ""
}

.box_riepi .riga .dettaglio_condizioni {
    float: left;
    width: 100%;
    border-top: 1px solid #ddd;
    line-height: 30px
}

.box_riepi .riga.servizi .label {
    width: 200px
}

.box_riepi .riga.servizi .risultato {
    text-align: right;
    width: 100px
}

.box_riepi .riga.servizi.remove .risultato {
    width: 80px;
    vertical-align: middle
}

.box_riepi .riga.servizi.remove .remove {
    width: 20px;
    display: table-cell;
    vertical-align: middle
}

.box_riepi .riga.condizioni {
    padding: 5px;
    line-height: 15px
}

.box_riepi .riga.condizioni p {
    padding: 0;
    margin: 0
}

.box_riepi .riga_lunga .risultato {
    float: left;
    width: 130px
}

.box_riepi .riga .risultato .multi_riga {
    float: left
}

.box_riepi .riga.definitivo .label {
    float: left;
    width: 190px;
    text-transform: uppercase;
    margin: 0 5px
}

.box_riepi .riga.definitivo .risultato {
    float: right;
    text-align: right;
    margin: 0 5px
}

.box_riepi .riga.definitivo .risultato i {
    text-align: right;
    float: right;
    font-weight: 400
}

.box_riepi .riga.definitivo.accordion-open .risultato i {
    -ms-transform: rotate(90deg);
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    height: 30px;
    line-height: 30px
}

.box_riepi.cancellation .riga {
    line-height: 22px;
    font-size: 13px
}

.box_riepi.cancellation .riga_lunga {
    float: left;
    width: 100%;
    border-bottom: 1px solid #fff;
    line-height: 30px;
    display: table
}

.box_riepi.cancellation .riga .label {
    width: 25%;
    padding: 6px 20px;
    font-weight: 600
}

.box_riepi.cancellation .risultato {
    display: table-cell;
    padding: 5px 20px
}

.box_riepi.cancellation .modification-buttons-row {
    margin: 0 auto!important;
    border-top: 1px solid #ddd;
    padding: 20px 0;
    clear: both
}

#box-modifica-date .modification-buttons-row .modification-buttons,#box-modifica-occupazione .modification-buttons-row .modification-buttons,#riga_pulsanti_cancellazione .modification-buttons,.credit_card_data .modification-buttons-row .modification-buttons,.customer_data .modification-buttons-row .modification-buttons {
    line-height: 40px!important;
    height: 40px!important;
    text-transform: uppercase;
    background: #6cab6c
}

#riga_pulsanti_cancellazione .modification-buttons:hover {
    background: #4b844b;
    color: #fff
}

.box_riepi.modification {
    margin-top: 0!important
}

.box_riepi.modification .riga {
    border-top: 1px solid #ddd
}

.box_riepi.modification .riga a {
    margin-top: 0;
    vertical-align: middle;
    line-height: 30px;
    display: block;
    width: auto
}

.box_riepi.modification .riga a:hover {
    background: #f0ede8
}

.box_riepi.modification i {
    vertical-align: middle;
    font-size: 14px;
    background: #f0ede8;
    height: 30px!important;
    line-height: 30px!important;
    border-radius: 50px;
    margin-right: 10px;
    width: 30px
}

#box-modifica-occupazione .camera_sel {
    margin: 0;
    border-bottom: 1px solid #ddd;
    font-size: 13px;
    padding: 10px 0
}

#box-modifica-occupazione .camera_sel .ncamera,#box-modifica-occupazione .row_camera.occupazione .num_camera {
    margin-left: 20px
}

#box-modifica-occupazione .camera_sel .ncamera i {
    font-size: 14px
}

.row_camera.occupazione .cancel i.fa {
    color: #d33
}

.row_camera.occupazione .cancel i.fa:hover {
    color: #546c88
}

.viaggio {
    float: left;
    width: 100%;
    margin: 10px 0 0 0;
    padding: 0;
    list-style: none
}

.viaggio .cal {
    float: left;
    width: 140px;
    height: auto;
    margin: 0
}

.viaggio .freccia {
    float: left;
    width: 20px;
    line-height: 60px;
    margin: 0;
    text-align: center;
    color: #ccc
}

.viaggio .eti {
    float: left;
    width: 80px;
    line-height: 20px;
    margin: 5px 0 5px 10px;
    font-size: .8em
}

.viaggio .eti .sx {
    float: left;
    width: auto;
    line-height: 20px;
    text-transform: uppercase
}

.viaggio .eti .sx i {
    margin-right: 3px
}

.viaggio .eti .dx {
    float: right;
    width: 20px;
    line-height: 20px;
    text-transform: uppercase;
    background: #f0ede8;
    text-align: center;
    font-weight: 700;
    font-size: 1em
}

.clock-block {
    display: inline-block;
    vertical-align: top;
    float: left;
    width: 60px;
    height: 60px;
    margin: 0;
    line-height: 1;
    text-align: center;
    border: 1px solid #9fa2ad;
    border-radius: 3px 3px 2px 2px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    text-shadow: 0 1px rgba(255,255,255,.3);
    background: #f0ede8;
    background-image: -webkit-linear-gradient(top,#fff,#f0ede8);
    background-image: -moz-linear-gradient(top,#fff,#f0ede8);
    background-image: -o-linear-gradient(top,#fff,#f0ede8);
    background-image: linear-gradient(to bottom,#fff,#f0ede8);
    -webkit-box-shadow: inset 0 1px rgba(255,255,255,.5),0 1px 2px rgba(0,0,0,.1);
    box-shadow: inset 0 1px rgba(255,255,255,.5),0 1px 2px rgba(0,0,0,.1)
}

.clock-val {
    display: block;
    position: relative;
    z-index: 1;
    font-size: 28px;
    font-weight: 700;
    color: #222
}

.clock-val:after,.clock-val:before {
    content: '';
    position: absolute;
    left: 0;
    right: 0
}

.clock-val:after {
    top: 50%;
    border-top: 1px solid rgba(60,62,68,.4);
    border-radius: 0 0 2px 2px;
    background-image: -webkit-linear-gradient(top,rgba(255,255,255,.25),rgba(255,255,255,0) 50%);
    background-image: -moz-linear-gradient(top,rgba(255,255,255,.25),rgba(255,255,255,0) 50%);
    background-image: -o-linear-gradient(top,rgba(255,255,255,.25),rgba(255,255,255,0) 50%);
    background-image: linear-gradient(to bottom,rgba(255,255,255,.25),rgba(255,255,255,0) 50%);
    -webkit-box-shadow: inset 0 1px rgba(255,255,255,.3),inset 0 0 0 1px rgba(255,255,255,.2);
    box-shadow: inset 0 1px rgba(255,255,255,.3),inset 0 0 0 1px rgba(255,255,255,.2)
}

.clock-unit {
    display: block;
    margin-top: 0;
    font-size: 11px;
    font-weight: 200;
    color: #222;
    text-transform: capitalize
}

.clock-day {
    display: block;
    margin: 4px 0 0 0;
    font-size: 11px;
    font-weight: 200;
    color: #222
}

.carrello .contenuto .tariffe_mese {
    float: left;
    width: 320px;
    padding: 10px;
    background: #fef9d9;
    text-align: center;
    margin-bottom: 15px;
    -webkit-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    -moz-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    box-shadow: 0 3px 3px 0 rgba(50,50,50,.2)
}

.box_camere {
    float: left;
    width: 100%;
    margin: 10px 0 0 0
}

.tipo_camera,.tipo_camera * {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box
}

.blocco_camera {
    float: left;
    width: 100%;
    height: auto;
    border: 1px solid #ddd
}

.blocco_camera-title {
    width: 100%;
    display: inline-block;
    float: left;
    overflow: hidden;
    transition: all linear .15s;
    line-height: 30px;
    height: 30px;
    background: #fff;
    color: #222;
    font-size: 1.2em;
    padding: 0
}

.blocco_camera-title:hover {
    color: #222
}

.blocco_camera-title.aa .freccia i,.blocco_camera-title:hover .freccia i {
    -ms-transform: rotate(90deg);
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg)
}

.blocco_camera-title.aa {
    background: #f0ede8
}

.desc_camera {
    float: left;
    width: 100%;
    padding: 0;
    display: none
}

.tipo_camera .blocco_camera-title i {
    float: left;
    width: 30px;
    margin: 0;
    padding: 0;
    line-height: 30px;
    height: 30px;
    text-align: center
}

.tipo_camera .blocco_camera-title .sx {
    float: left;
    padding: 0;
    line-height: 30px;
    height: 30px;
    margin: 0 5px;
    text-align: left
}

.tipo_camera .blocco_camera-title .dx {
    float: left;
    padding: 0;
    line-height: 30px;
    height: 30px;
    margin: 0 5px
}

.tipo_camera .blocco_camera-title .dx img {
    height: 26px
}

.tipo_camera .blocco_camera-title .freccia i {
    float: right;
    width: 16px;
    height: 16px;
    line-height: 16px;
    margin: 7px;
    padding: 0;
    text-align: center;
    font-size: .7em
}

.tipo_camera .blocco_camera-title .dx i.fa.fa-user {
    font-size: 14px;
    padding-left: 4px;
    width: auto
}

.box_prezzo {
    float: left;
    width: 100%;
    background: #f6f3ef
}

.box_prezzo .riga {
    float: left;
    width: 100%;
    border-bottom: 1px solid #fff;
    line-height: 40px
}

.box_prezzo .riga.riga_totali .label {
    float: left;
    width: 180px;
    margin: 0 10px;
    font-size: 1.2em
}

.box_prezzo .riga_penale_modifica .label {
    float: left;
    width: 180px;
    text-transform: uppercase;
    margin: 0 10px;
    font-size: 1.2em
}

.box_prezzo .riga.riga_totali .risultato {
    float: right;
    width: 110px;
    text-align: right;
    margin-right: 10px;
    font-size: 1.4em;
    color: #6cab6c
}

.box_prezzo .riga.riga_penale_modifica .risultato {
    float: right;
    width: 110px;
    text-align: right;
    margin-right: 10px;
    font-size: 1em;
    line-height: initial;
    padding: 10px 0;
    display: inline-block
}

.box_concludi {
    float: left;
    width: 100%;
    background: #f0ede8
}

.box_concludi .riga {
    float: left;
    width: 100%;
    border-bottom: 1px solid #fff;
    line-height: 40px
}

.box_concludi .riga .label {
    float: left;
    width: 80px;
    text-transform: uppercase;
    margin: 0 5px
}

.box_concludi .riga .risultato {
    float: left;
    width: 190px
}

.box_concludi .riga .risultato .multi_riga {
    float: left;
    line-height: 20px;
    margin: 10px 0
}

.box_concludi .riga.riga_totali.definitivo {
    background: #546c88;
    color: #fff
}

.box_concludi .riga.riga_totali .label {
    float: left;
    width: 160px;
    text-transform: uppercase;
    margin: 0 5px
}

.box_concludi .riga.riga_totali .risultato {
    float: right;
    width: 90px;
    text-align: right;
    margin-right: 10px;
    font-size: 1.3em
}

.box_concludi .riga.condizioni .label {
    float: left;
    width: 100%;
    text-transform: uppercase;
    margin: 0 5px;
    line-height: 20px;
    margin-top: 10px
}

.box_concludi .riga.condizioni .risultato {
    float: right;
    width: 100%;
    text-align: left;
    font-size: .8em;
    line-height: 14px;
    padding: 0 5px 10px 5px;
    box-sizing: border-box
}

#container_calendar {
    float: left;
    width: 320px;
    height: 100%
}

#container_calendar.start {
    min-height: 420px
}

#calendar {
    float: left;
    height: auto;
    width: 320px
}

.seleziona_giorni {
    float: left;
    height: auto;
    width: 320px;
    display: none
}

.seleziona_giorni.seleziona_giorni_flexible {
    float: left;
    height: auto;
    width: 50%;
    display: none
}

.seleziona_giorni .checkin {
    float: left;
    width: 320px;
    margin: 0;
    line-height: 30px;
    height: 30px;
    margin-bottom: 5px
}

.seleziona_giorni .checkin.attivo {
    background: #ddf5de!important;
    -webkit-box-shadow: 0 0 6px 0 rgba(0,0,0,.2);
    -moz-box-shadow: 0 0 6px 0 rgba(0,0,0,.2);
    box-shadow: 0 0 6px 0 rgba(0,0,0,.2)
}

.seleziona_giorni .checkin.attivo a {
    background: #f0ede8
}

.seleziona_giorni .checkin.attivo a:hover {
    background: #546c88
}

.seleziona_giorni .checkin span.sx {
    float: left;
    width: auto;
    height: 30px;
    line-height: 32px;
    margin-left: 5px;
    font-size: .9em
}

.seleziona_giorni .checkin span.sx i {
    margin-right: 5px
}

.seleziona_giorni .checkin span.sx span {
    margin-left: 10px;
    font-weight: 700
}

.seleziona_giorni .checkin span.dx {
    float: right;
    width: auto;
    text-align: right;
    height: 30px;
    line-height: 30px;
    margin-right: 5px;
    font-size: .9em
}

.modifica {
    float: left;
    line-height: 20px;
    height: 20px;
    background: #f0ede8;
    color: #222;
    padding: 0 5px;
    font-size: .9em;
    margin: 5px 0
}

.modifica:hover {
    background: #241c0a;
    color: #fff
}

.seleziona_giorni ul {
    float: left;
    width: 100%;
    margin: 0;
    padding: 0;
    list-style: none;
    height: auto;
    font-size: .9em
}

.seleziona_giorni ul li {
    float: left;
    width: 310px;
    margin: 0;
    padding: 0 5px;
    line-height: 30px;
    height: 30px;
    border-bottom: 1px solid #ddd
}

.seleziona_giorni ul li:hover {
    -webkit-box-shadow: 0 0 6px 0 rgba(0,0,0,.2);
    -moz-box-shadow: 0 0 6px 0 rgba(0,0,0,.2);
    box-shadow: 0 0 6px 0 rgba(0,0,0,.2)
}

.seleziona_giorni ul li.attivo {
    background: #ddf5de!important;
    -webkit-box-shadow: 0 0 6px 0 rgba(0,0,0,.2);
    -moz-box-shadow: 0 0 6px 0 rgba(0,0,0,.2);
    box-shadow: 0 0 6px 0 rgba(0,0,0,.2)
}

.seleziona_giorni ul li:last-child {
    border-bottom: none
}

.seleziona_giorni ul li.we {
    background: #efefef
}

.seleziona_giorni ul li .disp {
    float: left;
    width: 10px;
    line-height: 10px;
    margin: 9px 7px 9px 0;
    border: 1px solid#ccc
}

.seleziona_giorni ul li .disp.available {
    background: #c2fec5
}

.seleziona_giorni ul li .disp.no_available {
    background: red
}

.seleziona_giorni ul li .disp.min_stay {
    background: #e7ffe7
}

.seleziona_giorni ul li .notti {
    float: left;
    width: 60px
}

.seleziona_giorni ul li .partenza {
    float: left;
    width: 100px;
    font-weight: 700
}

.seleziona_giorni ul li .prezzo {
    float: left;
    width: 50px;
    font-weight: 700
}

.seleziona_giorni ul li .prezzo.empty {
    height: 30px
}

.seleziona_giorni ul li .vai {
    float: left;
    width: 77px;
    text-align: right;
    line-height: 20px;
    margin-top: 5px;
    font-size: 9.5px
}

.seleziona_giorni ul li .vai a.seleziona {
    display: inline-block;
    background: #98d098;
    padding: 0 5px;
    color: #fff;
    border-radius: 2px;
    font-size: 10.8px
}

.seleziona_giorni ul li .vai a.seleziona:hover {
    background: #4b844b;
    color: #fff
}

.seleziona_giorni ul li.riepi {
    background: #eee;
    border-bottom: none;
    height: 30px;
    line-height: 30px;
    text-transform: uppercase
}

.seleziona_giorni ul li.riepi:hover {
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none
}

.seleziona_giorni ul li.riepi .disp {
    border: none
}

.seleziona_giorni ul li.riepi .partenza {
    font-weight: 700
}

.seleziona_giorni ul li.riepi .notti {
    font-weight: 700
}

.seleziona_giorni ul li.riepi .prezzo {
    width: 90px
}

.seleziona_giorni ul li .ok {
    color: #6cab6c;
    font-size: 1.4em
}

.box_calendar_date_alternative,.didascalie_bottom {
    float: left;
    width: 100%;
    margin-top: 10px
}

.alternative_date_menu {
    margin: 0;
    text-align: center
}

.today {
    border: 1px solid #44525e!important
}

.day_box.available,.day_box.disp_min_stay,.pointer,a {
    cursor: pointer;
    transition: all .3s ease 0s
}

.month_selector .month_button,.month_selector .select_month {
    display: inline-block
}

.month_selector .month_button.disabled,.month_selector .month_button.disabled:hover {
    opacity: .4;
    cursor: initial;
    background-color: #546c88
}

.month_selector .month_button {
    background-color: #f0ede8;
    margin: 0;
    height: 32px;
    vertical-align: middle
}

.month_selector .month_button:hover {
    color: #fff;
    background-color: #241c0a
}

.month_selector .month_button a {
    color: #222
}

.month_selector .month_button a:hover {
    color: #fff
}

.month_selector .month_button .fa {
    display: block;
    vertical-align: middle;
    padding: 0;
    width: 30px;
    margin: 0;
    line-height: 30px
}

.month_selector .select_month {
    border: 1px solid #ddd;
    margin: 0;
    height: 30px;
    vertical-align: middle;
    font-size: 13px;
    width: 210px
}

.flexible-dates .month_selector .select_month {
    line-height: 30px
}

.month_selector {
    margin-bottom: 10px
}

.prev_month {
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg)
}

.custom_select select {
    padding: 0 0 0 3px;
    margin: 0;
    background: #fff;
    color: #222;
    border: none;
    outline: 0;
    display: inline-block;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    width: 190px;
    height: 30px
}

.custom_select {
    position: relative
}

.custom_select:after {
    content: '>';
    font-size: 10px;
    color: #222;
    -webkit-transform: rotate(90deg);
    -moz-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    right: 8px;
    top: 6px;
    padding: 0 0 2px;
    position: absolute;
    pointer-events: none
}

.custom_select:before {
    content: '';
    right: 0;
    top: 0;
    width: 30px;
    height: 30px;
    background: #fff;
    position: absolute;
    pointer-events: none;
    display: block
}

.search_tools {
    float: left;
    text-align: left;
    width: 100%;
    line-height: 40px
}

.search_tools .name_request {
    float: left;
    padding-bottom: 3px;
    width: 50%
}

.search_tools .night_selector {
    float: left;
    text-align: right;
    width: 50%
}

.chart_selector {
    display: none;
    float: right;
    font-size: 0
}

.chart_selector a {
    text-decoration: none;
    color: #222;
    display: inline-block;
    padding: 3px 10px;
    font-size: 16px;
    border: 1px solid #546c88;
    background: #eee
}

.chart_selector a:first-child {
    -webkit-border-top-left-radius: 3px;
    -webkit-border-bottom-left-radius: 3px;
    -moz-border-radius-topleft: 3px;
    -moz-border-radius-bottomleft: 3px;
    border-top-left-radius: 3px;
    border-bottom-left-radius: 3px
}

.chart_selector a:last-child {
    -webkit-border-top-right-radius: 3px;
    -webkit-border-bottom-right-radius: 3px;
    -moz-border-radius-topright: 3px;
    -moz-border-radius-bottomright: 3px;
    border-top-right-radius: 3px;
    border-bottom-right-radius: 3px
}

.chart_selector a.active,.chart_selector a:hover {
    color: #fff;
    background: #546c88
}

#alternative_calendar {
    margin-top: 2px
}

.calendar_row {
    font-size: 0
}

.calendar_row .day_box {
    font-size: 12px;
    text-align: center;
    position: relative;
    display: inline-block;
    width: 14.28%;
    border: 1px solid #dddccc;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    margin-left: -1px;
    margin-top: -1px;
    vertical-align: middle
}

.calendar_row.day_name .day_box {
    text-transform: uppercase;
    font-weight: 400;
    padding: 5px 0;
    font-size: 11px;
    border: 0;
    vertical-align: middle
}

.calendar_row .day_box .day_number {
    position: absolute;
    left: 0;
    top: 0;
    background: rgba(0,0,0,.1);
    display: block;
    width: 18px;
    line-height: 16px;
    font-size: 11px
}

.calendar_row .day_box span.best_price {
    position: absolute;
    left: 0;
    top: 18px;
    background: url(../img/best_price.png) no-repeat center top;
    background-size: cover;
    width: 12px;
    height: 12px;
    display: none;
    z-index: 2
}

.calendar_row .day_box .events {
    position: absolute;
    right: 2px;
    bottom: 0
}

.calendar_row .day_box .events .fa {
    font-size: 10px;
    margin-left: 3px;
    text-shadow: 0 0 2px rgba(0,0,0,.5)
}

.molto_alta {
    color: #800
}

.alta {
    color: #c00
}

.media {
    color: #e99191
}

.bassa {
    color: #f8dbdb
}

.calendar_row .day_box .day_text {
    padding: 0 2px;
    height: 46px;
    color: #222
}

.calendar_row .day_box .day_text .from {
    display: block;
    font-size: 9px;
    text-align: right;
    line-height: 18px
}

.calendar_row .day_box .day_text .prices {
    display: block;
    font-weight: 700;
    line-height: 12px
}

.calendar_row .day_box .day_text .prices i {
    font-style: normal;
    display: none
}

.calendar_row .day_box .day_text .day_nights {
    display: block;
    font-size: 9px
}

.calendar_row .day_box .day_text .min_nights {
    display: block;
    font-size: 9px;
    line-height: 10px
}

.calendar_row .day_box.no-disp .day_text .prices {
    font-weight: 400;
    font-size: 16px
}

.calendar_row .day_box .day_text .reserve_button {
    display: block;
    font-size: .9em;
    font-weight: 700
}

.calendar_row .day_box .day_text .reserve_button a {
    display: inline-block;
    background: #546c88;
    font-size: 9px;
    padding: 0 5px;
    color: #fff;
    text-decoration: none
}

.calendar_row .day_box .day_text .reserve_button a:hover {
    background: #333
}

.day_box.past_date .day_number {
    color: #222;
    opacity: .6
}

.day_box.past_date {
    background: #f7f7f7
}

.day_box.header.weekend,.day_box.past_date.weekend {
    background: #f8f8f8
}

.day_box.current_month,.day_box.other_month,.leg_available {
    background: #c2fec5
}

.day_box.weekend {
    background: #c2e9c9
}

.day_box.no-disp,.leg_unavailable {
    background: #fdd
}

.day_box.disp_min_stay,.leg_min_stay {
    background: #f9ffa8
}

.day_box.disp_min_stay.weekend {
    background: #e8ef96
}

.day_box.other_month {
    opacity: .6
}

.day_box.selected {
    border-color: #666;
    z-index: 1;
    -webkit-box-shadow: inset 0 0 3px 0 rgba(0,0,0,.5);
    -moz-box-shadow: inset 0 0 3px 0 rgba(0,0,0,.5);
    box-shadow: inset 0 0 3px 0 rgba(0,0,0,.5)
}

.day_box.no-disp .day_text {
    color: #c00
}

.day_box.available:hover {
    position: relative;
    z-index: 3;
    -webkit-box-shadow: 0 0 5px 0 rgba(0,0,0,.5);
    -moz-box-shadow: 0 0 5px 0 rgba(0,0,0,.5);
    box-shadow: 0 0 5px 0 rgba(0,0,0,.5);
    transition: all .3s ease 0s;
    border-color: #888
}

.day_box.best_price span.best_price {
    display: block
}

.day_box.best_price .day_text {
    background: #cceef6
}

#legenda_calendario {
    float: left;
    width: 100%;
    font-size: 11px;
    clear: both
}

#legenda_calendario span {
    display: inline-block;
    width: 12px;
    height: 12px;
    vertical-align: middle;
    margin-right: 5px;
    border: 1px solid #dddccc
}

#legenda_calendario .voce_legenda {
    float: left;
    width: 45%;
    font-size: .9em;
    margin-bottom: 5px
}

.value {
    display: none
}

.didascalia_top {
    float: left;
    line-height: 30px;
    text-align: right;
    width: 100%
}

.dida_best_rates {
    float: right;
    text-align: right;
    width: 100%;
    line-height: 30px
}

.dida_events {
    float: left
}

.titolo_grafico {
    text-align: center;
    font-weight: 700;
    padding-top: 5px
}

#dida {
    float: left;
    width: 100%;
    line-height: 30px;
    height: 30px;
    font-size: .8em
}

#dida .dida_sx {
    float: left;
    width: 35%
}

#dida .dida_dx {
    float: left;
    width: 62%;
    text-align: right
}

.b_price {
    background: #cceef6
}

#nome_hotel {
    float: left;
    width: 100%;
    height: 50px;
    line-height: 50px;
    background: #546c88;
    color: #fff;
    font-size: 1.5em;
    text-align: center
}

#nome_hotel.nome {
    float: left;
    width: 100%;
    height: 50px;
    line-height: 50px;
    background: #546c88;
    color: #fff;
    font-size: 2em;
    text-align: center
}

#scheda {
    float: left;
    width: 96%;
    height: auto;
    margin: 0 2% 2% 2%
}

.campo_scheda {
    float: left;
    width: 100%;
    height: auto;
    background: #fff;
    box-sizing: border-box;
    vertical-align: bottom;
    display: inline-block;
    -webkit-transition: .3s ease-in-out;
    -moz-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
    -webkit-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    -moz-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    box-shadow: 0 3px 3px 0 rgba(50,50,50,.2)
}

#scheda .accordion {
    float: left;
    width: 100%;
    margin: 0;
    padding: 0;
    line-height: 40px;
    height: 40px;
    background: #f0ede8;
    text-decoration: none;
    cursor: pointer;
    box-sizing: border-box;
    border-bottom: 1px solid #ddd
}

#scheda .accordion .tit {
    float: left;
    line-height: 40px;
    font-size: 1.2em;
    margin-left: 5px
}

#scheda .accordion-open {
    background: #546c88;
    color: #fff
}

#scheda .accordion-open .freccia {
    float: right;
    width: auto;
    height: 20px;
    padding: 0;
    margin: 10px;
    color: #fff!important;
    background: #546c88;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    border-radius: 10px
}

#scheda .accordion-open .freccia i,.accordion-close .freccia i {
    float: left;
    width: 20px!important;
    height: 20px!important;
    line-height: 20px!important;
    padding: 0;
    margin: 0;
    text-align: center;
    color: #fff!important
}

#scheda .accordion-open .freccia i {
    -ms-transform: rotate(90deg);
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg)
}

#scheda .accordion-close .freccia {
    float: right;
    padding: 0;
    margin: 10px;
    width: auto;
    height: 20px;
    background: #6cab6c;
    color: #fff;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    border-radius: 10px
}

.accordion.full.accordion-open {
    margin-bottom: 5px
}

.container_scheda {
    float: left;
    width: 100%;
    padding: 10px;
    background: #f0ede8;
    margin: 0;
    box-sizing: border-box;
    border-bottom: 1px solid #ddd
}

#blocco_scheda {
    float: left;
    width: 100%;
    height: auto;
    background: rgba(255,255,255,.8);
    box-sizing: border-box;
    margin-bottom: 18px;
    display: block
}

.tit i {
    display: inline-block;
    text-align: center;
    width: 24px;
    font-size: .8em
}

#calendario_date_flessibili {
    margin-bottom: 18px
}

.flexible-dates-conteiner {
    float: left;
    width: 100%;
    padding: 10px 20px;
    height: auto;
    margin: 0;
    box-sizing: border-box
}

.flexible-dates-conteiner .flexible-dates {
    float: left;
    width: 50%
}

.flexible-dates .month_selector {
    width: 100%
}

.no_soluzioni {
    float: left;
    width: 100%;
    padding: 20px;
    min-height: 70px;
    line-height: 25px;
    box-sizing: border-box
}

.seleziona_camera {
    float: left;
    width: 100%;
    height: auto;
    background: #fff;
    margin-bottom: 10px;
    box-sizing: border-box;
    vertical-align: bottom;
    display: inline-block;
    -webkit-transition: .3s ease-in-out;
    -moz-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
    -webkit-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    -moz-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    box-shadow: 0 3px 3px 0 rgba(50,50,50,.2)
}

.seleziona_camera h2 {
    line-height: 20px;
    text-align: center;
    color: #fff;
    margin: 0;
    padding: 10px 20px;
    font-size: 1.2em;
    background: #546c88;
    font-weight: 400;
    text-transform: uppercase;
    display: block
}

.seleziona_camera h2 .tit {
    display: inline-block;
    width: auto;
    line-height: 20px
}

.seleziona_camera h2 .val {
    display: inline-block;
    width: 16px;
    height: 16px;
    line-height: 16px;
    background: #f0ede8;
    margin: 6px;
    color: #222;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    border-radius: 8px
}

.seleziona_camera .eti_lines {
    float: left;
    width: 100%
}

.seleziona_camera .eti_lines .riga_riepilogo_date {
    float: left;
    width: 100%;
    line-height: 25px;
    padding: 0 10px
}

.seleziona_camera .eti_lines .riga_riepilogo_date .label {
    display: block;
    float: left;
    width: 15%
}

.seleziona_camera .eti_lines .riga_riepilogo_date .data_ricerca {
    display: block;
    float: left;
    width: 85%;
    box-sizing: border-box;
    color: red;
    text-align: left
}

.seleziona_camera .eti_lines .riga_riepilogo_date .data_ricerca .ex {
    text-decoration: line-through;
    color: #222;
    padding: 0 5px
}

.seleziona_camera span.n_ospiti {
    margin-left: 5px
}

.seleziona_camera span.n_ospiti i.fa {
    font-size: 14px;
    vertical-align: middle
}

.pacchetto_selezionato h2 {
    float: left;
    width: 100%;
    height: 50px;
    line-height: 50px;
    background: rgba(255,255,255,.8);
    text-align: center;
    margin: 0;
    padding: 0;
    text-transform: uppercase
}

#details {
    width: 100%;
    display: none
}

span.singolo-accessorio {
    display: inline-block;
    padding: 5px 8px;
    margin-right: 5px;
    margin-bottom: 5px;
    background: rgba(0,0,0,.05);
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    border-radius: 5px
}

span.singolo-accessorio:before {
    content: "\f00c";
    display: inline-block;
    font: normal normal normal 14px/1 FontAwesome;
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    margin-right: 5px
}

#rate_details {
    width: 620px;
    display: none
}

#rate_details h2 {
    margin-top: 15px
}

#rate_details .foto img {
    width: 100%
}

.fancybox-outer #rate_details {
    width: 100%
}

.tabs_nav {
    float: left;
    margin: 0;
    padding: 0;
    list-style: none;
    width: 100%
}

.tabs_nav li a {
    float: left;
    padding: 10px 15px;
    background: #f0ede8;
    text-decoration: none;
    color: #222;
    opacity: .5
}

.tabs_nav li a:hover {
    opacity: 1
}

.tabs_nav li a.active {
    opacity: 1
}

.panels {
    float: left;
    width: 620px;
    background: #f0ede8;
    padding: 10px;
    box-sizing: border-box
}

.panels_servizi {
    float: left;
    width: 100%;
    background: #fff;
    padding: 0;
    box-sizing: border-box
}

.box_scheda {
    padding: 5px
}

.tabs_nav_servizi {
    float: left;
    margin: 0;
    padding: 0;
    list-style: none;
    width: 100%
}

.tabs_nav_servizi li {
    float: left;
    width: 100%
}

.tabs_nav_servizi li a {
    width: auto;
    padding: 0;
    background: #f0ede8;
    text-decoration: none;
    text-transform: uppercase;
    line-height: 40px;
    color: #222;
    opacity: .5;
    font-size: .9em;
    text-align: center
}

.tabs_nav_servizi li a:hover {
    opacity: 1
}

.tabs_nav_servizi li a.active {
    opacity: 1
}

section {
    float: left;
    width: 100%;
    height: auto;
    margin-bottom: 15px
}

.campo {
    float: left;
    width: 100%;
    height: auto;
    background: #fff;
    box-sizing: border-box;
    vertical-align: bottom;
    display: inline-block;
    -webkit-transition: .3s ease-in-out;
    -moz-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
    -webkit-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    -moz-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    position: relative
}

.campo:hover {
    -ms-transform: translate(5px,0);
    -webkit-transform: translate(5px,0);
    transform: translate(5px,0)
}

.campo .foto {
    position: relative;
    float: left;
    width: 240px;
    height: auto;
    padding: 10px;
    box-sizing: border-box
}

.campo .foto_camera img {
    float: left;
    width: 100%;
    min-height: 150px
}

.campo .foto .lente {
    position: absolute;
    bottom: 10px;
    left: 10px;
    width: 30px;
    height: 30px;
    line-height: 30px;
    background: rgba(255,255,255,.8);
    text-align: center;
    font-size: 1.2em;
    color: #222!important
}

.campo .foto .galleria {
    position: absolute;
    bottom: 10px;
    left: 34px;
    width: 24px;
    height: 24px;
    line-height: 24px;
    background: rgba(255,255,255,.8);
    text-align: center;
    font-size: .9em;
    color: #222!important
}

.campo .foto .lente:hover {
    background: #fff
}

.fancybox-outer .foto .chiudi_gallery,.fancybox-outer .foto .nomecamera1,.fancybox-outer .foto .pause1,.fancybox-outer .foto .start1,.fancybox-outer .foto span.lente {
    display: none
}

.campo .foto .galleria:hover {
    background: #fff
}

.targetta_offer {
    background: rgba(241,19,15,.7)!important;
    margin: 0;
    position: absolute;
    color: #fff;
    top: 15px;
    left: 10px;
    padding: 2px 10px;
    text-transform: uppercase;
    font-size: 10px;
    letter-spacing: .5px;
    font-weight: 700
}

.targetta_offer:after {
    content: "Special Offer"
}

.campo.thanks-page .tariffe li:first-child {
    border-bottom: 1px solid #ddd;
    padding-bottom: 10px
}

.campo.thanks-page .tariffe h2 {
    padding: 0;
    line-height: 20px;
    color: #333!important;
    font-weight: 400!important
}

.campo.thanks-page .tariffe h2 .nome_camera {
    color: #333;
    font-weight: 400;
    font-size: 16px;
    text-align: left
}

.box_gallery {
    float: left;
    width: 100%;
    height: 300px;
    background: #ccc
}

.full {
    float: left;
    width: 100%!important
}

.chiudi_gallery {
    position: absolute;
    top: 10px;
    right: 10px;
    width: 30px;
    height: 30px;
    line-height: 30px;
    text-align: center;
    z-index: 99999;
    background: rgba(240,237,232,.7);
    font-size: .8em;
    display: block;
    cursor: pointer
}

.nomecamera1 {
    position: absolute;
    top: 10px;
    left: 10px;
    width: auto;
    height: 30px;
    line-height: 30px;
    color: #fff;
    z-index: 99999;
    font-size: 1.6em;
    text-shadow: 0 1px 1px #4d4d4d
}

.pause1 {
    position: absolute;
    bottom: 10px;
    left: 10px;
    width: 30px;
    height: 30px;
    line-height: 30px;
    text-align: center;
    z-index: 99999;
    background: rgba(240,237,232,.7);
    font-size: .8em
}

.start1 {
    position: absolute;
    bottom: 10px;
    left: 45px;
    width: 30px;
    height: 30px;
    line-height: 30px;
    text-align: center;
    z-index: 99999;
    background: rgba(240,237,232,.7);
    font-size: .8em
}

.prev1 {
    position: absolute;
    top: 50%;
    left: 10px;
    margin-top: -15px;
    width: 30px;
    line-height: 30px;
    text-align: center;
    height: 30px;
    z-index: 99999;
    background: rgba(240,237,232,.7)
}

.next1 {
    position: absolute;
    top: 50%;
    right: 10px;
    margin-top: -15px;
    width: 30px;
    line-height: 30px;
    text-align: center;
    height: 30px;
    z-index: 99999;
    background: rgba(240,237,232,.7)
}

.chiudi_gallery:hover,.next1:hover,.pause1:hover,.prev1:hover,.start1:hover {
    background: #f0ede8;
    color: #546c88
}

.campo .tariffe {
    float: left;
    width: 320px;
    margin: 10px 5px 0 0;
    padding: 0
}

#a_soluzioni_preventivo_mail span {
    margin-left: 4px
}

.tariffe .notifyjs-bootstrap-base span {
    font-size: 12px
}

.accordion {
    float: left;
    width: 325px;
    margin: 0 0 10px;
    padding: 0;
    line-height: 30px;
    min-height: 30px;
    background: #f0ede8;
    text-decoration: none;
    cursor: pointer;
    box-sizing: border-box
}

.accordion .tariffa {
    float: right;
    line-height: 30px;
    font-size: 1em
}

.accordion-open {
    background: #f0ede8
}

.accordion-open .freccia {
    float: right;
    width: auto;
    height: 20px;
    padding: 0;
    margin: 5px 10px;
    color: #fff!important;
    background: #546c88;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    border-radius: 10px
}

.accordion-close .freccia i,.accordion-open .freccia i {
    float: none;
    width: 20px!important;
    height: 20px!important;
    line-height: 20px!important;
    padding: 0;
    margin: 0;
    text-align: center;
    color: #fff!important;
    display: block
}

.accordion-open .freccia i {
    -ms-transform: rotate(270deg);
    -webkit-transform: rotate(270deg);
    transform: rotate(270deg)
}

.accordion-close .freccia {
    float: right;
    padding: 0;
    margin: 5px 10px;
    width: auto;
    height: 20px;
    background: #98d098;
    color: #fff;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    -ms-transform: rotate(90deg);
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    border-radius: 10px
}

.accordion-close .select,.accordion-open .select {
    float: left;
    width: auto;
    padding: 0 0 0 5px;
    line-height: 20px!important
}

.tariffa .price {
    font-size: 1.4em;
    font-weight: 700
}

.container_tipo {
    float: left;
    width: 100%;
    padding: 0 10px 10px 10px;
    background: #f0ede8;
    margin: 0;
    box-sizing: border-box
}

.row_titolo {
    float: left;
    width: 100%;
    height: auto;
    padding: 10px;
    box-sizing: border-box;
    background: #f0ede8
}

.row_titolo .sin {
    float: left;
    width: 338px;
    height: auto;
    padding: 0 5px 0 0;
    box-sizing: border-box;
    border-right: 1px solid #ddd
}

.row_titolo .sin h2 {
    width: auto;
    margin: 0 5px 0 0;
    padding: 0;
    font-size: 18px;
    line-height: 30px;
    font-weight: 400;
    display: inline
}

.row_titolo .sin i {
    float: left;
    width: auto;
    font-size: 12px;
    line-height: 30px;
    padding: 0;
    vertical-align: text-bottom;
    margin-right: 5px
}

.row_titolo .sin p {
    float: left;
    width: 99%;
    line-height: 20px;
    margin: 0;
    padding: 0
}

.row_titolo .sin p.secret_deal {
    background: #ffbf00;
    color: #000;
    border: 1px solid #000;
    padding: 5px 10px;
    width: 95%
}

.descri_pacchetto .name img,.riepilogo_promo .riga_promo img,.row_titolo .sin img {
    vertical-align: text-bottom;
    max-width: 80px;
    height: auto;
    width: 100%
}

.row_titolo .des {
    float: left;
    width: 180px;
    height: 100%;
    padding: 0 0 0 5px;
    box-sizing: border-box;
    margin-left: 1%
}

.row_titolo .des .cond {
    float: left;
    width: 100%;
    height: auto;
    margin-top: 4px
}

.row_titolo .des .cond i {
    float: left;
    width: 24px
}

.row_titolo .des .cond span {
    float: left;
    width: 151px;
    line-height: 15px;
    margin-top: 2px
}

.row_titolo .des .cond span span {
    float: left;
    width: 100%;
    text-transform: uppercase
}

.barrato {
    text-decoration: line-through
}

.blocco_tipo {
    float: left;
    width: 100%;
    height: auto;
    background: #fff
}

.blocco_tipo ul {
    float: left;
    width: 100%;
    list-style: none;
    margin: 0;
    padding: 0
}

.blocco_tipo ul.offerta_blocco {
    border-bottom: 2px solid red;
    border-top: 2px solid red
}

.blocco_tipo ul li {
    float: left;
    width: 100%;
    height: auto;
    border-bottom: 1px solid #ddd;
    padding: 0 10px;
    box-sizing: border-box;
    line-height: 40px;
    position: relative
}

.blocco_tipo ul li:hover {
    -webkit-box-shadow: 0 0 6px 0 rgba(0,0,0,.2);
    -moz-box-shadow: 0 0 6px 0 rgba(0,0,0,.2);
    box-shadow: 0 0 6px 0 rgba(0,0,0,.2)
}

.blocco_tipo ul li .cont-nome_tariffa {
    float: left;
    width: 42%;
    padding: 0 5px 0 0;
    box-sizing: border-box;
    position: relative
}

.blocco_tipo ul li .offer {
    float: right;
    width: 15%;
    padding: 0 5px;
    box-sizing: border-box;
    text-transform: uppercase;
    color: red;
    text-align: right;
    font-size: 1.2em
}

.blocco_tipo ul li .number {
    float: right;
    width: 10%;
    padding: 0 5px;
    box-sizing: border-box
}

.blocco_tipo ul li .price_day {
    float: right;
    width: 13%;
    padding: 0;
    box-sizing: border-box
}

.blocco_tipo ul li .price_day span {
    float: left;
    width: auto
}

.blocco_tipo ul li .price_day span.flaticon-info34 {
    float: left;
    font-size: .8em;
    margin-left: 5px
}

.blocco_tipo ul li .reserve {
    float: right;
    width: 20%;
    box-sizing: border-box;
    text-align: right
}

.blocco_tipo ul li .reserve a {
    display: inline-block;
    line-height: 28px;
    width: 96%;
    text-align: center;
    background: #98d098;
    color: #fff;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px
}

.blocco_tipo ul li .reserve a:hover {
    background: #4b844b;
    color: #fff
}

.blocco_tipo ul li .reserve a.unlock {
    background: #ffc200;
    color: #333
}

.blocco_tipo ul li .reserve a.unlock:hover {
    background: #241c0a;
    color: #fff
}

.description {
    float: left;
    width: 303px
}

.tariffe {
    float: left;
    width: 303px;
    height: auto;
    min-height: 110px;
    padding: 10px 10px 10px 0;
    list-style: none;
    margin: 0
}

.tariffe li {
    float: left;
    width: 100%;
    margin-bottom: 10px;
    border-bottom: 1px dotted #241c0a
}

.tariffe li:last-child {
    margin-bottom: 0;
    border-bottom: none
}

.tariffe li h2 {
    float: left;
    width: 100%;
    margin: 0;
    padding: 0
}

.tariffe li h2 .nome_camera {
    cursor: pointer;
    font-weight: 600;
    color: #546c88;
    font-size: 1em
}

.tariffe li p {
    float: left;
    width: 100%;
    margin: 5px 0
}

.tariffe li .riga {
    float: left;
    width: 100%;
    padding: 0;
    height: 35px;
    line-height: 35px;
    margin: 10px 0
}

.offers i {
    float: left;
    width: 25px;
    height: 35px;
    line-height: 35px
}

.offers {
    float: left;
    color: #ce3333
}

.tariffe li .riga .prezzo {
    float: right;
    width: auto;
    height: 35px;
    line-height: 40px;
    text-align: right;
    margin-left: 20px;
    font-size: 1.3em
}

.tariffe li .riga .prenota {
    float: right;
    width: auto;
    height: 35px;
    text-align: right;
    margin-left: 20px
}

#banner {
    float: left;
    width: 100%;
    height: auto;
    box-sizing: border-box
}

#first_page_banner {
    float: left;
    width: 100%;
    height: auto;
    box-sizing: border-box
}

.singola_promo {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    height: 350px
}

.box {
    height: 350px;
    width: 100%;
    display: block
}

.box img {
    position: relative;
    height: 350px;
    width: auto;
    top: 0;
    left: 0;
    z-index: 0
}

.inverse {
    -ms-transform: rotate(180deg);
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg)
}

ul.scheda_tabs {
    float: left;
    margin: 0;
    padding: 0;
    list-style: none
}

ul.scheda_tabs li {
    float: left
}

ul.scheda_tabs li a {
    float: left;
    width: auto;
    padding: 0;
    line-height: 40px;
    background: #f0ede8;
    text-decoration: none;
    color: #222;
    opacity: .5;
    font-size: 1em;
    text-align: center
}

ul.scheda_tabs li.active a {
    opacity: 1
}

ul.scheda_tabs li a:hover {
    opacity: 1
}

.contenitore_tabs {
    clear: both;
    min-height: 100px;
    height: auto!important;
    padding: 15px 20px;
    overflow: auto;
    text-align: justify;
    line-height: 1.5em
}

#google_map {
    margin-top: 8px
}

.campo.thanks-page .tariffe h2 .nome_camera i.fa {
    font-size: 14px;
    margin-left: 4px
}

.conferma_inviata_msg {
    display: block;
    padding: 15px 10px;
    font-size: 1.2em;
    clear: both;
    background: #3fa943;
    color: #fff;
    text-align: center
}

.campo_servizi {
    float: left;
    width: 100%;
    height: auto;
    box-sizing: border-box;
    vertical-align: bottom;
    display: inline-block;
    -webkit-transition: .3s ease-in-out;
    -moz-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out
}

.campo_servizi h2 {
    float: left;
    width: 100%;
    height: 40px;
    line-height: 40px;
    text-align: center;
    background: #546c88;
    color: #fff;
    margin: 0;
    padding: 0;
    text-transform: uppercase
}

.campo_servizi .elenco {
    float: left;
    margin: 0;
    padding: 0;
    list-style: none;
    width: 100%;
    height: auto
}

.campo_servizi .elenco li {
    float: left;
    width: 100%;
    height: auto;
    margin-bottom: 10px;
    background: #fff;
    padding-bottom: 5px;
    -webkit-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    -moz-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    box-shadow: 0 3px 3px 0 rgba(50,50,50,.2)
}

.campo_servizi .elenco li ul li {
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none
}

.campo_servizi .elenco li:last-child {
    border-bottom: none
}

.campo_servizi .foto {
    float: left;
    width: 164px;
    height: 100px;
    padding: 10px
}

.campo_servizi .foto img {
    float: left;
    width: 164px;
    height: 100px
}

.campo_servizi .elenco li .blocco_servizio {
    float: left;
    width: 371px;
    height: auto;
    margin: 10px 0
}

.campo_servizi ul li .prezzo {
    float: left;
    width: 100%;
    margin: 0;
    padding: 0 5px;
    line-height: 30px;
    height: 30px;
    text-decoration: none;
    box-sizing: border-box
}

.campo_servizi .accordion {
    float: left;
    width: 100%;
    margin: 0;
    padding: 0;
    min-height: 30px;
    background: #f0ede8;
    text-decoration: none;
    cursor: pointer;
    box-sizing: border-box
}

.campo_servizi .accordion .nome_servizio {
    float: left;
    font-size: 1.2em;
    padding: 10px;
    line-height: initial;
    width: calc(100% - 60px);
    display: block
}

.campo_servizi .accordion-open {
    background: #f0ede8;
    color: #333
}

.campo_servizi .accordion-open .freccia {
    float: right;
    width: auto;
    height: 20px;
    padding: 0;
    margin: 10px;
    color: #fff!important;
    background: #546c88;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    border-radius: 10px
}

.accordion-close .freccia i,.campo_servizi .accordion-open .freccia i {
    float: none;
    width: 20px!important;
    height: 20px!important;
    line-height: 20px!important;
    padding: 0;
    margin: 0;
    text-align: center;
    color: #fff!important;
    display: block
}

.campo_servizi .accordion-open .freccia i {
    -ms-transform: rotate(270deg);
    -webkit-transform: rotate(270deg);
    transform: rotate(270deg)
}

.campo_servizi .accordion-close .freccia {
    float: right;
    padding: 0;
    margin: 10px;
    width: auto;
    height: 20px;
    background: #546c88;
    color: #fff;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    border-radius: 10px
}

.campo_servizi .descrizione_servizio {
    float: left;
    width: 100%;
    height: auto;
    padding: 0 5px;
    box-sizing: border-box;
    border-bottom: 1px solid #ddd
}

.campo_servizi .blocco_servizio .tariffa_servizio {
    float: left;
    width: 100%;
    margin: 0;
    padding: 0
}

.campo_servizi .blocco_servizio .tariffa_servizio .row.titolo {
    font-weight: 700
}

.campo_servizi .blocco_servizio .tariffa_servizio .row {
    float: left;
    width: 100%;
    min-height: 40px;
    border-bottom: 1px solid #ddd;
    margin: 0;
    list-style: none;
    background: #fff;
    padding: 0 2%;
    box-sizing: border-box;
    cursor: pointer;
    display: table;
    vertical-align: middle
}

.campo_servizi .blocco_servizio .tariffa_servizio .row.titolo {
    line-height: 20px
}

.campo_servizi .blocco_servizio .tariffa_servizio .row div {
    float: none!important;
    display: table-cell;
    vertical-align: middle;
    padding-right: 3px
}

.campo_servizi .blocco_servizio .tariffa_servizio .row .prezzo span.barrato,.prezzo span.price {
    display: block;
    vertical-align: middle;
    line-height: 16px
}

.campo_servizi .blocco_servizio .tariffa_servizio .row .prezzo span.barrato {
    font-weight: 400
}

.campo_servizi .blocco_servizio .tariffa_servizio .row .prezzo span.price {
    font-weight: 700;
    font-size: 1.1em
}

.campo_servizi .blocco_servizio .tariffa_servizio .row.lista:hover {
    -webkit-box-shadow: 0 0 6px 0 rgba(0,0,0,.2);
    -moz-box-shadow: 0 0 6px 0 rgba(0,0,0,.2);
    box-shadow: 0 0 6px 0 rgba(0,0,0,.2)
}

.campo_servizi .blocco_servizio .tariffa_servizio .row.last {
    border-bottom: none
}

.campo_servizi .blocco_servizio .tariffa_servizio .row .camera {
    float: left;
    min-height: 40px
}

.campo_servizi .blocco_servizio .tariffa_servizio .row .giorno {
    float: left;
    min-height: 40px
}

.campo_servizi .blocco_servizio .tariffa_servizio .row .prezzo {
    float: left;
    min-height: 40px
}

.campo_servizi .blocco_servizio .tariffa_servizio .row .qta {
    float: left;
    min-height: 40px;
    text-align: right;
    margin: 0 1%
}

.campo_servizi .blocco_servizio .tariffa_servizio .row .tot {
    float: left;
    min-height: 40px;
    text-align: right
}

.campo_servizi .blocco_servizio .tariffa_servizio .row .remove {
    float: left;
    width: 4%;
    min-height: 40px;
    text-align: right
}

.tariffa_servizio .row .remove a i.fa {
    background: #fff!important;
    display: block;
    opacity: 1
}

.desc_camera .box_riepi .riga.servizi.remove span.remove a i.fa,.tariffa_servizio .row .remove a i.fa:hover {
    color: #d33!important
}

.campo_servizi .blocco_servizio .tariffa_servizio.multiroom .row .camera {
    width: 20%;
    font-weight: 700
}

.campo_servizi .blocco_servizio .tariffa_servizio.multiroom .row .camera .camera_name,.campo_servizi .blocco_servizio .tariffa_servizio.multiroom .row .camera .camera_occ {
    display: block
}

.campo_servizi .blocco_servizio .tariffa_servizio.multiroom .row .camera .camera_occ i.fa {
    padding: 0 1px;
    font-size: 14px
}

.campo_servizi .blocco_servizio .tariffa_servizio.multiroom .row .giorno {
    width: 18%
}

.campo_servizi .blocco_servizio .tariffa_servizio.multiroom .row .prezzo {
    width: 18%
}

.campo_servizi .blocco_servizio .tariffa_servizio.multiroom .row .qta {
    width: 20%
}

.campo_servizi .blocco_servizio .tariffa_servizio.multiroom .row .tot {
    width: 18%
}

.campo_servizi .blocco_servizio .tariffa_servizio.single_room .row .giorno {
    width: 22%
}

.campo_servizi .blocco_servizio .tariffa_servizio.single_room .row .prezzo {
    font-weight: 700;
    width: 27%
}

.campo_servizi .blocco_servizio .tariffa_servizio.single_room .row .qta {
    width: 23%
}

.campo_servizi .blocco_servizio .tariffa_servizio.single_room .row .tot {
    width: 22%
}

.campo_servizi .blocco_servizio .tariffa_servizio.multiroom.no_giorno .row .camera {
    width: 27%
}

.campo_servizi .blocco_servizio .tariffa_servizio.multiroom.no_giorno .row .prezzo {
    width: 21%
}

.campo_servizi .blocco_servizio .tariffa_servizio.multiroom.no_giorno .row .qta {
    width: 24%
}

.campo_servizi .blocco_servizio .tariffa_servizio.multiroom.no_giorno .row .tot {
    width: 22%
}

.campo_servizi .blocco_servizio .tariffa_servizio.single_room.no_giorno .row .prezzo {
    width: 32%
}

.campo_servizi .blocco_servizio .tariffa_servizio.single_room.no_giorno .row .qta {
    width: 40%
}

.campo_servizi .blocco_servizio .tariffa_servizio.single_room.no_giorno .row .tot {
    width: 22%
}

.campo_servizi .blocco_servizio .tariffa_servizio .row .qta a.seleziona_orario {
    float: left;
    width: 100%!important;
    background: #f0ede8;
    line-height: 20px;
    padding: 2px 5px;
    box-sizing: border-box;
    margin: 10px 0;
    text-align: center;
    display: table;
    vertical-align: middle
}

.campo_servizi .blocco_servizio .tariffa_servizio .row .qta a.seleziona_orario i {
    width: 10px;
    height: 20px;
    padding: 0;
    margin: 0;
    text-align: center;
    display: table-cell;
    vertical-align: middle
}

.campo_servizi .blocco_servizio .tariffa_servizio .row .qta a.seleziona_orario.active i {
    -ms-transform: rotate(90deg);
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg)
}

.campo_servizi .blocco_servizio .tariffa_servizio .row .qta a.seleziona_orario.active,.campo_servizi .blocco_servizio .tariffa_servizio .row .qta a.seleziona_orario:hover {
    background: #546c88;
    color: #fff
}

.campo_servizi .blocco_servizio .tariffa_servizio .row.fascia_oraria {
    height: auto;
    display: none;
    background: #f0ede8;
    box-sizing: border-box;
    margin-bottom: 10px;
    border-top: 1px solid #ddd
}

.campo_servizi .blocco_servizio .tariffa_servizio .row.fascia_oraria ul {
    float: left;
    width: 100%;
    margin: 0;
    padding: 0
}

.campo_servizi .blocco_servizio .tariffa_servizio .row.fascia_oraria ul li {
    float: left;
    width: 100%;
    line-height: 20px;
    border-bottom: 1px solid #fff;
    margin: 0;
    padding: 3px 0;
    list-style: none;
    box-sizing: border-box;
    display: table;
    background: #f0ede8
}

.campo_servizi .blocco_servizio .tariffa_servizio .row.fascia_oraria ul li:last-child {
    border-bottom: none
}

.campo_servizi .blocco_servizio .tariffa_servizio .row.fascia_oraria ul li .orario {
    float: left;
    width: 50%;
    line-height: 40px;
    height: 40px
}

.campo_servizi .blocco_servizio .tariffa_servizio .row.fascia_oraria ul li .fascia {
    float: left;
    width: 50%;
    line-height: 40px;
    text-align: right
}

.campo_servizi .blocco_servizio .tariffa_servizio .row.fascia_oraria ul li .fascia label {
    float: left;
    width: 100%;
    line-height: 25px;
    border-bottom: 1px solid #fff;
    text-align: left;
    height: 25px
}

.campo_servizi .blocco_servizio .tariffa_servizio .row.fascia_oraria ul li .fascia label:last-child {
    border-bottom: none
}

.campo_servizi .blocco_servizio .tariffa_servizio .row.fascia_oraria ul li .fascia label div:first-child {
    float: left;
    width: 40%;
    text-align: left
}

.campo_servizi .blocco_servizio .tariffa_servizio .row.fascia_oraria ul li .fascia label div:last-child {
    float: left;
    width: 55%;
    text-align: right
}

.campo_servizi .blocco_servizio .tariffa_servizio .row.fascia_oraria ul li .fascia label div:last-child .qty {
    height: 20px
}

.campo_servizi .blocco_servizio .campo_note_servizio {
    margin-bottom: 10px;
    padding: 5px 15px;
    float: left!important;
    width: auto!important;
    clear: both
}

.campo_servizi .blocco_servizio .campo_note_servizio input {
    border: 2px solid #ddd;
    border-radius: 0;
    color: #222;
    margin: 0 10px;
    -webkit-transition: border-color .3s,color .3s;
    transition: border-color .3s,color .3s;
    -webkit-appearance: none;
    box-sizing: border-box;
    padding: 5px
}

.campo_servizi .blocco_servizio .tariffa_servizio .row .tot span.totale_servizio {
    font-weight: 700;
    font-size: 1.1em
}

.riepilogo_servizi {
    float: left;
    width: 100%;
    text-align: right;
    font-size: 1.3em;
    height: 50px;
    padding: 0 15px;
    box-sizing: border-box;
    background: #f0ede8;
    margin: 10px 0 0
}

.riepilogo_servizi .continua,.riepilogo_servizi .txt {
    display: inline-block;
    margin-left: 15px;
    line-height: 30px;
    height: 30px;
    margin: 10px 0
}

.riepilogo_servizi .continua {
    padding: 0 15px;
    background: #6cab6c;
    color: #fff;
    margin-left: 15px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px
}

.riepilogo_servizi .continua:hover {
    background: #4b844b;
    color: #fff
}

.riepilogo_servizi span.totale_servizi_selezionati {
    font-weight: 700
}

.nessun_servizio {
    float: left;
    width: 100%;
    text-align: right;
    font-size: 1.3em;
    line-height: 30px;
    height: 30px;
    padding: 0;
    box-sizing: border-box;
    margin: 10px 0 15px 0
}

.nessun_servizio .continua {
    display: inline-block;
    margin: 0
}

.nessun_servizio .continua {
    padding: 0 10px;
    background: #6cab6c;
    color: #fff;
    font-size: .8em
}

.nessun_servizio .continua:hover {
    background: #4b844b;
    color: #fff
}

.campi_dati {
    float: left;
    width: 100%;
    height: auto;
    background: #fff;
    box-sizing: border-box;
    vertical-align: bottom;
    display: inline-block;
    -webkit-transition: .3s ease-in-out;
    -moz-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
    -webkit-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    -moz-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    box-shadow: 0 3px 3px 0 rgba(50,50,50,.2)
}

#form_salvataggio_prenotazione .titolo_tabella,.campi_dati h2 {
    float: left;
    width: 100%;
    height: auto;
    line-height: 40px;
    text-align: center;
    color: #fff;
    margin: 0;
    padding: 0 10px;
    text-transform: uppercase;
    background: #546c88;
    font-weight: 400;
    box-sizing: border-box
}

#social {
    float: left;
    width: 100%;
    height: auto;
    background: #fff;
    margin: 0 0 5px 0;
    padding-bottom: 15px
}

#social h3 {
    float: left;
    width: 100%;
    height: 40px;
    line-height: 40px;
    margin: 0;
    padding: 0;
    text-align: center
}

#social ul {
    margin: 0;
    list-style: none;
    padding: 20px;
    font-size: 1.2em
}

#social ul li {
    float: left;
    width: 32%;
    height: 40px;
    box-sizing: border-box;
    margin-right: 2%
}

#social ul li:last-child {
    margin-right: 0
}

#social ul li a {
    float: left;
    width: 100%;
    height: 40px;
    text-align: center
}

#social ul li a:hover {
    -webkit-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    -moz-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    box-shadow: 0 3px 3px 0 rgba(50,50,50,.2)
}

#social ul li a.facebook {
    background: #43609a;
    color: #fff
}

#social ul li a.twitter {
    background: #5baeec;
    color: #fff
}

#social ul li #linkedin a {
    background: #2888bb!important;
    color: #fff!important;
    height: 40px!important;
    font-size: 14.4px!important
}

#social ul li #linkedin .IN-widget {
    display: block!important;
    height: 40px!important
}

#social ul li #linkedin .IN-widget>span {
    display: block!important;
    width: 100%
}

#social ul li a span {
    display: inline-block;
    width: auto;
    text-align: center;
    line-height: 40px;
    height: 40px;
    margin: 0;
    padding: 0
}

#social ul li a i {
    display: inline-block;
    width: auto;
    line-height: 40px;
    font-size: 1.2em;
    margin-right: 5px;
    padding: 0
}

#form_salvataggio_prenotazione,.dati_personali {
    float: left;
    width: 100%;
    padding: 0 15px;
    box-sizing: border-box;
    margin-bottom: 15px
}

.dati_personali label {
    float: left;
    width: 50%;
    padding: 0 5px;
    box-sizing: border-box
}

.dati_personali .table label {
    width: 20%
}

.dati_personali label.lunga {
    float: left;
    width: 100%
}

.dati_personali .row {
    float: left;
    width: 50%;
    margin-bottom: 10px
}

.dati_personali .row.full {
    float: left;
    width: 100%;
    margin-bottom: 10px
}

.dati_personali .row .label {
    float: left;
    width: 100%;
    margin-bottom: 10px;
    box-sizing: border-box
}

.dati_personali .row .fields {
    float: left;
    width: 100%
}

.dati_personali .row .fields .field {
    float: left;
    width: 25%;
    margin-right: 10px
}

.dati_personali .row .fields select {
    float: left;
    width: 25%;
    margin-right: 10px
}

.dati_personali .privacy {
    float: left;
    width: 100%;
    padding: 0 5px;
    margin-bottom: 10px;
    box-sizing: border-box
}

.dati_personali .privacy .text {
    float: left;
    width: 100%;
    height: 7.5em;
    overflow: auto;
    padding: 10px;
    border: 2px solid #ddd;
    box-sizing: border-box
}

.dati_personali input[type=date],.dati_personali input[type=email],.dati_personali input[type=tel],.dati_personali input[type=text],.dati_personali textarea {
    border: 2px solid #ddd;
    border-radius: 0;
    color: #222;
    display: block;
    margin: 0;
    padding: 1em 1.25em;
    width: 100%;
    -webkit-transition: border-color .3s,color .3s;
    transition: border-color .3s,color .3s;
    -webkit-appearance: none;
    box-sizing: border-box
}

.dati_personali select {
    text-transform: capitalize;
    border: 2px solid #ddd;
    border-radius: 0;
    display: block;
    margin: 0;
    padding: .9em 1.25em;
    width: 100%;
    -webkit-transition: border-color .3s,color .3s;
    transition: border-color .3s,color .3s;
    -webkit-appearance: none;
    box-sizing: border-box
}

.dati_personali select:required:invalid {
    color: #aaa
}

.dati_personali select option[value=""][disabled] {
    display: none
}

.dati_personali select option {
    text-transform: capitalize;
    color: #000
}

.dati_personali .data_nascita label span {
    float: left;
    width: 25%
}

.dati_personali .data_nascita label .campi {
    float: right;
    width: 24%;
    margin-left: 2px
}

.dati_personali input[type=checkbox] {
    height: 16px;
    width: 16px;
    vertical-align: bottom;
    margin-right: 3px
}

.dati_personali input:focus,.dati_personali textarea:focus {
    border-color: #241c0a;
    color: #222;
    outline: 0
}

.dati_personali textarea {
    margin: 0;
    min-height: 7.5em;
    line-height: 1.5;
    overflow: auto;
    resize: vertical
}

#richiesta_pulsante_cerca button,.dati_personali button {
    width: 98%;
    height: 40px;
    line-height: 40px;
    background: #6cab6c;
    display: block;
    text-align: center;
    color: #fff;
    border: none;
    padding: 0;
    margin: 0 auto;
    font-size: 1.4em;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    border-radius: 8px
}

#richiesta_pulsante_cerca button:hover,.dati_personali button:hover {
    background: #4b844b;
    color: #fff
}

#contenitore_secure {
    float: left;
    width: 100%;
    min-height: 340px;
    display: none
}

.contenitore_pulsanti {
    display: block;
    width: 100%;
    margin: 0 auto;
    text-align: center
}

#pulsante_add_services,#pulsante_pkpass_download,.pulsante_stampa_conferma {
    display: table-cell;
    width: 50%;
    text-align: center;
    vertical-align: middle;
    padding: 5px;
    border-left: 0;
    border-right: 0
}

#pulsante_add_services a,#pulsante_pkpass_download a,.pulsante_stampa_conferma a {
    display: block;
    text-align: center;
    color: #fff;
    font-size: 1.4em;
    border: 0;
    width: 100%;
    padding: 5px 10px;
    box-sizing: border-box;
    border-radius: 5px;
    background: #6cab6c
}

#pulsante_add_services a i.fas,#pulsante_pkpass_download a i.fas,.pulsante_stampa_conferma a i.fas {
    padding-right: 5px;
    vertical-align: middle
}

.button-icon,.button-label {
    display: table-cell;
    text-align: center
}

.unlocker {
    float: left;
    width: 100%;
    height: auto;
    background: #fff;
    box-sizing: border-box;
    vertical-align: bottom;
    display: inline-block;
    -webkit-transition: .3s ease-in-out;
    -moz-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
    -webkit-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    -moz-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    box-shadow: 0 3px 3px 0 rgba(50,50,50,.2)
}

.unlocker h2 {
    float: left;
    width: 90%;
    line-height: 22px;
    text-align: center;
    color: #fff;
    margin: 0 0 20px 0;
    padding: 15px 5%;
    text-transform: uppercase;
    background: #546c88;
    font-weight: 400
}

.unlocker .blocco {
    float: left;
    width: 33.333%
}

.unlocker .table {
    float: left;
    width: 100%
}

.unlocker .row {
    float: left;
    width: 50%;
    margin-bottom: 10px
}

.unlocker .row.full {
    float: left;
    width: 100%;
    margin-bottom: 10px
}

.unlocker label {
    float: left;
    width: 100%;
    padding: 0 5px;
    box-sizing: border-box
}

.unlocker .table label {
    width: 20%
}

.unlocker input[type=number],.unlocker input[type=text],.unlocker textarea {
    border: 2px solid #ddd;
    border-radius: 0;
    color: #222;
    display: block;
    margin: 0;
    padding: 1em 1.25em;
    width: 100%;
    -webkit-transition: border-color .3s,color .3s;
    transition: border-color .3s,color .3s;
    -webkit-appearance: none;
    box-sizing: border-box
}

.unlocker input[type=checkbox] {
    height: 16px;
    width: 16px;
    vertical-align: bottom;
    margin-right: 3px
}

.unlocker input:focus {
    border-color: #241c0a;
    color: #222;
    outline: 0
}

.unlocker button {
    width: 98%;
    height: 40px;
    line-height: 40px;
    background: #6cab6c;
    display: block;
    text-align: center;
    color: #fff;
    border: none;
    padding: 0;
    margin: 0 auto;
    font-size: 1.4em;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    border-radius: 8px
}

.unlocker button:hover {
    background: #4b844b;
    color: #fff
}

.unlocker .privacy {
    float: left;
    width: 100%;
    padding: 0 5px;
    margin-top: 10px;
    box-sizing: border-box
}

.unlocker .privacy .text {
    float: left;
    width: 100%;
    height: 7.5em;
    overflow: auto;
    padding: 10px;
    border: 2px solid #ddd;
    box-sizing: border-box
}

.blocco_concludi {
    float: left;
    width: 100%;
    margin: 20px 0
}

.blocco_account {
    float: left;
    width: 100%;
    padding: 0;
    list-style: none
}

.blocco_account li {
    float: left;
    width: 50%;
    text-align: center
}

.blocco_account li a {
    display: block;
    line-height: 30px
}

.blocco_account li a i {
    display: inline-block;
    font-size: 1.2em;
    margin-right: 10px;
    line-height: 30px
}

.blocco_account li a span {
    display: inline-block;
    line-height: 30px
}

#cc_form {
    min-height: 430px!important
}

#form_salvataggio_prenotazione .table div {
    margin-bottom: 10px
}

#form_salvataggio_prenotazione .table div input[type=text] {
    border: 2px solid #ddd;
    border-radius: 0;
    color: #222;
    display: inline-block;
    margin: 0;
    padding: 1em 1.25em;
    -webkit-transition: border-color .3s,color .3s;
    transition: border-color .3s,color .3s;
    -webkit-appearance: none;
    box-sizing: border-box
}

#form_salvataggio_prenotazione .table div select {
    text-transform: capitalize;
    border: 2px solid #ddd;
    border-radius: 0;
    display: inline-block;
    margin: 0;
    padding: .9em 1.25em;
    -webkit-transition: border-color .3s,color .3s;
    transition: border-color .3s,color .3s;
    -webkit-appearance: none;
    box-sizing: border-box
}

#form_salvataggio_prenotazione {
    padding: 0
}

#form_salvataggio_prenotazione .table {
    padding: 10px 20px;
    clear: both
}

#form_salvataggio_prenotazione .titolo_tabella {
    font-size: 18px;
    margin-bottom: 20px
}

#form_salvataggio_prenotazione .table div label {
    width: 20%;
    min-width: 100px;
    display: inline-block
}

#form_salvataggio_prenotazione .table div select#ExpMon {
    margin-right: 3px
}

@media screen and (max-width: 680px) {
    .box_gallery {
        height:300px
    }

    .unlocker .blocco {
        float: left;
        width: 100%;
        margin-bottom: 20px
    }

    .blocco_concludi {
        margin: 10px auto 20px
    }

    .blocco_account li {
        float: left;
        width: 100%
    }

    .blocco_account li:last-child {
        margin-bottom: 0
    }

    #form_salvataggio_prenotazione .table {
        padding: 10px 0
    }

    #form_salvataggio_prenotazione .table div input[type=text] {
        padding: 1em .5em
    }

    #form_salvataggio_prenotazione .table div.cim-conteiner label {
        display: none
    }

    #form_salvataggio_prenotazione .table div.cim-conteiner {
        text-align: center
    }
}

@media screen and (max-width: 480px) {
    #cc_form {
        min-height:550px!important
    }

    #form_salvataggio_prenotazione .titolo_tabella {
        margin-bottom: 0
    }

    #form_salvataggio_prenotazione .table div {
        border-bottom: 1px solid #ddd;
        padding-bottom: 10px;
        margin-bottom: 0
    }

    #form_salvataggio_prenotazione .table div label {
        display: block;
        width: 100%;
        padding: 10px 0
    }

    #form_salvataggio_prenotazione .table div.ch-conteiner input,#form_salvataggio_prenotazione .table div.ct-conteiner select {
        width: 100%
    }

    .cim-conteiner {
        padding-top: 10px
    }
}

#pag_pacchetti .button {
    display: inline-block;
    padding: 15px 18px;
    background: #f0ede8;
    border: none;
    color: #222;
    font-size: 1.2em;
    text-transform: uppercase;
    cursor: pointer
}

#pag_pacchetti .button:hover {
    background-color: #fff
}

#pag_pacchetti .button.is-checked,#pag_pacchetti .button:active {
    background-color: #fff
}

#pag_pacchetti .button-group:after {
    content: '';
    display: block;
    clear: both
}

#pag_pacchetti .button-group .button {
    float: left;
    text-transform: none
}

#pag_pacchetti .grid {
    float: left;
    width: 100%
}

#pag_pacchetti .grid:after {
    content: '';
    display: block;
    clear: both
}

#pag_pacchetti .element-item {
    position: relative;
    float: left;
    width: 433px;
    height: auto;
    margin: 10px 0 0 10px;
    padding: 10px;
    background: #fff;
    color: #222;
    cursor: pointer
}

#pag_pacchetti .element-item:hover {
    -webkit-box-shadow: 0 3px 3px 0 rgba(50,50,50,.5);
    -moz-box-shadow: 0 3px 3px 0 rgba(50,50,50,.5);
    box-shadow: 0 3px 3px 0 rgba(50,50,50,.5)
}

#pag_pacchetti .element-item>* {
    margin: 0;
    padding: 0
}

#pag_pacchetti .element-item .box_offerta .foto_pacchetto img {
    float: left;
    width: 100%;
    height: auto;
    margin-bottom: 10px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    background-image: url(/images/ImageNotAvailable.jpg)
}

#pag_pacchetti .element-item .box_offerta .descri_pacchetto h3.name {
    float: left;
    width: 100%;
    font-size: 1.4em;
    font-weight: 400;
    margin: 0;
    padding: 0 2% 0 0;
    line-height: 24px;
    box-sizing: border-box;
    color: #546c88
}

#pag_pacchetti .element-item .box_offerta .descri_pacchetto p {
    float: left;
    width: 100%;
    margin: 0;
    padding: 0 5px 0 0;
    box-sizing: border-box
}

#pag_pacchetti .element-item .box_offerta .descri_pacchetto {
    float: left;
    width: 72%;
    margin-bottom: 10px
}

#pag_pacchetti .element-item .box_offerta .prezzo_pacchetto {
    float: left;
    width: 28%;
    font-size: 12px;
    text-align: center;
    margin-bottom: 10px;
    border-left: 1px solid #ddd;
    padding: 2px 5px 5px 5px;
    box-sizing: border-box
}

#pag_pacchetti .element-item .box_offerta .prezzo_pacchetto .start {
    float: left;
    width: 100%;
    font-size: 12px!important
}

#pag_pacchetti .element-item .box_offerta .prezzo_pacchetto .big {
    float: left;
    width: 100%;
    font-size: 1.8em;
    line-height: 28px;
    font-weight: 700;
    color: #546c88
}

#pag_pacchetti .element-item .box_offerta .prezzo_pacchetto .big .pic {
    font-size: .7em
}

#pag_pacchetti .element-item .box_offerta .prezzo_pacchetto .occupazione {
    float: left;
    width: 100%;
    text-align: center;
    line-height: 15px
}

#pag_pacchetti .element-item .box_offerta .prezzo_pacchetto .occupazione .ospiti {
    float: left;
    width: 100%;
    text-align: center
}

#pag_pacchetti .element-item .box_offerta .box_offerta_blocco.piccola .foto_pacchetto img {
    float: left;
    width: 30%;
    margin: 0 2% 2% 0;
    height: auto
}

#pag_pacchetti .element-item .box_offerta .box_offerta_blocco.piccola .descri_pacchetto {
    float: left;
    width: 68%;
    margin-bottom: 0;
    min-height: 0
}

#pag_pacchetti .element-item .box_offerta .box_offerta_blocco.piccola .descri_pacchetto h3.name {
    float: left;
    width: 100%
}

#pag_pacchetti .element-item .box_offerta .box_offerta_blocco.piccola .descri_pacchetto p {
    float: left;
    width: 100%;
    padding: 0
}

#pag_pacchetti .element-item .box_offerta .box_offerta_blocco.piccola .prezzo_pacchetto {
    float: right;
    width: 68%;
    font-size: .85em;
    text-align: left;
    margin-bottom: 10px;
    border-left: none;
    padding: 0;
    box-sizing: border-box;
    border-top: 1px solid #ddd;
    margin-top: 10px
}

#pag_pacchetti .element-item .box_offerta .box_offerta_blocco.piccola .prezzo_pacchetto .start {
    float: left;
    width: auto;
    font-size: 1.5em;
    line-height: 30px;
    margin-right: 8px
}

#pag_pacchetti .element-item .box_offerta .box_offerta_blocco.piccola .prezzo_pacchetto .big {
    float: left;
    width: auto;
    font-size: 1.5em;
    line-height: 30px
}

#pag_pacchetti .element-item .box_offerta .box_offerta_blocco.piccola .prezzo_pacchetto .big .pic {
    font-size: .7em
}

#pag_pacchetti .element-item .box_offerta .box_offerta_blocco.piccola .prezzo_pacchetto .occupazione {
    float: right;
    width: auto;
    line-height: 30px;
    text-align: right
}

#pag_pacchetti .element-item .box_offerta .box_offerta_blocco.piccola .prezzo_pacchetto .occupazione .xroom {
    float: left;
    width: auto
}

#pag_pacchetti .element-item .box_offerta .box_offerta_blocco.piccola .prezzo_pacchetto .occupazione .ospiti {
    float: left;
    width: auto;
    margin-left: 5px
}

#pag_pacchetti .element-item .box_offerta .row_puls {
    float: left;
    width: 100%
}

#pag_pacchetti .element-item.filtro_benessere {
    border-bottom: 4px solid red
}

#pag_pacchetti .element-item.filtro_benessere .prezzo_pacchetto .big {
    color: red
}

#pag_pacchetti .element-item.filtro_pacchetti {
    border-bottom: 4px solid #f80
}

#pag_pacchetti .element-item.filtro_pacchetti .prezzo_pacchetto .big {
    color: #f80
}

#pag_pacchetti .element-item.filtro_offerte {
    border-bottom: 4px solid #006893
}

#pag_pacchetti .element-item.filtro_offerte .prezzo_pacchetto .big {
    color: #006893
}

#pag_pacchetti .element-item.filtro_servizi {
    border-bottom: 4px solid #f56893
}

#pag_pacchetti .element-item.filtro_servizi .prezzo_pacchetto .big {
    color: #f56893
}

#pag_pacchetti .element-item.filtro_durata {
    border-bottom: 4px solid #009737
}

#pag_pacchetti .element-item.filtro_durata .prezzo_pacchetto .big {
    color: #009737
}

#pag_pacchetti .box_offerta {
    float: left;
    width: 100%;
    height: auto
}

#pag_pacchetti .desc_promo {
    float: left;
    width: 100%;
    height: auto;
    background: #fff;
    padding: 5px;
    box-sizing: border-box;
    border: 1px solid#ccc
}

#pag_pacchetti .promo {
    float: left;
    width: 48%;
    line-height: 30px;
    background: #f0ede8;
    color: #222;
    padding: 0 5px;
    box-sizing: border-box;
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    border-radius: 4px
}

#pag_pacchetti .promo:hover {
    background: #546c88;
    color: #fff
}

#pag_pacchetti .promo.aa:hover {
    background: #6cab6c;
    color: #fff
}

#pag_pacchetti .promo.aa {
    background: #6cab6c;
    color: #fff
}

#pag_pacchetti .promo.aa .freccia i,.promo:hover .freccia i {
    -ms-transform: rotate(-90deg);
    -webkit-transform: rotate(-90deg);
    transform: rotate(90deg)
}

#pag_pacchetti .promo i {
    float: left;
    width: 30px;
    margin: 0;
    padding: 0;
    text-align: center
}

#pag_pacchetti .promo .sx {
    float: left;
    width: auto;
    padding: 0;
    line-height: 40px;
    height: 40px;
    margin: 0 5px;
    text-align: left
}

#pag_pacchetti .promo .freccia i {
    float: right;
    width: 16px;
    margin: 0 7px;
    padding: 0;
    text-align: center;
    font-size: .7em;
    line-height: 40px
}

#pag_pacchetti .promo.sin {
    float: left
}

#pag_pacchetti .promo.des {
    float: right
}

#pag_pacchetti .what_blocco {
    float: left;
    width: 100%;
    height: auto;
    display: none;
    margin-bottom: 10px
}

#pag_pacchetti .what_blocco .blocco_testo {
    float: left;
    width: 100%;
    min-height: 195px;
    background: #f0ede8;
    padding: 10px 15px;
    box-sizing: border-box;
    overflow: auto;
    max-height: 195px
}

#pag_pacchetti .what_blocco .blocco_testo h3 {
    float: left;
    width: 100%;
    height: 30px;
    line-height: 30px;
    margin: 0;
    padding: 0
}

#pag_pacchetti .what_blocco .blocco_testo p {
    float: left;
    width: 100%;
    margin: 0;
    padding: 0
}

#pag_pacchetti .what_blocco .condividi {
    float: left;
    width: 100%;
    line-height: 30px;
    text-align: right;
    display: none
}

#pag_pacchetti .what_blocco .condividi a {
    margin-left: 10px
}

#pag_pacchetti .blocco_filtri {
    float: left;
    width: 100%;
    height: auto;
    margin: 0;
    padding: 10px 10px 0 10px;
    box-sizing: border-box
}

#pag_pacchetti .blocco_filtri_mobile {
    display: none
}

#pag_pacchetti .filtri {
    float: left;
    width: 100%;
    height: 40px;
    background: #fff;
    line-height: 40px;
    list-style: none;
    margin: 0;
    padding: 10px 0;
    -webkit-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    -moz-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    box-shadow: 0 3px 3px 0 rgba(50,50,50,.2)
}

#pag_pacchetti .filtri li {
    float: left;
    width: auto;
    height: 40px;
    line-height: 40px;
    padding: 0 20px
}

#pag_pacchetti .filtri li input[type=radio] {
    margin-right: 5px;
    vertical-align: middle
}

#pag_pacchetti .filtri li select {
    margin-left: 5px;
    border: 2px solid #ddd;
    padding: 5px;
    cursor: pointer
}

#pag_pacchetti .blocco_filtri .back {
    float: left;
    width: 100%;
    height: 40px;
    background: #fff;
    line-height: 40px;
    list-style: none;
    margin: 0;
    padding: 0 20px;
    box-sizing: border-box
}

#pag_pacchetti .blocco_filtri .back a {
    float: left;
    width: auto;
    line-height: 40px
}

#pag_pacchetti .riepilogo_promo {
    float: left;
    width: 100%;
    margin-bottom: 10px;
    padding-bottom: 0
}

#pag_pacchetti .riepilogo_promo h3 {
    float: left;
    width: 100%;
    line-height: 24px;
    margin: 0 0 10px 0;
    padding: 0;
    font-size: 1.5em
}

#pag_pacchetti .riepilogo_promo .foto_promo img {
    float: left;
    width: 40%;
    height: auto;
    margin: 0 3% 0 0
}

#pag_pacchetti .riepilogo_promo p {
    float: left;
    width: 57%;
    height: auto;
    margin: 5px 0
}

#pag_pacchetti .riepilogo_promo .riga_promo {
    float: left;
    width: 57%;
    line-height: 30px
}

#pag_pacchetti .riepilogo_promo .riga_torna {
    float: left;
    width: 100%;
    line-height: 30px;
    text-align: right
}

#scheda_pacchetto {
    float: left;
    width: 100%;
    height: auto;
    background: #fff;
    vertical-align: bottom;
    display: inline-block;
    -webkit-transition: .3s ease-in-out;
    -moz-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
    -webkit-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    -moz-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    padding: 10px 20px;
    box-sizing: border-box
}

#scheda_pacchetto .foto_pacchetto {
    float: left;
    width: 100%;
    height: auto;
    margin-bottom: 10px
}

#scheda_pacchetto .foto_pacchetto img {
    float: left;
    width: 100%;
    height: auto
}

#scheda_pacchetto .name {
    float: left;
    width: 100%;
    font-size: 1.6em;
    font-weight: 400;
    padding: 0;
    line-height: 26px;
    margin: 5px 0
}

#scheda_pacchetto .descri_pacchetto {
    float: left;
    width: 73%;
    margin: 0;
    min-height: 50px
}

#scheda_pacchetto .prezzo_pacchetto {
    float: right;
    width: 25%;
    font-size: 12px;
    text-align: center;
    margin-bottom: 10px;
    border-left: 1px solid #ddd;
    padding: 2px 5px 5px 5px;
    box-sizing: border-box
}

#scheda_pacchetto .prezzo_pacchetto .big {
    font-size: 1.8em;
    line-height: 28px;
    font-weight: 700;
    color: #6cab6c
}

#scheda_pacchetto .prezzo_pacchetto .big .pic {
    font-size: .7em
}

#scheda_pacchetto .prezzo_pacchetto .occupazione {
    float: left;
    width: 100%;
    text-align: center
}

#scheda_pacchetto .prezzo_pacchetto .occupazione .xroom {
    float: left;
    width: 100%
}

#scheda_pacchetto .prezzo_pacchetto .occupazione .ospiti {
    float: left;
    width: 100%
}

#scheda_pacchetto .cosa_include {
    float: left;
    width: 100%;
    height: auto;
    margin-top: 10px;
    border-top: 1px solid #ddd;
    padding: 0
}

.cosa_include .cont_cosa_include {
    padding: 10px 0
}

#scheda_pacchetto .cosa_include h3 {
    float: left;
    width: 100%;
    margin: 5px 0 0 0;
    padding: 0;
    line-height: 30px;
    font-size: 1.3em
}

#scheda_pacchetto .condividi {
    float: left;
    width: 100%;
    height: 30px;
    line-height: 30px;
    text-align: right
}

#scheda_pacchetto .condividi a {
    margin-left: 20px;
    font-size: 1.2em
}

.scheda_pacchetti {
    display: none
}

#vantaggi {
    float: left;
    width: 100%;
    height: auto
}

.campo_vantaggi {
    float: left;
    width: 100%;
    height: auto;
    background: #fff;
    box-sizing: border-box;
    vertical-align: bottom;
    display: inline-block;
    -webkit-transition: .3s ease-in-out;
    -moz-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
    -webkit-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    -moz-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    margin-bottom: 20px
}

.blocco_vantaggi {
    float: left;
    width: 100%;
    height: auto;
    padding: 0
}

.blocco_vantaggi h3 {
    float: left;
    width: 100%;
    text-transform: uppercase;
    background: #f0ede8;
    padding: 10px 18px;
    margin: 0;
    font-size: 1.4em;
    box-sizing: border-box;
    text-align: center
}

.blocco_vantaggi h3 i {
    float: left;
    width: 100%;
    font-size: 1.5em;
    margin-bottom: 10px;
    display: none
}

.blocco_vantaggi ul {
    float: left;
    width: 100%;
    height: auto;
    list-style: none;
    padding: 10px 20px;
    margin: 0;
    box-sizing: border-box
}

.blocco_vantaggi ul li {
    float: left;
    width: 100%;
    padding: 10px 0;
    border-bottom: 1px solid #ddd;
    font-size: 1.1em
}

.blocco_vantaggi ul li:last-child {
    border-bottom: none
}

.blocco_vantaggi ul.vantaggio li:before {
    content: "\f046";
    font-family: FontAwesome;
    color: #546c88;
    margin-right: 6px
}

.blocco_vantaggi ul.book li:before {
    content: "\f271";
    font-family: FontAwesome;
    color: #546c88;
    margin-right: 6px
}

.caricamento_contenitore.blocco_vantaggi a {
    float: right;
    color: #333;
    vertical-align: middle;
    background: rgba(255,255,255,.6);
    padding: 10px;
    position: absolute;
    top: 0!important;
    right: 0!important;
    width: 24px!important;
    height: 24px!important;
    text-align: center
}

.caricamento_contenitore.blocco_vantaggi a i.fa {
    font-size: 15px;
    color: #333;
    z-index: 999;
    display: block;
    vertical-align: middle;
    margin: 0;
    line-height: 24px;
    right: 0;
    top: 0
}

.tit_vantaggi {
    float: left;
    width: 100%;
    height: auto;
    background: #fff;
    margin-bottom: 10px;
    box-sizing: border-box;
    vertical-align: bottom;
    display: inline-block;
    -webkit-transition: .3s ease-in-out;
    -moz-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
    -webkit-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    -moz-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    box-shadow: 0 3px 3px 0 rgba(50,50,50,.2)
}

.tit_vantaggi h2 {
    float: left;
    width: 100%;
    height: 30px;
    line-height: 30px;
    text-align: center;
    color: #fff;
    margin: 0;
    padding: 0;
    font-size: 1.2em;
    background: #546c88;
    font-weight: 700
}

.fix-bottom {
    margin-bottom: 15px
}

.modification-buttons {
    width: 25%;
    height: 25px;
    line-height: 25px;
    background: #6cab6c;
    display: inline-block;
    text-align: center;
    color: #fff;
    border: none;
    padding: 0;
    margin: 5px 10px;
    font-size: 1.2em;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    border-radius: 8px
}

.modification-buttons:hover {
    background: #4b844b;
    color: #fff
}

.hidden {
    display: none!important
}

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px
}

.visuallyhidden.focusable:active,.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto
}

.invisible {
    visibility: hidden
}

.clearfix:after,.clearfix:before {
    content: '';
    display: table
}

.clearfix:after {
    clear: both
}

@media print {
    *,:after,:before {
        background: 0 0!important;
        color: #000!important;
        box-shadow: none!important;
        text-shadow: none!important
    }

    a,a:visited {
        text-decoration: underline
    }

    a[href]:after {
        content: " ("attr(href) ")"
    }

    abbr[title]:after {
        content: " ("attr(title) ")"
    }

    a[href^="#"]:after,a[href^="javascript:"]:after {
        content: ''
    }

    blockquote,pre {
        border: 1px solid #546c88;
        page-break-inside: avoid
    }

    thead {
        display: table-header-group
    }

    img,tr {
        page-break-inside: avoid
    }

    img {
        max-width: 100%!important
    }

    h2,h3,p {
        orphans: 3;
        widows: 3
    }

    h2,h3 {
        page-break-after: avoid
    }
}

@media screen and (max-width: 960px) {
    .box_gallery {
        height:400px
    }

    #header {
        display: none
    }

    #banner {
        display: none
    }

    #header_mobile {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        min-height: 50px;
        background: #fff;
        z-index: 999;
        -webkit-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
        -moz-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
        box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
        display: table
    }

    #header_mobile * {
        box-sizing: border-box
    }

    #header_mobile a,#header_mobile a:hover {
        color: #222
    }

    #box-risultati {
        padding-bottom: 160px;
        float: left;
        width: 100%
    }

    #wrapper {
        float: left;
        margin-top: 65px;
        width: 100%
    }

    #pulsante_menu {
        width: 30px;
        height: 30px;
        padding: 7px;
        border-right: 1px solid #ddd;
        display: table-cell;
        vertical-align: middle
    }

    #pulsante_menu i {
        height: 30px
    }

    .pmenu {
        display: block;
        position: relative;
        overflow: hidden;
        margin: 0;
        padding: 0;
        width: 30px;
        height: 30px;
        font-size: 0;
        text-indent: -9999px;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
        box-shadow: none;
        border-radius: none;
        border: none;
        cursor: pointer;
        -webkit-transition: background .3s;
        transition: background .3s
    }

    .pmenu:focus {
        outline: 0
    }

    .pmenu span {
        display: block;
        position: absolute;
        top: 13px;
        left: 5px;
        right: 5px;
        height: 2px;
        background: #546c88
    }

    .pmenu span:after,.pmenu span:before {
        position: absolute;
        display: block;
        left: 0;
        width: 100%;
        height: 2px;
        background-color: #546c88;
        content: ''
    }

    .pmenu span:before {
        top: -6px
    }

    .pmenu span:after {
        bottom: -6px
    }

    .pulsante_menu_sx {
        background-color: transparent
    }

    .pulsante_menu_sx span {
        -webkit-transition: background 0s .3s;
        transition: background 0s .3s
    }

    .pulsante_menu_sx span:after,.pulsante_menu_sx span:before {
        -webkit-transition-duration: .3s,.3s;
        transition-duration: .3s,.3s;
        -webkit-transition-delay: 0.3s,0s;
        transition-delay: 0.3s,0s
    }

    .pulsante_menu_sx span:before {
        -webkit-transition-property: top,-webkit-transform;
        transition-property: top,transform
    }

    .pulsante_menu_sx span:after {
        -webkit-transition-property: bottom,-webkit-transform;
        transition-property: bottom,transform
    }

    .pulsante_menu_sx.is-active {
        background-color: transparent
    }

    .pulsante_menu_sx.is-active span {
        background: 0 0
    }

    .pulsante_menu_sx.is-active span:before {
        top: 0;
        -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg)
    }

    .pulsante_menu_sx.is-active span:after {
        bottom: 0;
        -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        transform: rotate(-45deg)
    }

    .pulsante_menu_sx.is-active span:after,.pulsante_menu_sx.is-active span:before {
        -webkit-transition-delay: 0s,0.3s;
        transition-delay: 0s,0.3s
    }

    #hotel_titolo {
        padding: 5px;
        display: table-cell
    }

    #hotel_titolo .nome_hotel {
        float: left;
        width: 100%;
        line-height: 120%;
        font-size: 1.2em;
        text-transform: uppercase;
        padding: 0
    }

    #hotel_titolo .indirizzo {
        float: left;
        width: 100%;
        line-height: 120%;
        font-size: .9em;
        padding: 5px 0 0
    }

    #pulsante_carrello {
        float: right;
        width: 30px;
        margin: 15px
    }

    #pulsante_carrello a i.fas.fa-shopping-cart.fa-2x {
        font-size: 1.6em!important
    }

    #header_mobile_sx {
        position: fixed;
        top: 0;
        left: -363px;
        width: 90%;
        height: 100%;
        max-width: 360px;
        z-index: 98;
        background: #fff;
        padding: 80px 0;
        box-sizing: border-box;
        display: block;
        -webkit-box-shadow: 3px 0 3px 0 rgba(50,50,50,.5);
        -moz-box-shadow: 3px 0 3px 0 rgba(50,50,50,.5);
        box-shadow: 3px 0 3px 0 rgba(50,50,50,.5);
        overflow-y: scroll
    }

    .menu {
        float: left;
        width: 100%;
        margin: 0;
        padding: 0;
        list-style: none
    }

    .menu li {
        float: left;
        width: 100%;
        margin: 0;
        padding: 0;
        line-height: 40px;
        border-bottom: 1px solid #ddd
    }

    .menu li i {
        float: left;
        width: 40px;
        text-align: center;
        line-height: 40px;
        font-size: 1.3em
    }

    .menu li span {
        float: left;
        width: auto;
        line-height: 40px;
        font-size: 1.2em
    }

    #header_mobile_dx {
        position: fixed;
        top: 0;
        right: -363px;
        width: 90%;
        height: 100%;
        max-width: 360px;
        z-index: 98;
        background: #fff;
        padding: 80px 10px 10px;
        box-sizing: border-box;
        display: block;
        -webkit-box-shadow: -3px 0 3px 0 rgba(50,50,50,.5);
        -moz-box-shadow: -3px 0 3px 0 rgba(50,50,50,.5);
        box-shadow: -3px 0 3px 0 rgba(50,50,50,.5);
        overflow: scroll
    }

    .clock-block {
        float: left;
        width: 60px;
        height: 60px;
        margin: 0 2px
    }

    .viaggio .cal {
        float: left;
        width: 50%;
        height: auto;
        margin: 0
    }

    .viaggio .clock_det {
        float: left;
        width: 50%;
        height: auto;
        margin: 0
    }

    .cal .freccia {
        display: none
    }

    .viaggio .eti {
        float: left;
        width: 46%;
        line-height: 20px;
        margin: 5px 2%;
        border-bottom: 1px solid#ccc
    }

    .blocco_mobile {
        float: left;
        width: 100%;
        height: auto
    }

    .tit_mob {
        float: left;
        width: 100%;
        line-height: 40px;
        border-bottom: 1px solid #ddd;
        font-size: 1.3em
    }

    .tot_mob {
        float: left;
        width: 100%;
        line-height: 40px;
        border-top: 1px solid #ddd;
        font-size: 1.3em;
        margin-top: 10px
    }

    .tot_mob span.sx {
        float: left;
        width: auto
    }

    .tot_mob span.dx {
        float: right;
        width: auto;
        font-weight: 700;
        color: #6cab6c
    }

    #header_mobile_dx .riga h2 {
        float: left;
        width: 100%;
        text-align: left;
        color: #222;
        border-bottom: 1px solid #ddd;
        background: #fff;
        margin-top: 10px;
        font-size: 1.3em
    }

    .box_riepi .riga .risultato {
        display: table-cell
    }

    .container {
        width: 100%;
        margin: 0
    }

    #hp a {
        float: left;
        line-height: 40px;
        color: #546c88;
        margin-left: 10px
    }

    #logo {
        float: left;
        width: auto;
        margin-left: 10px
    }

    #puls_servizio {
        float: right;
        width: auto;
        display: block
    }

    #puls_servizio a {
        float: left;
        color: #fff;
        margin-left: 40px;
        text-align: center;
        width: auto;
        min-width: 50px;
        margin-top: 10px
    }

    #puls_servizio a i {
        display: block;
        line-height: 40px
    }

    #puls_servizio a span {
        display: block;
        line-height: 20px
    }

    #valute a {
        line-height: 40px
    }

    #valute a i {
        line-height: 40px
    }

    .fix-bottom {
        margin-bottom: 15px
    }

    #box_valute .elenco_valute li a {
        line-height: 40px
    }

    #box_valute .elenco_valute li a img {
        margin: 12px 10px 0 0;
        line-height: 40px
    }

    #box_valute .elenco_valute li a span {
        line-height: 40px
    }

    #lang a {
        line-height: 40px
    }

    #lang a i {
        line-height: 40px
    }

    #box_lingue .elenco_lingue li a {
        line-height: 40px
    }

    #box_lingue .elenco_lingue li a img {
        margin: 12px 10px 0 0;
        line-height: 40px
    }

    #box_lingue .elenco_lingue li a span {
        line-height: 40px
    }

    #blocco_scheda {
        min-height: 0!important
    }

    #scheda_link {
        display: none
    }

    .box_concludi {
        float: left;
        width: 100%;
        background: #fff
    }

    .box_concludi .riga {
        float: left;
        width: 100%;
        border-bottom: 1px solid #ddd;
        line-height: 40px
    }

    .box_concludi .riga .label {
        float: left;
        width: 80px;
        text-transform: uppercase;
        margin: 0 5px
    }

    .box_concludi .riga .risultato {
        float: left;
        width: 170px
    }

    .box_concludi .riga .risultato .multi_riga {
        float: left;
        line-height: 20px;
        margin: 10px 0
    }

    .box_concludi .riga.riga_totali.definitivo {
        background: #546c88;
        color: #fff
    }

    .box_concludi .riga.riga_totali .label {
        float: left;
        width: 150px;
        text-transform: uppercase;
        margin: 0 5px
    }

    .box_concludi .riga.riga_totali .risultato {
        float: right;
        width: 90px;
        text-align: right;
        margin-right: 10px;
        font-size: 1.3em
    }

    .box_concludi .riga.condizioni .label {
        float: left;
        width: 100%;
        text-transform: uppercase;
        margin: 0 5px;
        line-height: 20px;
        margin-top: 10px
    }

    .box_concludi .riga.condizioni .risultato {
        float: right;
        width: 100%;
        text-align: left;
        font-size: .8em;
        line-height: 14px;
        padding: 0 5px 10px 5px;
        box-sizing: border-box
    }

    #a_soluzioni_preventivo_mail {
        margin-left: 15px
    }

    #step .container,#wrapper .container {
        padding: 10px 0;
        margin-bottom: 50px
    }

    #step {
        display: none
    }

    #step_mobile {
        float: left;
        width: 100%;
        height: auto;
        margin: 0;
        display: block
    }

    #step_mobile .container ul {
        float: left;
        width: 100%;
        margin: 0;
        padding: 0;
        list-style: none
    }

    #step_mobile .container ul li a {
        float: left;
        width: 100%;
        margin: 0;
        line-height: 40px;
        background: #fff;
        color: #222;
        padding: 0 10px;
        box-sizing: border-box;
        border-top: 1px solid #ddd
    }

    #step_mobile .container ul li:last-child a {
        margin: 0;
        border-bottom: none
    }

    #step_mobile .container ul li a i {
        float: left;
        width: auto;
        line-height: 40px;
        margin-right: 10px
    }

    #step_mobile .container ul li a span {
        float: left;
        width: auto;
        height: 40px;
        line-height: 40px
    }

    #step_mobile .container ul li a .dx {
        float: right;
        width: auto;
        height: 40px;
        line-height: 40px
    }

    #sx {
        display: none
    }

    #sx_pacchetti {
        display: none
    }

    #dx {
        float: left;
        width: 100%;
        height: auto;
        margin: 0;
        padding: 0
    }

    #dx_pacchetti {
        float: left;
        width: 100%;
        height: auto;
        margin: 0;
        padding: 0
    }

    #dx.alto {
        margin: 0 0 80px 0
    }

    #box_carrello {
        float: left;
        width: 360px;
        height: auto;
        margin: 0 15px 0 10px
    }

    .carrello {
        float: left;
        width: 360px;
        height: auto;
        margin: 0;
        padding: 10px 0
    }

    .carrello .contenuto {
        float: left;
        width: 340px;
        margin: 0 10px;
        padding: 0;
        box-sizing: border-box
    }

    .carrello .contenuto .box_contenuto {
        float: left;
        width: 100%;
        padding: 10px;
        background: #fff;
        margin-bottom: 15px;
        -webkit-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
        -moz-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
        box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
        box-sizing: border-box
    }

    .carrello .contenuto .box_contenuto .riga .pulsanti a {
        float: left;
        width: 100%;
        background: #f0ede8;
        line-height: 30px;
        padding: 0 5px;
        box-sizing: border-box;
        margin: 0;
        text-align: center
    }

    .carrello .contenuto .box_contenuto .riga .pulsanti a:hover {
        background: #546c88
    }

    #vantaggi {
        float: left;
        width: calc(100% - 395px);
        height: auto
    }

    #dx_cancel_modify #vantaggi {
        width: 100%
    }

    #container_calendar {
        float: left;
        width: 100%;
        height: 100%;
        padding-bottom: 0
    }

    #nav_tab_carrello {
        padding-bottom: 0
    }

    #calendar {
        float: left;
        height: auto;
        width: 100%
    }

    .seleziona_giorni .checkin {
        float: left;
        width: 100%;
        margin: 0;
        line-height: 40px;
        height: 40px;
        margin-bottom: 5px
    }

    .seleziona_giorni {
        float: left;
        height: auto;
        width: 100%;
        display: none;
        font-size: .9em
    }

    .seleziona_giorni ul li {
        float: left;
        width: 100%;
        margin: 0;
        padding: 0 5px;
        line-height: 40px;
        height: 40px;
        border-bottom: 1px solid #ddd;
        box-sizing: border-box
    }

    .seleziona_giorni ul li .vai {
        float: right;
        width: 70px;
        text-align: right;
        line-height: 30px;
        margin-top: 5px
    }

    .seleziona_giorni .checkin {
        float: left;
        width: 100%;
        margin: 0;
        line-height: 40px;
        height: 40px;
        margin-bottom: 5px
    }

    .seleziona_giorni .checkin.attivo {
        background: #ddf5de!important;
        -webkit-box-shadow: 0 0 6px 0 rgba(0,0,0,.5);
        -moz-box-shadow: 0 0 6px 0 rgba(0,0,0,.5);
        box-shadow: 0 0 6px 0 rgba(0,0,0,.5)
    }

    .seleziona_giorni .checkin.attivo a {
        background: #f0ede8
    }

    .seleziona_giorni .checkin.attivo a:hover {
        background: #241c0a
    }

    .seleziona_giorni .checkin span.sx {
        float: left;
        width: auto;
        height: 40px;
        line-height: 40px;
        margin-left: 5px;
        font-size: 1em
    }

    .seleziona_giorni .checkin span.sx i {
        margin-right: 5px
    }

    .seleziona_giorni .checkin span.sx span {
        margin-left: 10px;
        font-weight: 700
    }

    .seleziona_giorni .checkin span.dx {
        float: right;
        width: auto;
        text-align: right;
        height: 40px;
        line-height: 40px;
        margin-right: 5px;
        font-size: .9em
    }

    .modifica {
        float: left;
        line-height: 30px;
        height: 30px;
        background: #f0ede8;
        color: #222;
        padding: 0 5px;
        font-size: .9em;
        margin: 5px 0
    }

    .tab_carrello ul {
        float: left;
        width: 100%;
        list-style: none;
        margin: 0;
        padding: 0
    }

    .camera_sel {
        float: left;
        width: 100%;
        line-height: 30px;
        padding: 0;
        margin-top: 5px;
        border-bottom: 1px solid #ddd
    }

    .camera_sel .ncamera {
        float: left;
        width: 30%;
        margin-left: 5px;
        font-size: .9em
    }

    .camera_sel .ncamera i {
        display: inline-block;
        margin-right: 6px
    }

    .camera_sel .eti {
        float: left;
        width: 30%;
        text-align: center;
        font-size: .9em
    }

    .camera_sel .eti i {
        display: inline-block;
        margin-right: 6px
    }

    #camere {
        float: left;
        width: 100%;
        list-style: none;
        margin: 0;
        padding: 0
    }

    #camere li {
        float: left;
        width: 100%;
        padding: 0;
        border-bottom: 1px solid #ddd
    }

    #camere li .row_camera {
        float: left;
        width: 100%;
        height: auto
    }

    #camere li .row_camera .cancel {
        float: left;
        width: 20px;
        line-height: 40px;
        height: 40px;
        text-align: center
    }

    #camere li:first-child .row_camera .cancel i {
        display: none
    }

    #camere li .row_camera .num_camera {
        float: left;
        width: 30%;
        margin-left: 5px;
        line-height: 40px;
        height: 40px
    }

    #camere li .row_camera .seleziona {
        float: left;
        width: 30%;
        line-height: 40px;
        height: 40px;
        font-size: .9em;
        text-align: center
    }

    #camere li .row_camera .seleziona .valore {
        display: inline-block;
        width: 100%;
        height: 40px;
        line-height: 40px
    }

    .seleziona_giorni ul li .disp {
        float: left;
        width: 10px;
        line-height: 10px;
        margin: 13px 10px 13px 0;
        border: 1px solid#ccc
    }

    .carrello .contenuto .box_contenuto .riga .inserisci_sconto {
        display: block;
        width: 98%;
        margin: 10px auto;
        height: 30px;
        line-height: 30px;
        background: #ffe875;
        text-align: center;
        color: #222;
        padding: 0 10px;
        box-sizing: border-box;
        font-size: 1em
    }

    .campo:hover {
        -ms-transform: translate(0,0);
        -webkit-transform: translate(0,0);
        transform: translate(0,0)
    }

    .campo .tariffe {
        float: left;
        width: calc(100% - 250px);
        margin: 10px 5px 0 0;
        padding: 0;
        max-height: 110px
    }

    .accordion {
        float: left;
        width: calc(100% - 250px);
        margin: 0;
        padding: 0;
        line-height: 30px;
        min-height: 30px;
        background: #f0ede8;
        text-decoration: none;
        cursor: pointer;
        box-sizing: border-box
    }

    .row_titolo .sin {
        float: left;
        width: 70%;
        height: auto;
        padding: 0 5px 0 0;
        box-sizing: border-box;
        border-right: 1px solid #ddd
    }

    .row_titolo .sin h2 {
        width: auto;
        margin: 0 5px 0 0;
        padding: 0;
        font-size: 18px;
        font-weight: 400;
        line-height: 30px;
        text-align: left
    }

    .row_titolo .sin i {
        float: left;
        width: auto;
        margin: 0;
        padding: 0;
        font-size: 13px;
        margin-right: 5px
    }

    .row_titolo .sin p {
        float: left;
        width: 99%;
        line-height: 20px;
        margin: 0;
        padding: 0
    }

    .row_titolo .sin p.secret_deal {
        background: #ffbf00;
        color: #000;
        border: 1px solid #000
    }

    .row_titolo .des {
        float: left;
        width: 28%;
        height: 100%;
        padding: 0 0 0 5px;
        box-sizing: border-box;
        margin-left: 2%
    }

    .row_titolo .des .cond {
        float: left;
        width: 100%;
        height: auto;
        margin-top: 4px
    }

    .row_titolo .des .cond i {
        float: left;
        width: 24px
    }

    .row_titolo .des .cond span {
        float: left;
        width: calc(100% - 24px);
        line-height: 15px;
        margin-top: 2px
    }

    #details {
        width: 100%;
        display: none
    }

    #rate_details {
        width: 100%;
        display: none
    }

    #rate_details .foto img {
        width: 100%
    }

    .dettagli_camera {
        width: 100%
    }

    #carrello_mobile {
        display: block
    }

    .campo_servizi {
        float: left;
        width: 100%;
        height: auto;
        box-sizing: border-box;
        vertical-align: bottom;
        display: inline-block;
        -webkit-transition: .3s ease-in-out;
        -moz-transition: .3s ease-in-out;
        -o-transition: .3s ease-in-out;
        transition: .3s ease-in-out;
        -webkit-box-shadow: 0 0 0 0 rgba(50,50,50,.5);
        -moz-box-shadow: 0 0 0 0 rgba(50,50,50,.5);
        box-shadow: 0 0 0 0 rgba(50,50,50,.5)
    }

    .campo_servizi .foto {
        float: left;
        width: 30%;
        height: auto;
        padding: 10px;
        box-sizing: border-box
    }

    .campo_servizi .foto img {
        float: left;
        width: 100%;
        height: auto
    }

    .campo_servizi .elenco li .blocco_servizio {
        float: left;
        width: 69%;
        height: auto;
        margin: 10px 0
    }

    .campo_servizi ul li .prezzo {
        float: left;
        width: 100%;
        margin: 0;
        padding: 0 5px;
        line-height: 18px;
        height: 30px;
        text-decoration: none;
        box-sizing: border-box
    }

    .riepilogo_servizi {
        display: none
    }

    .nessun_servizio {
        display: none
    }

    .campi_dati {
        float: left;
        width: 100%;
        height: auto;
        background: #fff;
        box-sizing: border-box;
        vertical-align: bottom;
        display: inline-block;
        -webkit-transition: .3s ease-in-out;
        -moz-transition: .3s ease-in-out;
        -o-transition: .3s ease-in-out;
        transition: .3s ease-in-out;
        -webkit-box-shadow: 0 0 0 0 rgba(50,50,50,.5);
        -moz-box-shadow: 0 0 0 0 rgba(50,50,50,.5);
        box-shadow: 0 0 0 0 rgba(50,50,50,.5)
    }

    .singola_promo {
        position: relative;
        top: 0;
        left: 0;
        width: 100%;
        height: 380px
    }

    .box {
        position: relative;
        height: 380px;
        width: 100%;
        display: block
    }

    .box img {
        position: relative;
        width: 960px;
        height: auto;
        top: 0;
        left: 0;
        z-index: 0
    }

    #pag_pacchetti .element-item {
        position: relative;
        float: left;
        width: 48%;
        height: auto;
        margin: 15px 1% 0 1%;
        padding: 10px;
        background: #fff;
        color: #222;
        box-sizing: border-box;
        -webkit-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
        -moz-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
        box-shadow: 0 3px 3px 0 rgba(50,50,50,.2)
    }

    #cont_pacchetti {
        margin-top: 50px
    }

    #pag_pacchetti .blocco_filtri {
        display: none
    }

    #pag_pacchetti .blocco_filtri_mobile {
        float: left;
        width: 100%;
        height: auto;
        margin: 0;
        padding: 0;
        box-sizing: content-box;
        display: inline
    }

    #pag_pacchetti .blocco_filtri_mobile .tipologie {
        float: left;
        width: 100%;
        height: 40px;
        line-height: 40px;
        margin: 0;
        padding: 0 20px;
        box-sizing: border-box
    }

    #pag_pacchetti .blocco_filtri_mobile span {
        float: left;
        margin-right: 10px
    }

    .pulsante_accordion a {
        float: left;
        width: 100%;
        margin: 0;
        line-height: 40px;
        background: #fff;
        color: #222;
        padding: 0 10px;
        box-sizing: border-box;
        font-size: 1.1em
    }

    .pulsante_accordion a i {
        float: left;
        width: auto;
        line-height: 40px;
        margin-right: 10px
    }

    .pulsante_accordion a span {
        float: left;
        width: auto;
        height: 40px;
        line-height: 40px
    }

    .pulsante_accordion a .dx {
        float: right;
        width: auto;
        height: 40px;
        line-height: 40px
    }

    #box_accordion {
        float: left;
        width: 100%;
        height: auto;
        display: none
    }

    #pag_pacchetti .blocco_filtri_mobile button {
        float: left;
        width: 50%;
        height: auto;
        margin: 0;
        padding: 0;
        box-sizing: border-box;
        font-size: .9em;
        line-height: 40px
    }

    #pag_pacchetti .filtri {
        border-top: 2px solid #ddd;
        float: left;
        width: 100%;
        height: auto;
        background: #fff;
        line-height: 40px;
        list-style: none;
        margin: 0;
        padding: 0
    }

    #pag_pacchetti .filtri li {
        float: left;
        width: 100%;
        height: 40px;
        line-height: 40px;
        padding: 0 10px;
        box-sizing: border-box
    }

    #pag_pacchetti .filtri li input[type=radio] {
        margin-right: 5px;
        vertical-align: middle
    }

    #pag_pacchetti .filtri li select {
        margin-left: 5px
    }

    #pag_pacchetti .element-item .box_offerta .descri_pacchetto {
        float: left;
        width: 70%;
        margin-bottom: 10px
    }

    #pag_pacchetti .element-item .box_offerta .prezzo_pacchetto {
        float: left;
        width: 30%;
        font-size: .85em;
        text-align: center;
        margin-bottom: 10px;
        border-left: 1px solid #ddd;
        padding: 2px 5px 5px 5px;
        box-sizing: border-box
    }

    #pag_pacchetti .element-item .box_offerta .prezzo_pacchetto .big {
        float: left;
        width: 100%;
        font-size: 1.8em;
        line-height: 24px
    }

    #pag_pacchetti .promo {
        float: left;
        width: 100%;
        line-height: 35px;
        background: #f0ede8;
        color: #222;
        padding: 0 5px;
        box-sizing: border-box;
        margin-bottom: 10px
    }

    #pag_pacchetti .promo,#pag_pacchetti .promo .freccia i,#pag_pacchetti .promo .sx {
        line-height: 35px;
        height: 35px
    }

    #pag_pacchetti .promo .freccia i {
        margin: 0 7px
    }

    #box_pacchetti {
        float: left;
        width: 100%;
        height: auto;
        padding-bottom: 0
    }

    .scheda_pacchetti {
        display: block
    }

    #cont_pacchetti {
        margin-top: 0
    }

    #scheda_pacchetto {
        float: left;
        width: calc(100% - 410px);
        height: auto;
        background: #fff;
        vertical-align: bottom;
        display: inline-block;
        -webkit-transition: .3s ease-in-out;
        -moz-transition: .3s ease-in-out;
        -o-transition: .3s ease-in-out;
        transition: .3s ease-in-out;
        -webkit-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
        -moz-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
        box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
        padding: 10px;
        box-sizing: border-box;
        margin: 10px 0 0 0
    }

    .riepilogo_promo_mobile {
        float: left;
        width: 100%;
        padding: 0 10px;
        box-sizing: border-box;
        line-height: 40px
    }

    .riepilogo_promo_mobile span {
        float: left;
        width: auto;
        font-size: 1.4em;
        margin-right: 10px
    }

    .tag_promo_mobile {
        float: left;
        width: auto
    }
}

@media screen and (max-width: 680px) {
    #wrapper {
        float:left;
        margin-top: 80px;
        width: 100%
    }

    #puls_servizio {
        float: right;
        width: auto
    }

    #puls_servizio a {
        float: left;
        color: #fff;
        margin-left: 40px;
        text-align: center;
        width: auto;
        min-width: 50px;
        margin-top: 5px
    }

    #puls_servizio a i {
        display: block;
        line-height: 30px
    }

    #puls_servizio a span {
        display: block;
        line-height: 10px;
        font-size: .7em
    }

    #vantaggi {
        display: none
    }

    #dx_cancel_modify #vantaggi {
        display: block
    }

    .fix-bottom {
        margin-bottom: 0
    }

    #box_carrello {
        float: left;
        width: 100%;
        height: auto;
        margin: 0;
        padding: 0
    }

    .carrello {
        float: left;
        width: 100%;
        height: auto;
        margin: 0;
        padding: 10px 0;
        box-sizing: border-box
    }

    .carrello .contenuto {
        float: none;
        width: 100%;
        max-width: 440px;
        margin: 0 auto;
        padding: 0;
        box-sizing: border-box
    }

    .carrello .contenuto .box_contenuto {
        float: left;
        width: 100%;
        padding: 10px;
        background: #fff;
        margin-bottom: 15px;
        -webkit-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
        -moz-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
        box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
        box-sizing: border-box
    }

    .seleziona_giorni ul li .partenza {
        float: left;
        width: 90px;
        font-weight: 700
    }

    .seleziona_giorni ul li .prezzo {
        float: left;
        width: 40px;
        font-weight: 700
    }

    .singola_promo {
        position: relative;
        top: 0;
        left: 0;
        width: 100%;
        height: 300px
    }

    .box {
        position: relative;
        height: 300px;
        width: 100%;
        display: block
    }

    .box img {
        position: relative;
        width: 680px;
        height: auto;
        top: 0;
        left: 0;
        z-index: 0
    }

    ul.scheda_tabs li a {
        font-size: .75em
    }

    .campo .foto {
        position: relative;
        float: left;
        width: 40%;
        height: auto;
        padding: 10px;
        box-sizing: border-box
    }

    .campo .foto_camera img {
        float: left;
        width: 100%;
        min-height: 0
    }

    .campo:hover {
        -ms-transform: translate(0,0);
        -webkit-transform: translate(0,0);
        transform: translate(0,0)
    }

    .campo .tariffe {
        float: left;
        width: 60%;
        margin: 0;
        height: auto;
        max-height: none;
        padding: 10px 10px 0 0;
        box-sizing: border-box
    }

    .accordion .tariffa {
        float: left;
        line-height: 30px;
        font-size: 1em;
        margin-left: 10px
    }

    .accordion {
        float: left;
        width: 100%;
        margin: 5px 0 0;
        padding: 0;
        line-height: 30px;
        min-height: 30px;
        background: #f0ede8;
        text-decoration: none;
        cursor: pointer;
        box-sizing: border-box
    }

    .accordion-open {
        background: #546c88;
        color: #fff
    }

    .accordion-open .freccia {
        background: #f0ede8
    }

    .accordion-open .freccia i {
        color: #44525e!important
    }

    .accordion-close .freccia {
        background: #98d098;
        color: #fff
    }

    .container_tipo {
        float: left;
        width: 100%;
        padding: 0;
        background: #f0ede8;
        margin-top: 0;
        box-sizing: border-box
    }

    .row_titolo {
        float: left;
        width: 100%;
        height: auto;
        padding: 10px;
        box-sizing: border-box;
        background: #f0ede8
    }

    .row_titolo .sin {
        float: left;
        width: 100%;
        height: auto;
        padding: 0 5px 10px 0;
        box-sizing: border-box;
        border-bottom: 1px solid #ddd;
        margin-bottom: 5px;
        border-right: none
    }

    .row_titolo .des {
        float: left;
        width: 100%;
        height: 100%;
        padding: 0;
        box-sizing: border-box;
        margin-left: 0
    }

    .row_titolo .des .cond {
        float: left;
        width: 100%;
        height: auto;
        margin-top: 4px
    }

    .row_titolo .des .cond i {
        float: left;
        width: 24px
    }

    .row_titolo .des .cond span {
        float: left;
        width: calc(100% - 24px);
        line-height: 15px
    }

    .blocco_tipo ul {
        float: left;
        width: 100%;
        list-style: none;
        margin: 0;
        padding: 0
    }

    .blocco_tipo ul.offerta_blocco {
        border-bottom: 2px solid red;
        border-top: 2px solid red
    }

    .blocco_tipo ul li {
        float: left;
        width: 100%;
        height: auto;
        border-bottom: 1px solid #ddd;
        padding: 0 10px;
        box-sizing: border-box;
        line-height: 30px
    }

    .blocco_tipo ul li:hover {
        -webkit-box-shadow: 0 0 6px 0 rgba(0,0,0,.5);
        -moz-box-shadow: 0 0 6px 0 rgba(0,0,0,.5);
        box-shadow: 0 0 6px 0 rgba(0,0,0,.5)
    }

    .blocco_tipo ul li .nome_tariffa {
        float: left;
        width: 100%;
        padding: 0 5px 0 0;
        box-sizing: border-box;
        font-size: 1.2em
    }

    .blocco_tipo ul li .offer {
        float: right;
        width: 28%;
        padding: 0 5px;
        box-sizing: border-box;
        text-transform: uppercase;
        color: red;
        text-align: right;
        font-size: 1em
    }

    .blocco_tipo ul li .number {
        float: left;
        width: 16%;
        padding: 0;
        box-sizing: border-box
    }

    .blocco_tipo ul li .number .icon-bambino {
        margin-bottom: 8px!important
    }

    .blocco_tipo ul li .price_day {
        float: right;
        width: 30%;
        padding: 0 5px;
        box-sizing: border-box
    }

    .blocco_tipo ul li .price_day span {
        float: left;
        width: auto
    }

    .blocco_tipo ul li .price_day span.flaticon-info34 {
        float: left;
        font-size: .8em;
        margin-left: 5px
    }

    .blocco_tipo ul li .reserve {
        float: right;
        width: 36%;
        box-sizing: border-box;
        text-align: right
    }

    .blocco_tipo ul li .reserve a {
        display: inline-block;
        line-height: 24px;
        width: 96%;
        text-align: center;
        background: #98d098;
        color: #fff;
        -webkit-border-radius: 3px;
        -moz-border-radius: 3px;
        border-radius: 3px
    }

    .blocco_tipo ul li .reserve a:hover {
        background: #4b844b;
        color: #fff
    }

    .details {
        width: auto;
        display: none
    }

    .dettagli_camera {
        width: 100%
    }

    .dettagli_camera img {
        width: 100%
    }

    #carrello_mobile {
        display: block;
        z-index: 2
    }

    #carrello_mobile .totale_carrello {
        font-size: 1.1em;
        font-weight: 700;
        padding-left: 5px
    }

    #carrello_mobile .fa.fa-user {
        font-size: 1em
    }

    .banner_comparativo .row_portale h2 {
        float: none;
        width: 100%;
        line-height: 20px;
        height: auto;
        margin: 5px 0;
        padding: 0;
        font-size: 1.2em;
        color: #333;
        text-align: center
    }

    .banner_comparativo .row_portale ul {
        width: 100%
    }

    .campo_servizi {
        float: left;
        width: 100%;
        height: auto;
        box-sizing: border-box;
        vertical-align: bottom;
        display: inline-block;
        -webkit-transition: .3s ease-in-out;
        -moz-transition: .3s ease-in-out;
        -o-transition: .3s ease-in-out;
        transition: .3s ease-in-out;
        -webkit-box-shadow: 0 0 0 0 rgba(50,50,50,.5);
        -moz-box-shadow: 0 0 0 0 rgba(50,50,50,.5);
        box-shadow: 0 0 0 0 rgba(50,50,50,.5)
    }

    .campo_servizi .foto {
        float: left;
        width: 100%;
        height: auto;
        padding: 10px;
        box-sizing: border-box;
        background: #fff
    }

    .campo_servizi .foto img {
        float: left;
        width: 100%;
        height: auto
    }

    .campo_servizi .elenco li .blocco_servizio {
        float: left;
        width: 100%;
        height: auto;
        margin: 0 0
    }

    #social ul li a span {
        display: none
    }

    #social ul li a i {
        display: inline-block;
        width: auto;
        line-height: 40px;
        font-size: 1.2em;
        margin-right: 0;
        padding: 0
    }

    #form_salvataggio_prenotazione,.dati_personali {
        float: left;
        width: 100%;
        padding: 0 15px;
        box-sizing: border-box;
        margin-bottom: 15px
    }

    .dati_personali label {
        float: left;
        width: 50%;
        padding: 0 5px;
        box-sizing: border-box
    }

    .dati_personali label.lunga {
        float: left;
        width: 100%
    }

    .dati_personali .row {
        float: left;
        width: 100%;
        margin-bottom: 10px
    }

    .dati_personali inputinput[type=text],.dati_personali textarea {
        border: 2px solid #ddd;
        border-radius: 0;
        color: #222;
        display: block;
        margin: 0;
        padding: 1em 1.25em;
        width: 100%;
        -webkit-transition: border-color .3s,color .3s;
        transition: border-color .3s,color .3s;
        -webkit-appearance: none;
        box-sizing: border-box
    }

    .dati_personali input:focus,.dati_personali textarea:focus {
        border-color: #241c0a;
        color: #222;
        outline: 0
    }

    .dati_personali textarea {
        margin: 0;
        min-height: 7.5em;
        line-height: 1.5;
        overflow: auto;
        resize: vertical
    }

    #richiesta_pulsante_cerca button,.dati_personali button {
        width: 98%;
        height: 40px;
        line-height: 40px;
        background: #6cab6c;
        display: block;
        text-align: center;
        color: #fff;
        border: none;
        padding: 0;
        margin: 0 auto;
        font-size: 1.4em;
        -webkit-border-radius: 8px;
        -moz-border-radius: 8px;
        border-radius: 8px
    }

    #richiesta_pulsante_cerca button:hover,.dati_personali button:hover {
        background: #241c0a;
        color: #fff
    }

    .campi_dati {
        float: left;
        width: 100%;
        height: auto;
        background: #fff;
        box-sizing: border-box;
        vertical-align: bottom;
        display: inline-block;
        -webkit-transition: .3s ease-in-out;
        -moz-transition: .3s ease-in-out;
        -o-transition: .3s ease-in-out;
        transition: .3s ease-in-out;
        -webkit-box-shadow: 0 0 0 0 rgba(50,50,50,.5);
        -moz-box-shadow: 0 0 0 0 rgba(50,50,50,.5);
        box-shadow: 0 0 0 0 rgba(50,50,50,.5)
    }

    #pag_pacchetti .element-item {
        position: relative;
        float: left;
        width: 100%;
        height: auto;
        margin: 15px 0 0 0;
        padding: 10px;
        background: #fff;
        color: #222;
        box-sizing: border-box
    }

    #scheda_pacchetto {
        width: 100%
    }

    #coupon {
        display: none;
        width: 100%;
        height: auto
    }

    #coupon h2 {
        float: left;
        width: 100%;
        background: #546c88;
        color: #fff;
        line-height: 40px;
        text-align: center;
        margin: 0;
        padding: 0;
        text-transform: uppercase
    }

    #coupon ul {
        width: 100%;
        list-style: none;
        padding: 0
    }

    #coupon ul li {
        float: left;
        width: 100%
    }

    #coupon ul li:last-child {
        border-bottom: none
    }

    #coupon ul li span {
        float: left;
        width: 100%;
        margin-right: 0;
        line-height: 25px;
        text-transform: uppercase
    }

    #coupon ul li a {
        line-height: 35px
    }

    .flexible-dates-conteiner .flexible-dates,.flexible-dates-conteiner .seleziona_giorni.seleziona_giorni_flexible {
        float: none;
        width: 100%
    }

    .flexible-dates-conteiner {
        float: none;
        width: 100%
    }

    #coupon ul li .contenitore_1 {
        padding: 5px 0
    }

    .contenitore_1 .cont_interno_2_2 {
        width: auto;
        padding: 0 0 0 20px
    }

    #coupon ul li input {
        float: none;
        padding: 10px 1.25em!important;
        width: auto
    }

    #coupon ul li .contenitore_1,#coupon ul li .contenitore_2 {
        display: table-cell;
        vertical-align: bottom
    }
}

@media screen and (max-width: 480px) {
    .banner_comparativo .row_portale {
        height:auto
    }

    .banner_comparativo .row_portale ul li {
        float: none;
        width: 100%;
        height: auto;
        border-bottom: 1px solid rgba(0,0,0,.05);
        border-left: 0
    }

    .banner_comparativo .row_portale ul li.ufficiale {
        width: 100%;
        border-bottom: 0
    }

    .banner_comparativo .row_portale ul li .prezzo br {
        display: none
    }

    .banner_comparativo .row_portale ul li .blocco {
        height: 24px
    }

    .banner_comparativo .row_portale ul li .blocco .icona {
        font-size: 1.3em
    }

    .banner_comparativo .row_portale ul li .blocco .prezzo .tariffa_comp {
        float: right
    }
}

@media screen and (max-width: 330px) {
    .blocco_tipo ul li .reserve {
        float:none;
        width: 100%
    }

    .blocco_tipo ul li .number {
        float: left;
        width: 25%
    }

    .blocco_tipo ul li .offer {
        float: right;
        width: 30%
    }

    .blocco_tipo ul li .price_day {
        float: right;
        width: 35%;
        text-align: left
    }
}

@media screen and (min-width: 1140px) {
    .box_gallery {
        height:465px
    }

    .container {
        width: 1120px;
        margin: 0 auto
    }

    #step .container,#wrapper .container {
        background: rgba(255,255,255,.6) none repeat scroll 0 0;
        display: table;
        padding: 10px
    }

    #dx {
        float: left;
        width: 745px;
        margin-bottom: 0
    }

    #dx_pacchetti {
        float: left;
        width: 745px;
        margin: 10px 0 0 0
    }

    .singola_promo {
        position: relative;
        top: 0;
        left: 0;
        width: 100%;
        height: 465px
    }

    .box {
        height: 465px;
        width: 100%;
        display: block
    }

    .box img {
        position: relative;
        height: 465px;
        width: auto;
        top: 0;
        left: 0;
        z-index: 0
    }

    .campo .tariffe {
        float: left;
        width: 495px;
        margin: 10px 5px 0 0;
        padding: 0;
        max-height: 110px
    }

    .accordion {
        float: left;
        width: 495px;
        margin: 0;
        padding: 0;
        line-height: 30px;
        background: #f0ede8;
        text-decoration: none;
        cursor: pointer;
        box-sizing: border-box
    }

    .row_titolo .sin {
        float: left;
        width: 495px;
        height: auto;
        padding: 0 5px 0 0;
        box-sizing: border-box;
        border-right: 1px solid #ddd
    }

    .row_titolo .des {
        float: left;
        width: 200px;
        height: 100%;
        padding: 0 0 0 5px;
        box-sizing: border-box;
        margin-left: 1%
    }

    .row_titolo .des .cond {
        float: left;
        width: 100%;
        height: auto;
        margin-top: 4px
    }

    .row_titolo .des .cond i {
        float: left;
        width: 24px
    }

    .row_titolo .des .cond span {
        float: left;
        width: 171px;
        line-height: 15px;
        margin-top: 2px
    }

    .campo_servizi .foto {
        float: left;
        width: 194px;
        height: 130px;
        padding: 10px
    }

    .campo_servizi .foto img {
        float: left;
        width: 194px;
        height: 130px
    }

    .campo_servizi .elenco li .blocco_servizio {
        float: left;
        width: 521px;
        height: auto;
        margin: 10px 0 0
    }

    .campo_servizi ul li .prezzo {
        float: left;
        width: 100%;
        margin: 0;
        padding: 0 5px;
        line-height: 30px;
        height: 30px;
        text-decoration: none;
        box-sizing: border-box
    }

    #pag_pacchetti .element-item {
        position: relative;
        float: left;
        width: 523px;
        height: auto;
        margin: 10px 0 0 10px;
        padding: 10px;
        background: #fff;
        color: #222;
        -webkit-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
        -moz-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
        box-shadow: 0 3px 3px 0 rgba(50,50,50,.2)
    }

    #pag_pacchetti .element-item .box_offerta .box_offerta_blocco.piccola .foto_pacchetto img {
        float: left;
        width: 48%;
        margin: 0 2% 2% 0;
        height: auto
    }

    #pag_pacchetti .element-item .box_offerta .box_offerta_blocco.piccola .descri_pacchetto {
        float: left;
        width: 50%;
        margin-bottom: 0;
        min-height: 0
    }

    #pag_pacchetti .element-item .box_offerta .box_offerta_blocco.piccola .prezzo_pacchetto {
        float: right;
        width: 50%;
        font-size: .85em;
        text-align: left;
        margin-bottom: 10px;
        border-left: none;
        padding: 0;
        box-sizing: border-box;
        border-top: 1px solid #ddd;
        margin-top: 10px
    }
}

.flaticon-keyboard53:before {
    content: "\e011";
    font-size: 9px;
    position: relative
}

.abcRioButton {
    width: 100%!important
}

footer {
    width: 100%;
    z-index: 1
}

footer #default-footer {
    float: left;
    width: 100%;
    margin: 20px 0 0 0;
    background: rgba(255,255,255,.8) none repeat scroll 0 0;
    padding: 15px 0;
    font-size: 12px;
    -webkit-box-shadow: 0 -3px 3px 0 rgba(50,50,50,.2);
    -moz-box-shadow: 0 -3px 3px 0 rgba(50,50,50,.2);
    box-shadow: 0 -3px 3px 0 rgba(50,50,50,.2)
}

footer #default-footer h1 {
    font-size: 15px;
    letter-spacing: .5px;
    font-weight: 700;
    margin: 0;
    padding: 0
}

footer #default-footer .fa {
    font-size: 15px;
    margin-right: 8px
}

footer #default-footer .container .left-col,footer #default-footer .container .right-col {
    float: left;
    width: 40%
}

.footer-link a {
    line-height: 22px
}

#template_footer {
    clear: both
}

@media only screen and (max-width: 980px) {
    footer {
        position:relative;
        bottom: 50px
    }

    footer #default-footer .container .left-col,footer #default-footer .container .right-col {
        float: left;
        width: 96%;
        padding: 2%
    }

    .nessun_servizio {
        padding: 0 10px
    }

    #tab_servizi .tabs_nav_servizi li>a {
        padding: 10px!important
    }
}

#tab_servizi .tabs_nav_servizi li>a {
    float: none;
    line-height: 20px;
    opacity: 1;
    font-size: 1em;
    display: block;
    width: auto!important;
    padding: 10px 20px;
    text-align: left;
    border-bottom: 1px solid rgba(0,0,0,.1)
}

#tab_servizi .tabs_nav_servizi li>a:hover {
    background: #f0ede8
}

#tab_servizi .tabs_nav_servizi li a.active,#tab_servizi .tabs_nav_servizi li a:hover {
    opacity: 1
}

.tabs_nav_servizi li a i.fa.fa-trash-o {
    font-size: 1.2em;
    background: #fff
}

.tabs-servizi-link span.freccia {
    float: right;
    padding: 0;
    margin: 0;
    width: auto;
    height: 20px;
    background: #546c88;
    color: #fff;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    border-radius: 10px
}

.tabs-servizi-link span.freccia i {
    float: left;
    width: 20px!important;
    height: 20px!important;
    line-height: 20px!important;
    padding: 0;
    margin: 0;
    text-align: center;
    color: #fff!important;
    transform: rotate(90deg)
}

i.rotate {
    transform: rotate(270deg)!important
}

.day_box.best_price .day_text {
    background: 0 0
}

#legenda_calendario .voce_legenda:first-child {
    display: none
}

#legenda_calendario .voce_legenda {
    width: 32%
}

#container_calendar.start {
    min-height: 390px
}

.blocco_tipo ul li.room-rate-list:last-of-type {
    border-bottom: 3px solid #546c88
}

.blocco_tipo ul.offerta_blocco {
    border-bottom: initial;
    border-top: initial
}

.carrello .contenuto .tariffe_mese,.message,.tip-yellow {
    background: #e4fae6!important
}

.message.notifica-top.notifica-left.arrow:before {
    content: '';
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-top: 10px solid #e4fae6!important;
    position: absolute;
    bottom: -9px;
    left: 9px
}

.message.notifica-bottom.notifica-left.arrow:before {
    content: '';
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-bottom: 10px solid #e4fae6!important;
    position: absolute;
    top: -9px;
    left: 9px
}

.message.notifica-bottom.notifica-right.arrow:before {
    content: '';
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-bottom: 10px solid #e4fae6!important;
    position: absolute;
    top: -9px;
    right: 9px
}

.message.notifica-top.notifica-centrale.arrow:before {
    content: '';
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-top: 10px solid #e4fae6!important;
    position: absolute;
    bottom: -9px;
    left: 50%;
    margin-left: -10px
}

.message.notifica-bottom.notifica-centrale.arrow:before {
    content: '';
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-bottom: 10px solid #e4fae6!important;
    position: absolute;
    top: -9px;
    left: 50%;
    margin-left: -10px
}

.notifyjs-bootstrap-base,.notifyjs-bootstrap-booking,.notifyjs-bootstrap-carrello,.notifyjs-bootstrap-info,.notifyjs-bootstrap-lungo,.notifyjs-bootstrap-personal,.notifyjs-bootstrap-success,.notifyjs-bootstrap-warn {
    background-color: #e4fae6!important;
    border: 1px solid #e4fae6!important
}

#pag_pacchetti .button {
    padding: 15px 17px;
    background: rgba(255,255,255,.6);
    margin: 0;
    transition: all .3s ease 0s;
    display: block
}

#pag_pacchetti .button:hover,#pag_pacchetti button.is-checked {
    margin: 0;
    padding: 15px 17px
}

.tab_carrello ul li a {
    background: #fff;
    opacity: 1
}

.tab_carrello ul li.sel a {
    background: #f0ede8;
    opacity: 1
}

.blocco_tipo ul li .reserve a.unlock {
    background: #ed9803;
    color: #fff
}

.row_titolo .sin p.secret_deal {
    background: #ed9803;
    color: #fff;
    border: 0 solid #000
}

a#link_date_flessibili {
    padding: 8px 0;
    margin-top: 10px;
    clear: both;
    background: #e2dcd4;
    width: 100%;
    display: block
}

a#link_date_flessibili i.fa {
    margin-right: 4px
}

img.room_amenities {
    width: 20px;
    margin: 0 5px
}

span.singolo-accessorio:before {
    display: none
}

div#intro_modifica_prenotazione {
    background: #fff;
    padding: 25px;
    margin-bottom: 20px;
    font-size: 16px;
    -webkit-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    -moz-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    box-shadow: 0 3px 3px 0 rgba(50,50,50,.2)
}

.img_premium_main img {
    width: 100%
}

.first-page-messages {
    position: fixed;
    right: 10px!important;
    top: 10px!important;
    margin-top: 0!important
}

.riquadro_agenzia {
    padding: 10px;
    margin-bottom: 5px
}

.commissione_agenzia,.riquadro_agenzia {
    background: #b8d4d8;
    text-align: center
}

span.benvenuta_agenzia {
    font-weight: 700
}

.commissione_agenzia {
    float: right;
    line-height: normal;
    font-size: 10px;
    clear: both;
    padding: 3px;
    margin-bottom: 5px;
    width: 100px;
    margin-left: 5px;
    text-align: center
}

.tip-yellow .tip-arrow-bottom,.tip-yellow .tip-arrow-left,.tip-yellow .tip-arrow-right,.tip-yellow .tip-arrow-top {
    background: url(tip-green_arrows.png)!important
}

div#welcome {
    padding: 10px;
    font-size: 18px;
    background: #ead324
}

.overlay-box {
    position: absolute;
    top: 0;
    left: 0;
    background-color: rgba(255,255,255,.4);
    width: 100%;
    z-index: 10;
    display: block;
    height: 50px;
    text-align: center
}

#persuasive-messages-general,#persuasive-messages-summary {
    position: fixed;
    bottom: 30px;
    left: 15px;
    z-index: 99;
    width: 320px
}

#persuasive-messages-general .message,#persuasive-messages-summary .message {
    background: rgba(0,0,0,.9)!important;
    padding: 10px;
    border-radius: 0;
    border-left: 3px solid #6cab6c;
    color: #fff;
    font-size: 14px;
    line-height: 30px
}

.message.general-messages,.message.summary-messages {
    position: absolute;
    display: flex;
    bottom: 0
}

#persuasive-messages-general .message p,#persuasive-messages-summary .message p {
    font-size: 13px;
    line-height: 18px
}

.message i.fa.fa-times.close-icon.close-all-persuasive-msgs {
    top: -7px;
    background: #333;
    width: 14px;
    text-align: center;
    height: 14px;
    line-height: 14px;
    border-radius: 50px;
    color: #fff;
    right: -7px;
    position: absolute;
    font-size: 9px;
    vertical-align: middle;
    font-weight: lighter
}

#box-risultati ul.tariffe {
    position: relative!important
}

.cont-decr-camera p:first-of-type {
    height: 50px;
    overflow: auto
}

.persuasive-message.persuasive-message-room {
    position: absolute!important;
    width: auto;
    max-width: 320px;
    min-width: 240px;
    bottom: 20px;
    box-shadow: none!important;
    right: 0
}

.persuasive-message-room .message {
    position: absolute;
    width: 100%;
    display: inline-block;
    background: #6cab6c!important;
    color: #fff;
    border-radius: 0;
    bottom: 0
}

.persuasive-message-room .message:after,.persuasive-message-room .message:before {
    content: "";
    position: absolute;
    right: 100%;
    width: 25px;
    height: 100%;
    left: -15px
}

.persuasive-message-room .message:before {
    top: 0;
    background: linear-gradient(to bottom left,#6cab6c 50%,transparent 51%)
}

.persuasive-message-room .message:after {
    bottom: 0;
    background: linear-gradient(to top left,#6cab6c 50%,transparent 51%)
}

.persuasive-message-room .message p {
    text-align: right
}

.message p a.close {
    background: #333
}

.message p a.open {
    background: #241c0a!important
}

.message p a.open:hover {
    background: #546c88!important
}

.message p a.close:hover {
    background: #000
}

.alternative-offer .message {
    background: #f5f5f5!important;
    border: 1px solid #cacbcd;
    box-shadow: 0 2px 10px rgba(0,0,0,.25)!important;
    color: #5a5b5c!important;
    font-size: 14px!important
}

.alternative-offer .alternative-offer-message {
    max-width: 350px!important;
    min-width: auto!important;
    top: 00px!important
}

.room-rate-list-level1 .alternative-offer .alternative-offer-message {
    max-width: 350px!important;
    min-width: auto!important;
    top: auto!important;
    bottom: 0
}

.alternative-offer .message div,.alternative-offer .message p {
    text-align: center;
    float: none
}

.alternative-offer .message p a {
    text-align: center;
    float: none;
    margin: 10px auto 5px
}

.alternative-offer-message i.fa {
    top: -7px;
    background: #333;
    width: 14px;
    text-align: center;
    height: 14px;
    line-height: 14px;
    border-radius: 50px;
    color: #fff;
    right: -7px;
    position: absolute;
    font-size: 9px;
    vertical-align: middle;
    font-weight: lighter
}

.message.notifica-top.notifica-right.arrow:before {
    content: "";
    position: absolute!important;
    width: 10px!important;
    height: 10px!important;
    background: #f5f5f5;
    box-shadow: -1px -1px #cacbcd;
    bottom: -5px!important;
    right: 20%!important;
    margin-left: 0;
    transform: rotate(225deg);
    border: 0!important
}

.blocco_tipo ul li.room-rate-list:last-of-type {
    position: relative
}

a.price_day.tooltip span {
    font-size: 1em
}

.campo_servizi .blocco_servizio .tariffa_servizio .row .qta a.seleziona_orario {
    line-height: 18px;
    padding: 5px
}

#a_soluzioni_preventivo_mail {
    margin: 0 auto;
    text-align: center;
    padding: 15px 15%;
    background: #fff;
    -webkit-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    -moz-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    display: table;
    color: #333;
    font-size: 1.1em
}

#a_soluzioni_preventivo_mail:hover {
    background: #f0ede8
}

#a_soluzioni_preventivo_mail i.fa {
    font-size: .8em
}

.fancybox-inner #a_soluzioni_preventivo_mail {
    margin: 0 20%;
    text-align: center;
    background: #6cab6c;
    -webkit-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    -moz-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    display: table;
    color: #fff;
    font-size: 1.4em;
    max-width: 60%;
    padding: 0
}

.fancybox-inner #a_soluzioni_preventivo_mail:hover {
    background: #4b844b
}

.fancybox-inner #a_soluzioni_preventivo_mail i.fa {
    font-size: .8em
}

.fancybox-inner div#message-recovery-strategy-ask {
    margin: 30px 0;
    max-height: 150px;
    overflow: hidden;
    background: rgba(255,255,255,.7);
    padding: 15px
}

.poshy_tip {
    background-color: #f5f5f5!important;
    padding: 10px 12px!important;
    -webkit-box-shadow: 0 5px 5px 0 rgba(50,50,50,.3);
    -moz-box-shadow: 0 5px 5px 0 rgba(50,50,50,.3);
    box-shadow: 0 -2px 5px 0 rgba(50,50,50,.2)
}

.fancybox-inner #rate_details h2 {
    font-size: 20px!important;
    margin: 0
}

.fancybox-inner #rate_details .dettagli_camera {
    border-top: 1px solid #ddd;
    padding-top: 15px
}

.fancybox-inner #rate_details .dettagli_camera h2,.fancybox-inner #rate_details h2.rate-details-included-services {
    font-size: 17px!important
}

.cont_desc_camera_top {
    margin: 0 auto
}

.cont_desc_camera_top .text_camera h2 {
    margin: 0 auto 10px
}

.cont_camera_content {
    display: block;
    margin: 0 auto;
    text-align: left
}

.cont_camera_content .text_camera h2 {
    margin-top: 0
}

.cont_camera_content .cont_desc_camera_servizi {
    margin-top: 10px;
    border-top: 1px solid #ddd
}

.riga.riga_totali span.risultato {
    font-size: 1.5em!important;
    font-weight: 700
}

.payment_box {
    display: table;
    width: 90%;
    margin: 0 auto;
    padding: 5%
}

.payment_icon,.payment_text {
    display: table-cell;
    vertical-align: middle
}

.payment_text {
    padding: 0
}

.payment_icon {
    padding: 0 15px 0 0;
    width: 20px
}

#hotel-list .box-hotel-info {
    margin: 0 auto;
    text-align: center;
    padding: 0
}

#hotel-list .box-hotel-info .col-img {
    margin: 0 auto;
    text-align: center;
    clear: both;
    width: 100%;
    padding: 0
}

#hotel-list .box-hotel-info .col-img img {
    width: 100%;
    height: 150px;
    padding: 0;
    background-size: 100% auto!important
}

#hotel-list .box-hotel-info .col-hotel {
    text-align: left;
    padding: 10px;
    margin-bottom: 10px;
    background: rgba(236,231,222,.7);
    position: relative
}

.col-hotel .info-bar .reserve-button {
    text-align: center;
    margin-top: 10px
}

.col-hotel .info-bar .reserve-button .myinput_seleziona {
    background: #546c88;
    border: 0;
    padding: 10px 20px;
    text-align: center;
    color: #fff
}

.col-hotel .characteristics-hotel {
    display: none
}

#box-risultati .no_soluzioni {
    padding: 20px;
    min-height: auto
}

#box-risultati .no_soluzioni #no_soluzioni_cross_selling {
    background: #f0ede8;
    color: #000;
    opacity: 1
}

#box-risultati .no_soluzioni #no_soluzioni_cross_selling:hover {
    opacity: .75
}

#box-risultati .no_soluzioni #no_soluzioni_cross_selling a {
    padding: 10px 20px;
    display: block
}

#cross_selling #search-summary .nome-hotel {
    text-align: center;
    background: #f0ede8;
    padding: 10px 0;
    margin: 0
}

#cross_selling #search-summary .nome-hotel h1 {
    margin: 0;
    font-size: 1.5em;
    color: #546c88
}

#cross_selling #search-data-box {
    padding: 10px 20px;
    border: 1px solid #ddd;
    line-height: 22px
}

#search-data-box .data-box .value-data {
    display: inline-block;
    border-right: 1px solid #ddd;
    padding-right: 10px;
    margin-right: 10px
}

#search-data-box .data-box .value-data:last-child {
    padding-left: 0;
    margin-left: 0;
    border: 0
}

#cross_selling #tab-selction-group {
    margin: 20px auto 0;
    text-align: left;
    padding: 0;
    border-bottom: 1px solid #ddd;
    position: relative
}

#cross_selling #tab-selction-group ul {
    margin: 0;
    padding: 0;
    list-style: none;
    display: block;
    width: 100%
}

#cross_selling #tab-selction-group ul li {
    display: table-cell;
    text-transform: uppercase;
    position: relative;
    letter-spacing: .5px;
    bottom: -1px;
    line-height: 18px
}

#cross_selling #tab-selction-group ul li.active a {
    border-top: 3px solid #546c88;
    color: #546c88;
    background: #fff;
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd
}

#cross_selling #tab-selction-group ul li.active a:hover {
    opacity: 1
}

#cross_selling #tab-selction-group ul li a {
    padding: 14px 20px;
    display: block;
    background: #f0ede8;
    border-top: 3px solid #fff
}

#cross_selling #tab-selction-group ul li a:hover {
    opacity: .8
}

#cross_selling #tab-selction-group ul li:last-child a {
    border-left: 0
}

#cross_selling #results-list {
    border: 1px solid #ddd;
    border-top: 0;
    padding: 0
}

#cross_selling #results-list #hotel-list {
    padding: 15px 20px;
    margin: 0 auto;
    text-align: left
}

#hotel-list .col-hotel .intestazioneStruttura h1 {
    font-size: 1.5em;
    color: #546c88;
    margin: 0;
    padding: 0
}

#hotel-list .col-hotel .intestazioneStruttura h1 a {
    color: #546c88
}

#hotel-list .hotel-results-table {
    margin: 0 auto;
    text-align: left
}

#hotel-list .hotel-results-table .rate-row {
    display: table;
    width: 100%;
    text-align: left
}

.hotel-results-table .rate-row .price-room,.hotel-results-table .rate-row .room-col,.hotel-results-table .rate-row .room_occupancy_label {
    display: table-cell;
    text-align: left;
    padding: 5px 0;
    border-bottom: 1px solid #ddd;
    vertical-align: middle;
    border-right: 1px solid #ddd;
    line-height: 20px
}

.hotel-results-table .rate-row .price-room,.hotel-results-table .rate-row .room_occupancy_label {
    padding: 5px 10px
}

.hotel-results-table .rate-row .room-col .rate-name,.hotel-results-table .rate-row .room-col .room-name {
    padding: 0 10px
}

.hotel-results-table .rate-row .room-col:last-child,.hotel-results-table .rate-row .room_occupancy_label:last-child {
    border-right: 0
}

.hotel-results-table .rate-row .room-col:first-child,.hotel-results-table .rate-row .room_occupancy_label:last-child {
    border-left: 1px solid #ddd
}

.hotel-results-table .rate-row .room-col {
    width: 50%
}

.hotel-results-table .rate-row .price-room,.hotel-results-table .rate-row .room_occupancy_label {
    width: 25%
}

.hotel-results-table .rate-row .price-room,.hotel-results-table .rate-row .room_occupancy_label {
    text-align: center
}

.hotel-results-table .rate-row.rate-row-title {
    background: #f0ede8
}

.hotel-results-table .rate-row .room-col .room-name {
    font-weight: 700
}

.hotel-results-table .rate-row .more-results {
    text-align: right;
    padding: 5px 10px;
    background: #f0ede8;
    border: 1px solid #f0ede8
}

#cross_selling #results-list.results-show-map #map-view {
    padding: 10px
}

#cross_selling #results-list.results-show-map #map-view #map-view-content {
    width: 100%;
    height: 300px
}

#hotel-list .box-hotel-info .min-price {
    background: #f0ede8;
    color: #333;
    padding: 10px
}

.box-hotel-info .min-price .price,.box-hotel-info .min-price .valuta {
    font-size: 16px;
    font-weight: 700
}

#box-modifica-date #container_calendar,#box-modifica-date #container_calendar #calendar,.seleziona_giorni.seleziona_giorni_extended {
    width: 100%!important
}

.seleziona_giorni.seleziona_giorni_extended .checkin {
    margin: 10px 0;
    width: 100%
}

.seleziona_giorni.seleziona_giorni_extended .dx,.seleziona_giorni.seleziona_giorni_extended .sx {
    padding: 0 20px;
    margin: 0!important;
    font-size: 12px!important
}

.seleziona_giorni.seleziona_giorni_extended .dx .modifica {
    padding: 5px 15px;
    margin: 0;
    vertical-align: middle
}

#box-modifica-date #container_calendar .date_alternative {
    padding: 0 20px
}

.room-rate-occupations-box {
    margin: 0 auto;
    text-align: left;
    padding: 6px 15px;
    position: relative;
    display: block;
    clear: both;
    border-bottom: 3px solid #546c88
}

.room-rate-button-box-container .reserve select {
    border: 2px solid #ddd;
    padding: 5px;
    cursor: pointer
}

.box-content-sx .room-rate-treatment-box {
    margin: 0 auto;
    text-align: left;
    clear: both
}

.room-rate-treatment-box-item {
    font-size: 1.2em;
    font-weight: 700;
    clear: both;
    width: 100%;
    display: inline-block
}

.room-rate-treatment-box-item i.fas {
    font-size: 13px;
    margin-right: 4px;
    vertical-align: middle
}

.room-rate-parsuasive-msg-box .persuasive-message {
    padding: 2px 0
}

.persuasive-message-rate .message {
    position: relative;
    width: 100%;
    display: inline-block;
    border-radius: 0
}

.persuasive-message-rate .message.visibile {
    border-radius: 0!important;
    box-shadow: none!important;
    background: #6cab6c!important;
    max-width: 250px!important
}

.persuasive-message-rate .message p {
    margin: 5px auto!important;
    padding: 0!important;
    color: #fff!important;
    text-align: left
}

.persuasive-message-rate .message:after,.persuasive-message-rate .message:before {
    content: "";
    position: absolute;
    width: 25px;
    height: 100%;
    right: -15px
}

.persuasive-message-rate .message:after {
    bottom: 0;
    background: linear-gradient(to top right,#6cab6c 50%,transparent 51%)
}

.persuasive-message-rate .message:before {
    top: 0;
    background: linear-gradient(to bottom right,#6cab6c 50%,transparent 51%)
}

.box-content-father {
    width: 100%;
    margin: 5px auto 0;
    position: relative;
    clear: both
}

.box-content-children {
    width: 100%;
    display: table
}

.box-content-dx,.box-content-middle {
    vertical-align: middle;
    display: table-cell
}

.box-content-middle {
    text-align: left;
    padding: 0;
    width: 60%
}

.box-content-dx {
    text-align: right;
    padding: 0;
    width: 40%
}

.room-rate-general-box .room-rate-price-box {
    display: block;
    line-height: 18px
}

.room-rate-price-info-content,.room-rate-price-value-content {
    display: inline-block;
    vertical-align: top
}

.room-rate-general-box .room-rate-price-value-content .offer,.room-rate-general-box .room-rate-price-value-content a {
    font-size: 15px;
    font-weight: 700
}

.room-rate-general-box .room-rate-price-value-content a .barrato {
    font-size: .9em;
    font-weight: 400
}

.room-rate-general-box .room-rate-price-value-content a i.fas {
    font-size: 13px
}

.room-rate-general-box .room-rate-price-info-content {
    margin-left: 5px;
    font-weight: 400
}

.room-rate-general-box .room-rate-occupancy-content.number {
    text-align: left
}

.room-rate-button-box-item .reserve a {
    background: #6cab6c;
    color: #fff;
    padding: 10px 10px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    max-width: 120px;
    width: auto;
    display: block;
    text-align: center;
    margin: 0 auto
}

.room-rate-button-box-item .reserve a:hover {
    background: #4b844b
}

.room-rate-button-box-item .reserve a.select_room.unlock {
    background: #ed9803
}

.room-rate-button-box-item .reserve a.select_room.unlock:hover {
    background: #333
}

.room-rate-occupancy-content.number i.fa {
    vertical-align: text-bottom;
    line-height: 20px;
    margin: 0!important;
    padding: 0
}

.fancybox-wrap.fancybox-desktop.fancybox-type-inline.fancybox-opened {
    top: 30px;
    margin-bottom: 30px
}

.fancybox-outer .fancybox-inner {
    overflow: hidden!important;
    width: 100%!important;
    height: auto!important
}

.fancybox-inner .seleziona_camera .eti_lines .riga_riepilogo_date {
    width: 95%;
    padding: 0 20px;
    display: block;
    clear: both
}

.fancybox-inner .seleziona_camera .eti_lines {
    padding: 6px 0
}

.fancybox-inner .seleziona_camera {
    -webkit-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    -moz-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    box-shadow: 0 1px 2px 0 rgba(50,50,50,.2)
}

.fancybox-skin .fancybox-close {
    position: absolute;
    top: -10px!important;
    right: -10px;
    width: 25px;
    height: 25px;
    cursor: pointer;
    z-index: 8040;
    background: #333;
    display: block;
    text-align: center;
    line-height: 25px;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    border-radius: 30px;
    -webkit-box-shadow: 0 0 3px rgba(0,0,0,.5);
    -moz-box-shadow: 0 0 3px rgba(0,0,0,.5);
    box-shadow: 0 0 3px rgba(0,0,0,.5)
}

.fancybox-skin a.fancybox-item.fancybox-close {
    background-image: none
}

.fancybox-skin a.fancybox-item.fancybox-close:after {
    content: "";
    color: #fff;
    font: normal normal normal 14px/1 FontAwesome
}

.room-rate-general-box {
    margin-right: 20px;
    padding: 2px 0
}

.fancybox-inner #alternative-offers-details .campo {
    background: #f0ede8
}

.fancybox-inner #alternative-offers-details .campo {
    -webkit-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    -moz-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    box-shadow: 0 3px 3px 0 rgba(50,50,50,.2)
}

.fancybox-inner #alternative-offers-details .campo:hover {
    -ms-transform: none;
    -webkit-transform: none;
    transform: none;
    -webkit-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    -moz-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    box-shadow: 0 3px 3px 0 rgba(50,50,50,.2)
}

.room-rate-list:first-child {
    border-top: none
}

.room-rate-list {
    border-top: 1px solid #ddd
}

@media only screen and (min-width: 460px) and (max-width:619px),(min-width:830px) and (max-width:960px),(min-width:1200px) {
    .box-content-sx .room-rate-treatment-box {
        margin:0 auto;
        width: 100%;
        display: table
    }

    .room-rate-parsuasive-msg-box,.room-rate-treatment-box-item {
        display: table-cell;
        vertical-align: middle
    }

    .persuasive-message-rate .message:after,.persuasive-message-rate .message:before {
        content: "";
        position: absolute;
        right: 100%;
        width: 25px;
        height: 100%;
        left: -15px
    }

    .persuasive-message-rate .message:after {
        bottom: 0;
        background: linear-gradient(to top left,#6cab6c 50%,transparent 51%)
    }

    .persuasive-message-rate .message:before {
        top: 0;
        background: linear-gradient(to bottom left,#6cab6c 50%,transparent 51%)
    }

    .persuasive-message-rate .message p {
        text-align: right
    }
}

@media only screen and (max-width: 320px),(min-width:960px) and (max-width:1140px) {
    .campo_servizi .blocco_servizio .tariffa_servizio.single_room .row .qta label div {
        width:100%;
        display: block;
        text-align: center;
        padding: 0
    }
}

@media only screen and (min-width: 960px) and (max-width:1140px) {
    .month_selector .select_month {
        max-width:160px;
        width: 100%
    }

    .seleziona_giorni .checkin {
        max-width: 320px;
        width: 100%
    }

    .seleziona_giorni ul li {
        max-width: 310px;
        width: 95%;
        display: flex
    }
}

@media only screen and (min-width: 520px) {
    .col-hotel .info-bar .reserve-button {
        text-align:right;
        position: absolute;
        right: 10px;
        top: 0
    }
}

@media only screen and (min-width: 620px) {
    #hotel-list .box-hotel-info {
        margin:0 auto 10px;
        text-align: center;
        padding: 0;
        display: table;
        width: 100%
    }

    #hotel-list .box-hotel-info .col-hotel,#hotel-list .box-hotel-info .col-img {
        display: table-cell;
        text-align: left;
        vertical-align: top;
        background: #fff
    }

    #hotel-list .box-hotel-info .col-hotel {
        padding: 0 0 0 10px
    }

    #hotel-list .box-hotel-info .col-img {
        margin: 0 auto;
        text-align: center;
        clear: none;
        width: 30%;
        max-width: 240px;
        padding: 0
    }

    #hotel-list .box-hotel-info .col-img img {
        width: 240px;
        height: 150px
    }

    .col-hotel .info-bar .reserve-button {
        text-align: right;
        position: relative;
        right: 0;
        top: auto;
        bottom: 0
    }

    .dettagli_camera .cont_desc_camera_top {
        margin: 0 auto;
        display: table;
        width: 100%;
        padding-bottom: 20px
    }

    .cont_desc_camera_top .foto,.cont_desc_camera_top .text_camera {
        vertical-align: top;
        display: table-cell
    }

    .cont_desc_camera_top .foto {
        width: 30%
    }

    .cont_desc_camera_top .text_camera {
        width: 68%;
        padding: 0 0 0 2%
    }

    .room-rate-list {
        margin: 0 auto;
        text-align: center;
        display: table;
        width: 100%
    }

    .box-content-father,.box-content-sx {
        display: table-cell;
        vertical-align: middle
    }

    .box-content-sx {
        width: 55%
    }

    .box-content-father {
        width: 45%
    }

    .box-content-middle,.room-rate-general-box .room-rate-occupancy-content.number {
        text-align: right
    }

    .persuasive-message-rate .message.visibile {
        margin: 8px 0 0;
        display: inline-block;
        width: auto
    }

    .room-rate-parsuasive-msg-box .persuasive-message {
        padding: 0
    }
}

@media only screen and (min-width: 680px) {
    .accordion {
        line-height:40px
    }

    #box-risultati .accordion {
        -moz-border-radius: 4px;
        -webkit-border-radius: 4px;
        border-radius: 4px
    }

    .accordion .tariffa {
        line-height: 40px
    }

    .accordion-close .freccia,.accordion-open .freccia,.campo_servizi .accordion-close .freccia,.campo_servizi .accordion-open .freccia {
        margin: 10px
    }

    .definitivo.accordion {
        line-height: 30px;
        height: 30px
    }
}

@media only screen and (min-width: 960px) {
    .box-content-sx {
        width:50%
    }

    .box-content-father {
        width: 50%
    }

    .select_lang .box_lingue .elenco_lingue li a,.select_valute .box_valute .elenco_valute li a {
        background: #f0ede8
    }

    .select_lang .box_lingue .elenco_lingue li a:hover {
        background: #546c88;
        color: #fff
    }

    .select_valute .box_valute .elenco_valute {
        -webkit-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
        -moz-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
        box-shadow: 0 3px 3px 0 rgba(50,50,50,.2)
    }
}

@media only screen and (min-width: 980px) {
    .seleziona_giorni.seleziona_giorni_extended ul li,.seleziona_giorni.seleziona_giorni_extended ul li.riepi {
        float:none;
        width: 100%;
        padding: 0;
        height: 40px;
        line-height: 40px;
        border-bottom: 1px solid #ddd;
        display: block
    }

    .seleziona_giorni.seleziona_giorni_extended ul li span {
        display: inline-block;
        vertical-align: middle;
        text-align: left;
        font-size: 13px;
        font-weight: 400
    }

    .seleziona_giorni.seleziona_giorni_extended ul li span.notti {
        width: 20%
    }

    .seleziona_giorni.seleziona_giorni_extended ul li span.partenza {
        width: 20%
    }

    .seleziona_giorni.seleziona_giorni_extended ul li span.prezzo {
        width: 25%;
        font-weight: 700
    }

    .seleziona_giorni.seleziona_giorni_extended ul li span.vai {
        width: 20%;
        margin: 5px 20px 0;
        text-align: right;
        float: right
    }

    .seleziona_giorni.seleziona_giorni_extended ul li .vai a.seleziona {
        padding: 5px 10px;
        color: #fff
    }

    .seleziona_giorni.seleziona_giorni_extended ul li .disp {
        margin: 14px 20px
    }

    .tariffa .price {
        color: #546c88
    }
}

@media only screen and (min-width: 1140px) {
    .col-hotel .characteristics-hotel {
        display:block
    }

    .box-content-sx {
        width: 60%
    }

    .box-content-father {
        width: 40%
    }
}

@media only screen and (min-width: 1800px) {
    #persuasive-messages-general,#persuasive-messages-summary {
        position:absolute;
        top: 152px;
        left: 70px
    }

    .message.general-messages,.message.summary-messages {
        top: 0;
        bottom: auto
    }

    #persuasive-messages-general .message,#persuasive-messages-summary .message {
        background: rgba(0,0,0,.7)!important;
        border-right: 3px solid #6cab6c;
        border-left: 0
    }

    #persuasive-messages-general .message p,#persuasive-messages-summary .message p {
        font-size: 15px;
        line-height: 20px
    }

    .persuasive-message.persuasive-message-room {
        bottom: 12px!important;
        position: absolute
    }
}

@media only screen and (max-width: 680px) {
    .tariffe .cont-decr-camera {
        margin:0 auto;
        text-align: left;
        padding: 0;
        display: inline-block
    }

    .persuasive-message.persuasive-message-room {
        position: relative!important;
        width: auto;
        max-width: 320px;
        min-width: 240px;
        padding-bottom: 0;
        box-shadow: none!important;
        right: 0;
        left: auto;
        float: right;
        bottom: 0;
        padding: 0 0 20px 0;
        display: inline-block
    }

    .visibile {
        margin-top: 0!important;
        margin-bottom: 0!important
    }

    .alternative-offer .alternative-offer-message {
        max-width: 220px!important;
        min-width: auto!important
    }

    .alternative-offer .message p {
        text-align: center;
        float: none
    }

    .alternative-offer-message i.fa {
        top: -7px;
        background: #333;
        width: 14px;
        text-align: center;
        height: 14px;
        line-height: 14px;
        border-radius: 50px;
        color: #fff;
        right: -7px;
        position: absolute;
        font-size: 9px;
        vertical-align: middle;
        font-weight: lighter
    }

    .blocco_tipo ul li .cont-nome_tariffa {
        width: 100%;
        padding: 0;
        position: relative;
        clear: both;
        display: block
    }

    .persuasive-message-rate .message {
        right: 0
    }

    .accordion.full.accordion-open {
        margin-bottom: 0
    }

    .banner_comparativo .row_portale ul {
        display: block;
        margin: 0 auto
    }

    .banner_comparativo .row_portale ul li {
        width: 100%;
        padding: 10px 0!important;
        border-top: 1px solid #ccc;
        display: block;
        clear: both
    }

    .banner_comparativo .row_portale ul li:first-child {
        border-top: none
    }

    .banner_comparativo .row_portale ul li .blocco .prezzo,.banner_comparativo .row_portale ul li.score .blocco .prezzo {
        text-align: left;
        padding: 0 20px!important
    }

    .banner_comparativo .row_portale ul li .blocco .icona i.far {
        font-size: 22px
    }

    .banner_comparativo .row_portale ul li .blocco .prezzo .portale {
        padding-right: 15px
    }

    .banner_comparativo .row_portale ul li .blocco .prezzo .tariffa_comp {
        display: inline-block;
        float: none
    }

    .title_comparison_first,.title_comparison_second {
        display: block;
        width: 100%
    }

    #pulsante_add_services,#pulsante_pkpass_download,.pulsante_stampa_conferma {
        font-size: 1em;
        display: block;
        margin: 0 auto;
        text-align: center;
        width: 80%;
        margin-bottom: 10px
    }
}

@media only screen and (max-width: 400px) {
    .campo .foto {
        margin:0 auto;
        text-align: center;
        width: 100%
    }

    .campo .tariffe {
        width: 100%;
        margin: 0;
        padding: 0 10px 10px
    }

    .accordion {
        margin: 0
    }

    .box_riepi.cancellation .riga .label {
        width: 35%;
        padding: 6px 20px;
        font-weight: 600
    }

    .fancybox-inner .seleziona_camera .eti_lines .riga_riepilogo_date {
        float: left;
        width: 100%;
        line-height: 20px;
        padding: 0
    }

    #box-risultati .contenitore_pulsanti .caricamento_contenitore,.contenitore_pulsanti .pulsante_stampa_conferma {
        width: 90%;
        margin: 10px auto;
        display: block
    }
}

div#no_soluzioni_cross_selling {
    background: #fff;
    clear: both;
    padding: 10px;
    margin-bottom: 0
}

.cross_selling_testo_personalizzato>table {
    width: 100%!important
}

.cross_selling_testo_personalizzato {
    background: #fff;
    padding: 0 10px;
    margin-bottom: 10px
}

#header-mobile-riepilogo {
    display: none;
    min-width: 100px;
    padding: 5px;
    background: #6cab6c;
    color: #fff;
    text-transform: uppercase;
    vertical-align: middle;
    cursor: pointer
}

@media screen and (max-width: 680px) {
    #header-mobile-riepilogo {
        display:table-cell
    }

    .box_prezzo .riga.riga_totali {
        display: table;
        padding: 0 10px;
        box-sizing: border-box
    }

    .box_prezzo .riga.riga_totali .label {
        float: none;
        width: auto;
        display: table-cell
    }

    .box_prezzo .riga.riga_totali .risultato {
        float: none;
        width: auto;
        display: table-cell
    }
}

#credit-card-data .box_riepi .riga {
    padding: 10px 0;
    font-weight: 700
}

#header-mobile-riepilogo i {
    color: #fff;
    font-size: 18px
}

div#riepilogo-mobile {
    display: table-cell;
    text-align: center;
    vertical-align: middle;
    min-width: 80px
}

div#riepilogo-mobile span {
    display: inline-block;
    line-height: 130%;
    padding: 0 5px
}

div#info-riepilogo-mobile {
    display: table-cell;
    text-align: center;
    vertical-align: middle;
    color: #fff;
    font-size: 18px;
    width: 30px
}

div#alternative-offers-details {
    display: none
}

div#cross-selling-results {
    background: #fff
}

#riepilogo_viaggio #chiudi_menu_dx {
    display: none
}

.footer-link.codice_citr {
    padding-top: 5px
}

.box_room_categories {
    clear: both;
    padding: 10px 0 7px;
    font-size: 14px
}

.list_room_cat {
    padding: 3px 8px;
    margin-bottom: 3px;
    opacity: .8
}

.list_room_cat.active,.list_room_cat:hover {
    background: rgba(0,0,0,.08);
    opacity: 1
}

.list_room_cat:hover {
    background: rgba(0,0,0,.11);
    opacity: 1;
    cursor: pointer
}

.check_room_cat,.label_room_cat {
    display: inline-block;
    vertical-align: middle
}

.check_room_cat {
    font-size: 18px;
    margin-right: 8px
}

.label_room_cat span {
    margin-left: 5px;
    opacity: .6
}

#selects_gruppo .fal {
    color: #6d5934
}

.group-page h2 .nome_struttura {
    color: #546c88
}

.link-mappa a:before {
    color: #6cab6c
}

.label .fa-star,span.stars i {
    color: #d9b336
}

.filtro_lista ul li:hover {
    cursor: pointer;
    background: rgba(0,0,0,.05)
}

.info-bar {
    background: #efefef
}

.group-page span.stelle_aggiuntive {
    color: #222
}

.col-hotel h2 a,.col-hotel h2 a:hover {
    color: #546c88
}

input.myinput_seleziona.booking_btn_sel {
    background: #6cab6c
}

input.myinput_seleziona.booking_btn_sel:hover {
    opacity: .9
}

.infowindow input {
    background: #6cab6c
}

.infowindow input:hover {
    background: #6cab6c
}

.content-box-no-soluzioni-hotel .no_soluzioni_dispo a:hover,.content-box-no-soluzioni-hotel .no_soluzioni_dispo:hover,.content-box-no-soluzioni-hotel .trova_dispo_alternativa a:hover,.content-box-no-soluzioni-hotel .trova_dispo_alternativa:hover {
    background: #546c88
}

.col-hotel .min-price span.prezzo_medio,.col-hotel .min-price span.price,.col-hotel .min-price span.valuta {
    color: #546c88
}

.infowindow input {
    background: #6cab6c
}

.transition-overlay {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 20px;
    position: fixed;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,.6);
    z-index: 10000
}

.transition-overlay img.hotel-logo {
    width: 100%;
    max-width: 250px;
    height: auto
}

div.is-loading-content {
    border-radius: 5px;
    overflow: hidden;
    background-color: rgba(255,255,255,.6)!important
}

div.spinner-container {
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    justify-content: center
}

.dots {
    display: flex;
    flex-direction: row;
    gap: 15px;
    justify-content: center;
    align-self: center;
    align-items: center
}

.dot {
    width: 15px;
    height: 15px;
    border-radius: 50%;
    background-color: var(--title_color);
    will-change: transform
}

.dots.small {
    gap: 5px
}

.dots.small .dot {
    width: 5px;
    height: 5px
}

:root {
    --texts_color: #222222;
    --default_light_bg: #efefef;
    --dark_background: #333333;
    --hover_light_button: #333333;
    --title_color: var(--buttons_bg);
    --buttons_bg: #EF9D5C;
    --buttons_bg_select: #EF9D5C;
    --buttons_bg_hover: #DB843F;
    --bg_upselling: #78C878;
    --bg_ota_comparison: #78C878;
    --bg_persuasivi: #78C878;
    --txt_persuasivi: #ffffff;
    --footer_background: #F9F9F9;
    --border_radius_box: 5px;
    --border_radius_buttons: 50px;
    --calendar_past: #f7f7f7;
    --calendar_available: #c2fec5;
    --calendar_unavailable: #FFDDDD;
    --calendar_minstay: #f9ffa8;
    --buttons_text: #ffffff
}

:root {
    --calendar_past_we: color-mix(in srgb, var(--calendar_past), black 3%);
    --calendar_available_we: color-mix(in srgb, var(--calendar_available), black 5%);
    --calendar_unavailable_we: color-mix(in srgb, var(--calendar_unavailable), black 5%);
    --calendar_minstay_we: color-mix(in srgb, var(--calendar_minstay), black 5%);
    --light_bg: color-mix(in srgb, var(--default_light_bg), white 50%);
    --light_bg_hover: color-mix(in srgb, var(--light_bg), black 3%);
    --dark_background_90: oklch(from var(--dark_background) l c h / 0.8);
    --bg_riepilogo_mobile: color-mix(in srgb, var(--buttons_bg), white 85%);
    --bg_riepilogo_mobile_accordion: color-mix(in srgb, var(--buttons_bg), white 70%);
    --bg_upselling_light: color-mix(in srgb, var(--bg_upselling), white 70%);
    --box_background: #ffffff;
    --buttons_text_hover: #ffffff;
    --header_link: #ffffff;
    --border_color: #e9e9e9;
    --base_calendario: #89EBAD;
    --cancella: #dd0000;
    --special_offer: #dd0000;
    --link_color: var(--buttons_bg);
    --icon_color: #777777;
    --text_color_grey: #777777;
    --bg_alert: #FFDDDD;
    --txt_alert: #CC0000;
    --footer_background_privacy: color-mix(in srgb, var(--footer_background), black 3%);
    --box_shadow: 0px 3px 3px 0px rgba(50, 50, 50, 0.2);
    --footer_text: var(--texts_color);
    --dark_background_120: color-mix(in srgb, var(--buttons_bg), black 30%);
    --dark_background_30: oklch(from var(--buttons_bg) l c h / 0.3);
    --calendar: oklch(from var(--texts_color) l c h / 0.7);
    --bg_ota_comparison_light: color-mix(in srgb, var(--bg_ota_comparison), white 80%);
    --title_size: 22px;
    --title_size-riepilogo: 20px;
    --title_size_rate: 20px;
    --sub_title_size: 16px;
    --text_size_treatment: 15px;
    --text_size: 13px;
    --mini_text_size: 12px;
    --label_text_size: 14px;
    --link_text_size: 14px;
    --button_text_size: 16px;
    --button_upgrade: 14px;
    --price_size: 16px;
    --val_price_size: 13px;
    --details_text: 13px;
    --descrition_text: 14px;
    --title_price_banner_bottom: 14px;
    --price_banner_bottom: 22px
}

@media only screen and (max-width: 960px) {
    :root {
        --border_radius_box:0;
        --title_size: 18px;
        --box_shadow: 0px 3px 3px 0px rgba(50, 50, 50, 0.2)
    }
}

#header {
    float: none;
    display: flex;
    width: 100%;
    margin-bottom: 0;
    background: #fff;
    z-index: 210;
    position: relative
}

.line {
    background: var(--dark_background_90);
    color: #fff
}

.line {
    height: 40px;
    line-height: 40px
}

#hp {
    display: flex;
    align-items: center;
    justify-content: space-between;
    line-height: normal
}

#hp h1 {
    font-size: 13px;
    font-weight: 600
}

#group_link a,#hp a {
    float: left;
    line-height: 40px;
    color: #222
}

div#hp {
    margin-right: auto;
    font-weight: 600
}

div#hp i {
    padding: 0
}

div#hp i:first-of-type {
    Margin-left: 10px
}

#cancella_modifica_top a,.select_lang .lang a,.select_valute .valute a {
    line-height: 40px
}

.line .container {
    display: flex;
    align-items: center
}

#cancella_modifica_top a,#group_link a,#hp a,#sheet-link-top a,.select_lang .lang a.spento,.select_valute .valute a.spento {
    color: var(--header_link);
    font-size: var(--text_size)
}

.day_box.available,.day_box.disp_min_stay,.pointer,a,div#hp {
    font-size: var(--text_size)
}

.select_lang .lang a i,.select_valute .valute a i {
    float: none;
    height: 30px;
    padding: 0;
    width: auto;
    font-size: var(--mini_text_size)
}

.top-menu-item .lang a.spento i,.top-menu-item .valute a.spento i {
    margin-right: 0!important
}

.select_lang .lang a,.select_valute .valute a {
    width: auto
}

.select_lang {
    float: none;
    width: auto;
    padding: 0;
    margin: 0
}

.select_valute {
    float: none;
    width: auto;
    padding: 0;
    margin: 0
}

.select_lang,.select_valute {
    position: relative
}

.select_lang .lang a,.select_valute .valute a {
    background: rgba(255,255,255,.2);
    color: #fff;
    padding: 0 10px;
    width: auto
}

#cancella_modifica_top a:hover,#sheet-link-top a:hover,.select_lang .lang a.spento:hover,.select_valute .valute a.spento:hover {
    background: rgba(255,255,255,.2)
}

.select_lang .lang a:not(.spento) i,.select_valute .valute a:not(.spento) i {
    rotate: 180deg
}

.select_lang .box_lingue .elenco_lingue,.select_valute .box_valute .elenco_valute {
    padding: 8px
}

.select_lang .box_lingue,.select_valute .box_valute {
    position: absolute;
    z-index: 202;
    width: max-content;
    height: auto;
    display: none;
    right: 0;
    top: 40px;
    background: #fff;
    box-shadow: var(--box_shadow)
}

.select_lang .box_lingue .elenco_lingue li a,.select_valute .box_valute .elenco_valute li a {
    padding: 2px 12px
}

.select_lang .box_lingue .elenco_lingue li a:hover,.select_valute .box_valute .elenco_valute li a:hover {
    color: #222;
    background: rgba(0,0,0,.1)!important
}

.select_lang .box_lingue .elenco_lingue li a,.select_valute .box_valute .elenco_valute li a {
    padding: 2px 12px;
    margin: 1px 0;
    border: 0
}

.select_lang .box_lingue .elenco_lingue li a:hover,.select_valute .box_valute .elenco_valute li a:hover {
    color: #222;
    background: var(--calendar_past_we);
    border-radius: 4px
}

#step {
    float: none;
    margin-bottom: 0;
    padding: 0;
    background: var(--box_background)
}

#step .container {
    display: flex;
    align-items: center;
    justify-content: space-between
}

.logo-hotel {
    margin-right: auto;
    max-width: 50%
}

.logo-hotel img {
    width: auto;
    max-width: 100%
}

.link-gruppo,.link-homepage {
    padding: 0 20px;
    text-transform: capitalize
}

.link-gruppo a i,.link-homepage a i {
    padding: 8px
}

#group_link a {
    margin-left: 0
}

#link_pacchetti,#torna_risultati_ricerca,#torna_tariffe_pacchetti {
    padding: 0 25px;
    line-height: 35px
}

.link-gruppo {
    border-left: 1px var(--texts_color) solid
}

body#cancellation_page #wrapper {
    margin-top: 0!important
}

#cancellation_page #blocco_scheda {
    display: none
}

#cancellation_page #social h3 {
    text-align: left;
    font-weight: 700;
    padding: 10px 20px;
    line-height: 30px;
    height: auto
}

#cancellation_page #social .campi_dati h2 {
    font-size: 1.4em
}

#cart {
    position: fixed;
    bottom: 0;
    width: 100%;
    max-width: 100%;
    z-index: 300
}

#cart .bar-container {
    background: var(--default_light_bg);
    box-shadow: 3px 0 5px 5px rgba(50,50,50,.13)
}

#cart .cart-swiper {
    width: 100%;
    padding: 0 50px
}

#cart .swiper-button-disabled {
    display: none
}

#cart .bar-container {
    display: flex;
    align-items: center
}

#cart .cart-slide .item {
    display: flex;
    cursor: pointer;
    position: relative
}

#cart .cart-slide .room-occupancy {
    color: var(--icon_color)
}

#cart .cart-slide .item {
    width: 100%
}

#cart .cart-slide .item .title {
    display: flex;
    justify-content: space-between;
    width: 100%;
    flex-direction: row;
    align-items: center
}

#cart .cart-slide .item .title .solution-summary {
    display: flex;
    flex-direction: column
}

#cart .cart-slide .item .title .solution-summary .room-name,.camera-dettagli .room-name,.solution-price .price {
    font-weight: 700;
    font-size: 14px;
    padding: 2px 0
}

.camera-dettagli .room-name,.solution-price .price {
    color: var(--buttons_bg)
}

#cart .cart-slide .item .title .solution-summary .room-name {
    color: var(--texts_color)
}

.solution-summary .product-name,.solution-summary .room-name {
    width: 200px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

#cart .swiper-slide {
    width: auto
}

#cart .cart-slide-box {
    background: var(--box_background);
    border-radius: var(--border_radius_box);
    box-shadow: var(--box_shadow);
    padding: 15px 20px
}

#cart .bar-container .cart-slide-box {
    margin: 10px 0
}

#cart .bar-container .mobile-cart-item {
    cursor: pointer
}

#cart .bar-container .action {
    padding: 30px 20px
}

#cart .bar-container a.continua.animsition-link {
    margin: 0;
    display: block
}

#cart .popup-container {
    position: relative
}

#cart .bar-container .popup {
    display: none
}

#cart .popup-container .card-slide-box {
    display: none
}

#cart .popup-container .popup.active {
    position: absolute;
    z-index: 400;
    bottom: 0
}

#cart .popup-container .popup.active:before {
    content: '';
    position: absolute;
    left: 0;
    top: 100%;
    height: 120px;
    width: 100%;
    cursor: pointer
}

#cart .datetime {
    display: block;
    font-style: italic
}

.navigation a.animsition-link {
    border-radius: var(--border_radius_buttons);
    font-size: var(--text_size);
    padding: 10px 25px;
    width: 100%;
    height: auto;
    line-height: initial;
    text-align: center;
    text-transform: uppercase;
    margin: 0 30px 0 20px
}

.total-price {
    text-align: center
}

.total-price span.label {
    font-size: var(--title_price_banner_bottom)
}

.bar-container .total-price .formatted-price {
    color: var(--buttons_bg);
    font-weight: 700;
    font-size: var(--price_banner_bottom)
}

#cart .camera-dettagli {
    width: 100%;
    margin-bottom: 10px
}

.camera-dettagli .price td,.camera-dettagli .product-name td,.camera-dettagli .room-name td {
    padding-bottom: 8px
}

.camera-dettagli .price td:last-of-type,.servizi #servizi-dettagli td:nth-child(2) {
    text-align: right
}

.camera-dettagli td .formatted-price,.formatted-price {
    font-size: 15px;
    font-weight: 700
}

.formatted-price .currency {
    padding-left: 5px
}

.servizi .servizi-dettagli {
    width: 100%
}

.servizi .servizi-dettagli tr td:has(.formatted-price ) {
    text-align: right
}

.servizi .servizi-dettagli th {
    text-align: left;
    font-weight: 700
}

.servizi .servizi-dettagli .quantity {
    font-weight: 700;
    margin-right: 5px
}

.servizi .servizi-dettagli .name {
    margin-right: 5px
}

.servizi .servizi-dettagli td {
    padding: 5px;
    background: var(--light_bg)
}

.servizi .servizi-dettagli tr td {
    border-bottom: 3px solid var(--box_background)
}

#servizi-dettagli .formatted-price {
    font-size: 13px
}

.action-remove .fa-remove {
    color: var(--txt_alert);
    padding: 0 0 0 5px;
    font-weight: 700;
    font-size: 14px;
    cursor: pointer;
    padding-top: 3px
}

.servizi #servizi-dettagli td {
    vertical-align: top
}

.loading {
    position: relative;
    overflow: hidden;
    pointer-events: none;
    cursor: default
}

.loading:before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: #ffffff87;
    background-image: url("/images/spinner.gif");
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 2em;
    z-index: 1000;
    overflow: hidden
}

#top-menu {
    display: flex;
    margin-left: auto
}

.top-menu-item {
    display: flex
}

.top-menu-item a {
    padding-left: 10px;
    padding-right: 10px
}

@media screen and (min-width: 960px) {
    #top-menu .link-gruppo,#top-menu .link-homepage,.label-menu-top {
        display:none
    }

    #toggle-menu-button {
        display: none
    }
}

@media screen and (max-width: 960px) {
    #header .line {
        height:auto;
        line-height: 30px;
        padding: 10px 0
    }

    #header .line .container {
        padding-left: 15px;
        padding-right: 15px
    }

    .contatti-footer .stelle,.stellenome {
        display: inline-block;
        font-size: 10px
    }

    .contatti-footer .stelle i.fa-star,.stellenome i.fa-star {
        font-weight: 700
    }

    .line .container {
        display: flex;
        align-items: flex-start;
        flex-wrap: wrap
    }

    div#hp {
        font-size: var(--descrition_text);
        max-width: 75%
    }

    #top-menu {
        display: none
    }

    #header.menu-open #top-menu {
        position: relative;
        color: var(--texts_color);
        display: flex;
        flex-direction: column;
        background: var(--box_background);
        box-shadow: var(--box_shadow);
        bottom: 0;
        margin-left: -15px;
        z-index: 0;
        padding: 20px 15px 20px;
        order: 5;
        margin-right: -15px;
        width: 100vh;
        margin-bottom: -10px;
        margin-top: 10px
    }

    #header.menu-open:after {
        content: "";
        display: block;
        width: 100%;
        position: fixed;
        top: 0;
        left: 0;
        height: 100%;
        background: rgba(0,0,0,.5);
        z-index: -2
    }

    .top-menu-item {
        display: flex;
        color: var(--texts_color);
        margin: 0!important;
        padding: 0!important;
        justify-content: space-between;
        align-items: center;
        line-height: initial!important;
        height: auto!important
    }

    .label-menu-top,.top-menu-item a {
        display: block;
        width: 100%;
        border: 0;
        padding: 5px 0!important;
        margin: 0!important;
        line-height: 25px!important;
        font-size: var(--text_size)
    }

    .top-menu-item a:hover {
        color: var(--texts_color)!important;
        background-color: var(--light_bg_hover)!important
    }

    .top-menu-item i {
        margin: 0 8px!important;
        padding: 0!important;
        display: inline-block;
        width: 20px;
        text-align: center;
        font-size: 14px
    }

    .link-gruppo {
        border: 0
    }

    #cancella_modifica_top a,#group_link a,#hp a,#sheet-link-top a,.select_lang .lang a.spento,.select_valute .valute a.spento {
        color: var(--texts_color)
    }

    #toggle-menu-button {
        font-size: 22px;
        cursor: pointer;
        padding-left: 20px
    }

    #toggle-menu-button .fa-xmark {
        display: none
    }

    #header.menu-open #toggle-menu-button .fa-bars {
        display: none
    }

    #header.menu-open #toggle-menu-button .fa-xmark {
        display: block
    }

    #header.menu-open #toggle-menu-button .fa-bars,#header.menu-open #toggle-menu-button .fa-xmark {
        line-height: 30px
    }

    .select_lang a,.select_valute a {
        line-height: 25px!important;
        padding: 0 15px!important;
        background-color: var(--light_bg_hover)!important;
        border-radius: var(--border_radius_buttons);
        display: flex;
        align-items: center;
        margin-right: 15px!important
    }

    .select_lang .lang a,.select_valute .valute a {
        background: 0 0;
        color: var(--texts_color)
    }

    .select_lang .box_lingue .elenco_lingue li a,.select_valute .box_valute .elenco_valute li a {
        margin-right: 0!important;
        padding: 4px 15px!important
    }
}

.day_box.past_date {
    background: var(--calendar_past)
}

.day_box.header.weekend,.day_box.past_date.weekend {
    background: var(--calendar_past_we)
}

.day_box.current_month,.day_box.other_month,.leg_available {
    background: var(--calendar_available)
}

.day_box.weekend {
    background: var(--calendar_available_we)
}

.day_box.no-disp,.leg_unavailable {
    background: var(--calendar_unavailable)
}

.day_box.disp_min_stay,.leg_min_stay {
    background: var(--calendar_minstay)
}

.day_box.disp_min_stay.weekend {
    background: var(--calendar_minstay_we)
}

.day_box.other_month {
    opacity: .6
}

.day_box.selected {
    border-color: #666;
    z-index: 1;
    -webkit-box-shadow: inset 0 0 3px 0 rgba(0,0,0,.5);
    -moz-box-shadow: inset 0 0 3px 0 rgba(0,0,0,.5);
    box-shadow: inset 0 0 3px 0 rgba(0,0,0,.5)
}

.day_box.no-disp .day_text {
    color: var(--txt_alert)
}

.calendar_row .day_box {
    border: 0;
    margin: .5%;
    border-radius: 2px;
    width: 13.28%;
    height: 47px;
    overflow: hidden
}

.calendar_row .day_box span.day_number {
    position: relative;
    background: 0 0;
    left: auto;
    top: auto;
    text-align: center;
    width: 100%;
    font-size: 14px;
    padding-top: 3px;
    line-height: 20px
}

.calendar_row .day_box .day_text {
    height: auto
}

.calendar_row .day_box .day_text .day_nights {
    display: none;
    font-size: 9px
}

.calendar_row .day_box .day_text .from {
    display: none
}

.calendar_row .day_box .day_text .prices {
    display: block;
    font-weight: 700;
    line-height: 10px;
    font-size: 10px
}

.calendar_row .day_box .day_text:has(.from_los) {
    font-size: 10px
}

span.valuta.valuta_calendar {
    font-weight: 400;
    font-size: 8px
}

.day_text span.valuta.valuta_calendar {
    display: block
}

#seleziona_giorni span.valuta.valuta_calendar {
    font-size: 10px
}

.calendar_row.day_name .day_box {
    background: 0 0;
    height: auto
}

select#mese_selezionato {
    text-align: center;
    text-transform: uppercase;
    font-size: 14px;
    border: 0
}

.custom_select:after {
    display: none
}

.month_selector {
    margin-bottom: 10px;
    display: flex;
    width: 100%
}

.month_selector .month_button {
    background-color: transparent;
    margin: 0;
    height: 32px;
    vertical-align: middle;
    width: 40px;
    text-align: center
}

.month_selector .select_month {
    position: relative;
    border: 0;
    font-size: 13px;
    width: 100%;
    text-align: center
}

.custom_select select {
    width: 80%
}

.month_selector .month_button .fa {
    display: initial;
    vertical-align: middle;
    padding: 0;
    width: 30px;
    margin: 0;
    line-height: 30px;
    font-size: 18px
}

.month_selector .month_button:hover {
    color: initial;
    background-color: initial
}

.month_selector .month_button a {
    height: 32px;
    width: 32px;
    border-radius: 20px;
    display: block;
    line-height: 32px
}

.month_selector .month_button a:hover {
    color: initial;
    background: #e2e2e2
}

.prev_month {
    -webkit-transform: rotate(0);
    -moz-transform: rotate(0);
    -o-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0)
}

#blocco_scheda {
    margin-bottom: 0
}

.tab_carrello ul li.sel a {
    opacity: 1;
    border-radius: 50px;
    color: var(--buttons_text)
}

div#nav_tab_carrello {
    margin-bottom: 15px
}

.tab_carrello ul li {
    width: 50%;
    display: inline-block;
    box-sizing: border-box
}

.tab_carrello ul li a {
    background: var(--box_background);
    opacity: 1;
    border-radius: 50px;
    border: 0;
    float: none;
    width: 100%;
    height: 50px;
    line-height: 50px;
    text-align: center;
    text-decoration: none;
    color: #222;
    font-size: 1.2em;
    box-sizing: border-box;
    display: block
}

.tab_carrello ul li:first-child {
    padding-right: 5px
}

.tab_carrello ul li:nth-child(2) {
    padding-left: 5px
}

div#dida {
    display: none
}

div#legenda_calendario {
    display: none
}

.flaticon-keyboard53:before {
    font-size: 15px
}

.riga .pulsanti a {
    float: none;
    width: 100%;
    background: var(--box_background);
    line-height: 20px;
    padding: 2px 5px;
    box-sizing: border-box;
    margin: 0;
    text-align: right;
    display: block;
    font-size: var(--text_size)
}

#camere li {
    border-bottom: 0
}

.tab_carrello ul {
    float: none;
    width: 100%;
    margin-bottom: 10px;
    background: var(--box_background);
    border-radius: 50px
}

div#seleziona_giorni {
    flex-direction: column
}

.seleziona_giorni .checkin {
    display: flex;
    border: none;
    border-radius: var(--border_radius_buttons);
    background: var(--light_bg);
    padding: 5px 10px;
    height: auto
}

.seleziona_giorni .checkin.attivo,.seleziona_giorni ul li.attivo {
    background: 0 0!important;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none
}

.modifica,.seleziona_giorni .checkin span.dx,.seleziona_giorni .checkin span.sx {
    float: none
}

.seleziona_giorni i {
    display: none!important
}

.seleziona_giorni .checkin span.sx {
    margin-right: auto
}

.seleziona_giorni .checkin span.dx {
    line-height: 34px;
    margin-right: 5px;
    font-size: .9em
}

.modifica {
    line-height: 20px;
    height: 20px;
    background: var(--box_background);
    color: #222;
    padding: 5px 15px;
    font-size: var(--mini_text_size);
    margin: 0;
    border-radius: var(--border_radius_buttons);
    vertical-align: middle;
    border: 1px solid var(--border_color)
}

.modifica:hover {
    background: var(--buttons_bg_hover);
    color: var(--buttons_text_hover)
}

.seleziona_giorni .checkin span.sx {
    width: auto;
    height: 30px;
    line-height: 34px;
    margin-left: 5px;
    font-size: 12px
}

.seleziona_giorni .checkin span.sx span {
    margin-left: 0;
    font-weight: 700
}

.seleziona_giorni ul li.riepi {
    text-transform: initial;
    background: #fff
}

.seleziona_giorni ul li .notti {
    float: left;
    width: 60px;
    text-transform: capitalize
}

.seleziona_giorni ul li.we {
    background: #f8f8f8
}

.seleziona_giorni ul li .disp.available {
    background: #b6e3d6
}

.seleziona_giorni ul li .disp {
    float: left;
    width: 10px;
    line-height: 10px;
    margin: 9px 7px 9px 0;
    border: 0
}

.seleziona_giorni ul li .notti {
    float: none;
    width: 55px
}

.seleziona_giorni ul li .partenza {
    float: none;
    width: 70px;
    font-weight: 700
}

.seleziona_giorni ul li .prezzo {
    float: none;
    width: auto;
    font-weight: 700;
    margin-right: auto
}

.seleziona_giorni ul li .vai {
    float: none;
    width: 90px;
    text-align: center;
    line-height: 22px;
    margin-top: 5px;
    font-size: 9.5px
}

.seleziona_giorni ul li .vai a.seleziona {
    display: inline-block;
    background: var(--buttons_bg);
    padding: 1px 10px;
    color: var(--buttons_text);
    border-radius: 15px;
    font-size: 11px;
    margin-right: 0
}

.seleziona_giorni ul li .vai a.seleziona:hover {
    background: var(--buttons_bg_hover)
}

.seleziona_giorni ul li {
    line-height: 34px;
    height: 34px;
    border-bottom: 1px solid #fff;
    background: var(--light_bg)
}

.seleziona_giorni ul li .disp {
    float: left;
    width: 10px;
    line-height: 10px;
    margin: 11px 7px 11px 6px;
    border: 0
}

.seleziona_giorni ul li:hover {
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none
}

.month_button i {
    padding: 0
}

#calcolo_finale .box_prezzo .riga {
    border-bottom: none;
    line-height: 50px;
    padding: 0 10px
}

.box_prezzo .riga.riga_totali .label,.box_prezzo .riga.riga_totali .risultato {
    font-size: 16px;
    text-transform: uppercase;
    font-weight: 700
}

#calcolo_finale .riga .verifica.attivo {
    border-radius: 50px;
    margin: 20px;
    width: auto
}

.calendar_row .day_box .min-los-required .prices {
    font-weight: 400
}

.min-los-required span.valuta.valuta_calendar {
    font-weight: 400;
    font-size: 10px
}

a.disabled_link i {
    opacity: .4
}

.month_button:has(.disabled_link) {
    pointer-events: none;
    cursor: default
}

.month_selector .month_button:hover a.disabled_link {
    background: 0 0
}

.carrello .contenuto .box_contenuto {
    float: none;
    width: 100%;
    padding: 20px 20px 0;
    background: 0 0;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    display: flex;
    margin-bottom: 0;
    flex-direction: column
}

#box_carrello {
    background-color: var(--box_background);
    width: 100%
}

.stile_carrello {
    background: 0 0;
    box-shadow: none
}

#sx .stile_carrello {
    background-color: var(--box_background)
}

.carrello .contenuto {
    float: none;
    width: 100%;
    margin: 0;
    padding: 0
}

.seleziona_giorni ul li {
    float: none;
    width: 100%;
    margin: 0;
    padding: 0;
    display: flex;
    max-width: 100%
}

.seleziona_giorni ul li:nth-child(8) .notti {
    float: none;
    width: auto;
    margin-right: auto
}

#cont_finestra_portale {
    max-width: initial
}

#camere li .row_camera.bambini {
    margin-top: 4px;
    padding-right: 0;
    flex-wrap: wrap;
    justify-content: flex-end
}

#camere li .row_camera.bambini .num_camera {
    line-height: 30px;
    font-size: 90%;
    vertical-align: middle;
    margin-right: 15px;
    width: auto!important;
    text-align: right;
    padding: 0!important
}

.num_camera div {
    display: inline-block
}

#camere li .row_camera.bambini .num_camera div {
    font-size: 1em;
    text-transform: none;
    font-weight: 400
}

#camere li .row_camera.bambini .seleziona .valore span.eta_bambino_label {
    display: none
}

#camere li .row_camera.bambini .seleziona .valore .qtyminus,#camere li .row_camera.bambini .seleziona .valore .qtyplus {
    display: none!important
}

#camere li .row_camera.bambini .seleziona {
    float: none;
    width: auto;
    line-height: 30px;
    height: 30px;
    font-size: .9em;
    text-align: center;
    margin-right: 5px;
    margin-bottom: 0
}

.slick-next,.slick-prev {
    height: 36px;
    width: 36px;
    border-radius: 20px
}

.carrello .contenuto .box_contenuto:has(a.inserisci_sconto) {
    padding: 0!important;
    margin: 0
}

.riga .inserisci_sconto {
    display: block;
    width: 100%;
    margin: 0;
    line-height: 20px;
    background-color: var(--light_bg_hover);
    color: var(--texts_color);
    padding: 15px 20px;
    box-sizing: border-box;
    font-size: 1.1em;
    border-radius: 0;
    font-weight: 500;
    text-align: center;
    text-decoration: none
}

.riga .inserisci_sconto i {
    font-size: 15px;
    vertical-align: middle
}

div#nav_tab_carrello {
    display: none
}

#box_numero_ospiti h2,#calendar h2,.riga h2 {
    background: 0 0!important;
    color: var(--texts_color)!important;
    text-transform: uppercase
}

.camera_sel i {
    display: none!important
}

.camera_sel {
    float: none;
    width: 100%;
    line-height: 20px;
    padding: 0 10px;
    margin-top: 5px;
    border-bottom: 0;
    display: flex
}

.camera_sel .ncamera {
    float: none;
    width: 100px;
    margin-left: 0;
    font-size: .9em;
    margin-right: auto
}

.camera_sel .eti {
    float: none;
    width: 101px;
    text-align: center;
    font-size: .9em;
    color: var(--calendar)
}

.camera_sel:after {
    content: "";
    display: inline-block;
    width: 30px
}

.qty {
    font-size: 12px;
    width: 30px;
    height: 30px;
    top: 0;
    position: relative;
    background: 0 0
}

#first_page .qty {
    height: auto;
    top: -1px
}

input.qtyminus,input.qtyplus {
    width: 20px;
    height: 20px;
    font-size: 20px;
    border: none;
    background: #ccc;
    color: var(--texts_color);
    border-radius: 100%;
    line-height: 15px
}

#camere li {
    padding: 10px;
    border-bottom: 1px solid var(--border_color)
}

#camere li:first-child {
    padding-top: 5px
}

#camere li:last-child {
    border: none!important
}

#camere li .row_camera .seleziona .valore {
    display: inline-block;
    width: auto;
    height: 29px;
    line-height: 30px;
    border: 1px solid var(--border_color);
    border-radius: 20px;
    padding: 1px 4px
}

#camere li .row_camera {
    float: none;
    width: 100%;
    height: auto;
    display: flex
}

#camere li .row_camera .num_camera {
    float: none;
    width: 100px;
    margin-left: 0;
    line-height: 30px;
    height: 30px;
    margin-right: auto;
    font-weight: 500;
    text-transform: uppercase;
    font-size: 1.1em
}

#camere li .row_camera .seleziona {
    float: none;
    width: 101px;
    line-height: 30px;
    height: 30px;
    font-size: .9em;
    text-align: center
}

#camere li .row_camera .cancel {
    float: none;
    width: 20px;
    line-height: 30px;
    height: 30px;
    text-align: right
}

#camere li .row_camera .cancel i {
    padding: 0
}

#camere li .row_camera .cancel a,#camere li .row_camera .cancel a:hover {
    color: var(--cancella)
}

#camere li:first-child .row_camera .cancel a {
    visibility: hidden
}

.riga .pulsanti {
    margin: 0 0 20px 0
}

.box_contenuto .riga .pulsanti a.aggcalendario {
    margin-top: 10px
}

.box_contenuto .riga:has(#container_calendar) {
    border-top: 1px solid var(--border_color);
    padding-top: 10px
}

.carrello .contenuto .box_contenuto:nth-child(2) {
    padding-top: 0
}

.carrello .contenuto .box_contenuto .riga .pulsanti a:hover {
    background: 0 0!important
}

.t-center {
    display: none
}

select.select-eta-bambini {
    padding: 0 3px;
    border: 0;
    background: 0 0;
    font-size: 12px;
    top: -1px;
    position: relative
}

.riga .pulsanti a.aggcalendario {
    width: auto;
    background-color: var(--buttons_bg)!important;
    color: var(--buttons_text);
    text-align: center;
    padding: 8px;
    font-size: var(--text_size)
}

.carrello .contenuto .box_contenuto .riga .pulsanti a.aggcalendario:hover {
    background-color: var(--buttons_bg_hover)!important;
    color: var(--buttons_text)!important
}

div#quick_reserve {
    position: relative
}

div#box_loyalties .box_contenuto {
    background-color: var(--box_background);
    display: table;
    width: 100%;
    padding: 0;
    -webkit-box-shadow: var(--box_shadow);
    -moz-box-shadow: var(--box_shadow);
    box-shadow: var(--box_shadow);
    top: -10px;
    position: relative
}

#box_loyalties .box_contenuto .riga:first-child {
    background: var(--light_bg)!important;
    padding: 10px 18px;
    margin: 0
}

#box_loyalties .box_contenuto .riga h2 {
    font-size: 14px;
    text-transform: uppercase
}

#loyalties p {
    margin-bottom: 15px;
    font-size: 14px
}

.fancybox-wrap .box_contenuto:nth-child(2) .riga:first-child {
    border-top: 0 solid var(--border_color);
    padding-top: 0
}

.fancybox-wrap .row_camera.occupazione {
    display: flex;
    flex-wrap: wrap;
    position: relative
}

.fancybox-wrap .num_camera {
    width: 100%!important
}

.fancybox-wrap .azioni_camera {
    background: var(--default_light_bg);
    width: 100%;
    border-radius: var(--border_radius_box);
    padding: 12px
}

.fancybox-wrap .num_camera {
    padding: 0 20px!important
}

.fancybox-wrap .box_azione {
    display: flex;
    justify-content: space-between;
    padding: 4px;
    align-items: center
}

.fancybox-wrap .valore {
    background: var(--box_background);
    padding: 3px;
    border: 1px solid var(--border_color);
    border-radius: var(--border_radius_buttons);
    display: flex;
    align-items: center
}

.fancybox-wrap .qty {
    font-size: 12px;
    width: 30px;
    height: 20px;
    top: 0;
    position: relative;
    background: 0 0
}

.fancybox-wrap #camere li .row_camera .cancel {
    float: none;
    width: 20px;
    line-height: 30px;
    height: 30px;
    text-align: right;
    position: absolute;
    right: 0;
    top: 0
}

.fancybox-wrap #camere li {
    padding: 0 0 10px 0;
    border-bottom: 0
}

.fancybox-wrap #carrello {
    position: relative
}

.top-riepilogo #quick_reserve {
    padding-top: 10px;
    z-index: 200;
    background: var(--box_background)
}

.fancybox-wrap .carrello .contenuto .box_contenuto {
    padding-top: 0!important
}

.fancybox-wrap .carrello .contenuto .box_contenuto:has(.viaggio) {
    padding: 0!important
}

.fancybox-wrap .carrello .contenuto#quick_reserve .box_contenuto {
    padding-top: 15px!important
}

.fancybox-wrap #coupon,.fancybox-wrap #coupon>div {
    display: flex;
    flex-direction: column
}

#coupon>div>div {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: space-between;
    border: 1px solid var(--border_color);
    padding: 0;
    border-radius: var(--border_radius_buttons);
    margin-top: 15px
}

#first_page #coupon {
    padding: 20px
}

#first_page #coupon h2 {
    text-transform: uppercase
}

.cont_interno_1_2 {
    display: none!important
}

.contenitore_2 .cont_interno_2 {
    padding: 0
}

.contenitore_2 .cont_interno_2 a {
    padding: 10px 20px!important;
    background: var(--buttons_bg)!important;
    border-radius: var(--border_radius_buttons)!important;
    color: var(--buttons_text)!important;
    margin: 0!important
}

.contenitore_2 .cont_interno_2 .vai:hover {
    color: var(--buttons_text_hover)!important;
    background: var(--buttons_bg_hover)!important
}

.contenitore_1 .cont_interno_2_2 {
    width: auto;
    padding: 0
}

.contenitore_1 .cont_interno_2_2 input {
    padding: 10px 20px;
    border: 0;
    background: 0 0
}

div#top.is-pinned {
    background: 0 0;
    box-shadow: none
}

div#top.is-pinned #box_carrello {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    background: 0 0;
    box-shadow: none;
    z-index: 200
}

div#top.is-pinned #carrello_appendi {
    background: var(--box_background);
    box-shadow: 0 3px 5px 5px rgba(50,50,50,.13);
    position: relative;
    z-index: 1
}

div#top.is-pinned #box_carrello #quick_reserve,div#top.is-pinned #box_carrello #riepilogo_viaggio {
    width: 100%;
    margin-left: 0
}

#sx #quick_reserve div#close_calendar {
    display: none!important
}

#sx_pacchetti #quick_reserve div#close_calendar {
    display: none!important
}

.top-riepilogo .stile_carrello {
    background: #fff!important
}

#top.is-pinned #carrello_appendi {
    background: var(--dark_background_90)!important
}

#top.is-pinned #carrello_appendi .box_contenuto .pulsanti a,#top.is-pinned #carrello_appendi .box_contenuto i,#top.is-pinned #carrello_appendi .box_contenuto span {
    color: #fff
}

#top.is-pinned .viaggio .single-room {
    border-left: 1px solid #fff
}

#scheda_link a.spento {
    background: var(--light_bg)
}

#scheda_link a .dx {
    background: 0 0
}

#scheda_link a.spento:hover {
    background: var(--light_bg_hover);
    color: initial
}

#scheda_link a .sx {
    font-size: 1.2em
}

#vantaggi {
    float: none
}

.blocco_vantaggi i {
    display: none
}

.blocco_vantaggi ul.vantaggio li:before {
    display: none
}

.blocco_vantaggi ul {
    padding: 10px 25px 20px
}

.blocco_vantaggi ul li {
    border: 0;
    padding: 8px 0;
    font-size: var(--text_size)
}

.blocco_vantaggi ul.book li:before {
    display: none
}

#banner,#first_page_banner {
    float: none;
    width: 100%;
    height: auto;
    box-sizing: border-box;
    border-radius: var(--border_radius_box);
    box-shadow: var(--box_shadow);
    overflow: hidden;
    margin: 0 0 15px
}

.slick-dots {
    float: left;
    list-style: none;
    display: block;
    text-align: center;
    padding: 0;
    width: 100%;
    z-index: 9990;
    background: 0 0;
    height: 30px;
    margin-top: -30px
}

.slick-dots li button:before {
    font-size: 11px!important;
    color: var(--box_background)!important;
    opacity: 1!important
}

.slick-dots li.slick-active button:before {
    color: var(--buttons_bg)!important;
    opacity: 1!important
}

body .flaticon-keyboard53_big:before {
    content: "\f138";
    font-size: 26px;
    line-height: 20px;
    font-family: "Font Awesome 6 Pro";
    font-weight: 700;
    color: var(--box_background)!important;
    opacity: 0
}

.slick-slider:hover .flaticon-keyboard53_big:before {
    opacity: 1
}

.slick-next,body .slick-prev {
    background: 0 0!important
}

.slick-prev {
    margin: -8px 0 0 0!important
}

.slick-next {
    margin: -8px 0 0 0!important
}

.img_premium_main img {
    box-shadow: var(--box_shadow);
    border-radius: var(--border_radius_box);
    margin: 0 0 15px
}

.campo_vantaggi {
    box-shadow: none;
    background: 0 0;
    float: none;
    margin: 0
}

.blocco_vantaggi {
    box-shadow: var(--box_shadow);
    border-radius: var(--border_radius_box);
    background: var(--box_background);
    overflow: hidden;
    float: none;
    margin: 0 0 15px
}

#first_page #dx .seleziona_camera {
    border-radius: var(--border_radius_box);
    position: relative;
    overflow: hidden;
    margin: 0 0 15px
}

#first_page #dx .seleziona_camera h2 {
    font-size: 20px;
    padding: 10px
}

.fancybox-opened {
    box-shadow: var(--box_shadow);
    border-radius: var(--border_radius_box);
    overflow: hidden!important
}

.campo_scheda,.fancybox-opened #banner,.fancybox-opened #first_page_banner {
    border-radius: 0;
    box-shadow: none
}

.fancybox-opened div#scheda_hotel {
    display: flex;
    flex-direction: column;
    float: none
}

.dati-hotel-scheda {
    padding: 15px;
    text-align: center
}

.dati-hotel-scheda .nome-hotel {
    font-size: 15px;
    font-weight: 600;
    margin-right: 10px
}

.dati-hotel-scheda i {
    padding: 0
}

.fancybox-opened div#scheda_hotel ul.scheda_tabs {
    display: flex;
    float: none;
    padding: 20px;
    width: 100%;
    flex-wrap: wrap
}

div#scheda_hotel ul.scheda_tabs button {
    border: 0;
    margin: 5px 0;
    border-radius: 50px;
    margin-right: 10px;
    padding: 10px 20px;
    background: var(--dark_background_30)
}

div#scheda_hotel ul.scheda_tabs button:hover,div#scheda_hotel ul.scheda_tabs li.active button {
    background: var(--dark_background_120);
    color: var(--buttons_text)
}

.contenitore_tabs {
    padding-top: 0
}

#first_page .fancybox-wrap:has(#coupon),#pag_pacchetto_singolo .fancybox-wrap:has(#coupon) {
    max-width: 500px
}

#coupon {
    flex-direction: column
}

#first_page .fancybox-inner #coupon>div {
    padding: 10px 20px 20px
}

#first_page .fancybox-outer #coupon {
    padding: 30px 40px 30px
}

.fancybox-outer #coupon h2 {
    background: 0 0!important;
    margin: 0;
    padding: 0;
    line-height: 30px!important;
    text-transform: none
}

.t-center {
    margin: 0
}

#riepilogo_viaggio {
    background: var(--default_light_bg)
}

#riepilogo_viaggio .riga .pulsanti a {
    width: 100%;
    text-align: center;
    border-radius: 50px;
    padding: 10px;
    text-transform: uppercase;
    box-shadow: var(--box_shadow)
}

#riepilogo_viaggio .riga .pulsanti a i {
    display: none
}

#riepilogo_viaggio .riga .pulsanti a i.fa.fa-search {
    display: inline
}

.carrello .contenuto .box_contenuto {
    padding: 15px 20px
}

.top-riepilogo:has(.riepilogo_promo) .box_contenuto {
    padding: 0
}

div#contenitore_totale_prenotazione {
    background-color: var(--light_bg)
}

#box_numero_ospiti h2,#calendar h2,.riga h2 {
    text-transform: none
}

.viaggio .cal {
    width: 100%
}

.viaggio .cal {
    display: flex;
    align-items: center;
    padding-bottom: 5px
}

.box_contenuto .viaggio .eti i {
    text-align: left;
    vertical-align: middle;
    margin: -1px 6px 0 1px;
    font-size: 14px
}

.tip-be-premium {
    position: absolute;
    display: block;
    top: 0;
    right: 0;
    z-index: 210;
    width: fit-content;
    padding: 5px 15px;
    box-shadow: var(--box_shadow);
    background: #666;
    color: #fff
}

.child-age-info {
    position: relative;
    cursor: pointer
}

.child-age-info i {
    margin-top: -2px;
    font-size: 13px!important
}

.box_contenuto .viaggio .fa-dash {
    font-size: 10px!important
}

.viaggio .cal span.notti {
    font-weight: 700;
    padding-left: 5px
}

.viaggio .freccia {
    float: left;
    width: 20px;
    line-height: initial;
    margin: 0 3px;
    text-align: center;
    color: #ccc
}

.clock-block {
    display: inline-block;
    vertical-align: top;
    float: none;
    width: auto;
    height: auto;
    margin: 0;
    line-height: 1;
    text-align: center;
    border: none;
    box-sizing: border-box;
    text-shadow: none;
    background: 0 0;
    box-shadow: none
}

.clock-day,.clock-unit,.clock-val {
    display: inline;
    margin: 0;
    font-size: 12px;
    font-weight: 400
}

.viaggio {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 15px
}

.viaggio .eti {
    margin: 5px 0;
    text-align: left;
    float: none;
    width: auto
}

.viaggio .eti .sx {
    text-transform: capitalize;
    font-size: 12px;
    float: none;
    vertical-align: middle
}

.viaggio .eti .dx {
    float: none;
    text-transform: uppercase;
    font-weight: 700;
    font-size: 12px;
    margin-left: 10px;
    background: 0 0
}

.riga.prezzi.definitivo .label {
    margin: 0
}

#contenitore_riepilogo_camere {
    background: var(--box_background)
}

.riga.tit_camera {
    font-weight: 700;
    font-size: var(--sub_title_size);
    color: var(--texts_color)
}

.blocco_camera-body .desc_camera.oo .riga.tit_camera {
    color: var(--title_color)
}

.riga.nome_prodotto {
    font-size: var(--text_size);
    padding: 5px 0
}

#contenitore_riepilogo_camere .riga h2 {
    display: none
}

.box_riepi .riga .label,.box_riepi .riga .risultato {
    padding: 0;
    font-size: var(--text_size)
}

#dx_cancel_modify .box_riepi.cancellation .riga .label {
    padding: 6px 25px
}

#dx_cancel_modify .box_riepi .riga .risultato {
    padding: 6px;
    font-size: var(--text_size)
}

#box-modifica-date .modification-buttons-row .modification-buttons,#box-modifica-occupazione .modification-buttons-row .modification-buttons,#cancellation_page #social .dati_personali .row #verifica_prenotazione,#riga_pulsanti_cancellazione .modification-buttons,.credit_card_data .modification-buttons-row .modification-buttons,.customer_data .modification-buttons-row .modification-buttons {
    font-size: var(--text_size);
    text-transform: none
}

.box_riepi .riga.prezzi {
    display: flex;
    justify-content: space-between;
    margin: 10px 0;
    font-size: var(--text_size);
    align-items: center;
    border-bottom: 1px solid var(--border_color);
    padding-bottom: 10px
}

.riga.prezzi.definitivo {
    border-bottom: none;
    padding-bottom: 10px!important
}

.box_riepi .riga.tit-servizi {
    font-size: var(--text_size);
    font-weight: 700;
    color: var(--text_color_grey);
    margin-bottom: 5px
}

.box_riepi .riga.servizi .label {
    width: auto
}

.box_riepi .riga.condizioni,.box_riepi .riga.definitivo.accordion,.dettaglio_condizioni {
    background: var(--light_bg)
}

.box_riepi .riga.definitivo .label {
    float: none;
    width: auto;
    text-transform: initial;
    margin: 0;
    font-size: var(--text_size)
}

.box_riepi .riga.definitivo.accordion:nth-child(2) {
    margin-top: 10px
}

.box_riepi .riga.definitivo.accordion {
    line-height: initial;
    height: auto;
    display: flex;
    justify-content: space-between;
    padding: 15px 25px
}

.riga.definitivo.accordion.cancellazione {
    margin-top: 10px
}

.box_riepi .riga.condizioni {
    padding: 0 25px 15px;
    line-height: initial;
    font-size: var(--mini_text_size)
}

#sx .currency {
    padding-left: 5px
}

.blocco_camera {
    border: none
}

.blocco_camera-title {
    text-align: center;
    font-size: 14px;
    text-transform: uppercase;
    background: 0 0
}

.blocco_camera-title.aa {
    background: 0 0
}

.tipo_camera .blocco_camera-title i {
    width: 20px
}

.contentbox_upgrade {
    padding: 0 0 15px;
    position: relative;
    display: flex
}

.contentbox_upgrade .box-upgraderomm {
    background-color: var(--bg_upselling);
    display: flex;
    flex-direction: row-reverse;
    border-radius: var(--border_radius_box);
    margin: 0;
    overflow: hidden;
    align-items: center
}

.contentbox_upgrade button {
    border: 0;
    padding: 0;
    margin: 0
}

.contentbox_upgrade .text_upsgrade .link_dettagli_camera {
    display: block;
    background: 0 0;
    text-decoration: underline;
    font-weight: 700;
    margin: 10px auto;
    color: var(--buttons_text)
}

.box-upgraderomm .img_upsgrade {
    padding: 0;
    width: 45%
}

.box-upgraderomm .text_upsgrade {
    width: 55%;
    text-align: center;
    padding: 10px 20px
}

.box-upgraderomm .img_upsgrade img {
    background: center center/cover #fff;
    height: 100%;
    width: 100%;
    cursor: pointer;
    object-fit: cover
}

.contentbox_upgrade i.fal.fa-plus {
    color: var(--bg_upselling)
}

#room-upselling-box .contentbox_upgrade button.buttonsstyles {
    background: rgba(255,255,255,.2);
    border: 1px solid rgba(255,255,255,.5);
    width: 80%;
    font-size: var(--button_upgrade);
    text-transform: none;
    font-weight: 400;
    padding: 10px
}

.contentbox_upgrade i.fal.fa-plus {
    display: none
}

.contentbox_upgrade i {
    position: absolute;
    top: 50%;
    margin-top: -16px;
    background: #fff;
    width: 32px;
    height: 32px;
    left: -16px;
    border: 1px solid var(--bg_upselling);
    text-align: center;
    border-radius: 20px;
    font-size: 10px;
    color: var(--bg_upselling)
}

.box_contenuto.qr-alert {
    background: #ffefef!important
}

.box_contenuto.qr-alert .riga .pulsanti a {
    background: 0 0
}

#carrello .box_contenuto.qr-alert .riga .pulsanti a:hover {
    background: 0 0!important
}

.box_contenuto.qr-alert #camere li .row_camera .seleziona .valore {
    background: #fff
}

#qr-alert {
    width: 100%;
    background: var(--bg_alert);
    border-radius: 5px;
    border: 1px solid var(--txt_alert);
    color: var(--txt_alert);
    display: flex;
    flex-direction: row;
    align-items: center;
    text-align: left;
    padding: 15px 20px;
    margin-bottom: 10px
}

#qr-alert i {
    font-size: 14px;
    background: var(--txt_alert);
    height: 36px;
    width: 42px;
    line-height: 36px;
    border-radius: 50px;
    color: var(--bg_alert);
    text-align: center;
    border: none;
    padding: 0;
    margin: 0 10px 0 0
}

.box_riepi .riga {
    float: none
}

.boxcont_upgrade {
    display: block;
    padding: 0;
    float: none;
    clear: both
}

.boxcont_upgrade .riga {
    background: 0 0
}

#riepilogo_viaggio .riga .pulsanti a {
    background: var(--box_background)
}

.carrello .contenuto .box_contenuto .boxcont_upgrade .riga .pulsanti a:hover {
    background: var(--box_background)!important;
    color: var(--buttons_bg_hover)
}

#services_page #carrello #calcolo_finale {
    background: var(--light_bg)!important
}

#services_page #calcolo_finale .riga .verifica.attivo {
    margin: 5px 20px 20px
}

#services_page #calcolo_finale .box_prezzo .riga {
    padding: 10px 20px 0
}

.riga.riga_totali {
    display: flex;
    justify-content: space-between
}

#results_page #dx,#top {
    float: none;
    width: 100%!important;
    position: relative
}

section {
    float: none
}

#box-filtri {
    border-radius: var(--border_radius_box);
    box-shadow: var(--box_shadow);
    margin-top: 1px;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    padding-top: 0
}

#box-filtri .riga_titolo {
    line-height: 40px;
    padding: 0 20px;
    background: var(--light_bg);
    font-size: 14px
}

ul#room-categories-conteiner {
    margin: 0;
    padding: 0;
    list-style-type: none;
    width: auto;
    column-count: unset;
    column-gap: inherit;
    display: flex;
    flex-wrap: wrap;
    align-items: center
}

.filter-toggle,ul#room-categories-conteiner li {
    border: 0!important;
    list-style-type: none;
    width: auto;
    column-count: unset;
    column-gap: inherit;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    height: auto;
    line-height: initial;
    box-shadow: none;
    box-sizing: border-box;
    font-size: var(--text_size);
    margin: 0!important
}

.filter-toggle .cta,ul#room-categories-conteiner li a {
    background: 0 0;
    color: var(--calendar);
    font-size: var(--text_size);
    height: auto
}

.label_room_cat {
    padding-left: 6px
}

.filter-toggle button.cta {
    border: none
}

ul#room-categories-conteiner li a i {
    display: none
}

.filter-toggle .label,ul#room-categories-conteiner li span {
    margin: 0 30px 0 0!important
}

.filter-toggle,ul#room-categories-conteiner li.list_room_cat {
    position: relative;
    padding: 10px 0 10px 30px!important;
    background: 0 0;
    margin: 0!important
}

.filter-toggle:after,.filter-toggle:before,.list_room_cat:after,.list_room_cat:before {
    content: "";
    border-radius: 50px;
    position: absolute;
    z-index: 1;
    left: 0;
    top: -3px;
    transition: .6s
}

.filter-toggle:before,.list_room_cat:before {
    top: 12px;
    width: 30px;
    height: 14px;
    border: none;
    background: var(--light_bg_hover);
    box-shadow: inset 0 0 10px #ddd
}

.filter-toggle:after,.list_room_cat:after {
    left: 0;
    border: 1px solid rgba(0,0,0,.2);
    width: 12px;
    height: 12px;
    top: 12px;
    background-color: #fff;
    transition: .3s;
    box-shadow: 0 1px 6px 0 rgba(0,0,0,.15)
}

.filter-toggle.active:after,.list_room_cat.active:after {
    left: 16px;
    background-color: var(--buttons_bg)!important;
    border: 1px solid var(--buttons_bg)
}

.filter-toggle:hover,.list_room_cat:hover {
    opacity: 1;
    cursor: pointer
}

.active span.label_room_cat,.filter-toggle.active .label {
    color: var(--texts_color)
}

#lista_filtri ul li i {
    padding-right: 10px
}

ul#room-categories-conteiner li.list_room_cat.mostra_tutti_filtri.active,ul#room-categories-conteiner li.list_room_cat.mostra_tutti_filtri.active span {
    padding: 0!important;
    margin: 0 20px 0 0!important;
    text-align: left
}

li.list_room_cat.mostra_tutti_filtri.active:after,li.list_room_cat.mostra_tutti_filtri.active:before {
    display: none
}

#lista_filtri {
    padding: 5px 25px
}

.check_room_cat {
    margin-right: 0
}

.modifica_ricerca.editable .viaggio .cal,.modifica_ricerca.editable .viaggio .inserisci_sconto,.modifica_ricerca.editable .viaggio .packages-button,.modifica_ricerca.editable .viaggio .pulsanti {
    cursor: pointer
}

.top-riepilogo #box_carrello #riepilogo_viaggio {
    background: 0 0
}

.top-riepilogo .carrello .contenuto .box_contenuto:has(a.inserisci_sconto) {
    margin: 0
}

.top-riepilogo .viaggio {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: 0;
    align-items: center;
}

.top-riepilogo .viaggio .single-room {
    margin-right: auto;
    border-left: 1px solid var(--calendar);
    padding-left: 25px;
    display: flex!important;
    align-items: center
}

.top-riepilogo #riepilogo_viaggio {
    padding: 20px 25px;
    font-size: 1.2em;
    color: var(--calendar)
}

.top-riepilogo .clock-block,.top-riepilogo .clock-day,.top-riepilogo .clock-unit,.top-riepilogo .clock-val,.viaggio .eti {
    font-size: var(--text_size);
    font-weight: 400;
    color: var(--texts_color)
}

.top-riepilogo .clock-block {
    text-transform: none;
}

.top-riepilogo .viaggio .eti,.top-riepilogo .viaggio .eti i {
    color: var(--texts_color)
}

.top-riepilogo .fa-bed-front,.top-riepilogo .fa-calendar-days {
    margin-right: 6px;
    font-size: 14px;
    color: var(--texts_color)
}

.top-riepilogo .viaggio>.pulsanti i {
    margin-right: 6px
}

.top-riepilogo .fa-dash {
    color: var(--calendar);
    font-size: 8px;
    display: flex;
    padding: 0 2px;
    height: 10px;
    flex-direction: row;
    align-items: center
}

.top-riepilogo .fa-dash:before {
    font-weight: 400
}

.top-riepilogo .viaggio .freccia {
    float: none;
    margin: 0 3px;
    width: auto
}

.top-riepilogo .viaggio .cal .freccia:last-of-type {
    margin: 0 13px
}

.top-riepilogo .viaggio .cal {
    display: flex;
    align-items: center;
    padding-bottom: 0;
    margin-right: 20px
}

.top-riepilogo .viaggio>.eti {
    margin-left: auto;
    border-bottom: 0!important
}

.top-riepilogo .viaggio .eti {
    border-bottom: 0!important
}

.top-riepilogo .viaggio .pulsanti {
    margin-left: 25px;
    font-size: 13px;
    height: 30px!important;
    vertical-align: middle;
    display: flex;
    align-items: center
}

.top-riepilogo .viaggio .pulsanti a {
    color: var(--calendar)
}

.top-riepilogo .viaggio #discount-code-button {
    color: var(--buttons_bg)!important;
    display: flex;
    align-items: center;
    padding-left: 20px;
}

.discount-code,.discount-code-label {
    display: block;
    line-height: 110%
}

.top-riepilogo .viaggio #discount-code-button:has(.discount-code) .discount-code-label {
    color: var(--texts_color);
    font-size: var(--mini_text_size)
}

.top-riepilogo .viaggio #discount-code-button:has(.discount-code) .discount-code {
    font-size: var(--button_text_size);
    font-weight: 700
}

.eti:has(.discount-code) {
    margin: -4px 0
}

.top-riepilogo #quick_reserve {
    order: 2;
    display: flex
}

.top-riepilogo .stile_carrello {
    background: 0 0;
    box-shadow: none;
    display: flex;
    flex-direction: column;
    border-radius: var(--border_radius_box)
}

.top-riepilogo #carrello_appendi #riepilogo_viaggio {
    display: flex!important;
    order: 1
}

.viaggio .rooms_slider {
    width: 100%!important;
    padding: 5px 0;
    margin: 5px 0 0
}

.viaggio .rooms_slider .swiper-slide {
    width: auto!important;
    margin-right: 15px!important;
    background: var(--light_bg);
    padding: 2px 20px;
    border-radius: var(--border_radius_buttons)
}

.box_contenuto .swiper-slide.swiper-slide-active {
    background: var(--light_bg_hover)
}

.is-pinned .viaggio .rooms_slider .swiper-slide {
    background: var(--dark_background_90)!important;
    opacity: .6
}

.is-pinned .viaggio .rooms_slider .swiper-slide.swiper-slide-active {
    opacity: 1
}

.top-riepilogo .viaggio .rooms_slider .swiper-slide .eti i,.viaggio .rooms_slider .swiper-slide .eti {
    color: var(--calendar)
}

.swiper-slide:has(.highlight) .eti,.swiper-slide:has(.highlight).eti i {
    font-weight: 700
}

.viaggio .swiper-button-next,.viaggio .swiper-button-prev {
    width: auto
}

.viaggio .swiper-button-next:after,.viaggio .swiper-button-prev:after,.viaggio .swiper-rtl .swiper-button-prev:after {
    font-size: 12px;
    font-weight: 700;
    color: var(--texts_color);
    padding: 0
}

.viaggio .swiper-button-next,.viaggio .swiper-rtl .swiper-button-prev {
    right: var(--swiper-navigation-sides-offset,0);
    left: auto
}

.viaggio .swiper-button-prev,.viaggio .swiper-rtl .swiper-button-next {
    left: var(--swiper-navigation-sides-offset,0);
    right: auto
}

.viaggio .swiper-button-next,.viaggio .swiper-button-prev,.viaggio .swiper-rtl .swiper-button-next,.viaggio .swiper-rtl .swiper-button-prev {
    background: rgba(255,255,255,.8);
    width: 30px;
    height: 30px;
    line-height: 30px;
    text-align: center;
    box-shadow: var(--box_shadow);
    margin-top: calc(0px - (30px / 2))
}

.viaggio .swiper-button-next:hover,.viaggio .swiper-button-prev:hover,.viaggio .swiper-rtl .swiper-button-prev:hover {
    background: #fff
}

.top-riepilogo #contenitore_riepilogo_camere {
    display: none!important
}

.top-riepilogo #coupon {
    display: block
}

.campo {
    float: none;
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-end;
    border-radius: var(--border_radius_box);
    overflow: hidden;
    box-shadow: var(--box_shadow)
}

.campo:hover {
    transform: none
}

.campo .foto {
    padding: 0;
    overflow: hidden;
    position: relative;
    cursor: pointer
}

.campo .swiper-button-next:after,.campo .swiper-button-prev:after {
    background: rgba(255,255,255,.2)
}

.campo .foto:hover .swiper-button-next:after,.campo .foto:hover .swiper-button-prev:after {
    background: rgba(255,255,255,.5)
}

.campo .foto:hover:before {
    content: "\f002";
    font-family: "Font Awesome 6 Pro";
    font-size: 22px;
    color: #fff;
    position: absolute;
    left: calc(50% - 25px);
    top: calc(50% - 25px);
    height: 50px;
    width: 50px;
    line-height: 50px;
    z-index: 1;
    background: rgba(255,255,255,.5);
    border-radius: 50px;
    text-align: center
}

.campo .foto_camera img {
    float: none;
    height: 100%;
    min-width: 100%;
    left: 50%;
    position: relative;
    transform: translateX(-50%);
    width: auto
}

.campo .foto .lente {
    top: auto;
    right: 15px;
    bottom: 15px;
    background: 0 0;
    font-size: 25px;
    color: var(--buttons_text)!important;
    border-radius: 50px;
    left: auto
}

.campo .foto.full {
    height: 400px!important
}

.targetta_offer {
    padding: 6px 20px;
    position: relative;
    display: inline-block;
    top: -3px;
    vertical-align: middle;
    background-color: var(--special_offer)!important
}

.campo .tariffe {
    margin: 0;
    padding: 25px
}

.accordion {
    width: auto;
    float: right
}

.tariffe li h2 .nome_camera {
    font-weight: 600;
    font-size: var(--title_size)
}

.tariffe li * {
    float: none!important
}

.caratteristiche_camera {
    padding: 10px 0 5px;
    color: var(--icon_color);
    font-size: var(--text_size)
}

img.room_amenities {
    margin: 0 4px
}

img.room_amenities:first-child {
    margin-left: 0
}

span.dimensioni {
    margin-right: 20px
}

.row_titolo .sin i {
    float: right
}

.row_titolo .sin i.fa-circle-info {
    font-size: 12px;
    float: left;
    display: none
}

.tariffe li h2 {
    float: none
}

span.extra-bed-info {
    font-size: 14px
}

.clock-val::after,.clock-val::before {
    display: none
}

.cont-decr-camera a.fancybox.link_dettagli_camera {
    color: var(--link_color);
    text-decoration: underline
}

.cont-decr-camera a.fancybox.link_dettagli_camera i:before {
    display: none
}

.link_dettagli_camera,.rate-details-link {
    text-decoration: underline;
    color: var(--buttons_bg);
    font-size: var(--details_text)
}

a.link_dettagli_camera:hover {
    border: 0
}

a.rate-details-link {
    padding: 10px 0 5px;
    display: block
}

.link_dettagli_camera i {
    display: none
}

.accordion .tariffa {
    float: none;
    line-height: 40px;
    font-size: var(--link_text_size);
    margin-right: 5px
}

.tariffa .price {
    font-size: var(--price_size)!important
}

.accordion-close .freccia,.accordion-open .freccia {
    background: 0 0!important
}

.accordion-close .freccia {
    float: right;
    padding: 0;
    margin: 0;
    width: auto;
    height: auto;
    background: 0 0;
    color: var(--buttons_text);
    -moz-border-radius: 10px;
    -webkit-border-radius: 0;
    -ms-transform: rotate(90deg);
    transform: none;
    border-radius: 0
}

.accordion-close .freccia,.accordion-open .freccia {
    margin: 11px 0 0!important
}

.accordion-open .freccia {
    height: auto;
    rotate: 270deg;
    float: right
}

.accordion-open .freccia i {
    transform: none
}

#box-risultati .accordion {
    z-index: 1
}

.accordion .button2024 {
    margin: auto 25px auto auto
}

.accordion .fa-chevron-right {
    font-size: 15px
}

.nomecamera1 {
    position: absolute;
    top: 0;
    left: 0;
    width: auto;
    height: 60px;
    line-height: 50px;
    color: var(--box_background);
    z-index: 99999;
    font-size: 20px;
    text-shadow: none;
    background: linear-gradient(180deg,rgb(0 0 0 / 61%) 0,rgb(0 0 0 / 0%) 100%);
    right: 0;
    padding-left: 20px;
    padding-top: 5px
}

.tariffe li p {
    margin: 10px 0 5px
}

.cont-decr-camera p:first-of-type {
    padding-right: 10px;
    height: auto;
    max-height: 60px;
    overflow: initial;
    font-size: var(--descrition_text);
    text-overflow: ellipsis;
    -webkit-line-clamp: 3;
    display: -webkit-box
}

.container_tipo {
    float: none;
    width: 100%;
    padding: 0;
    background: 0 0;
    margin: 0;
    box-sizing: border-box
}

.row_titolo {
    float: none;
    width: 100%;
    height: auto;
    padding: 5px 25px 0;
    box-sizing: border-box;
    background: var(--box_background);
    display: flex;
    margin-bottom: 10px;
    flex-wrap: wrap;
    justify-content: flex-end;
    font-size: 13px
}

.row_titolo .sin h2 {
    display: inline-block;
    font-size: var(--title_size_rate);
    font-weight: 700
}

.testo_descrizione {
    font-size: var(--descrition_text)
}

.testo_descrizione {
    padding-top: 5px
}

.container_tipo .row_titolo .sin {
    float: none;
    height: auto;
    box-sizing: border-box;
    border-right: 0;
    width: 75%
}

.container_tipo .row_titolo .des {
    float: none;
    height: 100%;
    padding: 0;
    box-sizing: border-box;
    margin-left: 0;
    width: 25%
}

.row_titolo .des .cond span {
    float: none;
    width: 100%
}

.row_titolo .des .cond span span {
    float: none;
    width: auto;
    text-transform: uppercase;
    display: block;
    text-align: right;
    font-size: 11px;
    color: var(--calendar)
}

span.pay-cond-short {
    display: block;
    padding: 3px 10px;
    cursor: pointer;
    border-radius: 50px;
    width: auto!important
}

span.pay-cond-short:after {
    content: "\f05a";
    font-family: "Font Awesome 6 Pro";
    margin-left: 5px;
    color: var(--icon_color)
}

span.pay-cond-short:hover {
    background-color: var(--light_bg)
}

span.pay-cond-short .holipay-widget {
    display: flex;
    flex-direction: row
}

span.pay-cond-short .holipay-widget {
    background: var(--light_bg);
    padding: 5px 10px;
    border-radius: var(--border_radius_buttons)
}

span.pay-cond-short:has(.holipay-widget) {
    padding: 3px 0
}

span.pay-cond-short:has(.holipay-widget):after {
    display: none
}

span.pay-cond-short:has(.holipay-widget):hover {
    background: var(var(--light_bg_hover))
}

.row_titolo .des .cond i {
    display: none
}

.room-rate-occupations-box {
    margin: 2px 25px 0;
    border-bottom: 0;
    padding: 0
}

.room-rate-occupations-box .room-rate-list {
    padding: 5px 20px;
    background: var(--light_bg);
    border: none;
    margin-top: 2px;
    display: flex;
    justify-content: space-between;
    align-items: center
}

.room-rate-list:not(.solution-card) .barrato,.room-rate-list:not(.solution-card) .box-risultato {
    display: block
}

.room-rate-list:not(.solution-card) a.price_day.tooltip span {
    font-size: 12px!important
}

.room-rate-list:not(.solution-card) a.price_day.tooltip {
    text-align: right
}

.solution-card .room-rate-treatment-box-item:not(:has(i)) .trattamento_card {
    margin-top: 40px
}

.room-rate-list-level1 .box-content-children {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-end
}

.solution-card-content.room-rate-list-level1 .box-content-children {
    flex-direction: column
}

.room-rate-list-level1 .box-content-middle {
    width: auto;
    padding: 0 20px 0 0
}

.room-rate-list-level1 .room-rate-occupancy-box {
    padding-right: 8px
}

.room-rate-button-box-item .reserve a {
    padding: 10px 25px
}

.room-rate-list-level1.box-content-father,.room-rate-list-level1.box-content-sx {
    width: 100%!important;
    margin: 0
}

div.blocco_tipo {
    padding: 10px 0 20px;
    border-top: 2px solid var(--border_color);
    position: relative
}

.box-content-middle,.room-rate-general-box .room-rate-occupancy-content.number {
    text-align: left!important
}

.room-rate-treatment-box .room-rate-treatment-box-item i:not(:host),.room-rate-treatment-box .room-rate-treatment-box-item i:not(:root) {
    vertical-align: middle;
    padding-right: 0!important;
    background: var(--icon_color);
    color: #fff!important;
    border-radius: 50%;
    width: 32px;
    height: 32px;
    line-height: 32px;
    text-align: center;
    margin-right: 10px
}

.row_descrizione {
    margin: 5px 20px 15px;
    display: flex;
    justify-content: flex-end
}

.cond i {
    display: none
}

.cond {
    font-size: 11px;
    text-transform: uppercase;
    text-align: right;
    width: 130px
}

.cond>span {
    display: inline-block
}

#a_soluzioni_preventivo_mail {
    border-radius: 50px
}

span.special-offer-label {
    position: relative;
    width: 100%;
    line-height: 30px;
    text-transform: uppercase;
    font-size: 10px;
    letter-spacing: .5px;
    font-weight: 700;
    color: #fff
}

span.special-offer-label i.fa-tag {
    font-size: 20px;
    position: absolute;
    top: -5px;
    display: none
}

span.special-offer-label span {
    background: var(--special_offer);
    position: relative;
    padding: 0 20px;
    margin: 0 0 0 10px;
    top: -3px;
    display: inline-block;
    line-height: 25px
}

.room-rate-occupancy-content.number i.fa-user {
    color: var(--icon_color);
    padding: 0 1px 0 0;
    margin: 0!important;
    font-size: 12px;
    font-weight: 300!important
}

.room-rate-general-box .room-rate-price-value-content a .barrato,.room-rate-general-box .room-rate-price-value-content i.fa-circle-info {
    color: var(--icon_color);
    font-size: 12px;
    display: inline-block
}

.room-rate-price-value-content .offer span div {
    font-size: 12px
}

.room-rate-price-value-content i.fa-circle-info {
    padding-left: 5px
}

.solution-card-content .room-rate-price-value-content div {
    font-size: 12px;
    display: block!important;
    color: var(--calendar)
}

.chiudi_gallery {
    top: 15px;
    right: 15px;
    width: 20px;
    background: 0 0;
    font-size: 20px
}

i.fa-user.icon-bambino {
    font-size: 11px;
    margin-bottom: -2px!important
}

.cont-decr-camera h2 i {
    font-size: 16px;
    padding-left: 5px;
    color: var(--icon_color);
    vertical-align: text-top
}

.room-rate-general-box {
    margin-right: 10px
}

a.price_day.tooltip div {
    display: inline-block
}

a.price_day.tooltip span {
    font-size: var(--price_size)!important
}

a.price_day.tooltip span div {
    font-size: var(--price_size)!important;
    display: inline-block
}

a.price_day.tooltip span div {
    font-size: var(--val_price_size)!important;
    color: var(--texts_color)
}

a.price_day.tooltip div.total_price {
    font-weight: 700;
    font-size: var(--price_size)!important;
    display: inline-block;
    padding-top: 18px
}

a.price_day.tooltip {
    display: inline-block;
    color: var(--texts_color)
}

a.price_day.tooltip:hover {
    color: var(--texts_color)
}

.product-rate-amount {
    float: right
}

.product-rate-amount .price.buona_tariffa,.product-rate-amount span.price.buona_tariffa span {
    font-size: 15px!important;
    font-weight: 700;
    float: none!important;
    display: inline
}

.row_titolo .des .cond span.product-rate-amount {
    float: right!important
}

.swiper_rooms {
    padding: 10px 50px 10px;
    margin-bottom: 10px
}

.rooms_slider {
    width: 775px
}

#cards_slider .swiper-slide {
    width: 270px!important
}

div#cards_slider {
    padding-bottom: 35px
}

div#cards_slider:has(.swiper-pagination-lock) {
    padding-bottom: 0
}

div#cards_slider .swiper-horizontal>.swiper-pagination-bullets,div#cards_slider .swiper-pagination-bullets.swiper-pagination-horizontal {
    bottom: -3px
}

div#cards_slider .swiper-pagination-bullet {
    background-color: var(--icon_color)
}

#cards_slider .swiper {
    padding: 10px 50px 10px;
    margin-bottom: 10px
}

.mobile_cards_slider .swiper-slide {
    height: 280px!important
}

.mobile_cards_slider .swiper-slide .room-rate-price-value-content {
    display: none
}

.mobile_cards_slider .swiper-pagination {
    bottom: 16%
}

.mobile_cards_slider .swiper-slide .solution-card.selected,.mobile_cards_slider .swiper-slide .solution-card:hover {
    border: 2px solid var(--light_bg)
}

.swiper-slide .solution-card {
    border: 2px solid var(--light_bg);
    cursor: pointer;
    border-radius: 10px
}

.swiper-slide .solution-card.selected {
    border: 2px solid var(--buttons_bg);
    border-radius: 10px
}

.swiper-slide .solution-card:hover {
    border: 2px solid var(--buttons_bg);
    cursor: pointer;
    transition: all .5s linear
}

.room-rate-list.solution-card {
    padding: 5px 20px 0!important;
    background: var(--light_bg)!important;
    border-radius: 10px;
    box-shadow: 0 1px 5px 0 rgba(50,50,50,.2);
    text-align: center;
    margin: 5px 2px 2px;
    flex-direction: column
}

.solution-card-title {
    width: 100%;
    text-align: center;
    display: table
}

.solution-card .room-rate-treatment-box {
    border-bottom: 1px solid var(--border_color);
    font-size: 12px!important;
    display: table-cell;
    vertical-align: middle;
    height: 58px;
    text-align: center;
    margin: 0 auto
}

.room-rate-treatment-box .room-rate-treatment-box-item i:not(:host),.room-rate-treatment-box .room-rate-treatment-box-item i:not(:root) {
    font-size: 12px
}

.room-rate-treatment-box-item,.solution-card .room-rate-treatment-box-item {
    font-size: var(--text_size_treatment);
    display: flex;
    flex-direction: column;
    padding: 10px 0 10px 0
}

.room-rate-list:not(.solution-card) .room-rate-treatment-box-item {
    display: flex;
    flex-direction: row;
    align-items: center
}

.solution-card-content {
    padding: 5px 0 15px
}

.solution-card-content .box-content-middle {
    display: block;
    text-align: center!important;
    padding: 0 0 15px!important;
    margin: 0;
    width: 100%
}

.solution-card-content .room-rate-general-box {
    display: block;
    margin: 0 auto!important;
    padding: 0
}

.solution-card-content a.button2024 {
    max-width: 100%;
    margin-bottom: 10px
}

.discounted-amount {
    position: absolute;
    margin: 0 auto;
    text-align: center;
    padding: 0 5px
}

.discounted-amount .barrato {
    color: var(--icon_color)
}

.barrato .currency {
    text-decoration: line-through
}

.solution-card .room-rate-treatment-box .room-rate-treatment-box-item>i {
    display: block;
    float: none;
    margin: auto auto 8px;
    background: var(--icon_color);
    color: #fff!important;
    border-radius: 50%;
    width: 32px;
    height: 32px;
    line-height: 32px;
    text-align: center;
    padding: 0!important;
    position: relative
}

.solution-card .room-rate-treatment-box-item>i:after {
    content: "";
    display: block;
    height: 44px;
    width: 44px;
    position: absolute;
    background: var(--buttons_bg) 20;
    z-index: 0;
    top: -5px;
    left: -5px;
    border-radius: 50%
}

.solution-card span.trattamento_card {
    display: block;
    height: 40px
}

.solution-cards-footer {
    background: #eee;
    padding: 8px 20px;
    text-align: right;
    font-size: 11px;
    text-transform: uppercase;
    position: absolute;
    width: 100%;
    bottom: 0;
    margin-top: 10px
}

.solution-cards-footer p {
    margin: 0
}

a.price_day.tooltip span.barrato,a.price_day.tooltip span.barrato .currency {
    font-size: var(--val_price_size)!important;
    font-weight: 400;
    color: var(--icon_color)
}

a.price_day.tooltip span.barrato .currency {
    padding-right: 10px
}

a.price_day.tooltip .discount-percentage span.currency {
    font-size: var(--val_price_size)!important;
    font-weight: 400
}

a.price_day.tooltip span.discount-percentage {
    font-size: var(--val_price_size)!important;
    color: var(--special_offer);
    padding-left: 2px;
    font-weight: 700
}

.solution-card-content .room-rate-price-value-content span {
    font-size: var(--val_price_size);
    font-weight: 400
}

.offer i.fa-light.fa-circle-info {
    padding: 0;
    margin: 0;
    font-size: 10px
}

.swiper-button-next:after,.swiper-button-prev:after,.swiper-rtl .swiper-button-prev:after {
    font-size: 12px;
    font-weight: 700;
    color: var(--buttons_text);
    background: rgba(255,255,255,.2);
    padding: 15px 17px
}

.swiper-button-next,.swiper-rtl .swiper-button-prev {
    right: var(--swiper-navigation-sides-offset,6px)
}

.swiper-button-prev,.swiper-rtl .swiper-button-next {
    left: var(--swiper-navigation-sides-offset,6px)
}

.swiper-pagination-bullet {
    background: rgba(255,255,255,.4);
    opacity: 1
}

.swiper-pagination-bullet:hover {
    background: rgba(255,255,255,.7);
    opacity: 1
}

.swiper-pagination-bullet.swiper-pagination-bullet-active {
    background: var(--buttons_bg)!important
}

.poshy_tip {
    background-color: var(--box_background)!important;
    padding: 15px 18px!important;
    -webkit-box-shadow: 0 5px 5px 0 rgba(50,50,50,.3);
    -moz-box-shadow: 0 5px 5px 0 rgba(50,50,50,.3);
    box-shadow: 0 0 5px 0 rgba(50,50,50,.2);
    z-index: 20;
    border-radius: 5px
}

.poshy_tip .tariffa_giorno ul li {
    padding: 2px 0;
    border-bottom: 1px solid var(--border_color);
    font-size: 11px
}

#box-risultati h2.titolo-no-soluzioni {
    padding: 20px 20px 10px;
    font-weight: 700
}

#box-risultati .no_soluzioni.caricamento_contenitore {
    padding: 0 20px 10px!important;
    text-align: center!important;
    line-height: inherit
}

#alternative_calendar_first_month .box_calendar_date_alternative {
    padding: 0 5px 10px 0
}

#alternative_calendar_second_month .box_calendar_date_alternative {
    padding: 0 0 10px 5px
}

.alternative_date_menu .select_month {
    text-transform: uppercase;
    font-size: 14px!important
}

#alternative_calendar_first_month i.fa-solid.fa-chevron-right,#alternative_calendar_second_month i.fa-solid.fa-chevron-left {
    display: none
}

@media only screen and (max-width: 450px) {
    #alternative_calendar_first_month .box_calendar_date_alternative,#alternative_calendar_second_month .box_calendar_date_alternative {
        padding:0 0 10px 0!important
    }

    .mobile-swiper-wrapper .row_titolo .des .cond>span {
        display: flex;
        flex-direction: row;
        justify-content: flex-end;
        flex-wrap: wrap
    }

    .mobile-swiper-wrapper .room-rate-list:not(.solution-card) .room-rate-list-level1 .box-content-children {
        display: flex;
        flex-direction: row;
        justify-content: center;
        flex-wrap: wrap
    }

    .mobile-swiper-wrapper span.pay-cond-short:after {
        display: none
    }

    .mobile-swiper-wrapper .row_titolo .des .cond span span {
        border: 0;
        margin-left: 10px;
        padding: 3px 7px;
        background-color: var(--default_light_bg)
    }
}

.alternative-offer .message p a {
    border-radius: 50px;
    background: var(--buttons_bg_select)!important
}

.alternative-offer .message p a:hover {
    background: var(--buttons_bg_hover)!important
}

.alternative-offer .message p a.open {
    margin: 10px auto;
    width: auto!important
}

.alternative-offer .message {
    background: #f5f5f5!important;
    border: 1px solid #eee;
    box-shadow: 0 2px 10px rgba(0,0,0,.25)!important;
    z-index: 1
}

.alternative-offer-message i.fa {
    padding: 0 4px
}

.fancybox-inner .seleziona_camera {
    box-shadow: none
}

.fancybox-inner .seleziona_camera h2 {
    padding: 0 20px 0;
    font-size: 1.5em;
    line-height: 40px;
    background: var(--light_bg)!important
}

.alternative-offer-rate-details {
    padding: 5px 20px!important;
    background: var(--default_light_bg);
    max-height: inherit!important;
    overflow: auto!important
}

.alternative-offer-rate-details-link {
    border: none;
    background-color: transparent
}

.alternative-offer-rate-details-link i.fa-light {
    font-size: 14px;
    vertical-align: middle
}

#alternative-offers-details .accordion,#alternative-offers-details .link_dettagli_camera,#alternative-offers-details .rate-details-link {
    display: none
}

.seleziona_camera .eti_lines .riga_riepilogo_date .data_ricerca {
    font-weight: 700;
    color: var(--texts_color)
}

.seleziona_camera .eti_lines .riga_riepilogo_date .data_ricerca .ex {
    color: var(--cancella);
    display: inline-block
}

.fancybox-inner #alternative-offers-details .campo {
    background: #fff
}

#alternative-offers-details div.blocco_tipo {
    margin-top: 0!important
}

#alternative-offers-details .seleziona_camera span i.fa {
    display: inline-block!important;
    vertical-align: middle
}

#alternative-offers-details .seleziona_camera i.fa {
    display: none
}

#alternative-offers-details i.fa.fa-user.fa-lg {
    display: none
}

#alternative-offers-details .section_classicamere {
    padding: 0 20px
}

#alternative-offers-details .tariffe li h2 .nome_camera {
    color: var(--title_color)
}

#alternative-offers-details i.fa-thin {
    color: var(--texts_color);
    font-weight: 300;
    font-size: 16px;
    vertical-align: top
}

#alternative-offers-details i.fa.fa-arrow-right {
    color: #ccc;
    padding: 0 5px 0 10px
}

#alternative-offers-details .seleziona_camera h2 i.fa-light {
    font-size: 14px;
    padding: 0 2px
}

#persuasive-messages-general .message,#persuasive-messages-summary .message {
    background: rgba(255,255,255,.8)!important;
    padding: 10px 15px;
    border-left: 0!important;
    border-right: 0!important;
    color: #333
}

.message i.fa.fa-times.close-icon.close-all-persuasive-msgs {
    padding: 0
}

@media only screen and (min-width: 1800px) {
    #persuasive-messages-general,#persuasive-messages-summary {
        position:absolute;
        top: 152px;
        right: 0;
        left: auto;
        border-left: 0!important;
        border-right: 0!important
    }
}

div#no_soluzioni_date_alternative a {
    border-radius: 50px;
    margin: 0 auto;
    text-align: center;
    padding: 15px 15%;
    background: #fff;
    -webkit-box-shadow: 0 3px 3px 0 rgb(50 50 50 / 20%);
    -moz-box-shadow: 0 3px 3px 0 rgba(50,50,50,.2);
    box-shadow: 0 3px 3px 0 rgb(50 50 50 / 20%);
    display: table;
    background: var(--buttons_bg)!important;
    color: var(--buttons_text)!important;
    font-size: 14px!important
}

div#no_soluzioni_date_alternative a:hover {
    background: var(--buttons_bg_hover)!important
}

.caricamento_contenitore .tabella_dispo {
    width: 100%;
    margin-bottom: 20px;
    box-shadow: var(--box_shadow);
    border: 20px solid var(--box_background);
    border-radius: var(--border_radius_box);
    background: var(--box_background);
    overflow: hidden
}

.caricamento_contenitore .tabella_dispo th {
    background-color: var(--box_background)!important
}

.caricamento_contenitore .tabella_dispo td,.caricamento_contenitore .tabella_dispo th {
    padding: 6px 20px;
    border-bottom: 1px solid var(--border_color);
    line-height: 20px;
    text-align: center
}

.tabella_dispo td:first-child,.tabella_dispo th:first-child {
    text-align: left
}

.tabella_dispo td:last-child,.tabella_dispo th:last-child {
    text-align: right
}

.tabella_dispo th {
    text-transform: uppercase;
    font-size: 13px
}

.tabella_dispo th {
    text-transform: uppercase;
    line-height: 28px;
    background: #f9f9f9
}

.tabella_dispo td:last-child,.tabella_dispo th:last-child {
    text-align: right
}

.caricamento_contenitore .tabella_dispo td button {
    border: none;
    text-align: right;
    padding: 4px 20px;
    border-radius: var(--border_radius_buttons);
    text-transform: uppercase;
    background: var(--buttons_bg);
    color: var(--buttons_text)
}

.caricamento_contenitore .tabella_dispo td button:hover {
    background: var(--buttons_bg_hover)
}

tr.giorno_chiuso {
    color: var(--txt_alert)
}

.tabella_dispo tr {
    background-color: var(--box_background)!important
}

.tabella_dispo tr:hover td {
    background-color: var(--light_bg)!important;
    font-weight: 600
}

.tabella_dispo tr.weekend {
    background: var(--default_light_bg)
}

.tabella_dispo tr.giorno_chiuso {
    background-color: #ffe9e9!important
}

body #a_soluzioni_preventivo_mail,body #a_soluzioni_preventivo_mail:hover {
    background: var(--box_background)
}

body #a_soluzioni_preventivo_mail {
    color: var(--texts_color);
    margin-bottom: 30px
}

body #a_soluzioni_preventivo_mail:hover {
    color: var(--buttons_bg_hover)
}

.select_date {
    padding: .25rem;
    border-radius: .4rem
}

.flexible-dates-conteiner {
    display: flex;
    align-content: flex-start;
    justify-content: space-between
}

.flexible-dates-conteiner .flexible-dates {
    width: 49%;
    float: none
}

.seleziona_camera {
    border-radius: var(--border_radius_box)
}

#box-risultati h2.titolo-no-soluzioni {
    background: var(--dark_background_90);
    color: #fff;
    padding: 30px;
    border-top-left-radius: var(--border_radius_box);
    border-top-right-radius: var(--border_radius_box)
}

@media screen and (min-width: 1140px) {
    .row_titolo .des .cond span {
        float:none;
        width: auto;
        line-height: 15px;
        margin-top: 2px
    }
}

.fancybox-opened:has(#alternative-offers-details) {
    max-width: 1200px;
    width: 100%!important;
    left: 0!important;
    right: 0!important;
    margin: 0 auto!important
}

.fancybox-inner #alternative-offers-details .seleziona_camera h2 {
    padding: 10px 0;
    background: var(--box_background)!important
}

.fancybox-outer #alternative-offers-details {
    padding: 0 25px
}

.alternative-offer-rate-details {
    max-height: inherit!important;
    width: auto!important;
    background: var(--bg_riepilogo_mobile_accordion);
    padding: 10px 20px!important;
    overflow: auto!important
}

#alternative-offers-details .eti_lines {
    display: flex;
    margin-top: 3px;
    flex-wrap: nowrap;
    align-items: center;
    max-height: inherit!important;
    width: 100%!important;
    background: var(--light_bg);
    padding: 10px 0!important;
    overflow: auto!important
}

.fancybox-inner .seleziona_camera .eti_lines .riga_riepilogo_date,.seleziona_camera .eti_lines .riga_riepilogo_date .data_ricerca,.seleziona_camera .eti_lines .riga_riepilogo_date .label {
    display: inline;
    float: none;
    width: auto
}

#alternative-offers-details span.singolo-accessorio {
    display: inline-block
}

#alternative-offers-details .offer i {
    display: none
}

#alternative-offers-details .section_classicamere {
    padding: 0
}

#alternative-offers-details .riga_riepilogo_date:nth-child(3) .label {
    text-transform: capitalize
}

#alternative-offers-details div.blocco_tipo {
    padding: 20px 0
}

#alternative-offers-details div.blocco_tipo:first-child {
    border-top: 0
}

@media screen and (max-width: 960px) {
    #alternative-offers-details .eti_lines {
        align-items:flex-start;
        flex-direction: column
    }
}

@media screen and (max-width: 680px) {
    #alternative-offers-details section div.blocco_tipo {
        box-shadow:none
    }

    #alternative-offers-details .room-rate-occupations-box {
        margin: 0
    }

    #alternative-offers-details div.blocco_tipo {
        padding: 0
    }
}

@media screen and (max-width: 480px) {
    .fancybox-outer #alternative-offers-details {
        padding:0 15px
    }

    .fancybox-inner .seleziona_camera .eti_lines .riga_riepilogo_date {
        float: left;
        width: 100%;
        line-height: 20px;
        padding: 5px 20px
    }

    .fancybox-inner #alternative-offers-details .seleziona_camera h2 {
        padding: 40px 0 10px;
        line-height: initial
    }

    .cont-decr-camera p:first-of-type {
        max-height: 80px
    }
}

@media screen and (max-width: 1140px) {
    .container_tipo .swiper {
        position:relative;
        max-height: 80vh;
        width: 100%;
        margin: 0;
        padding: 20px 0 40px 0;
        background-color: var(--light_bg_hover)!important
    }

    .container_tipo .swiper div.blocco_tipo {
        border-radius: 10px;
        padding: 10px;
        display: flex;
        flex-direction: column;
        justify-content: space-around;
        width: 96%!important;
        margin: 2%
    }

    .container_tipo .swiper .room-rate-occupations-box {
        margin-top: auto
    }

    .container_tipo .swiper div.blocco_tipo:first-child .row_titolo {
        padding-top: 5px!important
    }

    .swiper-pagination-vertical.swiper-mobile-pagination {
        position: absolute;
        --swiper-pagination-right: 10%;
        z-index: 1;
        top: 10%
    }

    .container_tipo .swiper .swiper-pagination-bullet {
        background-color: var(--icon_color);
        opacity: 1
    }

    .swiper-mobile-button-next,.swiper-mobile-button-prev {
        position: absolute;
        top: var(--swiper-navigation-top-offset,92%);
        width: calc(var(--swiper-navigation-size)/ 44 * 27);
        height: var(--swiper-navigation-size);
        margin-top: calc(0px - (var(--swiper-navigation-size)/ 2));
        z-index: 10;
        cursor: pointer;
        display: flex;
        align-items: center;
        justify-content: center;
        display: none
    }

    .swiper-mobile-button-next:after,.swiper-mobile-button-prev:after {
        content: 'next';
        font-family: swiper-icons;
        font-size: var(--swiper-navigation-size);
        text-transform: none!important;
        letter-spacing: 0;
        font-variant: initial;
        line-height: 1
    }

    .swiper-mobile-button-prev:after {
        content: 'prev'
    }

    .swiper-mobile-button-next::after,.swiper-mobile-button-prev::after {
        font-size: 25px;
        font-weight: 700;
        color: var(--icon_color);
        padding: 15px 20px
    }

    .swiper-mobile-button-next {
        right: 35%;
        left: auto
    }

    .swiper-mobile-button-prev {
        left: 35%;
        right: auto
    }

    .swiper-mobile-button-next.swiper-button-disabled,.swiper-mobile-button-prev.swiper-button-disabled {
        opacity: 20%
    }

    .container_tipo .swiper .swiper-button-next:after,.container_tipo .swiper .swiper-button-prev:after,.container_tipo .swiper .swiper-rtl .swiper-button-prev:after {
        font-size: 24px;
        color: var(--icon_color);
        background: rgba(0,0,0,.05);
        padding: 15px 17px
    }

    .container_tipo .swiper div.cards_slider .swiper-pagination-bullets.swiper-pagination-horizontal {
        display: none
    }

    .container_tipo .swiper div.cards_slider {
        padding-bottom: 13px
    }

    .container_tipo .swiper .row_titolo {
        padding: 5px 10px 0
    }

    .container_tipo .swiper-horizontal>.swiper-pagination-bullets,.container_tipo .swiper-pagination-bullets.swiper-pagination-horizontal,.container_tipo .swiper-pagination-custom,.container_tipo .swiper-pagination-fraction {
        bottom: var(--swiper-pagination-bottom,14px)
    }
}

#pag_pacchetti .grid {
    float: left;
    width: 100%;
    display: grid;
    grid-template-columns: repeat(3,1fr);
    column-gap: 10px
}

#pag_pacchetti .element-item {
    width: 100%;
    height: auto;
    margin: 10px 0 0 0;
    padding: 0;
    background: #fff;
    border: 0;
    color: var(--texts_color);
    -webkit-box-shadow: var(--box_shadow);
    -moz-box-shadow: var(--box_shadow);
    box-shadow: var(--box_shadow);
    border-radius: var(--border_radius_box);
    overflow: hidden
}

#pag_pacchetti .element-item:hover {
    -webkit-box-shadow: 0 3px 3px 0 rgba(50,50,50,.4);
    -moz-box-shadow: 0 3px 3px 0 rgba(50,50,50,.4);
    box-shadow: 0 3px 3px 0 rgba(50,50,50,.4)
}

#pag_pacchetti #pacchetti {
    background: 0 0;
    box-shadow: none;
    margin-top: 20px
}

#pag_pacchetti #wrapper .container {
    flex-direction: column
}

#pag_pacchetti .blocco_filtri,#pag_pacchetti .grid {
    padding: 0
}

#box_pacchetti #pacchetti .page-title,#main-pacchetti .page-title {
    text-align: center;
    padding: 20px;
    background: var(--box_background);
    font-size: 18px;
    border-radius: var(--border_radius_box);
    box-shadow: var(--box_shadow)
}

#box_pacchetti #box-filtri {
    margin-top: 1px
}

#pag_pacchetti .element-item .box_offerta .descri_pacchetto h3.name {
    color: var(--title_color)
}

.button-group.filters-button-group {
    background: #fff;
    font-size: 12px!important
}

#pag_pacchetti .button-group .button {
    font-size: 12px
}

#pag_pacchetti #lista_filtri {
    padding: 5px 25px;
    display: flex!important;
    flex-wrap: wrap;
    justify-content: flex-end
}

#pag_pacchetti #lista_filtri .packages-button {
    margin-right: 0;
    order: 3;
    margin-left: auto
}

#pag_pacchetti #lista_filtri .packages-button .label {
    margin: 0!important
}

#lista_filtri:has(.packages-button) .box_room_categories {
    order: 1;
    margin-left: 0!important;
    margin-right: auto
}

#pag_pacchetti .element-item .box_offerta .foto_pacchetto img {
    margin-bottom: 0;
    height: 240px
}

#pag_pacchetti .element-item .box_offerta .descri_pacchetto {
    padding: 15px 20px;
    margin-bottom: 0;
    width: 100%
}

#pag_pacchetti .element-item .box_offerta .descri_pacchetto h3.name {
    color: var(--title_color);
    font-weight: 700;
    height: 50px;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 2;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    margin-bottom: 15px
}

#pag_pacchetti .element-item .box_offerta .descri_pacchetto p {
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 4;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    margin-bottom: 15px;
    height: 72px;
    font-size: var(--text_size)
}

#pag_pacchetti .element-item .box_offerta .prezzo_pacchetto {
    float: none;
    width: 100%;
    border: 0;
    padding: 0;
    margin-top: 10px;
    margin-bottom: 0;
    display: flex;
    justify-content: center;
    align-items: center
}

#pag_pacchetti #pkg-list .element-item .box_offerta .prezzo_pacchetto span {
    float: none;
    width: auto;
    font-size: 12px!important
}

#pag_pacchetti .element-item .box_offerta .prezzo_pacchetto a {
    display: flex;
    justify-content: flex-end;
    align-items: flex-end
}

#pag_pacchetti .element-item .box_offerta .prezzo_pacchetto a span {
    width: auto!important;
    float: none!important
}

#pag_pacchetti .element-item .box_offerta .prezzo_pacchetto .big {
    font-size: 1.5em;
    line-height: initial;
    font-weight: 700;
    color: var(--title_color);
    padding: 0 5px
}

#pag_pacchetti .element-item .box_offerta .prezzo_pacchetto .occupazione {
    text-align: center;
    line-height: initial
}

#pag_pacchetti .element-item .box_offerta .prezzo_pacchetto .occupazione i {
    padding-right: 2px;
    position: relative;
    color: var(--icon_color)
}

#pag_pacchetti .element-item .box_offerta .row_puls {
    padding: 10px 20px 20px
}

#pag_pacchetti .promo.sin {
    float: left;
    background: 0 0!important;
    color: var(--link_color);
    border-radius: 0!important;
    line-height: initial;
    width: auto;
    padding: 0;
    margin-top: 15px
}

#pag_pacchetti .promo.sin:hover {
    background: 0 0!important;
    color: var(--link_color)!important
}

#pag_pacchetti .promo.sin .sx {
    line-height: inherit;
    height: initial;
    border-bottom: 1px solid var(--link_color)
}

#pag_pacchetti .promo.sin .sx {
    margin: 0
}

#pag_pacchetti .promo.des {
    float: none;
    display: flex;
    flex-wrap: nowrap;
    flex-direction: row;
    align-items: center;
    width: auto;
    margin: auto;
    justify-content: center
}

#pag_pacchetti .promo .sx {
    float: left;
    width: auto;
    padding: 0;
    line-height: 18px;
    height: auto;
    margin: 5px 0 5px 10px;
    text-align: left
}

#pag_pacchetti .promo.des .freccia i {
    float: none;
    font-size: 15px;
    height: 40px!important;
    line-height: 40px!important;
    vertical-align: middle
}

#pag_pacchetti .promo.sin .freccia i {
    float: none;
    font-size: 10px;
    height: 18px!important;
    line-height: 18px!important;
    vertical-align: middle
}

#pag_pacchetti .element-item .box_offerta .box_offerta_blocco.piccola .foto_pacchetto img {
    float: none;
    width: 100%;
    margin: 0;
    height: 150px
}

#pag_pacchetti .element-item .box_offerta .box_offerta_blocco.piccola .descri_pacchetto,#pag_pacchetti .element-item .box_offerta .box_offerta_blocco.piccola .prezzo_pacchetto {
    width: 100%
}

#pag_pacchetti .element-item .box_offerta .box_offerta_blocco.piccola .prezzo_pacchetto {
    border-top: 0;
    margin-top: 10px;
    padding-right: 10px
}

#pag_pacchetti .what_blocco .blocco_testo {
    background-color: var(--light_bg);
    padding: 20px
}

ul#room-categories-conteiner li.list_room_cat.mostra_tutti_filtri.active span {
    margin: 0!important
}

#pag_pacchetti #pkg-list .swiper-slide.element-item {
    width: 100%!important;
    margin-top: 10px;
    background: 0 0;
    box-shadow: none;
    padding-bottom: 10px
}

#pag_pacchetti #pkg-list .swiper-slide.element-item .box_offerta {
    margin: 0 4%!important;
    box-sizing: border-box;
    background: var(--box_background);
    width: 92%;
    box-shadow: var(--box_shadow);
    border-radius: 10px;
    overflow: hidden
}

#pag_pacchetti #pkg-list .swiper-horizontal>.swiper-pagination-bullets,#pag_pacchetti #pkg-list .swiper-pagination-bullets.swiper-pagination-horizontal,#pag_pacchetti #pkg-list .swiper-pagination-custom,.swiper-pagination-fraction {
    bottom: -30px
}

div#main-pacchetti {
    display: block;
    width: 100%
}

#pag_pacchetti #pkg-list {
    position: relative
}

.swiper-pack-button-next,.swiper-pack-button-prev {
    position: absolute;
    top: var(--swiper-navigation-top-offset,97%);
    width: calc(var(--swiper-navigation-size)/ 44* 27);
    height: var(--swiper-navigation-size);
    margin-top: calc(0px -(var(--swiper-navigation-size)/ 2));
    z-index: 10;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center
}

.swiper-pack-button-next {
    left: auto;
    right: 40%
}

.swiper-pack-button-prev {
    left: 40%;
    right: auto
}

.swiper-pack-button-next:after,.swiper-pack-button-prev:after {
    content: 'next';
    font-family: swiper-icons;
    font-size: var(--swiper-navigation-size);
    text-transform: none!important;
    letter-spacing: 0;
    font-variant: initial;
    line-height: 1
}

.swiper-pack-button-prev:after {
    content: 'prev'
}

.swiper-pack-button-next.swiper-button-disabled,.swiper-pack-button-prev.swiper-button-disabled {
    opacity: .4
}

.swiper-pack-button-next::after,.swiper-pack-button-prev::after {
    font-size: 25px;
    font-weight: 700;
    color: #fff;
    padding: 15px 20px
}

.box_offerta_blocco {
    display: flex;
    flex-wrap: wrap
}

.box_offerta_blocco .descri_pacchetto,.box_offerta_blocco .foto_pacchetto {
    width: 100%
}

.swiper-pack-pagination.swiper-pagination-clickable.swiper-pagination-bullets.swiper-pagination-horizontal {
    margin: auto;
    text-align: center;
    position: relative;
    top: 50px
}

div#pkg-list.require-slide {
    margin-bottom: 50px;
    width: 90%;
    margin: 0 5%
}

@media only screen and (max-width: 1200px) {
    #pag_pacchetti .grid {
        grid-template-columns:repeat(2,1fr);
        column-gap: 10px
    }

    #pag_pacchetti .element-item .box_offerta .foto_pacchetto img {
        height: 350px
    }
}

@media only screen and (max-width: 960px) {
    #pag_pacchetti .grid {
        padding:0 10px
    }

    #pag_pacchetti .element-item .box_offerta .foto_pacchetto img {
        height: 300px
    }
}

@media only screen and (max-width: 800px) {
    #pag_pacchetti .grid {
        width:100%
    }

    #pag_pacchetti .element-item .box_offerta .foto_pacchetto img {
        height: 260px
    }
}

@media screen and (max-width: 680px) {
    #pag_pacchetti .grid {
        grid-template-columns:repeat(1,1fr);
        column-gap: 0
    }

    #pag_pacchetti .element-item .box_offerta .foto_pacchetto img {
        margin-bottom: 0;
        height: 280px
    }
}

li.list_room_cat.mostra_tutti_filtri a span {
    padding-left: 20px
}

#pag_pacchetti .promo.aa .freccia i,.promo:hover .freccia i {
    -ms-transform: rotate(0);
    -webkit-transform: rotate(0);
    transform: rotate(0)
}

#pag_pacchetti .box_offerta_blocco a:hover {
    color: var(--texts_color)
}

#pag_pacchetto_singolo #pacchetti .contenuto .blocco_filtri,#pag_pacchetto_singolo #pacchetti .contenuto .blocco_filtri_mobile {
    display: none
}

#pag_pacchetto_singolo #pacchetti {
    background: 0 0;
    box-shadow: none
}

#pag_pacchetto_singolo .carrello .contenuto .box_contenuto {
    padding: 10px 20px 0
}

#pag_pacchetto_singolo .container_tipo {
    display: block!important
}

#pag_pacchetto_singolo .accordion .freccia {
    display: none!important
}

#pag_pacchetto_singolo .accordion>.button2024 {
    pointer-events: none
}

#box_contenuto_offerta_qr .riga .riepilogo_promo>p,.foto_promo,.riga_promo {
    display: none
}

#pag_pacchetto_singolo .riepilogo_promo .foto_promo img {
    width: 100%;
    margin: 0
}

#scheda_pacchetto .foto_pacchetto {
    margin-bottom: 0
}

.box_offerta .foto_pacchetto img {
    background: center center/cover #fff;
    width: 100%;
    height: 250px
}

.bannerone-offerta {
    margin-bottom: 15px
}

.bannerone-offerta .campo {
    background: var(--bg_riepilogo_mobile_accordion)
}

#scheda_pacchetto {
    padding: 0
}

#scheda_pacchetto .descri_pacchetto {
    padding: 0 25px
}

#scheda_pacchetto .cosa_include,#scheda_pacchetto .descri_pacchetto {
    width: 100%;
    border: none;
    margin: 0
}

.cosa_include .cont_cosa_include {
    padding: 0 25px 20px
}

.riepilogo_promo h3 {
    text-transform: inherit;
    font-size: 14px;
    background: var(--bg_riepilogo_mobile);
    color: var(--texts_color);
    padding: 15px 20px;
    border-radius: 15px
}

#sx_pacchetti .riepilogo_promo .pulsanti {
    margin-top: 0;
    text-align: right
}

#scheda_pacchetto .pulsanti,#sx_pacchetti .riepilogo_promo .pulsanti a,.box_offerta_blocco.campo .pulsanti a,.box_offerta_blocco.campo .pulsanti button,ul.box_room_categories li.mostra_tutti_filtri.active .check_room_cat {
    text-align: right;
    color: var(--text_color_grey)!important;
    background: var(--box_background)!important;
    line-height: 20px;
    padding: 8px 20px;
    background: 0 0;
    text-transform: initial;
    border-radius: var(--border_radius_buttons);
    width: fit-content;
    margin: 0 0 0 auto;
    font-size: var(--text_size);
    border: 1px solid var(--border_color)
}

ul.box_room_categories li.mostra_tutti_filtri.active .check_room_cat span {
    color: var(--text_color_grey)!important
}

#scheda_pacchetto .pulsanti:hover,#sx_pacchetti .riepilogo_promo .pulsanti a:hover,.box_offerta_blocco.campo .pulsanti a:hover,.box_offerta_blocco.campo .pulsanti button:hover,ul.box_room_categories li.mostra_tutti_filtri.active .check_room_cat:hover {
    color: var(--texts_color)!important;
    background: var(--light_bg)!important
}

#scheda_pacchetto .pulsanti a:hover {
    color: var(--texts_color)!important
}

#scheda_pacchetto .pulsanti {
    margin-right: 20px;
    margin-bottom: 20px;
    order: 2
}

#scheda_pacchetto {
    padding: 0;
    display: flex;
    width: 100%;
    flex-wrap: wrap
}

#scheda_pacchetto .descri_pacchetto {
    width: 100%
}

#scheda_pacchetto .prezzo_pacchetto {
    width: 100%;
    margin: 15px 20px;
    border: none;
    text-align: right;
    padding: 15px;
    order: 1;
    background: var(--light_bg)
}

#scheda_pacchetto .prezzo_pacchetto .big {
    color: var(--title_color)
}

#scheda_pacchetto .prezzo_pacchetto .occupazione .ospiti {
    text-align: right;
    font-size: 12px
}

#pag_pacchetto_singolo #scheda_pacchetto .prezzo_pacchetto br,#pag_pacchetto_singolo .riga_promo {
    display: none
}

#scheda_pacchetto .prezzo_pacchetto .occupazione {
    padding-left: 8px;
    width: auto;
    float: none
}

#scheda_pacchetto .prezzo_pacchetto {
    display: flex;
    justify-content: flex-end;
    align-items: center
}

#scheda_pacchetto .prezzo_pacchetto .big {
    padding-left: 5px
}

#scheda_pacchetto .name {
    text-transform: uppercase;
    font-weight: 700
}

.cosa_include .cont_cosa_include {
    padding: 0;
    margin: 10px 25px 20px;
    background: border-box
}

#pag_pacchetti .element-item .box_offerta .descri_pacchetto {
    padding: 15px 20px 0
}

#pag_pacchetti .element-item .box_offerta .descri_pacchetto h3.name {
    padding: 0;
    margin-bottom: 10px
}

#pag_pacchetti .element-item .box_offerta .descri_pacchetto p {
    margin-bottom: 0;
    padding: 0
}

#sx_pacchetti #box_contenuto_offerta_qr {
    display: none
}

#pag_pacchetto_singolo .carrello .contenuto #box_contenuto_offerta_qr {
    padding: 20px 20px 0
}

.box_carrello_pacchetti .riepilogo_promo h3 {
    background: var(--light_bg);
    padding: 20px;
    border-radius: 0;
    margin: 0 0 15px 0
}

#box_contenuto_offerta_qr .riga .riga {
    border-bottom: 1px solid var(--border_color)
}

#pag_pacchetto_singolo #box_dx .tit {
    text-align: center;
    padding: 15px 20px;
    background: var(--box_background);
    font-size: 18px;
    border-radius: var(--border_radius_box);
    box-shadow: var(--box_shadow);
    margin: 0 0 20px
}

.box_offerta_blocco.campo {
    display: flex;
    flex-wrap: nowrap!important;
    width: 100%;
    flex-direction: row;
    align-items: stretch
}

.box_offerta_blocco .cont_pacchetto {
    padding: 25px;
    position: relative;
    width: 100%
}

.box_offerta_blocco .descri_pacchetto h3 {
    margin: 0 0 10px;
    font-weight: 600;
    font-size: var(--title_size)
}

.box_offerta_blocco p.desc-estesa {
    margin: 0
}

.box_offerta_blocco.campo .pulsanti {
    margin-top: 0;
    position: absolute;
    bottom: 20px;
    right: 20px
}

#pag_pacchetti .blocco_filtri_mobile {
    display: none
}

.bannerone-offerta .foto_pacchetto {
    max-width: 500px
}

@media only screen and (max-width: 680px) {
    #dx_pacchetti,#sx_pacchetti {
        width:100%!important
    }

    #scheda_pacchetto .descri_pacchetto,#scheda_pacchetto .prezzo_pacchetto {
        width: 100%
    }

    #pag_pacchetto_singolo span.special-offer-label {
        display: block;
        margin: 10px 0 0 0
    }

    #scheda_pacchetto .prezzo_pacchetto {
        display: flex;
        width: 100%;
        text-align: left;
        flex-direction: row;
        align-items: center;
        padding: 0 20px
    }

    #scheda_pacchetto .prezzo_pacchetto .occupazione {
        float: none;
        width: auto
    }

    .box_offerta .foto_pacchetto img {
        width: 100%;
        height: auto
    }

    #scheda_pacchetto .prezzo_pacchetto .big {
        padding: 5px 10px
    }
}

.persuasive-message-rate .message,.persuasive-message-rate .message.visibile,.persuasive-message-room .message {
    background: var(--bg_persuasivi)!important;
    color: var(--txt_persuasivi)
}

.persuasive-message-rate .message p {
    text-align: center
}

.persuasive-message.persuasive-message-room {
    left: 0;
    right: initial;
    margin: 0 auto;
    text-align: center;
    bottom: auto!important;
    top: 10px;
    z-index: 2;
    width: 100%;
    max-width: 500px
}

.persuasive-message-room .message p {
    text-align: center
}

.persuasive-message-room .message {
    position: relative;
    width: auto;
    display: inline-block;
    margin: auto;
    padding: 0 30px;
    top: 0;
    bottom: auto
}

.persuasive-message-room .message {
    display: none
}

.persuasive-message-room .message.visibile {
    display: inline-block
}

.foto.full .persuasive-message.persuasive-message-room {
    left: 20px;
    right: auto;
    bottom: 15px
}

.persuasive-message-rate .message:after,.persuasive-message-rate .message:before,.persuasive-message-room .message:after,.persuasive-message-room .message:before {
    display: none!important;
    background: 0
}

.persuasive-message-rate .message.visibile {
    max-width: 100%!important
}

.row_titolo .room-rate-parsuasive-msg-box {
    width: 100%;
    margin-top: 10px
}

#persuasive-messages-general,#persuasive-messages-summary {
    z-index: 205
}

@media only screen and (min-width: 460px) and (max-width:619px),(min-width:830px) and (max-width:960px),(min-width:1200px) {
    .room-rate-parsuasive-msg-box,.room-rate-treatment-box-item {
        display:block;
        vertical-align: middle;
        width: 100%
    }

    .persuasive-message-rate .message p {
        text-align: center
    }
}

@media only screen and (min-width: 620px) {
    .persuasive-message-rate .message.visibile {
        margin:0;
        display: inline-block;
        width: 100%!important;
        max-width: 100%!important;
        text-align: center
    }

    .room-rate-parsuasive-msg-box .persuasive-message {
        text-align: right;
        position: relative
    }
}

.room-rate-occupations-box {
    position: relative
}

@media only screen and (max-width: 680px) {
    .persuasive-message.persuasive-message-room {
        position:absolute!important
    }

    .room-rate-parsuasive-msg-box .persuasive-message {
        padding: 0
    }

    .persuasive-message-rate .message.visibile {
        border-radius: 0 0 10px 10px!important
    }
}

@media only screen and (min-width: 680px) {
    .room-rate-parsuasive-msg-box,.row_titolo .room-rate-parsuasive-msg-box {
        width:100%;
        margin: 0 2px;
        float: none;
        border-radius: 5px
    }

    .persuasive-message-rate .message.visibile {
        border-radius: var(--border_radius_box)!important;
        position: absolute;
        right: 0
    }

    .message {
        box-shadow: none!important
    }
}

@media only screen and (min-width: 680px) and (max-width:960px) {
    .persuasive-message.persuasive-message-room {
        max-width:350px
    }
}

#price-checker {
    background: #fff;
    font-size: 14px
}

#price-checker .ota_comparison_banner h2,#price-checker .ota_comparison_texts_title {
    background: 0 0;
    padding: 20px 20px 10px;
    color: var(--dark_background);
    font-size: 16px;
    text-transform: uppercase;
    font-weight: 700
}

.ota_comparison_texts_title {
    padding: 20px 0 10px!important
}

#price-checker #cont_finestra_portale {
    padding-top: 0
}

#price-checker .ota_comparison_texts {
    padding: 0 20px 20px
}

#price-checker .ota_comparison_texts,#price-checker .ota_comparison_texts_title {
    text-align: left
}

#price-checker .row_portale.ota_comparison_new li .blocco .icona {
    display: none
}

#price-checker .row_portale.ota_comparison_new li.ufficiale {
    background: var(--buttons_bg);
    color: var(--buttons_text);
    padding: 10px 20px;
    font-size: 14px
}

#price-checker span.tariffa_comp {
    color: var(--dark_background)
}

#price-checker .ufficiale span.tariffa_comp {
    color: var(--buttons_text)
}

.container .banner_comparativo .row_portale h2 {
    width: 100%;
    line-height: 20px;
    margin: 0;
    padding: 10px;
    font-size: 1.2em;
    color: var(--texts_color);
    font-weight: 400;
    background: var(--box_background);
    text-transform: uppercase
}

.banner_comparativo_new_flow {
    position: fixed;
    bottom: 20px;
    left: 0;
    z-index: 1000;
    display: none;
    box-shadow: var(--box_shadow);
    background: var(--box_background)
}

.banner_comparativo_new_flow .row_portale.ota_comparison_new {
    border-bottom: 0;
    width: 600px
}

.banner_comparativo_new_flow #cont_finestra_portale {
    border-top: 0;
    width: 600px
}

.banner_comparativo_new_flow .row_box_portale {
    display: flex;
    align-items: center
}

.banner_comparativo_new_flow .banner_chiuso {
    display: none;
    width: 120px;
    height: auto;
    background: var(--bg_ota_comparison);
    cursor: pointer;
    color: var(--buttons_text);
    padding: 15px;
    text-align: center
}

.banner_comparativo_new_flow .banner_chiuso i {
    font-size: 20px
}

.banner_comparativo_new_flow .close {
    cursor: pointer;
    padding: 10px;
    text-align: right
}

.banner_comparativo_new_flow .close i {
    color: var(--texts_color);
    font-size: 20px
}

.banner_comparativo_new_flow .ota_comparison_new ul {
    display: flex;
    align-items: stretch;
    background: #fff;
    margin: 0;
    padding: 0;
    list-style: none
}

.banner_comparativo_new_flow .ota_comparison_new li {
    flex: 1;
    padding: 15px 0;
    display: flex;
    align-items: center;
    justify-content: center
}

.banner_comparativo_new_flow .ota_comparison_new li.score {
    margin: 15px 0;
    padding: 0;
    border-right: 1px solid var(--border_color)
}

.banner_comparativo_new_flow .ota_comparison_new li.ufficiale {
    background: var(--bg_ota_comparison);
    color: var(--buttons_text)
}

.banner_comparativo_new_flow .ota_comparison_new li.close {
    flex: 0 0 40px;
    background: var(--border_color)
}

.banner_comparativo_new_flow .ota_comparison_new .blocco {
    text-align: center
}

.banner_comparativo_new_flow .ota_comparison_new .blocco .tariffa_comp {
    text-align: center;
    font-size: 20px;
    font-weight: 700
}

.banner_comparativo_new_flow .ota_comparison_new li.score .blocco .tariffa_comp {
    font-size: 14px
}

.banner_comparativo_new_flow .ota_comparison_new li.ufficiale .portale {
    font-size: 12px;
    color: var(--buttons_text);
    display: block
}

.banner_comparativo_new_flow .ota_comparison_new li.ufficiale .prezzo br {
    display: none
}

.banner_comparativo_new_flow .ota_comparison_new li.ufficiale .tariffa_comp {
    font-size: 20px;
    font-weight: 700;
    color: var(--buttons_text)
}

.banner_comparativo_new_flow #cont_finestra_portale {
    background: var(--bg_ota_comparison_light);
    padding: 0;
    box-shadow: none;
    margin: 0
}

.banner_comparativo_new_flow .title_ota_bold {
    font-size: 16px;
    font-weight: 700;
    color: var(--bg_ota_comparison);
    text-align: left
}

.banner_comparativo_new_flow .box-inside_portale ul {
    margin: 0;
    padding: 0;
    list-style: none
}

.banner_comparativo_new_flow .box-inside_portale li {
    margin: 4px 0;
    display: flex;
    align-items: center;
    gap: 5px;
    color: var(--texts_color)
}

.banner_comparativo_new_flow .box-inside_portale i.far.fa-check {
    color: #78c878
}

.banner_comparativo_new_flow .ufficiale {
    background: #f8fff8
}

.banner_comparativo_new_flow .title_comparison_first {
    background: 0 0
}

.banner_comparativo_new_flow .title_comparison_first {
    width: 30%
}

.banner_comparativo_new_flow .title_comparison_second {
    width: 70%
}

@media only screen and (max-width: 680px) {
    .banner_comparativo_new_flow {
        position:fixed;
        bottom: 100px
    }

    .banner_comparativo_new_flow #cont_finestra_portale,.banner_comparativo_new_flow .row_portale.ota_comparison_new {
        width: 300px
    }

    .banner_comparativo_new_flow .ota_comparison_new ul,.banner_comparativo_new_flow .row_box_portale {
        display: flex;
        flex-direction: column
    }

    .banner_comparativo_new_flow .ota_comparison_new li,.banner_comparativo_new_flow .title_comparison_first,.banner_comparativo_new_flow .title_comparison_second {
        width: 100%
    }

    .banner_comparativo_new_flow .ota_comparison_new li.close {
        flex: 0 0 40px;
        background: var(--border_color);
        position: absolute;
        top: 0;
        right: 0;
        width: 40px;
        background: 0 0
    }

    .banner_comparativo_new_flow .ota_comparison_new li.score {
        margin: 15px 0 0
    }

    .banner_comparativo_new_flow .ota_comparison_new .blocco .tariffa_comp {
        font-size: 14px
    }

    .cont_inside_portale {
        padding: 10px 20px 0
    }

    .second_row-co .cont_inside_portale {
        padding: 5px 20px 10px
    }

    .banner_comparativo_new_flow .ota_comparison_new li {
        padding: 10px 0
    }
}

#services_page #box_dx .seleziona_camera {
    padding: 15px 25px
}

#services_page #box_dx .seleziona_camera .navigation a.animsition-link {
    margin: 0
}

.blocco_camera-title i.fa-bed,.blocco_camera-title span.freccia {
    display: none
}

.blocco_camera .desc_camera {
    display: block!important
}

#carrello #calcolo_finale {
    padding: 0
}

.box_riepi .riga {
    border: none
}

.riga.prezzi.definitivo {
    font-weight: 700;
    padding: 2px 0
}

.box_riepi .riga.definitivo .risultato {
    margin: 0
}

.box_riepi .riga.prezzi .label,.box_riepi .riga.servizi .label {
    display: block
}

.box_riepi .riga.servizi.remove .risultato {
    width: 1500px;
    vertical-align: middle;
    font-weight: 700
}

.box_riepi .riga.servizi.remove .remove i {
    margin: 0;
    padding: 0 0 0 5px;
    color: var(--cancella);
    font-size: 15px
}

.box_riepi .riga.prezzi:not(:first-child) .label:after {
    content: ":";
    display: none
}

.box_riepi .boxcont_upgrade .riga.upsold .label,.box_riepi .boxcont_upgrade .riga.upsold i {
    display: table-cell;
    float: left;
    vertical-align: middle;
    line-height: 32px
}

.box_riepi .boxcont_upgrade .riga.upsold i {
    padding-right: 0!important;
    background: var(--icon_color);
    color: #fff!important;
    border-radius: 50%;
    width: 32px;
    height: 32px;
    line-height: 32px;
    text-align: center;
    margin-right: 10px;
    font-size: 12px;
    margin-right: 10px
}

.boxcont_upgrade .riga .pulsanti {
    padding: 0 0 20px;
    border-bottom: 1px solid var(--border_color);
    margin: 0 0 20px
}

.riga.upgrade .pulsanti button {
    background-color: var(--buttons_bg)!important;
    color: var(--buttons_text);
    border: none;
    margin: 0 auto;
    text-align: center;
    display: flex;
    vertical-align: middle;
    align-items: center;
    padding: 10px 20px;
    border-radius: 50px;
    font-size: var(--text_size)
}

.riga.upgrade .pulsanti button:hover {
    background-color: var(--buttons_bg_hover)!important;
    color: var(--buttons_text_hover)
}

.riga.upgrade .pulsanti button i {
    font-size: 12px;
    padding-right: 10px
}

.box_riepi .boxcont_upgrade .riga .risultato .multi_riga {
    display: table-cell;
    float: right;
    vertical-align: middle;
    line-height: 32px;
    font-weight: 700
}

#tab_servizi .tabs_nav_servizi li>a {
    text-align: center;
    font-weight: 700;
    padding: 15px 20px;
    font-size: var(--sub_title_size);
    border-bottom: 0;
    margin-bottom: 0;
    text-transform: none
}

.tabs-servizi-link span.freccia {
    background: 0 0
}

.tabs-servizi-link span.freccia i:before {
    font-size: 12px!important
}

.tabs-servizi-link span.freccia i {
    color: #222!important
}

#services_page .seleziona_camera {
    border-radius: var(--border_radius_box);
    overflow: hidden;
    padding: 10px;
    box-shadow: var(--box_shadow);
    display: flex;
    justify-content: space-between;
    align-items: center
}

#services_page .seleziona_camera h2 {
    font-weight: 400;
    font-size: var(--sub_title_size);
    text-transform: initial;
    text-align: left;
    padding: 0;
    font-weight: 700
}

.continua.animsition-link {
    padding: 10px 25px;
    border-radius: var(--border_radius_buttons);
    border: 0;
    font-size: var(--text_size)
}

.tabs_nav_servizi>li {
    border-radius: var(--border_radius_box);
    overflow: hidden;
    box-shadow: var(--box_shadow);
    margin-bottom: 15px
}

.tabs_nav_servizi>li>div {
    margin-top: 1px
}

.riepilogo_servizi {
    height: auto
}

.riepilogo_servizi .continua {
    border-radius: 50px;
    font-size: 12px;
    padding: 10px;
    max-width: 120px;
    width: 100%;
    height: auto;
    line-height: initial;
    text-align: center
}

.nessun_servizio .continua {
    height: auto;
    padding: 10px 20px;
    border-radius: 50px;
    line-height: initial
}

.campo_servizi .elenco>li {
    display: flex;
    padding-bottom: 0;
    margin-bottom: 5px
}

.campo_servizi .elenco>li:last-child {
    margin-bottom: 0
}

.campo_servizi .foto {
    float: none;
    width: 500px;
    height: auto;
    padding: 0;
    min-width: 240px;
    overflow: hidden;
    position: relative;
    max-height: initial
}

.campo_servizi .elenco li .blocco_servizio {
    width: calc(100% - 500px);
    height: auto;
    padding: 20px 25px;
    margin-top: 0!important
}

.campo_servizi .foto img {
    height: auto;
    width: 100%
}

.campo_servizi .accordion {
    background: 0 0
}

.campo_servizi .accordion .nome_servizio {
    padding: 0;
    font-weight: 700
}

.campo_servizi .blocco_servizio .tariffa_servizio .row {
    background: var(--light_bg);
    border-bottom: 2px solid #fff;
    padding: 5px 10px 5px 20px;
    font-size: var(--text_size);
    min-height: 30px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: row
}

.campo_servizi .blocco_servizio .tariffa_servizio .row .qta {
    float: none;
    min-height: auto;
    text-align: right;
    margin: 0 0 0 auto
}

.campo_servizi .blocco_servizio .tariffa_servizio.single_room .row .prezzo {
    line-height: initial;
    min-height: auto;
    height: auto
}

.campo_servizi .blocco_servizio .tariffa_servizio .row .giorno,.campo_servizi .blocco_servizio .tariffa_servizio .row .tot {
    min-height: auto
}

.campo_servizi .blocco_servizio .tariffa_servizio .row:has(.action-remove) {
    background: var(--light_bg_hover)
}

.campo_servizi .blocco_servizio .tariffa_servizio .row .prezzo,.campo_servizi .blocco_servizio .tariffa_servizio .row .qta .campo_servizi .blocco_servizio .tariffa_servizio .row .tot,.campo_servizi .blocco_servizio .tariffa_servizio .row .remove {
    min-height: auto
}

.campo_servizi .blocco_servizio .tariffa_servizio .row.titolo:first-child {
    background: var(--light_bg_hover)
}

.campo_servizi .blocco_servizio .row.lista .qta {
    width: 84px!important;
    background: var(--box_background);
    border: 1px solid var(--border_color);
    border-radius: var(--border_radius_buttons);
    text-align: center;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    min-height: 30px;
    float: right!important;
    overflow: hidden;
    margin-left: auto
}

.campo_servizi .blocco_servizio .tariffa_servizio.single_room .row .giorno {
    width: auto;
    min-width: 120px
}

.campo_servizi .blocco_servizio .row.lista .qta:has(.seleziona_orario) {
    width: 130px!important
}

.campo_servizi .blocco_servizio .tariffa_servizio .row .qta a.seleziona_orario {
    margin: 0;
    line-height: 18px!important;
    font-size: 11px!important
}

.tabs_nav_servizi li a.show_less,.tabs_nav_servizi li a.show_more {
    color: var(--text_color_grey)!important;
    background: var(--box_background);
    border: 1px solid var(--border_color);
    padding: 6px 15px;
    border-radius: 50px;
    float: right;
    line-height: 15px;
    margin-top: 10px;
    width: auto!important;
    background: var(--box_background)!important;
    font-size: var(--text_size);
    opacity: 1
}

.tabs_nav_servizi li a.show_less:hover,.tabs_nav_servizi li a.show_more:hover {
    color: var(--texts_color)!important;
    background: var(--light_bg)!important
}

.campo_servizi .blocco_servizio .tariffa_servizio .row.titolo {
    text-transform: capitalize
}

.campo_servizi .blocco_servizio .tariffa_servizio .row.lista:hover {
    box-shadow: none
}

li.row.lista.last .prezzo span.barrato {
    color: var(--icon_color);
    font-size: 12px
}

.campo_servizi .accordion {
    min-height: auto;
    padding: 10px;
    background: var(--light_bg)
}

.campo_servizi .accordion-open .freccia i {
    color: var(--texts_color)!important
}

.blocco_servizio .descrizione_servizio {
    padding: 0;
    border: none;
    display: block;
    font-size: var(--text_size)
}

.titolo_servizio {
    font-weight: 700;
    font-size: var(--sub_title_size)
}

.service-details-link.link-dettagli,.service-details-link.swiper {
    cursor: pointer
}

.nome_servizio span {
    display: block;
    padding: 10px 0 15px;
    color: var(--link_color);
    font-size: var(--details_text);
    font-weight: 400;
    text-decoration: underline
}

.nome_servizio span:hover {
    color: var(--buttons_bg_hover)
}

.campo_servizi .blocco_servizio .tariffa_servizio .row .qta a.seleziona_orario {
    line-height: 20px!important;
    padding: 5px;
    font-size: 11px!important
}

.campo_servizi .blocco_servizio .tariffa_servizio .row .qta a.seleziona_orario.active,.campo_servizi .blocco_servizio .tariffa_servizio .row .qta a.seleziona_orario:hover {
    color: #222
}

.campo_servizi .blocco_servizio .tariffa_servizio .row.fascia_oraria {
    margin-bottom: 0;
    border: 0;
    padding: 0 20px;
    background: var(--light_bg)
}

.campo_servizi .blocco_servizio .tariffa_servizio .row.fascia_oraria ul li {
    background: var(--light_bg);
    border-bottom: 1px solid #ddd;
    padding: 0;
    display: flex;
    justify-content: space-between;
    flex-direction: row;
    align-items: center
}

.row.fascia_oraria ul li .fascia,.row.fascia_oraria ul li .orario {
    width: auto!important
}

.row.fascia_oraria ul li .fascia {
    border: 1px solid var(--border_color);
    border-radius: var(--border_radius_buttons);
    background: var(--box_background);
    width: auto!important;
    padding: 0;
    line-height: 24px!important;
    padding: 0 5px!important;
    display: flex!important;
    align-items: center
}

.row.fascia_oraria ul li .fascia,.row.fascia_oraria ul li .orario {
    width: auto
}

li.row.fascia_oraria ul li div {
    padding: 10px 0;
    font-weight: 700
}

.campo_servizi .blocco_servizio .tariffa_servizio .row.fascia_oraria ul li .fascia,.campo_servizi .blocco_servizio .tariffa_servizio .row.fascia_oraria ul li .orario {
    padding: 0;
    font-weight: 400
}

.campo_servizi .blocco_servizio .tariffa_servizio .row .remove i {
    color: var(--cancella);
    font-size: var(--text_size)
}

.campo_servizi .blocco_servizio .campo_note_servizio {
    display: flex;
    flex-direction: row;
    align-items: center;
    padding: 10px 0!important;
    float: none!important
}

.campo_servizi .blocco_servizio .row.campo_note_servizio label {
    width: 25%
}

.campo_servizi .blocco_servizio .row.campo_note_servizio input {
    width: 75%!important;
    border: 1px solid var(--border_color);
    margin: 0 0 0 10px;
    padding: 7px
}

@media screen and (max-width: 1200px) {
    .campo_servizi .foto {
        width:400px
    }

    .campo_servizi .elenco li .blocco_servizio {
        width: calc(100% - 400px)
    }
}

@media screen and (max-width: 900px) {
    .campo_servizi .elenco li {
        flex-direction:column
    }

    #services_page .campo_servizi .foto {
        width: 100%!important;
        height: auto;
        max-height: 350px
    }

    #services_page .campo_servizi .elenco li .blocco_servizio {
        width: 100%!important
    }
}

@media screen and (max-width: 680px) {
    .campo_servizi .elenco li {
        flex-direction:column
    }

    .campo_servizi .elenco li .blocco_servizio {
        width: auto
    }

    .campo_servizi .foto {
        float: none;
        width: 100%;
        max-height: 250px
    }

    .campo_servizi .blocco_servizio .tariffa_servizio .row .remove {
        padding: 0 0 0 5px;
        font-size: 20px
    }

    .campo_servizi .blocco_servizio .tariffa_servizio.single_room .row .tot {
        display: none
    }

    #box_dx .riepilogo_servizi {
        text-align: center;
        width: 100%
    }

    .riepilogo_servizi .continua {
        margin: 0 20px 20px;
        font-size: 14px;
        line-height: 40px;
        padding: 0 20px;
        max-width: fit-content
    }

    .campo_servizi .elenco li .blocco_servizio {
        padding: 20px 15px
    }

    .campo_servizi .blocco_servizio .tariffa_servizio .row .remove {
        width: 20px
    }
}

@media screen and (max-width: 400px) {
    .campo_servizi .blocco_servizio .tariffa_servizio .row {
        padding:5px 10px
    }
}

.blink-1 {
    animation: blinker .3s linear 1
}

@keyframes blinker {
    50% {
        opacity: 0
    }
}

#summary_page #sx {
    width: 500px;
    margin: 0 15px 0 0;
    position: relative!important;
    overflow: hidden;
    max-height: unset;
    border-radius: var(--border_radius_box)
}

#summary_page #sx {
    width: 500px
}

#summary_page #dx {
    flex: 1
}

#contenitore_riepilogo {
    background: var(--box_background)
}

.blocco_camera-title button {
    border: none;
    background: #fff;
    text-align: right;
    border-radius: 50px;
    padding: 0 0 0 10px
}

.blocco_camera .box {
    height: 295px;
    width: 100%;
    display: block!important
}

.blocco_camera .box img {
    height: 295px;
    width: auto
}

#summary_page .riga.definitivo.accordion.accordion-close {
    background: 0 0;
    border-top: 1px solid #eee;
    height: auto;
    line-height: 20px;
    margin: 10px 0 0;
    padding: 10px 0;
    pointer-events: none
}

#summary_page .riga.definitivo.accordion.accordion-close .label {
    display: block;
    text-transform: capitalize;
    font-weight: 700;
    padding: 5px 0 0
}

#summary_page .riga.definitivo.accordion.accordion-open {
    background: 0 0
}

#summary_page .riga.definitivo.accordion.accordion-open .label {
    display: block;
    text-transform: capitalize;
    font-weight: 700;
    padding: 5px 0 0
}

#summary_page .riga.definitivo.accordion.accordion-close .risultato {
    display: none
}

.box_riepi .riga .dettaglio_condizioni {
    border: 0;
    display: table!important
}

.box_riepi .riga .dettaglio_condizioni .label {
    display: block!important;
    padding: 0!important
}

.box_riepi .riga .dettaglio_condizioni .risultato {
    text-align: right;
    padding: 0
}

.box_prezzo .riga {
    border-bottom: none
}

#summary_page .campi_dati {
    margin-top: 0;
    border-radius: var(--border_radius_box);
    box-shadow: var(--box_shadow)
}

.campi_dati h2 {
    border-top-left-radius: var(--border_radius_box);
    border-top-right-radius: var(--border_radius_box)
}

div#contenitore_campi {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

.dati_personali .privacy.title {
    padding: 20px 20px 10px;
    margin: 0
}

.dati_personali .privacy {
    padding: 0
}

.dati_personali .privacy .text {
    padding: 0 20px
}

.dati_personali .row.full {
    margin-bottom: 20px
}

.blocco_camera {
    border: none;
    float: none;
    display: flex;
    flex-direction: column;
    border-bottom: 2px solid #eee
}

.blocco_camera:last-child {
    border-bottom: 0
}

.blocco_camera .blocco_camera-body {
    order: 2
}

.blocco_camera .blocco_camera-title.aa {
    background: #fff;
    order: 1;
    text-align: center;
    padding: 10px 20px;
    height: auto;
    line-height: initial;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center
}

.blocco_camera .blocco_camera-title.aa span.amount {
    margin-left: auto;
    padding-right: 10px
}

.dettagli-sol-titolo {
    text-align: left;
    font-size: var(--text-size)!important;
    width: 100%
}

#summary_page .tipo_camera .blocco_camera-title i,.blocco_camera .blocco_camera-title.aa span {
    float: none!important
}

.blocco_camera-title.aa.is_multiroom .sx {
    margin: 0!important;
    text-transform: capitalize;
    font-weight: 700;
    color: var(--calendar)
}

.blocco_camera-title.aa.is_multiroom .dx i {
    font-weight: 500;
    color: var(--calendar);
    width: 16px
}

.summary-gallery {
    order: 2;
    width: 100%
}

.blocco_camera .desc_camera {
    display: flex!important;
    order: 3;
    float: none;
    padding: 20px;
    width: 100%
}

#social ul li a,#social ul li div.g_id_signin {
    float: left;
    width: 100%;
    height: 40px;
    text-align: left;
    padding: 0 20px;
    vertical-align: middle;
    display: flex;
    align-items: center
}

#social ul li div.g_id_signin {
    background: #1a73e8
}

div#linkedin {
    display: none!important
}

#loyalties .loyalty-login-btn {
    background: #fff;
    border-radius: 50px;
    border: 1px solid var(--buttons_bg);
    color: var(--title_color)
}

#summary_page #loyalties .loyalty-login-btn {
    margin-top: 10px
}

.carrello #loyalties .box_contenuto {
    padding: 0 20px 10px
}

#loyalties .loyalty-login-btn:hover {
    background: #fff;
    border: 1px solid var(--buttons_bg_hover);
    color: var(--buttons_bg_hover)
}

#social {
    float: left;
    width: 100%;
    height: auto;
    background: #fff;
    margin: 0 0 5px 0;
    padding-bottom: 0
}

.dati_personali .row {
    position: relative;
    width: 49%
}

.dati_personali .row:not(.add-param-field) .label {
    display: none
}

.dati_personali .add-param-field .fade {
    width: 100%
}

.add-param-field:has(.field) {
    padding: 10px;
    background: var(--light_bg)!important
}

.add-param-field:has(input[type=text]) .label,.add-param-field:has(textarea) .label {
    display: none
}

.dati_personali .row:has(select) .label {
    display: block;
    margin-bottom: 0
}

.dati_personali .row:has(.input-birth-date),.dati_personali .row:has(select.customer_data_input) {
    width: 100%;
    padding: 10px 25px 10px 10px;
    background: var(--light_bg)!important
}

.dati_personali .row:has(select) label {
    display: flex;
    align-items: center
}

#form_salvataggio_prenotazione,.dati_personali {
    padding: 0 20px
}

.dati_personali .row:has(.input-birth-date) .label {
    display: block
}

.dati_personali .row:has(.input-birth-date) select,.dati_personali .row:has(select.customer_data_input) select {
    margin: 0 5px;
    width: auto;
    padding: 10px 15px
}

.dati_personali .row:has(select.customer_data_input) .fade {
    display: flex;
    justify-content: space-between
}

.dati_personali .row:has(select.customer_data_input) .fade .fields,.dati_personali .row:has(select.customer_data_input) .fade .label {
    width: auto
}

.dati_personali .row:has(.input-birth-date) input,.dati_personali .row:has(select.customer_data_input) input {
    margin: 0 5px;
    width: 40%
}

.dati_personali label {
    padding: 0
}

#form_salvataggio_prenotazione,.dati_personali {
    margin: 15px 0 0
}

#theform_richiesta_email label:has([required]):before,.privacy.title:before,.row:has([required]):before {
    content: "\2a";
    font-family: "Font Awesome 6 Pro";
    font-size: 11px;
    color: var(--buttons_bg)!important;
    position: absolute;
    right: 15px;
    top: 13px;
    z-index: 1;
    display: block;
    height: 15px;
    width: 15px;
    text-align: center
}

.row:has(input.customer_data_input[aria-required=true]) {
    padding-right: 30px
}

.row:has(input.customer_data_input[aria-required=true]):before {
    top: 3px
}

.dati_personali .privacy.title {
    position: relative
}

.box_prezzo {
    background: var(--buttons_bg);
    padding: 10px 20px;
    border-bottom-left-radius: var(--border_radius_box);
    border-bottom-right-radius: var(--border_radius_box)
}

.box_prezzo .riga.riga_totali .label,.box_prezzo .riga.riga_totali .risultato {
    color: var(--buttons_text);
    width: auto
}

.box_prezzo .formatted-price {
    font-size: var(--title_size);
    text-transform: none
}

.box_prezzo .riga.riga_totali .label {
    text-transform: none;
    font-weight: 500;
    font-size: 18px
}

.box_prezzo .currency_price .formatted-price,.box_prezzo .currency_price .risultato,.box_prezzo .riga.riga_totali.currency_price .label {
    font-size: var(--sub_title_size)!important;
    font-weight: 400!important
}

.box_prezzo .currency_price .label,.box_prezzo .currency_price .risultato {
    line-height: 20px
}

.riga.riga_totali.currency_price {
    margin-top: -5px;
    padding-bottom: 10px
}

#summary_page .box_riepi .riga:first-child .label {
    display: inline-block
}

#summary_page .box_riepi .riga:first-child {
    display: flex
}

#summary_page .box_riepi .riga.upsold {
    border-radius: var(--border_radius_buttons);
    padding: 10px 20px 10px 15px;
    background: var(--light_bg)!important;
    border: 1px solid var(--border_color);
    margin-bottom: 10px;
    justify-content: space-between
}

#summary_page .box_riepi .riga.upsold .label {
    margin-right: auto;
    width: auto;
    padding-right: 10px;
    padding-left: 10px
}

.box_riepi .riga.upsold .risultato .multi_riga {
    font-weight: 700;
    text-decoration: line-through
}

.upgrade_box_prezzi span.risultato.upsold {
    text-align: left;
    font-size: var(--mini_text_size);
    color: var(--txt_alert);
    text-decoration: line-through
}

.quot_confirm .top-riepilogo .contenuto {
    padding: 20px;
    font-size: var(--text_size_treatment);
    background: var(--dark_background_90);
    color: var(--buttons_text);
    border-radius: var(--border_radius_box)
}

.quot_confirm .tipo_camera {
    display: block
}

.quot_confirm #contenitore_riepilogo {
    background: var(--box_background);
    display: flex;
    flex-direction: column
}

.riepilogo_date {
    display: flex;
    text-transform: initial;
    font-size: var(--mini_text_size);
    padding-top: 10px;
    border-top: 1px solid var(--border_color);
    margin-top: 10px;
    width: 100%
}

.riepilogo_date .label {
    display: block;
    font-size: var(--mini_text_size);
    font-weight: 700;
    padding-bottom: 3px;
    text-transform: capitalize
}

.riepilogo_date .notti {
    width: 50px
}

#summary_page .campi_dati:has(#box_metodi_pagamento_alternativi) {
    margin-top: 20px
}

#box_metodi_pagamento_alternativi .campi_dati {
    display: flex;
    flex-direction: column
}

.payment-options-box .campi_dati .summary_value {
    display: initial;
    width: 100%;
    border: 0
}

.payment-options-box .campi_dati .choose-gateway.selected_gateway,.payment-options-box .campi_dati .choose-payment.selected_payment {
    background: var(--bg_riepilogo_mobile_accordion);
    box-shadow: var(--box_shadow);
    transition: all .5s ease 0s;
    border: 0
}

.payment-options-box .campi_dati .summary_value_payment_info {
    position: relative;
    background: var(--light_bg);
    margin-top: 10px
}

.payment-options-box .campi_dati .summary_value_payment_info:before {
    content: "";
    display: block;
    height: 18px;
    width: 18px;
    border-radius: 20px;
    background: #fff;
    border: 1px solid var(--border_color);
    position: absolute;
    top: calc(50% - 9px);
    left: 11px
}

.payment-options-box .campi_dati .summary_value_payment_info.selected_payment:after,.payment-options-box .campi_dati .summary_value_payment_info:hover:after {
    content: "";
    display: block;
    height: 8px;
    width: 8px;
    border-radius: 20px;
    background: var(--texts_color);
    position: absolute;
    top: calc(50% - 3px);
    left: 17px
}

.payment-options-box .campi_dati .summary_value_payment_info.choose-gateway {
    background: var(--light_bg)!important;
    padding-bottom: 0;
    padding-top: 0;
    display: block
}

.payment-options-box .campi_dati .summary_value_payment_info.choose-gateway {
    background: var(--light_bg)!important;
    padding-bottom: 0;
    padding-top: 0;
    display: block
}

.summary_value.summary_value_payment_info.choose-gateway.selected_gateway {
    background: var(--bg_riepilogo_mobile_accordion)!important;
    box-shadow: var(--box_shadow);
    transition: all .5s ease 0s;
    border: 0
}

.summary_value.summary_value_payment_info.choose-gateway.selected_gateway:after {
    content: "";
    display: block;
    height: 8px;
    width: 8px;
    border-radius: 20px;
    background: var(--texts_color);
    position: absolute;
    top: calc(50% - 3px);
    left: 17px
}

.contenitore_pulsanti {
    display: flex;
    justify-content: space-around;
    flex-wrap: nowrap;
    flex-direction: column;
    align-items: center;
    margin: 0
}

.button-icon,.button-label {
    display: inline-block;
    text-align: center
}

.campo.thanks-page .tariffe h2 .nome_camera {
    font-weight: 600;
    font-size: 18px
}

.campo.thanks-page .tariffe h2 .nome_camera {
    font-weight: 600;
    font-size: 18px
}

.campo.thanks-page .tariffe li:first-child {
    border-bottom: 0
}

.campo.thanks-page .tariffe h2 .nome_camera span {
    margin-left: 10px
}

.campo.thanks-page .tariffe h2 .nome_camera i {
    color: var(--texts_color);
    font-size: 15px;
    padding-right: 2px
}

.conferma_finale {
    margin-bottom: 10px
}

.conferma_finale span {
    display: block;
    line-height: 20px;
    font-size: var(--text_size)
}

.conferma_finale span.valore {
    font-size: var(--descrition_text);
    font-weight: 700
}

.contenitore_pulsanti i {
    font-size: 16px;
    display: inline-block
}

#pulsante_add_services a,#pulsante_pkpass_download a,.pulsante_stampa_conferma a {
    padding: 15px;
    font-size: 1.2em;
    border-radius: 50px
}

#thanks_page .box_riepi {
    float: none
}

#thanks_page .box_riepi .riga:first-child .label {
    display: table-cell
}

#thanks_page .box_riepi .riga:first-child .risultato {
    text-align: right;
    font-weight: 700
}

.box_riepi .riga i {
    line-height: inherit
}

#thanks_page .seleziona_camera h2 {
    font-weight: 700
}

#thanks_page .riga.definitivo.accordion.accordion-close {
    height: auto;
    line-height: 18px;
    margin: 10px 0 0;
    padding: 15px 25px 10px;
    pointer-events: none;
    background: var(--light_bg);
    display: inline-block
}

#thanks_page .riga.definitivo.accordion.accordion-close .label {
    display: block;
    text-transform: capitalize;
    padding: 0
}

#thanks_page .riga.definitivo.accordion.accordion-open {
    background: 0 0
}

#thanks_page .riga.definitivo.accordion.accordion-open .label {
    display: block;
    text-transform: capitalize;
    font-weight: 700;
    padding: 5px 0 0
}

#thanks_page .riga.definitivo.accordion.accordion-close .risultato {
    display: none
}

.box_riepi .riga .dettaglio_condizioni {
    border: 0;
    display: table!important;
    padding: 5px 0 0 0;
    float: none
}

.box_riepi .riga .dettaglio_condizioni .label {
    display: block!important;
    padding: 0!important
}

#thanks_page .blocco_camera .blocco_camera-title.aa {
    margin: 0 auto 10px;
    background: var(--light_bg_hover);
    text-align: center;
    padding: 15px 25px;
    display: block
}

#thanks_page .blocco_camera .blocco_camera-title.aa .dx {
    padding-left: 10px
}

.box_riepi .riga .dettaglio_condizioni .risultato {
    text-align: right;
    padding: 0
}

.box_prezzo .riga {
    border-bottom: none
}

.conferma_inviata_msg {
    background-color: var(--light_bg);
    color: var(--texts_color);
    margin-top: 15px
}

.conferma_inviata_msg strong {
    color: var(--link_color)
}

#thanks_page .box_riepi .riga.condizioni {
    display: block!important
}

#thanks_page #box_dx {
    background-color: var(--box_background);
    color: var(--texts_color);
    border-radius: var(--border_radius_box);
    box-shadow: var(--box_shadow)
}

.thanks-top-title {
    text-align: center;
    padding: 25px 25px 10px
}

.thanks-top-title h2 {
    color: var(--buttons_bg);
    font-size: var(--title_size);
    margin: 10px;
    text-align: center
}

.rounded-icon {
    border-radius: 50%;
    width: min-content;
    margin: auto;
    background: var(--bg_riepilogo_mobile_accordion);
    padding: 8px
}

.rounded-icon i {
    border-radius: 50%;
    color: var(--buttons_text);
    background: var(--buttons_bg);
    font-size: 22px;
    padding: 9px;
    display: block;
    width: 41px
}

#box-prenotazioni {
    padding: 0
}

.riepilogo_prenotazione {
    display: flex;
    flex-wrap: wrap;
    border-top-left-radius: var(--border_radius_box);
    border-top-right-radius: var(--border_radius_box);
    justify-content: space-between;
    overflow: hidden
}

.riepilogo_prenotazione h2 {
    width: 100%;
    text-align: center;
    color: var(--texts_color);
    background: var(--default_light_bg);
    margin: 0;
    padding: 15px
}

.colonna_riepilogo {
    padding: 20px;
    background: var(--light_bg)
}

#thanks_page .blocco_camera .blocco_camera-title.aa {
    margin: 0 0 15px
}

#thanks_page .griglia_blocco {
    padding: 0 25px;
    display: flex
}

.colonna1 {
    width: 45%
}

.colonna2 {
    display: flex
}

.colonna_riepilogo.colonnaDx {
    width: 45%
}

.colonna_riepilogo.colonnasx {
    width: 55%
}

#thanks_page .blocco_camera .desc_camera {
    padding: 5px 0 0
}

#thanks_page .box_riepi .riga.prezzi {
    border-bottom: 1px solid var(--border_color);
    padding-bottom: 10px
}

#thanks_page .box_riepi .riga.prezzi.definitivo {
    border-bottom: 0;
    padding-bottom: 0
}

.colonna_riepilogo.colonnaDx,.colonna_riepilogo.colonnasx {
    margin: 0 0 0 20px
}

.riga.servizi .label {
    font-weight: 700;
    margin-bottom: 2px
}

#thanks_page .riga.servizi .label .date {
    font-weight: 400
}

.box_contenitore_riepilogo {
    display: flex;
    background: var(--light_bg);
    margin: 10px 25px 20px;
    flex-direction: row;
    justify-content: space-between;
    align-items: center
}

.conferma_inviata_msg {
    background-color: transparent;
    color: var(--texts_color);
    margin-top: 0;
    text-align: left;
    padding: 0 25px
}

#thanks_page .box_prezzo {
    background: var(--buttons_bg);
    padding: 10px 20px;
    float: none;
    display: flex;
    border-bottom-left-radius: var(--border_radius_box);
    border-bottom-right-radius: var(--border_radius_box)
}

#pulsante_add_services,#pulsante_pkpass_download,.pulsante_stampa_conferma {
    display: block;
    width: 100%;
    text-align: right;
    padding: 5px 10px
}

#thanks_page .pulsante_nuova_ricerca {
    margin: 20px 0 0;
    text-align: right
}

.contenitore_pulsanti a,.contenitore_pulsanti button,a#nuova_ricerca {
    text-transform: initial;
    border: none;
    padding: 10px 25px;
    margin: 0 10px;
    font-size: var(--text_size);
    width: auto
}

.contenitore_pulsanti button i {
    font-size: 12px;
    vertical-align: middle;
    padding-right: 6px
}

.contenitore_pulsanti {
    width: auto;
    padding: 10px 0
}

#thanks_page .contenitore_pulsanti i {
    vertical-align: middle
}

#thanks_page .summary-gallery {
    width: auto
}

@media only screen and (max-width: 1200px) {
    .colonna1 {
        width:500px
    }

    .colonna2 {
        flex-direction: column;
        flex: 1;
        width: auto;
        padding-left: 20px;
        margin: 0
    }

    .colonna_riepilogo.colonnaDx,.colonna_riepilogo.colonnasx {
        margin: 0
    }

    .colonna_riepilogo.colonnasx {
        margin-top: 10px
    }

    .colonna2 .colonna_riepilogo {
        width: 100%!important
    }

    .conferma_inviata_msg {
        text-align: center;
        padding: 25px
    }
}

@media only screen and (max-width: 960px) {
    .colonna1,.colonna2 {
        width:50%
    }

    .griglia_blocco .box_riepi .riga.condizioni {
        padding: 0 25px 15px
    }
}

.fancybox-inner .unlocker h2 {
    background: var(--box_background)!important;
    color: initial;
    width: 100%;
    padding: 30px 10% 20px;
    margin: 0
}

.fancybox-inner .unlocker .table {
    padding: 0 40px 40px;
    text-align: center;
    font-size: var(--text_size);
    color: var(--texts_color);
    line-height: 22px
}

.table.riga-titoli {
    display: none
}

.unlocker .table label {
    width: 17%
}

.unlocker .row {
    position: relative
}

label.fade.colonna_calendar {
    width: 32%
}

.unlocker .privacy .text,.unlocker input[type=number],.unlocker input[type=text],.unlocker textarea {
    border: 1px solid var(--border_color);
    border-radius: var(--border_radius_buttons)
}

.unlocker .privacy .text {
    border: 1px solid var(--border_color);
    border-radius: 5px
}

.unlocker button {
    width: auto!important;
    padding-left: 20px;
    padding-right: 20px
}

.unlocker label {
    padding: 0 20px;
    box-sizing: border-box
}

form#theform_preventivo {
    padding: 0 30px;
    display: flex;
    flex-direction: column
}

.titoli-prev {
    padding: 10px 15px 5px;
    display: block;
    text-transform: uppercase;
    font-weight: 500
}

div#preventivo_eta_bambino {
    display: flex
}

#theform_preventivo .table {
    padding: 0
}

#theform_preventivo .table label {
    padding: 0 10px 0 0
}

#theform_preventivo .table label:last-of-type {
    padding: 0 10px
}

#theform_preventivo .row label {
    padding: 0;
    margin: 0
}

textarea#prev_note {
    border-radius: 5px
}

#theform_preventivo .table:has(.colonna_calendar) {
    padding: 15px;
    background: var(--light_bg)!important
}

#theform_preventivo .cont-dati-personali {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap
}

#theform_preventivo .cont-dati-personali .row {
    width: 49%
}

.unlocker #theform_preventivo .privacy {
    background: var(--light_bg)!important;
    margin: 0;
    padding: 5px 20px 20px!important;
    border: 0
}

.unlocker #theform_preventivo .privacy.title {
    padding: 20px 20px 5px!important;
    text-transform: uppercase;
    position: relative
}

.unlocker #theform_preventivo .privacy .text {
    border: 0;
    padding: 0
}

#theform_preventivo .blocco_concludi {
    margin-bottom: 30px
}

.unlocker button {
    font-size: var(--text_size)
}

@media only screen and (max-width: 680px) {
    .unlocker .table label {
        width:50%
    }

    label.fade.colonna_calendar {
        width: 100%
    }

    #theform_preventivo .cont-dati-personali .row {
        width: 100%
    }
}

.fancybox-inner .unlocker h2 {
    font-weight: 700;
    font-size: var(--title_size_rate);
    color: var(--texts_color)
}

.fancybox-lock .fancybox-overlay {
    overflow-y: initial!important
}

.fancybox-skin {
    background: var(--box_background)!important
}

.fancybox-skin #box_numero_ospiti {
    padding: 20px
}

#close_calendar a:after,#close_calendar a:before,#close_filters:after,#close_filters:before,.fancybox-skin a.fancybox-item.fancybox-close:after,.fancybox-skin a.fancybox-item.fancybox-close:before {
    content: "";
    background-color: var(--texts_color);
    display: block;
    height: 12px;
    width: 2px;
    position: absolute;
    left: 14px;
    top: 9px
}

#close_calendar a:after,#close_filters:after,.fancybox-skin a.fancybox-item.fancybox-close:after {
    rotate: 45deg
}

#close_calendar a:before,#close_filters:before,.fancybox-skin a.fancybox-item.fancybox-close:before {
    rotate: 135deg
}

#close_calendar a,#close_filters,.fancybox-skin .fancybox-close {
    position: absolute;
    top: 10px!important;
    right: 10px;
    width: 30px;
    height: 30px;
    cursor: pointer;
    z-index: 8040;
    display: block;
    text-align: center;
    line-height: 25px;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    background: rgba(255,255,255,.8);
    border-radius: 20px;
    font-size: 0
}

.fancybox-skin {
    padding: 0!important
}

#coupon ul li {
    float: none;
    width: 100%;
    border-top: 0;
    display: table;
    clear: both;
    padding: 10px 0
}

#coupon ul li {
    border-bottom: 1px solid var(--border_color)
}

#coupon ul li:last-child {
    border-bottom: 0
}

.contenitore_2 .cont_interno_2 {
    text-align: right
}

#coupon ul li a {
    margin: 5px 0 5px auto;
    width: auto;
    display: inline-block
}

.dettagli_camera .cont_desc_camera_top {
    padding-bottom: 0
}

.cont_camera_content {
    padding: 25px;
    display: flex;
    flex-direction: row
}

.text_camera {
    width: 50%;
    padding: 0;
    padding-right: 15px
}

.text_camera .text_camera_servizi {
    overflow-y: auto;
    max-height: 400px;
    margin-bottom: 2rem
}

.text_camera h2.rate-details-included-services {
    text-transform: uppercase;
    font-size: 12px;
    font-weight: 700;
    margin-top: 0
}

.text_camera .text_camera_servizi h2.rate-details-included-services {
    text-transform: uppercase;
    font-size: 12px;
    font-weight: 700;
    margin-top: 0
}

.cont_desc_camera_servizi {
    width: 50%
}

.cont_camera_content .text_camera h2 {
    text-transform: capitalize;
    font-size: 22px
}

.cont_camera_content .cont_desc_camera_servizi {
    margin-top: 0;
    border-top: 0;
    border-left: 1px solid var(--border_color);
    padding: 0 0 0 20px
}

.cont_camera_content .cont_desc_camera_servizi h2,.daily-rate-table-container h2.daily-rate-title {
    text-transform: uppercase;
    font-size: 12px;
    font-weight: 700;
    margin-top: 0
}

span.singolo-accessorio {
    padding: 0;
    margin-bottom: 10px;
    background: 0 0;
    border-radius: 0;
    font-size: 12px
}

.fancybox-outer span.singolo-accessorio {
    display: block
}

.cont_desc_camera_servizi p {
    margin-bottom: 0;
    columns: 2
}

.rate-details-popup .cont_desc_camera_servizi p {
    columns: 1!important
}

.rate-details-popup .cont_camera_content .cont_desc_camera_servizi h2:last-of-type {
    margin-top: 20px!important
}

.next1 {
    right: 15px;
    margin-top: -15px;
    width: 20px;
    line-height: 40px;
    height: 40px;
    background: 0 0;
    font-size: 20px
}

.next1,.prev1 {
    margin-top: -15px;
    width: 20px;
    line-height: 40px;
    height: 40px;
    background: 0 0;
    font-size: 20px
}

.next1 {
    right: 15px
}

.prev1 {
    left: 15px
}

.chiudi_gallery:hover,.next1:hover,.pause1:hover,.prev1:hover,.start1:hover {
    background: 0 0;
    color: var(--texts_color);
    border-radius: 50px
}

.fancybox-skin {
    border-radius: 0!important
}

.rate-details .rate-details-popup img.room-image {
    width: calc(100% + 30px)
}

.rate-details .rate-details-popup .foto {
    left: -30px;
    top: -10px;
    width: calc(100% + 30px);
    position: relative
}

.fancybox-inner .rate-details .dettagli_camera {
    margin: 30px
}

.fancybox-inner .rate-details-popup h2 {
    font-weight: 700
}

span.singolo-accessorio img {
    height: 14px;
    width: auto
}

.gallery_prodotto {
    float: none;
    width: 100%!important
}

#social h3 {
    height: 50px;
    line-height: 50px
}

#social ul {
    list-style: none;
    font-size: 1.2em;
    display: inline-block;
    margin: 0 auto;
    text-align: center;
    width: 100%;
    height: auto;
    padding: 0
}

#social ul li {
    float: none;
    width: 32%;
    height: auto;
    box-sizing: border-box;
    margin-right: 2%;
    display: inline-block;
    padding: 0
}

#social ul li:last-child {
    margin-right: 0;
    display: none
}

#richiesta_pulsante_cerca button,.dati_personali button {
    border-radius: var(--border_radius_buttons);
    background: var(--buttons_bg)
}

#carrello_mobile {
    background: var(--buttons_bg)!important;
    padding: 0;
    border: none
}

#header_mobile_bottom {
    display: none
}

#header_mobile_bottom {
    position: fixed;
    bottom: -100vh;
    width: 100%;
    z-index: 1001;
    background: var(--bg_riepilogo_mobile);
    padding: 20px 20px 70px;
    box-sizing: border-box;
    display: block;
    box-shadow: none;
    overflow-y: auto;
    max-height: 94vh;
    margin-bottom: -60px
}

#summary_page #header_mobile_bottom .blocco_camera:last-child {
    padding-bottom: 40px
}

@media only screen and (max-width: 960px) {
    #carrello_mobile,#header-mobile-riepilogo,div#riepilogo-mobile {
        display:none
    }

    .riga.tit_camera {
        font-size: 16px
    }

    #summary_page .riga.definitivo.accordion.accordion-close,#summary_page .riga.definitivo.accordion.accordion-open {
        background: var(--bg_riepilogo_mobile_accordion);
        border-top: 1px solid #eee;
        height: auto;
        line-height: 20px;
        margin: 10px 0 0;
        padding: 6px 10px;
        pointer-events: auto;
        color: var(--texts_color)
    }

    #summary_page .riga.definitivo.accordion.accordion-open .risultato {
        padding: 0 5px
    }

    #summary_page .riga.definitivo.accordion.accordion-close .risultato {
        display: initial
    }

    #summary_page .riga.condizioni.metodo_pagamento,.box_riepi .riga.condizioni {
        display: none;
        padding: 15px 5px
    }

    #summary_page .box_prezzo .riga.riga_totali {
        padding: 0
    }
}

@media only screen and (max-width: 400px) {
    #carrello_mobile .container .sx .riga_doppia {
        font-size:1em
    }
}

.fancybox-inner #services_details {
    padding: 20px
}

.fancybox-inner #services_details .foto {
    position: relative;
    margin: -20px -20px 20px;
    width: initial;
    height: auto;
    float: none
}

.fancybox-inner #services_details .foto img {
    width: 100%
}

.fancybox-inner #services_details .fotoimg .room-image {
    max-width: 240px
}

.fancybox-inner #a_soluzioni_preventivo_mail {
    margin: 0 auto
}

.fancybox-inner div#message-recovery-strategy-ask {
    padding: 30px 30px 15px;
    font-size: var(--title_size_rate);
    color: var(--texts_color);
    font-weight: 700;
    text-transform: none;
    margin: 0 auto;
    max-height: 100%
}

form#theform_richiesta_email {
    padding: 10px 30px 0
}

form#theform_richiesta_email .unlocker .privacy {
    padding: 0!important
}

form#theform_richiesta_email label {
    padding: 0;
    margin-bottom: 10px;
    position: relative
}

.fancybox-wrap:has(#unlocker) {
    max-width: 500px
}

#unlocker {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 0 30px
}

#unlocker label {
    padding: 0;
    box-sizing: border-box
}

#unlocker .blocco {
    float: none;
    width: 100%;
    text-align: center;
    padding: 10px 0 0 0
}

#unlocker .blocco input {
    padding: 12px 15px;
    border-radius: 5px;
    border: 1px solid var(--border_color);
    border-radius: var(--border_radius_buttons);
    min-width: 230px
}

#unlocker button {
    border-radius: var(--border_radius_buttons)!important;
    background-color: var(--buttons_bg)!important;
    font-size: var(--text_size);
    padding-left: 20px;
    padding-right: 20px
}

#unlocker #social {
    background: var(--light_bg);
    padding-bottom: 20px;
    margin: 0;
    width: auto
}

.unlocker .blocco_account li {
    width: 100%
}

.unlocker.blocco_account li a span {
    text-decoration: underline
}

p.secret_deal {
    color: #ed9803!important;
    font-weight: 700;
    background: rgba(237,152,3,.05)!important;
    border-radius: 5px;
    border: 1px solid #ed9803!important;
    padding: 8px 20px!important
}

.blocco_tipo:has(.secret_deal) .select_room {
    background: #ed9803!important
}

form#theform_richiesta_email {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 10px 30px 0
}

#theform_richiesta_email .privacy {
    background: var(--light_bg);
    margin: 0
}

#theform_richiesta_email .privacy.title {
    padding: 20px 20px 10px!important;
    margin-top: 20px;
    position: relative
}

#theform_richiesta_email .privacy.text {
    float: left;
    width: 100%;
    height: 7.5em;
    overflow: auto;
    box-sizing: border-box;
    padding: 5px 20px 20px
}

#theform_richiesta_email label.fade.lunga {
    background: var(--light_bg)!important;
    margin: 0;
    padding: 15px 20px 20px!important;
    border: 0
}

.poshy_tip {
    max-width: 300px
}

#popup-recovery-strategy {
    position: relative;
    display: flex;
    flex-flow: row;
    margin: 0;
    padding: 0;
    height: inherit;
    width: 100%
}

#popup-recovery-strategy .img_recovery {
    position: relative;
    display: flex;
    flex-flow: column;
    margin: 0;
    padding: 0;
    width: 50%
}

#popup-recovery-strategy .img_recovery img {
    position: relative;
    padding: 0;
    height: 100%;
    object-fit: cover
}

#popup-recovery-strategy .cont_message-recovery-strategy {
    position: relative;
    display: flex;
    flex-flow: column;
    margin: 0;
    padding: 0;
    height: 100%;
    max-height: inherit;
    text-align: center;
    width: 50%
}

.fancybox-inner #popup-recovery-strategy .cont_message-recovery-strategy #message-recovery-strategy-ask {
    padding: 30px 20px 0 10px;
    margin: 0
}

#popup-recovery-strategy .cont_message-recovery-strategy .blocco_concludi {
    margin: 20px 0 30px;
    float: none
}

.dialog-popup {
    padding: 30px
}

.fancybox-wrap.fancybox-desktop.fancybox-type-html.fancybox-opened img {
    width: 100%
}

footer {
    z-index: 0;
    margin-top: auto;
    padding-top: 20px
}

footer #default-footer {
    padding: 20px 0;
    background: var(--footer_background);
    color: var(--footer_text);
    box-shadow: none
}

footer #default-footer h1 {
    padding: 0 0 5px 0;
    text-transform: uppercase
}

footer #default-footer h1 .stelle i {
    padding: 0
}

.footer-link a {
    color: var(--footer_text);
    text-decoration: underline
}

.footer-link a i {
    font-weight: 300
}

footer #default-footer .fa {
    font-size: 12px!important
}

footer #default-footer .container .left-col,footer #default-footer .container .right-col {
    text-align: left
}

.contatti-footer {
    display: flex
}

.powered-by {
    text-align: right;
    margin-left: auto;
    background: var(--footer_background);
    padding: 2px
}

.powered-by img {
    width: 110px
}

footer .stelle {
    display: inline-block;
    font-size: 12px;
    vertical-align: text-top
}

@media screen and (max-width: 960px) {
    footer {
        position:relative;
        bottom: 0
    }

    footer #default-footer {
        padding-bottom: 60px
    }

    .powered-by,footer #default-footer .container .left-col,footer #default-footer .container .right-col {
        float: none;
        width: 100%;
        text-align: center
    }

    .contatti-footer {
        display: flex;
        flex-direction: column;
        align-items: center
    }

    .contatti-footer>div {
        text-align: center!important
    }
}

body.group-page #wrapper {
    margin-top: 0!important
}

#hotel-list .hotel-results-table {
    width: 100%;
    padding: 0 20px;
    border-top: 1px solid var(--border_color)
}

body #hotel-list .hotel-results-table .rate-row {
    display: flex;
    width: 100%;
    margin: 0;
    justify-content: space-between;
    border-bottom: 1px solid var(--border_color)
}

body #hotel-list .hotel-results-table .rate-row {
    padding: 0
}

body.group-page .hotel-results-table .rate-row .price-room,body.group-page .hotel-results-table .rate-row .room-col,body.group-page .hotel-results-table .rate-row .room_occupancy_label {
    border-bottom: 0;
    padding: 0
}

body.group-page .hotel-results-table .rate-row .price-room,body.group-page .hotel-results-table .rate-row .room_occupancy_label {
    display: block;
    text-align: right;
    border-bottom: 0;
    width: auto
}

body.group-page .hotel-results-table .rate-row .price-room {
    padding-top: 2px
}

body.group-page .hotel-results-table .rate-row .room_occupancy_label {
    padding-bottom: 2px
}

body.group-page .hotel-results-table .rate-row .right-col-group,body.group-page .hotel-results-table .rate-row .room-col {
    padding: 10px 0
}

body.group-page .rate-row.piu-risultati {
    justify-content: center;
    border-bottom: 0!important
}

.rate-row.piu-risultati a {
    border-radius: 50px
}

body.group-page .hotel-results-table .rate-row .more-results {
    text-align: center;
    padding: 0;
    background: 0 0;
    border-radius: unset;
    margin: 10px 0;
    border: 0;
    width: 100%
}

span.nome_camera.nome_struttura {
    display: block
}

a span.stars {
    float: none
}

.Struttura .col-img.twocol {
    padding: 0;
    float: left;
    width: 345px;
    height: 290px
}

.Struttura .col-hotel {
    float: left;
    width: calc(100% - 345px);
    padding: 15px 20px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    position: relative
}

div.info-bar {
    width: calc(100% - 345px);
    text-align: center;
    z-index: 1
}

.campo .col-img.twocol img {
    float: none;
    height: 100%;
    min-width: 100%;
    left: 50%;
    position: relative;
    transform: translateX(-50%);
    width: auto;
    background-size: cover!important
}

.info-bar {
    display: table;
    width: 100%;
    background: 0 0;
    margin-top: -60px!important
}

div#close_calendar {
    display: none
}

div#box_geo_areas {
    background: var(--light_bg)
}

body.group-page #box_geo_areas .select_gruppo .fal,body.group-page .fa,body.group-page .fas {
    color: var(--icon_color)
}

body.group-page #box_geo_areas .select_gruppo select {
    background: var(--box_background)
}

body.group-page #quick_reserve .box_contenuto:first-child {
    padding-top: 20px;
    position: relative
}

body.group-page .score_box {
    display: flex;
    float: left;
    vertical-align: middle;
    position: absolute;
    top: 230px;
    width: 300px;
    text-align: center;
    justify-content: flex-start;
    align-items: center;
    background: var(--bg_persuasivi);
    color: var(--txt_persuasivi);
    left: 0
}

body.group-page .score_val {
    padding: 10px 10px 10px 30px
}

body.group-page .score_val {
    color: var(--txt_persuasivi)
}

span.stars i {
    font-size: 11px;
    padding: 0;
    line-height: initial
}

body.group-page .link-mappa a:before {
    display: none
}

.link-mappa a {
    text-decoration: underline;
    color: var(--link_color)
}

.no_soluzioni_tabella.box-hotel.box-result {
    text-align: center;
    width: 100%;
    padding: 20px;
    margin: 20px;
    background: var(--bg_persuasivi);
    color: var(--txt_persuasivi)
}

body.group-page .no_soluzioni_group {
    background: var(--icon_color);
    margin: auto;
    float: none;
    border-radius: 5px;
    max-width: 90%
}

body.group-page .col-hotel .min-price {
    border-top: 0;
    margin-top: auto;
    text-align: left;
    color: var(--buttons_bg)
}

body.group-page .col-hotel .min-price span.prezzo_medio,body.group-page .col-hotel .min-price span.price,body.group-page .col-hotel .min-price span.valuta {
    color: var(--buttons_bg)
}

body.group-page #blocco_scheda {
    float: none
}

div#conteiner-order-by {
    margin-top: 10px;
    text-align: left;
    padding: 0;
    background: var(--box_background)
}

div#conteiner-order-by span {
    vertical-align: middle;
    padding: 0;
    border-radius: 0;
    text-align: center;
    position: relative;
    display: inline-block;
    line-height: initial;
    border: 0
}

div#conteiner-order-by {
    line-height: 40px;
    padding: 0 20px;
    background: var(--light_bg);
    font-size: 14px
}

div#conteiner-order-by>span {
    vertical-align: middle;
    padding: 5px 14px 5px 20px;
    border-radius: 50px;
    text-align: center;
    position: relative;
    display: inline-block;
    line-height: 23px;
    border: 1px solid var(--border_color);
    background: var(--box_background);
    margin: 5px
}

div#conteiner-order-by {
    padding: 5px 15px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap
}

div#conteiner-order-by a {
    display: flex;
    align-items: center
}

div#conteiner-order-by .fa,div#conteiner-order-by .fa-regular {
    font-size: 18px;
    margin: 0 0 0 10px;
    position: relative!important
}

#box-risultati #conteiner-order-by span span {
    right: 5px;
    left: auto
}

div.titolo_filtro {
    font-size: 15px;
    font-weight: 700;
    padding: 0 10px
}

div#conteiner-order-by span:first-child {
    padding-left: 0;
    margin-right: auto
}

div#conteiner-order-by span:first-child .fa-regular {
    margin: 0
}

div#mappa_gruppo {
    padding: 0
}

div#left-side-map {
    height: 250px!important
}

a.aggcalendario.button2024.button_radius {
    text-align: center
}

body.group-page .stile_carrello {
    background: 0 0;
    box-shadow: none
}

#calendar_qr #quick_reserve,body.group-page #mappa_gruppo,body.group-page #riepilogo_viaggio,body.group-page #selects_gruppo,body.group-page.group-prima-pagina #quick_reserve {
    -webkit-box-shadow: 0 3px 6px 0 rgba(0,0,0,.16);
    -moz-box-shadow: 0 3px 6px 0 rgba(0,0,0,.16);
    -o-box-shadow: 0 3px 6px 0 rgba(0,0,0,.16);
    box-shadow: 0 3px 6px 0 rgba(0,0,0,.16);
    background: var(--box_background);
    margin-bottom: 15px
}

body.group-page #riepilogo_viaggio {
    background: var(--default_light_bg)
}

body.group-page #selects_gruppo {
    margin-bottom: 0
}

.group-page #cancella_modifica_top {
    align-content: flex-end
}

a#close_filters {
    display: none!important
}

.mostra_filtri a#close_filters {
    display: block!important
}

.group-page div#testo_no_soluzioni {
    margin: 0;
    background: 0 0
}

.no_soluzioni_tabella.box-hotel.box-result {
    padding: 0
}

@media only screen and (min-width: 1140px) {
    .col-hotel .map-hotel {
        height:290px!important;
        margin: 0;
        position: absolute!important;
        left: -346px;
        top: 0;
        width: 346px
    }
}

@media only screen and (min-width: 960px) and (max-width:1140px) {
    .col-hotel .map-hotel {
        height:290px!important;
        margin: 0;
        position: absolute!important;
        left: 0;
        top: -290px;
        width: 100%
    }
}

@media only screen and (min-width: 680px) and (max-width:960px) {
    .col-hotel .map-hotel {
        height:290px!important;
        margin: 0;
        position: absolute!important;
        left: -345px;
        top: 0;
        width: 346px
    }
}

@media only screen and (max-width: 680px) {
    .col-hotel .map-hotel {
        height:290px!important;
        margin: 0;
        position: absolute!important;
        left: 0;
        top: -290px;
        width: 100%
    }
}

@media only screen and (max-width: 500px) {
    .col-hotel .map-hotel {
        height:230px!important;
        margin: 0;
        position: absolute!important;
        left: 0;
        top: -230px;
        width: 100%
    }
}

@media only screen and (max-width: 450px) {
    .col-hotel .map-hotel {
        height:250px!important;
        margin: 0;
        position: absolute!important;
        left: 0;
        top: -250px;
        width: 100%
    }
}

@media only screen and (min-width: 960px) {
    body.group-page #sx {
        position:relative;
        top: 0;
        max-height: initial;
        overflow-y: unset;
        overflow-x: unset;
        margin-bottom: 0
    }

    #apri_filtri_button {
        display: none
    }
}

@media only screen and (max-width: 960px) {
    #header_mobile {
        background:var(--dark_background)!important
    }

    .carrello .contenuto .box_contenuto .riga .pulsanti a.aggcalendario.button2024.button_radius {
        text-align: center
    }

    .group-page #sx {
        display: flex
    }

    body.group-page .carrello {
        padding: 0
    }

    body.group-page #box_carrello,body.group-page #sx,body.group-page .carrello {
        float: none;
        width: 100%
    }

    body.group-page .riga h2 {
        text-align: left
    }

    body.group-page .viaggio .eti {
        float: none;
        width: auto;
        line-height: 20px;
        margin: 0 20px 0 0;
        border-bottom: 0
    }

    body.group-page .viaggio {
        justify-content: flex-start;
        margin-bottom: 0
    }

    body.group-page .cal .freccia {
        display: inline-block
    }

    body.group-page .viaggio .cal {
        width: auto;
        margin: 0 20px 0 0;
        padding-bottom: 0
    }

    body.group-page #torna_ricerca {
        width: auto
    }

    body.group-page #riepilogo_viaggio .riga .pulsanti a {
        width: auto;
        padding: 10px;
        line-height: normal;
        position: absolute;
        right: 20px;
        top: 20px
    }

    body.group-page #box_carrello {
        margin: 0
    }

    .riga.apri_filtri {
        padding: 15px 20px
    }

    body.group-page #lista_filtri_gruppo {
        display: none
    }

    body.group-page .mostra_filtri {
        display: block!important;
        position: fixed;
        height: 90vh;
        top: 5vh;
        z-index: 1000;
        width: 90vw;
        box-sizing: border-box;
        left: 5vw;
        overflow: auto
    }

    body.group-page .mostra_filtri:before {
        content: "";
        display: block;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(0,0,0,.5);
        z-index: -1
    }

    div#apri_filtri_button {
        line-height: 22px;
        font-size: 16px;
        padding: 10px 30px;
        width: 100%;
        margin: auto;
        text-align: center
    }
}

@media screen and (min-width: 960px) and (max-width:1140px) {
    .Struttura .col-img.twocol {
        width:100%;
        height: 290px
    }

    .Struttura .col-hotel,div.info-bar {
        width: 100%
    }

    .info-bar {
        margin-top: 0!important;
        margin-bottom: 10px
    }
}

@media only screen and (min-width: 680px) and (max-width:800px) {
    .Struttura .col-hotel {
        display:table
    }
}

@media only screen and (max-width: 680px) {
    .Struttura .col-img.twocol {
        width:100%;
        height: 290px
    }

    .Struttura .col-hotel,div.info-bar {
        width: 100%
    }

    .info-bar {
        margin-top: 0!important;
        margin-bottom: 10px
    }

    body.group-page .carrello .contenuto {
        max-width: none
    }

    body.group-page .viaggio .cal {
        width: 100%
    }

    body.group-page #mappa_gruppo {
        display: none!important
    }

    body.group-page div#calendar_qr {
        position: fixed;
        top: 80px;
        z-index: 1001;
        margin: 10px
    }

    body.group-page #calendar_qr div#quick_reserve {
        position: relative;
        padding-top: 0
    }

    body.group-page .col-hotel .min-price {
        text-align: right
    }
}

@media only screen and (max-width: 500px) {
    body.group-page .score_box {
        top:200px;
        width: 100%
    }

    body.group-page .col-img img {
        height: 230px!important
    }
}

@media only screen and (max-width: 450px) {
    .Struttura .col-img.twocol {
        height:250px
    }
}

body.group-page .mostra_filtri {
    display: block!important
}

* {
    box-sizing: border-box
}

html {
    height: 100%
}

body {
    margin: 0;
    box-sizing: border-box;
    width: 100%;
    background: rgba(255,255,255,.2);
    display: flex;
    flex-direction: column;
    min-height: 100%
}

.sfondo {
    position: fixed;
    width: 100%;
    height: 100%;
    z-index: -10;
    background: 0 0;
    background-size: cover;
    backdrop-filter: blur(3px);
    display: block!important
}

body div#main_container {
    width: 100%;
    display: flex;
    flex-direction: column
}

.container {
    width: 100%;
    margin: 0 auto;
    padding-left: 10px;
    padding-right: 10px
}

.container_tipo {
    float: none;
    width: 100%;
    padding: 0;
    background: 0 0;
    margin: 0;
    box-sizing: border-box
}

.blocked {
    opacity: 75%;
    pointer-events: none
}

a:hover {
    color: var(--buttons_bg_hover)
}

#top {
    display: flex;
    border-radius: var(--border_radius_box);
    box-shadow: none!important;
    z-index: 201;
    position: relative;
    flex-direction: column-reverse;
    margin-bottom: 10px
}

#top #box_carrello {
    border-radius: var(--border_radius_box);
    width: 100%;
    float: none;
    box-shadow: var(--box_shadow)
}

#calendar,#container_calendar,.seleziona_giorni,.seleziona_giorni .checkin {
    float: none;
    width: 100%;
    max-width: 100%
}

#container_calendar.disabled:before {
    content: '';
    display: block;
    background-color: #ffffff87;
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 10
}

i {
    padding: 0 4px 0 0
}

.col-hotel h2 a,.col-hotel h2 a:hover,.colore_titolo,.seleziona_giorni .checkin span.sx span,a.aggcamera {
    color: var(--buttons_bg)!important
}

#coupon h2,.upselling .text_upgrade_camera {
    color: var(--texts_color)
}

.upselling .text_upgrade_camera {
    font-size: var(--sub_title_size);
    margin-top: 10px;
    text-align: center;
    padding: 10px;
    font-weight: 700
}

.riepilogo-camera.upselling .riga .pulsanti {
    float: none;
    margin: 0 auto 10px;
    text-align: right;
    padding-bottom: 15px;
    border-bottom: 1px solid var(--border_color)
}

.riepilogo-camera.upselling .riga.upgrade .pulsanti button {
    text-align: right;
    background: #fff!important;
    float: none;
    color: var(--calendar);
    border: 1px solid var(--border_color);
    margin-right: 0;
    padding: 8px 20px
}

.riga.prezzi.upgrade_box_prezzi {
    border: none
}

.box_riepi .riga.tit_camera .multi_riga,.box_riepi .riga.tit_camera .risultato,.carrello .contenuto .box_contenuto .riga .pulsanti a:hover {
    color: var(--buttons_bg_hover)
}

.carrello .contenuto .box_contenuto .riga .pulsanti a:hover {
    background-color: var(--box_background)!important
}

.box_gallery.gallery i,.chiudi_gallery i,.tariffa .price {
    color: var(--buttons_text)!important
}

.calendar_row .day_box.selectedDay {
    background: var(--base_calendario)!important
}

.shadow_box {
    -webkit-box-shadow: 0 3px 6px 0 rgba(0,0,0,.16);
    -moz-box-shadow: 0 3px 6px 0 rgba(0,0,0,.16);
    -o-box-shadow: 0 3px 6px 0 rgba(0,0,0,.16);
    box-shadow: 0 3px 6px 0 rgba(0,0,0,.16);
    background: var(--box_background)
}

#form_salvataggio_prenotazione .titolo_tabella,.campi_dati h2,.seleziona_camera h2 {
    background: var(--box_background);
    color: var(--texts_color);
    font-weight: 700
}

.select_lang .box_lingue .elenco_lingue li a,.select_valute .box_valute .elenco_valute li a {
    background: var(--box_background)!important
}

.select_lang .box_lingue .elenco_lingue li a {
    width: auto!important;
    border: none
}

.select_lang .box_lingue .elenco_lingue,.select_valute .box_valute .elenco_valute {
    padding: 8px
}

.select_valute .box_valute .elenco_valute li a {
    border: none
}

.caratteristiche_camera {
    color: var(--icon_color)
}

#packages_offers a,.button2024 {
    display: table;
    padding: 0 25px;
    margin: 0 15px
}

#packages_offers a {
    font-size: 1.1em;
    width: max-content;
    line-height: 40px
}

#calcolo_finale .riga .verifica.attivo,#link_pacchetti,#packages_offers a,#pag_pacchetti .promo,#pulsante_add_services a,#pulsante_pkpass_download a,#richiesta_pulsante_cerca button,#thanks_page a#nuova_ricerca,#torna_risultati_ricerca,#torna_tariffe_pacchetti,.button2024,.contenitore_pulsanti button,.dati_personali button,.navigation a.animsition-link,.nessun_servizio .continua,.pulsante_stampa_conferma a,.seleziona_camera .continua {
    background-color: var(--buttons_bg)!important;
    color: var(--buttons_text);
    text-transform: initial;
    border: none
}

#box_dx .seleziona_camera .action .navigation {
    font-size: var(--buttons_bg)!important
}

#calcolo_finale .riga .verifica.attivo:hover,#link_pacchetti:hover,#packages_offers a:hover,#pag_pacchetti .promo:hover,#pulsante_add_services a:hover,#pulsante_pkpass_download a:hover,#richiesta_pulsante_cerca button:hover,#thanks_page a#nuova_ricerca:hover,#torna_risultati_ricerca:hover,#torna_tariffe_pacchetti:hover,.button2024:hover,.contenitore_pulsanti button:hover,.dati_personali button:hover,.navigation a.animsition-link:hover,.nessun_servizio .continua:hover,.pulsante_stampa_conferma a:hover,.seleziona_camera .continua:hover,input.qtyminus:hover,input.qtyplus:hover {
    background-color: var(--buttons_bg_hover)!important;
    color: var(--buttons_text_hover)
}

#link_pacchetti,#packages_offers a,#pag_pacchetti .promo,#thanks_page a#nuova_ricerca,#torna_risultati_ricerca,#torna_tariffe_pacchetti,.button_radius,.contenitore_pulsanti button,.contentbox_upgrade button.buttonsstyles {
    border-radius: var(--border_radius_buttons)!important
}

#scheda_link a {
    color: var(--texts_color)
}

a#link-open-sheet {
    background: var(--default_light_bg)
}

ul.scheda_tabs li a {
    background: var(--default_light_bg)
}

#scheda_link a.spento:hover,.riga .inserisci_sconto:hover,input.qtyminus,input.qtyplus {
    background: var(--light_bg_hover)!important;
    color: var(--texts_color)
}

#form_salvataggio_prenotazione .titolo_tabella,.blocco_vantaggi h3,.campi_dati h2,.riepilogo_servizi,.tabs_nav_servizi li a {
    background: var(--box_background)!important;
    text-transform: none;
    text-align: left;
    padding: 20px 25px 0;
    line-height: 30px
}

.campi_dati.is-loading {
    background-color: transparent!important;
    box-shadow: none!important
}

.campi_dati.is-loading h2 {
    display: none
}

.campi_dati.is-loading #dati_personali {
    margin-top: 0!important
}

.blocco_vantaggi h3 {
    font-size: var(--sub_title_size);
    font-weight: 700
}

.chiudi_gallery:hover {
    color: var(--light_bg_hover)
}

#coupon ul li input,.dati_personali input[type=date],.dati_personali input[type=email],.dati_personali input[type=tel],.dati_personali input[type=text],.dati_personali select {
    border: 1px solid var(--border_color);
    border-radius: var(--border_radius_buttons)
}

#coupon ul li input.error,.dati_personali input[type=date].error,.dati_personali input[type=email].error,.dati_personali input[type=tel].error,.dati_personali input[type=text].error,.dati_personali select.error {
    border: 1px solid var(--txt_alert);
    background-color: var(--bg_alert)
}

.row.full:has(.error) {
    color: var(--txt_alert);
    padding: 5px 0;
    background-color: var(--bg_alert)
}

#summary_page .poshy_tip {
    background-color: var(--box_background)!important;
    padding: 15px 16px!important;
    color: var(--txt_alert);
    -webkit-box-shadow: var(--box_shadow);
    -moz-box-shadow: var(--box_shadow);
    box-shadow: var(--box_shadow);
    max-width: 40vw
}

.poshy_tip2 {
    background-color: var(--light_bg)!important;
    padding: 10px 15px!important;
    color: #000;
    z-index: 1!important;
    -webkit-box-shadow: var(--box_shadow);
    -moz-box-shadow: var(--box_shadow);
    box-shadow: var(--box_shadow);
    max-width: 300px
}

.poshy_tip2 .subtitle {
    padding: 0 0 15px;
    border-bottom: 1px solid var(--border_color)
}

.cont_giorno_tooltip {
    padding: 3px 0
}

.cont_giorno_tooltip:last-child {
    border: none!important
}

.cont_totale_tooltip {
    color: var(--buttons_bg_hover);
    padding: 3px 0;
    font-weight: 700
}

.dati_personali .privacy .text,.dati_personali .privacy.title,.dati_personali textarea {
    border: none;
    background: var(--light_bg)!important
}

.dati_personali .privacy.title {
    text-transform: uppercase;
    font-weight: 400
}

.box_gallery.gallery i,.chiudi_gallery i,span.lente i {
    padding: 0
}

.persuasive-message-rate .message:after,.persuasive-message-rate .message:before {
    background: 0 0
}

.campo .foto {
    width: 500px;
    height: 310px
}

.campo .foto .box {
    height: auto;
    width: 100%;
    display: block
}

#step .container,#wrapper .container {
    background: 0 0
}

i.fa-user.icon-bambino {
    font-size: 10px!important;
    margin-bottom: 0!important;
    vertical-align: baseline!important
}

#pag_pacchetto_singolo #box-risultati .accordion,#results_page section .accordion {
    min-height: inherit;
    background: 0 0
}

#pag_pacchetto_singolo #box-risultati .accordion .button_color.button2024.button_radius,#results_page section .accordion .button_color.button2024.button_radius {
    margin-top: -65px!important;
    background: 0 0
}

#pag_pacchetto_singolo #box-risultati .accordion .button_color.button2024.button_radius {
    display: none
}

.box_riepi.cancellation .error-box,.pos_error_message {
    text-align: center;
    padding: 20px 25px;
    background: var(--bg_alert);
    color: var(--txt_alert);
    font-size: 14px;
    border-radius: var(--border_radius_box);
    box-shadow: var(--box_shadow)
}

#box_contenuto_cod_pren_mod_qr .riga {
    text-align: center;
    padding: 15px 25px;
    background: var(--light_bg_hover);
    font-size: var(--sub_title_size)
}

#page_pos_error form {
    display: none
}

#page_pos_error #wrapper {
    margin-top: 0!important;
    float: none;
    height: 50vh
}

div#riga_pulsanti_cancellazione {
    display: flex;
    justify-content: center;
    margin-top: 20px!important
}

.modification-buttons {
    width: 20%;
    line-height: 40px;
    height: 40px
}

#cancellation_page .box_riepi .riga .label {
    display: table-cell
}

#cancellation_page input#codice_prenotazione {
    text-align: center;
    max-width: 340px;
    margin: auto;
    padding: 10px 20px;
    font-size: var(--button_text_size)
}

#verifica_prenotazione {
    font-size: var(--button_text_size)!important
}

.box_riepi.cancellation {
    padding: 20px;
    background: var(--bg_riepilogo_mobile);
    text-align: center;
    color: var(--texts_color);
    font-weight: 700;
    font-size: var(--text_size)
}

.box_riepi.cancellation:has(.error-box) {
    background: 0 0;
    padding: 0
}

#cancellation_page .box_riepi.cancellation {
    background: var(--box_background);
    text-align: left;
    font-weight: initial
}

.box_riepi.cancellation .riga {
    float: none
}

.box_riepi.modification {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    padding: 10px 20px 30px;
    justify-content: flex-start
}

.box_riepi.modification .riga {
    width: auto;
    float: none;
    border: 0;
    margin: 8px
}

.box_riepi.modification .riga a {
    border-radius: 50px;
    background: var(--light_bg);
    color: var(--texts_color);
    padding: 5px 15px
}

.box_riepi.modification .riga a i {
    background: 0 0
}

.box_riepi.modification .riga a:hover {
    background: var(--light_bg_hover);
    color: var(--texts_color)
}

.modification-buttons-row {
    text-align: center;
    margin-top: 10px;
    margin-bottom: 20px;
    float: left;
    width: 100%;
    display: flex;
    justify-content: center
}

#cancellation_page #camere {
    padding-top: 15px
}

#cancellation_page div#container_calendar {
    max-width: 500px;
    margin: 20px auto;
    clear: both;
    position: relative
}

#cancellation_page .modification-buttons-row {
    padding-bottom: 20px
}

#cancellation_page .campi_dati {
    border-radius: var(--border_radius_box);
    box-shadow: var(--box_shadow)
}

#cancellation_page .campi_dati h2 {
    text-align: center;
    font-size: var(--title_size)
}

#cancellation_page #social {
    background: 0 0
}

#cancellation_page #social h3 {
    text-align: center;
    padding: 10px 20px 10px;
    font-weight: 400;
    font-size: var(--text_size)
}

#cancellation_page #social .dati_personali {
    margin: 0
}

#cancellation_page #social .dati_personali .row.full {
    float: none;
    display: flex;
    flex-direction: column;
    text-align: center
}

#cancellation_page #social .dati_personali label {
    margin: 0 auto;
    float: none
}

#cancellation_page #social .dati_personali .row #verifica_prenotazione {
    margin-top: 20px;
    font-size: var(--text_size)!important
}

#summary_page #hotel-info-mobile {
    display: none
}

div#box-modifica-date {
    display: flex;
    flex-direction: column
}

.seleziona_giorni.seleziona_giorni_extended .checkin {
    border: 1px solid #ccc;
    border-radius: 20px;
    display: flex;
    align-content: center;
    align-items: center;
    justify-content: space-between
}

.seleziona_giorni.seleziona_giorni_extended .checkin span.sx {
    height: auto
}

.seleziona_giorni.seleziona_giorni_extended#seleziona_giorni {
    border: 0 solid #ccc;
    border-radius: 0
}

#step .container,#wrapper .container {
    display: flex;
    justify-content: space-between
}

#pag_pacchetto_singolo #wrapper .container,#results_page #wrapper .container,#services_page #wrapper .container,#summary_page #wrapper .container {
    flex-wrap: wrap
}

#box_pacchetti #pacchetti {
    display: flex;
    float: none
}

#sx_pacchetti {
    margin: 0 15px 0 0
}

.swiper-slide.gallery-swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover
}

.fancybox-wrap #quick_reserve .box_contenuto {
    width: 50%
}

.fancybox-wrap #quick_reserve .box_contenuto2,.fancybox-wrap #quick_reserve:has(#coupon)>.box_contenuto {
    width: 37%
}

.fancybox-wrap #quick_reserve:has(#coupon) .box_contenuto2 {
    width: 63%;
    display: flex
}

.fancybox-wrap #quick_reserve .box_contenuto:has(#coupon) {
    width: 40%
}

.fancybox-wrap #quick_reserve:has(#coupon) .box_contenuto:has(#container_calendar) {
    width: 60%
}

.dettagli_camera .cont_desc_camera_top {
    display: block!important
}

.fancybox-wrap #quick_reserve {
    display: flex;
    justify-content: center;
    width: 100%;
    flex-wrap: wrap
}

.fancybox-wrap #quick_reserve .title {
    width: 100%;
    padding: 20px;
    background: var(--bg_riepilogo_mobile_accordion);
    font-size: 18px;
    text-align: center
}

.fancybox-wrap:has(#quick_reserve) {
    width: 90%!important;
    max-width: 1180px!important
}

.fancybox-skin:has(#quick_reserve) {
    padding: 20px!important
}

.fancybox-wrap .box_contenuto {
    padding: 20px 10px!important;
    border: 0!important
}

.fancybox-wrap .box_contenuto h2 {
    font-size: var(--sub_title_size);
    font-weight: bolder
}

.fancybox-wrap .box_contenuto .riga:has(#container_calendar) {
    border-top: 0;
    padding-top: 0
}

.fancybox-inner #camere li .row_camera.bambini {
    padding-right: 0
}

.mobile-cart-item,.popup.cart-mobile-box {
    display: none
}

.quot_confirm .riepilogo_date {
    background: var(--light_bg)!important;
    padding: 10px 15px;
    margin-bottom: 10px;
    border-top: none!important
}

.quot_confirm .riga.checkin,.quot_confirm .riga.checkout,.quot_confirm .riga.notti {
    text-align: left;
    margin-bottom: 0!important
}

.quot_confirm .riepilogo_date .icon_riempi i {
    display: none
}

.quot_confirm .box_contenuto .riga h2 {
    background: var(--light_bg)!important;
    font-weight: 700
}

.foto_pacchetto .box_gallery {
    height: auto!important
}

div#container_pacchetti,div#dx_cancel_modify {
    width: 100%
}

@media screen and (min-width: 1200px) {
    .container {
        width:100%;
        max-width: 1200px;
        margin: 0 auto;
        padding: 0 12px
    }

    #wrapper .container {
        background: 0 0;
        padding: 10px
    }

    #step .container {
        background: 0 0;
        padding: 20px 10px
    }

    #wrapper .container {
        padding-top: 15px
    }

    #wrapper .container #top {
        width: 100%
    }

    #sx,#sx #box_carrello,#sx_pacchetti {
        width: 390px
    }

    #dx_cancel_modify,#pag_pacchetto_singolo #dx,#results_page #dx,#services_page #dx {
        max-width: 100%;
        width: 100%
    }

    #dx,#dx_pacchetti {
        float: none;
        width: 100%;
        max-width: 775px;
        margin: 0
    }

    #pag_pacchetto_singolo #dx,#results_page #box_carrello,#results_page #sx,#results_page #sx_pacchetti,#services_page #dx,#services_page #dx_pacchetti {
        width: 100%
    }

    .box {
        height: 100%!important;
        width: 100%!important
    }

    .box img {
        height: 100%!important;
        width: 100%!important
    }

    .campo .box img,.campo_servizi .foto img {
        height: 310px
    }

    .dettagli_camera .box img,.rate-details .box img {
        height: 515px
    }

    .campo_scheda .box img {
        height: 513px
    }

    .campo .tariffe {
        width: 425px
    }

    div#top.is-pinned #box_carrello #quick_reserve,div#top.is-pinned #box_carrello #riepilogo_viaggio {
        width: 1180px;
        margin-left: calc((100% - 1180px)/ 2)
    }
}

@media screen and (min-width: 960px) {
    .campo .tariffe {
        width:calc(100% - 500px)
    }

    .campo_scheda .box img {
        height: 513px
    }

    .accordion {
        margin: 0;
        padding: 0
    }
}

@media only screen and (min-width: 960px) {
    #sx #box_carrello,#sx_pacchetti #box_carrello {
        overflow-x:hidden;
        box-shadow: var(--box_shadow);
        border-radius: var(--border_radius_box);
        margin: 0 15px 0 0
    }

    #pag_pacchetto_singolo #dx,#results_page #box_carrello,#results_page #sx,#results_page #sx_pacchetti,#services_page #dx,#services_page #dx_pacchetti {
        width: 100%
    }

    .seleziona_giorni.seleziona_giorni_extended ul li,.seleziona_giorni.seleziona_giorni_extended ul li.riepi {
        display: flex
    }

    body:not(#results_page,#services_page) #dx,body:not(#results_page,#services_page) #dx_pacchetti {
        flex: 1!important;
        float: none!important;
        margin: 0;
        width: calc(100% - 375px)
    }

    #scheda_pacchetto {
        overflow-x: hidden;
        box-shadow: var(--box_shadow);
        border-radius: var(--border_radius_box)
    }
}

@media only screen and (min-width: 960px) and (max-width:1200px) {
    .month_selector .select_month {
        max-width:initial
    }

    .fancybox-wrap #quick_reserve .box_contenuto {
        width: 50%
    }

    .fancybox-wrap #quick_reserve .box_contenuto2,.fancybox-wrap #quick_reserve:has(#coupon)>.box_contenuto {
        width: 50%
    }

    .fancybox-wrap #quick_reserve:has(#coupon) .box_contenuto2 {
        width: 50%;
        display: flex;
        flex-direction: column
    }

    .fancybox-wrap #quick_reserve .box_contenuto:has(#coupon) {
        width: 100%
    }

    .fancybox-wrap #quick_reserve:has(#coupon) .box_contenuto:has(#container_calendar) {
        width: 100%
    }

    .fancybox-wrap .box_contenuto:has(#coupon) {
        border-top: 1px solid var(--border_color)!important
    }

    #summary_page #sx {
        width: 450px
    }

    #summary_page #dx {
        flex: 1
    }

    .contentbox_upgrade .box-upgraderomm {
        flex-direction: column-reverse
    }

    .box-upgraderomm .img_upsgrade {
        width: 100%
    }
}

@media only screen and (max-width: 960px) {
    #wrapper {
        margin-top:0!important
    }

    .targetta_offer {
        left: 0;
        margin: 10px 0 0
    }

    #sx,#sx_pacchetti {
        display: block;
        width: 100%;
        padding: 0;
        margin: 0
    }

    #dx,#dx_pacchetti {
        width: 100%;
        padding: 0
    }

    #box_carrello {
        float: none;
        width: 100%;
        height: auto;
        margin: 0;
        background-color: var(--light_bg);
        box-shadow: none!important
    }

    .carrello {
        float: none;
        width: 100%;
        height: auto;
        margin: auto;
        padding: 0 20px
    }

    #top .carrello {
        max-width: 100%;
        padding: 0
    }

    #vantaggi {
        float: none;
        width: 100%;
        height: auto
    }

    #header_mobile {
        display: none
    }

    #box_pacchetti #pacchetti,#step .container,#wrapper .container {
        flex-wrap: wrap
    }

    #box_pacchetti #pacchetti #sx_pacchetti {
        order: 2;
        padding-top: 20px;
        background: var(--box_background)
    }

    #box_pacchetti #pacchetti #sx_pacchetti #box_carrello {
        background: var(--box_background)
    }

    #box_pacchetti #pacchetti #sx_pacchetti div#quick_reserve {
        width: 100%;
        max-width: 600px;
        margin: auto;
        float: none
    }

    #box_pacchetti #pacchetti #dx_pacchetti {
        order: 1
    }

    #first_page .carrello .contenuto .box_contenuto .riga .pulsanti a.aggcamera,#pag_pacchetto_singolo .carrello .contenuto .box_contenuto .riga .pulsanti a.aggcamera {
        background: #fff!important;
        text-align: right
    }

    .group-page #riepilogo_viaggio {
        position: fixed;
        top: 0;
        z-index: 10;
        width: 100%;
        padding-top: 35px;
        padding-bottom: 0
    }

    #carrello .contenuto .box_contenuto {
        padding: 10px
    }

    div#quick_reserve {
        position: relative
    }

    .bannerone-offerta .cont_pacchetto,.campo .tariffe,.campo_servizi .elenco li .blocco_servizio {
        width: calc(100% - 350px);
        margin: 0
    }

    .bannerone-offerta .foto_pacchetto,.campo .foto,.campo_servizi .foto {
        width: 350px
    }

    .campo_servizi .blocco_servizio .tariffa_servizio .row .remove {
        width: 30px
    }

    #step .container ul {
        display: flex;
        justify-content: center
    }

    #step .container ul li a {
        display: flex;
        flex-wrap: wrap;
        justify-content: center
    }

    #step {
        display: block;
        padding: 0 20px 0!important;
        box-shadow: var(--box_shadow);
        z-index: 1;
        position: relative
    }

    #cancellation_page #wrapper .container,#step .container {
        margin-bottom: 0;
        padding: 10px 0
    }

    #wrapper .container {
        padding: 0
    }

    #step .container ul li:last-child a {
        width: auto;
        margin-right: 0
    }

    #header_mobile_sx .menu li span {
        float: none
    }

    .seleziona_giorni .checkin span.dx {
        height: 30px
    }

    #dx,#dx_pacchetti {
        width: 100%
    }

    body,footer {
        display: initial
    }

    #vantaggi .box {
        height: auto
    }

    #vantaggi .box img {
        width: 100%;
        height: 100%
    }

    #box_riepilogo_ricerca_mobile {
        display: none!important;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: flex-end
    }

    .fancybox-wrap.fancybox-desktop.fancybox-type-inline.fancybox-opened {
        max-width: 90%!important;
        left: 5%!important
    }

    .carrello .contenuto .box_contenuto .riga .inserisci_sconto {
        background: var(--light_bg_hover)!important;
        color: var(--texts_color);
        padding: 5px 20px;
        text-align: center;
        height: auto
    }

    .cal .freccia {
        display: initial
    }

    #sx #camere li,#sx-pacchetti #camere li {
        padding: 20px!important;
        border-bottom: 0;
        background: var(--light_bg_hover);
        margin-bottom: 10px
    }

    #first_page .riga .pulsanti {
        margin: 0
    }

    #camere li .row_camera .seleziona .valore {
        background: var(--box_background)
    }

    #sx .seleziona.eta-bambini:last-child,#sx-pacchetti .seleziona.eta-bambini:last-child {
        padding-right: 23px
    }

    .top-riepilogo:not(.is-pinned) .top-riepilogo .viaggio {
        background: var(--default_light_bg)
    }

    .top-riepilogo .viaggio .cal {
        width: 100%!important;
        height: auto;
        padding: 21px 5px 2px 10px;
        margin: 0
    }

    .top-riepilogo.is-pinned .viaggio .cal {
        width: 100%!important;
        height: auto;
        padding: 10px 5px;
        margin: 0
    }

    #top.is-pinned .viaggio .single-room,.top-riepilogo .viaggio .single-room {
        border-left: 0;
        padding: 5px 25px 15px!important
    }

    #top.is-pinned .viaggio .single-room {
        padding: 5px!important
    }

    .viaggio .eti {
        font-size: var(--text_size)
    }

    .top-riepilogo .fa-bed-front,.top-riepilogo .fa-calendar-days {
        margin: 0!important;
        display: inline-block;
        width: 24px
    }

    .fancybox-wrap #quick_reserve {
        display: flex;
        flex-direction: column
    }

    .fancybox-wrap #quick_reserve {
        display: flex;
        flex-direction: column
    }

    .fancybox-wrap #quick_reserve .box_contenuto {
        width: 100%!important
    }

    .fancybox-wrap #quick_reserve .box_contenuto:has(#coupon) {
        margin-bottom: 30px
    }

    #step .link-gruppo,#step .link-homepage {
        display: none
    }

    .fancybox-wrap #quick_reserve .box_contenuto {
        width: 100%
    }

    .fancybox-wrap #quick_reserve .box_contenuto2,.fancybox-wrap #quick_reserve:has(#coupon)>.box_contenuto {
        width: 100%
    }

    .fancybox-wrap #quick_reserve:has(#coupon) .box_contenuto2 {
        width: 100%;
        display: flex;
        flex-direction: column
    }

    .fancybox-wrap #quick_reserve .box_contenuto:has(#coupon) {
        width: 100%
    }

    .fancybox-wrap #quick_reserve:has(#coupon) .box_contenuto:has(#container_calendar) {
        width: 100%
    }

    .fancybox-wrap .box_contenuto:has(#coupon) {
        border-top: 1px solid var(--border_color)!important
    }

    .fancybox-wrap .box_contenuto:has(#container_calendar) {
        border-top: 1px solid var(--border_color)!important
    }

    #summary_page #sx {
        width: 100%;
        margin: 0
    }

    #summary_page #dx {
        flex: 1
    }

    .upgrade_room_styles {
        margin-top: 20px
    }

    .top-riepilogo:not(.is-pinned) .viaggio #discount-code-button,.top-riepilogo:not(.is-pinned) .viaggio .pulsanti {
        margin-bottom: 5px;
        margin-top: 8px;
        background: 0 0!important;
        /* border: 1px solid #ddd; */
    }

    .top-riepilogo .viaggio #discount-code-button {
        color: var(--calendar)!important
    }

    .top-riepilogo .viaggio #discount-code-button,.top-riepilogo .viaggio .pulsanti {
        border: 1px solid var(--border_color);
        padding: 8px 12px;
        border-radius: var(--border_radius_buttons);
        height: auto!important;
        margin-top: 5px;
        margin-left: 10px;
        margin-bottom: 5px
    }

    .top-riepilogo:not(.is-pinned) .viaggio #discount-code-button,.top-riepilogo:not(.is-pinned) .viaggio .pulsanti {
        background: var(--box_background)
    }

    .top-riepilogo .viaggio .pulsanti {
        margin-right: 15px
    }

    .is-pinned.top-riepilogo #riepilogo_viaggio {
        padding-top: 15px;
        padding-bottom: 10px
    }

    .mobile-cart-item,.popup.cart-mobile-box {
        display: block;
        background: var(--box_background);
        padding: 20px
    }

    #cart .cart-swiper {
        display: none
    }

    #cart .bar-container {
        flex-wrap: wrap;
        justify-content: space-between
    }

    #cart .bar-container .action {
        width: 100%;
        padding: 0
    }

    #cart .bar-container .mobile-cart-item,#cart .bar-container>.total-price {
        padding: 15px
    }

    #cart .bar-container .action a {
        padding: 20px;
        font-size: var(--button_text_size);
        border-radius: 0;
        text-transform: uppercase
    }

    #cart:has(.mobile-cart-item.toggled):before {
        content: "";
        display: block;
        position: fixed;
        top: 0;
        right: 0;
        width: 100%;
        height: 100%;
        background: rgba(0,0,0,.5);
        z-index: -1
    }

    #cart .popup-container {
        position: relative;
        max-height: 90%;
        overflow-y: auto;
        z-index: -1
    }

    .close-mobile-popup {
        position: absolute;
        right: 20px;
        top: 20px;
        font-size: 15px
    }

    .solution-summary span {
        display: block
    }

    .solution-price,.solution-summary .product-name,.solution-summary .room-name {
        display: none
    }

    #cart .bar-container {
        background: var(--box_background)
    }

    .bar-container .total-price .formatted-price {
        font-size: var(--button_text_size)
    }

    .item.cart-mobile-box:not(:first-child) {
        margin-top: 15px;
        border-top: 1px solid #ccc;
        padding-top: 15px
    }

    .top-riepilogo:not(.is-pinned) #box_carrello #riepilogo_viaggio {
        padding: 0
    }

    .top-riepilogo:not(.is-pinned) #box_carrello #riepilogo_viaggio .box_contenuto .viaggio.viaggio-row-1 {
        background: var(--default_light_bg);
        padding-bottom: 10px
    }

    .top-riepilogo:not(.is-pinned) #box_carrello #riepilogo_viaggio .box_contenuto .viaggio.viaggio-row-2 {
        background: var(--default_light_bg);
        border-top: 1px solid #ddd;
        padding: 5px 10px 10px
    }

    .discount-code,.discount-code-label {
        display: inline-block
    }

    .row_titolo .sin h2 {
        font-size: var(--title_size);
        line-height: 26px
    }
}

@media only screen and (min-width: 680px) and (max-width:960px) {
    .seleziona_giorni ul li .partenza {
        width:75px!important
    }

    .seleziona_giorni ul li.riepi .prezzo {
        width: 70px!important
    }

    .seleziona_giorni ul {
        font-size: 1em
    }

    .campo .foto img {
        height: 315px!important;
        width: auto!important
    }
}

@media only screen and (max-width: 800px) {
    #thanks_page .griglia_blocco {
        flex-direction:column
    }

    .colonna1,.colonna2 {
        width: 100%
    }

    .colonna2 {
        margin-top: 10px;
        padding-left: 0
    }

    .colonna_riepilogo {
        padding: 20px 25px
    }

    .box_contenitore_riepilogo {
        flex-direction: column
    }

    #pulsante_add_services,#pulsante_pkpass_download,.pulsante_stampa_conferma {
        width: auto
    }

    .contenitore_pulsanti {
        display: flex;
        justify-content: center;
        flex-wrap: wrap;
        flex-direction: row;
        margin: 0
    }

    .contentbox_upgrade .box-upgraderomm {
        display: flex;
        flex-direction: column;
        max-height: 100%
    }

    .box-upgraderomm .text_upsgrade {
        width: 100%
    }

    .box-upgraderomm .img_upsgrade {
        padding: 0;
        width: 100%;
        display: block;
        height: 200px;
        overflow: hidden
    }

    .img_upsgrade img {
        width: 100%;
        position: relative;
        margin-top: -50%;
        top: 200px
    }

    .cont_desc_camera_servizi p {
        columns: 1
    }

    button.link_dettagli_camera {
        width: 100%
    }

    .box_offerta_blocco.campo .pulsanti {
        margin-top: 20px;
        position: relative;
        text-align: right;
        bottom: initial;
        right: initial
    }

    .flexible-dates-conteiner {
        display: flex;
        flex-wrap: wrap;
        justify-content: center
    }

    .flexible-dates-conteiner .flexible-dates {
        width: 100%;
        max-width: 500px
    }
}

@media screen and (max-width: 680px) {
    .campo .tariffe {
        padding:20px 25px
    }

    ul#room-categories-conteiner li span {
        margin: 0 15px 0 0!important
    }

    .seleziona_giorni ul li,.seleziona_giorni ul li .vai a.seleziona {
        font-size: var(--text_size)
    }

    .seleziona_giorni ul li {
        line-height: 36px;
        height: 36px
    }

    .campo_scheda {
        margin-top: 20px
    }

    #step .container {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-end
    }

    #step .container ul li a .t_step {
        text-align: center;
        font-size: 11px;
        line-height: 14px;
        margin-top: 5px
    }

    .campo {
        float: none;
        display: flex;
        flex-flow: row wrap;
        justify-content: flex-start;
        align-content: flex-start
    }

    .bannerone-offerta .foto_pacchetto,.campo .foto,.campo_servizi .foto {
        width: 100%;
        height: auto;
        max-width: initial
    }

    .campo .foto.full {
        height: 320px!important
    }

    .box_offerta_blocco.campo {
        flex-direction: column
    }

    .bannerone-offerta .cont_pacchetto,.campo .tariffe,.campo_servizi .elenco li .blocco_servizio {
        float: none;
        width: 100%
    }

    #box-risultati .section_classicamere .accordion {
        margin-top: 0!important;
        width: 100%;
        margin-bottom: 20px
    }

    #packages_offers {
        margin-right: 0;
        width: 100%;
        display: table
    }

    #packages_offers a {
        margin: 10px 0 0 auto;
        line-height: 30px
    }

    #packages_offers a {
        width: 100%;
        text-align: center;
        margin: 20px auto 0
    }

    #vantaggi {
        display: block;
        width: 100%
    }

    .carrello .contenuto {
        margin: 0 auto;
        max-width: 100%
    }

    .room-rate-list:not(.solution-card) .room-rate-list-level1 .box-content-children {
        justify-content: space-between;
        flex-direction: row
    }

    .room-rate-list:not(.solution-card) .room-rate-list-level1.box-content-sx {
        width: 100%!important
    }

    .room-rate-list:not(.solution-card) .room-rate-treatment-box-item {
        font-size: var(--text_size_treatment);
        display: flex;
        flex-direction: row;
        padding: 0 0 10px 0;
        align-items: center;
        justify-content: center
    }

    .room-rate-occupations-box .room-rate-list:not(.solution-card) {
        flex-direction: column
    }

    .targetta_offer {
        left: 0;
        margin: 10px 0 0
    }

    .box_gallery {
        height: 300px
    }

    section .accordion .button2024 {
        width: -webkit-fill-available
    }

    section .accordion .button2024 {
        margin: 0 20px;
        text-align: center;
        font-size: 1.1em
    }

    .accordion .freccia {
        line-height: 42px
    }

    section div.blocco_tipo {
        border-top: 0!important;
        float: none;
        width: auto;
        margin: 10px 20px;
        background-color: var(--box_background);
        box-shadow: var(--box_shadow)
    }

    section div.blocco_tipo:first-child {
        margin: -40px 20px 10px
    }

    section div.blocco_tipo:first-child .row_titolo {
        padding-top: 25px!important;
        padding-left: 15px;
        padding-right: 15px
    }

    .row_titolo .des .cond span span {
        padding-right: 0
    }

    .row_titolo {
        flex-wrap: wrap;
        margin-bottom: 0;
        padding-bottom: 10px
    }

    div.blocco_tipo {
        padding: 10px 0
    }

    .container_tipo .row_titolo .des,.container_tipo .row_titolo .sin {
        width: 100%
    }

    section .accordion.accordion-open .button2024 {
        background-color: var(--light_bg_hover)!important;
        color: var(--texts_color)
    }

    section .accordion.accordion-open .freccia {
        color: var(--texts_color)!important
    }

    section .accordion.accordion-open .tariffa .price {
        color: var(--texts_color)!important
    }

    span.special-offer-label {
        display: inline-block
    }

    span.special-offer-label span {
        margin: 0
    }

    .container_tipo .row_titolo .des {
        float: none;
        width: 100%
    }

    .row_titolo .des .cond span span {
        width: auto
    }

    .row_titolo .des .cond>span {
        width: 100%!important
    }

    .row_titolo .des .cond span span:nth-child(2) {
        margin-left: 10px;
        padding-left: 10px;
        border-left: 1px solid var(--border_color)
    }

    .box-content-children {
        width: 100%;
        display: flex;
        flex-wrap: wrap;
        flex-direction: column
    }

    .box-content-dx,.box-content-middle {
        width: 100%
    }

    .room-rate-occupations-box .room-rate-list {
        padding: 20px 15px;
        background: var(--light_bg)
    }

    .room-rate-occupations-box {
        margin: 0 10px
    }

    .room-rate-general-box {
        margin-right: 0
    }

    .box-content-middle,.room-rate-general-box .room-rate-occupancy-content.number {
        text-align: right!important
    }

    .room-rate-price-info-content,.room-rate-price-value-content {
        vertical-align: top;
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
        padding: 5px 0
    }

    .room-rate-general-box .room-rate-price-value-content .offer,a.price_day.tooltip div.total_price,section .accordion.accordion-open .tariffa .price {
        font-size: 18px!important
    }

    .room-rate-button-box-item .reserve a {
        width: auto;
        max-width: 100%;
        font-size: 1.1em
    }

    span.special-offer-label i.fa-tag {
        top: 3px
    }

    div#quick_reserve.mobile_calendar {
        width: auto;
        padding: 10px;
        margin: 10px;
        -webkit-box-shadow: 0 3px 6px 0 rgba(0,0,0,.16);
        -moz-box-shadow: 0 3px 6px 0 rgba(0,0,0,.16);
        -o-box-shadow: 0 3px 6px 0 rgba(0,0,0,.16);
        box-shadow: 0 3px 6px 0 rgba(0,0,0,.16);
        display: table;
        position: absolute;
        z-index: 1001;
        background-color: var(--box_background);
        top: 80px
    }

    div#mob_dark_layer {
        position: fixed;
        top: 0;
        left: 0;
        display: block;
        width: 100%;
        height: 100%;
        background: rgba(0,0,0,.5);
        z-index: 1000
    }

    .seleziona_giorni ul li .partenza {
        width: 77px!important
    }

    #pag_pacchetto_singolo #box-risultati .accordion,#results_page section .accordion {
        margin-top: 0!important
    }

    #summary_page .campi_dati {
        margin-top: 20px
    }

    .campo .foto_camera img {
        float: none;
        height: auto;
        min-width: 100%;
        left: 50%;
        position: relative;
        width: 100%;
        top: 50%;
        transform: translate(-50%,-50%)
    }

    #pag_pacchetto_singolo #box-risultati .accordion .button_color.button2024.button_radius,#results_page section .accordion .button_color.button2024.button_radius {
        margin-top: 0!important;
        background: 0 0
    }

    .banner_comparativo {
        margin-top: 20px
    }

    .banner_comparativo .row_portale ul li {
        width: 100%!important
    }

    .carrello {
        padding: 0
    }

    .top-riepilogo .viaggio .single-room {
        width: 100%
    }

    .top-riepilogo .viaggio .single-room .eti {
        font-size: var(--text_size)!important
    }

    .cont_camera_content {
        display: flex;
        flex-direction: column
    }

    .cont_camera_content .cont_desc_camera_servizi {
        border-left: 0;
        padding: 20px 0 0 0;
        border-top: 1px solid var(--border_color)
    }

    .cont_desc_camera_servizi p {
        columns: 2
    }

    .fancybox-inner .cont_desc_camera_servizi,.fancybox-inner .text_camera {
        width: 100%;
        padding-left: 0
    }

    .top-riepilogo .viaggio #discount-code-button,.top-riepilogo .viaggio .pulsanti {
        padding: 5px 12px
    }

    .top-riepilogo #riepilogo_viaggio {
        padding: 5px 0 20px
    }

    #services_page .seleziona_camera {
        flex-direction: column;
        align-items: initial
    }

    #services_page .seleziona_camera .action {
        text-align: right;
        margin-top: 10px
    }

    #top.is-pinned .viaggio .single-room,.top-riepilogo .viaggio .single-room,.top-riepilogo.is-pinned .viaggio .cal {
        padding: 5px 10px 8px!important;
    }

    .viaggio .eti {
        margin: 0
    }

    .dati_personali .row {
        position: relative;
        width: 100%
    }

    .caricamento_contenitore .tabella_dispo td,.caricamento_contenitore .tabella_dispo th {
        padding: 6px 5px
    }

    .trova_dispo_alternativa a {
        max-width: 90%;
        margin: auto
    }

    .fancybox-wrap:has(#quick_reserve) {
        max-width: 96%!important;
        left: 2%!important;
        width: 96%!important
    }

    .fancybox-skin:has(#quick_reserve) {
        padding: 5px!important
    }

    .banner_comparativo_new_flow .banner_chiuso {
        width: 85px;
        padding: 10px
    }

    .dati_personali .row:has(.input-birth-date) label,.dati_personali .row:has(select.customer_data_input) label {
        flex-wrap: wrap;
        justify-content: flex-end
    }

    .dati_personali .row:has(.input-birth-date) label .label,.dati_personali .row:has(select.customer_data_input) label .label {
        width: 100%;
        padding-bottom: 10px
    }

    .dati_personali .row:has(.input-birth-date) input,.dati_personali .row:has(select.customer_data_input) input {
        margin: 0
    }
}

@media only screen and (max-width: 450px) {
    .box_gallery {
        height:250px
    }

    .campo .foto {
        height: 250px
    }

    .modification-buttons {
        width: auto;
        margin: 5px
    }

    .campo .foto.full {
        height: 270px!important
    }

    .top-riepilogo .viaggio .cal .freccia:last-of-type {
        margin: 0 10px 0 0;
    }

    .top-riepilogo .viaggio #discount-code-button i,.top-riepilogo .viaggio .pulsanti i {
        /* display: none; */
        font-weight: 300
    }

    .room-rate-list:not(.solution-card) .room-rate-list-level1 .box-content-children {
        justify-content: space-between;
        flex-direction: column
    }

    #link_pacchetti,#torna_risultati_ricerca,#torna_tariffe_pacchetti {
        padding: 0 15px;
        line-height: 28px;
        margin: 10px 0
    }

    section div.blocco_tipo {
        margin: 10px
    }

    section div.blocco_tipo:first-child {
        margin: -40px 10px 10px
    }

    section .accordion .button2024 {
        margin: 0 10px
    }

    .room-rate-list:not(.solution-card) .room-rate-treatment-box-item {
        padding: 0
    }
}

@media only screen and (max-width: 400px) {
    .room-rate-list:not(.solution-card) .room-rate-list-level1 .box-content-children {
        justify-content:space-between;
        flex-direction: column
    }

    span.clock-unit {
        font-size: 10px!important
    }
}

#contenitore_secure {
    background: var(--box_background);
    padding: 20px;
    font-size: 14px!important;
    box-shadow: var(--box_shadow);
    border-radius: var(--border_radius_box);
    margin-top: 15px
}

.overlay-box {
    border-radius: var(--border_radius_box)
}

body:has(#box-filtri) .top-riepilogo,body:has(#box-filtri) .top-riepilogo #box_carrello {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0
}

body:has(#box-filtri) .top-riepilogo {
    box-shadow: 0 0 3px 0 rgba(50,50,50,.2)
}

body:has(#cart) #default-footer {
    margin-bottom: 90px
}

.caricamento_contenitore {
    position: relative
}

.caricamento_animazione {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0
}

.animazione-loading,.animazione-loading:after {
    width: 32px;
    height: 32px;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -21px;
    margin-left: -21px;
    border-radius: 50%;
    z-index: 100
}

.animazione-loading.little,.animazione-loading.little:after {
    width: 12px;
    height: 12px;
    margin-top: -10px;
    margin-left: -10px
}

.animazione-loading {
    background-color: transparent;
    border-top: 5px solid rgba(0,0,0,.2);
    border-right: 5px solid rgba(0,0,0,.2);
    border-bottom: 5px solid rgba(0,0,0,.2);
    border-left: 5px solid #eee;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
    -webkit-animation-duration: .8s;
    animation-duration: .8s;
    -webkit-animation-name: animazione-loading;
    animation-name: animazione-loading
}

.animazione-loading.little {
    border-top: 2px solid rgba(0,0,0,.2);
    border-right: 2px solid rgba(0,0,0,.2);
    border-bottom: 2px solid rgba(0,0,0,.2);
    border-left: 2px solid #eee
}

@-webkit-keyframes animazione-loading {
    0% {
        -webkit-transform: rotate(0);
        transform: rotate(0)
    }

    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

@keyframes animazione-loading {
    0% {
        -webkit-transform: rotate(0);
        transform: rotate(0)
    }

    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

.tip-yellow {
    z-index: 10000;
    text-align: left;
    padding: 0 10px;
    box-sizing: border-box;
    min-width: 50px;
    max-width: 400px;
    color: #222;
    background-color: #fef9d9;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    -webkit-box-shadow: 0 5px 5px 0 rgba(50,50,50,.3);
    -moz-box-shadow: 0 5px 5px 0 rgba(50,50,50,.3);
    box-shadow: 0 5px 5px 0 rgba(50,50,50,.3);
    cursor: pointer;
    margin-top: 0
}

.tip-yellow .tip-inner {
    margin-top: 0;
    padding: 0 3px;
    min-height: 40px;
    line-height: 20px
}

.tip-yellow .tip-arrow-top {
    margin-top: -10px;
    margin-left: 15px;
    top: 0;
    left: 0;
    width: 16px;
    height: 10px;
    background: url(tip-yellow_arrows.png) no-repeat
}

.tip-yellow .tip-arrow-right {
    margin-top: -9px;
    margin-left: -4px;
    top: 0;
    left: 100%;
    width: 10px;
    height: 20px;
    background: url(tip-yellow_arrows.png) no-repeat -16px 0
}

.tip-yellow .tip-arrow-bottom {
    margin-top: 0;
    margin-left: 15px;
    top: 100%;
    left: 0;
    width: 16px;
    height: 13px;
    background: url(tip-yellow_arrows.png) no-repeat -32px 0
}

.tip-yellow .tip-arrow-left {
    margin-top: -9px;
    margin-left: -6px;
    top: 50%;
    left: 0;
    width: 10px;
    height: 20px;
    background: url(tip-yellow_arrows.png) no-repeat -48px 0
}

#rate-details-dialog,#room-details-dialog {
    max-width: 90%;
    width: 800px;
    max-height: 90vh;
    padding: 0;
    border: none;
    border-radius: 10px;
    box-shadow: 0 5px 30px rgba(0,0,0,.3);
    overflow-y: auto;
    overflow-x: hidden;
    scrollbar-width: none;
    -ms-overflow-style: none
}

#rate-details-dialog::-webkit-scrollbar,#room-details-dialog::-webkit-scrollbar {
    display: none
}

#rate-details-dialog::backdrop,#room-details-dialog::backdrop {
    background-color: rgba(0,0,0,.5)
}

.dialog-close-btn {
    position: fixed;
    z-index: 10001;
    justify-self: right;
    margin: 10px 10px 0 0;
    width: 30px;
    height: 30px;
    border: none;
    background: rgba(255,255,255,.9);
    border-radius: 50%;
    font-size: 24px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all .2s;
    box-shadow: 0 2px 8px rgba(0,0,0,.2)
}

.daily-rate-table-container .tariffa_giorno {
    background: #fff;
    padding: 15px;
    border-radius: 5px;
    box-shadow: 0 2px 4px rgba(0,0,0,.1)
}

.daily-rate-table-container .subtitle {
    color: #666;
    font-style: italic;
    margin-bottom: 10px
}

.daily-rate-table-container ul {
    list-style: none;
    padding: 0;
    margin: 0
}

.daily-rate-table-container .cont_giorno_tooltip {
    display: flex;
    justify-content: space-between;
    padding: 4px 0;
    border-bottom: 1px solid #eee
}

.daily-rate-table-container .cont_totale_tooltip {
    display: flex;
    justify-content: space-between;
    padding: 8px 0;
    border-top: 2px solid #333;
    margin-top: 10px;
    font-weight: 700
}

.daily-rate-table-container .data {
    color: #555
}

.daily-rate-table-container .prezzo {
    color: #333;
    font-weight: 500
}

.daily-rate-table-container .totale_tooltip {
    font-size: 16px;
    color: #000
}

.message {
    width: 100%;
    position: absolute;
    opacity: 0;
    border-radius: 5px;
    max-width: 300px;
    padding: 0 10px;
    box-sizing: border-box;
    background: #fef9d9;
    color: #222;
    -webkit-box-shadow: 0 5px 5px 0 rgba(50,50,50,.3);
    -moz-box-shadow: 0 5px 5px 0 rgba(50,50,50,.3);
    box-shadow: 0 5px 5px 0 rgba(50,50,50,.3);
    cursor: pointer;
    margin-top: 0;
    min-width: 160px
}

.alternative-offer-message {
    min-width: 300px
}

.message p {
    float: left;
    width: 100%;
    margin: 10px 0;
    padding: 0;
    font-size: 12px;
    text-align: left;
    line-height: normal
}

.message p div {
    float: left;
    width: 100%
}

.message p a {
    display: block;
    float: left;
    width: 48%;
    margin: 10px auto;
    height: 30px;
    line-height: 30px;
    background: #6d5934;
    text-align: center;
    color: #fff;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px
}

.message p a.open {
    background: #6cab6c
}

.message p a.close {
    float: right
}

.notifica-top {
    top: 0
}

.notifica-bottom {
    bottom: 0
}

.notifica-left {
    left: 0
}

.notifica-right {
    right: 0
}

.message.notifica-top.notifica-right.arrow:before {
    content: '';
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-top: 10px solid #fef9d9;
    position: absolute;
    bottom: -9px;
    right: 9px
}

.message.notifica-top.notifica-left.arrow:before {
    content: '';
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-top: 10px solid #fef9d9;
    position: absolute;
    bottom: -9px;
    left: 9px
}

.message.notifica-bottom.notifica-left.arrow:before {
    content: '';
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-bottom: 10px solid #fef9d9;
    position: absolute;
    top: -9px;
    left: 9px
}

.message.notifica-bottom.notifica-right.arrow:before {
    content: '';
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-bottom: 10px solid #fef9d9;
    position: absolute;
    top: -9px;
    right: 9px
}

.message.notifica-top.notifica-centrale.arrow:before {
    content: '';
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-top: 10px solid #fef9d9;
    position: absolute;
    bottom: -9px;
    left: 50%;
    margin-left: -10px
}

.message.notifica-bottom.notifica-centrale.arrow:before {
    content: '';
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-bottom: 10px solid #fef9d9;
    position: absolute;
    top: -9px;
    left: 50%;
    margin-left: -10px
}

.visibile {
    opacity: 1!important;
    -webkit-transition: all .4s ease-in-out;
    -moz-transition: all .4s ease-in-out;
    -o-transition: all .4s ease-in-out;
    transition: all .4s ease-in-out;
    margin-top: -10px;
    margin-bottom: -10px
}

#non-existing-id .dummy-class {
    border-collapse: collapse
}

/*# sourceMappingURL=VBModules.min.css.map */
