@import url('carousel.css');

.campoBusqueda{
	background: #ed3d3d;
	margin: 10px;
	height: 40px;
	width: 100%;
	border: 0px;
}

.filters{
	background: #e0e0e0;
	border-radius: 5px;
	border: 0.5px solid #e0e0e0;
	-webkit-box-shadow: 10px 10px 29px -4px rgba(0,0,0,0.75);
	-moz-box-shadow: 10px 10px 29px -4px rgba(0,0,0,0.75);
	box-shadow: 10px 10px 29px -4px rgba(0,0,0,0.75);
		text-align: center;
		padding-bottom: 50px;
}

.select2-selection{
	background: #ed3d3d !important;
	border: 0px !important;
	border-radius: 5px !important;
	margin: 10px -5px 23px -5px !important;
	height: 58px !important;
}
.select2-selection__rendered{
	color:white !important;
	text-align: center!important;
	background: url('../img/Map-Marker.png');
	background-size: 43px;
	height: 48px;
	background-position: -10px 2px;
	background-repeat: no-repeat;
}

.select2-selection__placeholder{
	color:#ffffff73 !important;
	font-size: 16px;
    position: absolute;
    margin: 14px -27px;
}
.select2-selection__arrow b{
    border-color: white transparent transparent transparent !important;
}

.cityIata{
	font-weight: bold !important;
	text-align: center!important;
	font-size: 21px !important;
	text-align: center!important;
}
.cityText{
	font-size: 10px !important;
	text-align: center!important;
}

.headerBox{
	padding: 10px;
	background: url('../img/cielo.jpg');
	background-size: cover;
	min-height: 220px;
}
.headerBox h1{
	text-align: center;
	color: #d1202a;
	font-size: 26px;
		margin: 30px 0;
}

.headerBox .filtros{
	font-size: 14px;
	margin: 15px 10px 0 10px;
}

h1{
	color: var(--tts-primary-color);
	font-size: 20px;
	margin-top: 18px;
}
div.tablaResultados h1{
	color: var(--tts-primary-color);
}
table.dataTable tbody th, table.dataTable tbody td:not(.celda-btn){
	padding: 8px 4px !important;
}
.loading{
	text-align: center;
	font-size: 25px;
}
table.dataTable thead th, table.dataTable thead td{
	border-bottom: 0px !important;
	padding: 10px !important;
}
table.dataTable thead th{
	font-size: 13px;
    font-weight: 700;
    font-family: 'Quicksand';
}
table.dataTable.no-footer{
	border-bottom: 0px !important;
}

thead tr .tablet-p,thead tr .tablet-l,thead tr .desktop,thead tr .all, thead tr .mobile-l{
	background: #f8f8f8;
}

.mobile-l,.tablet-p,.tablet-l,.desktop,.all{
	border-top: 1px solid #f1f1f1 !important;
}

.tips{
	background: #f8f8f8;
	padding: 20px;
    padding-top: 2px;
	margin-top: 20px;
}

.editPassengerButton,.editPassengerButton input{
	text-align: center;
	background: #f4f4f4;
	color: var(--tts-primary-color);
	font-size: 15px;
	font-weight: bold;
}
.editPassengerButton input{
	width: 100% !important;
	height: 21px !important;
	border: 0px;
	color:black;
}
.less,.plus{
	cursor: pointer;
}
.editPassangersForm .description{
	font-size: 14px;
	text-align: left;
}
.editPassangersForm .description span{
	font-size: 10px;
	font-weight: lighter;
}
.editWayForm select, .editClassForm select{
	background: white;
}

.block {
  	margin: 5px;
  	width: 282px!important;
  	height: 440px;
  	min-height: 440px;
  	background: #fff;
  	padding: 15px;
  	display: -webkit-box;
  	display: -ms-flexbox;
  	display: inline-block;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    position: relative;
  	box-shadow: 0px 1px 2px 1px rgba(0,0,0,0.1);
}

.top {
  margin: 5px;
}

.top .img {
    width: 241px;
    height: 188px;
	display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}
.top .img > img {
    width: auto;
    height: 100%;
}
.middle {
  	text-align: center;
  	display: -webkit-box;
  	display: -ms-flexbox;
  	display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
	justify-content: space-between;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
	flex-grow: 1;
	margin: 10px;
}

.bottom {
	position: absolute;
    padding: 5px;
    right: 2px;
    bottom: 5px;
}

.heading {
  	font-size: 16px;
  	font-weight: bold;
  	margin-bottom: 5px;
  	letter-spacing: 0;
	white-space: normal;
}

.stars {
  	font-size: 14px;
  	color: #fbb812;
  	margin-bottom: 10px;
}

.destination {
  	font-size: 13px;
  	margin-bottom: 20px;
}

.price {
	color: #5f5b5b!important;
	font-weight: bold;
    font-size: 16px!important;
}

/** FILTROS */
.index.responsive.container-vuelos, .index.responsive.container-hoteles{
	width: 100%;
}
.col-resultados .select-landing{
	font-size: 12.1px;
	color: #333;
    background-color: #fff;
    border-color: #ccc;
	padding: 6px 12px;
	line-height: 1.42857143;
	height: 34px;
	box-shadow: 0 2px 2px rgb(0 0 0 / 50%);
	margin-top: 15px;
    margin-bottom: 10px;
}

.row-filter{
	border-bottom: 1px solid #ddd;
}
.row-filter .form-group{
	margin: 0;
}
a.filtro-landing{
	cursor: pointer;
}
.filtro-landing li{
	/* color: #d1202a; */
	color: #333;
	font-family: 'Quicksand';
    font-weight: 500;
	margin-top: 15px;
    margin-bottom: 15px;
	line-height: 1.1;
	font-size: 17px;
}
.filtro-landing li i{
	color: #666;
	font-size: 12px;
}
.row-filter h3{
	color: #333;
	font-family: 'Quicksand';
    font-weight: 500;
	font-size: 17px;
}

td.celda-btn{
	padding: 20px 8px !important;
}

button.ver-vuelos{
	margin: 0;
	padding: 0px 10px;
	font-size: 12px;
	width: auto;
	font-weight: 600;
}
.text-bold {
    font-weight: 700;
    font-family: 'Quicksand';
    font-size: 13px;
}
span.precio-vuelo {
    font-weight: 700;
    font-family: 'Quicksand';
    font-size: 15px;
}

.row-filter .slider.slider-horizontal {
    width: 100%;
    height: 35px;
    margin-bottom: 20px;
}
.row-filter .slider .tooltip.top {
    margin-top: -40px;
}
.row-filter .slider-selection {
	background: #ed3d3d ;
}
.row-filter .slider-handle{
	background-color: #fff;
	border: 1px solid var(--tts-primary-color);
}
.row-filter .slider.slider-horizontal .slider-track {
    height: 3px;
	background-image: none;
	background-color: #dddede;
	width: 90%;
    left: 5%;
}
.row-filter .slider.slider-horizontal .slider-tick, .row-filter .slider.slider-horizontal .slider-handle {
    margin-left: -10px;
    margin-top: -9px;
}

.filtro-aerolinea img{
	width:20px;
	margin: 5px 7px 5px 0;
}

.filtro-aerolinea .checkbox:first-child, .filtro-escalas .checkbox:first-child,
.filtro-estrellas .checkbox:first-child, .filtro-alojamiento .checkbox:first-child, .filtro-servicios .checkbox:first-child, .filtro-destinos .checkbox:first-child{
	margin-top: 0;
}
span.new-filter {
	padding: 8px;
    border-radius: 20px;
    font-family: 'Quicksand';
    font-weight: normal;
    font-size: 13px;
	background-color: #ed3d3d;
}
span.new-filter i{
	border-radius: 50%;
    background-color: var(--tts-primary-color);
    height: 16px;
    width: 16px;
    cursor: pointer;
    font-size: 12px;
	
}
span.new-filter i:before{
	line-height: 16px;
}
span.new-filter button.close-filter{
	width: 20px;
}

.text-filtro-slider span{
	color: #333;
    font-size: 15px;
    font-weight: 500;
}
.checkbox input[type="checkbox"] + label{
	position: relative;
	font-size: 14px;
	/*line-height: 1.5;*/
	display: inline-flex;
	align-items: center;
}
.checkbox input[type="checkbox"] + label .checked{
	border: 1.5px solid #999;
    width: 16px;
	min-width: 16px;
    height: 16px;
	min-height: 16px;
	position: relative;
	margin: 0 10px 0 0;
	background: white;
	cursor: pointer;
}
.checkbox input[type="checkbox"]:checked + label .checked{
	background: var(--tts-primary-color);
	width: 16px;
	height: 16px;
	position: relative;
	margin: 0 10px 0 0;
	border: none;
}
.checkbox input[type="checkbox"]:checked + label .checked:after{
	content: "";
	width: 11px;
	height: 6px;
	border: 2px solid var(--tts-tertiary-color);
	border-right: 0;
	border-top: 0;
	-webkit-transform: rotate(-49deg);
	-ms-transform: rotate(-49deg);
	transform: rotate(-49deg);
	position: absolute;
	left: 2.5px;
    bottom: 7px;
}
.checkbox input[type="checkbox"] {
	display: none;
}
.checkbox > label {
	padding-left: 0;
}
button.borrar-filtros i{
	font-size: 16px;
}
button.borrar-filtros {
    color: var(--tts-primary-color);
    background-color: #fff;
    border: none;
    box-shadow: none;
    font-size: 14px;
    font-family: 'Quicksand';
    padding: 0;
    margin-top: 13px;
	margin-bottom: 0;
	width: auto;
}
button.borrar-filtros:hover{
	background-color: #fff !important;
	color: var(--tts-primary-color) !important;
}
li.new-filter {
    border-radius: 16px;
    padding: 8px;
    margin: 5px 0;
    display: flex;
	justify-content: space-between;
    align-items: center;
    background-color: var(--tts-primary-color);
    color: #fff;
	max-width: fit-content;
}
li.new-filter span{
	white-space: nowrap;
    overflow: hidden !important;
    text-overflow: ellipsis;
}
a.delete-filter {
    margin-left: 3px;
    padding: 0px 4px;
    background: #ebbaba;
    border-radius: 15px;
    color: var(--tts-primary-color);
    font-size: 12px;
	cursor: pointer;
}
.row.row-flex {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
}
.div-lef {
    width: 80%;
}
.div-right {
    width: 20%;
}

.col-filtros{
	width: 23%;
	display: block;
}
.col-resultados{
	width: 77%;
}
a.close-modal-filtros, a.close-modal-order {
    font-size: 30px;
    cursor: pointer;
	padding: 0 8px;
}
.row-close-modal{
	display: none;
}

section.opciones-modal{
	display: none;
	border-top: 1px solid #808080;
	border-bottom: 1px solid #808080;
	margin-top: 20px;
    margin-bottom: 20px;
}
.opciones-modal a {
    display: block;
    padding: 10px 0;
    text-align: center;
    cursor: pointer;
	color: #666;
    font-size: 14px;
    font-weight: 700;
    font-family: 'Quicksand';
}
a.aplicar-modal-filtros, a.ordenar-resultados {
    font-size: 14px;
    cursor: pointer;
    display: block;
    text-align: center;
    color: #fff;
    background-color: var(--tts-primary-color);
    padding: 8px 12px;
    font-weight: 700;
    font-family: 'Quicksand';
    border-radius: 6px;
    box-shadow: 0 2px 2px rgb(0 0 0 / 50%);
}
label.form-check-label {
    font-weight: 700;
    font-family: 'Quicksand';
    font-size: 14px;
    padding-left: 25px;
}
.row-aplicar-modal, .row-ordenar-modal {
    padding: 15px 0;
    border: none;
	display: none;
}
div.radio {
    margin-top: 20px;
    margin-bottom: 20px;
}
.box-oferta {
    display: flex;
    flex-direction: column;
	white-space: normal;
	border: 1px solid #cacaca;
    border-radius: 12px;
}
.box-oferta .box-row:first-child{
	border-bottom: 1px solid #cacaca;
}
.box-row {
    display: flex;
    flex-direction: row;
	justify-content: space-between;
	padding: 10px;
}
.box-col {
	display: flex;
    align-items: center;
}
.box-item {
    text-align: center;
}
.logo-aerolinea{
	width:20px;
	margin-right:5px;
}
.logo-aerolinea img {
	width:auto;
	height: 100%;
}
.radio {
    position: relative;
    margin-bottom: 10px;
}
.radio input[type="radio"] {
    cursor: pointer;
    height: 100%;
    left: 0;
    margin: 0;
    opacity: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 1;
}
.radio label:before {
    background: #fff;
    border: 1px solid #ccc;
    border-radius: 50%;
    height: 15px;
    left: 0;
    top: 2px;
    width: 15px;
}
input[type="radio"]:checked + label:before {
    border: 1px solid #d30d21;
    box-shadow: inset 0 0 0 1px #fff, inset 0 0 0 0 #fff, inset 0 0 0 16px #fff;
    color: #fff;
}
.radio label:after {
    background: #d30d21;
    border-radius: 50%;
    height: 9px;
    left: 3px;
    opacity: 0;
    pointer-events: none;
    top: 5px;
    width: 9px;
}
.radio label:before, .radio label:after {
    content: "";
    display: block;
    position: absolute;
}
.radio input:checked ~ label:after {
    opacity: 1;
}
.col-ordenar{
	display: none;
}

#tablaRes td.dataTables_empty {
    font-weight: 700;
    font-family: 'Quicksand';
    font-size: 14px;
	padding: 20px 4px !important;
}

.logo p {
    margin-top: 5px;
}
.ofertas-sabana .box-oferta{
	display: block;
	border: none;
}
/* CAJA DE OFERTAS DE HOTELES */
.item-hotel{
	border: 1px solid #cacaca;
	border-radius: 12px;
	display: flex;
	margin-left: 0 !important;
    margin-right: 0 !important;
	transition: box-shadow 0.3s ease 0s;
	box-shadow: rgb(0 0 0 / 24%) 0px 1px 2px 0px;
}
.item-hotel:hover {
    box-shadow: rgb(0 0 0 / 24%) 0px 4px 4px 0px, rgb(0 0 0 / 12%) 0px 0px 4px 0px;
}
.hotel-img{
	padding-left: 0 !important;
    padding-right: 0 !important;
	height: 185px;
	overflow: hidden;
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
}
.item-hotel img{
	width: 100%;
	height: 100%;
    object-fit: cover;
}
.container-hoteles #tablaRes thead {
	display: none;
}
.item-hotel .hotel-detalle {
    padding: 16px;
    display: flex;
    flex-direction: column;
	border-right: 1px solid #cacaca;
}
.item-hotel .hotel-precio {
    padding: 16px;
    display: flex;
    flex-direction: column;
	justify-content: space-between;
}
.detalle-direccion {
	margin-bottom: 10px;
	white-space: normal;
}
.hotel-precio .destination {
	font-size: 13px;
    margin-bottom: 9px;
    font-weight: 600;
    white-space: normal;
    text-align: center;
}
.detalle-precio .price {
	text-align: center !important;
	font-size: 21px !important;
	float: none;
}
.hotel-precio .price-detail{
	text-align: center;
	font-size: 13px;
	margin: 0 0 10px;
}
a.btn-hotel {
    background-color: var(--tts-primary-color);
    font-weight: 700;
    border-radius: 4px;
    color: #fff;
	box-shadow: 0px 3px 1px -2px rgb(0 0 0 / 20%), 0px 2px 2px 0px rgb(0 0 0 / 14%), 0px 1px 5px 0px rgb(0 0 0 / 12%);
}
a.btn-hotel:hover {
    background-color: var(--tts-primary-color);
	color: #fff;
}
.detalle-precio {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.col-resultados .dataTables_wrapper .dataTables_paginate .paginate_button.current{
	background: var(--tts-primary-color);
    border-color: var(--tts-primary-color);
	color: #fff !important;
	box-shadow: 0 1px 0 rgb(255 255 255), 0 0 2px rgb(0 0 0 / 30%) inset;
}
.col-resultados .dataTables_wrapper .dataTables_paginate .paginate_button {
    padding: 0 7px;
    font-size: 14px;
}
.col-resultados .dataTables_wrapper .dataTables_paginate .paginate_button:hover {
    background: var(--tts-primary-color);
    color: #fff!important;
}
#orden-resultados{
	margin: 0;
}
.col-resultados .titulo-hotel{
	margin-top: 18px;
    font-size: 20px;
}
label.texto-ordenar-por {
    margin-bottom: 0;
}
li.ver-mas, li.ver-menos {
    padding-left: 20px;
    font-size: 14px;
    color: var(--tts-primary-color);
}
li.ver-mas i, li.ver-menos i{
	color: var(--tts-primary-color);
}
.container-vuelos #tablaRes .box-oferta {
	box-shadow: rgb(0 0 0 / 24%) 0px 1px 2px 0px;
}


/* ----------------------------- */
/* begin sliders */
/* many of these styles come from bootstrap-slider/slider.css */
/* ----------------------------- */
.slider {
    display: block;
    vertical-align: middle;
    position: relative;
}
.slider.slider-horizontal:last-of-type {
    margin-bottom: 0;
}

.slider-track {
    position: absolute;
    cursor: pointer;
    background-repeat: repeat-x;
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
    border-radius: 4px;
}
.slider.slider-horizontal .slider-track {
    height: 10px;
    width: 100%;
    margin-top: -5px;
    top: 50%;
    left: 0;
}
.row-filter .slider.slider-horizontal .slider-track {
    height: 3px;
    background-image: none;
    background-color: #dddede;
    width: 90%;
    left: 5%;
}

.slider-selection {
    position: absolute;
    -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
    -moz-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
    box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
}
.row-filter .slider-selection {
    background: var(--tts-primary-color);
}
.slider-track-low, .slider-track-high {
    position: absolute;
    background: transparent;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    border-radius: 4px;
}
.slider.slider-horizontal .slider-selection, .slider.slider-horizontal .slider-track-low, .slider.slider-horizontal .slider-track-high {
    height: 100%;
    top: 0;
    bottom: 0;
}

.slider-handle {
    position: absolute;
    width: 20px;
    height: 20px;
    background-color: #444;
    -webkit-box-shadow: inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05);
    -moz-box-shadow: inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05);
    opacity: 1;
    border: 0px solid transparent;
}
.row-filter .slider-handle {
    background-color: #fff;
    border: 1px solid var(--tts-primary-color);
}
.slider-handle.round {
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    border-radius: 20px;
}
.row-filter .slider.slider-horizontal .slider-tick, .row-filter .slider.slider-horizontal .slider-handle {
    margin-left: -10px;
    margin-top: -9px;
}
/* ----------------------------- */
/* end sliders */
/* ----------------------------- */


@media only screen and (max-width: 991px) {
	.div-lef {
		width: 70%;
	}
	.div-right {
		width: 30%;
	}
	.tablaResultados .col-filtros, .tablaResultados .col-ordenar{
		width: 100%;
		height: 100%;
		position: fixed;
		top: 0;
		left: 0;
		background-color: #fff;
		z-index: 9999;
		overflow: auto;
		padding-bottom: 100px;
		padding-left: 20px;
		padding-right: 20px;
		display: none;
	}
	#orden-resultados{
		display: none;
	}
	.texto-ordenar-por{
		display: none;
	}
	.col-resultados .titulo-hotel {
		margin-top: 20px;
	}
	.tablaResultados .col-resultados{
		width: 100%;
	}
	.index.responsive.container-vuelos, .index.responsive.container-hoteles {
		z-index: 99;
	}
	.row-close-modal, .row-close-modal-order{
		position: fixed;
		top: 0;
		left: 10px;
		width: 100%;
		background-color: #fff;
		z-index: 100;
		border-bottom: 1px solid #ddd;
		padding: 5px 0;
		display: block;
	}
	.filter-list{
		padding-top: 44px;
	}
	
	section.opciones-modal{
		display: block;
	}
	button.borrar-filtros {
		text-align: right;
	}
	.row-aplicar-modal, .row-ordenar-modal{
		display: block;
	}
}

@media only screen and (max-width: 768px) {
	.item-hotel{
		display: block;
	}
	.hotel-detalle {
		border-right: none;
		border-bottom: 1px solid #cacaca;
	}
	.hotel-img {
		padding-left: 0 !important;
		padding-right: 0 !important;
		height: 185px;
		overflow: hidden;
		border-top-left-radius: 10px;
		border-top-right-radius: 10px;
		border-bottom-left-radius: 0;
	}
	.detalle-precio {
		margin-bottom: 20px;
	}
	.heading, .detalle-direccion, .stars  {
		text-align: center;
	}
	.block {
	   width: 100%!important;
	}
	.top .img {
	   margin: auto;
	}
	.bottom {
	   width: 100%;
	   left: 0;
	   right: 0;
	   width: 80%;
	   margin: auto;
	}
	#tablaRes td.dataTables_empty {
		white-space: normal;
	}
}

@media only screen and (max-width: 600px) {
	.div-lef {
		width: 100%;
	}
	.div-right {
		width: 100%;
	}
}

@media only screen and (max-width: 350px) {
	.box-oferta, .box-oferta .text-bold {
		font-size: 12px;
	}
}
