/* Estilos de la página de Inicio */

/* Hero (Ref. 2: lujo oscuro con líneas doradas) */
.hero { position: relative; overflow: hidden; isolation: isolate; background: var(--color-bg); }
.hero__dots {
  position: absolute; inset: 0; z-index: -1; opacity: 0.7;
  background-image: radial-gradient(var(--color-surface) 1px, transparent 1.3px);
  background-size: 14px 14px;
}
.hero__art { position: absolute; inset: 0 0 auto 0; width: 100%; height: 7rem; z-index: -1; }
@media (min-width: 48rem) { .hero__art { inset: 0; height: 100%; } }
.hero-stop--light { stop-color: var(--color-gold-light); }
.hero-stop--mid { stop-color: var(--color-gold); }
.hero-stop--dark { stop-color: var(--color-gold-dark); }
.hero__slab { fill: var(--color-surface); }
.hero__layer { fill: var(--color-bg-alt); }
.hero__gold-band { fill: url(#hero-gold); filter: url(#hero-glow); }
.hero__gold-line { fill: none; stroke: url(#hero-gold); stroke-width: 2; filter: url(#hero-glow); }
.hero__gold-thin { fill: none; stroke: url(#hero-gold); stroke-width: 0.8; }
.hero__glint { fill: var(--color-text); filter: url(#hero-glow); }
.hero__deco { display: none; } /* móvil: menos capas */
@media (min-width: 48rem) { .hero__deco { display: inline; } }

.hero__inner { padding-block: var(--space-16) var(--space-8); }
.hero__content { text-align: center; }
@media (min-width: 48rem) {
  .hero__inner { padding-block: 5.5rem 4rem; }
  .hero__content { margin-left: auto; width: min(50%, 34rem); }
}
.hero__title { margin: 0 0 var(--space-4); }
.hero__accent {
  display: block; font: 400 clamp(3rem, 9vw, 5.5rem)/1.05 var(--font-accent);
  color: var(--color-gold);
}
@supports (background-clip: text) or (-webkit-background-clip: text) {
  .hero__accent {
    background: linear-gradient(90deg, var(--color-gold-light), var(--color-gold));
    -webkit-background-clip: text; background-clip: text; color: transparent;
  }
}
.hero__kicker {
  display: block; margin-top: var(--space-2);
  font: 300 0.875rem/1 var(--font-body); letter-spacing: 0.28em; text-wrap: balance; text-transform: uppercase; color: var(--color-text);
}
.hero__lead { color: var(--color-text-muted); font-weight: 300; }
.hero__actions { display: flex; flex-wrap: wrap; gap: var(--space-4); justify-content: center; margin: 0; }

/* Buscador (maqueta) */
.hero__search-wrap { padding-bottom: var(--space-12); }
.hero-search {
  display: grid; gap: var(--space-4); padding: var(--space-6);
  background: var(--color-surface); border: 1px solid var(--color-gold-line); border-radius: var(--radius-md);
  box-shadow: var(--shadow-card);
}
@media (min-width: 48rem) { .hero-search { grid-template-columns: 1fr 1fr 2fr auto; align-items: end; } }
.hero-search__field { display: flex; flex-direction: column; gap: var(--space-2); }
.hero-search__field label { font: 500 0.75rem/1 var(--font-body); letter-spacing: 0.12em; text-transform: uppercase; color: var(--color-gold-light); }
.hero-search__field select, .hero-search__field input {
  min-height: 2.75rem; padding: 0 var(--space-3); font: 400 1rem var(--font-body);
  color: var(--color-text); background: var(--color-bg); border: 1px solid var(--color-gold); border-radius: var(--radius-sm); /* 3:1 mínimo en controles */
}

/* Resumen */
.home-about { display: grid; gap: var(--space-8); align-items: start; }
@media (min-width: 48rem) { .home-about { grid-template-columns: 3fr 2fr; gap: var(--space-12); } }
.home-about__points { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--space-4); }
.home-about__points li { padding: var(--space-4) var(--space-6); border-left: 2px solid var(--color-gold); background: var(--color-paper); color: var(--color-ink-muted); }
.home-about__points strong { display: block; font: 400 1.125rem/1.3 var(--font-heading); color: var(--color-ink); }

/* Servicios */
.home-services__more { margin: var(--space-8) 0 0; text-align: center; }

/* Por qué Pitma BR */
.pillars { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--space-6); grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr)); }
.pillars__item { padding-top: var(--space-4); border-top: 2px solid var(--color-gold); }
.pillars__item p { color: var(--color-ink-muted); margin: 0; }

/* Llamado a la acción */
.home-cta__inner { text-align: center; max-width: 40rem; }
.home-cta__actions { display: flex; flex-wrap: wrap; gap: var(--space-4); justify-content: center; margin: 0; }
