/* WEB BY ANTI STUDIO. */

/*---INDICE---
0-Variables generales
1-Titulos
2-Textos
3-Botones
4-Header
5-Footer
6-Distancias
7-Modo Responsive
*/



* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}




/* FUENTE WEB */
@import url("https://use.typekit.net/ffo3tps.css");

/*---VARIABLES--*/
:root {
  --color-marron:  #302725  !important;
  --color-marron-secundario: #533e31!important;
  --color-naranja: #bb8540 !important;
  --color-beige-oscuro: #bda793 !important;
  --color-beige: #d0ccc0!important;
}

body, h1, p {
  font-family: "neue-haas-grotesk-display", sans-serif;
  font-weight: 500;
  font-size: 12px;
  font-style: normal;
}

body {
  -webkit-font-smoothing: antialiased !important;
}
body {
  margin: 0;
  padding: 0;
  overflow: hidden;
  white-space: nowrap;
  background-color: var(--color-beige);
}
body p{
  white-space: wrap;
}
main{
  height: 86vh;
}
a{
  text-decoration: none;
  color: var(--color-marron);
}

/*---TITULOS--*/
p, a, .abp-texto-inicio, .abp-icono a, .abp-icono i, .abp-menu, .abp-titulo-inicio, .abp-ubi, h1,h2,h3 {
  font-family: "neue-haas-grotesk-display", sans-serif;
}

p.abp-texto {
  font-size: 20px !important;
  line-height: 1.2em !important;
  text-align: normal !important;
  font-weight: 500 !important;
  padding-bottom: 15px !important;
  color: var(--color-marron) !important;
}

.abp-texto-info {
  font-size: 20px !important;
  line-height: 1.2em !important;
  text-align: normal !important;
  font-weight: 500 !important;
  padding-bottom: 15px !important;
  color: var(--color-beige) !important;
}

.abp-texto-info- {
  font-size: 20px !important;
  line-height: 1.2em !important;
  text-align: normal !important;
  font-weight: 500 !important;
  padding-bottom: 15px !important;
  color: var(--color-marron) !important;
}


.abp-texto-inicio {
  font-size: 30px !important;
  font-style: normal !important;
  font-weight: 600 !important;
  line-height: 1.3em !important;
  color: var(--color-marron) !important;
  
}

.abp-icono {
  padding: 10px 30px;
  font-size: 30px !important;
  font-weight: 500 !important;
  text-decoration: none !important;
}

.abp-icono a {
  color: var(--color-marron) !important;
  text-decoration: none;
}

.abp-icono i{
  font-style: italic !important;
  color: var(--color-naranja) !important;
}

.abp-menu {
  padding: 20px 40px;
  font-size: 45px !important;
  font-weight: 500 !important;
  color: var(--color-marron) !important;
}

.abp-titulo-inicio {
  font-size: 70px !important;
  font-weight: 600 !important;
  color: var(--color-marron) !important;
}
.abp-h1 {  
  font-size:  70px !important;
  font-weight: 600 !important;
  color: var(--color-marron) !important;
  line-height: 1 !important;
  padding-bottom: 10px !important;
}
.abp-slogan {  
  font-size: 20px !important;
  font-family: "neue-haas-grotesk-display", sans-serif;
  font-weight: 500 !important;
  font-style: italic !important;
  color: var(--color-naranja) !important;
  padding-bottom: 10px !important;
}
.abp-ubi {
  font-size: 30px !important;
  font-weight: 600 !important;
  color: var(--color-marron) !important;
  width: 450px !important;
  position: absolute !important;
  bottom: 0 !important;
  margin-bottom: calc(7vh - 20px) !important;
}
.abp-info{
  font-size: 20px;
  font-weight: 500;
  font-style: italic;
  color: var(--color-marron);
}
.abp-info-{
  font-size: 20px;
  font-weight: 500;
  font-style: italic;
  color: var(--color-beige);
}



.section-grande, .section-pequeno {
  height: 100vh;
  display: inline-flex;
  align-items: flex-start;
  vertical-align: top;
}

.section-grande-inicio {
  height: 100vh;
  display: inline-flex;
  vertical-align: bottom;
}
.section-grande-inicio {
  width: 100vw;
}

.section-final {
  height: 100vh;
  display: inline-flex;
  align-items: flex-end;
  vertical-align: top;
}

.section-grande {
  width: 100vw;
  padding: 7vh 0;
}

.section-pequeno {
  padding: 7vh 0;
  white-space: normal !important;
}
.section-final {
  width: 100vw;
  padding: 7vh 0;
  margin-right: 40px;
}


.section-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
}

.image-container {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}

.image-container img {
  height: 86vh !important;
  width: calc(0.7 * 86vh) !important;
  object-fit: cover;

}

.image-final {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}

.image-final img {
  height: 86vh !important;
  width: calc(0.7 * 86vh) !important;
  object-fit: cover;

}
.section-text, .left-content {
  font-size: 24px;
  color: white;    
}

.left-content h1 {
  font-size: 4vw;
}

.left-content p {
  font-size: 1.5vw;
}



.right-content .image-container img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}


header{
  height: 7vh;
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: #302725 !important;
  position: fixed;
  width: 100%;
  z-index:99;
}

footer {
  height: 7vh;
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: #302725 !important;
  position: fixed;
  width: 100%;
  z-index:98;
}

header {
  top: 0;
}

footer {
  bottom: 0;
}
.left, .right {
  padding: 0 30px;
}
.image-inicial {
  align-items: flex-start; /* Alinea los elementos al principio del contenedor (arriba) */
  justify-content: flex-start; /* Alinea los elementos a la izquierda */
}
.image-inicial img {
  height: 86vh; /* Ajusta la altura de la imagen para que ocupe la altura completa de la pantalla */
  object-fit: cover; /* Esto mantendrá las proporciones de la imagen */
  object-position: center center; /* Esto centrará la imagen en el medio verticalmente, pero la alineará a la izquierda horizontalmente */
  width: calc(0.7 * 86vh) !important;
}
.image-inicio{
  display: flex;
  justify-content: space-between; 
}
.image-inicio img {
  height: 100vh; /* Ajusta la altura de la imagen para que ocupe la altura completa de la pantalla */
  object-fit: cover; /* Esto mantendrá las proporciones de la imagen */
  object-position: center center; /* Esto centrará la imagen en el medio verticalmente, pero la alineará a la izquierda horizontalmente */
  position: absolute;
  right: 0;
}
.section-grande {
  width: 100vw;
  padding-left: 30px; /* Añade padding en el lado izquierdo */
}
.section-grande-inicio {
  width: 100vw;
  padding-left: 40px; /* Añade padding en el lado izquierdo */
}
.section-text {
  width: calc(0.55 * 86vh) !important;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.section-texto-inicio{
  width: calc(0.7 * 86vh) !important;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.abp-primer-texto{
  margin-left: 30px;
}

/* Fullscreen Menu */
.fullscreen-menu {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100%;
  background-color: var(--color-naranja);
  z-index: 100;
  text-align: center;
  padding-top: 100px;
}

.fullscreen-menu .menu-items {
  position: absolute;
  bottom: 30px;
  left: 30px;
  text-align: left;
  font-family: "neue-haas-grotesk-display", sans-serif;
}

.fullscreen-menu .menu-items a {
  color: var(--color-marron);
  display: block;
  font-size: 90px;
  font-style: normal;
  font-weight: 500;
  margin-bottom: 0px;
  text-decoration: none;
  opacity: 0; /* Inicialmente ocultos para la animación */
}

.fullscreen-menu .abp-idiomas {
  position: absolute;
  bottom: 30px;
  right: 30px;
  font-size: 25px;
  font-family: "neue-haas-grotesk-display", sans-serif;
  text-decoration: none;
}
.fullscreen-menu .abp-idiomas a{
  text-decoration: none;
  color: var(--color-marron);
  font-weight: 500;
  font-style: normal;
  font-weight: 500;
  margin-bottom: 0px;
}

.fullscreen-menu .menu-items a:hover {
  transition: transform 0.4s ease;
  color: var(--color-beige);
  font-family: "neue-haas-grotesk-display", sans-serif;
  transform: skewX(-14deg) !important;
}


.close-menu {
  position: absolute;
  top: 19px;
  right: 40px;
  font-size: 20px;
  font-weight: 500;
  color: var(--color-marron);
  cursor: pointer;
  font-family: "neue-haas-grotesk-display", sans-serif;
}


.section-pequeno {
  margin-right: 15px; 
}

.section-pequeno:last-child {
  margin-right: 0;
  padding-right: 30px;
}

/* IMAGEN HORIZONTAL */
.abp-imagen-horizontal img {
  height: calc(43vh - 7.5px) !important;
  object-fit: cover !important;
  object-position: center center;
}

.image-container.abp-imagen-horizontal{
  width: calc(0.7 * 86vh) !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 15px 0px !important;
}


/* Preloader */
#preloader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: var(--color-marron-secundario); /* Ajusta al color deseado */
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  z-index: 1000; /* Asegúrate de que esté sobre todo lo demás */
  transition: opacity 0.5s ease-out, visibility 0.5s ease-out;
  opacity: 1;
  visibility: visible;
  transition: transform 0.8s ease-out; /* Agrega una transición suave para transformar y opacidad */
  position: relative;
  width: 100%;
  height: 100vh;
  overflow: hidden;
}

#preloader .logo {
  margin-bottom: 20px;
  font-weight: 600 !important;
  color: var(--color-beige);
  font-family: "neue-haas-grotesk-display", sans-serif;
  font-size: 10vw; /* Escala el tamaño del texto con el ancho de la ventana */
  text-align: center; /* Alinea el texto horizontalmente */
  position: relative;
  z-index: 2;
}

#preloader.hidden {
  transform: translateX(-100%); /* Mueve el preloader hacia la izquierda al agregar la clase 'hidden' */
}

#loading-percentage {
  font-size: 10vw;
  font-family: "neue-haas-grotesk-display", sans-serif;
  color: var(--color-beige);
}

.covered {
  color: #ffffff; /* O el color que prefieras cuando las letras son cubiertas */
}






#custom-cursor {
  position: fixed;
  pointer-events: none;
  width: 20px;
  height: 20px;
  background-color: var(--color-marron);
  border-radius: 50%;
  transform: translate(-50%, -50%);
  transition: width 0.3s ease, height 0.3s ease, border 0.3s ease, background-color 0.3s ease;
  z-index: 999999;
}

#custom-cursor.on-image {
  width: 70px;
  height: 70px;
  background-color:  var(--color-marron);
  background-clip: content-box;
}

#custom-cursor.on-image::after {
  content: '+';
  padding: 0px;
  font-size: 50px;
  font-weight: 300;
  color: var(--color-beige);
  position: absolute;
  left: 50%;
  top: 47%;
  transform: translate(-50%, -50%);
}

#custom-cursor.on-link {

    width: 70px; /* Ajusta al tamaño deseado */
    height: 70px; /* Ajusta al tamaño deseado */
    background-image: url('../images/flecha.png');
    background-size: 18px;
    background-repeat: no-repeat;
    background-position: center;
  }



#custom-cursor.on-link::after {
  font-size: 20px;
  font-weight: 100;
  color: var(--color-beige);
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}


body {
  cursor: none;
}

button, a {
  cursor: none !important;
}


.lightbox {
  display: none;
  position: fixed;
  z-index: 1000;
  padding-top: 7vh;
  left: 0;
  top: 0;
  width: 100%;
  height: 100vh;
  overflow: auto;
  background-color: rgb(0, 0, 0);
  background-color: rgba(0, 0, 0, 0.9);
}

.lightbox-content {
  margin: auto;
  display: block;
  height: 86vh;
  opacity: 0; /* Inicialmente invisible */
  transition: opacity 0.6s ease; /* Transición suave de opacidad */
  
}

.lightbox-close {
  position: absolute;
  top: 0px;
  right: 20px;
  color: var(--color-beige);
  font-size: 45px;
  font-weight: 500;
}


.lightbox-prev, .lightbox-next {
  cursor: pointer;
  position: absolute;
  top: 50%;
  width: auto;
  padding: 20px;
  margin-top: -50px;
  color: var(--color-beige);
  font-weight: 500;
  font-size: 20px;
  transition: 0.6s ease;
  border-radius: 0 3px 3px 0;
  user-select: none;
}

.lightbox-prev {
  left: 0;
  border-radius: 3px 0 0 3px;
}

.lightbox-next {
  right: 0;
  border-radius: 3px 0 0 3px;
}
.lightbox-zoom {
  transform: scale(1.3);
  transition: transform 0.3s ease-in-out;
  cursor: zoom-out;
}
.image-final{
  align-items: end; /* Alinea los elementos al principio del contenedor (arriba) */
  justify-content: end; /* Alinea los elementos a la izquierda */
}

.image-final img {
  height: 86vh; /* Ajusta según sea necesario */
  width: 550px; /* Ajusta según sea necesario */
  object-fit: cover;
}









/* CONTACTO */

.contacto {
  display: flex;
  justify-content: space-between;
}

.image-estudio-contacto {
  width: 55vw;
  height: 86vh;
  margin-right: 30px;
  object-fit: cover;
  object-position: center center;
}




#titulo {
  font-size: 130px !important; /* Tamaño inicial */
  transition: font-size 0.3s ease; /* Transición suave para el cambio de tamaño */
}




.project-name {
  position: absolute;
  top: 100%;
  left: 100%;
  transform: translate(-50%, -50%);
  color: var(--color-beige); /* o el color que prefieras */
  font-size: 60px; /* ajusta según sea necesario */
  font-weight: 600;
  white-space: normal;
  text-align: center;
  width: 250px; /* un poco menos que el tamaño del cursor para el padding */
  height: 120px; /* igual que arriba */
  display: flex;
  align-items: center;
  justify-content: center;
}

#custom-cursor.show-project-name {
  width: 70px;
  height: 70px;
  background: transparent; /* o el fondo que prefieras */
  border: none;
  padding: 5px; /* para evitar que el texto toque los bordes */
}

/* Clase para el contenedor de la imagen con la capa marrón */
.image-container-with-overlay {
  position: relative;
}

/* Crear la capa marrón como un pseudo-elemento */
.image-container-with-overlay::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--color-marron); /* Usa tu variable de color marrón */
  opacity: 0.7; /* Opacidad total inicialmente */
  transition: opacity 0.3s ease; /* Transición suave para el cambio de opacidad */
  pointer-events: none; /* Ignorar eventos del mouse, permitiendo clics en elementos subyacentes */
}

/* Cambiar la opacidad al hacer hover */
.image-container-with-overlay:hover::after {
  opacity: 0; /* Ajusta la opacidad al valor deseado */
}

/* Asegúrate de que el texto del nombre del proyecto esté sobre la capa marrón */
.project-name {
  position: absolute;
  z-index: 1; /* Más alto que la capa marrón */
  /* Resto de tus estilos para .project-name */
}



/* + INFO */

.info-modal {
  display: none;
  position: fixed;
  z-index: 1001; /* Asegúrate de que esté sobre otros elementos */
  right: -100%; /* Inicialmente fuera de la vista */
  top: 0;
  width: calc((0.7 * 86vh) + 30px);
  height: 100vh;
  overflow: auto;
  background-color: var(--color-marron-secundario); /* Color de fondo naranja */
  transition: right 0.5s ease; /* Transición suave para el deslizamiento */
}

.modal-content {
  color: var(--color-beige) !important; /* O el color de texto que prefieras */
  margin: 7vh 20px 14vh 20px;
  /* Estilos adicionales para el contenido, como columnas, etc. */
}

/* Estilo para el botón de cierre */
.close-modal {
  color: var(--color-beige);
  position: absolute;
  top: 20px;
  right: 20px;
}

.close-modal:hover,
.close-modal:focus {
  color: black;
  text-decoration: none;
}

.info-button{
  color: var(--color-marron);
  font-size: 20px;
}

.icono-inicio{
  width: 200px;
}
.boton-descarga {
  text-decoration: none;
  padding: 10px 30px;
  border: 1px solid #cfcabb;
  border-radius: 50px;
  font-size: 20px;
  color: var(--color-beige);
}

/*Links legales*/

#policy-links {
  display: flex;
  gap: 20px;
  opacity: 0;
  transition: opacity 0.5s ease-in-out;
}

#policy-links.visible {
  opacity: 1;
}

.policy-item {
  display: inline-block;

}

.policy-item a{
  color: var(--color-marron);
  text-decoration: none;
}

.momp-o {
  color: var(--color-naranja); /* O el color que prefieras */
  text-decoration: none;
  animation: latido 1.5s infinite;
  cursor: pointer;
}
.abp-siguiente-proyecto{
  display: none;
}

/* Animación de latido */
@keyframes latido {
  0%, 100% {
      transform: scale(1);
  }
  50% {
      transform: scale(1.1);
  }
}

.image-adicional {
  flex: 1;
  height: 100%; /* Ocupa todo el alto de la sección */
  display: flex;
  justify-content: flex-end;
}

.image-adicional img {
  width: calc(0.9 * 86vh) !important; /* Ancho especificado */
  height: 86vh; /* Mantener las proporciones de la imagen */
  object-fit: cover; /* Asegura que la imagen cubra completamente el espacio sin distorsionarse */
  align-items: right; /* Centra la imagen verticalmente */
  margin-right: 40px;
}

a.link-contacto {
  font-size: 20px !important;
  text-decoration: none !important;
  line-height: 1.2em !important;
  text-align: normal !important;
  font-weight: 500 !important;
  padding-bottom: 15px !important;
  color: var(--color-marron) !important;
}

/*MODO RESPONSIVE MOBIL*/

@media only screen and (max-width: 768px) {

  /* GENERALES*/
  #custom-cursor {
    display: none !important;
  }
  footer {
    height: auto !important;
    background-color: var(--color-marron) !important;
    display: flex!important;
    flex-direction: column !important;
    position: static !important;
    width: 100% !important;
    z-index:99 !important;
    padding: 20px 0 !important;
    color: var(--color-beige) !important;
    gap: 0px !important;
    align-items: baseline;
    font-size: 20px;
    font-weight: 500;
  }
  footer a{
    color: var(--color-beige) !important;
  }
  #policy-links {
    display: flex;
    flex-direction: column; /* Apilar elementos verticalmente */
    gap: 0px; /* Espacio entre elementos */
    opacity: 0;
    transition: opacity 0.5s ease-in-out;
  }
  #policy-links.visible {
    opacity: 1;
  }
  .policy-item {
    display: flex;
  }
  .left, .right {
    padding: 0 20px !important;
  }
  header{
    height: 7vh;
    display: flex;
    position: fixed;
    background-color: var(--color-beige) !important;
    width: 100%;
    z-index:0;
  }

  body {
   overflow:auto;
    white-space: normal;
  }
  main {
    height: auto;
  }
  .abp-menu{
    padding: 0px 20px 0px 0px;
  }
  .abp-icono{
    padding: 0px 0px 0px 20px;
  }
  

  /*Pagina de Proyectos individual*/
  .section-grande, .section-pequeno {
    display: block;
    width: 100% !important;
    height: auto !important;
    padding: 0 20px 20px 20px !important;
  }

  .image-container img {
    height: auto !important;
    width: 100% !important;

  }
  .image-final img {
    height: auto !important;
    width: 100% !important;
  
  }
  .image-inicial img {
    padding-top: 7vh;
    height: 70vh !important;
    width: 100% !important;
  }
  .image-container.abp-imagen-horizontal{
    height: auto !important;
    width: 100% !important;
  }
  .abp-primer-texto {
    margin-left: 0px;
  }
  .section-text {
    width: 100% !important;
  }
  .info-modal {
    width: 100% !important;
  }
  .abp-h1{
    font-size: 50px !important;
  }

  /*Pagina de contacto*/
  .contacto .section-grande{
    display: flex !important;
    flex-direction: column-reverse !important;
  }
  .image-estudio-contacto {
    width: 100%;
    height: 48vh;
    padding-top: 7vh;
    margin-right: 0;
    object-fit: cover;
    object-position: center center;
  }


  /* MENU FULLSCREEN */
  .fullscreen-menu .menu-items a {
    font-size: 60px !important;
  }
  .fullscreen-menu .menu-items {
    bottom: 50px !important;
    left: 20px !important;
  }
  .icono-inicio{
    padding-top: 10px;
    width: 180px;
  }
  .contacto {
    display: flex;
    justify-content: space-between;
    flex-direction: column-reverse !important;
  }
  .image-container-with-overlay {
    position: initial !important;
  }
  .fullscreen-menu .abp-idiomas {
    top: 10px;
    left: 20px;
    height: 7vh;
  }
  .fullscreen-menu {
    text-align:left;
  }

}

/* MODO RESPONSIVE */

@media only screen and (max-width: 768px) {
  main{
    display: flex;
    flex-direction: column;
  }
  .section-grande, .section-pequeno {
    width: 100vw;

    align-items: flex-start;
    vertical-align: top;
  }
  .close-menu {
    top: 10px;
    right: 20px;
  }
  .abp-icono {
    padding: 5px 20px;
    font-size: 20px !important;
    font-weight: 500 !important;
    text-decoration: none !important;
  }
  #preloader .logo {
    margin-bottom: 20px;
    font-weight: 600 !important;
    color: var(--color-beige);
    font-family: "neue-haas-grotesk-display", sans-serif;
    font-size: 15vw; /* Escala el tamaño del texto con el ancho de la ventana */
    text-align: center; /* Alinea el texto horizontalmente */
    position: relative;
    z-index: 2;
  }
  .texto-contacto{
    padding: 20px 0;
    text-decoration: none !important;
  }
 

  .lightbox-content {
    max-width: 90%; /* Asegura que la imagen no sea más ancha que el 95% de la pantalla */
    max-height: 80vh; /* Ajusta la altura máxima para asegurar que la imagen se ajuste en la pantalla */
    width: auto; /* Mantiene las proporciones de la imagen */
    height: auto; /* Mantiene las proporciones de la imagen */
    display: block; /* Asegura que la imagen se muestre correctamente */
    margin: auto; /* Centra la imagen horizontalmente */
  }

  .lightbox-prev, .lightbox-next {
    cursor: pointer;
    position: absolute;
    top: 50%;
    width: auto;
    padding: 5px;
    margin-top: -50px;
    color: var(--color-beige);
    font-weight: 500;
    font-size: 20px;
    transition: 0.6s ease;
    border-radius: 0 3px 3px 0;
    user-select: none;
  }
  .image-container-with-overlay::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color:transparent !important;
    opacity: 1;
    transition: opacity 0.3s ease;
    pointer-events: none;
  }
  .image-container {
    flex: 1;
    display: block;
    align-items: center;
    justify-content: center;
  }
  img.image-siguiente-proyecto{
    height: 62vh !important;
  }
  .abp-siguiente-proyecto{
    display: block;
    font-size: 50px !important;
    font-weight: 600 !important;
    color: var(--color-marron) !important;
    line-height: 1 !important;
    padding-top: 10px !important;
  }
  .image-adicional{
    display: none !important;
  }
}


@media (min-width: 2400px){

  .abp-texto p{
    font-size: 24px !important;
  }
  .abp-slogan {  
    font-size: 24px !important;
  }
  .info-button{
    font-size: 24px;
  }
  .abp-info{
    font-size: 24px;

  }
  .abp-info-{
    font-size: 24px;
  }
  .abp-texto-info{
    font-size: 24px;
  }
  header,footer{
    height: 5vh;
  }
  .section-grande{
    padding: 5vh 0;
    padding-left: 30px;
  }
  .image-inicial img {
    height: 90vh;
  }
  .section-pequeno {
    padding: 5vh 0;
  }
  .image-container img {
    height: 90vh !important;
  }
  .abp-imagen-horizontal img {
    height: calc(45vh - 7.5px) !important;
    object-fit: cover !important;
    object-position: center center;
  }
  .modal-content {
    color: var(--color-beige) !important; /* O el color de texto que prefieras */
    
    margin: 5vh 20px 14vh 20px;
    /* Estilos adicionales para el contenido, como columnas, etc. */
  }
  .image-estudio-contacto{
    height: 90vh;
  }
  .fullscreen-menu .menu-items a {
    color: var(--color-marron);
    display: block;
    font-size: 120px;
    font-style: normal;
    font-weight: 500;
    margin-bottom: 0px;
    text-decoration: none;
    opacity: 0;
  }
  a.link-contacto {
    font-size: 24px !important;
  }
}



