/* FUPROYAC V7: corrección focalizada de galería de proyectos y HERO móvil.
   No modifica el catálogo, las fichas, la navegación ni el contenido original. */

/* Capas explícitas: la imagen siempre queda delante del fondo sólido,
   el degradado sobre la foto y los textos por encima de ambos. */
.home-page .v6-hero .v6-slides{z-index:0}
.home-page .v6-hero .v6-hero-gradient{z-index:1}
.home-page .v6-hero:before{z-index:2}
.home-page .v6-hero .v6-hero-container{position:relative;z-index:3}

/* El estilo general .gallery-tile de site.css asigna aspect-ratio, y crea
   filas de alto automático que invaden el siguiente bloque. Fijamos cada
   tarjeta estrictamente dentro de su celda en el grid V6. */
.home-page .v6-gallery { grid-auto-rows: minmax(0,205px); align-items:stretch; }
.home-page .v6-gallery > .gallery-tile.v6-project-photo {
  aspect-ratio:auto !important;
  height:100%;
  width:100%;
  min-height:0;
  min-width:0;
  align-self:stretch;
  justify-self:stretch;
  contain:layout paint;
}
.home-page .v6-gallery > .v6-project-photo img {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}
.home-page .v6-gallery > .v6-project-photo::after { display:none; }
.home-page .v6-gallery .v6-photo-overlay {
  color:#fff;
  z-index:2;
  background:linear-gradient(180deg, transparent, rgba(3,26,42,.87));
  text-shadow:0 1px 3px rgba(0,0,0,.35);
}
.home-page .v6-video-band { position:relative; z-index:1; clear:both; }
.home-page .v6-video-band .v6-video-list { min-width:0; }

@media (max-width:900px) {
  .home-page .v6-gallery { grid-auto-rows:minmax(0,180px); }
}
@media (max-width:650px) {
  /* Fotografía protagonista en la mitad superior; contenido editorial debajo.
     El texto deja de cubrir los detalles y los videos/fotos rotan igual. */
  .home-page .v6-hero {
    display:block;
    height:auto;
    min-height:0;
    max-height:none;
    background:#062a41;
    isolation:isolate;
    overflow:hidden;
  }
  .home-page .v6-hero .v6-slides {
    position:absolute;
    inset:0 0 auto;
    width:100%;
    height:clamp(315px,45svh,420px);
    z-index:0;
    overflow:hidden;
  }
  .home-page .v6-hero .v6-slide,
  .home-page .v6-hero .v6-slide picture,
  .home-page .v6-hero .v6-slide img { height:100%;width:100%; }
  .home-page .v6-hero .v6-slide img {
    object-position:center 48%;
    filter:contrast(1.035) saturate(1.06);
  }
  .home-page .v6-hero .v6-hero-gradient {
    position:absolute;
    inset:0 0 auto;
    height:clamp(315px,45svh,420px);
    width:100%;
    z-index:1;
    background:linear-gradient(to bottom,rgba(3,28,47,0) 0%,rgba(3,28,47,.02) 59%,rgba(4,35,55,.24) 76%,#062a41 100%);
  }
  .home-page .v6-hero:before{display:none}
  .home-page .v6-hero .v6-hero-container {
    display:block;
    position:relative;
    z-index:3;
    height:auto;
    min-height:0;
    width:calc(100% - 38px);
    padding:clamp(312px,44svh,413px) 0 36px;
  }
  .home-page .v6-hero .v6-hero-copy {
    max-width:550px;
    width:100%;
    margin:0 auto;
    text-align:left;
  }
  .home-page .v6-hero .v6-kicker {
    font-size:.58rem;
    letter-spacing:.12em;
    color:#ffce80;
  }
  .home-page .v6-hero h1 {
    font-size:clamp(2.3rem,9.5vw,3.15rem);
    line-height:1.07;
    letter-spacing:-.053em;
    margin:15px 0 13px;
    max-width:460px;
  }
  .home-page .v6-hero .v6-hero-copy>p {
    font-size:.88rem;
    line-height:1.57;
    max-width:490px;
    margin-bottom:18px;
    color:#e0eaf0;
  }
  .home-page .v6-hero .v6-hero-buttons {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    align-items:stretch;
    gap:9px;
    max-width:550px;
  }
  .home-page .v6-hero .v6-hero-buttons .btn {
    width:100%;
    min-height:47px;
    padding:11px 12px;
    justify-content:center;
    text-align:center;
    gap:8px;
    font-size:.77rem;
    white-space:nowrap;
  }
  .home-page .v6-gallery {
    grid-template-rows:220px 150px 150px;
    grid-auto-rows:minmax(0,150px);
  }
  .home-page .v6-video-band { margin-top:18px; }
}
@media(max-width:370px) {
 .home-page .v6-hero h1 {font-size:clamp(2.07rem,9.1vw,2.3rem)}
 .home-page .v6-hero .v6-hero-buttons {grid-template-columns:1fr}
 .home-page .v6-hero .v6-hero-buttons .btn {min-height:44px}
}
@media(prefers-reduced-motion:reduce) {
  .home-page .v6-hero .v6-slide img {animation:none!important;transform:none!important}
}
/* Evita que el botón flotante tape los CTAs del HERO en teléfonos estrechos. */
.home-page .floating-whatsapp.v7-hero-wa-hidden{opacity:0!important;pointer-events:none!important;transform:translateY(12px)!important}
