/* Paquete básico de reglas */

:root {
	--defaultBackgroundColor: #FFFFFF;
	--primaryBrandColor: #00093B;
	--primaryHoverColor: #001775;
	--secondaryBrandColor: #536EFE;
	--mutedColor: #eff1ff;
	--formInputColor: #dbd1c2;
}


::selection {
  background-color: var(--primaryBrandColor);
  color: white; /* o el color que contraste mejor con tu secundario */
}

/* Backgrounds */

body {
	background-color: var(--defaultBackgroundColor);
	color: black;
	font-size: 18px;
}

em {
	color: inherit;
}

.uk-background-default {
	background-color: var(--defaultBackgroundColor);
}

.uk-background-white {
	background-color: white;
}

.uk-background-muted.uk-background-muted {
	background-color: var(--mutedColor);
}

.uk-background-muted-darker {
	background-color: #c7bdaf;
}

.uk-background-muted-darker a {
	color: #524d47;
}

.uk-h1, .uk-h2, .uk-h3, .uk-h4, .uk-h5, .uk-h6, .uk-heading-2xlarge, .uk-heading-3xlarge, .uk-heading-large, .uk-heading-medium, .uk-heading-small, .uk-heading-xlarge, h1, h2, h3, h4, h5, h6 {
	font-family: "Poppins", sans-serif;
	color: var(--primaryBrandColor);
}

/* Offcanvas Bar */

.uk-offcanvas-bar {
	background-color: var(--primaryHoverColor);

}

.uk-offcanvas-bar a {
	color: white!important;
}

.uk-offcanvas-bar ul.menu-large li a {
	font-size: clamp(2rem, 2vw, 5rem);/* Tamaño de letra fluido */
}

.uk-offcanvas-bar ul.menu-large li ul {
	padding-left: 0;
}


.idioma {
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	text-align: center;
	padding: 2px 8px;
}

.idioma-seleccionado {
	border: 1px solid var(--primaryBrandColor);
}

.uk-offcanvas-bar .logo {
	filter: grayscale(100);
	opacity: 0.15;
}

.uk-background-body {
	background-color: #fffdfa;
}

.uk-border-rounded-xl {
	border-radius: 0px;
	-moz-border-radius: 0px;
	-webkit-border-radius: 0px;
}

.uk-border-rounded-xl:not(.uk-overflow-visible) {
	overflow: hidden;
}

.uk-slidenav {
	display: none;
}

.logo {
	max-width: 60vw;
	max-height: 34px;
}

.floating-logo {
	width: 100px;
	height: 100px;
	border-radius: 50%;
	background-color: #fff;
	padding: 18px; /* ajusta este valor según necesites */
	display: flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	top: -13px;
	box-shadow: rgba(33, 35, 38, 0.1) 0 8px 10px -5px;
}

/*.floating-logo:after  {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	top: 0;
	border-radius: 50px;
	width: 100%;
	background: transparent;
	box-shadow: 0 0 6px 3px rgba(0, 0, 0, 0.3);
	z-index: -1;
}*/

/* Altura máxima del navbar */
.uk-navbar-container {
	height: 65px;
	max-height: 65px;
}

/* Centrar el contenido verticalmente */
.uk-navbar {
	height: 100%;
}

.uk-navbar-left,
.uk-navbar-center,
.uk-navbar-right {
	height: 100%;
	display: flex;
	align-items: center;
}

/* Asegurar que los elementos internos también respetan la altura */
.uk-navbar-nav > li,
.uk-navbar-item,
.uk-navbar-toggle {
	height: 100%;
	max-height: 65px;
}

/* Centrar verticalmente los enlaces del navbar */
.uk-navbar-nav > li > a {
	height: 100%;
	display: flex;
	align-items: center;
}

.uk-navbar-container:not(.uk-navbar-transparent) {
	background: var(--primaryBrandColor);
	color: white;
}



.uk-navbar-item, .uk-navbar-nav>li>a, .uk-navbar-toggle {
	min-height: 65px!important;
	color: white;
	text-transform: lowercase!important;
}

#navbar .uk-navbar-nav>li>a {
	text-transform: none;
	font-family: "Mozilla Text", sans-serif;
}

#navbar .uk-navbar-nav > li {
	display: flex;
}



#header {
	min-width: 100vw;
	max-width: 100vw;
	width: 100vw;
	position:fixed;
	z-index: 101;
}



.uk-padding-xlarge {
	padding: 30px;
}

@media (min-width: 640px) and (max-width: 719px) {
	.uk-padding-xlarge {
		padding: 60px;
	}

}

@media (min-width: 720px) {
	.uk-padding-xlarge {
		padding: 80px;
	}

}


.uk-light * {
	color: white!important;
}

.uk-navbar-toggle {
	min-height: 68px;
}

/* Font family */




body {
	font-family: "Mozilla Text", sans-serif;
	font-size: 18px;
}

@media (min-width: 960px) {
	font-size: 24px;
}

.uk-text-medium {
	font-size: 1.25rem;
}

h1, h2, h3, h4, h5, h6, .uk-h1, .uk-h2, .uk-h3, .uk-h4, .uk-h5, .uk-h6, .uk-heading, .serif {
	font-family: "Poppins", sans-serif!important;
}

.uk-text-secondary {
	color: unset!important;
}

.uk-text-secondary.encabezado.dash {
	 color: var(--secondaryBrandColor)!important;
}


h1.encabezado {
	font-size: 47px;
	line-height: 1.2;
}



.uk-button.uk-button-secondary {
	background-color: var(--primaryBrandColor)!important;
}

.uk-button.uk-button-secondary:hover {
	background-color: #001799 !important;
}

#hero .uk-slideshow-items img {
	filter: brightness(0.8);
}



.drop-shadow {
	text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.4);
}

img.drop-shadow {
	filter: drop-shadow(2px 2px 4px rgba(0, 0, 0, 0.4));
}

@media (min-width: 640px) {
	h1.encabezado {
		font-size: 60px;
	}

	h1.encabezado.titulo-blog {
		font-size: 50px;
	}
}

.uk-text-lead {
	font-size: 22px;
	line-height: 1.4;
	position: relative;

}

@media (min-width: 640px) {
	.uk-text-lead {
		font-size: 25px;
	}
}

.uk-text-lead::before {
    content: '';
    display: block;
    width: 70px;
    height: 7px;
    background-color: #536EFE;
    margin-bottom: 15px; /* Ajusta este valor según necesites el espaciado */
}


.uk-heading-large {
	font-size: 4rem;
}

/* Overlay */

.uk-overlay-primary {
	transition: all linear 0.2s;
	background-color: rgba(77, 54, 39, 0.45);
}

a .uk-overlay-primary:hover {
	transition: all linear 0.2s;
	background-color: rgba(77, 54, 39, 0.69);
}

.uk-light {
	color: white; !important;
}

.text-white, .uk-text-white {
	color: white; !important;
}

.uk-text-primary {
	color: var(--primaryBrandColor)!important;
}

.text-nomargin > p:first-child {
	margin-top: 0;
	margin-bottom: 0;
}

.uk-h1.uk-h1 {
	margin-bottom: initial;
}

.uk-slideshow-nav {
	display: none;
}

h1,.uk-h1,h2,.uk-h2,h3,.uk-h3 {
	line-height: 1; !important;
}

h1, .uk-h1 {
	font-weight: 700;
	font-size: 39px;
}

@media (min-width: 640px) {
	h1, .uk-h1 {
		font-size: 47px;
	}
}



h2, .uk-h2 {
	font-weight: 700;
	font-size: 32px;
	line-height: 1.4;
}

h3, .uk-h3 {
	font-size: 21px;
}

.rounded-full {
	border-radius: 9999px;
}

.background-layer {
	position: fixed;
	z-index: 0;
	overflow: hidden;
	width: 100vw;
	min-height: calc(100vh - 80px);
}

.dummy-background {
	min-height: calc(100vh - 80px);
	width: 100vw;
}

header.uk-sticky.uk-active {
	box-shadow: 0px 0px 8px rgba(77, 54, 39,0.08);
}

.header-img {
	position: fixed;
	z-index: 0;
	overflow: hidden;
	width: 100vw;
	aspect-ratio: 3/1;
}

.dummy-header {
	width: 100vw;
	aspect-ratio: 3/1;
}

.uk-container-to-right {
	margin-right: calc(-15vw)!important;
}

.uk-zindex {
	z-index: 10;
}

.wrapper .seccion:not(:first-child) {
	position: relative;
}

.uk-link, a {
	color: var(--primaryBrandColor);
}

a.uk-link-text:hover {
	color: var(--primaryBrandColor);
}

a:hover {
	text-decoration: none;
}

.uk-link:hover, a:hover {
	color: var(--primaryHoverColor);
}



.uk-button.uk-button {
	border-radius: 9999px;
}

.uk-background-primary {
	background-color: var(--primaryBrandColor);
}

.uk-background-secondary {
	background-color: var(--secondaryBrandColor);
}

/* Botones */

.uk-button {
	text-transform: none;
	font-weight: normal;
	letter-spacing: 1px;
	font-family: "Questrial", sans-serif;
	background-color: white;
	color: black;
	border: none;
	font-size: 16px;
}

.boton-circulo {
	text-transform: none;
	font-weight: normal;
	letter-spacing: 1px;
	font-family: "Questrial", sans-serif;
	background-color: var(--primaryBrandColor);
	color: white;
	border: none;
	font-size: 22px;
}

.boton-circulo-transparente {
	text-transform: none;
	font-weight: normal;
	letter-spacing: 1px;
	font-family: "Questrial", sans-serif;
	background-color: transparent;
	color: var(--primaryBrandColor);
	border: none;
	font-size: 22px;
	text-transform: uppercase;
	padding-left: 0;
	padding-right: 0;

}

.boton-circulo,
.boton-circulo-transparente {
	display: inline-flex;
	align-items: center;
}

.boton-circulo::before,
.boton-circulo-transparente::before {
	content: '●';
	display: block;
	line-height: 1;
	font-size: 60%;
	margin-right: 8px;
	transform: scale(1);
	transition: transform 0.3s ease;
}

.post-card {
	background-color: var(--mutedColor);
}

.offcanvas-menu-link {
	text-transform: uppercase;
}





.boton-circulo:hover::before,
.boton-circulo-transparente:hover::before {
  transform: scale(2); /* Expansión desde el centro al hacer hover */
}

.boton-circulo:hover {
	color:white;
}

.boton-circulo-transparente:hover {
	color: var(--primaryBrandColor);
}


#logo-flotante {
	position: absolute;
	right: -65px;
	top: -74px;
}



a[href*="https://www.instagram.com"] .fa.fa-instagram {
	color: black;
}

a[href*="https://www.instagram.com"]:hover .fa.fa-instagram {
	color: var(--primaryBrandColor);
}

a[href*="https://www.instagram.com"]:hover h2 {
	color: var(--primaryBrandColor);
}



i.fa.fa-map-marker-alt {
	font-weight: 300;
}

.uk-button:hover:not(.boton-circulo):not(.boton-circulo-transparente) {
	background-color: #FFFBF5;
}

.btn-with-arrow.uk-button-large {
	padding-left: 62px
}

.btn-with-arrow i {
  margin-left: 0.5em;
  opacity: 0;
  transform: translateX(-8px);
  transition: all 0.4s ease;
}

.btn-with-arrow:hover i {
  opacity: 1;
  transform: translateX(0);
}

.uk-link-text.btn-with-arrow i {
	opacity: 0.5;
	transform: translateX(0px);
}

.uk-link-text.btn-with-arrow:hover i {
	opacity: 1;
	transform: translateX(12px);
}

.uk-button {
	border-radius: 7px;
	-moz-border-radius: 7px;
	-webkit-border-radius: 7px;
}

.uk-button-primary {
	background-color: var(--primaryBrandColor);
}

.uk-button-primary:hover {
	background-color: var(--primaryHoverColor)!important;
}

.uk-button-secondary {
	color: white;
	background-color: var(--secondaryBrandColor);
}

.uk-button-secondary:hover {
	color: white!important;
	background-color: var(--primaryHoverColor)!important;
}

.uk-button-default {
	color: var(--primaryBrandColor) !important;
	background-color: #fff !important;

}
.uk-button-default:hover {
	background-color: #B4C0FF !important;
}

#button-slideshow {
	background-color: rgba(0, 0, 0, 40%) !important;
	backdrop-filter: blur(4px);
	-webkit-backdrop-filter: blur(4px);
}

#button-slideshow:hover {
	color: var(--secondaryBrandColor) !important;
	background-color: white ! important;
	backdrop-filter: blur(4px);
	-webkit-backdrop-filter: blur(4px);
}




/* Formularios */

.uk-input, .uk-textarea {
	background-color: var(--defaultBackgroundColor);
}



.uk-input:focus, .uk-input:active, .uk-textarea:focus, .uk-textarea:active {
	border: 1px solid #333;
}

#info .uk-form-label {
	visibility: hidden;
}


/* Específicas */

.horario {
	display: none;
}

.enero .horario.horario-invierno, .febrero .horario.horario-invierno, .marzo .horario.horario-invierno, .noviembre .horario.horario-invierno, .diciembre .horario.horario-invierno {
	display: block;
}

.abril .horario.horario-verano, .mayo .horario.horario-verano, .junio .horario.horario-verano, .julio .horario.horario-verano, .agosto .horario.horario-verano, .septiembre .horario.horario-verano {
	display: block;
}

.animate-number {
	font-size: 33px;
	padding-left: 5px;
	padding-right: 5px;
}

@media (min-width: 640px) {
	.animate-number {
		font-size: 52px;

	}
}

#body > div > div.wrapper > section:nth-child(2) > div > div strong {
	color: var(--primaryBrandColor);
}

.scroll-icon {
  animation: floatDownUp 3s ease-in-out infinite;
  opacity: 0.8;
  width: 50px;
  height: 50px;
  line-height: 50px;
  border-radius: 500px;
  -moz-border-radius: 500px;
  -webkit-border-radius: 500px;
  text-align: center;
  background-color: rgba(0,0,0, 0.25);
}

@keyframes floatDownUp {
  0%, 100% {
	transform: translateY(0);
  }
  50% {
	transform: translateY(10px);
  }
}

.img-multiply {
	mix-blend-mode: multiply;
}

#slider-marcas .bloque-div {
	background-color: var(--mutedColor);
}

/*
	Preload

*/

#preload * {
	opacity: 0.65;
}

#preload .logo-preload {
	filter: grayscale(100) brightness(50);
	transform: translateX(4%);
	opacity: 0.25;
}

/*

	ON OFF SWITCHER FOR COOKIES
	https://proto.io/freebies/onoff/


*/

.onoffswitch {
	position: relative; width: 40px;
	-webkit-user-select:none; -moz-user-select:none; -ms-user-select: none;
}
.onoffswitch-checkbox {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}
.onoffswitch-label {
	display: block; overflow: hidden; cursor: pointer;
	height: 20px; padding: 0; line-height: 20px;
	border: 2px solid #E3E3E3; border-radius: 20px;
	background-color: #E8E8E8;
	transition: background-color 0.3s ease-in;
}
.onoffswitch-label:before {
	content: "";
	display: block; width: 20px; margin: 0px;
	background: #FFFFFF;
	position: absolute; top: 0; bottom: 0;
	right: 16px;
	border: 2px solid #E3E3E3; border-radius: 20px;
	transition: all 0.3s ease-in 0s;
}
.onoffswitch-checkbox:checked + .onoffswitch-label {
	background-color: var(--primaryBrandColor);
}
.onoffswitch-checkbox:checked + .onoffswitch-label, .onoffswitch-checkbox:checked + .onoffswitch-label:before {
   border-color: var(--primaryBrandColor);
}
.onoffswitch-checkbox:checked + .onoffswitch-label:before {
	right: 0px;
}

.mapa-responsive {
	position: relative;
	padding-bottom: 56.25%; /* Ratio 16:9 */
	height: 0;
	overflow: hidden;
}

.mapa-responsive iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}


/* Media Queries */

@media (max-width: 960px) {

	.uk-heading-large {
		font-size: 2.5rem;
	}

	.uk-heading-large {
		font-size: 3rem;
	}

	.uk-button.uk-button-large.btn-with-arrow {
		padding-left: 40px;
	}

	.uk-button.btn-width-arrow i {
		display: none;
	}

}

.post-card-img {
	width: 100%;
	aspect-ratio: 4/5;
	object-fit: cover;

}

.post-title {
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 4;
	-webkit-box-orient: vertical;
	word-wrap: break-word;
}

.header-sticky-placeholder {
	min-width: 100vw;
	max-width: 100vw;
	width: 100vw;

	max-height: 55px;
	min-height: 55px;
	height: 55px;
}

.uk-list-divider>:nth-child(n+2) {
	border-top: 2px solid white;
}

.uk-light .uk-list-divider>:nth-child(n+2) {
	border-top-color: white;
}

#contacto a.enlace p {
	color: black;
}

#contacto a.enlace:hover p {
	color: var(--primaryBrandColor);
}

.bg-gradient {
	background: linear-gradient(90deg, #FD66C4 0%, #536FFE 100%);
	color: white;
}

.bg-gradient-vertical {
	background: linear-gradient(180deg, #FD66C4  0%, #536FFE 100%);
	color: white;
}

.bg-gradient a {
	color: white;
}

.text-nomargin {
	margin-bottom: 0;
}

.rounded-corners {
	border-radius: 14px;
}

.contenedor-de-columnas.uk-child-width-1-2\@s.uk-grid-collapse {
	border-radius: 14px;
	overflow: hidden;
}

#info input, #info textarea {
	border-radius: 14px;
	background-color: rgba(247, 247, 247, 1);
	color: rgba(0, 9, 59, 1);
}

/* SCROLLDOWN */

.scroll-down-button {
	/* Dimensiones y posicionamiento básico */
	width: 50px;
	height: 50px;
	border-radius: 50%;
	position: relative;
	margin-bottom: 20px;

	/* Estilo visual */
	background-color: rgba(0, 0, 0, 40%) !important;
	backdrop-filter: blur(4px);
	-webkit-backdrop-filter: blur(4px);
	border: 2px solid rgba(255, 255, 255, 0.8);
	cursor: pointer;
	transition: all 0.3s ease;
	display: flex;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 20px;

	/* Añadimos una animación suave */
	animation: floatButton 2s ease-in-out infinite;
}

.scroll-down-button:hover {
	background-color:white;
	fill: black;
}

/* Definimos la animación de flotación */
@keyframes floatButton {
	0%, 100% {
		transform: translateY(0);
	}
	50% {
		transform: translateY(10px);
	}
}

/* Efecto hover */
.scroll-down-button:hover {
	background-color: rgba(255, 255, 255, 0.3);
	transform: scale(1.1);
}

.uk-card-primary.uk-card-body .uk-open>.uk-accordion-title::before, .uk-card-primary>:not([class*=uk-card-media]) .uk-open>.uk-accordion-title::before, .uk-card-secondary.uk-card-body .uk-open>.uk-accordion-title::before, .uk-card-secondary>:not([class*=uk-card-media]) .uk-open>.uk-accordion-title::before, .uk-light .uk-open>.uk-accordion-title::before, .uk-offcanvas-bar .uk-open>.uk-accordion-title::before, .uk-overlay-primary .uk-open>.uk-accordion-title::before, .uk-section-primary:not(.uk-preserve-color) .uk-open>.uk-accordion-title::before, .uk-section-secondary:not(.uk-preserve-color) .uk-open>.uk-accordion-title::before, .uk-tile-primary:not(.uk-preserve-color) .uk-open>.uk-accordion-title::before, .uk-tile-secondary:not(.uk-preserve-color) .uk-open>.uk-accordion-title::before {
	background-size: 25px !important;
}

.uk-card-primary.uk-card-body .uk-accordion-title::before, .uk-card-primary>:not([class*=uk-card-media]) .uk-accordion-title::before, .uk-card-secondary.uk-card-body .uk-accordion-title::before, .uk-card-secondary>:not([class*=uk-card-media]) .uk-accordion-title::before, .uk-light .uk-accordion-title::before, .uk-offcanvas-bar .uk-accordion-title::before, .uk-overlay-primary .uk-accordion-title::before, .uk-section-primary:not(.uk-preserve-color) .uk-accordion-title::before, .uk-section-secondary:not(.uk-preserve-color) .uk-accordion-title::before, .uk-tile-primary:not(.uk-preserve-color) .uk-accordion-title::before, .uk-tile-secondary:not(.uk-preserve-color) .uk-accordion-title::before {
	background-size: 25px !important;
}

#body > div > div.wrapper > section.seccion.uk-section.uk-background-muted > div > div > div.columna.uk-text-right {
	position: relative;
}

#body > div > div.wrapper > section.seccion.uk-section.uk-background-muted {
	overflow: hidden;
}

.seccion:not(.bg-gradient) {
	background-color: var(--defaultBackgroundColor);
}

/*#body .wrapper > .seccion:first-child {
	position: fixed;
	z-index: -20;
	overflow: hidden;
	background-color: transparent !important;
}

.dummy-background {
	min-height: 100vh;
	height: 100vh;
	width: 100vw;
}*/

.boton-reserva {
	bottom: 60px;

}

.footer {
	font-size: 16px;
}




