*{
  margin: 0;
  padding: 0;
  box-sizing:border-box;

  /* trim both sides to the capital letters */
  text-box: trim-both cap alphabetic;
  /* trim both sides to the lowercase letter x */
  text-box: trim-both cap alphabetic;
}

html, body{
    background-color: rgb(249, 249, 249);
    /* cursor: none; */
    overflow: overlay;
    overflow-x: hidden;

    font-family: bdo;

    scrollbar-width: none;
    -ms-overflow-style: none;
  }

  body::-webkit-scrollbar {
  display: none;
}
  
  
  :root {
    --negro: #101010;
    --blanco: #f9f9f9;
    --azul: #0000FF;
  }
  

  @font-face {
    font-family: 'bdo';
    src: url('/font/BDOGrotesk-VF.woff2')format('woff2-variations');
    font-weight: 100 900;
}

::selection {
      background: black;
      color: white;
    }

::-webkit-selection {
    background: black;
    color: white;
}

  
  p {
    display: block;
    margin: 0;
    padding: 0;
    line-height: 120%;
  }
  
  h1 {
    font-size: 2.5em;
    margin: 0;
    padding: 0;
    letter-spacing: -.7px;

    font-weight: 400;
    line-height: 110%;
  }
  
  h2{
    font-size: 2em;
    margin: 0;
    padding: 0;
  }
  
  img{
    display:inherit;
    margin: 0;
    padding: 0;
    border-radius: 5px;

    object-fit: cover;
    object-position: center center;
  }
  
  svg, path{
    display: block;
    margin: 0;
    padding: 0;
  }
  
  a{
    /* display: block; */
    margin: 0;
    padding: 0;
    text-decoration: none;
    color: var(--negro);
  }

  a:hover, .socials a:hover, .links a:hover{
    color: var(--azul);
    cursor: pointer;
  }


/* --------- NAVBAR -------- */

  #navbar {
      position: fixed;
      width: 100%;
      top: 0;
      left: 0;
      display: flex;
      justify-content: space-between;
      align-items: flex-end;
      background-color: var(--blanco);
      z-index: 1000;

      padding: 18px 20px 11px;
      letter-spacing: -.3px;

      cursor:default;
    }

    .logo {
      white-space: normal;
      
      color: var(--negro);
      font-weight: 400;
      line-height: 110%;
    }

    .hover_bea:hover{
      color: var(--azul);
    }

    .links{
        display: flex;
        flex-direction: row;
        gap: 3em;
    }

    .links a {
      text-decoration: none;
      color: var(--negro);
      font-weight: regular;
      font-size: 0.938em;
    }

    #icono_menu_mobile{
      display: none;
    }

    #icono_menu_mobile img{
      border-radius: 0px;
    }

    #desplegable_mobile{
      display: none;
    }



/* ---------- GALERIA ---------- */


.contenedor_imagenes {
  padding: 41px 20px;
  display: grid;
  gap: 10px;
  grid-template-areas:
    "img-1 img-2 img-3 img-4"
    "img-5 img-6 img-7 img-7"
    "img-8 img-9 img-9 img-10";
  grid-template-columns: repeat(4, 1fr);
}

.imagen {
  width: 100%;
  overflow: hidden;
  position: relative;

  border-radius: 5px;

  position: relative;
}

.imagen img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.6s ease;
}

.imagen:hover img {
  transform: scale(1.02);
}

.tooltip {
  position: fixed;
  background: white;
  color: black;
  font-size: 0.9rem;
  padding: 12px 10px;
  border-radius: 5px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
  pointer-events: none;
  opacity: 0;
  transform: translate(-1%, -1%);
  z-index: 1000;
  /* white-space: nowrap; */

  max-width: 220px;

  visibility: visible;
}

.texto_img_tactil{
  visibility: hidden;
}



/* ---------- FOOTER ---------- */

.footer {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background-color: var(--blanco);
  z-index: 999;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  overflow: hidden;
  gap: 30px;
  padding: 15px 20px;


  transform: translateY(100%);
  transition: transform 0.4s ease;
  pointer-events: none;
}

.footer.visible {
  transform: translateY(0%);
  opacity: 1;
  pointer-events: auto;
}

#footerMessage {
  display: none;
  transform: translateY(20px);
  height: 0;
  opacity: 0;
}

#footerEmail {
  font-size: 1em;
}

.socials{
  display: flex;
  gap: 3em;
}

.socials a {
  text-decoration: none;
  color: var(--negro);
  font-weight: regular;
  font-size: 1em;
}

/* ------- */

.footer_mobile{
  display: none;
}



@media (max-width: 1024px) and (min-width: 768px) {

  /* ------------- */

.links{
  gap: 2em;
}

/* ---------- GALERIA ---------- */

.contenedor_imagenes {
  padding: 41px 20px;
  display: grid;
  gap: 10px;
  grid-template-areas:
    "img-1 img-2 img-3"
    "img-5 img-7 img-7"
    "img-9 img-9 img-8"
    "img-10 img-6 img-4";
  grid-template-columns: repeat(3, 1fr);
}

.texto_img_tactil{
  visibility: visible;

  position: absolute;
  bottom: 0;
  left: 0;

  padding: 10px;
  margin: 7px;
  background-color: var(--blanco);
  border-radius: 3px;
}

.tooltip {
  visibility: hidden;
}

.imagen:hover img {
  transform: scale(1.00);
}

}



@media (max-width: 768px) and (min-width: 425px) {

  #navbar{
          padding: 18px 10px 11px;
  }

.links{
  gap: 1.2em;
}

/* ---------- GALERIA ---------- */

.contenedor_imagenes {
  padding: 41px 10px;
  display: grid;
  gap: 10px;
  grid-template-areas:
    "img-1 img-2"
    "img-3 img-5"
    "img-7 img-7"
    "img-10 img-4"
    "img-9 img-9"
    "img-6 img-8";
  grid-template-columns: repeat(2, 1fr);
}

.texto_img_tactil{
  visibility: visible;

  position: absolute;
  bottom: 0;
  left: 0;

  padding: 10px;
  margin: 7px;
  background-color: var(--blanco);
  border-radius: 3px;
}

.tooltip {
  visibility: hidden;
}

.imagen:hover img {
  transform: scale(1.00);
}



/* --------- FOOTER --------- */

.footer{
  display: none;
}

.footer_mobile{
  position: fixed;
  bottom: 0;
  width: 100vw;
  background-color: var(--blanco);
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  padding: 10px 10px;

  transform: translateY(100%);
  transition: transform 0.4s ease;
  pointer-events: none;
}

.footer_mobile.visible {
  transform: translateY(0%);
  opacity: 1;
  pointer-events: auto;
}

.icons_mobile{
  display: flex;
  flex-direction: row;
  gap: 14px;
}

}

@media (max-width: 424px) {

#navbar {
  padding: 12px 10px 9px;
}

#icono_menu_mobile{
  display: block;
}

#desplegable_mobile{
  z-index: 1;
  width: 100vw;
  position: fixed;
  padding: 50px 10px 0px;
  display: none;
  flex-direction: column;
  background-color: var(--blanco);
}

.desplegable_int{
  padding: 36px 0px 16px;
  text-align: right;
}

.desplegable_int_borde{
  border-top: 2px solid #d9d9d9;
  padding: 16px 0px 16px;
}

.links{
  display: none;
}



/* ---------- GALERIA ---------- */

.contenedor_imagenes {
  padding: 41px 10px;
  display: grid;
  gap: 10px;
  grid-template-areas:
    "img-1"
    "img-2"
    "img-3"
    "img-5"
    "img-7"
    "img-4"
    "img-8"
    "img-9"
    "img-10"
    "img-6"
    ;
  grid-template-columns: repeat(1, 1fr);
}

.texto_img_tactil{
  visibility: visible;

  position: absolute;
  bottom: 0;
  left: 0;

  padding: 10px;
  margin: 7px;
  background-color: var(--blanco);
  border-radius: 3px;
}

.tooltip {
  visibility: hidden;
}

.imagen:hover img {
  transform: scale(1.00);
}


/* ---------- FOOTER ---------- */

.footer{
  display: none;
}

.footer_mobile{
  position: fixed;
  bottom: 0;
  width: 100vw;
  background-color: var(--blanco);
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  padding: 10px 10px;
}

.icons_mobile{
  display: flex;
  flex-direction: row;
  gap: 14px;
}

}
