/* =====================================================
   PAPILLON HUB · Homepage Styles
   Estilos específicos da homepage (hero + module cards).
   ===================================================== */

.ph-home {
  flex: 1;
  display: flex;
  flex-direction: column;
  background:
    radial-gradient(ellipse at top, rgba(184, 153, 104, 0.08) 0%, transparent 60%),
    var(--ph-paper);
  min-height: calc(100vh - 70px); /* header height */
}

/* ── Hero ── */
.ph-home-hero {
  padding: 38px 28px 26px;
  text-align: center;
  border-bottom: 1px solid var(--ph-line);
}

.ph-home-tagline {
  font-family: var(--ph-sans);
  font-size: var(--ph-text-xs);
  letter-spacing: 0.35em;
  text-transform: uppercase;
  color: var(--ph-gold-deep);
  margin-bottom: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  font-weight: 700;
}

.ph-home-tagline::before,
.ph-home-tagline::after {
  content: '';
  width: 16px;
  height: 1px;
  background: var(--ph-gold);
}

/* ── Hub logo ── */
.ph-hub-logo {
  margin-bottom: 8px;
  display: flex;
  justify-content: center;
}

.ph-hub-logo-img {
  width: clamp(200px, 50vw, 320px);
  height: auto;
  display: block;
}

.ph-home-subtitle {
  font-family: var(--ph-serif);
  font-style: italic;
  font-size: var(--ph-text-base);
  color: var(--ph-ink-soft);
  font-weight: 400;
}

/* ── Module grid ── */
.ph-home-modules {
  flex: 1;
  padding: 22px 22px 18px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

/* ── Responsive ── */
@media (min-width: 768px) {
  .ph-home-hero {
    padding: 60px 40px 40px;
  }

  .ph-home-modules {
    max-width: 700px;
    margin: 0 auto;
    padding: 32px 24px;
    gap: 16px;
  }
}

@media (min-width: 1024px) {
  .ph-home-modules {
    max-width: 800px;
  }
}
