.slider {
   position: fixed;
   width: 100%;
   height: 100%;
   overflow: hidden;
   display: flex;
   aspect-ratio: 16 / 9;
   z-index: 0
 }
 
 .slides-wrapper {
   position: relative;
   width: 100%;
   height: 100%;
   overflow: hidden;
   z-index: 1; 
   will-change: transform, opacity, filter;
 }
 
 .slider ul {
   list-style: none;
   margin: 0;
   padding: 0;
   width: 100%;
   height: 100%;
   position: relative;
 }
 
 .slider li {
   position: absolute;
   inset: 0;
   width: 100%;
   height: 100%;
 }
 
 .slider li figure {
   margin: 0;
   width: 100%;
   height: 100%;
   position: relative;
 }
 
 .slider li img.responsive-img {
   width: 100%;
   height: 100%;
   object-fit: cover;
   object-position: center;
   display: block;
   aspect-ratio: 16 / 9;
 }
 
 .slider li figcaption {
   position: absolute;
   top: 50%;
   left: 50%;
   transform: translate(-50%, -50%);
   text-align: center;
   color: white;
   pointer-events: none;
 }
 
 /* Contador */
 .slider-counter {
   position: absolute;
   top: 75%;
   left: 50%;
   transform: translate(-50%, -50%);
   z-index: 100;
   will-change: transform, opacity;
 }
 
 /* Controles */
 .slider-controls {
   position: absolute;
  top: 80%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 100;
  will-change: transform, opacity;
   
 }
 
 .slider-controls a {
   display: inline-block;
   width: 2rem;
   height: 2rem;
   background: rgba(255, 255, 255, 0.2);
   border-radius: 50%;
   cursor: pointer;
   text-align: center;
   line-height: 2rem;
   color: #fff;
   font-weight: bold;
   font-size: 1rem;
 }
 
 .slider-controls a[hidden] {
   display: none;
 }
 
 header .artxt{
   position: absolute;
   top: 50%;
   left: 50%;
   transform: translate(-50%, -50%);
   width: 40%;
   height: ;
   z-index: 1;
   color: #fff;
 }
 #itinerario{
   margin-top: 100vh;
 }
 
 .lounchpad {
  display: flex;
  justify-content: center;
  align-items: stretch;
  flex-wrap: wrap;
  gap: 0;
  width: 60%;
  max-width: 1600px;
  margin: 0 auto;
  padding: 3rem 0;
  list-style: none;
  }
  
  .lounchpad li {
  position: relative;
  flex: 1 1 calc(100% / 4);
  aspect-ratio: 1 / 1;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
  cursor: pointer;
  transition: transform 0.3s ease;
  }
  
  .lounchpad li:hover {
  transform: scale(1.02);
  }
  
  .lounchpad li > div {
  position: absolute;
  inset: 0;
  overflow: hidden;
  }
  
  .lounchpad li > div img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.8;
  transition: opacity 0.5s ease;
  }
  
  .lounchpad li:hover > div img {
  opacity: 1;
  }
  
  .lounchpad li h2 {
  position: relative;
  z-index: 2;
  color: #fff;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-size: 2rem;
  font-weight: 700;
  text-align: center;
  transition: transform 0.5s ease, opacity 0.5s ease;
  }
  
  .lounchpad li:hover h2 {
  transform: translateY(-20px);
  opacity: 1;
  }
  
 .interlude{
   position: sticky;
   top: 0;
   height: 150vh;
   background: #db3;
 }
 
 .interlude article{
    height: 100vh;
    background: #3db;
  }
  
 .interlude figure{
     z-index: 0
   }
 .interlude .artxt{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 40%;
    height: auto;
    z-index: 1
  }
  /* borrar esto, es solo test */
  #inclusions{
    background: #eee;
  }
  
  #inclusions #txt{
    justify-content: end;
      align-items: start;
      padding-bottom: 2rem
  }
  
  #inclusions .artxt{
    margin: 0 50% 0 -50%;
  }
  
  #inclusions .artxt dd.colapse{
    margin-top: 4rem;
  }
  
  #inclusions .artxt dd.colapse p, #inclusions .artxt blockquote {
    width: 50%;
    color: #677;
    margin-left: 50%;
    padding: 0 0 0 2rem;
  }
  #inclusions i, #inclusions span.colapse-toggle {
    margin-left: 50%;
    padding: 0 0 0 2rem;
  }
  

#lounchpad_img_bg {
  position: relative;
  overflow: hidden;
  color: #fff
  }
  
  #lounchpad_img_bg figure {
  position: relative;
  z-index: 0;
  }
  
 #lounchpad_img_bg ul {
   position: absolute;
   bottom: 10%;
   left: 50%;
   transform: translateX(-50%);
   width: 60%;
   display: flex;
   align-items: flex-end;
   justify-content: space-between;
   gap: 10px;
   z-index: 2;
   margin: 0;
   padding: 0;
   list-style: none;
 }
 
 #lounchpad_img_bg ul li {
   width: 25%;            /* 4 items → 100/4 */
   display: flex;
   flex-direction: column;
   align-items: center;
 }
 #lounchpad_img_bg ul li .btn{
  display: block
  }
  
  /* tamaños solo para esta sección */
  #lounchpad_img_bg .artxt h2 {
  font-size: 1.5rem;
  }
  
  #lounchpad_img_bg .artxt h3 {
  font-size: 1.2rem;
  }
  
  #lounchpad_img_bg .artxt p {
  font-size: 0.8rem;
  }


 section#mapa {
  
 }
 
 section#mapa article,
 section#mapa figure {
  
 }
 
 section#mapa article figure img.responsive-img  {
      aspect-ratio: 2 / 1;
     
 }

section#mapa .artxt {
    position: absolute;
    bottom: 10%;
    left: 5%;
    color: #fff;
  }

/* GALLERY - columnas tipo Pinterest */
  .gallery > div {
  width: 100%;
  column-count: 2;        /* CAMBIAS ESTE NÚMERO Y LISTO */
  column-gap: 1rem;
  padding: 0;
  }
  
  /* Cada item ocupa una “tarjeta” cuyo alto depende de imagen + texto */
  .gallery figure {
  display: block;
  width: 100%;
  margin: 0 0 1.5rem 0;
  break-inside: avoid;
  }
  
  /* Imagen: manda el alto, sin recortes ni deformación */
  .gallery figure img.responsive-img {
  display: block;
  width: 100%;
  height: auto;           /* alto natural según la foto */
  object-fit: contain;    /* o usa `object-fit: none;` si prefieres */
  aspect-ratio: auto;     /* anula el 3/2 global en esta sección */
  }
  
  /* Anula el overlay global del figcaption solo en la gallery */
  .gallery figure > figcaption {
  position: static;       /* deja de flotar sobre la imagen */
  bottom: auto;
  left: auto;
  padding-top: 0.5rem;
  }
  
  /* Texto solo para esta sección */
  .gallery figcaption h3 {
  font-size: 1.2rem;
  font-weight: 500;
  margin: 0 0 0.15rem 0;
  }
  
  .gallery figcaption h2 {
  font-size: 1.3rem;
  font-weight: 700;
  margin: 0 0 0.25rem 0;
  text-transform: uppercase;
  }
  
  .gallery figcaption p {
  font-size: 0.9rem;
  margin: 0 0 0.4rem 0;
  text-indent: 0;
  }
  
  /* Botón */
  .gallery .btn {
  display: inline-block;
  margin-top: 0.3rem;
  }
  
  #tours{
    margin-top: 
  }
  
  
  

  
  
  
  
  
  
  
  
  
  
  
  
  