@font-face {
    font-family: roboto;
    src: url('../fonts/roboto/roboto-Light.ttf') format("truetype");
}

body {
    font-family: roboto;
}

/* Formatea los mensajes Flash::xxx() de KumbiaPHP */
.flash {
    margin: 5px 0;
    min-height: 32px;
    padding:3px 10px 3px 50px;
    background-repeat: no-repeat;
    background-position: 10px center;
    line-height: 32px;
    border-radius: 2px;
}

.error {
    color: #D8000C;
    background-color: #FFBABA;
}

.info {
    color: #00529B;
    background-color: #BDE5F8;
}

.valid {
    color: #4F8A10;
    background-color: #DFF2BF;
}
.warning {
    color: #9F6000;
    background-color: #FEEFB3;
}

.negro {
    color: #000;
    font-size: 0.9em;
}

H1 {
    margin-top: 0px;
    margin-bottom: 10px;
    font-size: 30px;
    color: #BF0411;
}

H2 {
    margin-top: 0px;
    margin-bottom: 0px;
    font-size: 20px;
    color: #BF0411;
}

H3 {
    margin-top: 0px;
    margin-bottom: 0px;
    font-size: 20px;
}

hr {
    color: #c8c8c8;
}
.negrita {
  font-weight: bold;   
}

.derecha {
    text-align: right;
}

td, th {
  padding: 5px 5px;
  display: table-cell;
  text-align: left;
  vertical-align: middle;
  border-radius: 2px;
}

th {
    border-radius: 0px;
    padding: 10px 5px;
    color: #000;
    background-color: #E57373;
}

/*******************************/
/*MODIFICACIONES MATERIALIZECSS*/
/*******************************/

[type="checkbox"]:checked + label:before {
  border-right: 2px solid #BF0411;
  border-bottom: 2px solid #BF0411;
}

.row {
  margin-left: auto;
  margin-right: auto;
}

.row .col {
  float: left;
  box-sizing: border-box;
  padding: 0.4rem 0.5rem;
  min-height: 1px;
}

@media only screen and (min-width: 601px) {
  .container {
    width: 95%;
  }
}

@media only screen and (min-width: 993px) {
  .container {
    width: 85%;
  }
}

input:not([type]):focus:not([readonly]),
input[type=text]:focus:not([readonly]),
input[type=password]:focus:not([readonly]),
input[type=email]:focus:not([readonly]),
input[type=url]:focus:not([readonly]),
input[type=time]:focus:not([readonly]),
input[type=date]:focus:not([readonly]),
input[type=datetime]:focus:not([readonly]),
input[type=datetime-local]:focus:not([readonly]),
input[type=tel]:focus:not([readonly]),
input[type=number]:focus:not([readonly]),
input[type=search]:focus:not([readonly]),
textarea.materialize-textarea:focus:not([readonly]) {
  border-bottom: 1px solid #B71C1C;
  box-shadow: 0 1px 0 0 #B71C1C;
}

.switch label input[type=checkbox]:checked + .lever:after {
  background-color: #B71C1C;
  left: 24px;
}

.switch label input[type=checkbox]:checked + .lever {
  background-color: #D9B0B1;
}

.dropdown-content {
  background-color: #B71C1C;
  margin: 0;
  display: none;
  min-width: 100px;
  max-height: 650px;
  overflow-y: auto;
  opacity: 0;
  position: absolute;
  z-index: 999;
  will-change: width, height;
}

.dropdown-content li > a, .dropdown-content li > span {
  font-size: 16px;
  color: #fff;
  display: block;
  line-height: 22px;
  padding: 14px 16px;
}

.dropdown-content li:hover, .dropdown-content li.active, .dropdown-content li.selected {
  background-color: #920000;
}

footer.page-footer {
  margin-top: 20px;
  padding-top: 0px;
  background-color: #ee6e73;
}

/***************************************/

.caja_thumb {
    width: 200px;
    height: 200px;
}

.caja10 {
    padding: 10px 10px 10px 10px;
}

.caja15 {
    padding: 15px 15px 15px 15px;
}

.caja20 {
    padding: 20px 20px 20px 20px;
}

.caja_gris {
    background-color: #E5E5E5;
    font-size: 30px;
}

.caja_negra {
    background-color: #000;
    font-size: 30px;
}

.caja_gris_bloque {
    background-color: #cccccc;
    padding-top: 15px;
    padding-bottom: 15px;
}

.caja_slider{
    width: 100%;
}

.arriba_abajo_10{
    padding-top: 15px;
    padding-bottom: 10px;
}

.rojo {
    color: #BF0411;
}

.azul {
    color: #029FE2;
}

.buscador {
    font-size: 1.5em;
}

.texto1 {
    margin-top: 0px;
    margin-bottom: 0px;
    font-size: 30px;
    color: #BF0411;
}

.texto2 {
    margin-top: 0px;
    margin-bottom: 0px;
    font-size: 25px;
    color: #BF0411;
}

.texto3 {
    font-size: 15px;
    color: #BF0411;
}

.texto4 {
    font-size: 16px;
}

.nota {
    font-size: 12px;
    color: #383838;
}

.contactenos {
    height: 223px;
    background-image: url('../img/contactenos.jpg');
    background-position: 50% 50%;
}

.fondo_pie {
    background-image: url('../img/travel.jpg') ;
    background-position: 0% 50%;
    background-repeat: no-repeat;
}

.cuadro_rojo {
    width: 254px;
    padding: 15px 0 25px 0;
    background-color: #BF0411;
}

.izquierda15 {
    padding-left: 15px;
}

.enlace_blanco {
    color: #fff;
}

.enlace_blanco a:link {
    color: #fff;
}

.enlace_blanco a:visited {
    color: #fff;
}

.enlace_blanco a:hover {
    color: #BF0411;
}

.enlace_blanco2 {
    color: #fff;
}

.enlace_blanco2 a:link {
    color: #fff;
}

.enlace_blanco2 a:visited {
    color: #fff;
}

.enlace_blanco2 a:hover {
    color: #b8b8b8;
}

.enlace_gris {
    color: #424242;
}

.enlace_gris a:link {
    color: #424242;
}

.enlace_gris a:visited {
    color: #424242;
}

.enlace_gris a:hover {
    color: #BF0411;
}

.justifica_total {
    text-align: justify;
}

.cabecera_slider {
    color: #fff;
    font-size: 40px;
}

.fondo1 {
    /** background-image: url('../img/fondo1.png');**/
}

.fondo2 {
    background-color: white;
}

.cabecera1 {
    color: #fff;
    background-color: #AC0310;
    padding-top: 10px;
    height: 40px;
}

.cabecera {
    color: #fff;
    background-color: #BF0411;
    padding: 10px 0 10px 10px;
}

.oferta_cabecera {
    color: #fff;
    background-color: #BF0411;
    padding: 10px 0 10px 10px;
    position: relative;
}

.oferta_precio {
    color: #fff;
    background-color: #0481bf;
    padding: 10px 0 10px 10px;
    position: relative;
    top: -6px;
    
}

.precio {
    font-size: 20px;
}

.oferta_foto {
    padding-top: 50px;
}

.texto_slider {
    color: #fff;
    font-size: 25px;
}

.titulo-oferta {
    color: #fff;
    background-color: #000;
    padding: 20px 0 10px 10px;
    position: relative;
    top: -9px; 
    font-size: 1.5em;
    filter:alpha(opacity=60);
    opacity:.80
}

.barra_destinos {
    background-color: #000;
    font-size: 20px;
    padding-bottom: 10px;
}

.muy_grande {
    font-size: 35px;
}

#header {
    background: #bada55;
    line-height: 1.6em;
    text-shadow: 0 1px 1px rgba(0,0,0,.2);
    width:100%;
    box-sizing: border-box;
    z-index:1000;
}

.img-ancho-total {
  width: 100%;   
}

.ul-personalizado{
    list-style: url('../img/punto-rojo.jpg') square;
    padding-left: 15px;
}

div.crop-img {
    border: 0px solid;
    border-color: #BF0411;
    max-width: 100%;
    overflow: hidden;
    margin: 0 auto;
    padding: 0;
    position: relative;
}

div.crop-img img {
    display: block;
    max-width: none !important;
}

div.cuadradicos {
    max-width: 100%;
    overflow: hidden;
    margin: 0 auto;
    padding: 0;
    position: relative;
}

div.cuadradicos img {
    display: block;
    max-width: none !important;
}

.zoom img{
    height: 100%;
    width: 100%;
    
    -webkit-transition: all 1s ease;
    -moz-transition: all 1s ease;
    -ms-transition: all 1s ease;
    transition: all 1s ease;
}
.zoom img:hover {
    height: 125%;
    width: 125%;
    margin-left: -50px;
}

.pequeno {
    font-size: 10px;
}

.caja_busqueda {
    padding: 15px 100px 15px 100px;
    background-color: #D4D4D4;
}

#cargando {
    display: none;
    position:absolute;
    z-index:1500;
    width:85%;
    height:40%;
    background: url('../img/loading.gif') no-repeat center;
}

#resumen { 
    bottom: 60px;
    position: absolute;
    line-height: 30px;
    vertical-align: text-bottom;
    font-size: 24px;
}

#titulo { 
    font-size: 50px;
    bottom: 100px;
    position: absolute;
    line-height: 30px;
    vertical-align: text-bottom;
}

#pie_thumb {
    position: relative;
    padding-top: 10px;
    padding-bottom: 10px;
    background: url('../img/gris_transparente.png');    
    bottom: 49px;
}


.contenedor_thumb img{
    height: 220px;
}

.contenedor_localizaciones img{
    height: 230px;
}

.crop_principal{
    float:left;
    //margin:.5em 10px .5em 0;
    overflow:hidden; /* IMPORTANTE */
    position:relative; /* IMPORTANTE */
    //border:1px solid #ccc;
    width:100%;
    height:500px;
}
/* Ocultamos parte de la imagen */
.crop_principal img{
    position: absolute;
    top:-270px;
    //left:-55px;
}

.texto_boton {
    font-size: 14px;
}

.select-1  {
    width: 50px;
}



/* MENÚ LATERAL FIJO*/
#header{
    width: 100%; 
    height: 250px; 
    background: none; 
}
#headercont{
    width: 900px; 
    margin: auto;
    height: 250px
}
#headercont img{
    margin-top: 20px; 
    float: left
}

.fixed{
    position:fixed;
    top: 10px
}
.margen{
    margin-top: 50px
}

.vertical-menu {
    width: 300px; /* Set a width if you like */
}

.vertical-menu a {
    color: #B71C1C; 
    background-color: #ECECEC;
    font-size: 25px;
    display: block; /* Make the links appear below each other */
    padding: 12px; /* Add some padding */
    text-decoration: none; /* Remove underline from links */
}

.vertical-menu a:hover {
    background-color: #B71C1C; /* Dark grey background on mouse-over */
    color: #fff;
}

ul.browser-default, ul.browser-default li {
    margin-left: 10px;
}

ul {
    list-style: none;
}

.caja-oferta {
    background-color: #D8DBD6;
    padding: 5px 10px 5px 10px;
}

.color2 {
    color: #1c1cb8;
}

.caja_roja {
    color: #fff;
    background-color: #B71C1C;
}

.centrado {
    margin-left: auto;
    margin-right: auto;
    display: block;
}

.texto-centrado {
    text-align: center;
}

.caja_servicios {
    padding: 0 20px 0 20px; 
}

.titulo {
    font-size: 18px;
    color: #BF0411;
}

.titulo a:link a:visited {
    font-size: 18px;
    color: #BF0411;
}

.swiper-slide img {
    width: 100%; 
    height: auto;
}

.swiper-slide {
    position: relative; /* Necesario para que el texto se posicione relativo al contenedor */
}

.text-titulo {
    position: absolute;
    top: 25px;
    left: 25px;
    color: #fff; /* Puedes ajustar el color del texto según tus necesidades */
    font-size: 36px; /* Ajusta el tamaño del texto si es necesario */
    font-weight: bold;
    z-index: 10; /* Asegura que el texto esté por encima de la imagen */
}

.text-descripcion {
    top: 25px;
    left: 25px;
    color: #fff;
    font-size: 20px;
}

