/* Estilos CSS aquí */
@font-face {
  font-family: Montserrat;
  src: url('../../../resources/fonts/Montserrat-Regular.ttf');
}

html {
	scroll-behavior: smooth;
}
body {
	margin: 0;
	padding: 0;
	font-family: 'Montserrat', sans-serif;
}

#bgvideo {}
.bgvideo_media {
	position: fixed;
	top: -10px;
	left: 0;
	right: 0;
	bottom: 0;
	min-width: 100%;
	min-height: 100%;
	z-index: -999;
	/*height: 100vh;*/
}
.bgvideo_media.desk { display: block; }
.bgvideo_media.mobile { display:none; }
#bgvideo #colorfilter {
	position: fixed;
	width: 100%;
	height: 100%;
	/*background: rgb(113, 0, 159, 0.5);*/
	z-index: -998;
}

header {
	width: 100%;
	height: 100vh;
	margin: auto;
	user-select: none;
	z-index: 999;
}

#topbar {
	display: flex;
	max-width: 1920px;
	width: 80%;
	height: 150px;
	padding: 0px 10% 0% 10%;
	justify-content: center;
	margin-top: 100px;
}

#topbar ul {
	margin-block: unset;
	margin-inline: unset;
	padding: 0px;
}

#nav {
	display: flex;
	list-style: none;
	width: 100%; /* Hacemos que el menú ocupe todo el ancho del header */
	align-items: center; /* Centrar verticalmente el menú */
	justify-content: center; /* Centrar horizontalmente los elementos del menú */
}

#nav li {
	margin: 0 4%; /* Separación entre las opciones del menú responsive */
}

#nav li:first-child {
	border-left: 0px;
}

#nav li:last-child {
	margin-right: 0px;
}

#nav a {
	text-decoration: none;
	color: #ffffff;
	font-family: 'Montserrat', sans-serif; /* Utilizar la tipografía Montserrat */
	font-weight: 200; /* Peso de la fuente, puedes cambiarlo según el estilo deseado */
	font-size: 32px; /* Tamaño de la tipografía del menú */
	cursor: default;
}

#nav a:hover {
	text-shadow: 0 0 15px #FFF, 0 0 20px #FFF, 0 0 30px #FFF, 0 0 40px #FFF;
	transition-duration: 0.1s;
	transition-timing-function: ease-in-out;
}

#nav a {
	cursor: default;
}

.sticky {
	position: fixed;
	margin-top: 0px !important;
}

.sticky #nav {
	justify-content: right;
}

.logo {
	background: url('../../../svg/logo/fff') no-repeat center;
	background-size: contain;
	margin-right: 20px;
	width: 200px;
	height: 150px;
}

#container {
	display: flex;
	min-height: 100vh;
	flex-direction: column;
}

body #content {
	background-color: rgb(255, 255, 255);
}

/* Estilos para el primer apartado */
.apartado {
	overflow: hidden;
	height: 100vh;
	background: rgb(0, 0, 0, 0.8);
	margin-top: 20px;
	color: white;
	justify-content: center;
	padding: 20px;
}
.apartado h1 {
	text-align: center;
	text-shadow: 0 0 30px rgba(255,255,255,255);
}

#events { padding: 5px; }
/*#events_slider { display: flex; height: 80%; }
#events_slider div .post { display: flex; }
#events_slider div .story { display: none; }*/

#booking #media { background: black; }

#booking { height: 100vh; padding: 0px;  }
#booking #media div { height: 100vh; background-size: cover; }
#booking #media #desk { display: block; }
#booking #media #mobile { display: none; }
#booking h1 {
	float: left;
	min-width: 100%;
	background-color: rgba(0, 0, 0, .5);
	padding: 30px 0px 30px 0px;
	margin: 0px;
}
#booking h3 {
	text-align: center; position: sticky; bottom: 0;
	background-color: rgba(0, 0, 0, .5);
	padding: 30px 0px 30px 0px;
}

#footer {
	display: flex;
	flex-direction: column;
	height: 200px;
	width: 100%;
	margin: 50px 0px 0px 0px;
	background-color: rgb(0,0,0);
	color: white;
}
#footer div {
	float: left;
	height: 100%;
	box-sizing: border-box;
}
#footer #left {
	width: 25%;
	padding: 20px;
}
#footer #center {
	width: 50%;
}
#footer #right {
	width: 25%;
}

#footer #left p {
	margin-block: unset;
	margin: 5px;
	font-size: x-large;
}

#footer #left #RRSS div {
	width: 50px; height: 50px;
	margin-right: 10px;
}

#RRSS #fb { background: url('../../../svg/fb/0866ff') no-repeat center; }
#RRSS #ig { background: url('../../../svg/ig/fff') no-repeat center; }
#RRSS #gm { background: url('../../../svg/gm/f00') no-repeat center; }

a { color: white; }

/*-----------------------------------------------------------------------------------------------------*/

/* Media Query para tamaños de pantalla de hasta 768px (tabletas y dispositivos móviles) */
@media (max-width: 1000px) {
	body { min-width: 330px; }

	.bgvideo_media.desk { display: none; }
	.bgvideo_media.mobile { display: block; width: 100%; }

	#topbar {
		position: fixed;
		display: flex;
		width: 100%;
		height: 100px;
		padding: 0px;
		margin-top: 0px;
		justify-content: space-between;
	}

	#nav {
		position: absolute;
		height: 100vh;
		justify-content: center;
		flex-direction: column;
		align-items: center;
		text-align: center;
		padding: 0px;
		margin: 0px;
		background-color: rgba(0,0,0,0.80);

		opacity: 0; display: none; z-index: -1;
	}

	#nav li {
		width: 100%;
		list-style: none;
		border-left: none;
		border-bottom: 1px solid rgba(255,255,255,0.5);
		padding: 2% 0% 2% 0%;
	}

	#nav li:last-child {
		margin: 0px;
		border: none;
	}

	#nav a {
		width: 100%;
		height: 15vh;
		min-height: 2rem;
		max-height: 60px;
		font-size: 2rem;
	}

	.sticky {}
	.sticky #nav { justify-content: center; }

	#rnav_show {
		margin: 30px;
		width: 40px;
		height: 40px;
		z-index: 999;
	}

	#rnav_show_b1, #rnav_show_b2, #rnav_show_b3 {
		width: 40px;
		height: 5px;
		background: white;
		margin: 6px 0;
		transition: 0.4s;
	}

	.active #rnav_show_b1 {
		-webkit-transform: rotate(-45deg) translate(-8px, 8px);
		transform: rotate(-45deg) translate(-8px, 8px);
	}

	.active #rnav_show_b2 {
		opacity: 0;
	}

	.active #rnav_show_b3 {
		-webkit-transform: rotate(45deg) translate(-8px, -8px);
		transform: rotate(45deg) translate(-8px, -8px);
	}

	.active #nav {
		animation: fadeIn 0.5s;
		opacity: 1;
		display: flex;
		z-index: 998;
	}
	.notactive #nav {
		animation: fadeOut 0.5s;
		opacity: 0;
		display: none;
		z-index: -1;
	}

	.logo {
		background: url('../../../svg/logo/fff') no-repeat center;
		background-size: contain;
		margin: 10px;
		width: 100px;
		height: 80px;
	}

	.apartado { padding: 20px; }

	#events { padding: 5px; }
	/*#events div { aspect-ratio: 0.56; }
	#events div .post { display: none; }
	#events div .story { display: flex; }*/

	#booking { height: 100vh; padding: 0px; }
	#booking #media {
		height: 100vh;
	}
	#booking #media #desk { display: none; }
	#booking #media #mobile { display: block; }

	#footer #left {
		width: 100%;
	}

	#footer #center {
		width: 100%;
	}

	#footer #right {
		width: 100%;
	}

	@keyframes fadeIn {
		0% { opacity: 0;  }
		100% { opacity: 1;  }
	}
	@keyframes fadeOut {
		0% { opacity: 1; display: flex; z-index: 999; }
		100% { opacity: 0; display: none; z-index: -1; }
	}
}