/* ============================================================= */
/* GREENOVA — styles-v2.css · ajustes con más imágenes           */
/* (se carga DESPUÉS de styles.css, solo agrega/sobreescribe)    */
/* ============================================================= */

/* ----- Hero full-bleed (imagen de fondo detrás del texto) ----- */
.hero--media { overflow: hidden; padding: 96px 0 64px; }
.hero__bg { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: 0; }
/* Franja superior para que el navbar se lea sobre la imagen */
.hero__topfade {
  position: absolute; top: 0; left: 0; right: 0; height: 190px; z-index: 1;
  background: linear-gradient(180deg, rgba(244,241,234,0.97) 0%, rgba(244,241,234,0.9) 30%, rgba(244,241,234,0.5) 62%, rgba(244,241,234,0) 100%);
}

/* Navbar más visible (links más fuertes + hover Contacto en blanco) */
.nav__links a { color: var(--ink); font-weight: 500; }
.nav__cta { color: var(--ink); }
.nav__cta:hover { color: #FFFFFF; }

/* Metodología: títulos en un solo renglón (paso 3 incluido) */
.proceso .step h3 { font-size: 20px; }
/* Hero un poco más compacto: CTA visibles sin scrollear */
.hero--media .hero__title { font-size: clamp(44px, 6.4vw, 92px); margin: 16px 0; }
.hero--media .hero__subtitle { margin-bottom: 0; }
.hero--media .hero__cta { margin-top: 30px; }
.hero--media .hero__scrim {
  position: absolute; inset: 0; z-index: 1;
  background: linear-gradient(100deg,
    var(--cream) 0%,
    var(--cream) 24%,
    rgba(244,241,234,0.88) 42%,
    rgba(244,241,234,0.45) 60%,
    rgba(244,241,234,0.08) 82%,
    rgba(244,241,234,0) 100%);
}
.hero--media .hero__inner { position: relative; z-index: 2; width: 100%; }
.hero--media .hero__text { max-width: 660px; }
.hero--media .hero__badge { left: auto; right: 24px; top: 104px; bottom: auto; }
.hero--media .hero__stat {
  position: absolute; z-index: 2;
  left: auto; right: clamp(22px, 5vw, 56px); bottom: clamp(70px, 12vh, 120px);
}

@media (max-width: 820px) {
  /* En mobile: imagen arriba (banner) + texto debajo sobre crema = legible */
  .hero--media {
    display: flex; flex-direction: column;
    align-items: stretch; min-height: auto;
    padding: 76px 0 56px;
  }
  .hero__bg {
    position: relative; inset: auto;
    width: 100%; height: 30vh; min-height: 210px; max-height: 300px;
    object-position: center 72%; /* enfoca el césped/parque, no la casa */
  }
  .hero--media .hero__topfade,
  .hero--media .hero__scrim { display: none; }
  .hero--media .hero__inner { position: relative; z-index: 2; padding-top: 32px; }
  .hero--media .hero__text { max-width: 100%; }
  .hero--media .hero__title { font-size: clamp(36px, 10vw, 54px); margin: 14px 0; }
  .hero--media .hero__subtitle { font-size: 16px; }
  .hero--media .hero__badge { display: none; }
  .hero--media .hero__stat { display: none; }
}

/* Indicador "SCROLL" al costado (posición original, abajo a la izquierda).
   Solo se muestra cuando hay altura suficiente para que no se superponga
   con los botones; en pantallas más bajas/chicas se oculta. */
@media (max-height: 800px) {
  .hero--media .hero__scroll { display: none; }
}

/* ----- "Qué es": imagen a la derecha + features como lista ----- */
.que__features {
  list-style: none;
  margin-top: 30px;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.que__features li {
  display: flex; align-items: center; gap: 12px;
  font-size: 15px; color: var(--ink-soft);
}
.que__features li span {
  flex: none; width: 34px; height: 34px;
  display: flex; align-items: center; justify-content: center;
  border-radius: 50%;
  background: var(--green-glow); color: var(--green-mid);
}
.que__features li svg { width: 18px; height: 18px; }
.que__media {
  margin: 0;
  border-radius: 6px; overflow: hidden;
  box-shadow: 0 30px 70px rgba(13,59,31,0.16);
}
.que__media img { width: 100%; height: clamp(380px, 54vh, 580px); object-fit: cover; display: block; }

/* ----- Frase de impacto con imagen de fondo ----- */
.quote--media { position: relative; background: none; overflow: hidden; }
.quote--media .quote__bg { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.quote--media .quote__overlay { position: absolute; inset: 0; background: linear-gradient(rgba(7,18,11,0.72), rgba(7,18,11,0.82)); }
.quote--media .container { position: relative; z-index: 1; }

/* ----- Eco con imagen ----- */
.eco__grid { display: grid; grid-template-columns: 1fr 0.9fr; gap: clamp(40px, 6vw, 90px); align-items: center; }
.eco__text { max-width: 560px; }
.eco__media { margin: 0; border-radius: 6px; overflow: hidden; box-shadow: 0 30px 70px rgba(13,59,31,0.16); }
.eco__media img { width: 100%; height: clamp(340px, 48vh, 500px); object-fit: cover; display: block; }

@media (max-width: 820px) {
  .eco__grid { grid-template-columns: 1fr; }
  .que__media { order: -1; }
  .eco__media { order: -1; }
}

/* ----- Footer centrado en mobile ----- */
@media (max-width: 640px) {
  .footer__grid { flex-direction: column; align-items: center; text-align: center; gap: 24px; }
  .footer__brand { flex-direction: column; align-items: center; }
  .footer__contact { align-items: center; }
  .footer__social { justify-content: center; flex-wrap: wrap; }
  .footer__bottom { flex-direction: column; align-items: center; gap: 10px; }
  .footer__bottom p,
  .footer__bottom p:last-child { text-align: center; }
  .footer__credit { text-align: center; }
}

/* ----- WhatsApp flotante (abajo a la derecha) ----- */
.wa-float {
  position: fixed; right: 22px; bottom: 22px; z-index: 1500;
  width: 56px; height: 56px; border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  background: #25D366; color: #fff;
  box-shadow: 0 8px 24px rgba(0,0,0,0.25);
  transition: transform 0.3s var(--ease), box-shadow 0.3s;
}
.wa-float:hover { transform: scale(1.08); box-shadow: 0 12px 30px rgba(0,0,0,0.3); }
@media (max-width: 480px) { .wa-float { right: 16px; bottom: 16px; width: 52px; height: 52px; } }

/* (la imagen de comparativa ahora es natural; sin filtro de saturación) */
