/**Fuentes*/
@font-face {
  font-family: "GothamBook";
  src: url("./assets/Fonts/GothamBook.ttf") format("truetype");
}

@font-face {
  font-family: "GothamMedium";
  src: url("./assets/Fonts/GothamMedium_1.ttf") format("truetype");
}

/**Reestablecer valores por defecto del body*/
body,
html {
  margin: 0;
  padding: 0;
  overflow-x: hidden;
  font-family: "GothamMedium", sans-serif !important;
}
h1,
h2,
h3,
h4,
h5 {
  font-family: "GothamMedium", sans-serif !important;
  color: #f4f4f4 !important;
}
p {
  font-family: "GothamBook", sans-serif !important;
  color: #e2dfdf !important;
}

/**Navegaciòn*/
.navigation {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background-color: #0f1f0fe9;
  position: fixed;
  z-index: 999999;
  width: 100%;
  padding-left: 100px;
  padding-right: 100px;
}
/**Lista de opciones de navegaciòn*/
.navbar-right {
  font-size: 12.5px;
}
.navbar-right a {
  text-decoration: none;
  padding: 10px;
  color: #bababa;
  font-weight: 900;
}
.navbar-right a:hover {
  text-decoration: underline;
}

.navbar-logo {
  margin-left: 15px;
}
/**Logo del menu de navegaciòn*/
.navbar-logo img {
  max-width: 100px; /** Ajusta este valor a la anchura máxima que desees para tu imagen */
  height: auto; /** Esto mantendrá la relación de aspecto de la imagen */
}

/** Estilos del ícono de hamburguesa */
.navbar-hamburger {
  margin-right: 15px;
  font-size: 24px; /** Ajusta este valor según tus preferencias */
  display: none;
  cursor: pointer;
}
/** Agregar un estilo para la "x" */
#hamburger-icon.x {
  font-size: 24px;
}

.hero-image-background {
  background: url("./assets/images/raquetaJuntoARedConPelota.webp");
  background-size: cover; /** Ajusta el tamaño de la imagen */
  background-position: center; /** Centra la imagen */
  height: 80vh;
}

.hero-desktop-loading {
  background: url("https://upload.wikimedia.org/wikipedia/commons/b/b9/Youtube_loading_symbol_1_(wobbly).gif");
  background-size: 15% !important; /* O puedes usar un porcentaje como background-size: 50%; */
  background-size: contain; /* O ajusta a 'auto' para que se ajuste automáticamente */
  background-position: center;
  background-repeat: no-repeat; /* Asegura que la imagen no se repita */
  height: 80vh;
  width: 100%; /* Ajusta el ancho al 100% para cubrir completamente el div */
}

/** Estilo adicional para el contenedor del video */
.hero-image-background-desktop video {
  width: 100%;
  object-fit: cover;
  background-size: cover; /** Ajusta el tamaño de la imagen */
  background-position: center; /** Centra la imagen */
  height: 80vh;
}

.center-icon {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
}

.center-icon img {
  cursor: pointer;
  max-width: 100px; /** Ajusta según tus necesidades */
  max-height: 100px; /** Ajusta según tus necesidades */
}

/**Quienes somos*/
.who-we-are-image-background {
  background: linear-gradient(to right, #0f1f0f, transparent),
    url("./assets/images/quienesSomos.webp");
  background-size: cover; /** Ajusta el tamaño de la imagen */
  background-position: center; /** Centra la imagen */
  height: 90vh;
}

/**Instalaciones*/
.installations-image-background {
  background: linear-gradient(to left, #0f1f0f, transparent),
    url("./assets/images/Instalaciones.webp");
  background-size: cover; /** Ajusta el tamaño de la imagen */
  background-position: center; /** Centra la imagen */
  height: 90vh;
}

.changingImage {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

/**Carousel*/
/**Cambiar iconos del carousel*/
.carousel-control-prev-icon {
  background-image: url("./assets/SVG/Asset\ 7.svg") !important;
}
.carousel-control-next-icon {
  background-image: url("./assets/SVG/Asset\ 8.svg") !important;
}

/**carousel movile*/
.mobile.carousel-item.active {
  position: relative;
}
.mobile.carousel-item.active::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  /**Establecer el color sobre la imagen de manera comopleta para no perder el texto*/
  background-color: #0f1f0fe7;
  background-blend-mode: multiply;
  opacity: 0.7; /** Ajusta la opacidad según tus preferencias */
}
.mobile {
  height: 60vh !important;
}
.text-card-container {
  padding-top: 30%;
}

/**Servicios*/
.services-image-background {
  background: linear-gradient(to right, #0f1f0f, transparent),
    url("./assets/images/raquetaConPelotaJuntoALineaConTeni.webp");
  background-size: cover; /** Ajusta el tamaño de la imagen */
  background-position: center; /** Centra la imagen */
  height: 70vh;
}

/**Tienda*/
.shop-image-background {
  background: linear-gradient(to left, #0f1f0f, transparent),
    url("./assets/images/raquetaApuntandoPelotaAlPiso.webp");
  background-size: cover; /** Ajusta el tamaño de la imagen */
  background-position: center; /** Centra la imagen */
  height: 70vh;
}

/**Contacto*/
.contact-image-background {
  background: linear-gradient(to right, #0f1f0f, transparent),
    url("./assets/images/esperandoPelota.webp");
  background-size: cover; /** Ajusta el tamaño de la imagen */
  background-position: center; /** Centra la imagen */
  height: 70vh;
}
/**Formulario de contacto*/
/**Input de color negro con border verde*/
.black-input {
  background-color: #0f1f0f !important; /** Fondo oscuro */
  border: 2px solid #9fbd3b !important; /** Borde de color verde */
  color: #ffffff !important; /** Color del texto, blanco en este caso */
}
.black-input:focus {
  outline: none !important; /** Elimina el contorno predeterminado al hacer clic en el input */
  box-shadow: 0 0 5px #28a745 !important; /** Agrega una sombra verde al hacer clic en el input */
}
/**Cambiar el boton a color verde*/
.button-form {
  background-color: #9fbd3b !important;
  border: 2px solid #9fbd3b !important; /** Borde de color verde */
}

/**Ubicacion*/
.ubication-image-background {
  background: linear-gradient(to left, #0f1f0f, transparent),
    url("./assets/images/pelotaEnRed.webp");
  background-size: cover; /** Ajusta el tamaño de la imagen */
  background-position: center; /** Centra la imagen */
  height: 85vh;
}
.ubication-col {
  padding-right: 200px !important;
}

/**Estilos de los iconos de redes sociales*/
.custom-link {
  color: #9fbd3b; /** Color azul de enlace, puedes ajustar el color según tus preferencias */
  text-decoration: none; /** Elimina el subrayado predeterminado de los enlaces */
}
.custom-link:hover {
  color: #00b31b; /** Color azul más oscuro al pasar el ratón sobre el enlace */
}

/**Footer*/
.footer-image {
  max-width: 300px;
  height: auto;
}
.navbar-footer {
  float: right;
  font-size: 12.5px;
}
.navbar-footer a {
  text-decoration: none;
  padding: 10px;
  color: #bababa;
  font-family: Arial;
  font-weight: 900;
}
.navbar-footer a:hover {
  text-decoration: underline;
}
.icon-footer {
  padding-right: 20px;
}

/**Estilos generales*/
.padel-color {
  color: #9fbd3b;
}

.justify-text {
  text-align: justify;
}

/**Animación de pelota*/
.tennis-ball {
  animation: bounce 1s;
}

/** Clase para ocultar visualmente el título pero funcional para lectores de pantalla */
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

/**Galeria*/

/**Estructura de las fotografias*/
.image-gallery img {
  cursor: pointer !important;
  width: 100%;
}

.image-gallery img:hover {
  opacity: 1;
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
}

.image-carousel-galery.carousel-item::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  /**Establecer el color sobre la imagen de manera comopleta para no perder el texto*/
  background-color: #0f1f0f8d;
  background-blend-mode: multiply;
  opacity: 0.7; /** Ajusta la opacidad según tus preferencias */
}

/* Grid css */
.gallery {
  display: grid;
  grid-template-columns: repeat(8, 1fr);
  grid-template-rows: repeat(8, 5vw);
  grid-gap: 15px;
}

.gallery__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  cursor: pointer !important;
}
.gallery__item {
  height: 100%;
}

.gallery__item--1 {
  /* Izquierda a derecha */
  grid-column-start: 1;
  grid-column-end: 3;
  /* Arriba hacia abajo */
  grid-row-start: 1;
  grid-row-end: 3;
}

.gallery__item--2 {
  grid-column-start: 3;
  grid-column-end: 5;
  grid-row-start: 1;
  grid-row-end: 3;
}

.gallery__item--3 {
  grid-column-start: 5;
  grid-column-end: 9;
  grid-row-start: 1;
  grid-row-end: 9;
}

.gallery__item--4 {
  grid-column-start: 1;
  grid-column-end: 3;
  grid-row-start: 3;
  grid-row-end: 6;
}

.gallery__item--5 {
  grid-column-start: 3;
  grid-column-end: 5;
  grid-row-start: 3;
  grid-row-end: 6;
}

.gallery__item--6 {
  grid-column-start: 1;
  grid-column-end: 5;
  grid-row-start: 6;
  grid-row-end: 9;
}

.gallery__item--7 {
  grid-column-start: 1;
  grid-column-end: 5;
  grid-row-start: 1;
  grid-row-end: 9;
}

.gallery__item--8 {
  grid-column-start: 5;
  grid-column-end: 9;
  grid-row-start: 1;
  grid-row-end: 4;
}
.gallery__item--9 {
  grid-column-start: 5;
  grid-column-end: 7;
  grid-row-start: 7;
  grid-row-end: 9;
}
.gallery__item--10 {
  grid-column-start: 7;
  grid-column-end: 9;
  grid-row-start: 7;
  grid-row-end: 9;
}
.gallery__item--11 {
  grid-column-start: 5;
  grid-column-end: 9;
  grid-row-start: 4;
  grid-row-end: 7;
}

.gallery__item--12 {
  grid-column-start: 4;
  grid-column-end: 6;
  grid-row-start: 1;
  grid-row-end: 9;
}
.gallery__item--13 {
  grid-column-start: 1;
  grid-column-end: 4;
  grid-row-start: 1;
  grid-row-end: 4;
}
.gallery__item--14 {
  grid-column-start: 1;
  grid-column-end: 4;
  grid-row-start: 4;
  grid-row-end: 6;
}
.gallery__item--15 {
  grid-column-start: 1;
  grid-column-end: 4;
  grid-row-start: 6;
  grid-row-end: 9;
}
.gallery__item--16 {
  grid-column-start: 6;
  grid-column-end: 9;
  grid-row-start: 1;
  grid-row-end: 3;
}
.gallery__item--17 {
  grid-column-start: 6;
  grid-column-end: 9;
  grid-row-start: 3;
  grid-row-end: 6;
}
.gallery__item--18 {
  grid-column-start: 6;
  grid-column-end: 9;
  grid-row-start: 6;
  grid-row-end: 9;
}
.gallery__item--19 {
  grid-column-start: 1;
  grid-column-end: 5;
  grid-row-start: 1;
  grid-row-end: 4;
}
.gallery__item--20 {
  grid-column-start: 5;
  grid-column-end: 9;
  grid-row-start: 1;
  grid-row-end: 4;
}
.gallery__item--21 {
  grid-column-start: 1;
  grid-column-end: 4;
  grid-row-start: 4;
  grid-row-end: 6;
}
.gallery__item--22 {
  grid-column-start: 4;
  grid-column-end: 6;
  grid-row-start: 4;
  grid-row-end: 6;
}
.gallery__item--23 {
  grid-column-start: 6;
  grid-column-end: 9;
  grid-row-start: 4;
  grid-row-end: 6;
}
.gallery__item--24 {
  grid-column-start: 1;
  grid-column-end: 5;
  grid-row-start: 6;
  grid-row-end: 9;
}
.gallery__item--25 {
  grid-column-start: 5;
  grid-column-end: 9;
  grid-row-start: 6;
  grid-row-end: 9;
}

/* Ocultar en todas las pantallas por defecto */
.gallery-desktop {
  display: none !important;
}

/* Mostrar en pantallas medianas y más grandes */
@media (min-width: 990px) {
  .gallery-desktop {
    display: grid !important;
  }
}

/* Ocultar en todas las pantallas por defecto */
.text-desktop {
  display: none !important;
}

/* Mostrar en pantallas medianas y más grandes */
@media (min-width: 990px) {
  .text-desktop {
    display: block !important;
  }
}

@keyframes bounce {
  0%,
  20%,
  50%,
  80%,
  100% {
    transform: translateY(0);
  }
  40% {
    transform: translateY(-20px);
  }
  60% {
    transform: translateY(-10px);
  }
}

.background-modal {
  position: relative;
}

.close-button-modal {
  font-size: 3vh;
  position: absolute;
  top: 14%;
  right: 16%;
  z-index: 99999999;
}

.carousel-control-prev-icon {
  position: relative;
  right: 15vh;
}

.carousel-control-next-icon {
  position: relative;
  left: 15vh;
}

/**Estilos para dispositivos moviles*/
@media only screen and (max-width: 600px) {
  /** Navegacion */
  .navigation {
    padding: 10px;
  }

  .navbar-hamburger {
    display: block;
  }

  .navbar-right {
    display: none;
  }

  .navbar-right.show-menu {
    display: flex; /** Mostrar opciones de navegación cuando se abre el menú */
    flex-direction: column; /** Alinear opciones de navegación en columna */
    background-color: #0f1f0fe9; /** Fondo del menú en dispositivos móviles */
    padding: 15px; /** Ajusta el espacio alrededor de las opciones en dispositivos móviles */
    position: absolute;
    top: 67px; /** Ajusta la posición vertical del menú en dispositivos móviles */
    left: 0;
    width: 100%;
    z-index: 9999;
  }

  /**Hero section*/
  .hero-image-background {
    height: 70vh;
  }

  /**Quienes somos*/
  .who-we-are-section {
    position: relative;
    margin-top: 42%;
  }
  .who-we-are-image-background {
    width: 100%;
    height: 85vh;
    /**Establecer el color sobre la imagen de manera comopleta para no perder el texto*/
    background-color: #0f1f0fa0;
    background-blend-mode: multiply;
  }
  .overlay-text {
    max-width: 100%;
    left: 5%;
    right: 5%;
  }

  /**Instalaciones*/
  .installations-image-background {
    height: 70vh;
  }

  /**Servicios*/
  .services-image-background {
    height: 60vh;
    /**Establecer el color sobre la imagen de manera comopleta para no perder el texto*/
    background-color: #0f1f0fa0;
    background-blend-mode: multiply;
  }

  /**Tienda*/
  .shop-image-background {
    height: 65vh;
    /**Establecer el color sobre la imagen de manera comopleta para no perder el texto*/
    background-color: #0f1f0fa0;
    background-blend-mode: multiply;
  }

  /**Contacto*/
  .contact-image-background {
    height: 60vh;
    /**Establecer el color sobre la imagen de manera comopleta para no perder el texto*/
    background-color: #0f1f0fa0;
    background-blend-mode: multiply;
  }

  /**Ubicacion*/
  .ubication-image-background {
    height: 76vh;
    /**Establecer el color sobre la imagen de manera comopleta para no perder el texto*/
    background-color: #0f1f0fa0;
    background-blend-mode: multiply;
  }
  .ubication-col {
    padding-right: 25px !important;
  }

  /**Footer*/
  /** Centrar la imagen dentro del media query */
  .footer-image-container {
    text-align: center; /** Para centrado horizontal */
    display: flex;
    align-items: center; /** Para centrado vertical */
  }
  .footer-image {
    max-width: 100%;
  }

  /**Galeria*/
  .image-carousel-galery.carousel-item img {
    max-width: 100%;
    object-fit: fill;
    height: 50vh;
  }
}

/**Estilos para dispositivos moviles*/
@media only screen and (max-width: 375px) {
  /**Quienes somos*/
  .who-we-are-section {
    position: relative;
    margin-top: 41%;
  }
  .who-we-are-image-background {
    width: 100%;
    height: 110vh;
  }
  .overlay-text {
    max-width: 100%;
    left: 5%;
    right: 5%;
  }

  .mobile {
    height: 80vh !important;
  }

  /**Servicios*/
  .services-image-background {
    height: 75vh;
  }

  /**Tienda*/
  .shop-image-background {
    height: 80vh;
  }

  /**Contacto*/
  .contact-image-background {
    height: 75vh;
  }

  /**Ubicacion*/
  .ubication-image-background {
    height: 90vh;
  }
  .ubication-col {
    padding-right: 20px !important;
  }
}
