.selectorIdioma {
	color: #FFF;
    float: right;
    font-size: 13px;
    margin-top: 8px;
    padding-right: 10px;
    position: relative;
    display: flex !important;
    align-items: center;
}

.selectorIdioma svg {
    margin-left: 8px;
    width: 19px !important;
}

.selectorIdioma .separator {
	margin-left:10px;
	margin-right:10px;
}
.selectorIdioma span.current{background: url('/clases/modulos/v3/img/flecha_desplegable.png') no-repeat right; cursor: pointer; width: 70px; display: block; float: right;}
.selectorIdioma ul{background-color: #0d438b; position: absolute; left: 20px; right: 0; top: 22px; z-index: 20; display: none;} 
.selectorIdioma li a{display: block; padding: 2px 0 2px 7px; color: #fff;}
.selectorIdioma li a:hover, .selectorIdioma li a.selected{background-color: #f6b72e;}

.selectorIdioma .itemLang_ca, .selectorIdioma .itemLang_gl {
	display:none;
}.miniCesta {
	color: #FFF;
    float: right;
    text-align:right;
    font-size: 13px;
    margin-top: 8px;
}
.miniCesta a {
	color:#FFF;
}
.miniCesta .buttons {
	background:#0d438b;
	padding:10px;
	display: none;
	float:right;
	margin-right:-12px;
}
.miniCesta .buttons p{margin-bottom: 10px;}
.miniCesta .submit{margin-left: 10px;}

body.page_confirmacion .miniCesta .buttons{
	display: none !Important;
}.linkPartners {
	color: #f6b72e;
	float: right;
	text-align: right;
	font-size: 13px;
	margin-top: 8px;
	margin-right:25px;
}.vendedorContainer {
    background-color: #22848e;
    width: 100%;
}

.vendedorContainer .menuVendedorContainer {
    background-color: transparent !important;
    height: 30px;
    width: 100%;
    font-family: 'Roboto', sans-serif !important;
    padding: 8px 15px 8px 20px;
    color: #ffffff;
    display: flex;
    justify-content: space-between;
    align-items: center;
    box-sizing: border-box;
}

.vendedorContainer .bienvenida {
    margin: 0;
    line-height: normal;
}

.vendedorContainer .menu-vendedor {
    width: fit-content;
    line-height: normal;
    display: flex;
    margin: 0 0 0 auto;
}

.vendedorContainer .item-menu {
    font-size: 14px;
    color: #ffffff;
    display: inline-flex;
    align-items: center;
    padding: 0 5px;
    margin: 0 0 0 30px !important;
}

.vendedorContainer .item-menu svg {
    height: 16px;
    width: fit-content;
    margin-right: 8px;
    fill: #ffffff;
}

.vendedorContainer .item-menu .item-link {
    text-decoration: none;
    color: inherit;
}

.vendedorContainer .item-menu .item-link:hover {
    text-decoration: underline;
}

.vendedorContainer .item-menu span {
    line-height: normal;
}

.modal.isHidden{
    display: none;
}

.desglose {
	text-decoration: underline;
	cursor: pointer;
}

.modal-header {
	text-align: left;
}

.modal-content {
	height: 245px;
}

.modal .close {
	background: none;
}

/* Estilos para el menú hamburguesa en dispositivos móviles */
.mobileMenu {
    display: none;
    position: relative;
    padding: 10px 0 10px 10px;
    cursor: pointer;
    background: #000066;
}

.mobileMenuIcon {
    width: 45px;
    height: 30px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    padding: 5px;
    transition: transform 0.3s, opacity 0.3s;
}

.mobileMenuIcon .bar {
    width: 35px;
    height: 4px;
    background-color: white;
    transition: transform 0.3s, opacity 0.3s;
}

.mobileMenuItems {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    background-color: #fff;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    padding: 10px;
    width: 100%;
    z-index: 1000;
    opacity: 0;
    transform: translateY(-10px);
    transition: opacity 0.3s, transform 0.3s;
}

.mobileMenuItems li {
    color: #337ab7;
}

.mobileMenuItems.show {
    opacity: 1;
    transform: translateY(0);
}

.mobileMenuItems li {
    margin-bottom: 10px;
}

/* Media query para mostrar u ocultar el menú móvil */
@media (max-width: 1200px) {
    .mobileMenu {
        display: block;
    }

    .vendedorContainer .menuVendedorContainer {
        display: none;
    }

    .mobileMenuItems {
        display: none;
    }
}

#modalCesta .concepto {margin: 0 10px 10px; overflow: hidden;border-bottom:1px solid #f2f2f2;}

#modalCesta .concepto h4{
	font-size: 13px;
	color: #0d438b;
	margin-bottom: 5px;
}
#modalCesta .concepto p{margin-bottom: 3px;}
#modalCesta .concepto .btn-eliminar{margin-top: 5px; float: right;margin-bottom:5px;}

.lang_de #modalCesta .concepto .fecha{font-size: 11px;}

#modalCesta.empty {display:none;}

#modalCesta .totales{
	padding: 10px; overflow: hidden;
	border-top: 2px solid #f2f2f2;
	text-align: right;
}
#modalCesta .totales {margin:20px 60px;}
#modalCesta .totales .precioFinal{margin-top: 5px;}
#modalCesta .totales.descuentos .precioFinal{margin: 0;}
#modalCesta .totales .sinDescuento, #modalCesta .totales .descuento{display: none;}
#modalCesta .totales.descuentos .sinDescuento, #modalCesta .totales.descuentos .descuento{display: block;}
#modalCesta .totales div, #modalCesta .totales .submit{float: right;}
#modalCesta .totales.descuentos .submit{margin-top: 5px;}
#modalCesta .totales div{margin-right: 10px;}
.lang_de #modalCesta .totales div, .lang_fr #modalCesta .totales div{margin-right: 5px;}
#modalCesta .totales p{font-size: 11px; margin-bottom: 5px;}
#modalCesta .totales p.precioFinal span{font-size: 13px; font-weight: bold;}
#modalCesta .totales p.descuento, #modalCesta .totales p.precioFinal{color: #ec0080;}
.lang_fr #cesta .totales p.descuento{font-size: 9px;}

.barraCabecera{height: 30px;}
.cabecera{height: 100px;}
.barraCabecera .contenido, .cabecera .contenido{width: 1000px; margin: auto; padding: 0 10px; position: relative;}

.cabecera .contenido{
	height: 100px;
	line-height: 100px;
}

.cabecera td{
	height: 100px;
	vertical-align: middle;
}
.cabecera h1{
	color: #FFF;
	font-size: 15px;
	display: inline-block;
	margin-left: 12px;
	font-weight: normal;
}.enlacesPie{background: #dbdad6; overflow: hidden; padding-bottom: 10px;}

.enlacesPie .contenido, .infoPie .contenido{width: 1000px; margin: auto;}

.enlacesPie .col{width: 235px; margin-left: 20px; float: left;}
.enlacesPie .col:first-child{margin: 0;}

.enlacesPie .col h2{
	margin: 25px 0 10px 0;
	font-size: 18px; font-weight: normal;
}
.enlacesPie a, .enlacesPie h2{color: #999;}
.enlacesPie a:hover{text-decoration: underline;}
.enlacesPie li{
	border-bottom: 1px solid #bab9b7;
	display: block; padding: 10px 0 10px 10px;
}
.enlacesPie li.last{border: none;}

.infoPie{height: 100px; background: #e4e4e1;}
.infoPie .contenido{position: relative; font-size: 13px;}
.infoPie .contenido *{position: absolute;}
.infoPie .neoLogo{top: 20px; left: 10px;}
.infoPie p{top: 22px; left: 120px;}
.infoPie .neoExLogo{top: 28px; right: 10px;}

#modalAtencionCliente .btn-mail{
	background: url('/clases/modulos/v3/img/btnMail.png'); text-align: center;
	display: inline-block; width: 153px; height: 20px; padding-top: 2px;
	font-size: 13px;
}

#modalTimeOutReset .content {
	text-align:center;padding-bottom:10px;
}

#modalTimeOutReset p {
	font-size:16px;
}
/*swal cookies*/
.swalCookies {
	width: 1100px !important;
	font-family: 'Roboto Condensed', sans-serif;
}

.swalCookies * {
	font-family: 'Roboto', sans-serif;
}

.swalCookies .logoCookies {
	width: 250px;
}

.swalCookies .cookies_dialog {
	background: #fff;
	font-size: 15px;
	margin: 0 auto;
	padding: 40px 50px 60px 50px;
	color: black;
}

.swalCookies .cookies_dialog .tituloCookies {
	font-size: 16px;
	line-height: 24px;
	text-align: center;
	font-weight: bold;
	margin: 20px 0 20px 0;
}

.swalCookies .cookies_btns {
	margin-top: 64px;
	flex-direction: row-reverse;
	display: flex;
	align-items: start;
	justify-content: center;
}

.swalCookies .cookies_btnwrapper {
	width: 50%;
	margin-top: 24px;
}

.swalCookies .cookies_btnwrapper .cookies_acceptbtn:hover {
	background-position: 0 center;
}

.swalCookies .cookies_btnwrapper .cookies_acceptbtn {
	width: 75%;
	font-size: 15px;
	color: rgb(255, 255, 255);
	line-height: 24px;
	padding: 12px 32px;
	border: none;
	cursor: pointer;
	transition: transform .3s;
}

.swalCookies .cookies_btnwrapper .cookies_configbtn {
	width: 75%;
	background-color: rgb(255, 255, 255);
	border: 1px solid rgb(0 0 0);
	padding: 13px 12px;
	transition: transform .3s;
}

.swalCookies .cookies_btnwrapper .cookies_configbtn:hover, .swalCookies .cookies_btnwrapper .cookies_acceptbtn:hover {
	transform: scale(1.05);
}

.swalCookies .cookies_btnwrapper .cookies_subbtntxt {
	font-size: 12px;
	line-height: 16px;
	color: black;
	padding-top: 8px;
}

/*configurador*/
.swalCookies .panelConfiguracionCookies .cookies_dialog .textoTituloCookies {
	text-align: left;
}

.swalCookies .panelConfiguracionCookies .cookies_dialog .cookies_cookie {
	text-align: left;
}

.swalCookies .panelConfiguracionCookies .cookies_dialog .cookies_cookie .cookies_tipo {
	margin: 60px 0 20px 0;
	font-size: 20px;
	font-weight: bold;
}

.swalCookies .panelConfiguracionCookies .cookies_dialog .cookies_cookie .cookies_description {
	width: calc(65% - 32px);
	display: inline-block;
}

.swalCookies .panelConfiguracionCookies .cookies_dialog .cookies_cookie .cookies_checks {
	float: right;
	width: 35%;
	display: flex;
	justify-content: space-between;
	margin-bottom: 24px;
}

.swalCookies .panelConfiguracionCookies .cookies_dialog .cookies_cookie input[type='radio'] {
	display: none;
}

.swalCookies .panelConfiguracionCookies .cookies_dialog .cookies_cookie input[type=radio] + .cookies_label {
	display: block;
	font-weight: 100;
	margin: 0;
	width: 48%;
}

.swalCookies .panelConfiguracionCookies .cookies_dialog .cookies_cookie input[type='radio'] + label::before {
	content: '';
	width: 24px;
	min-width: 24px;
	height: 24px;
	border-radius: 50%;
	display: inline-block;
	border: 1px solid #121212;
	position: relative;
	top: 5px;
	margin-right: 8px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	background-color: #fff;
}

.swalCookies .panelConfiguracionCookies .cookies_dialog .cookies_cookie input[type='radio']:checked + label::before {
	background-color: #fd9224;
	-webkit-box-shadow: inset 0 0 0 4px #fff;
	box-shadow: inset 0 0 0 4px #fff;
}

/* botones config */
.swalCookies .panelConfiguracionCookies .cookies_dialog .cookies_btns_config {
	margin-top: 64px;
	flex-direction: row;
	justify-content: space-between;
	display: flex;
}

.swalCookies .panelConfiguracionCookies .cookies_dialog .cookies_allbtnwrapper {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-grow: 1;
}

.swalCookies .panelConfiguracionCookies .cookies_dialog .cookies_btn_accept, .swalCookies .panelConfiguracionCookies .cookies_dialog .cookies_btn_reject{
	background: transparent;
}

.swalCookies .panelConfiguracionCookies .cookies_dialog .cookies_btn_accept, .swalCookies .panelConfiguracionCookies .cookies_dialog .cookies_btn_reject, .swalCookies .panelConfiguracionCookies .cookies_dialog .cookies_savebtn {
	width: auto;
	border: 0;
	color: #fd9224;
	transition: background-position 0.66667s cubic-bezier(0.24, 0.22, 0.31, 1.07) 0s;
	text-align: center;
	max-width: 100%;
	font-weight: bold;
	line-height: 24px;
	padding: 12px 32px;
	display: inline-block;
	border: none;
	cursor: pointer;
}

.swalCookies .panelConfiguracionCookies .cookies_dialog .cookies_btn_reject {
	margin-left: 40px;
}

.swalCookies .panelConfiguracionCookies .cookies_dialog .cookies_savebtn.disabled {
	color: #bdbdbd;
	background: #e9e9e9;
}

.swalCookies .panelConfiguracionCookies .cookies_dialog .cookies_savebtn.active {
	color: white;
	background: #fd9224;
}

.swalCookies .panelConfiguracionCookies .cookies_dialog .alert.alert-error{
	color: #dd5b5b;
	background-color: #fcdfdf;
	border-color: #fcdfdf;
}

.swalCookies .panelConfiguracionCookies .cookies_dialog .info_cookie {
	width: 100%;
	display: flex;
	border-bottom: 1px solid black;
	margin-top: 20px;
	flex-wrap: wrap;
}

.swalCookies .panelConfiguracionCookies .cookies_dialog .info_cookie .titulo_cookie {
	color: #626262;
	font-size: 17px;
	width: 90%;
	display: inline-block;
	margin: 0 !important;
	padding: 5px 0;
	cursor: pointer;
	flex-grow: 1;
}

.swalCookies .panelConfiguracionCookies .cookies_dialog .info_cookie .respuesta_cookie {
	display: none;
	color: #000;
	font-size: 14px;
	padding: 10px 25px 10px 25px;
	margin: 0 !important;
	overflow-y: auto;
	max-height: 700px;
}

.swalCookies .panelConfiguracionCookies .cookies_dialog .info_cookie .arrow.down {
	transform: rotate(90deg);
	transition: 0.5s ease-in-out;
}

.swalCookies .panelConfiguracionCookies .cookies_dialog .info_cookie .arrow {
	transition: 0.5s ease-in-out;
}

.swalCookies .panelConfiguracionCookies .cookies_dialog .info_cookie table {
	border-collapse: collapse;
}

.swalCookies .panelConfiguracionCookies .cookies_dialog .info_cookie table th,
.swalCookies .panelConfiguracionCookies .cookies_dialog .info_cookie table td {
	padding: 15px;
	text-align: center;
	vertical-align: middle;
	border: 1px solid #d3d3d3;
}

.swalCookies .panelConfiguracionCookies .cookies_dialog .info_cookie table td {
	color: #404040;
	line-height: 1.4;
}

.swalCookies .panelConfiguracionCookies .cookies_dialog .info_cookie table th {
	border-color: #121212;
}

.swalCookies .panelConfiguracionCookies .cookies_dialog .info_cookie table th:first-child {
	border: none;
}

@media screen and (max-width: 800px) {
	.swalCookies .panelConfiguracionCookies .cookies_dialog .cookies_cookie .cookies_description{
		display: initial;
	}

	.swalCookies .panelConfiguracionCookies .cookies_dialog .cookies_cookie .cookies_checks{
		float: initial;
		width: 100%;
		display: flex;
		margin: 15px 0 25px 0;
	}

	.swalCookies .panelConfiguracionCookies .cookies_dialog .cookies_btns_config{
		display: initial;
	}

	.swalCookies .panelConfiguracionCookies .cookies_dialog .cookies_btn_reject{
		margin-left: 0;
	}

	.swalCookies .panelConfiguracionCookies .cookies_dialog .cookies_allbtnwrapper{
		display: block;
	}

	.swalCookies .panelConfiguracionCookies .cookies_dialog .cookies_savebtn.disabled {
		margin-top: 30px;
	}
}

@media screen and (max-width: 500px) {
	.swalCookies .cookies_btnwrapper {
		width: 100%;
	}

	.swalCookies .cookies_btns {
		display: block;
	}

	.swalCookies .cookies_btnwrapper .cookies_acceptbtn {
		width: 100%;
	}

	.swalCookies .cookies_btnwrapper .cookies_configbtn {
		width: 100%;
	}

	.swalCookies .logoCookies {
		width: 85%;
	}

	.swalCookies .cookies_dialog {
		padding: 30px 20px 0 20px;
	}

	.swalCookies .panelConfiguracionCookies .cookies_dialog .info_cookie table th,
	.swalCookies .panelConfiguracionCookies .cookies_dialog .info_cookie table td {
		padding: 15px 2px;
	}
}
.carouselInformacion{
    display: none;
}.carouselOfertas{
    display: none;
}
.separador-25 h3 {
    font-size: 1.25rem !important;
    color: white !important;
    font-weight: normal !important;
    text-align: left;
}

.separador-25 .form-group input {
    width: 59%;
    display: inline-block;
    height: 1.75rem;
}

.separador-25 .form-group button {
    width: 39%;
    display: inline-block;
    color: white;
    padding: 3px;
}

.separador-25 .form-check a {
    color: white !important;
    font-size: 0.8rem !important;
    outline: none !important;
    text-decoration: none !important;
    display: inline-block !important;
    vertical-align: -webkit-baseline-middle;
    margin-left: 10px;
}

.separador-25 .form-check {
    float: right;
    margin-right: 0;
}

.separador-25 .form-group {
    margin-bottom: 5px;
}

.separador-25 .form {
    float: right;
    width: 50%;
}

@media screen and (max-width: 992px) {
    .separador-25 .form-group {
        width: 50%;
        margin: auto;
    }

    .separador-25 .form-group input {
        width: 49%;
    }

    .separador-25 .form-group button {
        width: 49%;
    }

    .separador-25 .form {
        width: 100%;
        margin-top: 15px;
    }

    .separador-25 .form-check {
        float: none;
    }
}

@media screen and (max-width: 528px) {
    .separador-25 .form-group input{
        width: 100%;
    }

    .separador-25 .form-group button{
        margin-top: 10px;
        width: 100%;
    }
}

.insertBand {
    display: none;
}.titulo_h1 {
    text-align: center;
    color: white;
    position: absolute;
    top: 2vw;
    width: 100%;
}

.sec_buscador {
    position: absolute;
    width: 100%;
    height: 0;
    top: 7vw;
}

/*aplicar a landing y borrar aqui cuando esté en todas*/
#formatoMicroTrenes .contenidoPrincipal {
    margin: 25px auto 0;
    width: 1200px;
}

#cajasCompra {
    width: 1200px;
    margin: 0 auto;
}

.diaDesactivado, .diaDesactivado a {
    color: #999999 !important;
    cursor: not-allowed;
    pointer-events: none;
}

.space-evenly {
    justify-content: space-evenly;
}

.text-robotocondensed {
    font-family: 'Roboto Condensed', sans-serif;
}

#buscadorCacheTrenes {
    font-family: 'Roboto', sans-serif;
    width: 1200px;
    margin: 0 auto 55px;
    display: flow-root;
    height: min-content;
}

/* boton tipo paquete */
.contenedorBotonesTipoPaquete {
    display: inline-flex;
}

.btnTipoPaquete {
    background-color: #ffffff;
    padding: 10px 0 10px 0;
    border: solid 2px #b292c2;
    border-radius: 5px;
    margin-right: 10px;
    margin-bottom: 10px;
    min-width: 195px;
    text-align: center;
    cursor: pointer;
}

.btnTipoPaquete.selected {
    background-color: #b292c2;
}

.btnTipoPaquete.selected span {
    background-color: #b292c2;
    color: white !important;
}

.btnTipoPaquete span {
    padding: 13px 0 13px 0;
    border-radius: 5px;
    font-weight: bold;
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 17px;
}

#buscadorCacheTrenes .buscador_precios_tren {
    padding: 0;
    margin: 0 0 20px 0;
}

#buscadorCacheTrenes .contenedor_select {
    padding: 0;
}

#buscadorCacheTrenes .contenedor_select div {
    padding: 0;
}

#buscadorCacheTrenes .contenedor_select label {
    position: absolute;
    cursor: default;
    margin: 5px 0 0 15px;
    color: #999999;
    z-index: 1;
}

#buscadorCacheTrenes .contenedor_select .twitter-typeahead {
    width: 100%;
}

#buscadorCacheTrenes .contenedor_select .buscadorOrigenOcioTren {
    border-right: none;
    border-radius: 5px 0 0 5px;
}

#buscadorCacheTrenes .contenedor_select .buscadorDestinoOcioTren {
    border-left: none;
    border-radius: 0 5px 5px 0;
}

#buscadorCacheTrenes .contenedor_select.contenedor_origen_destino p.error-text {
    display: none;
}

#buscadorCacheTrenes .contenedor_select.contenedor_origen_destino .contenedor-estacion.error input {
    border-color: #db3747;
}

#buscadorCacheTrenes .contenedor_select.contenedor_origen_destino .contenedor-estacion.error label {
    color: #db3747;
}

#buscadorCacheTrenes .contenedor_select.contenedor_origen_destino .contenedor-estacion.error p.error-text {
    display: block;
    color: #db3747;
    padding: 7px;
    text-shadow: 3px 1px 5px rgb(0 0 0);
    position: absolute;
    font-weight: bold;
}

#buscadorCacheTrenes .contenedor_select input,
#buscadorCacheTrenes .contenedor_select select {
    width: 100%;
    background-color: #ffffff;
    padding: 25px 0 5px 15px;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    color: black;
    border: solid 2px #b292c2;
    font-weight: bold;
    font-size: 14px;
    cursor: pointer;
    outline: none;
}

#buscadorCacheTrenes .contenedor_select .arrow {
    position: absolute;
    right: 16px;
    bottom: 11px;
    top: unset;
    height: unset;
}

#buscadorCacheTrenes .contenedor_select .separadorInput {
    position: absolute;
    font-size: 43px;
    margin: -5px 0 0 -5px;
    color: #a0a0a0e6;
    left: 50%;
}

#buscadorCacheTrenes .contenedor_select:last-of-type .separadorInput {
    left: 25%;
}

#buscadorCacheTrenes .contenedor_select label {
    position: absolute;
    cursor: default;
    margin: 5px 0 0 15px;
}

#buscadorCacheTrenes .contenedor_select select::-ms-expand {
    display: none;
}

#buscadorCacheTrenes .contenedor_select .separadorInput svg {
    width: 29px;
    height: auto;
    position: absolute;
    z-index: 5;
    left: -11px;
    top: 20px;
    cursor: pointer;
}

#buscadorCacheTrenes .contenedor_select .separadorInput .str0 {
    stroke: gray;
    stroke-width: 0.42;
    stroke-miterlimit: 22.9256;
}

#buscadorCacheTrenes .contenedor_select .separadorInput .fil1 {
    fill: gray;
}

#buscadorCacheTrenes .contenedor_select .separadorInput .fil0 {
    fill: white;
}

#buscadorCacheTrenes .btn_comprar_billete {
    float: right;
    cursor: pointer;
    border: none;
    background-color: #33cc99;
    padding: 13px 85px 13px 85px;
    color: white;
    border-radius: 5px;
    font-weight: bold;
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 18px;
    line-height: normal;
}

#buscadorCacheTrenes .btn_comprar_billete.disabled {
    background-color: #666666;
    cursor: default;
}

.contenedorBotonVenta {
    float: right;
    display: flex;
}

.datos_ticket span {
    color: black;
    font-size: 16px;
    font-weight: bold;
    font-family: 'Montserrat', sans-serif;
}

.datos_ticket span.tagPlus {
    background-color: #000000;
    border-radius: 2px;
    color: #ffffff;
    font-size: 16px;
    font-weight: bold;
    font-family: 'Montserrat', sans-serif;
}

/* Swal calendario cache trenes */
.swalCacheTrenes {
    min-height: fit-content !important;
}

.swalCacheTrenes h2.titulo {
    color: #000000;
    font-family: 'Roboto Condensed', sans-serif !important;
    margin: 1.5rem 0;
    font-weight: bold;
    letter-spacing: 0.5px;
    font-size: 18px;
}

.swalCacheTrenes .containerModal {
    width: 100% !important;
    padding-bottom: 20px;
}

.swalBusqueda .containerModal {
    width: 100% !important;
}

.swalCacheTrenes .radioTrenHotel {
    text-align: left;
    margin: 10px 0 20px;
}

.swalCacheTrenes .radioTrenHotel input {
    width: unset;
}

/* Checkbox */
.swalCacheTrenes .checkBox input:checked ~ .checkmark {
    border: 0;
    background-color: #b292c2;
}

.swalCacheTrenes .checkBox label {
    display: block;
    position: relative;
    padding-left: 22px;
    margin-bottom: 5px;
    cursor: pointer;
    font-size: 13px;
    font-weight: normal;
}

.swalCacheTrenes .checkBox input:checked + span {
    color: #b292c2;
}

/* escondemos el default checkbox */
.swalCacheTrenes .checkBox input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
}

/* creamos un custom checkbox */
.swalCacheTrenes .checkmark {
    position: absolute;
    top: 0;
    left: 0;
    height: 15px;
    width: 15px;
    border-radius: 3px;
    border: 1px #666666 solid;
    box-sizing: border-box;
}

/* Al pasar el mouse encima, lo ponemos gris */
.swalCacheTrenes .checkBox label:hover input ~ .checkmark {
    border-color: #333333;
}

/* creamos el marcador (escondido al no seleccionar) */
.swalCacheTrenes .checkmark:after {
    content: "";
    position: absolute;
    display: none;
}

/* mostramos el marcador al seleccionar */
.swalCacheTrenes .checkBox label input:checked ~ .checkmark:after {
    display: block;
}

/* estilo del marcador */
.swalCacheTrenes .checkBox label .checkmark:after {
    left: 5px;
    top: 2px;
    width: 5px;
    height: 10px;
    border: solid white;
    border-width: 0 2px 2px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

.swalCacheTrenes .infoViajePlus {
    color: #000000;
    text-align: left;
    padding: 15px 50px;
    font-size: 15px;
    font-family: 'Roboto Condensed', sans-serif;
}

.swalCacheTrenes .infoViajePlus .tableResponsive {
    font-family: 'Roboto', sans-serif;
    font-size: 13px;
}

.swalCacheTrenes .infoViajePlus .tableResponsive .tablaDatosResponsive {
    background: white;
    border-radius: 10px 10px 0 0;
    padding: 10px;
    font-weight: bold;
    border: 1px solid black;
}

.swalCacheTrenes .infoViajePlus .tableResponsive .tablaDatosResponsiveInside {
    border: 1px solid black;
    border-bottom: 1px solid #c5c5c5;
    padding: 5px 0 5px 0;
    background: #e5e5e5;
    text-align: center;
}

.swalCacheTrenes .infoViajePlus table {
    font-family: 'Roboto', sans-serif;
    font-size: 14px;
}

.swalCacheTrenes .infoViajePlus table .text-tituloTabla {
    font-size: 19px;
    font-weight: bold;
    border: none
}

.swalCacheTrenes .infoViajePlus .infoCondicionesTabla {
    font-size: 12px;
    margin: -10px 0 0 5px;
}

.swalCacheTrenes .infoViajePlus table .tablaEuros {
    color: #64962f;
}

.swalCacheTrenes .infoViajePlus table .tablaPorcientoMedio {
    color: #ff9933;
}

.swalCacheTrenes .infoViajePlus table .tablaPorcientoAlto {
    color: #ba0000;
}

.swalCacheTrenes .infoViajePlus table .backgroundTablaInfoViajePlus {
    background: white;
}

.swalCacheTrenes .infoViajePlus .table > tbody > tr > td, .swalCacheTrenes .infoViajePlus .table > tbody > tr > th, .swalCacheTrenes .infoViajePlus .table > tfoot > tr > td, .swalCacheTrenes .infoViajePlus .table > tfoot > tr > th, .swalCacheTrenes .infoViajePlus .table > thead > tr > td, .swalCacheTrenes .infoViajePlus .table > thead > tr > th {
    vertical-align: middle;
    padding: 3px 0 3px 25px;
}

.swalCacheTrenes .infoViajePlus th {
    font-weight: normal;
}

.swalCacheTrenes .infoViajePlus p {
    color: black;
    font-weight: bold;
    text-align: center;
    font-size: 13px;
    font-family: 'Roboto Condensed', sans-serif;
}

.swalCacheTrenes .infoViajePlus span.tagPlus {
    background-color: #ffffff;
    border-radius: 3px;
    font-family: 'Montserrat', sans-serif;
    font-weight: bold;
    font-size: 18px;
}

.swalCacheTrenes .infoViajePlus ul.ventajasViajePlus {
    list-style-type: none;
    font-size: 14px;
}

.swalCacheTrenes .infoViajePlus ul.ventajasViajePlus li svg {
    fill: #ffffff;
    width: 11px;
    height: 100%;
    vertical-align: middle;
    margin: 3px 5px 3px 0;
}

.swalCacheTrenes.swal2-modal #fullCalendarCache + .btnCerrar, .swalBusqueda.swal2-modal .inputsNum + .btnCerrar {
    font-size: 36px;
    line-height: 36px;
    font-family: serif;
    position: absolute;
    top: -9px;
    right: 13px;
    cursor: pointer;
    color: #cccccc;
    -webkit-transition: color .1s ease;
    transition: color .1s ease;
    border: 0;
    background-color: transparent;
    width: unset;
    outline: none;
}

.swalBusqueda.swal2-modal .inputsNum + .btnCerrar {
    top: 5px;
}

.swalCacheTrenes.swal2-modal #fullCalendarCache + .btnCerrar:hover, .btnCerrar, .swalBusqueda.swal2-modal .inputsNum + .btnCerrar:hover {
    color: #777777;
}

.swalCacheTrenes .containerModal .btn-sin-regreso {
    border: none;
    border-radius: 20px;
    padding: 6px 0;
    width: 75%;
    background-color: #666666;
    color: #ffffff;
    text-align: center;
    text-transform: lowercase;
    margin: 10px auto 0;
    font-size: .9em;
}

.swalCacheTrenes .containerModal .checkBoxForm .checksOpcion {
    display: flex;
    justify-content: space-evenly;
    padding: 10px;
}

.swalCacheTrenes .containerModal .checkBoxForm input {
    width: unset;
    display: none;
}

.swalCacheTrenes .containerModal .checkBoxForm label {
    display: flex;
    align-items: center;
    position: relative;
    margin-bottom: 5px;
    cursor: pointer;
    width: unset;
    font-weight: normal;
    font-size: 0.9em;
}

.swalCacheTrenes .containerModal .checkBoxForm .checkmark {
    position: relative;
    height: 16px;
    width: 16px;
    border-radius: 3px;
    border: 1px solid;
    box-sizing: border-box;
    margin-right: 5px;
    display: inline-flex;
    justify-content: center;
}

.swalCacheTrenes .containerModal .checkBoxForm label:hover .checkmark {
    border-color: #aaaaaa;
}

.swalCacheTrenes .containerModal .checkBoxForm .checkmark svg {
    width: 10px;
    margin-top: 2px;
    height: 10px;
    vertical-align: middle;
    display: none;
}

.swalCacheTrenes .containerModal .checkBoxForm input:checked + label .checkmark svg {
    display: block;
}

/* calendario cache trenes */
#fullCalendarCache {
    padding: 10px 75px 20px;
    border-radius: 0 0 10px 10px;
    background-color: #ffffff;
}

#fullCalendarCache .fc-col-header-cell {
    margin-bottom: 8px;
}

#fullCalendarCache .fc-col-header-cell .fc-col-header-cell-cushion {
    text-transform: capitalize;
    color: rgb(178, 146, 194);
}

#fullCalendarCache .fc-toolbar {
    margin-top: 0 !important;
}

#fullCalendarCache .fc-toolbar.fc-header-toolbar {
    justify-content: center;
    text-align: center;
    text-transform: capitalize;
}

#fullCalendarCache .fc-toolbar.fc-header-toolbar .fc-toolbar-title {
    font-size: 1.5em;
    color: rgb(178, 146, 194);
}

#fullCalendarCache .fc-toolbar.fc-header-toolbar .fc-toolbar-chunk:nth-child(1),
#fullCalendarCache .fc-toolbar.fc-header-toolbar .fc-toolbar-chunk:nth-child(3) {
    display: none;
}

#fullCalendarCache .fc-toolbar.fc-footer-toolbar .fc-toolbar-chunk {
    width: 50%;
}

#fullCalendarCache .fc-toolbar.fc-footer-toolbar .fc-toolbar-chunk:nth-child(2) {
    display: none;
}

#fullCalendarCache .fc-day-disabled, #fullCalendarCache .fc-day-past {
    background-color: unset !important;
    cursor: default;
    color: #cbcbcb;
    pointer-events: none;
}

#fullCalendarCache .fc-scrollgrid, #fullCalendarCache .fc-scrollgrid-section > td {
    border: 0;
}

#fullCalendarCache .fc-scrollgrid-sync-table {
    border-style: solid;
}

#fullCalendarCache .fc-daygrid-day {
    border: 1px solid #cbcbcb;
    background-color: transparent !important;
    cursor: pointer;
}

#fullCalendarCache .fc-daygrid-day-frame {
    background-color: transparent !important;
    aspect-ratio: 1;
}

#fullCalendarCache .fc-daygrid-day:not(.diaDesactivado, .fc-day-disabled, .fc-day-past) .fc-daygrid-day-frame {
    background-color: #e9e9e9 !important;
}

#fullCalendarCache .fc-daygrid-day-top {
    height: 100%;
    justify-content: center;
    align-items: center;
}

#fullCalendarCache .fc-daygrid-day-number {
    padding: 0;
    font-size: 1.2em;
    text-decoration: none !important;
}

.swalCacheTrenes .btnSinRegreso {
    font-size: unset;
    line-height: unset;
    padding: 0 10px;
    background-color: #666666 !important;
    color: #ffffff !important;
    border-radius: 20px;
}

#fullCalendarCache .fc-toolbar-chunk button {
    padding: 9px 20px;
    background-color: #e6e6e6 !important;
    color: #666666 !important;
    border-radius: 0 !important;
    border: none !important;
    width: 100%;
    text-align: right;
    white-space: break-spaces;
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

#fullCalendarCache .fc-toolbar-chunk button:hover {
    background-color: #d6d6d6 !important;
}

#fullCalendarCache .fc-toolbar-chunk button span {
    display: flex;
    align-items: center;
    font-weight: bold;
}

#fullCalendarCache button.fc-prev-button {
    justify-content: flex-start;
    margin: 0 auto 0 0;
}

#fullCalendarCache .fc-toolbar-chunk button[disabled] {
    color: #a6a6a6 !important;
    background-color: transparent !important;
}

:lang(en) > #fullCalendarCache .fa.fa-chevron-left:after {
    content: "previous month";
}

:lang(es) > #fullCalendarCache .fa.fa-chevron-left:after {
    content: "mes anterior";
}

#fullCalendarCache .fa.fa-chevron-left:after {
    font-size: 15px;
    font-family: 'Roboto', sans-serif;
    vertical-align: middle;
    margin-left: 20px;
    display: flex;
    width: 30px;
    text-align: left;
}

#fullCalendarCache .fa.fa-chevron-left:before {
    font-size: 14px;
    vertical-align: baseline;
}

#fullCalendarCache .fa.fa-chevron-right:after {
    content: "\f054";
    font-size: 14px;
    vertical-align: baseline;
}

:lang(en) > #fullCalendarCache .fa.fa-chevron-right:before {
    content: "next month";
}

:lang(es) > #fullCalendarCache .fa.fa-chevron-right:before {
    content: "mes siguiente";
}

#fullCalendarCache .fa.fa-chevron-right:before {
    font-size: 15px;
    font-family: 'Roboto', sans-serif;
    vertical-align: middle;
    margin-right: 50px;
    display: flex;
    width: 30px;
}

#fullCalendarCache .fc-h-event .fc-event-title {
    font-size: 15px;
}

#fullCalendarCache .noDisponible {
    font-size: 14px !important;
}

#fullCalendarCache .fc-h-event .fc-event-title .small {
    font-size: 75%;
}

#fullCalendarCache .fc-daygrid-day-events {
    margin-bottom: 0;
    min-height: 4.5em;
    display: none;
}

#fullCalendarCache .fc-daygrid-day-events .fc-daygrid-event-harness {
    height: 4.5em;
    min-height: 4.5em;
}

#fullCalendarCache .fc-event {
    font-weight: bold;
    font-size: 14px;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
}

#fullCalendarCache .mejorPrecio {
    text-align: center;
    font-size: 9px;
    color: #64962f;
    text-transform: uppercase;
    margin-bottom: 0;
    margin-top: 20px;
}

#fullCalendarCache .tagPlus {
    text-align: center;
    margin: 0;
}

#fullCalendarCache .tagPlus svg {
    width: 12px;
    height: 100%;
    vertical-align: middle;
    margin-right: 3px;
}

#fullCalendarCache .tagPlus svg path {
    fill: #64962f;
}

#fullCalendarCache .tagPlus span {
    color: black;
    font-size: 13px;
    margin-right: 1px;
    font-weight: bold;
    font-family: 'Montserrat', sans-serif;
}

#fullCalendarCache .tagPlus span.tagPlusCalendar {
    background-color: #000000;
    border-radius: 2px;
    color: #ffffff;
    padding: 0 1px 0 1px;
    font-size: 13px;
    font-weight: bold;
    font-family: 'Montserrat', sans-serif;
}

.swal2-modal.swalBusqueda {
    margin-top: 1.5em;
    min-height: max-content !important;
}

.swalBusqueda #contenidoSwalNumPers {
    padding: 70px 60px 50px 60px;
    font-family: 'Roboto Condensed', sans-serif;
}

.swalBusqueda #contenidoSwalNumPers .tituloSelectNumPers {
    font-weight: bold;
    font-size: 22px;
    color: black;
    text-align: center;
}

.swalBusqueda #contenidoSwalNumPers .inputsNum {
    display: inline-grid;
    margin-top: 35px;
    width: 100%;
}

.swalBusqueda .inputsNum #junior {
    margin: 0 0 5px 0 !important;
}

/* nuevo selector de personas */
#contenidoSwalNumPers .input {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid #cccccc;
    padding: 17px 5px;
}

#contenidoSwalNumPers .input:last-of-type {
    padding: 16px 5px;
}

#contenidoSwalNumPers label {
    color: #464646;
    width: unset;
    font-size: 1.6rem;
    margin-bottom: 0;
    text-align: left;
    font-weight: normal;
}

#contenidoSwalNumPers label span:last-child {
    display: block;
    color: #767676;
    font-size: 1rem;
}

#contenidoSwalNumPers .pasajeros-input {
    display: flex;
    align-items: center;
}

#contenidoSwalNumPers .pasajeros-input button {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: transparent;
    border-style: none;
}

#contenidoSwalNumPers .pasajeros-input button svg {
    width: 22px !important;
    height: 22px !important;
}

#contenidoSwalNumPers .pasajeros-input button svg g path {
    fill-rule: evenodd !important;
}

#contenidoSwalNumPers .pasajeros-input button:disabled svg {
    fill: #dadada !important;
}

#contenidoSwalNumPers .pasajeros-input button:disabled svg g path {
    fill: #dadada !important;
}

#contenidoSwalNumPers .pasajeros-input > span {
    font-size: 1.6rem;
    margin: 0 25px;
}

#contenidoSwalNumPers label {
    color: #464646;
    width: max-content !important;
    margin-bottom: 0;
    text-align: left !important;
    display: flex !important;
    flex-direction: column;
}

#contenidoSwalNumPers .pasajeros-input {
    display: flex;
    align-items: center;
}

#contenidoSwalNumPers .pasajeros-input button {
    display: flex;
    align-items: center;
    justify-content: center;
}

#contenidoSwalNumPers .pasajeros-input button:disabled {
    pointer-events: none;
}

#contenidoSwalNumPers .pasajeros-input button svg {
    width: 22px;
    height: 22px;
}

#contenidoSwalNumPers .pasajeros-input button svg path {
    fill: inherit !important;
}

#contenidoSwalNumPers .pasajeros-input button:disabled svg {
    fill: #dadada !important;
}

#contenidoSwalNumPers .pasajeros-input > span {
    margin: 0 25px;
}

#contenidoSwalNumPers .children {
    border-bottom: 1px solid #cccccc;
}

#contenidoSwalNumPers .children .input {
    border-bottom: none;
}

#contenidoSwalNumPers .edades .input {
    margin-left: 25px;
    border-bottom: none;
    padding: 3px 5px;
    font-size: 1.6rem;
}

#contenidoSwalNumPers .edades .input:last-child {
    padding-bottom: 15px;
}

/* rooms */
.buscador-rooms .cabecera-habitacion {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid #cccccc;
    padding: 8px 20px;
    height: 50px;
    width: 100%;
    font-size: 1.6rem;
}

.buscador-rooms .cabecera-habitacion .arrow {
    width: 10px;
    margin-right: 10px;
    transition: transform 0.3s;
    outline: none;
}

.buscador-rooms .cabecera-habitacion .arrow.not-collapsed {
    transform: rotate(180deg);
    transition: transform 0.3s;
}

.buscador-rooms .span_habitacion {
    border: none;
    width: 100%;
    text-align: left;
}

.buscador-rooms .columna {
    width: 100%;
}

.room {
    margin: 16px 0 !important;
}

.room .selectores-pasajeros.d-none {
    display: none;
}

.btnSeleccionPers {
    margin: 45px 0;
    outline: none;
    padding: 8px 25px !important;
}

div.input .inputDerecha {
    width: 100px !important;
    padding: 0 !important;
    margin: 0;
    display: block !important;
}

div.input .inputDerecha select {
    padding: 0.25rem 0.5rem;
    display: unset;
    width: 100%;
    height: 36px;
    margin-left: unset;
    font-size: unset !important;
    background-color: white !important;
    border: 2px solid #b9baba !important;

    /* flecha select */
    -webkit-appearance: none;
    -moz-appearance: none;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' xml:space='preserve' class='arrow' width='3.2629mm' height='2.8258mm' version='1.1' style='shape-rendering: geometricPrecision; text-rendering: geometricPrecision; image-rendering: optimizeQuality; fill-rule: evenodd; clip-rule: evenodd; cursor: pointer;' viewBox='0 0 19.71 17.07'> <g id='Capa_x0020_1'> <polygon style='fill-rule: nonzero;' points='9.86,17.07 4.93,8.54 -0,0 9.86,0 19.71,0 14.79,8.54 '></polygon> </g> </svg>");
    background-repeat: no-repeat;
    background-size: 10px !important;
    background-position-x: 90%;
    background-position-y: 50%;
}

.tt-menu {
    background-color: white !important;
    width: 100% !important;
    max-height: 600px;
    overflow-y: auto;
    padding: 5px 0 !important;
    cursor: pointer;
    text-align: center;
}

.tt-suggestion {
    padding: 3px 20px !important;
    font-size: 1.5rem;
    text-align: left;
    margin-bottom: 5px !important;
}

.typeahead-header {
    padding: 3px 20px !important;
    text-align: left;
    font-size: 1.5rem !important;
}

.tt-suggestion.tt-selectable:hover, .tt-suggestion.tt-selectable.tt-cursor {
    background-color: #b292c2 !important;
    color: white;
}

.fc .fc-scrollgrid, .fc .fc-scrollgrid table {
    width: 100% !important;
    table-layout: fixed;
}

.fc .fc-daygrid-body {
    width: 100% !important;
}

.fc-h-event {
    background-color: #999999;
    border: 0 !important;
    text-align: center;
}

.descuentoOpcion {
    position: relative;
    height: 0;
}

.descuentoOpcion .textoDescuento {
    font-weight: bold;
    font-size: 15px;
    margin-right: 5px;
    color: white;
    text-shadow: 1px 1px 2px black, 0 0 1em #b292c2, 0 0 0.2em #b292c2;
}

.descuentoOpcion .descuentoAplicado {
    background: #dc0024;
    padding: 2px 10px;
    color: white;
    border-radius: 5px;
    font-size: 15px;
    display: inline-block;
    font-weight: bold;
}

/**/

@media (max-width: 1200px) {
    #buscadorCacheTrenes {
        width: 100%;
    }

    .sec_buscador {
        width: 90%;
        height: 0;
        left: 0;
        right: 0;
        top: 2vw;
        margin: 0 auto;
    }

    .titulo_h1 {
        font-size: 0;
    }

    #buscadorCacheTrenes .contenedor_select input, #buscadorCacheTrenes .contenedor_select select {
        font-size: 1.3vw;
    }

    #buscadorCacheTrenes .btn_comprar_billete {
        padding: 10px 50px 10px 50px;
        font-size: 14px;
    }

    .btnTipoPaquete {
        padding: 5px 0 5px 0;
    }

    .btnTipoPaquete span {
        padding: 9px 0 9px 0;
        font-size: 14px;
    }
}

@media (min-width: 768px) {
    #buscadorCacheTrenes #select-origen {
        border-right: none;
        border-radius: 5px 0 0 5px;
    }

    #buscadorCacheTrenes #select-destino {
        border-left: none;
        border-radius: 0 5px 5px 0;
    }

    #buscadorCacheTrenes .contenedor_select div.select-personas {
        padding-left: 6px;
    }
}

@media (max-width: 767px) {
    .titulo_h1 {
        font-size: 2.5rem;
        top: 2.5rem;
    }

    #buscadorCacheTrenes .contenedor_select input, #buscadorCacheTrenes .contenedor_select select {
        font-size: 14px;
    }

    .btnTipoPaquete {
        padding: 10px 0 10px 0;
    }

    .btnTipoPaquete {
        padding: 10px 0 10px 0;
    }

    .bloque.contenido.full {
        display: flex;
        flex-direction: column;
    }

    .bloque.contenido.full .sec_buscador {
        position: relative;
        top: 0;
        margin-top: 30px;
        height: unset;
        order: 1;
        width: 95%;
    }

    .sec_buscador .buscador_container {
        width: 100%;
        position: unset;
    }

    .bloque.contenido.full #cabecera_trenmashotel {
        order: 0;
    }

    .bloque.contenido.full .subcontenedorHome.web_trenhotel {
        order: 2;
    }

    #buscadorCacheTrenes {
        padding: 0 5px;
    }


    .btnTipoPaquete {
        min-width: 30vw;
        margin-right: initial;
    }

    .contenedorBotonesTipoPaquete {
        width: 100%;
        justify-content: space-between;
    }

    #buscadorCacheTrenes .buscador_precios_tren {
        margin: 0 0 10px 0;
    }

    #buscadorCacheTrenes .contenedor_select label {
        margin: 10px 0 0 15px;
    }

    #buscadorCacheTrenes .contenedor_select input,
    #buscadorCacheTrenes .contenedor_select select {
        border-radius: 5px;
        margin-top: 5px;
    }

    #buscadorCacheTrenes .contenedor_select.contenedor_origen_destino .separadorInput {
        top: 55px;
        right: 25px;
        transform: rotate(90deg);
        z-index: 10;
        font-size: 0;
    }

    #buscadorCacheTrenes .contenedor_select .separadorInput {
        margin-top: -2px;
    }

    #buscadorCacheTrenes .contenedor_select .separadorInput svg {
        width: 40px;
    }

    #buscadorCacheTrenes .contenedor_select.contenedor_origen_destino .contenedor-estacion.error p.error-text {
        display: none;
    }

    #buscadorCacheTrenes .btn_comprar_billete {
        width: 100%;
        cursor: pointer;
        background-color: #33cc99;
        padding: 13px 45px 13px 45px;
        text-align: center;
        border-radius: 5px;
    }

    #buscadorCacheTrenes .btn_comprar_billete span {
        padding: 0;
    }

    #buscadorCacheTrenes .buscador_precios_tren {
        margin: 0 0 10px 0;
    }

    #buscadorCacheTrenes .contenedor_select {
        padding: 0 !important;
    }

    #buscadorCacheTrenes .contenedor_select .separadorInput {
        left: unset;
    }

    #buscadorCacheTrenes .contenedor_select:last-of-type .separadorInput {
        left: 50%;
    }

    .contenidoPrincipal {
        margin: 70px 0 0 0;
    }

    .swalCacheTrenes h2.titulo {
        margin: 4rem 0 0;
    }

    .swalCacheTrenes.swal2-modal #fullCalendarCache + .btnCerrar {
        top: -40px;
        right: 8px;
    }

    #fullCalendarCache {
        padding: 10px 10px 20px;
    }

    #fullCalendarCache .fc-toolbar.fc-header-toolbar {
        margin: 10px 0 20px !important;
    }

    #fullCalendarCache .fc-toolbar.fc-header-toolbar .fc-toolbar-title {
        font-size: 1.2em;
    }

    #fullCalendarCache .fc-daygrid-day-number {
        font-size: 1em;
    }

    #fullCalendarCache .noDisponible {
        text-align: left;
        font-size: 13px !important;
    }

    #fullCalendarCache .fc-next-button {
        margin-right: 15px;
    }

    #fullCalendarCache .table-bordered > tbody > tr > td, #fullCalendarCache .table-bordered > tbody > tr > th {
        border: 0
    }

    .swalCacheTrenes .infoViajePlus {
        padding: 15px 5px;
    }

    .swalCacheTrenes .infoViajePlus .tableResponsive {
        display: block !important;
    }

    .swalCacheTrenes .infoViajePlus table {
        display: none;
    }

    .swalCacheTrenes {
        width: 100% !important;
    }

    .contenedorBotonVenta {
        float: none;
        display: inline-flex;
        width: 100%;
        justify-content: flex-end;
    }

    .swalCacheTrenes .infoViajePlus span.tagPlus {
        font-size: 13px;
    }

    .swalBusqueda #contenidoSwalNumPers {
        padding: 7vw 5vw 7vw 5vw;
    }

    #buscadorCacheTrenes .contenedor_select .buscadorOrigenOcioTren, #buscadorCacheTrenes .contenedor_select .buscadorDestinoOcioTren {
        border: solid 2px #b292c2;
        border-radius: 5px;
    }

    .tt-suggestion {
        font-size: 1.7rem;
    }

    .typeahead-header {
        font-size: 1.7rem !important;
    }

    .descuentoOpcion {
        text-align: center;
        margin: 30px 0 auto;
    }

    .descuentoOpcion .textoDescuento {
        color: #000000;
        text-shadow: initial;
    }
}

@media screen and (max-width: 572px) {
    .titulo_h1 {
        font-size: 1.50rem;
        top: 1.5rem;
    }
}

@media screen and (max-width: 422px) {
    .titulo_h1 {
        top: 0.5rem;
    }
}.bloque.contenido{padding: 20px; font-size: 12px; overflow: hidden;}
.bloque.contenido .btn-compra{color: #fff;}
.bloque.contenido h2 .btn-compra, .bloque.contenido h3 .btn-compra{font-weight: normal; font-family: Helvetica, Arial, sans-serif; line-height: 100%;}
.bloque.contenido img{margin: 10px;}
.bloque.contenido h2 img{margin: 0 !important;}
.bloque.contenido img[style*="left"] {margin-left: 0;}
.bloque.contenido img[style*="right"] {margin-right: 0;}
.bloque.contenido hr{border-width: 2px; border-color: #f2f2f2; width: 550px; margin-left: -20px;}
.bloque.contenido h2, .bloque.contenido h3, .bloque.contenido h4, .bloque.contenido p.entradilla, 
.bloque.contenido .texto-magenta, .bloque.contenido table.precios td{color: #ec0080;}
.bloque.contenido h2, .bloque.contenido h3, .bloque.contenido h4, .bloque.contenido p.entradilla{font-weight: bold; line-height: 110%;}
.bloque.contenido h2{font-size: 20px; margin-bottom: 20px;}
.bloque.contenido h3{font-size: 14px;}
.bloque.contenido h4{font-size: 12px;}
.bloque.contenido p.entradilla{font-size: 16px; font-family: 'Scada';}
.bloque.contenido p{line-height: 130%; margin-bottom: 10px;}
.bloque.contenido p[style*="center"] img {margin-left: 0px;}
.bloque.contenido a{color: #333;}
.bloque.contenido ul{list-style: disc; margin-left: 30px; margin-bottom: 10px;}
.bloque.contenido li{line-height: 140%;}
.bloque.contenido table td{vertical-align: top;}
.bloque.contenido table.precios p{margin: 0; padding: 0;}
.bloque.contenido table.precios{border-collapse: collapse; margin-bottom: 10px;}
.bloque.contenido table.precios td{padding: 8px; text-align: center; vertical-align: middle; background-color: #e8e8e8; border: 2px solid #fff;}
.bloque.contenido table.precios thead td{color: #999; font-weight: bold;}
.bloque.contenido table.precios td.blanco{background-color: #fff;}
.bloque.contenido a.pdf, .bloque.contenido a[href$=".pdf"]{color: #ec0080; background: url('/clases/modulos/v3/img/icono_descarga_pdf.png') no-repeat right; display: inline-block; padding: 2px 25px 2px 0;}
.bloque.contenido ul.listapuntos p{margin: 0;}
.bloque.contenido ul.listapuntos li {
	margin-bottom:5px;
}

.bloque.contenido table.precios.multi {width:93%;}
.bloque.contenido table.precios.multi td.blanco{width:30%;}
.bloque.contenido table.precios.single thead td:not(.blanco) {min-width:100px;}
.bloque.contenido table.precios.listModels thead td:not(.blanco) {min-width:100px;}
.bloque.contenido table.precios.producto thead td:not(.blanco) {min-width:100px;}
.bloque.contenido table.precios.producto thead td.blanco {width:60%;}

table .texto-normal {color:#999;}

#sec_contenido_izquierda .bloque.contenido.full {
	width:750px;
}

/*Plantilla para el wysiwyg de bloque de producto*/
div.TPLbloqueProducto {
	float:left;width:363px;margin:5px;position:relative;
	border-bottom:1px solid #f2f2f2;
}
	div.TPLbloqueProducto img {
	margin-right: 5px;
	display: block;
	float: left;
	width: 125px;
	height: 105px;
}
div.TPLbloqueProducto h3 {
	font-size: 14px;
	margin-bottom: 5px;
	color: #ec0080;
}
div.TPLbloqueProducto h3 a, div.TPLbloqueProducto a {
	color: #ec0080 !Important;
}
div.TPLbloqueProducto p.texto {
	padding-bottom: 30px;
}
div.TPLbloqueProducto .precios {
	position:absolute;
	bottom:0px;
	margin-left:145px;
	color:#ec0080;
	}
.TPLseparator {display:none;}
.TPLnewLine {clear:both;}.bloque.lateral{padding: 10px; font-size: 12px;overflow:hidden;}

ul.listaLateral a{color: #999;}#cabeceraDestino {
    height: 150px;
    margin-bottom: 0px;
}

#cabeceraDestino .img {
    margin: 5px;
    float: right;
    max-width: 375px;
    height: 140px;
    line-height: 140px;
}

#cabeceraDestino .img > img {
    vertical-align: middle;
    max-height: 140px;
    max-width: 375px;
}

#cabeceraDestino h1, #cabeceraDestino h2 {
    color: #ffffff;
    font-weight: normal;
    margin-left: 30px;
}

#cabeceraDestino h1 {
    font-size: 35px;
    padding-top: 30px;
    margin-top: 0;
}

#cabeceraDestino h2 {
    font-size: 20px;
}

#sec_contenido_cabecera {
    display: block !important;
}

#sec_contenido_cabecera.cabecera2 {
    margin-bottom: 0px !important;
}

#sec_contenido_cabecera.cabecera2 #cabeceraDestino {
    height: 140px !important;
}
#cesta{
	font-size:12px;
	margin-bottom: 10px;
	background-color: #fff;
	overflow: hidden;
}
#cesta h3{
	color: #0d438b;
	font-size: 16px;
	padding: 10px;
	border-bottom: 2px solid #e4e4e1;
	margin-bottom: 10px;
}

#cesta .concepto {margin: 0 10px 10px; overflow: hidden;}

#cesta .concepto h4{
	font-size: 14px;
	color: #0d438b;
	margin-bottom: 5px;
}
#cesta .concepto p{margin-bottom: 3px;}
#cesta .concepto .btn-eliminar{margin-top: 5px; float: right;}

.lang_de #cesta .concepto .fecha{font-size: 11px;}

#cesta.empty .notEmpty {display:none;}

#cesta:not(.empty) .emptyText {
	display:none;
}

#cesta .totales{
	padding: 10px; overflow: hidden;
	border-top: 2px solid #f2f2f2;
	text-align: right;
}
#cesta .totales .precioFinal{margin-top: 5px;}
#cesta .totales.descuentos .precioFinal{margin: 0;}
#cesta .totales .sinDescuento, #cesta .totales .descuento{display: none;}
#cesta .totales.descuentos .sinDescuento, #cesta .totales.descuentos .descuento{display: block;}
#cesta .totales div, #cesta .totales .submit{float: right;}
#cesta .totales.descuentos .submit{margin-top: 5px;}
#cesta .totales div{margin-right: 10px;}
.lang_de #cesta .totales div, .lang_fr #cesta .totales div{margin-right: 5px;}
#cesta .totales p{font-size: 11px;}
#cesta .totales p.precioFinal span{font-size: 13px; font-weight: bold;}
#cesta .totales p.descuento, #cesta .totales p.precioFinal{color: #ec0080;}
.lang_fr #cesta .totales p.descuento{font-size: 9px;}

#cesta .concepto .cantidadContainer {
	display: none;
}

#cesta .paquete .concepto:not(.concepto_renfeAPI) .cantidadContainer{
	display: inline;
	font-size: 1em;
	float: none;
	font-weight: normal;
}

#cesta .concepto span.textoTR {
	float: none;
}

