body[data-page="home"] {
  background: #000;
  color: #fff;
}

/* Hero — imagem definida via data-hero-img no index.html, aplicada pelo home.js */

/* Posicionamento do hero — rosto do Heleno à direita sem sobreposição */
body[data-page="home"] .hero:before {
  background-position: 82% 18% !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
}

body[data-page="home"] .premium-intro {
  background:
    radial-gradient(circle at 90% 0%, rgba(233,197,103,.08), transparent 34%),
    #000;
}

body[data-page="home"] .premium-intro-grid {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 42px;
  align-items: end;
}

body[data-page="home"] .region-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}

body[data-page="home"] .region-card {
  min-height: 520px;
}

body[data-page="home"] .carousel {
  scroll-behavior: smooth;
}

body[data-page="home"] .map-grid {
  background:
    radial-gradient(circle at 10% 0%, rgba(233,197,103,.06), transparent 34%),
    #050505;
}

body[data-page="home"] .map-frame iframe:empty {
  background: #111;
}

@media (max-width: 980px) {
  body[data-page="home"] .premium-intro-grid,
  body[data-page="home"] .region-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  body[data-page="home"] .region-card {
    min-height: 420px;
  }
}
/* ─── Mobile refinements ────────────────────────────────────────── */
@media (max-width: 480px) {
  /* Hero region cards — stack em mobile pequeno */
  body[data-page="home"] .region-grid {
    grid-template-columns: 1fr;
  }
  body[data-page="home"] .region-card {
    min-height: 320px;
  }

  /* Carrosséis — 1 card visível */
  body[data-page="home"] .carousel {
    grid-auto-columns: 92vw;
  }

  /* Métricas do hero-card — ocultar no mobile pequeno */
  body[data-page="home"] .metric-row {
    grid-template-columns: repeat(3, 1fr);
    gap: 6px;
  }

  /* Contact band */
  body[data-page="home"] .contact-band .hero-actions {
    flex-direction: column;
    align-items: stretch;
  }
}

/* Touch targets mínimos 44px */
@media (max-width: 760px) {
  .btn, .arrow, .lang-btn, .tab {
    min-height: 44px;
    min-width: 44px;
  }
  .arrow {
    width: 44px;
    height: 44px;
  }
}

/* ─── Seção Como Funciona ───────────────────────────────────────── */
.how-it-works {
  padding: 110px clamp(22px, 6vw, 96px);
}

.how-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1px;
  background: rgba(255,255,255,.06);
  margin-top: 50px;
}

.how-card {
  background: #090907;
  padding: 36px 28px;
  position: relative;
}

.how-number {
  font-family: var(--serif);
  font-size: 52px;
  font-weight: 300;
  color: rgba(233,197,103,.15);
  display: block;
  margin-bottom: 16px;
  line-height: 1;
}

.how-card h3 {
  font-family: var(--serif);
  font-size: 22px;
  font-weight: 300;
  margin-bottom: 12px;
  line-height: 1.2;
}

.how-card p {
  font-size: 13px;
  color: rgba(255,255,255,.55);
  font-weight: 300;
  line-height: 1.65;
}

/* ─── Seção Para Quem É ─────────────────────────────────────────── */
.for-who {
  padding: 110px clamp(22px, 6vw, 96px);
}

.forwho-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
  margin-top: 50px;
}

.forwho-card {
  border: 1px solid rgba(255,255,255,.07);
  padding: 36px 28px;
  background: rgba(255,255,255,.02);
  transition: border-color .3s;
}

.forwho-card:hover {
  border-color: rgba(233,197,103,.3);
}

.forwho-card h3 {
  font-family: var(--serif);
  font-size: 24px;
  font-weight: 300;
  margin-bottom: 12px;
}

.forwho-card p {
  font-size: 13px;
  color: rgba(255,255,255,.55);
  font-weight: 300;
  line-height: 1.65;
}

/* Mobile home seções */
@media (max-width: 1023px) {
  .how-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .forwho-grid {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 767px) {
  .how-grid,
  .forwho-grid {
    grid-template-columns: 1fr;
    gap: 1px;
  }
  .how-card,
  .forwho-card {
    padding: 28px 20px;
  }
  .how-number {
    font-size: 40px;
  }
}