/* ============================================================
   tunueva.casa — Página principal (Inicio)
   Complementa landing/estilos.css
   ============================================================ */

/* ---------- Hero ---------- */
.hero-home__acciones { display: flex; gap: 14px; flex-wrap: wrap; margin-bottom: 46px; }
@media (prefers-reduced-motion: no-preference) {
  .hero-home__acciones { animation: hero-in 800ms var(--ease-standard) both; animation-delay: 320ms; }
}

.hero__buscador--full {
  grid-template-columns: repeat(4, 1fr);
  max-width: 1020px;
}
.hero__buscador--full .campo--ciudad { grid-column: span 2; }
.hero__buscador--full .buscador__titulo {
  grid-column: 1 / -1;
  font: var(--text-ui-label); letter-spacing: .12em; text-transform: uppercase;
  color: var(--text-secondary); margin: 0 0 -2px;
}
.hero__buscador--full .btn { grid-column: 1 / -1; justify-self: start; }
@media (max-width: 900px) {
  .hero__buscador--full { grid-template-columns: 1fr 1fr; }
  .hero__buscador--full .campo--ciudad { grid-column: span 2; }
  .hero__buscador--full .btn { justify-self: stretch; }
}

/* ---------- Pilares ---------- */
.pilares { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
@media (max-width: 920px) { .pilares { grid-template-columns: 1fr; } }
.pilar {
  background: var(--color-ivory);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-md);
  padding: 34px 30px;
  box-shadow: var(--shadow-card);
  transition: transform var(--duration-standard) var(--ease-standard), box-shadow var(--duration-standard) var(--ease-standard);
}
.pilar:hover { transform: translateY(-2px); box-shadow: var(--shadow-card-hover); }
.pilar__num {
  font: var(--text-display-md); font-weight: var(--font-weight-light);
  color: var(--color-crimson-leader); font-variant-numeric: tabular-nums; margin-bottom: 16px;
}
.pilar__titulo { font: var(--text-heading-md); color: var(--text-heading); margin: 0 0 10px; text-wrap: pretty; }
.pilar__texto { font: var(--text-body-sm); color: var(--text-secondary); margin: 0; text-wrap: pretty; }

/* ---------- Split (comprar / vender) ---------- */
.split { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; align-items: center; }
@media (max-width: 920px) { .split { grid-template-columns: 1fr; gap: 40px; } }
.split__media image-slot { width: 100%; height: 420px; }
.split--invertido .split__media { order: 2; }
@media (max-width: 920px) { .split--invertido .split__media { order: 0; } }
.split__texto .seccion__titulo { max-width: none; }
.split__texto .seccion__sub { margin-bottom: 28px; }

.check-lista {
  display: grid; grid-template-columns: 1fr 1fr; gap: 10px 24px;
  margin: 0 0 32px; padding: 0; list-style: none;
}
@media (max-width: 560px) { .check-lista { grid-template-columns: 1fr; } }
.check-lista li {
  display: flex; align-items: baseline; gap: 10px;
  font: var(--text-body-sm); color: var(--text-body);
}
.check-lista li::before {
  content: "✓"; color: var(--color-crimson-leader);
  font-weight: var(--font-weight-bold); flex-shrink: 0;
}

.split__acciones { display: flex; gap: 14px; flex-wrap: wrap; align-items: center; }
.split__tl { margin: 18px 0 0; font: var(--text-body-sm); }

/* ---------- Tecnología ---------- */
.tec-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
@media (max-width: 920px) { .tec-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 560px) { .tec-grid { grid-template-columns: 1fr; } }
.tec {
  background: var(--color-ivory);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-md);
  padding: 28px 26px;
  box-shadow: var(--shadow-card);
  transition: transform var(--duration-standard) var(--ease-standard), box-shadow var(--duration-standard) var(--ease-standard);
}
.tec:hover { transform: translateY(-2px); box-shadow: var(--shadow-card-hover); }
.tec__titulo { font: var(--text-heading-sm); color: var(--text-heading); margin: 0 0 8px; }
.tec__texto { font: var(--text-body-sm); color: var(--text-secondary); margin: 0; text-wrap: pretty; }

/* Los tracks 1fr deben poder encoger (image-slot tiene min-content ancho) */
.split > *, .area__grid > * { min-width: 0; }

/* ---------- Áreas: Luxury / Industrial ---------- */
.area__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; align-items: start; margin-top: 8px; }
@media (max-width: 920px) { .area__grid { grid-template-columns: 1fr; gap: 40px; } }
.area__media image-slot { width: 100%; height: 480px; }

.area-puntos { display: grid; gap: 22px; margin: 0 0 30px; }
.area-punto { border-left: 2px solid var(--color-gold-antique); padding-left: 18px; }
.area-punto__titulo { font: var(--text-heading-sm); color: var(--text-heading); margin: 0 0 4px; }
.area-punto__texto { font: var(--text-body-sm); color: var(--text-secondary); margin: 0; text-wrap: pretty; }

.area__pills { display: flex; gap: 10px; flex-wrap: wrap; margin: 0 0 32px; }

/* Variante oscura (Luxury) */
.seccion--oscura .area-punto { border-left-color: var(--color-gold-soft); }
.seccion--oscura .area-punto__titulo { color: var(--color-ivory); }
.seccion--oscura .area-punto__texto { color: rgba(250,248,245,.68); }
.seccion--oscura .tag-pill { border-color: rgba(250,248,245,.28); color: rgba(250,248,245,.85); background: transparent; }
.seccion--oscura .check-lista li { color: rgba(250,248,245,.85); }
.seccion--oscura .check-lista li::before { color: var(--color-gold-soft); }

/* ---------- Cultural Summit ---------- */
#summit .contenedor { max-width: 960px; }
.summit__banner img { display: block; width: 100%; border-radius: var(--radius-md); }
.summit__titulo {
  font: var(--text-heading-lg); color: var(--color-crimson-leader);
  text-align: center; margin: 32px 0 28px; text-wrap: pretty;
}
.summit__videos { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; }
@media (max-width: 820px) { .summit__videos { grid-template-columns: 1fr; } }
.summit__video { margin: 0; min-width: 0; }
.summit__pie {
  display: flex; flex-direction: column; gap: 2px; align-items: center;
  text-align: center; margin-top: 14px;
}
.summit__pie strong { font: var(--text-heading-sm); color: var(--text-heading); }
.summit__pie span { font: var(--text-body-sm); color: var(--text-secondary); }

/* ---------- Cierre (statement + CTA) ---------- */
.cierre { text-align: center; }
.cierre .seccion__titulo { max-width: 720px; margin-left: auto; margin-right: auto; }
.cierre__texto {
  font: var(--text-body-lg); color: rgba(250,248,245,.72);
  max-width: 620px; margin: 0 auto 12px; text-wrap: pretty;
}
.cierre__sub {
  font: var(--text-heading-md); color: var(--color-gold-soft);
  margin: 30px auto 26px; text-wrap: pretty;
}
.cierre__acciones { display: flex; gap: 14px; flex-wrap: wrap; justify-content: center; }
