@charset "utf-8";
/* CSS Document */

@import url('https://cdn-uicons.flaticon.com/2.6.0/uicons-regular-rounded/css/uicons-regular-rounded.css');
@import url('https://cdn-uicons.flaticon.com/2.6.0/uicons-brands/css/uicons-brands.css');

@font-face {font-family:Montserrat;
src: url("../fuentes/Montserrat.ttf") format("truetype");
}

@font-face {font-family:Cinzel;
src: url("../fuentes/Cinzel.ttf") format("truetype");
}

/*--------*/

* {outline:0; padding:0; margin:0; box-sizing: border-box;}
html {font-size: 62.5%; scroll-behavior: smooth;}

body { font-family:Montserrat; overflow-x:hidden !important; background:#000; }
a {color:#FDBB2D; text-decoration:none; padding:.5em;} a:hover {color:#d69718;}
strong { font-family:Montserrat; font-weight: 600; }
b { color:#B38219; }
i { color:#FDBB2D; }
p { padding:.5em 0; line-height:2.1rem; width:100%; color:#fff9f3; font-size:1.5rem;} p i {margin-left:-.5em;} 
button {border:0; background:none; color:#fff; cursor:pointer;}

main { width:100%; clear:both; font-size:1.6rem; background:#000; color:#fff;}
main ul { padding:.5em 0; } main ul li {list-style: none; padding:.25em 0; padding-left:25px; line-height:2.1rem;  } main ul li i {margin-left:-23px; font-size:1.2rem;}

h1 {font-size:5rem; line-height:5.5rem; color:#FDBB2D; text-align:center; padding:.5em 0; width:100%; font-family:Cinzel;   } 
h2 {font-size:3rem; line-height:3.5rem; color:#FDBB2D;  text-align:center; padding:.3em 0; width:100%; font-family:Cinzel; } 
h3 {font-size:1.5rem; line-height:2rem; color:#B38219;  padding:.4em 0; width:100%; font-family:Cinzel; } 
h4 {font-size:2rem; line-height:3rem; color:#fff;  text-align:center; padding:1em 0;  width:100%; font-family:Montserrat; } 
h5 {font-size:2rem; line-height:3rem; color:#fff;  text-align:left; padding:1em 0;  width:100%; font-family:Montserrat; } 
h6 {font-size:1.5rem; line-height:2rem; color:#fff;  text-align:center; padding:1em 0; width:100%; font-family:Montserrat; } 

.nota {color:#A5A5A5; font-size:1.2rem; }
.clear {width:100%; height:1px;}


.boton {padding:1em 1.5em; margin: 1em 0em; color:#fff; border:2px solid #fff; font-size:1.4rem; text-align:center; cursor:pointer; font-family:Montserrat;  } 
.boton:hover { background:#fff; color:#000; } .boton i { color:#fff !important; } .boton:hover i {color:#fff !important;}

.boton2 {padding:1em 1.5em; color:#000; background:#fff; border:2px solid #000; font-size:1.4rem; text-align:center; cursor:pointer; font-family:Montserrat;  } 
.boton2:hover { background:#000; color:#fff; }

.boton3 {padding:1em 1.5em; background:#40546D; color:#fff; border-radius:1em;  font-size:2rem; text-align:center; cursor:pointer; display:flex; align-items:center; justify-content: center; }


.centrado {text-align: center;}
#arriba { display:none; position:fixed; bottom:2em; right:30px; z-index:20; background:#40546D; color:#fff; cursor: pointer; padding:13px  8px 10px 8px; border-radius:50px; border:0; box-shadow:0 3px 3px 0 rgba(0,0,0,0.5); line-height:18px; font-size:1.5rem;}
#arriba:hover {  background:#d69718; color:#FFFFFF; }


.dorado {background: linear-gradient(0deg,rgba(230, 172, 57, 1) 17%, rgba(117, 85, 20, 1) 48%, rgba(242, 220, 172, 1) 54%, rgba(253, 187, 45, 1) 79%, rgba(179, 130, 25, 1) 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; }

.back2 {background:#F5E7FF; width:100%; display:flex; justify-content:space-evenly; flex-wrap:wrap; align-items:center; padding:2em 0; }
.columna-2, .columna-3, .columna-4, .columna-5, .columna-6, .columna-8,  .columna-25, .columna-75 { min-height:50px;  padding:1em .5em; }


/*-------------------------Widget---------------*/


.widget { display:flex; flex-wrap:wrap; align-items:flex-start; justify-content:space-evenly; padding:1em 0 4em 0; position:relative; margin:1em 0;}

.widget .columna-3 { width:318px; min-height:150px; background:rgba(0,0,0,.1); padding:0;}
.widget .columna-3 img { width:100%; margin-bottom:.5em; }
.widget .columna-3 p {padding:1em; } .widget ul {display:none;}
.widget .boton { display:flex;  justify-content:center; width:318px; margin-top:1em; } .widget .boton h4 {padding-top:.7em;} .widget .boton:hover h4 {color:#fff;} 


/*-------------------------Banner---------------*/
	
.close { width:auto; position:absolute; z-index:51; font-size:2rem; right:-10px; top:-40px; padding:.5em .3em .3em .3em; border:none; cursor:pointer; color:#fff;} 
.close2 { width:auto; position:absolute; z-index:51; font-size:2rem; right:50px; top:40px; padding:.5em .3em .3em .3em; border:none; cursor:pointer; color:#fff;} 
.close i {color:#fff;}
.close:hover, .close:hover i {color:#40546D;}
.close i {color:#fff;}
.close2:hover, .close2:hover i {color:#40546D;}



/*-------------------------Slider---------------*/


.slider p, .slider h1, .slider h2, .slider h3 { color:#fff;}
.btn-floating1, .btn-floating2 { color:#D3E9FF;  font-size:4rem; z-index:11; }
.btn-floating1:hover, .btn-floating2:hover { color:#fff; cursor:pointer;}




/*-------------------------Slider productos---------------*/

.producto_slider { position:relative; background:none url("../images/app4.png"); }

.flecha1, .flecha2 {color:#40546D; padding:.5em .3em .3em .3em; font-size:1.8rem; z-index:7; cursor:pointer; position:absolute; background:rgba(0,0,0,.3); }
.flecha1 {left:0; bottom:.65em;}
.flecha2 {right:0; bottom:.65em;}
.flecha1:hover, .flecha2:hover {color:#fff; cursor:pointer;} .btn-floating1 { margin-left:-35px; } .btn-floating2 {margin-left:15px;}



/*------------------Social Menu--------*/

.social { position:fixed; right:15px; top:150px; z-index:10;  }
.social ul {list-style:none; text-align:right; padding:0;}
.social ul li a {display:inline-block; color:#40546D; background:#fff; padding:10px 8px 2px 8px; text-decoration: none; border:solid 1px #cecece; font-size:4rem; margin-top:-1px; 
animation-direction: normal; -webkit-transition:400ms ease;-o-transition:400ms ease; transition:400ms ease; border-radius:3em; box-shadow:-3px 3px 5px rgba(0,0,0,.3);}
.social ul li a:hover { padding:14px 12px 6px 12px; }



/*--------------------- slider logos -----*/

.columna-cliente { width:100%; min-height:50px; overflow:hidden;  margin-top:-1px; padding:1em 0 0 0;}
.cliente { width:180px;  margin-left:-1.31em; }


/*--------------------- carrusel -----*/

#carrusel { width:100%; overflow:hidden; min-height:250px; position:relative; padding:3em 1em;  }

.carrusel{ width:4000px; left:0px; position:relative; display:flex;}
.carrusel>div { margin-right:20px; width:318px; text-align:center; padding-bottom:4em; margin-bottom:3em; position:relative; }
.carrusel img  { width:100%;}
.carrusel a {position:absolute; bottom:25px; left:50%; margin-left:-80px;  }

.card { background:#fff; border-radius:1.6em; box-shadow:0 5px 10px rgba(0,0,0,.3);  min-height:300px;}
.card p { color:#000 !important; padding:1em;}
.card h2 { background:#fdbb2d; color:#000; margin-bottom:.5em; border:1px solid #fff; border-top-left-radius:1em; border-top-right-radius:1em;  } .card h2 b {color:#fff;}
.card h3 {padding: .6em;}

.card2 { background:#333; border-radius:1.5em; box-shadow:0 5px 10px rgba(0,0,0,.3);  min-height:300px; color:#fff; padding:0 1em;}
.card2 p, .card2 h2, .card2 b { color:#fff !important; }
.card2 i {color:#40546D;}

.left-arrow, .right-arrow { color:#000; font-size:2.7rem;  }	
.right-arrow:hover {color:#40546D; }


/*--------------------- banners -----*/


#banner {width:100%; height:100%; background:#41546D; position:fixed; z-index:25; display:none;} 
#banner2 {width:100%; height:100%; background: rgb(0,0,0,.9); position:fixed; z-index:25; display:none;} 


/*--------------------- extras -----*/

.icono { font-size:7rem; }
.foto { width:100%;} .foto2 {box-shadow:0 0 10px rgba(0,0,0,.5); border-radius:1.5em;} .foto3 {box-shadow:0 0 10px rgba(0,0,0,.5);}	
.foto_pantalla {width:100%; box-shadow:0 0 5px rgba(0,0,0,.3); margin:1em 0;}

main table {text-align:left;  font-size:1.6rem; line-height:2.5rem; color:#fff; width:100%; } 
main table td { border-bottom: solid 1px #40546D; padding:.6em; }
.separador {width:100%; height:50px;}
.separador2 {width:100%; height:30px; }

.marcas { width:320px; height:150px; }

.opacidad {opacity:.5;}

.back-blue { background: rgb(41,215,246); background: linear-gradient(90deg, rgba(41,215,246,1) 0%, rgba(105,83,244,1) 100%);}
.back-pink { background: rgb(235,203,172); background: linear-gradient(-90deg, rgba(235,203,172,1) 0%, rgba(200,113,212,1) 100%);}
.back-large { background: rgb(235,203,172); background: linear-gradient(90deg, rgba(235,203,172,1) 0%, rgba(200,113,212,1) 33%, rgba(105,83,244,1) 66%, rgba(41,215,246,1) 100%);}


.azul {width:100%; min-height:400px; background:#40546D;  }

.azul p, .azul h1, .azul h2, .azul h3, .azul a { color:#fff;}
 .azul i  {color:#fff;}

.bco, .bco i {color:#fff;}

.active3 { background:url("../images/active-btn.svg") bottom no-repeat; background-size:contain;  padding:1.1em 1em 1.1em 0;}  .active span {color:#fff !important;} 

.sombra {box-shadow:0 3px 3px rgba(0,0,0,.5); }


.piso {position:absolute; bottom:2em; left:0; margin:0 auto;}	
.piso2 {position:absolute; bottom:2em; left:0; margin:0 auto; width:100%;}	


.raya {width:100%; height:2px; background:#FDBB2D linear-gradient(90deg,rgba(179, 130, 25, 1) 0%, rgba(253, 187, 45, 1) 50%, rgba(179, 130, 25, 1) 100%); margin:.5em 0; }
.raya2 {width:100%; height:2px; background:#fff; margin:.5em 0; }


.video-style {width: 90%; border-radius: 1em; box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px; }

#side-menu {
  position: fixed;
  top: 120px; /* Ajusta según tu header */
  right: 40px;
  width: 220px;
  height: auto;
  padding: 2rem 1rem;
  z-index: 1000;
}

#side-menu nav {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.menu-link {
  text-decoration: none;
  color: #fff;
  font-weight: 500;
  transition: background 0.3s;
background: #161616;
  padding: 0.5rem 1rem;
  border-radius: 4px;
}

.menu-link.active2 {
  background: #000;
  color: #fdbb2d!important;
font-weight: bold;
}

    details {
      background: #fff;
      border: 1px solid #ccc;
      border-radius: 5px;
      margin-bottom: 1rem;
      padding: 1rem;
	  color: #000;
	  width: 90%;
    }
    summary {
      font-weight: bold;
      cursor: pointer;
      outline: none;
	  color: rgba(0,0,0,0.75);
    }
    summary::-webkit-details-marker {
      display: none;
    }
    summary:before {

      color: #666;
    }
    details[open] summary:before {

      color: #000;
    }


/*-------------------------------------- WEB--*/
	

@media screen and (min-width:1020px){	
	
main {padding-top:0;}

#banner {width:100%; height:100%; background:rgba(0,0,0,.8); position:fixed; z-index:20; padding:2em; } 		
.bannerIn {max-width:800px; max-height:550px; position:absolute; z-index:21;  background:#000; top:50%; margin-top:-275px; left:50%; margin-left:-400px; } .bannerIn img { width:100%; border:2px solid #fff;}	
	
header { width:100%; height:auto; text-align:center; position:absolute; z-index:1; } 
		
.top { text-align:right; width:auto; padding:.5em 0; font-size:1.5rem; position: fixed; right:4em; top:1.2em; z-index:20;  }
.top ul {padding:.5em 0; margin-right:1em; }
.top li {display:inline; padding:1em 0; }
.top a img { width:23px;} .top a:hover img {filter:invert(1);} 
.top a {background:#fff; color: #000; border-radius:3em; padding:.8em .5em .5em .5em; margin:0 .3em;} 
.top a i {color:#000; } .top a:hover {color: #fff; background:#fdbb2d;}  .top a:hover i {color:#fff;}
	
.logo {width:auto; text-align:center; } 
.logo img {width:230px;  padding:1.8em 2em;  }	
	
.bannerIn {width:800px; min-height:447px; position:absolute; z-index:21; background:#000; top:50%; margin-top:-250px; left:50%; margin-left:-400px;  } 	
.bannerIn2 {width:500px; height:auto; position:absolute; z-index:21; background:#fff; top:5%; left:50%; margin-left:-250px; border-radius:3em; padding:1em 2em;  } 	

nav {display:none;}    
.nav { width:auto; height:auto; font-size:3rem; margin-bottom:20px; position: fixed; left:3em;  }
.nav a { padding:1.1em 1em; text-decoration:none; line-height:1.5rem; text-transform:uppercase; }
.nav img {width:30px;}	
.nav .last {border:none; } nav .last2 {border:none; margin:0 2em 0 3em;}		
.active { color:#ffdc97 !important;}  .active span {color:#fff !important;} 	

.menu {display:flex; height:100%; flex-wrap: wrap; justify-content:center; align-items:flex-start; color:#fff; font-size:2rem; font-family:Cinzel;  }
.menu a, .menu i {color:#fff; padding:.2em 0;} .menu a:hover, .menu a:hover i {color:#fdbb2d;}	

.dropbtn { padding:1.1em 3em 1em 3em; cursor:pointer; }
.dropdown {  display:inline-block;   }
.dropdown:hover .dropdown-content, .dropdown:hover .dropdown-content2  { display: block;}	
	
.dropdown-content { display:none; position:absolute; z-index:20; text-align:center; background-color:#fff;  box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.4); margin-top:1.3rem; }	
.dropdown-content ul {  padding:0;  }
.dropdown-content li { border-left:0; }
.dropdown-content a span {padding-left:.5em; color:#40546D; }
.dropdown-content a {color:#40546D; background:none; text-decoration:none; display:block; padding:1em 4em 1em 2em !important;  border-bottom:solid 1px #ccc; font-size: 1.1rem; border-radius:0;}
.dropdown-content a:hover { background:#FFF; color:#000; border-top:0; border-bottom:1px solid #000; }
.drop-active { color:#40546D !important;}	.drop-active img { background:#000;}
		
.menu-fixed { position:fixed; z-index:1000; width:100%; top:0; }	
	
.slider  { width:100%; height:850px; display:flex; justify-content:flex-start; flex-wrap:wrap; align-content: stretch; }
.slider p { font-size:1.6rem; display: block; text-align:center; padding:0.5em; color:#fff; background: rgba(0,0,0,0.50); border-radius: 8px; }
.slider h1, .slider h2 {color:#fff; background: rgba(0,0,0,0.50); border-radius: 8px; }
	
.inicio {background: url("../images/inicio.jpg") center; background-size:cover; }	
.inicio2 {background: url("../images/inicio2.jpg") center; background-size:cover; }	
.inicio3 {background: url("../images/inicio6.jpg") center; background-size:cover; }	
.conoce {background: url("../images/conoce-1.jpg") center; background-size:cover; }	
.conoce2 {background: url("../images/conoce-2.jpg") top left no-repeat; background-size:contain; }	
.conoce3 {background: url("../images/conoce-3.jpg") center; background-size:cover; }	
.paquetes {background: url("../images/paquetes.jpg") center; background-size:cover; }	
.paquetes2 {background: url("../images/mezcal4.jpg") center; background-size:cover; }	
.adicionales {background: url("../images/adicionales-1.jpg") center; background-size:cover; }
.preguntas {background: url("../images/preguntas.jpg") center; background-size:cover; }
.preguntas2 {background: url("../images/preguntas2.jpg") center; background-size:cover; }
.reserva {background: url("../images/reservaciones-1.jpg") center; background-size:cover; }

	
	
.columna   {max-width:1020px; margin:0 auto; display:flex; justify-content:space-evenly; flex-wrap:wrap; align-items:center; padding:3em 0; }
.columna-2 {width:485px;} 
.columna-3 {width:318px;}
.columna-4 {width:234px;}
.columna-5 {width:184px;}
.columna-6 {width:151px;}
.columna-8 {width:100px;}
.columna-50 {width:50%; }
.columna-20 {width:20%;}
.columna-25 {width:25%;}
.columna-30 {width:33%;}
.columna-70 {width:67%;}
.columna-75 {width:75%; }
.columna-60 {width:60%; }
.columna-40 {width:40%;}
	
.izquierda, .izquierda2 {text-align:left !important;}
.derecha,  .derecha h3 {text-align:right !important;} .derecha h3 {padding:.5em 0;}
.oculto { display:none !important; }	
	
 
    
}


/*-------------------------------------- movil--*/ 

@media screen and (max-width:480px){

#banner {width:100%; height:100%; background:rgba(0,0,0,.8); position:fixed; z-index:20;} 	
.bannerIn {width:85%; margin-left:7.5%; height:auto; position:absolute; z-index:21; top:80px; } 
.bannerIn img { width:100%; border:2px solid #fff;}	
	
header {width:100%; min-height:78px; background:#fff; text-align:left; display:flex; flex-wrap:wrap; justify-content:flex-start; align-items:flex-start;
border-bottom:1px solid #40546D; position:fixed; z-index:24;}
.logo {padding:0; width:100%; }
.logo img {width:70px; padding:0 0 1em 1em; margin-top:0; }	
main { padding-top:78px; background:#000;}	
	
.menu_movil {width:auto; z-index:20; position:absolute; padding:1.5em 1em .6em 1em; margin:0;  cursor:pointer; top:8px; right:15px; background:#fff; }
.btn_menu { padding:0; color:#40546D; text-decoration:none; font-weight:normal; font-size:2.8rem;} 
	
nav {position:absolute; z-index:1001; width:100%;  }		
nav ul { width:100%; left:-100%;  border:none; position:absolute;  padding:10px 0 0 0; top:78px; background:#fff; color:#000; border-bottom:solid 2px #40546D;  } 
nav li {display:block; float:none; text-align:left; width:100%; border-right:none; border-bottom:1px solid #6f78de; padding-left:2em; }
nav a { font-size:1.4rem; padding:.8em 0; color:#40546D; width:100%; display:inline-block;}
nav span { color:#40546D;} 
nav .last { border:none;}
.active { color:#ffdc97 !important;}  .active span {color:#fff !important ;}	


.dropdown-content {display:block; padding-left:2em;}
.dropdown-content a { display:inline-block; padding:.8em 0; }
	
#banner {width:100%; height:100%; background:rgba(0,0,0,.8); position:fixed; z-index:20; display:none; } 	
.bannerIn, .bannerIn2 { width:90%; left:5%; position:absolute; z-index:21; top:3%; border-radius:2em; background:#fff; padding:1em; overflow-y:visible; } 	 	
.bannerIn iframe {border-radius:1em; margin:4em 0 2em 0;}				
	
.slider {width:100%; min-height:550px; display:flex; align-items:center;}
.slider img {width:100%; height:auto; }		
.slider p {padding:0.2em; font-size:1.7rem; line-height:2.1rem; text-align:center; width:100%; color:#fff; background: rgba(0,0,0,0.50); border-radius: 8px; }
.slider p a {text-shadow:none;}

.slider2 {width:100%; min-height:250px; display:flex; align-items:center;}
.slider2 img {width:100%; height:auto; }		
.slider2 p {padding:0.2em; font-size:1.7rem; line-height:2.1rem; text-align:center; width:100%; color:#fff; background: rgba(0,0,0,0.50); border-radius: 8px; }	
	
	
.foto-slider { width:100%; height:200px; }	
	
h1 {font-size:3.2rem; line-height: 3.5rem; padding:0.4em; background: rgba(0,0,0,0.50); border-radius: 8px;}
h2 {font-size:2.5rem; padding:0.3em; background: rgba(0,0,0,0.50); border-radius: 8px;}
    
.inicio {background: url("../images/inicio.jpg") center; background-size:cover; }	
.inicio2 {background: url("../images/inicio2.jpg") center; background-size:cover; }	
.inicio3 {background: url("../images/inicio6.jpg") center; background-size:cover; }	
.conoce {background: url("../images/conoce-1.jpg") center; background-size:cover; }	
.conoce2 {background: url("../images/conoce-2.jpg") top left no-repeat; background-size:contain; }	
.conoce3 {background: url("../images/conoce-3.jpg") center; background-size:cover; }	
.paquetes {background: url("../images/paquetes.jpg") center; background-size:cover; height:220px!important; }	
.adicionales {background: url("../images/adicionales-1.jpg") center; background-size:cover; }
.preguntas {background: url("../images/preguntas.jpg") center; background-size:cover; }
.preguntas2 {background: url("../images/preguntas2.jpg") center; background-size:cover; }
.reserva {background: url("../images/reservaciones-1.jpg") center; background-size:cover; }
	
	
.columna { width:100%; padding:1em 4%; display:flex; flex-wrap: wrap; justify-content:space-evenly; }	
    
.azul { width:100%; padding:0 4% 3em 4%; }
 
.columna-2, .columna-3, .columna-4, .columna-5, .columna-6, .columna-8, .columna-50, .columna-20, .columna-25, .columna-30, .columna-40, .columna-70, .columna-75, .columna-60  {width:100% !important; margin-bottom:1em;}
	
main table { font-size:1.4rem;}	
	
.text-form2 { width:75% !important; }	
	
.izquierda2 {text-align:left;}
.orden1 { order:1;} .orden2 { order:2;} .orden3 { order:3;} .orden4 { order:4;} .orden5 { order:5;} .orden6 { order:6;}	

#uno, #dos, #tres, #cuatro {margin:1em auto;}
	
footer .logotipo {width:250px;}	
.centrado2 {text-align: center;}
	
#side-menu {
  position:absolute;
  top: 330px; /* Ajusta según tu header */
  left: 40px;
  width: 270px;
  height: auto;
  padding: 1.5rem 1rem;
  z-index: 1000;
}

	
}


/*-------------------------------------- medio--*/ 

@media screen and (min-width:481px) and (max-width:1019px){

#banner {width:100%; height:100%; background:rgba(0,0,0,.8); position:fixed; z-index:20; padding:2em; } 		
.bannerIn {max-width:463px; max-height:600px; position:absolute; z-index:21;  background:#000; top:50%; margin-top:-300px; left:50%; margin-left:-232px; } .bannerIn img { width:100%; border:2px solid #fff;}	
	
header {width:100%; min-height:90px; background:#fff; text-align:center; z-index:24; border-bottom: solid 1px #40546D; position:fixed;}
.logo {text-align:left;} 
.logo img {width:140px; padding:.6em .6em;}	
main { padding-top:90px; background:#000;}
 
	
h1 {font-size:3.2rem; line-height: 3.2rem; padding:0.4em; background: rgba(0,0,0,0.50); border-radius: 8px;}
h2 {font-size:2.5rem; line-height: 2.6rem; padding:0.3em; background: rgba(0,0,0,0.50); border-radius: 8px;}

.menu_movil {width:auto; z-index:20; position:absolute; padding:1.5em 1em .6em 1em; margin:0;  cursor:pointer; top:15px; right:25px;  }
.btn_menu { padding:0; color:#40546D; text-decoration:none; font-weight:normal; font-size:3.2rem;} 
 	
.dropbtn { color:#FFF; background:rgba(255,251,240,0); border: none; cursor: pointer; padding-bottom:.55em;  }
.dropdown { display:inline-block;}
.dropdown:hover .dropdown-content {display:block;}
	
.dropdown-content {display:block;}
.dropdown-content a { display:inline-block; padding:.7em 0; }
			

	
nav {position:absolute; z-index:1001; width:100%;  }		
nav ul { width:100%; left:-100%;  border:none; position:absolute;  padding:10px 0 0 0; top:90px; background:#fff; color:#000; border-bottom:solid 2px #40546D;  } 
nav li {display:block; float:none; text-align:left; width:100%; border-right:none; border-bottom:1px solid #6f78de; padding-left:2em; }
nav a { font-size:1.4rem; padding:.8em 0; color:#40546D; width:100%; display:inline-block;}
nav span { color:#40546D;} 
nav .last { border:none;}
.active { color:#ffdc97 !important;}  .active span {color:#ffdc97 !important ;}
	
	
.drop-active { color:#ffdc97 !important;}	.drop-active img { background:#000;}
	
	
#banner {width:100%; height:100%;  position:fixed; z-index:40; display:none; } 	
#banner2 {width:100%; height:100%; position:fixed; z-index:40; display:none; } 	
.bannerIn {width:800px; min-height:447px; position:absolute; z-index:40; background:#000; top:50%; margin-top:-250px; left:50%; margin-left:-400px;  } 	
.bannerIn2 {width:500px; height:auto; position:absolute; z-index:40; background:#fff; top:5%; left:50%; margin-left:-250px; border-radius:3em; padding:1em 2em;  } 	
	
.slider { width:100%; height:700px; display:flex; justify-content:flex-start; flex-wrap:wrap; align-items:center; }
.slider p { font-size:1.5rem; line-height:2rem; width:100%; padding:0 1em;  color:#fff; background: rgba(0,0,0,0.50); border-radius: 8px;}	
.slider p b { font-size:2.5rem; line-height:3rem; font-family:Montserrat; color:#fff;}	.slider p a {text-shadow:none; margin-left:0;}
	
.slider-btn { width:100%; height:auto; margin-top:-100px; text-align:center;}

.slider2 {width:100%; min-height:250px; display:flex; align-items:center;}
.slider2 img {width:100%; height:auto; }		
.slider2 p {padding:0.2em; font-size:1.7rem; line-height:2.1rem; text-align:center; width:100%; color:#fff; background: rgba(0,0,0,0.50); border-radius: 8px; }	

.inicio {background: url("../images/inicio.jpg") center; background-size:cover; }	
.inicio2 {background: url("../images/inicio2.jpg") center; background-size:cover; }	
.inicio3 {background: url("../images/inicio6.jpg") center; background-size:cover; }	
.conoce {background: url("../images/conoce-1.jpg") center; background-size:cover; }	
.conoce2 {background: url("../images/conoce-2.jpg") top left no-repeat; background-size:contain; }	
.conoce3 {background: url("../images/conoce-3.jpg") center; background-size:cover; }	
.paquetes {background: url("../images/paquetes.jpg") center; background-size:cover; height:500px!important; }	
.adicionales {background: url("../images/adicionales-1.jpg") center; background-size:cover; }
.preguntas {background: url("../images/preguntas.jpg") center; background-size:cover; }
.preguntas2 {background: url("../images/preguntas2.jpg") center; background-size:cover; }
.reserva {background: url("../images/reservaciones-1.jpg") center; background-size:cover; }

	
.columna { width:98%; padding:1em 2%; display:flex; flex-wrap:wrap; justify-content:space-evenly; align-items:center;  }	
.columna-2 {width:48%;}
.columna-3 {width:33%;}
.columna-4 {width:48%;}
.columna-5 {width:200px;}
.columna-6 {width:200px;}
.columna-25 {width:25%;}
.columna-20 {width:20%;}
.columna-30 {width:30%;}
.columna-40 {width:40%;}	
.columna-50 {width:48%;}
.columna-60 {width:60%;}		
.columna-70 {width:70%;}	
.columna-75 {width:75%;}	

.izquierda {text-align:left;}	
.derecha {text-align:right;}
.orden1 { order:1;} .orden2 { order:2;} .orden3 { order:3;} .orden4 { order:4;} .orden5 { order:5;} .orden6 { order:6;}	
.oculto { display:none !important; }
footer .logotipo {width:250px;}		
.centrado2 {text-align: center;}	
	

#side-menu {
  position:fixed;
  top: 100px; /* Ajusta según tu header */
  right: 20px;
  width: 190px;
  height: auto;
  padding: 1.8rem 1rem;
  margin: 6px 0px;
  z-index: 1000;
}	
	
}

/*---------------------contacto-----------*/

form { max-width: 600px;
            margin: auto;
            background: #ffffff;
            padding: 30px;
            border-radius: 12px;
            box-shadow: 0 0 10px rgba(0,0,0,0.1);
			color: #525252;
        }
label, input, select { display: block;
            width: 100%;
            margin-bottom: 15px;
			color: #525252;
        }
        input, select {
            padding: 10px;
            border: 1px solid #ccc;
            border-radius: 8px;
        }

        .confirmacion {
            text-align: center;
            background: #e0ffe0;
			color: #525252;
            padding: 15px;
            border: 1px solid #b0e0b0;
            margin-bottom: 20px;
            border-radius: 8px;
        }

.caja {	font-size:1.8rem; border:solid #ccc 1px; height:40px; overflow:hidden; width:100%; padding:.5em .5em; background:#fff;  margin-top:-1px; text-align: center; border-radius:.3em;}
.caja2 {font-size:1.8rem;	border:solid #ccc 1px; height:40px; overflow:hidden; width:15%; padding:.5em .5em; background:#fff;  margin-top:-1px; text-align: center;}

::placeholder { color:#8A8A8A;}
.text-form:focus, .text-form2:focus { background:#fff;}
/*label {border-bottom:1px solid #ccc; padding:1em 0;}*/

.enviar { padding:1.2em 1.4em; margin: 0.6em; cursor:pointer; color:#000; font-size:1.6rem;  text-align:center; border-radius: 12px; background:#efa614;}
.enviar:hover {background:#000; color:#fdbb2d;}

.verifica { font-size:.9em; color:#22A44B; }



/*---------------------footer-----------*/

footer { width:100%; min-height:100px; clear:both; text-align:center; font-size:1.5rem; padding-bottom:3em;  }
footer .columna {align-items:center; justify-content:center; margin-top:0;}
footer p { font-size:1.5rem; } 
footer a {color:#fdbb2d; padding-bottom:.3em;  line-height:30px;   }
footer a:hover {color:#fff; } footer a:hover i {color:#d69718; }
footer i { color:#fdbb2d; }
footer li {color:#fff; list-style:none; display:inline; }


.footicon { background:#40546D; border-radius:3em; padding:.8em .5em .5em .5em; margin:0 .3em;}
.footicon i {color:#fff; } .footicon:hover { background:#E97A73; box-shadow:0 3px 3px rgba(0,0,0,.2);} .footicon:hover i {color:#fff;}


/* ---------Social Footer -----*/

.icon-button {background-color:#40546D; border-radius:3em;  cursor: pointer; display:inline-block; font-size:1.3rem; width:3em; height:3em; line-height:3em; margin:0 5px; position:relative; border-right:0; }

/* Circle */

.icon-button span { display: block; height:0; left:50%; margin:0; position:absolute; top:50%; background-color:#40546D; border-radius:3em;
-webkit-transition: all 0.3s; -moz-transition: all 0.3s;  -o-transition: all 0.3s; transition: all 0.3s; width: 0;}
.icon-button:hover span { width:3em; height:3em;  margin:-1.5em; }

/* Icons */
.icon-button i { background:none; color:#fff; width:2em;  height:2em; left:0; line-height:3em; position:absolute; top:0; z-index:10; padding-left:.7em;}
.icon-button:hover i { color:#40546D !important;}



/* --------------*/


@media (max-width:429px){.hide-small{display:none!important}}
@media (min-width:430px) and (max-width:1019px){.hide-medium{display:none!important}}
@media (min-width:1020px){.hide-large{display:none!important}}
@media (max-height:600px) {.hide-tall{display:none!important}}


.animate-fading{-webkit-animation:fading 1s;animation:fading 1s}
@-webkit-keyframes fading{0%{opacity:0}100%{opacity:1}}
@keyframes fading{0%{opacity:0}100%{opacity:1}}
.animate-opacity{-webkit-animation:opac 1s;animation:opac 1s}
@-webkit-keyframes opac{from{opacity:0} to{opacity:1}}
@keyframes opac{from{opacity:0} to{opacity:1}}
.animate-top{position:relative;-webkit-animation:animatetop 0.4s;animation:animatetop 0.4s}
@-webkit-keyframes animatetop{from{top:-300px;opacity:0} to{top:0;opacity:1}}
@keyframes animatetop{from{top:-300px;opacity:0} to{top:0;opacity:1}}
.animate-left{position:relative;-webkit-animation:animateleft 0.4s; animation:animateleft 0.4s}
@-webkit-keyframes animateleft{from{left:-1000px;opacity:0} to{left:0;opacity:1}}
@keyframes animateleft{from{left:-1000px;opacity:0} to{left:0;opacity:1}}
.animate-right{position:relative;-webkit-animation:animateright 0.8s;animation:animateright 0.8s}
@-webkit-keyframes animateright{from{right:-300px;opacity:0} to{right:0;opacity:1}}
@keyframes animateright{from{right:-300px;opacity:0} to{right:0;opacity:1}}
.animate-bottom{position:relative;-webkit-animation:animatebottom 0.8s;animation:animatebottom 0.8s}
@-webkit-keyframes animatebottom{from{bottom:-300px;opacity:0} to{bottom:0px;opacity:1}}
@keyframes animatebottom{from{bottom:-300px;opacity:0} to{bottom:0;opacity:1}}
.animate-zoom {-webkit-animation:animatezoom 0.6s;animation:animatezoom 0.6s}
@-webkit-keyframes animatezoom{from{-webkit-transform:scale(0)} to{-webkit-transform:scale(1)}}
@keyframes animatezoom{from{transform:scale(0)} to{transform:scale(1)}}
.animate-input{-webkit-transition:width 0.4s ease-in-out;transition:width 0.4s ease-in-out}.animate-input:focus{width:100%!important}


