@font-face {
  font-family: 'Eurostile-Bold';
  src: url('../Font/Eurostile\ -\ Bold.otf') format('opentype');
  font-weight: bold;
  font-style: normal;
}

@font-face {
  font-family: 'Eurostile-Heavy';
  src: url('../Font/Eurostile\ -\ Hea.otf') format('opentype');
  font-weight: bold;
  font-style: normal;
}



@font-face {
  font-family: 'Eurostile-Medium';
  src: url('../Font/Eurostile\ -\ Med.otf') format('truetype');
  font-weight: bold;
  font-style: normal;
}

@font-face {
  font-family: 'Eurostile-Regular';
  src: url('../Font/Eurostile\ -\ Regular.otf') format('truetype');
  font-weight: bold;
  font-style: normal;
  
}


*,
:after,
:before {
  box-sizing: border-box;
  margin: 0;
  padding: 0;


}

/* Evitar el scroll horizontal */
html,
body {

 
  overflow-x: hidden;
  margin: 0;
  padding: 0;
  width: 100%;
}

body {
  
    background-image: url('../L2B_Fondo\ entero.webp');
  /* Reemplaza con la URL de tu imagen */
  background-size: cover;
  /* Asegura que la imagen cubra todo el div */
  background-position: center;
  /* Centra la imagen */
}

html {
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: transparent;
  font-family: "Montserrat", sans-serif;
  line-height: 1.15;
  scroll-behavior: smooth;
}

:root {
  --primary:
    #0673ac;
  --background: #191919;
  --navbar-height: 48px;
}
/* Fondo del preloader */
#preloader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #ffffff;
  z-index: 10000;
}

/* Estilo de cada barra */
.bar {
  width: 20px;
  height: 100px;
  margin: 0 5px;
  opacity: 0.9;
  transform-origin: center;
  animation: bounce 1.2s ease-in-out infinite;
}

/* Animación de rebote */
@keyframes bounce {
  0%, 100% {
    transform: scaleY(1);
  }
  50% {
    transform: scaleY(0.1);
  }
}


/*Whatsapp Flotante */
.whatsapp-button2 {
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 1000;


}

.whatsapp-button2 a {
  display: block;
  padding: 15px;
  text-align: center;
}

.whatsapp-button2 img {
  width: 65px;
  /* Tamaño del icono de WhatsApp */
  height: 65px;
  border-radius: 15px;

}


.whatsapp-button2 img:hover {

  box-shadow: 0px 0px 12px rgba(9, 101, 12, 0.847);
}






@media (max-width:600px) {





  .whatsapp-button2 img {
    width: 55px;
    /* Tamaño del icono de WhatsApp */
    height: 55px;
    border-radius: 15px;
  }
}


/*-----Logo------ */
.menu__bar {
  display: flex;
  align-items: center;


}

.logo {
  display: block;
  margin-left: 0;
  /* Asegura que el logo esté alineado a la izquierda */
}


/*-----Estilo de NAV------ */

.menu__bar {
  background-color: transparent;

  transition: background-color 0.3s, color 0.3s;
}



/* Estilos para el menú después de hacer scroll */
.menu__bar.scrolled {
  background-color: rgba(255, 255, 255, 0.8);
  /* Color de fondo semitransparente */
  background-image: url('../Header/L2B_\ Fondo\ header.webp');
  /* Ruta de la imagen de fondo */
  background-size: cover;
  /* Ajusta la imagen para cubrir todo el fondo */
  background-repeat: no-repeat;
  /* Evita que la imagen se repita */
  background-position: center;
  /* Posiciona la imagen en el centro */
  box-shadow: 3px 3px 8px rgba(0, 0, 0, 0.5);
  /* Sombra del menú */
}

.menu__bar.scrolled {
  color: rgb(0, 0, 0) !important;
  /* Color de los enlaces después de hacer scroll */
}



.menu__bar.scrolled .logo-img2 {
  filter: none;
  /* Elimina el filtro para que el logo conserve su color original */
}

.menu__wrapper {
  display: flex;
  position: relative;
  flex-direction: row;
  z-index: 999;
}

.menu__bar {
  position: fixed;
  width: 100%;
  /* Para que ocupe todo el ancho visible */

  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-direction: row;
  padding: 0 1.5rem;
  gap: 2rem;
  height: 6rem;
  opacity: 0.9;
  margin: 0 auto;
  /* Centra la barra de navegación */
  left: 0;
  right: 0;

}

@media (max-width:786px) {
  .menu__bar {
    padding: 0 1rem;
  }
}

.menu-icon {
  cursor: pointer;
  display: flex;
  height: 2rem;
  width: 2rem;
  z-index: 1002;
  /* Asegura que el ícono esté por encima del menú */
}

.menu__bar .menu-icon {
  filter: brightness(0) invert(0);
  transition: filter 0.3s ease;
  /* Transición suave */
}

.menu__bar.scrolled .menu-icon {
  filter: invert(1);
  /* Hace que el icono sea negro */
}


.navigation {
  display: flex;
  flex-direction: row;
  list-style-type: none;
  align-items: center;
  gap: 5rem;
  padding: 0;

}

.logo svg {
  width: 2rem;
  height: 2rem;
}

.navigation>li {
  display: flex;
  position: relative;
  cursor: pointer;
  font-size: 1.45rem;
}
/* Estilo para la flecha desplegable */
.dropdown-arrow {
  width: 12px; /* Ajusta el tamaño según prefieras */
  height: auto;
  margin-left: 5px; /* Espacio entre el texto y la flecha */
  vertical-align: middle; /* Alinea la imagen con el texto */
  transition: transform 0.3s ease;
}
.dropdown-link:hover {
  color: #0673ac; /* Color del texto al hacer hover */
}

/* Cambiar color del SVG al pasar el mouse */
.dropdown-link:hover .dropdown-arrow {
  filter: invert(24%) sepia(94%) saturate(2625%) hue-rotate(185deg) brightness(95%) contrast(102%);
}
/* Girar la flecha cuando el submenú esté desplegado */
.navigation li.open-submenu > a .dropdown-arrow {
  transform: rotate(180deg); /* Rotación hacia arriba */
}
/* Para que la flecha esté en línea y sea más pequeña */
.navigation a .dropdown-arrow {
  
  font-size: 0.8rem;
  /* Tamaño más pequeño */
  margin-left: 5px;
  vertical-align: middle;
  /* Alineación vertical */
  color: #666;
  /* Color gris más sutil */
  transition: transform 0.3s ease;
}


.navigation>li>a {
  font-family: 'Eurostile-Bold';
  color: rgb(255, 249, 249);
  border-bottom: 2px solid transparent;
  transition: all 0.3s ease;
  text-decoration: none;
  font-weight: 800;
  background-image: linear-gradient(to right, var(--primary), var(--primary) 50%, rgb(0, 0, 0) 50%);
  background-size: 200% 100%;
  background-position: -100%;
  display: inline-block;
  padding: 0.2rem 0;
  position: relative;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  transition: all 0.2s ease-in-out;
}

.menu__bar.scrolled .navigation>li>a {
  color: rgb(0, 0, 0) !important;
}

.navigation>li>a:before {
  font-family: 'Eurostile-Heavy';
  content: '';
  background: var(--primary);
  display: block;
  position: absolute;
  bottom: -0.125rem;
  left: 0;
  width: 0;
  height: 0.2rem;
  transition: all 0.2s ease-in-out;
  
}

.navigation>li>a:hover {
  background-position: 0;
  
}

.navigation>li>a:hover::before {
  width: 100%;
}



/* Rotar flecha hacia arriba cuando se despliega el submenú */
.navigation li:hover>a::after {
  
  transform: rotate(180deg);
  /* Rotar la flecha hacia arriba */
  color: #333;
  /* Cambiar a un color más oscuro */
}

/* Mantener el fondo azul en el enlace activo al desplegar el submenú */
.navigation li:hover>a {
  background-position: 0;
  color: #fff;
}

.navigation>li {
  position: relative;
}

.navigation a {
  text-decoration: none;
  color: #333;
  padding: 10px 20px;
  display: block;
  position: relative;
}

/* Estilo para los submenús */
.submenu {
  border-radius: 15px 15px;
  font-size: 1rem;
  display: none;
  position: absolute;
  left: 0;
  top: 100%;
  
  background-color: rgba(0, 0, 0, 0.8);
  /* Fondo oscuro para resaltar submenú */
  list-style-type: none;
  padding: 0;
  margin: 0;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
  z-index: 1000;
}

/* Estilo para los elementos del submenú */
.submenu li {
  position: relative;
}

.submenu a {
  font-family: 'Eurostile-Bold';
  padding: 10px 8px;
  color: #050505;
  white-space: nowrap;
}

/* Flecha hacia la derecha para submenús de segundo nivel */
.submenu li:has(ul)>a::after {
  content: '❯';
  /* Flecha fina hacia la derecha */
  font-size: 10px;
  margin-left: 5px;
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translateY(-50%);

  color: #666;
  /* Color gris para más sutileza */
}

/* Estilos adicionales para el hover */
.navigation>li:hover>a::after,
.submenu li:hover>a::after {
  color: #000000;
  /* Oscurece la flecha cuando se hace hover */
}

/* Opcional: ajustar margen o padding si es necesario */
.navigation a {
  padding-right: 25px;
  /* Asegura que haya espacio para la flecha */
}

/* Muestra submenús en hover */
.navigation li:hover>.submenu {
  
  display: block;
  transition: all 0.3s ease;
}

/* Fondo oscuro para submenús activos */
.submenu li:hover {
  border-radius: 15px 15px;
  background-color: rgba(0, 0, 0, 0.5);
}

/* Submenú de segundo nivel (despliega a la derecha) */
.submenu li .submenu {
  top: 0;
  left: 100%;
  margin-left: 1px;
}

/* Sombra y transición para el submenú */
.navigation li:hover>.submenu,
.submenu li:hover>.submenu {
  display: block;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
  background-color: rgb(255, 254, 254);
}



/*-------- Estilos del botón de WhatsApp--------- */
@keyframes float {

  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-10px);
  }
}

.whatsapp-button {
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 1000;
  animation: float 1s infinite;


}

.whatsapp-button a {
  display: block;
  padding: 15px;
  text-align: center;
}

.whatsapp-button img {
  width: 85px;
  /* Tamaño del icono de WhatsApp */
  height: 85px;

}

@media (min-width: 600px) {
  .menu-icon {
    display: none;
  }
}

@media (max-width: 600px) {
  .whatsapp-button img {
    width: 55px;
    /* Tamaño del icono de WhatsApp */
    height: 55px;

  }

  .navigation {
    display: none;
  }

  .menu-icon {
    display: block;
  }

  .navigation--mobile {
    position: fixed;
    top: 50px; /* Espacio desde la parte superior */
    left: 0; /* Alineado a la izquierda */
    width: 100vw; /* Ocupa el ancho completo de la pantalla */
    height: calc(100vh - 50px); /* Ajusta la altura restando el espacio superior */
    background-color: rgb(253, 253, 253); /* Fondo blanco */
    z-index: 1000; /* Asegura que esté sobre otros elementos */
    display: flex;
    flex-direction: column; /* Elementos en columna */
    padding: 1rem; /* Espaciado interno */
    overflow-y: auto; /* Habilita el scroll vertical si el contenido excede */
    gap: 1rem; /* Espaciado entre los elementos */
    align-items: flex-start; /* Alinea los elementos a la izquierda */
    justify-content: flex-start; /* Ajusta el contenido hacia la parte superior */
}

  /* Slide down animation */
  @keyframes slideDown {
    0% {
      opacity: 0;
      transform: translateY(-100%);
    }

    100% {
      opacity: 1;
      transform: translateY(0);
    }
  }

  .navigation--mobile {
    animation: slideDown 300ms ease-out forwards;
  }

  /* Slide up (fade out) animation */
  @keyframes slideUp {
    0% {
      opacity: 1;
      transform: translateY(0);
    }

    100% {
      opacity: 0;
      transform: translateY(-100%);
    }
  }

  .navigation--mobile--fadeout {
    animation: slideUp 300ms ease-out forwards;
  }



.submenu li .submenu {
    position: relative; /* Cambia a relativo para apilar en móvil */
    top: 0;
    left: 0; /* No se desplazará hacia la derecha */
}
 /* Ajustes de visualización para abrir submenús hacia abajo */
 .navigation li:hover > .submenu,
 .submenu li:hover > .submenu {
     display: block;
     margin-left: 20px; /* Aumenta el margen izquierdo para identar subniveles */
 }

}







section>h2 {

  margin-bottom: 1.5rem;
}

/*-----Foto header------ */
/* 
  ---------------------------------------------
  Banner Style
  --------------------------------------------- 
  */

.logo img {
  max-height: 60px;
}

@media (max-width:786px) {

  .logo img {
    max-height: 40px;
  }

}



/* Secciones principales fuera del primer viewport */
.main-row {
  content-visibility: auto!important;
  contain-intrinsic-size: 800px; /* altura estimada, ajustá si hace falta */
}

.image-grid-section {
  content-visibility: auto!important;
  contain-intrinsic-size: 1200px;
}

/* Columnas internas de la sección de grilla */
.left-column,
.center-column,
.right-column {
  content-visibility: auto!important;
  contain-intrinsic-size: 600px;
}

/* Carruseles pesados */
.carousel-container,
.carousel-slide,
.carousel_inner {
  content-visibility: auto!important;
  contain-intrinsic-size: 500px;
}
