
.clearfix:before,
.clearfix:after {
    content: " ";
    display: table;
}

.clearfix:after {
    clear: both;
}

.clearfix {
    *zoom: 1;
}

input:focus {
    outline: 0;
}

.ui-datepicker {
    font-size: 12px !important;
}

/************************************************/
/*                     FONTS                    */
/************************************************/

/* Arial */
@font-face {
    font-family: 'arialregular';
    src: url('../fonts/arial.eot');
    src: url('../fonts/arial.eot?#iefix') format('embedded-opentype'),
    url('../fonts/arial.woff2') format('woff2'),
    url('../fonts/arial.woff') format('woff'),
    url('../fonts/arial.ttf') format('truetype'),
    url('../fonts/arial.svg#arialregular') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'arialbold';
    src: url('../fonts/arialbd.eot');
    src: url('../fonts/arialbd.eot?#iefix') format('embedded-opentype'),
    url('../fonts/arialbd.woff2') format('woff2'),
    url('../fonts/arialbd.woff') format('woff'),
    url('../fonts/arialbd.ttf') format('truetype'),
    url('../fonts/arialbd.svg#arialbold') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'arialbold_italic';
    src: url('../fonts/arialbi.eot');
    src: url('../fonts/arialbi.eot?#iefix') format('embedded-opentype'),
    url('../fonts/arialbi.woff2') format('woff2'),
    url('../fonts/arialbi.woff') format('woff'),
    url('../fonts/arialbi.ttf') format('truetype'),
    url('../fonts/arialbi.svg#arialbold_italic') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'arialitalic';
    src: url('../fonts/ariali.eot');
    src: url('../fonts/ariali.eot?#iefix') format('embedded-opentype'),
    url('../fonts/ariali.woff2') format('woff2'),
    url('../fonts/ariali.woff') format('woff'),
    url('../fonts/ariali.ttf') format('truetype'),
    url('../fonts/ariali.svg#arialitalic') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'arialblack';
    src: url('../fonts/ariblk.eot');
    src: url('../fonts/ariblk.eot?#iefix') format('embedded-opentype'),
    url('../fonts/ariblk.woff2') format('woff2'),
    url('../fonts/ariblk.woff') format('woff'),
    url('../fonts/ariblk.ttf') format('truetype'),
    url('../fonts/ariblk.svg#arialblack') format('svg');
    font-weight: normal;
    font-style: normal;
}

/* Helvetica Neue */
@font-face {
    font-family: 'helveticaneuebold';
    src: url('../fonts/helvetica_neu_bold.eot');
    src: url('../fonts/helvetica_neu_bold.eot?#iefix') format('embedded-opentype'),
    url('../fonts/helvetica_neu_bold.woff2') format('woff2'),
    url('../fonts/helvetica_neu_bold.woff') format('woff'),
    url('../fonts/helvetica_neu_bold.ttf') format('truetype'),
    url('../fonts/helvetica_neu_bold.svg#helveticaneuebold') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'helveticaneueblackcond';
    src: url('../fonts/helveticaneue_blackcond.eot');
    src: url('../fonts/helveticaneue_blackcond.eot?#iefix') format('embedded-opentype'),
    url('../fonts/helveticaneue_blackcond.woff2') format('woff2'),
    url('../fonts/helveticaneue_blackcond.woff') format('woff'),
    url('../fonts/helveticaneue_blackcond.ttf') format('truetype'),
    url('../fonts/helveticaneue_blackcond.svg#helveticaneueblackcond') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'helveticaneuelight';
    src: url('../fonts/helveticaneue_light.eot');
    src: url('../fonts/helveticaneue_light.eot?#iefix') format('embedded-opentype'),
    url('../fonts/helveticaneue_light.woff2') format('woff2'),
    url('../fonts/helveticaneue_light.woff') format('woff'),
    url('../fonts/helveticaneue_light.ttf') format('truetype'),
    url('../fonts/helveticaneue_light.svg#helveticaneuelight') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'helveticaneuemedium';
    src: url('../fonts/helveticaneue_medium.eot');
    src: url('../fonts/helveticaneue_medium.eot?#iefix') format('embedded-opentype'),
    url('../fonts/helveticaneue_medium.woff2') format('woff2'),
    url('../fonts/helveticaneue_medium.woff') format('woff'),
    url('../fonts/helveticaneue_medium.ttf') format('truetype'),
    url('../fonts/helveticaneue_medium.svg#helveticaneuemedium') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'helveticaneuethin';
    src: url('../fonts/helveticaneue_thin.eot');
    src: url('../fonts/helveticaneue_thin.eot?#iefix') format('embedded-opentype'),
    url('../fonts/helveticaneue_thin.woff2') format('woff2'),
    url('../fonts/helveticaneue_thin.woff') format('woff'),
    url('../fonts/helveticaneue_thin.ttf') format('truetype'),
    url('../fonts/helveticaneue_thin.svg#helveticaneuethin') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'helveticaneueregular';
    src: url('../fonts/helveticaneue.eot');
    src: url('../fonts/helveticaneue.eot?#iefix') format('embedded-opentype'),
    url('../fonts/helveticaneue.woff2') format('woff2'),
    url('../fonts/helveticaneue.woff') format('woff'),
    url('../fonts/helveticaneue.ttf') format('truetype'),
    url('../fonts/helveticaneue.svg#helveticaneueregular') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'helveticaneuebold';
    src: url('../fonts/helveticaneuebd.eot');
    src: url('../fonts/helveticaneuebd.eot?#iefix') format('embedded-opentype'),
    url('../fonts/helveticaneuebd.woff2') format('woff2'),
    url('../fonts/helveticaneuebd.woff') format('woff'),
    url('../fonts/helveticaneuebd.ttf') format('truetype'),
    url('../fonts/helveticaneuebd.svg#helveticaneuebold') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'helveticaneueheavy';
    src: url('../fonts/helveticaneuehv.eot');
    src: url('../fonts/helveticaneuehv.eot?#iefix') format('embedded-opentype'),
    url('../fonts/helveticaneuehv.woff2') format('woff2'),
    url('../fonts/helveticaneuehv.woff') format('woff'),
    url('../fonts/helveticaneuehv.ttf') format('truetype'),
    url('../fonts/helveticaneuehv.svg#helveticaneueheavy') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'helveticaneueitalic';
    src: url('../fonts/helveticaneueit.eot');
    src: url('../fonts/helveticaneueit.eot?#iefix') format('embedded-opentype'),
    url('../fonts/helveticaneueit.woff2') format('woff2'),
    url('../fonts/helveticaneueit.woff') format('woff'),
    url('../fonts/helveticaneueit.ttf') format('truetype'),
    url('../fonts/helveticaneueit.svg#helveticaneueitalic') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'helveticaneuelight';
    src: url('../fonts/helveticaneuelt.eot');
    src: url('../fonts/helveticaneuelt.eot?#iefix') format('embedded-opentype'),
    url('../fonts/helveticaneuelt.woff2') format('woff2'),
    url('../fonts/helveticaneuelt.woff') format('woff'),
    url('../fonts/helveticaneuelt.ttf') format('truetype'),
    url('../fonts/helveticaneuelt.svg#helveticaneuelight') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'helveticaneuemedium';
    src: url('../fonts/helveticaneuemed.eot');
    src: url('../fonts/helveticaneuemed.eot?#iefix') format('embedded-opentype'),
    url('../fonts/helveticaneuemed.woff2') format('woff2'),
    url('../fonts/helveticaneuemed.woff') format('woff'),
    url('../fonts/helveticaneuemed.ttf') format('truetype'),
    url('../fonts/helveticaneuemed.svg#helveticaneuemedium') format('svg');
    font-weight: normal;
    font-style: normal;
}

/************************************************/
/*                   Generales                  */
/************************************************/

html {
    background-color: #FFFFFF;
    position: relative;
    min-height: 100%;
    font-size: 15px;
    text-rendering: optimizeLegibility !important;
    -webkit-font-smoothing: subpixel-antialiased !important;
    -moz-osx-font-smoothing: grayscale !important;
    box-sizing: border-box;
}
*, *:before, *:after {
    box-sizing: inherit;
}

body {
    font-family: sans-serif;
    font-size: 100%;
    background-color: #FFFFFF;
    margin-bottom: 50px;
}

div.container {
    max-width: 1024px;
    margin: auto;
    padding: 0 10px;
}

a {
    text-decoration: none;
    color: #0088CC;
}

a:hover,
a.subrayado {
    text-decoration: underline;
}

.ajax_loader {
    display: none;
    float: left;
    clear: both;
    margin: 5% 44% 0 44%;
}

.circularG_master {
    position: relative;
    width: 35px !important;
    height: 35px !important;
}

.circularG_master_floating {
  position: absolute;
  top: 200px;
  left: 50%;
  margin-left: -17px;
}

.circularG {
    position: absolute;
    background-color: #1AB394;
    width: 8px !important;
    height: 8px !important;
    -moz-border-radius: 5px;
    -moz-animation-name: bounce_circularG;
    -moz-animation-duration: 1.44s;
    -moz-animation-iteration-count: infinite;
    -moz-animation-direction: normal;
    -webkit-border-radius: 5px;
    -webkit-animation-name: bounce_circularG;
    -webkit-animation-duration: 1.44s;
    -webkit-animation-iteration-count: infinite;
    -webkit-animation-direction: normal;
    -ms-border-radius: 5px;
    -ms-animation-name: bounce_circularG;
    -ms-animation-duration: 1.44s;
    -ms-animation-iteration-count: infinite;
    -ms-animation-direction: normal;
    -o-border-radius: 5px;
    -o-animation-name: bounce_circularG;
    -o-animation-duration: 1.44s;
    -o-animation-iteration-count: infinite;
    -o-animation-direction: normal;
    border-radius: 5px;
    animation-name: bounce_circularG;
    animation-duration: 1.44s;
    animation-iteration-count: infinite;
    animation-direction: normal;
}

.circularG_1 {
    left: 0;
    top: 14px;
    -moz-animation-delay: 0.54s;
    -webkit-animation-delay: 0.54s;
    -ms-animation-delay: 0.54s;
    -o-animation-delay: 0.54s;
    animation-delay: 0.54s;
}

.circularG_2 {
    left: 4px;
    top: 4px;
    -moz-animation-delay: 0.72s;
    -webkit-animation-delay: 0.72s;
    -ms-animation-delay: 0.72s;
    -o-animation-delay: 0.72s;
    animation-delay: 0.72s;
}

.circularG_3 {
    top: 0;
    left: 14px;
    -moz-animation-delay: 0.9s;
    -webkit-animation-delay: 0.9s;
    -ms-animation-delay: 0.9s;
    -o-animation-delay: 0.9s;
    animation-delay: 0.9s;
}

.circularG_4 {
    right: 4px;
    top: 4px;
    -moz-animation-delay: 1.08s;
    -webkit-animation-delay: 1.08s;
    -ms-animation-delay: 1.08s;
    -o-animation-delay: 1.08s;
    animation-delay: 1.08s;
}

.circularG_5 {
    right: 0;
    top: 14px;
    -moz-animation-delay: 1.26s;
    -webkit-animation-delay: 1.26s;
    -ms-animation-delay: 1.26s;
    -o-animation-delay: 1.26s;
    animation-delay: 1.26s;
}

.circularG_6 {
    right: 4px;
    bottom: 4px;
    -moz-animation-delay: 1.44s;
    -webkit-animation-delay: 1.44s;
    -ms-animation-delay: 1.44s;
    -o-animation-delay: 1.44s;
    animation-delay: 1.44s;
}

.circularG_7 {
    left: 14px;
    bottom: 0;
    -moz-animation-delay: 1.62s;
    -webkit-animation-delay: 1.62s;
    -ms-animation-delay: 1.62s;
    -o-animation-delay: 1.62s;
    animation-delay: 1.62s;
}

.circularG_8 {
    left: 4px;
    bottom: 4px;
    -moz-animation-delay: 1.8s;
    -webkit-animation-delay: 1.8s;
    -ms-animation-delay: 1.8s;
    -o-animation-delay: 1.8s;
    animation-delay: 1.8s;
}

@-moz-keyframes bounce_circularG {
    0% {
        -moz-transform: scale(1)
    }

    100% {
        -moz-transform: scale(.3)
    }

}

@-webkit-keyframes bounce_circularG {
    0% {
        -webkit-transform: scale(1)
    }

    100% {
        -webkit-transform: scale(.3)
    }

}

@-ms-keyframes bounce_circularG {
    0% {
        -ms-transform: scale(1)
    }

    100% {
        -ms-transform: scale(.3)
    }

}

@-o-keyframes bounce_circularG {
    0% {
        -o-transform: scale(1)
    }

    100% {
        -o-transform: scale(.3)
    }

}

@keyframes bounce_circularG {
    0% {
        transform: scale(1)
    }

    100% {
        transform: scale(.3)
    }

}

.oculto,
.movil_oculto {
    display: none;
}

.movil_visible {
    display: block;
    border: 0px solid #BCBFBB !important;
    padding: 0 0 10px !important;
}

.movil_visible.oculto {
    display: none;
}

/************************************************/
/*                    Inputs                    */
/************************************************/

.button {
    max-width: 100%;
    padding: 8px 15px;
    font-size: 0.9em;
    line-height: 1.4em;
    text-align: center;
    cursor: pointer;
    color: white;
    border: 1px solid #11B3A2;
    background: #11B3A2;
    border-radius: 4px;
}

.salto_pago_av .formulario_pago .button {
    width: 100%;
    font-size: 0.9em;
}

.button:hover {
    opacity: 0.8;
}

.button.reserva_final.tarjeta {
    background: url(../img/tarjeta.png) no-repeat 94% center, #267205;
    padding-right: 100px;
    padding-top: 2%;
    padding-bottom: 2%;
    padding-left: 2%;
}

.button.reserva_final.paypal {
    background: url(../img/paypal.png) no-repeat 97% center, #267205;
    padding-right: 95px;
}

.button.reserva_final.transferencia {
    background: url(../img/transferencia.png) no-repeat 97% center, #267205;
    padding-right: 95px;
}

div.continua_paso_3.button.boton_continuar {
    font-size: 1em;
}

input[type="tel"],
input[type="text"],
input[type="number"] {
    /*height: 20px;*/
    padding: 6px 12px;
    font-size: 14px;
    line-height: 1.42857143;
    color: #555;
    background-color: #fff;
    border: 1px solid #ccc;
    /*box-shadow: inset 0 1px 1px rgba(0,0,0,.075);*/
    /*transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;*/
    background-color: #fff !important;
}

textarea {
    /*height: 20px;*/
    padding: 6px 12px;
    font-size: 14px;
    line-height: 1.42857143;
    color: #555;
    background-color: #fff;
    border: 1px solid #ccc;
    /*box-shadow: inset 0 1px 1px rgba(0,0,0,.075);*/
    /*transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;*/
    overflow: auto;
    resize: vertical;
}

select.erroneo,
input[type="tel"].erroneo,
input[type="text"].erroneo,
input[type="number"].erroneo,
textarea.erroneo {
    border: 1px solid rgb(232, 66, 66);
    /*box-shadow: inset 0 1px 1px rgba(232, 66, 66, 0.47);*/
}

label.erroneo {
    color: rgb(232, 66, 66);
}

select {
    font-family: sans-serif;
    /*font-family: Tahoma, Arial, Verdana, sans-serif;*/
    padding: 4px 6px;
    font-size: 13px;
    line-height: 1.42857143;
    color: #555;
    background-color: #fff;
    border: 1px solid #ccc;
    /*box-shadow: inset 0 1px 1px rgba(0,0,0,.075);*/
    /*transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;*/
}

select:disabled {
    background: #f3f2f2;
}

.listado select {
    padding: 6px 12px;
}

.listado .lista_zonas select {
    font-size: 14px;
    min-height: 34px;
}

select option {
    font-family: sans-serif;
    /*font-family: Tahoma, Arial, Verdana, sans-serif;*/
    padding: 6px 12px;
    font-size: 14px;
    line-height: 1.42857143;
    color: #555;
    background-color: #fff;
}

input[type=checkbox],
input[type=radio] {
    cursor: pointer;
}

input[type=checkbox].erroneo + label,
input[type=radio].erroneo + label {
    border: 1px solid rgb(232, 66, 66);
    box-shadow: inset 0 1px 1px rgba(232, 66, 66, 0.47);
}

input[type=checkbox].erroneo + label:before {
  content: "!";
  display: block;
  position: absolute;
  width: 24px;
  height: 24px;
  background: red;
  color: #fff;
  font-size: 20px;
  border-radius: 50%;
  text-align: center;
  line-height: 24px;
  vertical-align: middle;
  padding-top: 1px;
  top: -50%;
  left: -30px;
  box-shadow: 0px 2px 5px rgb(0 0 0 / 20%);
}

input[type="checkbox"] {
    visibility: hidden;
    height: 0;
    width: 0;
}

input[type="checkbox"] + label {
    border: 1px solid #cacece;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05), inset 0px -15px 10px -12px rgba(0, 0, 0, 0.05);
    padding: 6px;
    display: inline-block;
    position: relative;
    cursor: pointer;
}

input[type="checkbox"] + label:active, input[type="checkbox"]:checked + label:active {
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05), inset 0px 1px 3px rgba(0, 0, 0, 0.1);
}

input[type="checkbox"]:checked + label {
    background-color: #e9ecee;
    border: 1px solid #11B3A2;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05), inset 0px -15px 10px -12px rgba(0, 0, 0, 0.05), inset 15px 10px -12px rgba(255, 255, 255, 0.1);
    color: #11B3A2;
}

input[type="checkbox"]:checked + label:after {
    content: '\2714';
    color: #1AB394;
    font-size: 15px;
    left: 2px;
    position: absolute;
    top: -7px;
}

div.condiciones input[type="checkbox"]:checked + label {
    background-color: #e9ecee;
    border: 1px solid #11B3A2;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05), inset 0px -15px 10px -12px rgba(0, 0, 0, 0.05), inset 15px 10px -12px rgba(255, 255, 255, 0.1);
    color: #1AB394;
}

div.condiciones input[type="checkbox"]:checked + label:after {
    content: '\2714';
    color: #1AB394;
    font-size: 15px;
    left: 2px;
    position: absolute;
    top: -7px;
}

/* Reglas específicas según navegador */

.ie input[type="checkbox"]:checked + label:after {
    top: -6px;
}

.gecko input[type="checkbox"] {
    margin-left: -12px;
}

input[type="radio"] {
    visibility: hidden;
    height: 0;
    width: 0;
}

input[type="radio"] + label {
    -webkit-appearance: none;
    background-color: #fafafa;
    border: 1px solid #cacece;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05), inset 0px -15px 10px -12px rgba(0, 0, 0, 0.05);
    padding: 6px;
    border-radius: 50px;
    display: inline-block;
    position: relative;
    margin-right: 7px;
    cursor: pointer;
    top: 2px;
}

input[type="radio"]:checked + label {
    background-color: #e9ecee;
    color: #99a1a7;
    border: 1px solid rgb(60, 155, 182);
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05), inset 0px -15px 10px -12px rgba(0, 0, 0, 0.05), inset 15px 10px -12px rgba(255, 255, 255, 0.1), inset 0px 0px 10px rgba(0, 0, 0, 0.1);
}

input[type="radio"]:checked + label:after {
    content: ' ';
    width: 6px;
    height: 6px;
    border-radius: 50px;
    position: absolute;
    top: 3px;
    background: rgb(60, 155, 182);
    left: 3px;
}

div.datos_pago input[type="radio"]:checked + label {
    background-color: #e9ecee;
    color: #1AB394;
    border: 1px solid #11B3A2;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05), inset 0px -15px 10px -12px rgba(0, 0, 0, 0.05), inset 15px 10px -12px rgba(255, 255, 255, 0.1), inset 0px 0px 10px rgba(0, 0, 0, 0.1);
}

div.datos_pago input[type="radio"]:checked + label:after {
    content: ' ';
    width: 6px;
    height: 6px;
    border-radius: 50px;
    position: absolute;
    top: 3px;
    background: #267205;
    left: 3px;
}

/* Reglas específicas según navegador */

.gecko input[type="radio"] {
    margin-left: -12px;
}

.gecko select {
    padding: 0px;
}

input.fondo_fecha_entrada {
    background: transparent url("../img/calendar_new.png") no-repeat 95% center;
    background-size: 18px;
}

/*#f_ini_1{
	background: none;
}
#f_fin_1{
	background: none;
}*/
input.fondo_fecha_salida {
    background: transparent url("../img/calendar_new.png") no-repeat 95% center;
    background-size: 18px;
}

div.titulo {
    font-family: 'Roboto', sans-serif;
    font-size: 1.1em;
    /*letter-spacing: 1px;*/
}

div.subtitulo {
    font-family: 'Roboto', sans-serif;
    font-size: 1em;
    /*letter-spacing: 1px;*/
    clear: left;
}

div.justificante div.titulo {
    color: #1AB394;
    font-size: 1.2em;
}

div.justificante div.titulo span {
    font-size: 0.7em;
}

div.justificante div.subtitulo {
    color: #1AB394;
    font-size: 1em;
}

div.justificante ul.listaPagos {
    margin-left: 30px;
}

div.justificante ul.listaPagos li {
    list-style-type: circle;
    padding-left: 20px;
}

/************************************************/
/*          		Loadings      		        */
/************************************************/

.fountainG_master {
    float: right;
    margin-top: 0.3em;
}

.fountainG {
    float: left;
    margin-left: 0.2em;
    background-color: #1AB394;
    width: 3px;
    height: 3px;
    -moz-animation-name: bounce_fountainG;
    -moz-animation-duration: 0.6s;
    -moz-animation-iteration-count: infinite;
    -moz-animation-direction: normal;
    -moz-transform: scale(.3);
    -moz-border-radius: 2px;
    -webkit-animation-name: bounce_fountainG;
    -webkit-animation-duration: 0.6s;
    -webkit-animation-iteration-count: infinite;
    -webkit-animation-direction: normal;
    -webkit-transform: scale(.3);
    -webkit-border-radius: 2px;
    -ms-animation-name: bounce_fountainG;
    -ms-animation-duration: 0.6s;
    -ms-animation-iteration-count: infinite;
    -ms-animation-direction: normal;
    -ms-transform: scale(.3);
    -ms-border-radius: 2px;
    -o-animation-name: bounce_fountainG;
    -o-animation-duration: 0.6s;
    -o-animation-iteration-count: infinite;
    -o-animation-direction: normal;
    -o-transform: scale(.3);
    -o-border-radius: 2px;
    animation-name: bounce_fountainG;
    animation-duration: 0.6s;
    animation-iteration-count: infinite;
    animation-direction: normal;
    transform: scale(.3);
    border-radius: 2px;
}

.fountainG_1 {
    -moz-animation-delay: 0.24s;
    -webkit-animation-delay: 0.24s;
    -ms-animation-delay: 0.24s;
    -o-animation-delay: 0.24s;
    animation-delay: 0.24s;
}

.fountainG_2 {
    -moz-animation-delay: 0.3s;
    -webkit-animation-delay: 0.3s;
    -ms-animation-delay: 0.3s;
    -o-animation-delay: 0.3s;
    animation-delay: 0.3s;
}

.fountainG_3 {
    -moz-animation-delay: 0.36s;
    -webkit-animation-delay: 0.36s;
    -ms-animation-delay: 0.36s;
    -o-animation-delay: 0.36s;
    animation-delay: 0.36s;
}

.fountainG_4 {
    -moz-animation-delay: 0.42s;
    -webkit-animation-delay: 0.42s;
    -ms-animation-delay: 0.42s;
    -o-animation-delay: 0.42s;
    animation-delay: 0.42s;
}

.fountainG_5 {
    -moz-animation-delay: 0.48s;
    -webkit-animation-delay: 0.48s;
    -ms-animation-delay: 0.48s;
    -o-animation-delay: 0.48s;
    animation-delay: 0.48s;
}

@-moz-keyframes bounce_fountainG {
    0% {
        -moz-transform: scale(1);
        background-color: #1AB394;
    }
    100% {
        -moz-transform: scale(.3);
        background-color: #e0f5d3;
    }
}

@-webkit-keyframes bounce_fountainG {
    0% {
        -webkit-transform: scale(1);
        background-color: #1AB394;
    }

    100% {
        -webkit-transform: scale(.3);
        background-color: #e0f5d3;
    }
}

@-ms-keyframes bounce_fountainG {
    0% {
        -ms-transform: scale(1);
        background-color: #1AB394;
    }

    100% {
        -ms-transform: scale(.3);
        background-color: #e0f5d3;
    }
}

@-o-keyframes bounce_fountainG {
    0% {
        -o-transform: scale(1);
        background-color: #1AB394;
    }
    100% {
        -o-transform: scale(.3);
        background-color: #e0f5d3;
    }
}

@keyframes bounce_fountainG {
    0% {
        transform: scale(1);
        background-color: #1AB394;
    }

    100% {
        transform: scale(.3);
        background-color: #e0f5d3;
    }
}

/************************************************/
/*                Cabecera y pie                */
/************************************************/

header {
    background: #FFFFFF;
    color: #000000;
    border-bottom: 3px solid #11B3A2;
}

header div.container {
    padding: 0%;
    display: flex;
}

header div.capa_titulo,
header div.capa_logo,
header div.capa_desplegable_banderas {
    display: flex;
    align-items: center;
}

header div.capa_titulo {
    font-family: 'Roboto', sans-serif;
    font-size: 1.3em;
    margin: 2% 2%; /*movemos logo de portal hacia la derecha by 2% */
    flex: 1;
}

header div.capa_titulo img {
    float: left;
    max-width: 155px;
    max-height: 50px;
}

header div.nombre_com {
    float: left;
    width: auto;
    padding-left: 1.5%;
}

header div.capa_logo {
    /*margin-top: 3.6%;*/
    /*padding: 1%;*/
    background-color: rgba(218, 215, 215, 0.44);
    padding: 10px; /* movemos logo de AB hacia la izquierda by 2% */
}

header div.capa_logo img {
    max-width: 30px;
    object-fit: contain;
}

header div.capa_desplegable_banderas {
    position: relative;
    margin-right: 1%;
    margin-left: auto;
}

header div.selector_banderas {
    float: right;
    padding: 5px 5px 5px 10px;
    cursor: pointer;
    transition: all 0.2s ease;
}

header div.selector_banderas:hover {
    opacity: 0.7;
}

header div.selector_banderas img:first-of-type {
    height: 16px;
}

header div.selector_banderas img:nth-of-type(2) {
    width: 18px;
    position: relative;
    top: -4px;
    opacity: 0.4;
}

header div.contenedor_banderas {
    display: none;
    position: absolute;
    z-index: 10000;
    top: 30px;
    right: 18px;
    border-bottom-right-radius: 3px;
    border-bottom-left-radius: 3px;
}

header div.contenedor_banderas div {
    clear: left;
    padding: 8px 10px 5px 10px;
    background-color: #fff;
    transition: all 0.2s ease;
    cursor: pointer;
}

header div.contenedor_banderas div:last-of-type {
    border-bottom: 1px solid transparent;
    border-bottom-right-radius: 5px;
    border-bottom-left-radius: 5px;
}

header div.contenedor_banderas div:hover {
    background: #fff linear-gradient(#F7F7F7, rgb(204, 204, 204));
}

header div.contenedor_banderas div img {
    height: 16px;
}

.gecko header div.contenedor_banderas,
.ie header div.contenedor_banderas {
    top: 29px;
}

.gecko header div.contenedor_banderas div,
.ie header div.contenedor_banderas div {
    padding: 8px 28px 5px 10px;
}

footer:not(.modal) {
    width: 100%;
    /*border-top: 1px solid #267205;*/
    /*background: #FFFFFF;*/
    color: #000000;
    font-size: 0.7em;
    padding: 2% 0;
    margin-top: 5%;
    position: absolute;
    bottom: 0;
    border-top: 1px solid #cccccc;
    /*background-color: #F4F4F4!important;*/
    background: #F4F4F4 url('../img/noise.png') repeat;
}

footer:not(.modal) span {
    color: #F4F4F4;
}

footer img {
    margin-right: 1.5%;
    vertical-align: middle;
}

footer:not(.modal) div.texto {
    float: left;
}
footer:not(.modal) div.pol_cookies {
    float: right;
}
.cursor_pointer {
    cursor: pointer;
}

/************************************************/
/*               Emergente COOKIE               */
/************************************************/

form.reserva_cookie div.botones {
    width: 100%;
    text-align: center;
}

form.reserva_cookie ul li {
    list-style: none;
    background: url('../img/calendario.png') no-repeat left top;
    padding-left: 30px;
    background-size: 22px;
}

form.reserva_cookie div.botones input:last-of-type {
    margin-left: 10%;
}

form.reserva_cookie div.botones input.caducada {
    margin-left: 0%;
}

form.reserva_cookie div.loading div.circularG_master {
    margin: 0 auto;
}

/************************************************/
/*        			Link Volver       	        */
/************************************************/
.link-volver a {
    display: inline-block;
    margin: 10px 0;
    width: auto;
    color: #999;
    text-transform: uppercase;
    text-decoration: underline;
    font-weight: bold;
    font-size: .7em;
}
.link-volver label {
    cursor: pointer;
}
.link-volver label:before {
    content: "";
    display: inline-block;
    width: 0;
    height: 0;
    border-top: 4px solid transparent;
    border-right: 7px solid #999;
    border-bottom: 4px solid transparent;
    margin-right: 5px;
}
.link-volver a:hover {
    /*text-decoration: none;
    background: rgba(17, 179, 162, .8);*/
    color: rgb(17, 179, 162);
}
.link-volver a:hover label:before {
    border-right-color: rgb(17, 179, 162);
}


/************************************************/
/*        			Box derecho       	        */
/************************************************/

.box {
    color: #000000;
    margin: 10px auto 0 auto;
    max-width: 400px;
    width: 100%;
    /*right: calc(((100% - 1024px) / 2) + 10px);*/
}

.box.movil_visible {
    width: 100%;
    max-width: none;
}

.wrapper-sidebar {
  background: #f2f2f2;
  padding: 10px;
  width: 100%;
  right: calc(((100% - 1024px) / 2) + 10px);
}

.box div.nombre {
    font-size: 1.2em;
    font-family: 'Roboto', sans-serif;
    color: #1AB394;
    /*letter-spacing: 1px;*/
    margin-bottom: 4%;
}

.box.movil_visible div.nombre {
    padding: 5px 10px 0;
}

.box label.cambio {
    font-size: 0.8em;
    cursor: pointer;
    font-family: 'Roboto', sans-serif;
    text-decoration: underline;
    display: block;
    text-align: right;
    margin-bottom: 5px;
}

.box div.imagen {
    text-align: center;
    position: relative;
    z-index: 1;
    /*width: 90%;*/
    /*margin: 0 auto 2% auto;*/
}

/*.box div.imagen img {
    width: 100%;
    height: 165px;
}*/

.box div.bloque {
    background: rgba(229, 228, 228, 0.41);
    margin: 0% auto 0 auto;
    padding: 5px 0;
}

.box div.direccion {
    font-size: 0.8em;
    background: url(../img/direccion.png) no-repeat 1.9% 0%;
    padding-left: 26px;
    background-size: 16px;
    margin: 0 auto;
    line-height: 18px;
}

.box div.propietario {
    font-size: 0.85em;
    background: url(../img/people.png) no-repeat 2.9% center;
    padding-left: 30px;
    background-size: 18px;
    width: 90%; /* cuadro de propietario nombre en justificante muy corto, incrementamos width */
    margin: 0 auto;
    line-height: 18px;
}

.box div.capacidad_completo,
.box div.capacidad_parcial {
    color: #A09797;
    background: url(../img/people.png) no-repeat 3px center;
    width: auto;
    /* float: left; */
    padding-left: 37px;
    background-size: 23px;
    /* clear: both; */
    line-height: 23px;
    font-size: 0.9em;
    width: 93%;
    margin: 2% auto 0 auto;
}

.box.new_box div.capacidad_completo,
.box.new_box div.capacidad_parcial {
    color: black;
}

.box div.capacidad_completo img,
.box div.capacidad_parcial img {
    width: 15px;
    vertical-align: middle;
    margin-top: -2px;
}

.box div.servicios {
    width: 88%;
    margin: 0% auto 1% auto;
}

.box div.servicios label.numero {
    position: absolute;
    left: 17px;
    top: 8px;
    font-size: 0.9em;
    background-color: rgb(240, 239, 239);
    border-radius: 50px;
    border: 1px solid #ccc;
    padding: 0px 5px;
}

.box div.servicio {
    position: relative;
    float: left;
    margin: 3% 4% 2% 0;
}

.box div.servicio.numerico {
    margin: 3% 7% 2% 0;
}

/*.box div.servicio:nth-of-type(7){
					clear: left;
				}*/
.box.movil_visible div.servicio:nth-of-type(7) {
    clear: left;
}

.box div.servicios img {
    width: 20px;
    vertical-align: bottom;
}

.box div.antifraude {
    font-size: 0.8em;
    color: #949191;
    padding-left: 11px;
}

.box div.antifraude img {
    width: 18px;
    vertical-align: middle;
    margin-right: 11px;
}

.box div.info_pago_seguro {
    font-size: 0.8em;
    border-top: 1px dashed #11B3A2;
    padding: 15px 0 10px 45px;
    background: transparent url('../img/escudo.png') no-repeat 5px 45%;
    background-size: 30px;
    clear: both;
}

.box.movil_visible div.antifraude {
    padding-left: 16px;
}

.box.movil_visible div.antifraude img {
    margin-right: 12px;
}

.box.movil_visible div.info_pago_seguro {
    padding: 20px 0 10px 50px;
    background-position-x: 10px;
}

.box div.direccion {
    border-bottom: 1px solid #E0DDDD;
    padding-bottom: 3%;
}

.box div.bloque_1 {
    position: relative;
    height: 200px;
}

.box.sin_fotos div.bloque_1 {
    position: relative;
    height: auto;
}

.box.sin_fotos .lds-ellipsis {
  display: none;
}

.box.con_fotos div.fondo {
    z-index: 10;
    padding: 1px 0px 8px 0px;
    position: absolute;
    max-width: 490px;
    bottom: 0;
    color: #fff;
    width: 100%;
    background: rgba(0,0,0, .3);
    background: -moz-linear-gradient(90deg, rgba(0,0,0,0.75) 0%, rgba(0,0,0,0) 100%);
    background: -webkit-linear-gradient(90deg, rgba(0,0,0,0.75) 0%, rgba(0,0,0,0) 100%);
    background: linear-gradient(90deg, rgba(0,0,0,0.75) 0%, rgba(0,0,0,0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#000000",endColorstr="#000000",GradientType=1);
}

.box.con_fotos div.nombre {
    margin: 0;
    /*font-size: 0.9em;*/
    color: white;
    padding: 0 6px;
}

.box.con_fotos div.direccion {
    margin: 0;
    font-size: 0.75em;
    color: white;
    padding: 4px 6px 0 6px;
    background: transparent;
    border-bottom: 0px solid #ccc;
}

div.imagenes,
div.imagen {
    width: 100%;
}

div.imagenes a > img,
div.imagen a > img{
    object-fit: cover;
    object-position: center;
    width: 100%;
    height: 100%;
}

div.imagenes div.bx-wrapper img {
    border-radius: 0px;
    height: 175px;
}

div.box div.fechas {
    border-top: 1px dashed #11B3A2;
    margin-top: 10px;
    padding: 10px;
}

div.box div.fechas div.izquierda,
div.box div.fechas div.derecha {
    width: 50%;
    padding: 0 5px;
}

div.box div.fechas div.izquierda {
    float: left;
    padding-left: 0;
}

div.box div.fechas div.derecha {
    float: right;
    padding-right: 0;
}

div.box div.fechas div.izquierda div,
div.box div.fechas div.derecha div {
    width: 100%;
}

div.box div.fechas div.izquierda div:first-of-type,
div.box div.fechas div.derecha div:first-of-type {
    margin-bottom: 4%;
    font-size: 0.85em;
}

div.box div.fechas input[type="text"] {
    width: 100%;
}

div.box div.fechas div.boton_dispo {
    float: left;
    margin-top: 10px;
    text-align: center;
    width: 100%;
    clear: both;
}

div.box div.fechas div.boton_dispo input[type="button"] {
    width: 100%;
}

div.box div.gen_form {
    font-size: 0.9em;
    width: 93%;
    margin: 3% auto 0 auto;
}

/*div.box div.gen_form div{
				margin-bottom: 3%;
			}*/
div.box div.gen_form div.fecha {
    float: left;
    background: transparent url('../img/calendar_new_black.png') no-repeat 4px center;
    background-size: 19px;
    padding-left: 37px;
    cursor: pointer;
    /*text-decoration: underline;*/
    color: #1AB394;
    line-height: 20px;
}
div.box div.gen_form div.fecha:hover {
    cursor: pointer;
}
div.box div.gen_form div.fecha:hover strong{
    opacity: .5;
}

div.box div.gen_form div.fecha span.und {
    text-decoration: underline;
}

div.box div.gen_form div.fecha.no_click {
    cursor: default;
}

div.box div.gen_form div.noches {
    float: left;
    clear: left;
    background: transparent url('../img/luna.png') no-repeat 6% center;
    background-size: 21px;
    padding-left: 37px;
    line-height: 30px;
    margin-top: 3%;
}

/************************************************/
/*            Box reserva/propietario           */
/************************************************/

div.box.reserva,
div.box.propietario,
div.box.alojamiento {
    font-family: 'Roboto', sans-serif;
    line-height: 22px;
    font-size: 0.9em;
}

div.justificante div.box.reserva div.estado {
    text-transform: uppercase;
}

div.justificante div.box.reserva div.estado,
div.justificante div.box div.linea:last-of-type {
    border-bottom: 0px !important;
}

div.justificante div.box div.linea:last-of-type {
    margin-top: 0.5em;
    padding-bottom: 0;
}

div.justificante div.box.reserva div.linea:last-of-type {
    text-align: center;
}

div.justificante div.box.reserva div.status {
    background: transparent url(../img/more.png) no-repeat 7px center;
    background-size: 18px;
    padding-left: 37px;
}

div.importes_finales div.precios div.estado {
    background: transparent url(../img/more.png) no-repeat 7px center;
    background-size: 18px;
    padding-left: 37px;
    margin-bottom: 10px;
}

div.justificante div.box.reserva div.status div.estado {
    text-align: center;
    text-transform: uppercase;
}

div.justificante div.box.reserva div.codigo {
    background: transparent url(../img/codigo.png) no-repeat 8px 8px;
    background-size: 18px;
    padding-left: 37px;
}

div.importes_finales div.precios div.codigo {
    background: transparent url(../img/codigo.png) no-repeat 8px;
    background-size: 18px;
    padding-left: 37px;
    margin-bottom: 10px;
}

div.justificante div.box.reserva div.link {
    background: transparent url(../img/link.png) no-repeat 8px 8px;
    background-size: 18px;
    padding-left: 37px;
}

div.justificante div.box.reserva div.fecha {
    background: transparent url(../img/calendario.png) no-repeat 8px 10px;
    background-size: 20px;
    padding-left: 37px;
}

div.justificante div.box.reserva div span {
    font-size: 1em;
}

div.box.propietario div.propietario {
    font-size: 1em !important;
    background: transparent url(../img/propi.png) no-repeat 8px 8px;
}

div.box.propietario div.tfno {
    background: transparent url(../img/telefono.png) no-repeat 8px 8px;
    background-size: 18px;
    padding-left: 37px !important;
}

div.contacto_finales div.tfno {
    /*background: transparent url(../img/telefono.png) no-repeat 8px 0px;
			background-size: 18px;
			padding-left: 37px!important;*/
    border: 0px;
    background: url(../img/telefono.png) no-repeat 8px 8px;
    padding-left: 37px;
    background-size: 18px;
    width: 90%;
    margin-left: 4px;
    line-height: 22px !important;
    padding-top: 7px;
    margin-bottom: 5px;
    margin-right: 5px;
    padding-bottom: 0;
    font-size: 0.8em;
}

div.box.propietario div.crs {
    text-align: center;
    margin-top: 11px;
    margin-bottom: 11px;
}

div.contacto_finales div.crs {
    text-align: center;
    margin-top: 10px;
}

div.justificante div.box div.linea {
    border-bottom: 0.1em solid #11B3A2;
    padding: 0.6em 0em;
}

div.justificante div.box.alojamiento div.importes div.total {
    border-top: 0.1em dashed #11B3A2;
    margin-top: 0.5em;
    padding-top: 0.5em;
}

div.justificante div.box.alojamiento div.direccion {
    font-size: 1em !important;
    background: url(../img/direccion.png) no-repeat 8px 8px;
    padding-left: 37px;
    background-size: 18px;
    margin-left: 0;
    line-height: 22px !important;
    padding-top: 7px;
}

div.contacto_finales div.direccion {
    border: 0px;
    background: url(../img/direccion.png) no-repeat 8px 8px;
    padding-left: 37px;
    background-size: 18px;
    width: 90%;
    margin-left: 0;
    line-height: 22px !important;
    padding-top: 7px;
    margin-bottom: 5px;
    margin-right: 5px;
    padding-bottom: 0;
}

div.justificante div.box.alojamiento div.personas {
    text-align: left;
    text-transform: none;
    margin-top: 0;
}

div.justificante div.box.alojamiento div.importes {
    font-size: 1em;
    border-top: none;
    width: 100%;
    margin: 0 auto;
    border-radius: 0;
}

div.justificante div.box.alojamiento div.importes > div {
    display: flex;
}

div.justificante div.box.alojamiento div.importes div.descr {
    width: 68%;
}

div.justificante div.box.alojamiento div.importes div.precio {
    width: 32%;
    text-align: right;
}

div.justificante div.box.alojamiento div.importes div.nota {
    color: #7B7575;
    font-size: 0.9em;
    line-height: 18px;
}

div.justificante div.box.alojamiento div.importes div.t_esp label {
    color: rgb(45, 189, 231);
    margin-right: 3px;
}

div.justificante div.box.alojamiento div.fpago {
    padding-left: 10px;
    padding-right: 10px;
}

div.justificante div.box.alojamiento div.fpago div:nth-of-type(2),
div.justificante div.box.alojamiento div.fpago div:last-of-type {
    float: left;
    margin-left: 2.5em;
}

div.justificante div.box.alojamiento div.fpago img {
    vertical-align: middle;
}

div.justificante div.box.alojamiento div.info_pago_seguro {
    font-size: 0.9em;
    border-top: none !important;
    background: transparent url('../img/escudo.png') no-repeat 8px 10px;
    background-size: 22px;
    margin-top: 0;
    padding: 10px 40px;
}

div.justificante div.box.alojamiento div.antifraude {
    font-size: 0.9em;
}

div.justificante div.box.alojamiento div.antifraude img {
    width: 18px;
}

/************************************************/
/*            		 Box importes     	        */
/************************************************/

div.importes {
    background: #FFFFFF;
    color: #000000;
    padding: 3% 2%;
    margin: 6% 5% 5% 5%;
    font-size: 0.8em;
}

.multi div.importes_finales {
    margin: 0% auto 0 auto;
}

div.importes_finales div.texto_error_precio_forzado {
    padding: 2%;
    line-height: 17px;
    text-align: justify;
}

div.importes_finales.importes_resumen .texto_error_precio_forzado {
    font-weight: normal;
}

div.importes_finales.importes_resumen.movil_visible .texto_error_precio_forzado {
    margin-bottom: 2%;
    font-size: 0.8em;
}

div.importes_finales.movil_visible {
    border: 1px solid #BCBFBB;
}

div.importes div.nombre,
div.importes_finales div.nombre {
    font-family: 'Roboto', sans-serif;
    color: #1AB394;
    /*letter-spacing: 1px;*/
    font-size: 1.5em;
    margin-bottom: 2%;
}

div.importes_finales div.precios {
    border-top: 1px solid rgba(38, 114, 5, 0.28);
    width: 95%;
    margin: 0 auto;
    padding: 2% 1%;
    /*background-color: rgba(38, 114, 5, 0.05);*/
    border-bottom-left-radius: 3px;
    border-bottom-right-radius: 3px;
}

div.importes div.precios div.total {
    font-weight: bold;
    color: #1AB394;
    margin-bottom: 2%;
}

div.importes_finales div.dto_portal,
div.importes_finales div.dto_propi,
div.importes_finales div.precios div.total {
    margin-bottom: 2%;
    font-weight: bold;
    font-size: 1.2em;
    padding: 0 5px;
}

div.importes_finales div.precios div.total {
    padding: 0;
}

div.importes_finales div.dto_portal,
div.importes_finales div.dto_propi {
    font-size: 1.09em;
    color: #1AB394;
    margin: 0 auto;
    padding: 0% 0% 2% 0%;
}

div.importes_finales div.dto_portal,
div.importes_finales div.dto_propi div.descr {
    color: #1AB394;
}

div.importes_finales div.precios span.rebajado {
    color: #7F7A7A;
    text-decoration: line-through;
    font-weight: normal;
    margin-right: 6px;
    font-style: italic;
}

div.importes div.listado_precios div.descr,
div.importes div.precios div.descr,
div.importes_finales div.precios div.descr {
    float: left;
    width: 60%;
}

div.importes div.listado_precios div.precio,
div.importes div.precios div.precio,
div.importes_finales div.precios div.precio {
    float: right;
}

div.importes_finales span.gris {
    color: #7B7575;
}

div.importes_finales div.nota {
    color: #7B7575;
    font-size: 0.9em;
    line-height: 18px;
}

div.importes div.precios div.pago_resto {
    margin-bottom: 2%;
}

div.importes div.precio_fianza{
    width: 95%;
    margin: 0 auto;
    padding: 0%;
    text-decoration: underline;
    margin-top: 0%;
}

div.importes div.precio_fianza div.descr {
    cursor: pointer;
}

div.importes div.precio_fianza a {
    color: #8C8A8A;
    text-decoration: none;
}

div.importes div.precio_fianza img {
    width: 7%;
    vertical-align: middle;
    cursor: pointer;
    margin-left: 2%;
    margin-top: -1%;
    display: inline-block;
}

div.importes div.precio_fianza div.desglose {
    margin-bottom: -3%;
}

div.importes div.precio_fianza div.precio {
    color: #8C8A8A;
}

div.importes div.listado_precios {
    width: 95%;
    margin: 0 auto;
    padding: 0 1%;
    border-top-left-radius: 3px;
    border-top-right-radius: 3px;
}

div.importes div.listado_precios div.precio_tachado {
    color: #1AB394;
    text-decoration: line-through;
}

div.importes div.listado_precios div.precio_dto {
    color: rgb(45, 189, 231);
    font-size: 1.2em;
    cursor: pointer;
}

div.importes div.listado_precios div.precio_dto div.descr {
    text-decoration: underline;
}

div.importes div.listado_precios div.precio_dto.sin_presel div.descr {
    text-decoration: none;
}

div.importes div.listado_precios h3 {
    margin: 0px;
    color: #1AB394;
}

div.importes div.desglose div.datos_tarifas {
    padding: 1%;
    margin: 1%;
}

div.importes div.desglose div.datos_tarifas div.nombre_tarifa {
    font-size: 1.2em;
}

div.importes div.desglose div.datos_tarifas div.precio_oferta {
    font-size: 1.2em;
    font-family: sans-serif;
    letter-spacing: 0;
}

div.enlaces {
    clear: left;
}

div.cargando_importes {
    width: 15%;
    margin: 2% auto;
}

div.cargando_importes img {
    width: 100%;
}

/************************************************/
/*        				Sliders      	        */
/************************************************/

div.imagenes {
    width: 100%;
    position: relative;
    height: 200px;
    margin-left: auto;
    margin-right: auto;
    z-index: 1;
}

.box div.imagenes a,
.box div.imagen a{
    display: block;
    width: 100%;
    height: 200px;
    position: relative;
}

div.imagenes img.controles {
    z-index: 9;
    position: relative;
    opacity: 0.6;
}

div.imagenes img.controles:hover {
    opacity: 0.9;
}

div.imagenes div.control.izquierda {
    text-align: left;
    position: relative;
    left: 0px;
    top: 63px;
}

div.imagenes div.control.izquierda img {
    width: 25px;
}

div.imagenes div.control.derecha {
    text-align: right;
    position: relative;
    /*left: 3px;*/
    top: 21px;
}

/*div.imagen div.control.izquierda img,*/
div.imagenes div.control.derecha img {
    width: 25px;
}

div.imagenes div.bx-wrapper {
    width: 100%;
    top: 0;
    position: absolute;
    left: 0;
    transition: all 0.3s;
}

div.imagenes div.bx-wrapper li {
    padding: 0;
    border-bottom: 0px solid white;
    top: -16px;
    max-width: 90%;
}

div.imagenes div.bx-wrapper img {
    width: 100%;
    height: 160px;
    cursor: pointer;
}

/************************************************/
/*         Formulario de disponibilidad         */
/************************************************/

div.formulario_dispo {
    margin: 0;
}

div.formulario_dispo div {
    width: 100%;
}

div.formulario_dispo div:nth-of-type(2) {
    margin: 5% 0;
}

div.formulario_dispo div:nth-of-type(3) {
    text-align: center;
}

div.formulario_dispo div input[type="tel"],
div.formulario_dispo div input[type="text"],
div.formulario_dispo div input[type="number"] {
    width: 100%;
}

/********************************************************************************/
/*           Bloques no disponibilidad y avisos de disponibilidad en otras 	    */
/********************************************************************************/

.noDisponibleBox,
.errorFechas,
.noDisponible {
    color: white;
    margin-top: 4%;
    padding: 2%;
    font-size: 0.9em;
    border-top: 2px solid #eb646a;
    background-color: #ee868b;
}

.restriccionForm,
.restriccion {
    /*color: white;*/
    margin-top: 4%;
    padding: 2%;
    font-size: 0.9em;
    border-top: 2px solid rgba(247, 105, 80, 1);
    background-color: rgba(247, 202, 189, 0.35);
    line-height: 18px;
}

.restriccionForm ul,
.restriccion ul {
    list-style: none;
    padding: 1%;
}

.restriccionForm ul li,
.restriccion ul li {
    padding-left: 13%;
}

.restriccionForm ul li.nombre,
.restriccion ul li.nombre {
    padding-left: 1%;
    list-style: none;
    margin-bottom: 2%;
}

.restriccionForm ul li.cumple,
.restriccion ul li.cumple {
    background: url('../img/ok_verde.png') no-repeat 6% center;
}

.restriccionForm ul li.no_cumple,
.restriccion ul li.no_cumple {
    background: url('../img/cross.png') no-repeat 6% center;
    background-size: 12px;
}

.otroResultado {
    color: white;
    margin-top: 4%;
    margin-bottom: 2%;
    border-top: 2px solid #EB8D64;
    background-color: #EEB586;
    padding: 2%;
    font-size: 0.9em;
    clear: left;
}

section#modal_adicionales h2 img {
    width: 30px;
    vertical-align: middle;
}

section#modal_adicionales img.antifraude {
    height: 15px;
    vertical-align: middle;
}

section#modal_contenido ul:not(.servicios-lista-modal) {
    padding: 0;
}

section#modal_contenido ul:not(.servicios-lista-modal) li {
    line-height: 22px;
    list-style: none;
    background: url('../img/codigo.png') no-repeat left top;
    background-size: 20px;
    padding-left: 30px;
    margin-top: 15px;
}

section#modal_contenido ul:not(.servicios-lista-modal) li span#cod_reserva {
    font-weight: bold;
    font-size: 1.1em;
}

section#modal_contenido ul:not(.servicios-lista-modal) li a {
    margin-left: 10px;
    cursor: pointer;
    text-decoration: underline;
}

section#modal_contenido ul:not(.servicios-lista-modal) li a:last-of-type {
    margin-left: 30%;
}

/* Servicios en modal */
section#modal_contenido ul.servicios-lista-modal {
    display: flex;
    flex-flow: column;
    list-style: none;
    padding: 0 15px;
}
section#modal_contenido ul.servicios-lista-modal li {
    margin-bottom: 6px;
    padding-left: 24px;
    background: url(../img/check-solid.svg) no-repeat left 1px;
    background-size: 17px 14px;
}

section#modal_contenido div.botones {
    float: right;
}

section#modal_contenido div.botones input.button {
    padding: 2px 5px;
    margin-right: 5px;
}

@media (min-width: 768px) {
    section#modal_contenido.modal-servicios .modal-inner {
        width: 850px;
    }
    section#modal_contenido ul.servicios-lista-modal {
        flex-flow: wrap;
    }
    section#modal_contenido ul.servicios-lista-modal li {
        width: 33.333333%;
        padding-right: 15px;
    }
}

/*********************************************************************/
/*            Resultado de la búsqueda - UNIDADES ALOJATIVAS         */
/*********************************************************************/

div.resultado.resultado_uas div.titulo {
    margin: 20px 0 10px 0;
    width: auto;
    /*float: left;*/
}

div.resultado {
    margin: 0;
    clear: left;
}

div.resultado div.titulo {
    width: 100%;
    margin: 0 0 4% 0;
}

div.resultado div.capacidad_max {
    width: 100%;
}

div.resultado div.capacidad_max {
    text-align: right;
    line-height: 36px;
    margin: 4% 0;
}

div.resultado div.capacidad_max div {
    width: auto;
    float: right;
}

div.resultado div.capacidad_max div:nth-of-type(2) {
    margin-right: 2%;
}

div.resultado div.unidades {
    background: #FFFFFF;
    font-size: 0.8em;
    float: left;
    width: 100%;
    margin-bottom: 2%;
}

.listado div.resultado div.unidades {
    float: left;
}

div.resultado div.unidades div.unidad {
    clear: both;
    padding: 10px;
    margin-bottom: 10px;
    box-shadow: rgba(0, 0, 0, .3) 0 1px 10px;
}

div.resultado div.unidades div.unidad.sinborder {
    border-bottom: 0px solid rgba(38, 114, 5, 0.28);
}

div.resultado div.unidades div.nombre {
    font-size: 1.2em;
    font-family: 'Roboto', sans-serif;
    color: #1AB394;
    letter-spacing: 0.8px;
    margin-bottom: 5px;
    font-weight: bold;
    width: auto;
    float: left;
    border-bottom: 1px solid #1ab394;
    width: 100%;+

}

div.resultado div.unidades div.nombre span.varias {
    font-size: 0.9em;
    font-weight: normal;
}

div.resultado div.unidades ul.caracteristicas {
    list-style: none;
    margin: 0;
    padding: 0;
    clear: right;
}

div.resultado div.unidades .caracteristicas li {
    float: left;
    width: auto;
    padding-left: 24px;
    padding-right: 4px;
    margin-right: 4px;
    background-size: 20px;
    background-repeat: no-repeat;
    background-position: left center;
    line-height: 20px;
    color: #ccc;
    border-right: 1px solid #ddd;
}

div.resultado div.unidades .caracteristicas li.superficie {
    padding-right: 0;
    margin-right: 0;
    padding-left: 0;
}

div.resultado div.unidades .caracteristicas li:last-child {
    border-right: none;
}

div.resultado div.unidades li.capacidad {
    background-image: url(../img/people.png);
}

div.resultado div.unidades li.dormitorios,
div.resultado div.unidades li.camas {
    background-image: url(../img/servicios/n_hab.png);
}

div.resultado div.unidades li.banos {
    background-image: url(../img/servicios/n_banos.png);
}

div.resultado div.unidades li.superficie {
    background-image: none;
    padding-left: 4px;
    top: -.35em;
    position: relative;
}

div.resultado div.unidades li.superficie span.superindice {
    vertical-align: super;
    font-size: .7em;
}

div.resultado div.unidades li.capacidad img {
    cursor: pointer;
    width: 15px;
    vertical-align: middle;
    margin-top: -4px;
}

div.resultado div.unidades .info-contenedor {
    margin-bottom: 10px;
}

div.resultado div.unidades .info-contenedor:after {
  content: "";
  display: block;
  clear: both;
}

div.resultado div.unidades div.image-wrapper {
    float: left;
    width: 30%;
    clear: left;
    padding-right: 5px;
}

div.resultado div.unidades div.imagen {
    width: 100%;
}

div.resultado div.unidades div.imagen a {
    position: relative;
    display: block;
}

div.resultado div.unidades div.image-wrapper .btn-virtualtour,
.box .btn-virtualtour {
  display: block;
  font-size: 13px;
  text-align: center;
  padding: 4px 10px;
  background-color: #009584;
  color: #fff;
}
.box .btn-virtualtour.oculto {
  display: none;
}
div.resultado div.unidades div.image-wrapper .btn-virtualtour img,
.box .btn-virtualtour img {
  display: inline-block;
  width: 30px;
  vertical-align: middle;
  margin-right: 4px;
  animation: in-out 2s infinite ease;
}
div.resultado div.unidades div.image-wrapper .btn-virtualtour span {
  display: inline-block;
}
.box .btn-virtualtour span {
  display: none;
}
div.resultado div.unidades div.image-wrapper .btn-virtualtour span.vt-txt-desktop {
  display: none;
}
.box .btn-virtualtour span.vt-txt-desktop {
  display: inline-block;
}
@media(min-width: 500px) {
  div.resultado div.unidades div.image-wrapper .btn-virtualtour span {
    display: none;
  }
  div.resultado div.unidades div.image-wrapper .btn-virtualtour span.vt-txt-desktop {
    display: inline-block;
  }
}

@keyframes in-out {
    0% {
        transform: scale(1);
    }
    50% {
    transform: scale(.6);
    }
    100% {
    transform: scale(1);
    }
}

div.resultado div.unidades div.image-wrapper .btn-virtualtour:hover,
div.resultado div.unidades div.image-wrapper .btn-virtualtour:active,
.box .btn-virtualtour:hover,
.box .btn-virtualtour:active {
  background-color: #11B3A2 !important;
  font-weight: 400;
  text-decoration: none;
}

div.resultado div.unidades div.imagen a::after,
.box div.imagenes_uas a::after {
    content: "";
    background: url(../img/full-size-icon.svg) center center no-repeat;
    background-size: 14px;
    width: 30px;
    height: 30px;
    background-color: rgba(0, 0, 0, .4);
    position: absolute;
    bottom: 0;
    right: 0;
    line-height: 100%;
    vertical-align: middle;
    transition: all 300ms ease-in-out;
}

.box div.imagenes_aloj a::after {
  content: "";
  background: url(../img/full-size-icon.svg) center center no-repeat;
  background-size: 14px;
  width: 30px;
  height: 30px;
  background-color: rgba(0, 0, 0, .4);
  position: absolute;
  top: 0;
  left: 0;
  line-height: 100%;
  vertical-align: middle;
  transition: all 300ms ease-in-out;
}

div.resultado div.unidades div.imagen a:hover::after,
.box div.imagenes_uas a:hover::after,
.box div.imagenes_aloj a:hover::after  {
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .2);
    background-size: 40px;
}

div.resultado div.unidades div.imagen img {
    width: 100%;
    object-fit: cover;
    display: block;
}

div.resultado div.unidades div.info {
    min-width: 30px;
    height: 20px;
    background: url(../img/info.png) no-repeat 100% center;
    float: right;
    background-size: 17px;
    clear: right;
    margin-bottom: 1%;
    cursor: pointer;
}

div.resultado div.unidades div.info-contenido {
    float: right;
    width: 70%;
    padding-left: 5px;
}

div.resultado div.unidades div.descripcion {
    color: rgba(137, 134, 134, 0.65);
    word-wrap: break-word;
}

div.resultado div.unidades div.descripcion a,
a.ver-descripcion {
    cursor: pointer;
    text-decoration: underline;
    color: #11B3A2;
    display: inline-block;
}

a.ver-descripcion {
    clear: both;
    display: block;
}

div.resultado div.unidades div.servicios {
    float: left;
    width: 100%;
    clear: both; /* Movemos iconos de amenities debajo de imagen */
}

div.resultado div.unidades div.servicios h2 {
    color: #555;
    font-size: 1.2em;
    margin: 5px 0;
}

div.resultado div.unidades div.servicios a {
    text-decoration: underline;
    color: #11B3A2;
    line-height: 20px;
}

div.resultado div.unidades div.servicios div.servicio {
    position: relative;
    float: left;
    width: 25px;
    margin-right: 1%;
    /*margin-bottom: 4%;*/
}

div.resultado div.unidades div.servicios div.servicio.numerico {
    width: 40px;
}

div.resultado div.unidades div.servicios img {
    width: 20px;
}

div.resultado div.unidades div.servicios label.numero {
    position: absolute;
    left: 17px;
    top: 8px;
    font-size: 0.9em;
    background-color: rgb(240, 239, 239);
    border-radius: 50px;
    border: 1px solid #ccc;
    padding: 0px 5px;
}

div.resultado div.unidades div.unidad.restricciones div.servicios div.servicio {
    margin-right: 0.3%;
}

div.resultado div.unidades div.unidad.sin_foto.restricciones div.servicios {
    /*width: 100%;*/
    max-width: 280px;
}

div.resultado div.unidades div.unidad.sin_foto.restricciones div.servicio:nth-of-type(6) {
    clear: none;
}

div.resultado div.unidades .precio-cta-container {
    float: right;
    clear: both;
    width: 100%;
    border-top: 1px solid #ccc;
    margin-top: 5px;
    padding-top: 10px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

div.resultado div.unidades div.precios {
    float: left;
    padding-right: 5px;
}

div.resultado div.unidades div.link-simple {
    clear: both;
    float: right;
}
div.resultado div.unidades div.link-simple a {
    color: #a1a463;
    text-decoration: underline;
    display: block;
    margin-bottom: 10px;
}
div.resultado div.unidades div.precio {
    color: #1AB394;
    font-family: 'arialregular', sans-serif;
    float: left;
    font-size: 1em;
    text-align: right;
    clear: right;
    margin-bottom: -4px;
}
div.resultado div.unidades div.precio.tachado {
    color: #999;
    font-size: .7em;
    line-height: 1;
    float: none;
}
div.resultado div.unidades div.precio .precio-importe,
div.resultado div.unidades div.precio .precio-moneda {
    font-weight: bold;
    font-family: 'arialbold', sans-serif;
}
div.resultado div.unidades div.precio .precio-importe {
    font-size: 2em;
}

div.resultado div.unidades div.precio_oferta {
    color: #B36346;
    font-family: 'Arial', 'Helvetica', sans-serif;
    float: right;
    clear: right;
}

div.resultado div.unidades div.tachado {
    font-size: 1.2em;
    text-decoration: line-through;
}

div.resultado div.unidades .trigger-tarifas-espe {
    float: right;
    clear: both;
}

div.resultado div.unidades div.boton_ofertas {
    /*background-color: rgb(45, 189, 231);*/
    background-color: #B36346;
    color: white;
    padding: 5px;
    margin-top: 1%;
    cursor: pointer;
    font-size: 0.9em;
}

div.resultado div.unidades div.restriccion_ua {
    float: left;
    width: 100%;
    /*margin-left: 2%;*/
    /*margin-top: 2%;*/
    /*clear: left;*/
    color: rgb(211, 101, 33);
    line-height: 18px;
}

div.resultado div.unidades div.restriccion_ua ul {
    padding-left: 2%;
    list-style: none;
}

div.resultado div.unidades div.restriccion_ua ul li {
    padding-left: 12%;
}

div.resultado div.unidades div.restriccion_ua ul li.nombre {
    padding-left: 1%;
}

div.resultado div.unidades div.restriccion_ua ul li.cumple {
    background: url('../img/ok_verde.png') no-repeat 6% center;
}

div.resultado div.unidades div.restriccion_ua ul li.no_cumple {
    background: url('../img/cross.png') no-repeat 6% center;
    background-size: 12px;
}

div.resultado div.unidades div.boton_reservar {
    float: right;
}

div.resultado div.unidades div.boton_reservar input[type="button"],
div.resultado div.unidades div.boton_reservar a.button,
div.resultado div.unidades div.boton_imagenes a.button,
.info-bubble-cta div.boton_reservar a.button {
    font-family: 'arialregular', sans-serif;
    font-weight: bold;
    font-size: 1.4em;
    letter-spacing: .1em;
    padding-left: 30px;
    padding-right: 30px;
    border-radius: 4px;
    display: block;
}

div.pico {
    background: rgba(228, 246, 252, 0.58) url('../img/pico.png') no-repeat center center;
    width: 24px;
    height: 18px;
    background-size: 100%;
    float: right;
    margin-right: 8%;
}

div.tarifas_especiales {
    clear: both;
    margin: 0 auto;
}

.unidad div.tarifas_especiales:before {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border-left: 14px solid transparent;
    border-right: 14px solid transparent;
    border-bottom: 14px solid rgba(255, 160, 125, .25);
    position: relative;
    right: 20px;
    top: -14px;
    float: right;
}

.multiples div.tarifas_especiales {
    float: left;
    width: 85%;
}

.box div.tarifas_especiales {
    width: 100%;
}

div.lado div.tarifas_especiales {
    padding: 0 15px 10px;
    background-color: rgba(255, 160, 125, .25);
    margin-top: 13px;
}

div.lado div.importes_finales.movil_visible div.tarifas_especiales {
    background-color: transparent;
    box-shadow: 0px 0px 0px #CCC;
}

div.lado div.todoPaquetes div.tarifas_especiales {
    background-color: transparent;
    box-shadow: 0px 0px 0px #CCC;
}

div.tarifas_especiales div.subtitulo {
    border-bottom: 1px dotted #ccc;
    margin-bottom: 2%;
    font-size: 1.3em;
}

div.tarifas_especiales div.tarifa {
    margin-bottom: 3%;
}

div.tarifas_especiales div.nombre_tarifa {
    float: left;
    clear: left;
    color: rgba(124, 113, 113, 0.86);
    /*font-weight: bold;*/
    line-height: 20px;
    margin-bottom: 2%;
    width: 61%;
}

div.tarifas_especiales div.descripcion {
    color: rgba(137, 134, 134, 0.65);
}

div.tarifas_especiales div.reem {
    float: right;
    margin-bottom: 2%;
    clear: right;
}

div.tarifas_especiales div.nombre_tarifa:last-of-type {
    width: 100%;
    margin-bottom: 0%;
}

div.tarifas_especiales div.nombre_tarifa img {
    /*float: right;*/
    width: 15px;
    margin-left: 2%;
    display: inline;
    /*margin-top: 1.3%;*/
    cursor: pointer;
    vertical-align: middle;
}

div.resultado div.unidades div.tarifas {
    width: 100%;
    margin: 0 auto;
    clear: both;
}

div.tarifas_especiales div.precio_oferta {
    font-size: 1.3em;
    /*width: 30%;*/
    text-align: right;
}

div.datos_tarifas.formulario div.nombre_tarifa {
    width: 80%;
}

div.datos_tarifas.formulario div.nombre_tarifa:last-of-type {
    width: 100%;
}

div.tarifas label {
    cursor: pointer;
}

div.tarifas_especiales span.reem {
    /*float: right;*/
    background: transparent url(../img/exclamation_naranja.png) no-repeat 0% center;
    background-size: 15px;
    margin-left: 10px;
    padding-left: 15px;
    font-weight: normal;
    /*color: rgba(137, 134, 134, 0.65);*/
    opacity: 0.7;
    margin-top: 3px;
}

div.todoPaquetes div.tarifas_especiales div.reem {
    margin-bottom: 0%;
}

div.datos_tarifas.todoPaquetes span.reem {
    margin-bottom: 0%;
}

div.todoPaquetes div.tarifas_especiales div.tarifa {
    margin-bottom: 1%;
}

/*************************************************************************/
/*            Resultado - unidades alojativas - RESERVA MÚLTIPLE         */
/*************************************************************************/

div.resultado.multiples div.cantidad_sub {
    text-align: center;
    margin: 2% auto 2% 80%;
    width: 20%;
}

div.resultado.multiples div.capacidad_max {
    text-align: left;
    margin: 2% 0;
    clear: left;
}

div.resultado.multiples div.capacidad_max div {
    float: left;
}

div.resultado div.capacidad_max div.subtitulo {
    margin-right: 2%;
    color: #989696;
    font-size: 0.9em;
    clear: none;
}

div.resultado div.capacidad_max select {
    padding: 3px;
    font-size: 0.8em;
}

div.resultado.multiples div.unidades div.izquierda {
    width: 85%;
    float: left;
    border-right: 1px solid rgba(38, 114, 5, 0.28);
    padding-right: 2%;
}

div.resultado.multiples div.unidades div.derecha {
    width: 12%;
    float: left;
}

div.resultado.multiples div.unidades div.derecha div.cantidad {
    text-align: center;
}

div.resultado.multiples div.unidades div.derecha select {
    padding: 6px 3px;
}

div.resultado.multiples div.unidades div.servicios {
    width: 58%;
    max-width: 205px;
}

div.resultado.multiples div.unidades div.unidad.sin_foto div.servicios {
    width: 100%;
    max-width: 225px;
}

div.resultado.multiples div.unidades div.unidad.sin_foto div.servicios div.servicio:nth-of-type(5) {
    clear: none;
}

div.resultado.multiples div.unidades.restricciones div.servicios {
    width: 100%;
    max-width: 158px;
}

div.btn_multiples,
div.boton_reserva_final,
div.cargando_boton_final {
    clear: left;
    text-align: center;
    margin-top: 6%;
    font-size: 1.1em;
    width: 100%;
}

div.cargando_boton_final {
    margin: 6% 46%;
}

div.btn_multiples input[type="button"],
div.boton_reserva_final input[type="button"] {
    font-family: 'Roboto', sans-serif;
    /*font-weight: bold;*/
    letter-spacing: 1px;
}

div.cargando_boton_final img {
    width: 10%;
}

div.resultado div.unidades div.especiales {
    clear: both;
    padding-top: 1px;
    margin-bottom: 5px;
}

div.resultado.multiples div.unidades div.especiales {
    float: left;
    width: 100%;
    margin-top: 1%;
}

div.resultado.multiples div.unidades div.especiales div.pico {
    margin-right: 26%;
}

div.resultado.multiples div.unidades div.tarifas_especiales {
    padding: 3% 0 0% 0;
}

/***************************************************************************/
/*              					FORMULARIO              			   */
/***************************************************************************/

form {
    margin-bottom: 25px;
}

/************************************************/
/*              Datos de viajero                */
/************************************************/

div.datos_viajero {
    padding: 2%;
    border: 1px solid rgba(121, 111, 111, 0.77);
}

.payment-form div.datos_viajero {
    margin: 0 0 20px 0; /* Añadimos margin a la parte inferior */
}

div.datos_viajero div.datos {
    width: 95%;
    margin: 0 auto;
}

div.titulo.formulario {
    margin-bottom: 0%;
    /*border-bottom: 1px solid rgba(121, 111, 111, 0.77);*/
}

div.datos_tarifas div.titulo.formulario div.editar_tarifas,
div.datos_extras div.titulo.formulario div.editar_extras,
div.datos_viajero div.titulo.formulario div.editar_viajero,
div.datos_pago div.titulo.formulario div.editar_pago {
    float: right;
    font-size: 0.8em;
    color: #6798d8;
    text-decoration: underline;
    cursor: pointer;
    font-weight: normal;
    margin-bottom: 0px;
}

.titulo.formulario {
    cursor: pointer;
}

div.resultado_formulario div.titulo.formulario {
    /*margin-bottom: 2%;*/
    border-bottom: 1px solid rgba(121, 111, 111, 0.77);
    font-size: 1em;
}

div.datos_viajero div:not(.comentarios_propi) {
    margin-bottom: 2%;
}

div.datos_viajero div.titulo {
    font-size: 1em;
    margin-bottom: 0%;
}

div.datos_viajero input {
    width: 100%;
    padding-right: 27px;
}

div.datos_viajero input.corto {
    width: 100%; /* forzamos los campos opcionales cortos a 100% */
}

div.datos_viajero input.nombre {
    background: #FFF url("../img/people2.png") no-repeat 98% 55%;
    background-size: 15px;
}

div.datos_viajero input.email {
    background: #FFF url("../img/email.png") no-repeat 98% 52%;
    background-size: 18px;
}

div.datos_viajero input.telefono {
    background: #FFF url("../img/telefono.png") no-repeat 98% 55%;
    background-size: 18px;
}

div.datos_viajero textarea {
    background: #FFF url("../img/chat.png") no-repeat 99% 3%;
    background-size: 24px;
    padding-right: 50px;
    width: 100%;
    min-height: 100px;
}

div.datos_viajero label.check {
    margin-left: 4%;
    cursor: pointer;
    font-size: 0.85em;
}

div.datos_viajero div.viajero_expandidos {
    margin-top: 4%;
}

div.datos_viajero div.titulo {
    color: #1AB394;
    font-weight: bold;
    font-size: 1.1em;
}

div.datos_viajero div.condiciones {
    width: 100% !important;
    margin: 0% 6% 2% 0% !important;
}

div.datos_viajero div.cargando_paso_3 {
    width: 10% !important;
    margin: 0 auto;
}

div.datos_viajero div.datos div.politica_cancelaciones,
div.datos_viajero div.datos div.normas_casa {
    width: 97% !important;
    margin: 0 auto 3% auto;
}

div.datos_viajero div.datos div.politica_cancelaciones div,
div.datos_viajero div.datos div.normas_casa div {
    width: 97% !important;
    margin: 0 auto 3% auto;
}

div.datos_viajero div.datos div.politica_cancelaciones div.titulo,
div.datos_viajero div.datos div.normas_casa div.titulo {
    width: 90% !important;
    font-size: 1.2em;
}

div.datos_viajero div.datos div.normas_casa div.titulo.titulo_pagos {
    width: 100% !important;
}

div.datos_viajero div.datos div.politica_cancelaciones div.cerrar,
div.datos_viajero div.datos div.normas_casa div.cerrar {
    width: 5% !important;
    text-align: right;
}

div.datos_viajero div.datos div.politica_cancelaciones div.texto,
div.datos_viajero div.datos div.normas_casa div.texto {
    margin-bottom: 0px;
}

div.datos_viajero div.datos div.politica_cancelaciones div.texto,
div.datos_viajero div.datos div.politica_cancelaciones div.subtitulo {
    font-size: 1.1em;
}

div.datos_viajero div.datos div.normas_casa div.texto,
div.datos_viajero div.datos div.normas_casa div.subtitulo {
    font-size: 1em;
}

/***************************************************************************/
/*              Datos de las unidades a reservar (multiples)               */
/***************************************************************************/

div.unidades_seleccionadas {
    background: #FFFFFF;
    padding: 0 2%;
    font-size: 0.8em;
    margin: 1% 3%;
}

div.unidades_seleccionadas.vacio {
    margin: 0 !important;
}

div.unidad_seleccionada {
    clear: left;
    border-bottom: 2px dotted rgba(38, 114, 5, 0.28);
    padding-top: 2%;
    padding-bottom: 2%;
}

div.unidades_seleccionadas div.unidad_seleccionada:last-of-type {
    border-bottom: 0px solid rgba(38, 114, 5, 0.28);
}

div.unidad_seleccionada div.izquierda {
    float: left;
    width: 35%;
    clear: left;
    margin-right: 3%;
}

div.unidad_seleccionada div.izquierda div.imagen img {
    width: 100%;
}

div.unidad_seleccionada div.derecha {
    float: left;
    width: 60%;
}

div.unidad_seleccionada div.derecha.sin_foto {
    width: 100%;
}

div.unidad_seleccionada div.derecha div.precio_final {
    float: right;
    font-family: 'Arial', 'Helvetica', sans-serif;
    font-size: 1.4em;
    letter-spacing: 1px;
    color: #1AB394;
}

div.unidad_seleccionada div.nombre {
    font-size: 1.2em;
    font-family: 'Roboto', sans-serif;
    color: #1AB394;
    /*letter-spacing: 1.1px;*/
    margin-bottom: 1%;
    font-weight: bold;
    width: auto;
    float: left;
}

/***************************************************************************/
/*              					CAPACIDAD               			   */
/***************************************************************************/

div.adicionales {
    padding: 2%;
    margin: 4% 5% 5% 5%;
    clear: left;
    line-height: 35px;
}

div.adicionales div:not(.titulo) {
    float: left;
    margin-top: 5%;
}

div.adicionales div.minima {
    clear: left;
}

div.adicionales div.select_capacidad {
    margin-left: 10px;
}

div.adicionales select {
    max-width: 158px;
}

div.adicionales div.info_ocupacion {
    background: transparent url("../img/people.png") no-repeat 0% 52%;
    background-size: 22px;
    padding-left: 27px;
    color: #615C5C;
}

div.adicionales div.info_ocupacion img {
    width: 15px;
    vertical-align: middle;
    margin-top: -2px;
}

div.adicionales div.info_ocupacion {
    font-size: 0.8em;
}

div.adicionales div:not(.titulo) {
    font-size: 0.85em;
}

/*
	div.unidad_seleccionada  div.adicionales{
		background: transparent url("../img/people.png") no-repeat 1% 60%;
		background-size: 20px;
		padding: 0;
		margin: 0;
		padding-left: 27px;
		}*/
/*div.unidad_seleccionada div.derecha.sin_foto div.adicionales{
		background: transparent url("../img/people.png") no-repeat 1% 65%;
		background-size: 20px;
		padding-left: 27px;
		}*/
div.unidad_seleccionada div.adicionales select {
    max-width: 55px;
    padding: 2px 2px 2px 6px;
}

div.unidad_seleccionada div.derecha.sin_foto div.adicionales select {
    max-width: 100px;
}

.multiples div.adicionales {
    margin: 6% 5% 0% 5%;
}

/***************************************************************************/
/*         				BOTONES SELECCIONAR Y CONTINUAR            		   */
/***************************************************************************/

.button.boton_continuar {
    width: 87% !important;
    margin: 0 auto 2% auto !important;
    float: none !important;
    text-align: center !important;
    clear: left;
    float: left;
}

/***************************************************************************/
/*              					EXTRAS	                			   */
/***************************************************************************/

div.datos_extras {
    padding: 2%;
    margin: 6% 5% 5% 5%;
    clear: left;
    border: 1px solid rgba(121, 111, 111, 0.77);
}

div.datos_extras div.extras {
    width: 95%;
    margin: 0 auto;
}

div.datos_extras div.titulo.expand_extras {
    border-bottom: 0px solid black;
    color: #1AB394;
    font-weight: bold;
    font-size: 1.1em;
}

div.datos_extras div.subtitulo {
    font-size: 1.2em;
    margin: 2% 0 4% 0;
}

div.datos_extras div.subtitulo:not(.obligatorio) {
    border-bottom: 1px solid #11B3A2;
    padding-top: 0.1em;
    font-size: 1em;
    cursor: pointer;
    background: rgba(204, 204, 204, 0.19) url("../img/arrow-right2.png") no-repeat 1% center;
    background-size: 16px;
    padding-left: 7%;
    border-top-left-radius: 3px;
    border-top-right-radius: 3px;
}

div.datos_extras div.subtitulo:not(.obligatorio):hover {
    opacity: 0.7;
}

div.datos_extras div.subtitulo.bajo {
    background: rgba(204, 204, 204, 0.19) url("../img/arrow-down2.png") no-repeat 1% center;
    background-size: 16px;
    border-bottom: 1px dotted rgba(126, 47, 205, 0.75);
}

div.datos_extras div.extras {
    width: 95%;
    margin: 0 auto;
    font-size: 0.95em;
}

div.datos_extras div.extras div:not(.subtitulo) {
    padding-left: 0.8%;
}

div.datos_extras div.extras div.extra {
    margin: 2% 0 3% 0;
    line-height: 22px;
}

div.datos_extras div.extras div.extra div.nombre_extra {
    float: left;
    width: 100%;
}

div.datos_extras div.extras div.extra div.precio_extra {
    float: left;
    clear: both;
    padding-left: 9%;
    margin: 1% 0 2% 0;
    font-family: 'Arial', 'Helvetica', sans-serif;
    color: #1AB394;
    letter-spacing: 1px;
    font-size: 1em;
}

div.datos_extras div.extras div.extra div.personas {
    float: left;
    clear: both;
    padding-left: 9%;
    font-size: 0.9em;
}

div.datos_extras div.extras div.extra div.personas select {
    padding: 2px 4px;
}

div.datos_extras div.extras div.extra img {
    width: 16px;
    vertical-align: middle;
    margin-left: 2%;
}

div.datos_extras div.extras div.extra img.peque {
    width: 12px;
    margin-left: 0;
    /*margin-top: 3px;*/
}

div.datos_extras div.extras div.extra label {
    /*width: 6%;*/
    vertical-align: middle;
    margin-left: 2%;
    color: rgba(124, 113, 113, 0.86);
    cursor: pointer;
}

div.datos_extras div.extras div.extra label span {
    font-size: 0.85em;
}

div.unidad_seleccionada div.datos_extras {
    margin: 0;
}

div.datos_extras div.extras_expandidos {
    margin-top: 2%;
}

/************************************************/
/*     			 Tarifas especiales  		    */
/************************************************/

div.resultado_formulario div.datos_tarifas.vaciar_formulario {
    padding: 2%;
    /*margin: 6% 5% 5% 5%;*/
    width: auto;
}

div.resultado_formulario div.datos_tarifas.vaciar_formulario div.tarifas_especiales {
    margin-top: 0;
    font-size: 0.9em;
    width: 90%;
    margin: 0 auto;
    float: none;
}

div.resultado_formulario div.datos_tarifas.vaciar_formulario {
    padding: 2%;
    border: 1px solid rgba(121, 111, 111, 0.77);
}

div.resultado_formulario div.resultado_formulario div.datos_tarifas.vaciar_formulario div.titulo.formulario {
    margin-bottom: 4%;
}

div.resultado_formulario div.titulo.formulario.expand_especiales {
    border-bottom: 0px solid black;
    color: #1AB394;
    font-weight: bold;
    font-size: 1.1em;
}

div.resultado_formulario div.datos_tarifas.vaciar_formulario div.tarifas_especiales div.precio_oferta {
    font-family: 'Arial', 'Helvetica', sans-serif;
    color: rgb(45, 189, 231);
    letter-spacing: 1px;
    font-size: 1.4em;
}

div.resultado_formulario div.datos_tarifas.vaciar_formulario div.tarifas_especiales div.nombre_tarifa img {
    vertical-align: middle;
    margin-top: -1%;
}

div.unidad_seleccionada div.datos_tarifas.vaciar_formulario {
    padding: 2%;
    border: 1px solid rgba(121, 111, 111, 0.77);
}

div.unidad_seleccionada div.datos_tarifas.vaciar_formulario div.tarifas_especiales {
    font-size: 0.9em;
}

div.datos_tarifas.vaciar_formulario div.tarifas_especiales label {
    cursor: pointer;
}

div.unidad_seleccionada div.boton_ofertas {
    float: right;
    cursor: pointer;
    background-color: rgb(45, 189, 231);
    color: white;
    padding: 0.6% 2%;
    margin-top: 3%;
    clear: both;
}

div.resultado_formulario div.datos_tarifas.vaciar_formulario div.tarifas_especiales {
    margin-top: 2%;
}


/************************************************/
/*              	Datos de pago               */
/************************************************/

div.datos_pago {
    padding: 2%;
    margin: 6% 5% 5% 5%;
    border: 1px solid rgba(121, 111, 111, 0.77);
}

div.datos_pago div.titulo {
    margin-bottom: 1%;
    font-size: 1em;
    border-bottom: 0px;
}

div.datos_pago div.datos {
    width: 95%;
    margin: 0 auto;
    font-size: 0.9em;
}

div.datos_pago div.datos label {
    margin-left: 2%;
    cursor: pointer;
}

div.datos_pago div.nombre {
    float: left;
    clear: left;
    margin-top: 4%;
    width: 65%;
}

div.datos_pago div.nombre i {
    margin-right: 5px;
}

div.datos_pago div.imagen {
    float: right;
    clear: right;
    margin-top: 2%;
}

div.datos_pago div.imagen img.tranfer {
    width: 90%;
}

div.datos_pago div.pago_tarjeta.dos_pasos,
div.datos_pago div.pago_transferencia.dos_pasos {
    float: left;
    width: 100%;
}

div.datos_pago div.pago_transferencia.dos_pasos {
    margin-bottom: 4%;
}

div.datos_pago div.pago_tajeta.dos_pasos div.imagen,
div.datos_pago div.pago_transferencia.dos_pasos div.imagen {
    width: 32%;
    float: right;
    clear: right;
    margin-top: 0px;
    text-align: right;
}

div.datos_pago div.pago_tajeta.dos_pasos div.imagen img,
div.datos_pago div.pago_transferencia.dos_pasos div.imagen img {
    width: auto;
}

.salto_pago .box:not(.new_box) .importes_finales,
.completar_pago .box:not(.new_box) .importes_finales {
    padding: 0%;
}

div.datos_pago div.titulo {
    color: #1AB394;
    font-weight: bold;
    font-size: 1.1em;
    margin-bottom: 0px;
}

div.datos_pago div.formulario_pago {
    float: left;
    width: 93%;
    margin-top: 2%;
    background: rgba(229, 228, 228, 0.41);
    padding: 4%;
    font-size: 0.98em;
}

div.datos_pago div.formulario_pago label {
    margin-left: 0%;
    width: 100%;
    display: block;
}

div.datos_pago div.formulario_pago div {
    margin-bottom: 5%;
    width: 100%;
    float: left;
    clear: left;
}

div.datos_pago div.formulario_pago input {
    width: 100%;
}

div.datos_pago div.formulario_pago div.caducidad select {
    width: 46%;
    padding: 7px 6px;
    margin-right: 5px;
}

div.datos_pago div.formulario_pago div.caducidad select.anioTarj {
    margin-left: 1.4%;
    margin-right: 0px;
}

div.datos_pago div.formulario_pago div.cvc {
    margin-bottom: 0%;
}

div.datos_pago div.formulario_pago div.cvc input {
    width: 46%;
}

div.datos_pago div.formulario_pago div.cvc img {
    width: 50px;
    vertical-align: top;
}

div.datos_pago div.formulario_pago div.cvc img.info_cvc {
    width: 16px;
    display: inline-block;
    vertical-align: middle;
}

div.datos_pago div.formulario_pago span.obligatorio {
    color: red;
}

div.datos_pago div.formulario_pago div.error_paytpv {
    color: red;
    font-size: 0.9em;
    margin-top: 1%;
}

div.datos_pago div.pago_expandidos div.explicacion {
    margin: 6% auto 4% auto;
    text-align: justify;
    font-size: 0.89em;
    line-height: 18px;
}

div.datos_pago div.pago_expandidos div.explicacion i {
    margin-right: 1%;
    display: inline-block;
}

div.datos_pago div.pago_expandidos div.explicacion label {
    margin-left: 0px;
}

div.datos_pago div.pago_expandidos div.izquierda {
    float: left;
    width: 100%;
}

div.datos_pago div.pago_expandidos div.izquierda div.importes_finales {
    margin: 0px;
    background: transparent;
    font-size: 0.9em;
    font-weight: bold;
    line-height: 20px;
}

div.datos_pago div.pago_expandidos div.izquierda div.importes_finales div.anticipo {
    border-bottom: 1px solid #bbbaba;
    padding-bottom: 2%;
}

div.datos_pago div.pago_expandidos div.izquierda div.importes_finales div.descr {
    float: left;
    width: 75%;
    margin-bottom: 0%;
}

div.datos_pago div.pago_expandidos div.izquierda div.importes_finales div.precio {
    float: right;
    clear: none;
    width: 25%;
    text-align: right;
    font-size: 1.15em;
    margin-bottom: 0%;
}

div.datos_pago div.pago_expandidos div.pie {
    margin-bottom: 0px;
    padding-top: 2%;
    border-top: 1px solid #bbbaba;
    line-height: 16px;
    font-size: 0.9em;
}

div.datos_pago div.pago_expandidos div.pie span.seguro {
    color: green;
}

/************************************************/
/*            		 Box importes     	        */
/************************************************/

div.importes_finales {
    background: #FFFFFF;
    color: #000000;
    padding: 2%;
    margin: 20px 10px 15px;
    font-size: 0.8em;
}

div.importes_finales div.precios {
    border-top: 1px solid rgba(38, 114, 5, 0.28);
    width: 100%;
    margin: 0 auto;
    padding: 10px 0px 0;
    /*background-color: rgba(38, 114, 5, 0.05);*/
    border-bottom-left-radius: 3px;
    border-bottom-right-radius: 3px;
}

div.importes_finales div.precios.sin_est {
    border-top: 0px solid rgba(38, 114, 5, 0.28);
}

div.importes_finales div.precios div.anticipo {
    /*font-weight: bold;*/
    /*color:#1AB394;*/
    margin-bottom: 2%;
}

div.importes_finales div.precios div.anticipo div.precio {
    font-weight: bold;
}

div.importes_finales div.precios label.pagar_todo {
    font-weight: normal;
    text-decoration: underline;
    cursor: pointer;
    color: #1AB394;
    font-size: 0.95em;
}

div.importes_finales div.descr {
    float: left;
    width: 75%;
}

div.importes_finales div.precio {
    float: right;
}

div.importes_finales div.precios div.pago_resto {
    margin-bottom: 2%;
}

div.importes_finales div.desglose {
    padding: 2% 0%;
    border-top-left-radius: 3px;
    border-top-right-radius: 3px;
}

div.importes_finales div.desglose div {
    line-height: 25px;
}

div.importes_finales.imp_fianza div.desglose {
    padding: 0 10px;
    margin-bottom: -9px;
}

div.importes div.precio_fianza {
    width: 100%;
    padding: 0 5px;
}

div.importes_finales div.precio_tachado {
    text-decoration: line-through;
}

div.importes_finales div.precio_dto img {
    width: 20px;
    vertical-align: middle;
}

div.importes_finales div.desglose div.precio_dto {
    /*font-size: 1.2em;*/
    cursor: pointer;
    color: rgb(45, 189, 231);
}

div.importes_finales div.desglose div.precio_dto div.descr {
    text-decoration: underline;
}

div.importes_finales div.desglose div.precio_dto.paquetes {
    cursor: auto;
}

div.importes_finales div.desglose div.precio_dto.paquetes div.descr {
    text-decoration: none;
}

div.importes_finales div.desglose div.datos_tarifas {
    padding: 1% 3%;
    margin: 0% 0% 2% 0;
    background-color: rgba(228, 246, 252, 0.58);
}

div.importes_finales div.desglose div.datos_tarifas div.nombre_tarifa {
    font-size: 1em;
    width: 75%;
}

div.importes_finales div.desglose div.datos_tarifas div.nombre_tarifa label {
    cursor: pointer;
}

div.importes_finales div.desglose div.datos_tarifas div.precio_oferta {
    font-size: 1em;
    font-family: sans-serif;
    /*font-family: Tahoma, Arial, Verdana, sans-serif;*/
    letter-spacing: 0;
    color: rgb(45, 189, 231);
}

div.importes_finales {
    clear: left;
    /*	position: absolute;
	bottom: 45px;*/
}

div.sel_multi div.listado_precios div.descr {
    width: 100%;
}

div.importes_finales.importes_resumen {
    margin: 0 0 0 -10px;
    background: #11B3A2;
    padding: 2% 2% 0% 2% !important;
    width: calc(100% + 20px);
    color: white;
    font-size: 1em;
    font-weight: bold;
}

div.importes_finales.importes_resumen.detalles_expand {
    text-align: center;
    width: calc(100% + 20px);
    padding: 0% 2% 2% 2% !important;
}

div.importes_finales.importes_resumen.detalles_expand i {
    margin-right: 3%;
}

div.importes_finales.importes_resumen label.detalles_precio {
    /*margin-left: 5%;*/
    font-size: 0.8em;
    text-decoration: underline;
    cursor: pointer;
    font-weight: normal;
    color: #ecebeb;
}

div.importes_finales.importes_resumen label.detalles_precio i {
    text-decoration: none;
}

div.importes_finales.importes_resumen.importe_fianza {
    padding: 0px !important;
    margin: 0%;
    width: 100%;
    font-weight: normal;
    color: #ecebeb;
}

div.importes_finales.importes_resumen.importe_fianza div.desglose {
    margin: 1% 0% 0% 0%;
    padding: 0%;
    width: 100%;
}

div.importes_finales.importes_resumen.importe_fianza div.precio_fianza a {
    cursor: pointer;
    font-size: 0.8em;
    font-weight: normal;
    text-decoration: underline;
    color: #ecebeb;
}

div.importes_totales.movil_visible div.precio_fianza a i,
div.importes_finales.importes_resumen.importe_fianza div.precio_fianza a i {
    font-size: 1.2em;
    margin-left: 2%;
    margin-top: 2%;
}

div.importes_finales.importes_resumen div.anticipo {
    margin-bottom: 2%;
    border-bottom: 1px solid #a9e091;
    padding-bottom: 2%;
    font-size: 0.8em;
}

div.importes_finales.fianza_dentro {
    margin: -3% auto 0% auto;
    width: 87%;
}

div.importes_totales.oculta_expand {
    text-align: center;
    padding: 0% 2% 2% 2% !important;
    margin-top: 2%;
}

div.importes_totales.oculta_expand label {
    text-decoration: underline;
    cursor: pointer;
    margin: 0%;
}

div.importes_totales.oculta_expand label i {
    margin-right: 2%;
    text-decoration: none;
}

div.cupon_dto {
    border-top: 1px dashed #11B3A2;
    padding: 3% 1% 1% 1%;
    margin-top: 2%;
}

div.cupon_dto a,
div.cupon_dto label {
    font-size: 12px;
}

div.cupon_dto #cupon_descuento_text {
    margin: 1% 0;
}

div.cupon_dto #btn_cupon_descuento,
div.cupon_dto #delete_cupon {
    margin: 0 5%;
}

/************************************************/
/*          		Condiciones                 */
/************************************************/

div.condiciones {
    padding: 2%;
    margin: 6% 2% 5% 2%;
    font-size: 0.85em;
}

div.condiciones label {
    cursor: pointer;
    font-size: 1em !important;
}

div.condiciones label:not(.todo) {
    color: #11B3A2;
    font-weight: bold;
    font-size: 0.9em;
    text-decoration: underline;
}

div.condiciones a {
    color: #11B3A2;
    font-weight: bold;
    text-decoration: underline;
}

div.normas_casa,
div.politica_cancelaciones {
    /*color: #11B3A2;*/
    /*font-weight: bold;*/
    font-size: 0.8em;
    padding: 2%;
    margin: 6% 4% 5% 4%;
    background: #FFFFFF;
    line-height: 20px;
    border: 1px solid #11B3A2;
}

div.normas_casa div,
div.politica_cancelaciones div {
    text-align: justify;
}

div.normas_casa div.titulo,
div.politica_cancelaciones div.titulo {
    color: #1AB394;
    border-bottom: 1px solid #11B3A2;
    font-size: 1.2em;
    margin-bottom: 1.5%;
    width: 95%;
    float: left;
}

div.normas_casa div.cerrar,
div.politica_cancelaciones div.cerrar {
    float: right;
    padding: 0 1%;
    color: #1AB394;
    cursor: pointer;
}

div.normas_casa div.texto,
div.politica_cancelaciones div.texto {
    padding: 1% 2%;
}

div.normas_casa label {
    font-weight: bold;
}

div.politica_cancelaciones div.forzada {
    font-weight: bold;
}

/* Política y normas dentro de modal (sobreescribe estilos por si se comparten en otro punto del flujo) */
.modal-content div.normas_casa, .modal-content div.politica_cancelaciones {
  font-size: 1em;
  padding: 0;
  margin: 0;
  background: #FFFFFF;
  line-height: 20px;
  border: none;
}

/************************************************/
/*       		Completar pago                  */
/************************************************/

.completar_pago div.box:not(.new_box) div.importes_finales div.precios {
    border-top: 0px solid white;
}

.completar_pago div.boton_reservar {
    text-align: center;
    margin-top: 5%;
    margin-bottom: 5%;
    clear: left;
}

.completar_pago div.box span.nombre_ua {
    font-size: 0.8em;
}

.completar_pago div.error {
    margin: 2% auto;
    font-size: 0.87em;
    background: #FFF;
    padding: 4%;
}

.completar_pago .resumen_reserva .titulo {
    border-bottom: 1px solid rgba(121, 111, 111, 0.77);
}

/************************************************/
/*       			Salto al pago               */
/************************************************/

.box.movil_visible
.salto_pago div.importes_finales div.precios {
    border-top: 0px solid white;
}

div.payment {
    clear: left;
    text-align: center;
    background: white;
    width: 99%;
    /*padding: 1%;*/
    border-bottom-left-radius: 3px;
    border-bottom-right-radius: 3px;
    padding-top: 4%;
    float: left;
}

.salto_pago div.pago_seguro {
    float: left;
    background: white;
    width: 93%;
    padding: 3%;
    border-top-left-radius: 3px;
    border-top-right-radius: 3px;
    padding-bottom: 2%;
    border-bottom: 1px dotted #11B3A2;
}

.salto_pago .payment-form div.pago_seguro {
    display: flex;
    flex-flow: row wrap;
    align-items: center;
}

.salto_pago div.pago_seguro img.candado {
    height: 20px;
    vertical-align: top;
}

.salto_pago .payment-form div.pago_seguro img.candado {
    display: block;
    margin-right: 6px;
}

.salto_pago .payment-form div.pago_seguro span {
   width: calc(100% - 14px - 6px - 110px); /* El 100% menos 14px de la imagen del candado, 6px de margin-right del candado y 110px de las imágenes de Visa y Mastercard*/
}

.salto_pago div.pago_seguro div.derecha {
    float: right;
}

.salto_pago div.pago_seguro div.derecha img {
    width: 110px;
}

.salto_pago div.subtitulo,
div.text_explicativo_psd2 {
    font-size: 0.9em;
}

.salto_pago_av div.pago_seguro {
    margin-bottom: 4%;
}

.salto_pago div.box:not(.new_box) div.gen_form div.fecha,
.completar_pago div.box:not(.new_box) div.gen_form div.fecha,
.completar_pago div.box div.gen_form div.noches,
.salto_pago div.box div.capacidad_completo,
.completar_pago div.box div.capacidad_completo,
.salto_pago div.box div.gen_form div.noches {
    cursor: default;
    /*font-size: 0.85em;*/
}

.salto_pago div.box div.gen_form div.fecha {
    text-decoration: none;
}

.salto_pago div.box.telf {
    margin-top: 2%;
    line-height: 25px;
}

.salto_pago div.box.telf span.id {
    color: black;
}

.salto_pago div.box.telf div {
    margin: 0 0 2% 2%;
}

.salto_pago div.box.telf div.nombre {
    display: block;
    font-size: 1em;
    margin: 2% 0 2% 2%;
}

.salto_pago div.box.telf div.horas,
.salto_pago div.box.telf div.sub_nombre {
    width: 80%;
    float: left;
    font-size: 0.9em;
    margin-bottom: 2%;

}

.salto_pago div.box.telf div.sub_nombre {
    margin-top: 3%;
}

.salto_pago div.box.telf img, div.bloque_cv.telf img {
    width: 16px;
    vertical-align: middle;
    margin-right: 2%;
}

.salto_pago div.box div.capacidad_completo,
.completar_pago div.box div.capacidad_completo {
    background: url(../img/people.png) no-repeat 1% center;
    background-size: 22px;
}

.salto_pago div.box:not(.new_box) div.anticipo,
.completar_pago div.box:not(.new_box) div.anticipo {
    background-color: rgba(224, 245, 211, 0.37);
    padding: 5px;
    width: 100%;
    float: left;
    font-size: 1.09em;
}

div.salto_pago div.caducada,
div.timeout {
    margin: 6% 5% 5% 5%;
    font-size: 0.8em;
    line-height: 20px;
    clear: both; /* Estaba petando con otro div en mobile */
}

div.timeout label.fecha_aviso {
    font-size: 1em;
    /*font-weight: bold;*/
    /*color: rgba(239, 88, 34, 1);*/
}

div.salto_pago div.caducada div.fecha_aviso {
    padding: 10px 10px 10px 40px;
    box-shadow: 2px 2px 4px #EAEAEA;
    /*color: #B38023;*/
    background: url('../img/exclamation_naranja.png') no-repeat left center #FFF9ED;
    background-size: 35px;
    margin: 2% 0;
}

div.salto_pago div.caducada div.reintentar {
    float: left;
    margin: 3% 35%;
}

div.salto_pago div.timeout {
    /* float: left; */
    margin: 0 auto 0 auto;
    width: 91%;
    padding: 3%;
    background: white;
    background: rgba(241, 237, 237, 0.56);
}

div.salto_pago .payment-form .timeout {
  width: 100%;
}

div.salto_pago div.timeout div.explicacion {
    background: transparent url(../img/clock.png) no-repeat 0px center;
    background-size: 28px;
    padding-left: 42px;
}

div.salto_pago div.datos_viajero {
    padding-left: 0;
    padding-right: 0;
    clear: both; /* Estaba petando con otro div en mobile */
}

div.salto_pago div.datos_viajero div.datos {
    width: 100% !important;
}

div.salto_pago div.datos_viajero div.datos form {
    width: 95%;
    margin: 0 auto;
}

div.salto_pago .payment-form div.datos_viajero div.datos form {
    width: 100%;
    max-width: 300px;
    padding: 0 10px;
}

div.salto_pago .payment-form div.datos_viajero div.datos form {
  display: flex;
  flex-flow: row wrap;
}

div.salto_pago div.datos_viajero div.pie {
    margin: 10px;
    text-align: right;
    border-top: 1px dotted #11B3A2;
    padding-top: 8px;
}

div.salto_pago div.datos_viajero div.pie.pie_personalizado {
    border-top: 1px solid #E0DDDD;
}

div.salto_pago div.datos_viajero div.pie p.info_avaibook {
    color: #7B7575;
    font-size: 0.75em;
    margin: 3px 0;
}

.salto_pago_av div.datos_viajero div.datos span:not(.obligatorio) {
    font-size: 11px;
    color: #7b7979;
}

.salto_pago_av div.datos_viajero span.obligatorio {
    color: red;
}

div.salto_pago_av div.datos_viajero input {
    padding-right: 12px;
    text-align: center;
}

div.salto_pago_av div.datos_viajero div.datos label {
    font-size: 0.85em;
}

div.salto_pago_av .payment-form div.datos_viajero div.datos div.caducidad {
    width: 100%;
}

div.salto_pago_av div.datos_viajero div.datos div.caducidad label {
    margin-right: 12.8%;
    display: block;
    margin-top: 6%;
}

div.salto_pago_av div.datos_viajero div.datos div.caducidad select {
    width: 47%;
}

div.salto_pago_av .payment-form div.datos_viajero div.datos div.caducidad select {
  width: calc(50% - 7px);
}

div.salto_pago_av div.datos_viajero div.datos div.cvc input {
    width: 30%;
}

div.salto_pago_av div.datos_viajero div.datos div.cvc label {
    margin-top: 6%;
    display: block;
}

div.salto_pago_av div.datos_viajero div.datos div.cvc {
    margin-bottom: 8%;
}

div.salto_pago_av div.datos_viajero div.datos select {
    padding: 6px 12px;
}

div.salto_pago_av div.datos_viajero div.datos div.cvc img {
    width: 50px;
    vertical-align: bottom;
}

div.salto_pago_av .payment-form div.datos_viajero div.datos div.cvc img:hover {
    cursor: pointer;
    opacity: .6;
}

div.salto_pago_av div.datos_viajero div.datos div.cvc img.info_cvc {
    width: 16px;
    display: inline-block;
    vertical-align: middle;
}

div.salto_pago_av div.datos_viajero div.datos div.cvc label {
    margin-right: 22%;
}

div.salto_pago_av div.datos_viajero input.cardHolderName {
    text-align: left;
}

div.salto_pago_av div.datos_viajero div.datos div.boton {
    margin: 2% 0;
    width: 100%;
}

div.salto_pago_av div.datos_viajero div.datos div.error_paytpv {
    color: #ec1818;
    width: 100%;
}

/* Ajustes Formulario de pago PAYCOMET */
.payment-form .timeout {
  width: 100%;
}
.salto_pago .payment-form div.pago_seguro {
  width: 100%;
}

/************************************************/
/*            	Teléfono CV y Agriturismo 	    */
/************************************************/

div.bloque_cv.telf {
    line-height: 25px;
    border-bottom: 1px solid #E0DDDD;
    margin: 0 auto;
    padding: 2% 0;
    font-size: 0.85em;
}

div.bloque_cv.telf img {
    width: 18px;
    vertical-align: middle;
    margin-right: 2%;
    margin-top: -2px;
}

/************************************************/
/*       			Justificante                */
/************************************************/

div.justificante div.resumen_reserva div.datos {
    border: 1px solid #B5B1B1;
}

div.justificante div.box {
    border: 1px solid #B5B1B1;
    margin-top: 0;
}

.box div.boton_return {
    text-align: center;
    margin-top: 11px;
    margin-bottom: 11px;
}

.box div.boton_return.uno {
    margin-top:11px;
    margin-bottom: 11px;
}

div.resumen_reserva.precios div.descr {
    float: left;
    padding: 0% 0% 2% 2%;
}

div.resumen_reserva.precios div.precio {
    float: right;
    padding: 0% 0% 2% 0%;
}

div.justificante div.box.alojamiento div.importes {
    width: auto;
    padding-left: 10px;
    padding-right: 10px;
}
div.justificante div.box.alojamiento div.importes .importes {
    padding: 0;
    background: none;
}

div.justificante .box div.importes_finales.imp_fianza {
    border-top: 0px !important;
    padding: 0;
}

div.justificante .box div.importes_finales.imp_fianza div.desglose {
    width: 100%;
    padding: 0;
}

.justificante div.importes div.precio_fianza {
    padding: 0;
}

@media (min-width: 768px) {
    div.justificante div.box {
        margin-top: 10px;
    }
}

/************************************************/
/*         Botón subir scroll '.scroll-btn'     */
/************************************************/
.scroll-btn {
    display: none;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background-color: rgba(17, 179, 162, .6);
    position: fixed;
    bottom: 20px;
    right: 20px;
    cursor: pointer;
}
.scroll-btn:after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border-left: 12px solid transparent;
    border-right: 12px solid transparent;
    border-bottom: 14px solid rgba(255, 255, 255, 1);
    position: relative;
    left: 13px;
    top: 16px;
}
.scroll-btn:hover {
    background-color: rgba(17, 179, 162, 1);
}

/************************************************/
/*       		Justificante Print				*/
/************************************************/
@media print {
    header {
        height: 50px;
        background-image: none !important;
        background-color: white !important;
    }

    header div.capa_titulo.logo {
        margin-top: -1.7% !important;
    }

    .pdf header div.capa_titulo {
        width: 600px !important;
        float: left !important;
    }

    .pdf header div.capa_logo {
        width: 50px !important;
        float: right;
    !important;
        text-align: left;
        background: none !important;
    }

    .pdf {
        background: none !important;
    }

    header div.capa_desplegable_banderas {
        display: none;
    }
}

div.justificante.print .box,
div.justificante.print .resumen_reserva {
    float: none;
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0;
}

div.justificante.print div {
    border: none !important;
}

div.justificante.print div.resumen_reserva div.datos,
div.justificante.print div.resumen_reserva div.datos div.estado,
div.justificante.print div.resumen_reserva div.datos div.explicacion {
    margin: 0% auto;
    padding: 1% 0% !important;
}

div.justificante.print div {
    background: none !important;
    background-image: none !important;
}

div.justificante.print div.resumen_reserva div.titulo,
div.justificante.print div.box div.nombre {
    border-bottom: 1px solid #11B3A2 !important;
}

div.justificante.print table td {
    padding: 4px;
    line-height: 18px;
    font-size: 0.9em;
    vertical-align: top;
}

div.justificante.print table td.uno {
    padding-top: 7px;
}

div.justificante.print table tr td:first-of-type {
    font-weight: bold;
}

div.justificante.print table tr td.sin_negrita {
    font-weight: normal !important;
    text-align: justify;
    padding: 4px;
}

div.justificante.print table tr td:first-of-type ul,
div.justificante.print table tr td.info {
    font-weight: normal;
}

div.justificante.print table tr td.nombre_comercial {
    color: #1AB394;
    text-transform: uppercase;
}

div.justificante.print table tr td:first-of-type h5 {
    color: #1AB394;
    border-bottom: 1px dotted #11B3A2;
}

/************************************************/
/*				Botones printer      	        */
/************************************************/
div.printer div {
    background: #fff;
    width: auto;
    margin: 0 auto;
    display: inline-block;
    padding: 5px;
    border: 1px solid #11b3a2;
    border-radius: 4px;
}

div.printer div:first-of-type {
    /*border-right: 0.1em solid #267205;*/
}

div.printer img {
    background: #1AB394;
    width: 1.7em;
    cursor: pointer;
    display: block;
}

div.printer div:hover {
    border-color: rgba(17, 179, 162, 0.8);
}

div.printer div:hover img {
    background-color: rgba(17, 179, 162, 0.8);
}

/************************************************/
/*       			Box ofertas  	        	*/
/************************************************/

.box.ofertas {
    clear: right;
    margin-top: 1%;
    font-size: 0.9em;
    line-height: 25px;
}

.box.ofertas div.explicacion {
    line-height: 20px;
}

.box.ofertas ul {
    padding-left: 15px;
}

.box.ofertas ul li {
    list-style: none;
    background: transparent url(../img/web.png) no-repeat 0% center;
    background-size: 20px;
    padding-left: 27px;
}

.box.ofertas a {
    color: #1AB394;
}

/************************************************/
/*       		Resumen de la reserva           */
/************************************************/

div.justificante div.box div.propietario {
    background: transparent url(../img/propi.png) no-repeat 8px 30%;
    padding-left: 37px;
    background-size: 18px;
    margin: 0 0 5px;
    font-size: 0.85em;
    width: 100%;
}

div.resumen_reserva {
    margin: 20px 0 10px;
    padding: 0;
}

div.resumen_reserva div.titulo {
    margin: 0 0 5px;
    line-height: 18px
}

div.resumen_reserva div.datos {
    margin: 0% auto;
    font-size: 0.9em;
    background: #FFF;
    padding: 0 0 0 20px;
}

.justificante div.resumen_reserva div.datos {
    margin: 0% auto;
    font-size: 0.9em;
    background: #FFF;
    padding: 10px;
}

div.resumen_reserva div.datos div.estado {
    margin: 2% auto 4% auto;
    font-family: 'Roboto', sans-serif;
    font-size: 1.2em;
    padding: 0;
}

div.importes_finales div.precios div.estado label.ok,
div.justificante div.box.reserva label.estado.ok,
div.resumen_reserva div.datos label.estado.ok,
div.justificante.print label.estado.ok {
    color: #1AB394;
}

div.resumen_reserva div.datos label.estado.ok,
div.justificante.print label.estado.ok {
    background: transparent url(../img/ok_verde.png) no-repeat 0px 1px;
    padding-left: 25px;
    background-size: 17px;
}

div.importes_finales div.precios div.estado label.pte,
div.justificante div.box.reserva label.estado.pte,
div.resumen_reserva div.datos label.estado.pte,
div.justificante.print label.estado.pte {
    color: #DB8F38;
    font-size: 1.1em;
}

div.resumen_reserva div.datos label.estado.pte,
div.justificante.print label.estado.pte {
    background: transparent url(../img/exclamation_naranja.png) no-repeat 0px 2px;
    padding-left: 21px;
    background-size: 18px;
}

div.importes_finales div.precios div.estado label.ko,
div.justificante div.box.reserva label.estado.ko,
div.resumen_reserva div.datos label.estado.ko,
div.justificante.print label.estado.ko {
    color: #DB3838;
}

div.resumen_reserva div.datos label.estado.ko,
div.justificante.print label.estado.ko {
    background: transparent url(../img/cross.png) no-repeat 0px 2px;
    padding-left: 24px;
    background-size: 16px;
}

div.resumen_reserva div.explicacion {
    padding: 2%;
    line-height: 20px;
    font-size: 0.9em;
}

div.resumen_reserva div.explicacion.ok {
    background: rgba(224, 245, 211, 0.3);
}

div.resumen_reserva div.explicacion.ko {
    background: rgba(245, 211, 215, 0.3);
}

div.resumen_reserva div.explicacion.pte {
    background: rgba(245, 236, 211, 0.3);
}

div.resumen_reserva div.explicacion label.nota {
    color: #817474;
    font-size: 0.85em;
}

div.resumen_reserva div.codigo {
    background: transparent url(../img/codigo.png) no-repeat 5px 1px;
    padding-left: 40px;
    padding-top: 3px;
    background-size: 23px;
    margin-bottom: 5px;
}

div.resumen_reserva div.codigo label {
    color: #1AB394;
    font-family: 'Arial', 'Helvetica', sans-serif;
    font-size: 1.3em;
    letter-spacing: 1px;
}

div.resumen_reserva div.llegada,
div.justificante div.box div.llegada {
    background: transparent url(../img/calendario.png) no-repeat 5px 8px;
    padding-left: 40px;
    padding-top: 7px;
    background-size: 22px;
    margin-bottom: 5px;
}

div.resumen_reserva div.salida,
div.justificante div.box div.salida {
    background: transparent url(../img/calendario.png) no-repeat 5px 7px;
    padding-left: 40px;
    padding-top: 7px;
    background-size: 22px;
    margin-bottom: 5px;
}

div.resumen_reserva div.noches,
div.justificante div.box div.noches {
    background: transparent url(../img/luna.png) no-repeat 3px 5px;
    padding-left: 40px;
    padding-top: 7px;
    background-size: 25px;
    margin-bottom: 5px;
}

div.resumen_reserva div.personas,
div.justificante div.box div.personas {
    background: transparent url(../img/people.png) no-repeat 5px 9px;
    padding-left: 40px;
    padding-top: 7px;
    background-size: 25px;
    margin-right: 5px;
}

div.resumen_reserva div.datos ul {
    padding-left: 3px;
    list-style: none;
    line-height: 20px;
}

div.resumen_reserva div.datos ul.extras li {
    background: url(../img/tick.png) no-repeat 0px 56%;
    background-size: 11px;
    padding-left: 16px;
}

div.resumen_reserva div.fechas {
    padding-bottom: 2%;
}

div.resumen_reserva div.resumen_multiples {
    clear: left;
    border-top: 1px dashed #11B3A2;
    padding: 2% 0;
    margin-top: 4%;
    font-size: 0.9em;
}

div.resumen_reserva div.resumen_multiples div.unidad {
    background: transparent url(../img/cama.png) no-repeat 5px 8px;
    padding-left: 40px;
    padding-top: 6px;
    background-size: 19px;
    margin-bottom: 5px;
    line-height: 20px;
}

div.resumen_reserva div.resumen_multiples div.unidad div.nombre {
    color: #1AB394;
}

div.resumen_reserva div.tarifa_esp {
    margin-top: 2%;
    margin-bottom: 1%;
}

div.resumen_reserva div.resumen_multiples div.tarifa_esp {
    margin-top: 1%;
}

div.resumen_reserva div.tarifa_esp span {
    color: rgb(45, 189, 231);
}

div.resumen_reserva div.extras {
    margin-top: 2%;
    margin-bottom: 1%;
}

div.resumen_reserva div.resumen_multiples div.extras {
    margin-top: 1%;
}

div.resumen_reserva div.extras span {
    color: rgba(126, 47, 205, 0.75);
}

/************************************************/
/*         			PRECIOS  		  	        */
/************************************************/

div.resumen_reserva div.precios div.titulo {
    /*color:#1AB394;*/
    padding: 4% 0 2% 0;
}

div.resumen_reserva div.precios div.descr {
    float: left;
    padding-left: 1%;
    padding-top: 2%;
}

div.resumen_reserva div.precios div.precio {
    float: right;
    padding-right: 1%;
    padding-top: 2%;
}

div.resumen_reserva div.fianza {
    border-top: 1px solid rgba(38, 114, 5, 0.28);
    margin: 1% 0;
    padding: 2% 1%;
    /*font-weight: bold;*/
    text-decoration: underline;
    cursor: pointer;
    color: #1AB394;
    margin-top: 2%;
}

div.resumen_reserva div.fianza img {
    width: 19px;
    vertical-align: top;
    cursor: pointer;
    margin-left: 1%;
}

div.resumen_reserva div.tarjeta {
    background-size: 30px;
}

div.resumen_reserva div.aviso_tarjeta {
    border-top: 1px solid #11B3A2;
    border-bottom: 1px solid #11B3A2;
    background: linear-gradient(115deg, rgba(224, 245, 211, 0.39), rgba(243, 249, 239, 0.16) 73%);
    margin: 4% auto;
    padding: 2%;
    font-size: 0.9em;
    line-height: 20px;
}

div.resumen_reserva div.aviso_tarjeta img {
    vertical-align: middle;
    margin-right: 2%;
    height: 20px;
}

div.resumen_reserva div.info_pago_seguro {
    font-size: 0.85em;
    border-top: 1px dashed #11B3A2;
    padding: 15px 0 10px 45px;
    /*margin-top: 10px;*/
    background: transparent url('../img/escudo.png') no-repeat 5px center;
    background-size: 30px;
    clear: both;
    margin-top: 3%;
}

/************************************************/
/*             			VIAJERO    	    	    */
/************************************************/

div.resumen_reserva.viajero div.nombre {
    background: transparent url('../img/people2.png') no-repeat 1px center;
    background-size: 18px;
    padding-left: 25px;
    margin-bottom: 10px;
}

div.resumen_reserva.viajero div.dni {
    background: transparent url('../img/codigo.png') no-repeat 0px center;
    background-size: 20px;
    padding-left: 25px;
    margin-bottom: 10px;
}

div.resumen_reserva.viajero div.telefono {
    background: transparent url('../img/telefono.png') no-repeat 1px center;
    background-size: 18px;
    padding-left: 25px;
}

div.resumen_reserva.viajero div.email {
    background: transparent url('../img/email.png') no-repeat 1px center;
    background-size: 18px;
    padding-left: 25px;
    margin-bottom: 10px;
}

div.resumen_reserva.viajero div.comentarios {
    background: transparent url('../img/chat.png') no-repeat 1px 1px;
    background-size: 19px;
    padding-left: 25px;
    margin-bottom: 5px;
}

div.resumen_reserva.viajero div.otros {
    background: transparent url('../img/otros.png') no-repeat 1px 0px;
    background-size: 18px;
    padding-left: 25px;
    margin-bottom: 5px;
}

div.resumen_reserva.viajero div.ok {
    background: transparent url('../img/tick_claro.png') no-repeat 1px 0px;
    background-size: 18px;
    padding-left: 25px;
    margin-bottom: 5px;
}

div.resumen_reserva.viajero div.ko {
    background: transparent url('../img/ko.png') no-repeat 1px 0px;
    background-size: 18px;
    padding-left: 25px;
    margin-bottom: 5px;
}

body > div.listado {
  position: relative;
}

/************************************************/
/*           Política de cancelaciones    	    */
/************************************************/

div.resumen_reserva.politica {
    /*font-size: 0.9em;*/
    line-height: 20px;
}

div.resumen_reserva.politica h5 {
    font-weight: normal;
    color: #1AB394;
    margin: 3% 0;
    font-size: 1em;
    border-bottom: 1px dashed #11B3A2;
}

div.resumen_reserva.politica div {
    text-align: justify;
}

/*div.resumen_reserva.politica div.titulo{
			color:#1AB394;
			border-bottom: 1px solid #267205;
			font-size: 1.2em;
			margin-bottom: 1.5%;
		}*/
div.resumen_reserva.politica div.texto {
    padding: 5px 10px 0;
}

div.resumen_reserva.politica div.subtitulo {
    color: black;
}

/************************************************/
/*           	Página de error	         	    */
/************************************************/

div.error {
    padding: 2%;
    background: #FFFFFF;
    margin: 1% 0 3% 0;
    font-size: 0.9em;
    line-height: 20px;
}

div.error div.boton {
    margin: 3% auto;
}

div.data_error {
    padding: 2%;
    background: #FFFFFF;
    margin: 1% 0;
    font-size: 0.9em;
    line-height: 20px;
}

/* Personalización estilos Owl Carousel de las galerías */
.owl-theme .owl-nav {
    position: absolute;
    top: calc((100% - 24px)/2); /* La capa '.owl-dots' mide 24 px de altura fijos */
    transform: translateY(-16px); /* Es la mitad de 32 px que mide de altura el botón */
    width: 100%;
    margin-top: 0;
}
.owl-carousel .owl-nav button.owl-next,
.owl-carousel .owl-nav button.owl-prev {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: rgba(0, 0, 0, .7);
    position: relative;
}
.owl-theme .owl-nav [class*=owl-] {
    margin: 0 5px;
}
.owl-theme .owl-nav [class*=owl-]:hover {
    background: rgba(0, 0, 0, .85);
}
.owl-carousel .owl-nav button.owl-next {
    float: right;
}
.owl-carousel .owl-nav button.owl-prev {
    float: left;
}
.owl-nav span {
    font-size: 30px;
    color: #fff;
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    margin-top: -3px;
}
.owl-carousel .owl-nav button,
.owl-nav span:focus {
    outline: none;
}

/* Personalización modal Galería */
.owl-carousel .owl-stage {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    height: 100%;
    position: relative;
}
.owl-carousel .owl-item {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    position: relative;
}
.owl-carousel.owl-drag .owl-item .item {
    float: none;
    width: 100%;
    max-height: calc(72vh - 55px);
    /* 55px es la suma de los 15px de margin-top y 15 px de
    margin-bottom de .modal-content y 24px de altura de .owl-dots
    y 1px extra para evitar barras de scroll */
    height: 100%;
    position: relative;
    display: flex;
}
.owl-carousel .owl-item img {
    object-fit: contain;
}
@media screen and (min-width: 30.1em) {
    .semantic-content#modal_galeria .modal-inner {
        width: 90%;
        max-width: calc(1280px + 30px); /* Anchura imágenes + padding lateral de 15px */
        left: 50%;
        margin-left: 0;
        top: 50%;
        transform: translate(-50%, -50%);
    }
    .semantic-content#modal_galeria .modal-content {
        max-height: none;
        position: relative;
        left: 50%;
        transform: translateX(-50%);
        padding: 15px 30px;
    }
}
@media screen and (max-width: 30em) {
    .semantic-content#modal_galeria .modal-content {
        position: relative;
        top: calc(50% - 3em);
        transform: translateY(-50%);
        border-bottom: none;
    }
}


/**************************************************************************************************/
/*                                          Media queries                                         */
/**************************************************************************************************/

@media (min-width: 768px) {

    /***************************************************************************/
    /*         				BOTONES SELECCIONAR Y CONTINUAR            		   */
    /***************************************************************************/
    .button.boton_continuar {
        width: 45% !important;
        margin: 0 auto 2% auto !important;
        float: none !important;
        text-align: center !important;
        clear: left;
        float: left;
    }


    .box div.info_pago_seguro {
        background: transparent url('../img/escudo.png') no-repeat 5px 58%;
        background-size: 30px;
    }

    .movil_oculto {
        display: block;
    }

    .movil_oculto.oculto {
        display: none;
    }

    .movil_oculto_inline {
        display: inline;
    }

    .movil_oculto_inline.oculto {
        display: none;
    }

    .movil_visible {
        display: none !important;
    }

    header div.capa_titulo {
        margin: 1% 0;
    }

    header div.capa_titulo.logo {
        margin: 0.8% 0% 0.15% 0;
        width: 70%;
    }

    header div.capa_logo.logo {
        padding: 0.5% 0.5% 1.3% 0.5%;
    }

    header div.capa_logo.logo img {
        margin-top: 30%;
    }

    header div.container {
        padding: 0 10px;
    }

    header div.capa_logo img {
        max-width: 32px;
    }

    header div.capa_desplegable_banderas {
        margin-right: 1.2%;
    }

    footer:not(.modal) {
        padding: 0.5% 0;
    }

    .box {
        width: 35%;
        float: right;
        clear: right;
        margin-top: 10px;
    }

    .lado {
        width: 60%;
        float: left;
        margin-top: 10px;
    }

    .salto_pago .lado {
        margin-top: 4%;
    }

    div.estadoCodigo,
    .movil_oculto div.importes,
    .movil_oculto div.contacto_finales,
    .movil_oculto div.importes_finales {
        border-top: 1px dashed #11B3A2;
    }

    div.importes,
    div.importes_finales {
        margin: 0 auto;
    }

    div.importes div.boton_reservar {
        width: 100%;
        text-align: center;
        margin-top: 5%;
    }

    div.importes div.boton_reservar input[type="button"] {
        font-family: 'Roboto', sans-serif;
        font-weight: bold;
        /*letter-spacing: 1.2px;*/
        font-size: 1em;
    }

    div.importes div.nombre {
        margin: 3% 0 3% 0;
    }

    div.resultado.resultado_uas div.titulo {
        width: auto;
        float: left;
    }

    .listado div.resultado.resultado_uas div.titulo {
        margin: 0% 0 5% 0 !important;
    }

    div.datos_viajero label {
        margin-bottom: 1%;
        vertical-align: middle;
    }

    .payment-form div.datos_viajero label {
        margin-bottom: 3px;
        vertical-align: middle;
    }

    div.datos_viajero label.check {
        margin-left: 4%;
        cursor: pointer;
        font-size: 1em;
        margin-top: 4%;
        vertical-align: bottom;
    }

    div.datos_viajero div.check {
        margin-bottom: 4%;
    }

    /*div.datos_viajero input[type="checkbox"] + label{
			margin-top: 4%;
		}*/
    div.datos_viajero div.datos div {
        width: 45%;
        float: left;
        font-size: 0.85em;
    }

    div.datos_viajero div.datos div.caducidad {
        width: 45%;
        float: left;
        font-size: 0.85em;
        clear: left;
    }

    div.datos_viajero div.datos div.caducidad select {
        width: 25%;
    }

    div.datos_viajero div.datos div:nth-of-type(2),
    div.datos_viajero div.datos div:nth-of-type(4),
    div.datos_viajero div.datos div:nth-of-type(6),
    div.datos_viajero div.datos div:nth-of-type(8) {
        float: right;
    }

    div.datos_viajero div.datos div.condiciones,
    div.datos_viajero div.datos div.politica_cancelaciones,
    div.datos_viajero div.datos div.normas_casa {
        float: left !important;
    }

    div.datos_viajero div.datos div:nth-of-type(5),
    div.datos_viajero div.datos div:nth-of-type(7),
    div.datos_viajero div.datos div:nth-of-type(9) {
        clear: left;
    }

    div.datos_viajero div.datos div.comentarios_propi {
        clear: left;
        float: left;
        width: 100%;
    }

    div.datos_viajero div.datos textarea {
        min-height: 55px;
        background: #FFF url("../img/chat.png") no-repeat 99% 23%;
        background-size: 25px;
    }

    div.datos_viajero {
        margin: 2% 0 0% 0%;
    }

    div.datos_viajero span.obligatorio {
        color: red;
    }

    div.datos_viajero div.condiciones {
        margin-bottom: 4% !important;
    }

    div.datos_viajero div.cargando_paso_3 {
        width: 10% !important;
        margin: 0 47% !important;
    }

    div.salto_pago_av div.datos_viajero {
        border: 0;
    }

    .errorFechasForm,
    .noDisponibleForm {
        color: white;
        margin-top: 4%;
        border-top: 2px solid #eb646a;
        background-color: #ee868b;
        padding: 2%;
        font-size: 0.9em;
    }

    .noDisponibleForm,
    .errorFechasForm,
    .otroResultado {
        clear: left;
        text-align: center;
        margin: 10px auto 0 auto;
    }

    .restriccionForm {
        clear: left;
        margin: 10px auto 0 auto;
    }

    .restriccionForm ul {
        margin: 0;
    }

    .restriccionForm ul li {
        padding-left: 10%;
    }

    div.resultado div.unidades div.restriccion_ua ul li {
        padding-left: 10%;
    }

    div.descripcion.desc_ua {
        float: left;
        clear: right;
        margin-bottom: 2%;
        line-height: 17px;
    }

    div.unidad.sin_foto div.descripcion.desc_ua {
        width: 56%;
    }

    div.resultado div.unidad div.servicios {
        max-width: 238px;
    }

    div.resultado div.unidades div.unidad div.servicio:nth-of-type(6) {
        clear: none;
    }

    div.resultado div.unidades div.unidad.sin_foto div.servicios {
        clear: left;
    }

    div.resultado div.unidades .precio-cta-container {
        clear: none;
        width: auto;
        border-top: none;
        margin-top: 0;
        padding-top: 0;
        display: block;
    }

    div.resultado div.unidades div.precios {
        float: right;
        padding-right: 0;
    }

    div.resultado div.unidades div.precio {
        float: right;
        font-size: 1.2em;
    }

    div.resultado div.unidades div.precio.tachado {
        font-size: .7em;
    }

    div.resultado div.unidades div.boton_reservar {
        margin: 0% auto;
        clear: both;
    }

    div.resultado div.unidades div.boton_reservar input[type="button"],
    div.resultado div.unidades div.boton_reservar a.button {
        padding-left: 48px;
        padding-right: 48px;
    }

    div.resultado_formulario div.datos_tarifas.vaciar_formulario {
        margin: 2% 0 2% 0%;
        /*padding: 1% 2%;*/
        /*width: 95%;*/
    }

    div.tarifas_especiales div.nombre_tarifa {
        margin-bottom: 1%;
        width: 68%;
    }

    div.tarifas_especiales div.descripcion {
        clear: left;
        margin-left: 4%;
        margin-bottom: 1%;
        margin-top: 1%
    }

    a.ver-descripcion {
        display: none;
    }

    div.resultado div.capacidad_max {
        margin: 6% 0 2% 0;
    }

    div.resultado.multiples div.capacidad_max {
        width: 85%;
        float: left;
    }

    div.resultado.multiples div.cantidad_sub {
        margin: 3% auto 0% auto;
        float: right;
        width: 15%;
        line-height: 36px;
    }

    div.resultado div.titulo {
        margin-bottom: 0%;
    }

    div.resultado.multiples div.servicios,
    div.resultado.multiples div.precio,
    div.resultado.multiples div.precio_tachado {
        margin-top: 2%;
    }

    div.resultado.multiples div.unidades div.derecha.clearfix {
        float: right;
    }

    div.resultado.multiples div.unidades div.tarifas_especiales {
        padding: 1% 0 2% 0;
    }

    div.resultado_formulario div.datos_tarifas.vaciar_formulario div.tarifas_especiales {
        width: 95%;
    }

    div.btn_multiples {
        margin: 0% 3%;
        float: right;
        text-align: right;
    }

    div.unidades_seleccionadas {
        margin: 4% 3%;
    }

    div.unidad_seleccionada div.derecha {
        float: left;
        width: 70%;
    }

    div.unidad_seleccionada div.derecha.sin_foto {
        width: 100%;
    }

    div.unidad_seleccionada div.izquierda {
        float: left;
        width: 25%;
        clear: left;
        margin-right: 3%;
    }

    div.adicionales div.titulo {
        margin-top: 0;
    }

    div.adicionales div {
        margin-top: 5%;
    }

    div.adicionales div.select_capacidad {
        margin-left: 15px;
    }

    div.adicionales select {
        max-width: 125px;
    }

    /*div.unidad_seleccionada div.adicionales{
			background: transparent url("../img/people.png") no-repeat 1% center;
			background-size: 24px;
			padding-left: 30px;
		}*/
    /*div.unidad_seleccionada div.derecha.sin_foto div.adicionales{
			background: transparent url("../img/people.png") no-repeat 3% center;
			background-size: 23px;
			padding-left: 30px;
			}*/
    div.unidad_seleccionada div.adicionales select {
        max-width: 150px;
    }

    div.unidad_seleccionada div.derecha.sin_foto div.adicionales select {
        max-width: 100%;
    }

    div.adicionales {
        margin: 0 0 2% 0;
        padding: 2%;
    }

    .unidades_seleccionadas div.adicionales {
        margin: 0 0 0% 0;
    }

    div.adicionales div:not(.titulo) {
        margin-top: 1%;
        /*font-size: 0.85em;*/
    }

    div.adicionales div.info_ocupacion {
        float: right;
        margin-right: 3%;
        font-size: 0.8em;
    }

    div.adicionales div.minima {
        margin-left: 3%;
    }

    div.tarifas_esp.formulario,
    div.datos_extras,
    div.datos_pago {
        margin: 2% 0 0 0%;
        padding: 2%;
    }

    div.condiciones {
        padding: 5px 20px;
        margin: 20px 0 0;
    }

    div.normas_casa,
    div.politica_cancelaciones {
        margin-top: 5%;
    }

    .modal-content div.normas_casa,
    .modal-content div.politica_cancelaciones {
      margin-top: 0;
    }

    div.datos_extras div.subtitulo {
        margin: 0% 0 2% 0;
    }

    div.datos_extras div.subtitulo:not(.obligatorio) {
        padding-left: 4%;
        margin-top: 1%;
    }

    div.datos_extras div.extras div.extra div.nombre_extra {
        width: 35%;
        padding-left: 0;
    }

    div.datos_extras div.extras div.extra div.personas {
        clear: right;
        float: right;
        line-height: 25px;
    }

    div.datos_extras div.extras div.extra div.precio_extra {
        /*line-height: 13px;*/
        float: right;
        clear: right;
        padding-left: 0;
        margin: 0% 0 1% 0;
    }

    div.unidades div.tarifas_especiales div.tarifa {
        margin-bottom: 0%;
    }

    div.unidades div.tarifas_especiales div.tarifa div.precio_oferta {
        font-size: 1em;
    }

    div.datos_tarifas.borrar_formulario {
        margin: 1% 0 2% 0;
        padding: 2%;
        width: 95%;
    }

    div.cargando_boton_final img {
        width: 7%;
    }

    div.datos_pago div.formulario_pago {
        width: 98%;
        padding: 2%;
    }

    div.datos_pago div.formulario_pago div {
        margin-bottom: 2%;
    }

    div.datos_pago div.formulario_pago div.caducidad select {
        width: 46%;
        margin-right: 7px;
    }

    div.datos_pago div.pago_expandidos div.explicacion {
        margin: 3% auto 0% auto;
    }

    div.datos_pago div.pago_expandidos div.explicacion label.explicacion_2 {
        padding-left: 3%;
        display: inline-block; /* alineamos texto de tiempo de caducidad de pago */
    }

    div.datos_pago div.pago_expandidos div.izquierda {
        float: left;
        width: 60%;
        clear: none;
        padding: 1% 3%;
    }

    div.datos_pago div.pago_expandidos div.derecha {
        float: right;
        width: 30%;
        clear: none;
        padding-top: 4%;
        padding-right: 3%;
    }

    div.datos_pago div.pago_expandidos div.imagen {
        width: 50%;
        float: right;
        clear: right;
    }

    div.datos_pago div.pago_expandidos div.imagen.master {
        width: 41%;
        padding-right: 5%
    }

    div.datos_pago div.pago_expandidos div.derecha div.imagen img {
        width: 100%;
    }

    div.datos_pago div.pago_expandidos div.pie {
        text-align: center;
    }

    div.datos_pago div.pago_expandidos div.pie.pago_seguro {
        text-align: right;
    }

    div.datos_pago div.pago_expandidos div.pie.pago_seguro p {
        margin: 0;
    }

    div.datos_pago div.pago_expandidos div.pie.pago_seguro p.info_avaibook {
        color: #7B7575;
        font-size: 0.95em;
    }

    div.datos_pago div.pago_expandidos div.pie.pago_seguro p:not(.info_avaibook) {
        margin-bottom: 1%;
    }

    div.datos_pago div.pago_expandidos div.pago_tajeta.dos_pasos div.imagen,
    div.datos_pago div.pago_expandidos div.pago_transferencia.dos_pasos div.imagen {
        width: 35%;
        float: right;
        clear: none;
        margin-top: 12px;
        text-align: left;
    }


    /************************************************/
    /*             		Justificante   	    	    */
    /************************************************/
    /*div.justificante div.lado{
		margin-top: 2.3%;
		float: none;
		}*/
    div.resumen_reserva {
        margin: 2.2% 2% 3% 2%;
    }

    .justificante div.resumen_reserva div.datos {
        padding: 20px;
    }

    div.resumen_reserva div.datos div.estado {
      margin: 0 0 15px;
    }

    .justificante .lado:not(.listauas) {
        margin-top: 1.5%;
    }

    div.justificante div.box.alojamiento div.fpago {
        padding-left: 0;
        padding-right: 0;
    }

    /************************************************/
    /*       		Completar pago                  */
    /************************************************/
    .completar_pago div.datos_pago {
        margin: 20px 0 0 20px;
    }

    .salto_pago div.lado div.derecha {
        margin-right: 1%;
        margin-top: 1%;
    }

    .salto_pago div.lado.payment-form div.derecha {
        margin-right: 0;
        margin-top: 0;
    }

    div.salto_pago div.caducada,
    div.timeout {
        margin: 0% 0% 2% -2%;
        width: 95%;
    }

    .salto_pago div.box.telf {
        margin-top: -2%;
    }

    .salto_pago_av div.pago_seguro.subtitulo {
        margin-bottom: 4%;
    }

    div.salto_pago_av div.datos_viajero div.datos div.caducidad label {
        margin-right: 9%;
    }

    div.salto_pago_av div.datos_viajero div.datos div.cvc label {
        margin-right: 13%;
    }

    div.salto_pago_av div.datos_viajero div.datos div.cvc input {
        width: 30%;
    }

    div.salto_pago_av div.datos_viajero div.datos div.boton div.boton_reservar {
        margin: 2% auto;
        font-size: 1em;
        float: none;
        width: 50%;
        font-size: 1em;
        padding-right: 0%;
    }

    div.salto_pago_av div.datos_viajero div.datos div {
        width: 50%;
        float: left;
        clear: left;
        font-size: 1em;
        margin-left: 28%;
        margin-left: 25%;
        padding-right: 5%;
    }

    div.salto_pago_av div.datos_viajero div.datos div.condiciones {
      font-size: 0.85em;
  }

    div.salto_pago_av .payment-form div.datos_viajero div.datos div {
        width: 100%;
        margin-left: 0;
    }

    div.salto_pago_av div.datos_viajero div.datos > form > div {
      padding: 0 10px;
    }

    div.salto_pago_av .payment-form div.datos_viajero div.datos div.card-number {
        margin-left: 0;
    }

    div.salto_pago_av div.datos_viajero div.datos div.caducidad {
        width: 51%;
        float: left;
        clear: left;
        margin-top: 0%;
    }

    div.salto_pago_av div.datos_viajero div.datos div.caducidad label,
    div.salto_pago_av div.datos_viajero div.datos div.cvc label {
        margin-top: 0%;
    }

    div.salto_pago_av div.datos_viajero div.datos div.cvc {
        margin-bottom: 2%;
    }

    div.salto_pago_av div.datos_viajero div.datos div {
        margin-bottom: 2%;
    }

    div.salto_pago_av div.datos_viajero div.datos div.cargando_boton_final div:not(.circularG_master) {
        margin-left: 0%;
    }

    div.salto_pago_av div.datos_viajero div.datos div.cargando_boton_final div.circularG_master {
        margin-left: 43%;
    }

    div.salto_pago_av .payment-form div.datos_viajero div.datos div.pie {
      margin: 10px;
      padding-right: 0;
    }

    /************************************************/
    /*      Ocultamos placeholder repetidos         */
    /************************************************/
    input::-webkit-input-placeholder {
        opacity: 0;
    }

    input:-moz-placeholder {
        opacity: 0;
    }

    input::-moz-placeholder {
        opacity: 0;
    }

    input:-ms-input-placeholder {
        opacity: 0;
    }

    .f_ini::-webkit-input-placeholder, .f_fin::-webkit-input-placeholder {
        opacity: 1;
    }

    .f_ini:-moz-placeholder, .f_fin:-moz-placeholder {
        opacity: 1;
    }

    .f_ini::-moz-placeholder, .f_fin::-moz-placeholder {
        opacity: 1;
    }

    .f_ini:-ms-input-placeholder, .f_fin:-ms-input-placeholder {
        opacity: 1;
    }

    /* Esto es para que el QR no pete con el footer en small devices */
    div.box.reserva, div.box.propietario, div.box.alojamiento {
        margin-bottom: 0;
    }

    /* Formulario dispo */
    div.formulario_dispo div {
        float: left;
        width: 28%;
        padding-right: 5px;
    }

    div.formulario_dispo div:nth-of-type(2) {
        margin: 0;
        padding-right: 5px;
        padding-left: 5px;
    }

    div.formulario_dispo div:nth-of-type(3) {
        float: right;
        padding: 0 0 0 5px;
        margin: 0;
        width: 44%;
    }

}

@media (min-width: 992px) {

    header div.capa_logo {
        padding: 0.5%;
    }

    div.formulario_dispo {
        width: 100%;
    }

    div.formulario_dispo div {
        width: 33%;
    }

    div.formulario_dispo div:nth-of-type(2) {
        margin: 0;
    }

    div.formulario_dispo div:nth-of-type(3) {
        width: 32%;
        margin-top: 0;
    }

    div.formulario_dispo .ajax_loader {
        clear: none;
        margin-top: 0;
        width: 6%;
        float: left;
        margin: 0% 12%;
    }

    div.resultado div.unidades div.image-wrapper {
        width: 25%;
    }

    div.resultado div.unidades div.info-contenido {
        width: 75%;
    }

    div.resultado div.unidades div.unidad div.servicios {
        max-width: 235px;
    }

    div.resultado.multiples div.unidades div.unidad div.servicios {
        max-width: 180px;
    }

    div.resultado.multiples div.unidades div.unidad.restricciones div.servicios {
        max-width: 435px;
    }

    div.resultado.multiples div.unidades div.servicios div.servicio:nth-of-type(5) {
        clear: none;
    }

    div.resultado_formulario div.datos_tarifas.vaciar_formulario div.tarifas_especiales {
        width: 91%;
    }

    /*div.resultado div.capacidad_max {
		margin: 2% 0;
	}*/
    div.adicionales select {
        max-width: 155px;
    }

    div.datos_extras div.extras div.extra div.precio_extra {
        float: left;
        margin: 0;
        padding-left: 2%;
    }

    /*	div.unidad_seleccionada div.adicionales{
		background: transparent url("../img/people.png") no-repeat 3% center;
		background-size: 24px;
	}*/
    /*	div.unidad_seleccionada div.derecha.sin_foto div.adicionales{
		background: transparent url("../img/people.png") no-repeat 1% center;
		background-size: 23px;
		}*/
    div.datos_extras div.extras div.extra {
        margin: 1% 0 2% 0;
    }

    div.cargando_boton_final img {
        width: 6%;
    }

    /************************************************/
    /*             	Salto al pago   	    	    */
    /************************************************/
    .salto_pago div.lado div.derecha {
        margin-top: 0%;
    }

    div.salto_pago div.timeout {
        width: 95%;
    }

    /* Ajustes Formulario de pago PAYCOMET min: 992px */
    div.salto_pago .payment-form div.datos_viajero div.datos form {
        max-width: none;
        padding: 0;
    }

    div.salto_pago_av .payment-form div.datos_viajero div.datos div.card-number {
      width: 53%;
      margin-left: 0;
    }

    div.salto_pago_av .payment-form div.datos_viajero div.datos div.caducidad {
      width: 27%;
    }

    div.salto_pago_av .payment-form div.datos_viajero div.datos div.cvc {
        width: 20%;
    }

    div.salto_pago_av div.datos_viajero div.datos div.caducidad label {
        margin-right: 13%;
    }

    .lang_en div.salto_pago_av div.datos_viajero div.datos div.caducidad label {
        margin-right: 2%;
    }

    div.salto_pago_av div.datos_viajero div.datos div.caducidad select {
        padding: 6px 4px;
    }

    .gecko div.salto_pago_av div.datos_viajero div.datos div.caducidad select {
        padding: 0px;
    }

    div.salto_pago_av div.datos_viajero div.datos div.cvc label {
        margin-right: 23%;
    }

    div.salto_pago_av .payment-form div.datos_viajero div.datos div.cvc label {
        margin-right: 0;
    }


    /************************************************/
    /*             		Justificante   	    	    */
    /************************************************/
    div.resumen_reserva {
        margin: 20px 0 0;
    }
    div.resumen_reserva:first-child {
        margin-top: 10px;
    }

    div.resumen_reserva div.codigo {
        background: transparent url(../img/codigo.png) no-repeat 6px 1px;
        background-size: 21px;
    }

    div.resumen_reserva div.noches {
        background: transparent url(../img/luna.png) no-repeat 5px 5px;
        background-size: 21px;
    }

    div.resumen_reserva div.personas {
        background: transparent url(../img/people.png) no-repeat 4px 9px;
        background-size: 23px;
    }

    div.resumen_reserva.viajero div.nombre {
        background: transparent url('../img/people2.png') no-repeat 4px center;
        background-size: 15px;
    }

    /************************************************/
    /*            	Completar pago  	    	    */
    /************************************************/
    .completar_pago .resumen_reserva {
        margin: 10px 0 0;
        padding: 0;
    }

}

/************************************************/
/*            	 	  Ajustes	  	    	    */
/*            	 	   START	 	    	    */
/************************************************/
@media (max-width: 420px) {
    div.pie.pago_seguro p.info_avaibook {
        color: #7B7575;
    }

    div.box.telf img, div.bloque_cv.telf img {
        width: 15px !important;
        vertical-align: middle;
        margin-right: 2%;
    }

    div.bloque_cv.telf {
        background: rgba(229, 228, 228, 0.41);
        padding: 3%;
    }

    div.datos_viajero span.datos_viajero_explicacion {
        font-size: 0.8em;
    }

    .salto_pago div.bloque_cv.telf {
        margin: 0 auto;
    }

    div.salto_pago div.datos_viajero div.pie, .justif div.titulo {
        margin: 10px;
    }

    /* Timeout en nueva_reserva_jump, padding para mobile solo, en desktop muy grande */
    div.salto_pago div.caducada, div.timeout {
        padding: 2%;
    }

    div.resultado div.unidades div.precio {
        /*margin-top: 10px;*/
    }

    /* Ajustamos los links de accion para completar o anular reserva */
    #ptePagoAccion li a {
        margin: 5% 5% 5% 0% !important;
    }
}

@media (min-width: 780px) {
    div.bloque_cv.telf .boxContactanos {
        float: left;
        width: 50%;
    }

    div.bloque_cv.telf .boxHorario {
        text-align: right;
    }

    div.datos_viajero span.datos_viajero_explicacion {
        font-size: 0.89em;
        margin-top: 0%;
    }

    section#modal_huespedes .modal-inner {
        width: 480px;
    }

    .salto_pago div.box.telf {
        margin-left: 0.5% !important;
    }
}

@media (min-width: 680px) and (orientation: landscape) {
    div.datos_pago div.pago_expandidos div.explicacion {
        margin: 3% auto 1% auto;
    }
}

/* En landscape mode, el logo del header de AB tiene mucho padding-top*/
@media (max-width: 840px) and (orientation: landscape) {
    header div.capa_logo {
        padding: 3% 2% 3.3% 0.5%;
    }
}

.hidden {
    display: none !important;
}

div.box.telf .boxTitle, div.bloque_cv.telf .boxTitle {
    font-family: 'Roboto', sans-serif;
    color: #267205 !important;
    padding-top: 5px;
}

div.bloque_cv.telf {
    margin: 0;
    padding-top: 0;
    clear: both;
}

/* Forzamos el texto de pago seguro a ser gris */
p.info_avaibook {
    color: #7B7575 !important;
}

.salto_pago div.box.telf {
    font-size: 0.85em;
    float: left;
    border: none;
    background: transparent url(../img/otros.png) no-repeat 15px 8px;
    background-size: 18px;
    padding-left: 40px;
    padding-top: 5px;
    margin: 2% 5% 2% 2%;
}

.salto_pago div.box.telf label {
    color: #267205 !important;
}

section#modal_huespedes h2 img {
    width: 30px;
    vertical-align: middle;
}

section#modal_huespedes img.antifraude {
    height: 15px;
    vertical-align: middle;
}

span#totalHuespedes {
    text-decoration: underline;
    font-weight: normal;
}

div.datos_viajero span.datos_viajero_explicacion {
    float: left;
    width: 100%;
    margin: 0% auto 3% auto;
    font-size: 0.89em;
}

div.huespedes_de_reserva .select_capacidadHuespedes {
    padding-top: 10px;
}

div.huespedes_de_reserva select {
    width: 35%;
    float: left;
}

div.huespedes_adicionales {
    background: url(../img/people.png) no-repeat 0% center;
    float: left;
    padding-left: 37px;
    background-size: 25px;
    height: 30px;
}

#textoModal {
  background-color: #f2f2f2;
  padding: 2px 5px;
}

#textoModal div {
  display: inline-block;
}
#textoModal div#mensajeBebes {
  float: right;
}

#textoModal.textoModalMobile{
  margin-bottom: 20px;
}
#textoModal.textoModalMobile div#mensajeBebes {
  float: none;
}

div.bootstrap-touchspin .bootstrap-touchspin-down, div.bootstrap-touchspin .bootstrap-touchspin-up  {
  line-height: 1.42857143;
  width: 24px;
  background-color: white;
  border: lightgray 1px solid;
  height: 24px;
}

div.bootstrap-touchspin {
  display: flex;
  justify-content: space-between;
}

div.bootstrap-touchspin input {
  width: 100%;
  max-width: 50px;
  padding: 3px 6px;
  text-align: center;
  border: none;
  line-height: 0;
}

div.adultos_adicionales, div.ninos_adicionales, div.bebes_adicionales {
  float: left;
  margin-right: 10px;
  margin-bottom: 10px;
}

div.adultos_adicionales label, div.ninos_adicionales label, div.bebes_adicionales label {
  float: left;
  padding: 6px 0px;
}
div.adultos_adicionales {
  width: 100%;
}
div.ninos_adicionales, div.bebes_adicionales {
  padding-left: 37px;
  width: 100%;
}

div.adultos_adicionales .bootstrap-touchspin, div.ninos_adicionales .bootstrap-touchspin, div.bebes_adicionales .bootstrap-touchspin {
  float: right;
  width: 100px;
}

#edadesNinosAdicionales, #edadesBebesAdicionales {
  width: 100%;
  display: flex;
}

#edadesNinosAdicionales #inputsEdadesNinos .tituloInputs,  #edadesBebesAdicionales #inputsEdadesBebes .tituloInputs{
  width:100%;
}

#inputsEdadesNinos, #inputsEdadesBebes {
  width: 100%;
}

#edadesNinosAdicionales #inputsEdadesNinos div, #edadesBebesAdicionales #inputsEdadesBebes div{
  width:25%;
  display:inline-block;
  padding-right:10px;
  margin-top:10px;
}

#edadesNinosAdicionales [id^="edadNino"], #edadesBebesAdicionales [id^="edadBebe"] {
  width: 100%;
}

#mensajeError {
  color: red;
}

#mensajeAviso i, #textoSupletorias i {
  color: #11b3a2;
}

.box div.capacidad_parcial_separada {
    background: url(../img/people.png) no-repeat 3px center;
    width: auto;
    padding-left: 37px;
    background-size: 23px;
    line-height: 15px;
    font-size: 0.9em;
    width: 93%;
    margin: 2% auto 0 auto;
}

#modificarHuespedes a, #totalHuespedes, .new_box a.modificar_huespedes {
  cursor: pointer;
}

#guardaHuespedesAdicionales.noGuarda{
  background: lightgrey;
  border: 1px solid lightgrey;
}

section#modal_huespedes .semantic-content .modal-content {
    padding: 0px;
    margin: 10px;
}

section#modal_huespedes header label {
    margin-left: 10px;
}

.salto_pago div.box.telf div.nombre {
    color: #267205 !important;
}

div.modalBottom {
    padding: 5px;
}

div.modalBottom .guardaHuespedes {
    float: right;
    margin-bottom: 10px;
    margin-right: 5px;
    padding: 7px;
}

div.select_capacidad select {
    width: 50%;
}

div.select_capacidad label {
    margin-left: 3%;
}


div.resultado div.unidades div.unidad {
    border-bottom: none !important;
}

/************************************************/
/*            	 	  Ajustes		      	    */
/*            	 		END		  	    	    */
/************************************************/

/*************************************************************/
/*			Estilo para cambiar tarjeta viajero	 			 */
/*************************************************************/
.datosAlojamientoTarjeta {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 2%;
}

.datos.resumen.cambioTarjeta {
    margin-bottom: 5%;
}

.alinearCentro {
    text-align: center;
}

.timeoute_cambioTarjeta p {
    margin: 0;
}

/* Sobreescritura de estilos para las modales 'modal.css' */
.semantic-content {
    display: none;
}
.is-active.semantic-content {
    display: block;
}
.semantic-content header {
  padding: 0 15px;
}
.semantic-content header > h2 {
    width: calc(100% - 25px);
}
.semantic-content .modal-close:before {
    background: rgba(0, 0, 0, .75);
}
.semantic-content a.modal-close-new {
    position: absolute;
    right: 0;
    z-index: 1;
    color: transparent;
}
.modal-close-new:before {
    color: #666;
}
.modal-close-new:before {
    content: "\00D7";
    display: block;
    padding: 5px;
    width: 100%;
    height: 30px;
    font-size: 50px;
    line-height: 31px;
    text-align: right;
}
.modal-close-new:hover:before {
    text-decoration: none;
    opacity: .8;
}
.semantic-content .modal-content {
    color: #666;
    padding: 15px;
    border-bottom: none;
}
.semantic-content .modal-content .summary,
.semantic-content .modal-content .description {
    color: #666;
    margin-top: 0;
    margin-bottom: 10px;
}
.semantic-content .modal-content .summary {
    font-size: 1rem;
}
.semantic-content .modal-content .description {
    font-size: 1.1rem;
}
.semantic-content .modal-content span.descripcion-text {
    margin-bottom: 20px;
    display: block;
}
.semantic-content footer {
  background: #fff;
  height: 50px;
  padding: 10px 15px;
  position: fixed;
  z-index: 21;
  bottom: 0;
  left: 0;
  right: 0;
  border-top: 1px solid #dddddd;
  display: flex;
  flex-wrap: wrap;
  flex-flow: row;
  align-items: center;
  justify-content: flex-end;
}
.semantic-content footer .modal-close-footer {
  display: block;
  height: 30px;
  width: 110px;
  text-align: center;
  border: none;
  border-radius: 4px;
  background: #1AB394;
  color: #fff;
  font-weight: bold;
  font-size: 1.1rem;
  text-decoration: none;
  display: flex;
  justify-content: center;
  align-items: center;
}
.semantic-content footer button:hover,
.semantic-content footer button:focus,
.semantic-content footer button:active{
  background: rgba(26, 179, 148, .8);
  color: rgba(26, 179, 148, 1);
  outline: none;
  text-decoration: none;
}
.semantic-content.condiciones .modal-content {
    height: 86%;
}
@media screen and (max-width: 30em) {
    .semantic-content .modal-inner {
        padding-top: 0;
    }
    .semantic-content .modal-inner > *:nth-child(2) {
        margin-top: calc(39px + 10px);
        /* 39px es la altura del :before del aspa de .modal-close-new
        y 10px el degradado del :after de .modal-close-new */
    }
    .semantic-content:before {
        background-color: transparent;
        background-image: none;
        display: none;
    }
    .semantic-content .modal-close:after {
        right: 0;
        left: auto;
        display: none;
    }
    /*.modal-close-new:before {
        position: fixed;
        height: 39px;
        background: #fff;
    }*/
    .semantic-content a.modal-close-new {
      position: fixed;
      width: 100%;
      background: #fff;
      height: 38px;
      color: transparent;
    }
    .modal-close-new:after {
        content: "";
        display: block;
        position: fixed;
        top: 38px;
        height: 10px;
        width: 100%;
        background: -moz-linear-gradient(top,  rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%); /* FF3.6-15 */
        background: -webkit-linear-gradient(top,  rgba(255,255,255,1) 0%,rgba(255,255,255,0) 100%); /* Chrome10-25,Safari5.1-6 */
        background: linear-gradient(to bottom,  rgba(255,255,255,1) 0%,rgba(255,255,255,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#00ffffff',GradientType=0 ); /* IE6-9 */
    }
    section#modal_contenido .modal-content {
      margin-bottom: 50px;
    }
    .semantic-content.condiciones .modal-content {
        height: 84%;
    }
}
@media screen and (min-width: 30.1em) {
    .semantic-content .modal-inner {
        top: 50%;
        left: 50%;
        margin-left: 0;
        transform: translate(-50%, -50%);
    }
    .semantic-content footer {
      display: none;
    }
}

/* Spinner o loader */
/* Incorporado para usar inicialmente como spinner de estilo que se muestra
mientras se carga la imagen del alojamiento en el sidebar */
.lds-ellipsis {
    display: inline-block;
    position: absolute;
    width: 80px;
    height: 80px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 0;
}
.lds-ellipsis div {
    position: absolute;
    top: 33px;
    width: 13px;
    height: 13px;
    border-radius: 50%;
    background: #11B3A2;
    animation-timing-function: cubic-bezier(0, 1, 1, 0);
}
.lds-ellipsis div:nth-child(1) {
    left: 8px;
    animation: lds-ellipsis1 0.6s infinite;
}
.lds-ellipsis div:nth-child(2) {
    left: 8px;
    animation: lds-ellipsis2 0.6s infinite;
}
.lds-ellipsis div:nth-child(3) {
    left: 32px;
    animation: lds-ellipsis2 0.6s infinite;
}
.lds-ellipsis div:nth-child(4) {
    left: 56px;
    animation: lds-ellipsis3 0.6s infinite;
}
@keyframes lds-ellipsis1 {
    0% {
        transform: scale(0);
    }
    100% {
        transform: scale(1);
    }
}
@keyframes lds-ellipsis3 {
    0% {
        transform: scale(1);
    }
    100% {
        transform: scale(0);
    }
}
@keyframes lds-ellipsis2 {
    0% {
        transform: translate(0, 0);
    }
    100% {
        transform: translate(24px, 0);
    }
}

/* Ajustes COVID */
#message {
  top: 0;
  left: 0;
  width: 100%;
  text-align:center;
}
#inner-message {
  margin: 0 auto;
  background-color: #11B3A2;
  padding: 5px 10px 10px 10px;
  color: white;
}

#inner-message .button {
  background-color: #FFFFFF;
  color: #000;
  white-space: nowrap;
  display:inline-block;
  margin-top:5px;
}

#modal-protocolo ul.checklist-covid{
  list-style-image:url('../img/ok_verde.png');
  margin-top: 15px;
}
#modal-protocolo ul li{
  margin-top: 10px;
}

div.ver-mapa {
    border-top: 1px dashed #11B3A2;
    cursor: pointer;
    padding: 10px;
}

div.ver-mapa:hover .button {
    opacity: 0.8;
}

div.ver-mapa div.container-mapa {
    overflow: hidden;
    height: 100%;
    position: relative;
    text-align: center;
}

div.ver-mapa div.container-mapa img {
    display: block;
    -webkit-filter: grayscale(100%); /* Safari 6.0 - 9.0 */
    filter: grayscale(100%);
    -o-object-fit: cover;
    object-fit: cover;
    height: 100px;
    width: 100%;
}

div.ver-mapa div#text-ver-mapa {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.button-outline {
    background-color: white !important;
    border: 1px solid #11B3A2;
    color: #11B3A2;
}

#modal-mapa .modal-inner {
  height: calc(100% - 20px);
}
#modal-mapa .modal-content {
  position: relative;
  height: calc(100% - 109px);
  max-height: 100%;
  padding: 0;
}
#modal-mapa .modal-content div#here-map {
  width: 100%;
  height: 100%;
}
#modal-mapa .H_ib_body {
  min-width: 300px;
  right: -120px;
}
#modal-mapa .H_ib_body, #modal-mapa .H_ib_tail {
    transform: translateY(-50px);
}
#modal-mapa .H_ib_content {
  margin-right: 16px;
}

.info-bubble-title {
  width: calc(100% - 12px);
  font-size: 16px;
  color: #1AB394;
}
.info-bubble-content,
.info-bubble-book {
  display: flex;
  flex-flow: row wrap;
}
.info-bubble-content {
  margin-bottom: 10px;
}
.info-bubble-book {
  width: 100%;
}
.info-bubble-content .info-bubble-photo {
  width: 50px;
  height: auto;
}
.info-bubble-content .info-bubble-photo img {
  width: 100%;
  height: auto;
  display: block;
}
.info-bubble-content .info-bubble-address {
  background: url(../img/direccion.png) no-repeat top left;
  background-size: 12px 12px;
  padding-left: 16px;
  margin: 0 0 10px;
  line-height: 12px;
  font-weight: bold;
}
.info-bubble-content .info-bubble-text {
  flex: 1;
  margin: 0 0 0 5px;
}
.info-bubble-content .info-bubble-description {
  position: relative;
}
.info-bubble-content .info-bubble-description:after {
  content: "";
  display: block;
  width: 100%;
  height: 20px;
  background: linear-gradient(0deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);
  position: absolute;
  bottom: 0;
}
.info-bubble-content .info-bubble-description > div {
  position: relative;
  height: 100%;
  max-height: 90px;
  overflow-y: auto;
}
.info-bubble-content .info-bubble-description p {
  line-height: 15px;
  margin: 0;
  padding-bottom: 15px;
}
.info-bubble-book {
  align-items: flex-end;
}
.info-bubble-book .info-bubble-prices {
  color: #1AB394;
  font-size: 14px;
  margin-left: auto;
  margin-right: 5px;
}
.info-bubble-book .info-bubble-prices .precio-importe {
  font-weight: bold;
  font-size: 24px;
}
.info-bubble-book .info-bubble-prices .precio-moneda {
  font-weight: bold;
}
.info-bubble-book .info-bubble-cta .button {
  color: #fff;
}
.info-bubble-book .info-bubble-cta .button:hover {
  text-decoration: none;
}
.map-marker {
  width: 50px;
  height: 50px;
  background-size: 50px 50px;
  left: -25px;
  top: -50px;
  cursor: pointer;
  background-color: #1AB394;
  -webkit-mask:  url(../img/marker.svg) no-repeat 50% 50%;
  mask: url(../img/marker.svg) no-repeat 50% 50%;
}

/* Etiqueta de tipo de política de cancelaciones */
.politicaCancelacionDiv{
  font-size: 0.9em !important;
}

.unidad.alojamiento .politicaCancelacionesSeccion{
  margin-top: 1.3em;
  margin-left: 1em;
  margin-bottom: 1.3em;
}

.unidad.alojamiento .politicaCancelacionEtiqueta{
  background-color: #11B3A2;
  color: #FFFFFF;
  font-weight: 500;
  padding: 0.4em;
  border-radius: 0.3em;
  cursor: help;
}

.unidad.alojamiento .politicaCancelacionEtiqueta label{
  padding: 0.5em;
  cursor: help;
}

.box div.politicasCancelacionesSeccion{
  background: linear-gradient(90deg, rgba(0,0,0,0.75) 0%, rgba(0,0,0,0) 100%);
  color: #FFFFFF !important;
  font-weight: 500 !important;
  padding: 0.4em !important;
  cursor: pointer !important;
  text-align: center !important;
}

.box div.politicasCancelacionesSeccion span.politicaCancelacionEtiqueta label {
    cursor: pointer !important;
}

.box.movil_oculto div.fondo div.politicasCancelacionesSeccion{
  width: 40% !important;
}

.box.movil_visible div.fondo div.politicasCancelacionesSeccion{
  width: 36% !important;
}

div .politicaCancelacionEtiqueta i{
  margin: 0.25em !important;
}

div .politicaReembolsableBg {
  background: transparent !important;
  background-color: #11B3A2 !important;
}

div .politicaNoReembolsableBg {
  background: transparent !important;
  background-color: #f8ac59 !important;
}
/* FIN - Etiqueta de tipo de política de cancelaciones */

/* Modal Virtual Tour (Full Window) */
#modal_virtualtour .modal-inner,
#modal_virtualtour .modal-content {
  width: 100%;
  height: 100%;
  position: relative;
}
#modal_virtualtour .modal-content {
  max-height: none;
  overflow: hidden;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
/* FIN Modal Virtual Tour (Full Window) */

@media (min-width: 768px) {
  #modal-mapa .modal-inner {
    width: calc(100% - 20px);
    height: calc(100% - 20px);
  }
  #modal-mapa .modal-content {
    height: calc(100% - 39px);
    padding: 15px;
  }
  #modal-mapa .H_ib_body {
    min-width: 350px;
    right: -145px;
  }
  .info-bubble-content .info-bubble-photo {
    width: 80px;
  }
  .info-bubble-book .info-bubble-prices .precio-importe {
    font-size: 28px;
  }
}

.invisible {
  visibility: hidden;
}

/* Ajustes Distribución camas */

div.distribucion-camas  {
  max-width: 100% !important;
}

.img-distribucion-camas  {
  float: left;
  margin-right: 5px;
}
.enlace-distribucion-camas  {
  float: left;
}
.enlace-distribucion-camas img  {
  width: 12px !important;
  position: relative;
  top: 2px;
}

#ver-dormitorios, #ocultar-dormitorios {
  text-decoration: underline;
  color: #11B3A2;
  line-height: 20px;
  cursor: pointer;
}

.distribucion-camas .dormitorios {
  width: 100%;
  padding: 5px 10px;
  background-color: #f2f2f2;
  margin-top: 10px;
  display: table;
  border-spacing: 5px;
  border-collapse: separate;
}

.distribucion-camas .dormitorios .dormitorio-row {
  display: table-row;
  margin: 5px 0px;
}

.distribucion-camas .dormitorios .dormitorio{
  width: 49%;
  display: table-cell;

}
.distribucion-camas .dormitorios .separador-dormitorio{
  width: 2%;
  border-left: 1px solid #DDD;
  display: table-cell;
}


ul.lista-distribucion-camas  {
  list-style: disc;
  padding: 0 15px;
  margin-top: 5px;
  color: rgba(137, 134, 134, 0.65);
}

ul.lista-distribucion-camas li {
  margin-bottom: 6px;
}

@media (max-width: 768px) {
  .distribucion-camas .dormitorios .dormitorio{
    width: 100%;
    display: inline-block;
  }
  .distribucion-camas .dormitorios .separador-dormitorio{
    display: none;
  }
}

.completar_pago .ajax_loader{
  margin-bottom: 35px;
}