/* ============================================================
   ARTHUR SENNA — Global Dark Premium (final layer)
   #09090b · gold #d4af37 · stage atmosphere
   ============================================================ */

.home-landing {
  --stage-bg: #09090b;
  --stage-bg-2: #111114;
  --stage-text: #e5e5e5;
  --stage-heading: #ffffff;
  --stage-gold: #d4af37;
  --stage-gold-hot: #c9a227;
  --stage-gold-glow: rgb(212 175 55 / 40%);
}

/* —— Global: no white deserts —— */
body.home-page.home-landing,
body.home-page.home-landing main,
body.home-page.home-landing .hero,
body.home-page.home-landing .hero--wesley,
body.home-page.home-landing .landing-block,
body.home-page.home-landing .section,
body.home-page.home-landing .landing-section--dark,
body.home-page.home-landing .landing-section--cream,
body.home-page.home-landing .landing-news,
body.home-page.home-landing .landing-music,
body.home-page.home-landing .landing-recados-banner,
body.home-page.home-landing .landing-redes,
body.home-page.home-landing .sponsors-section--landing,
body.home-page.home-landing .landing-newsletter {
  background-color: var(--stage-bg) !important;
  color: var(--stage-text) !important;
}

body.home-page.home-landing::before {
  opacity: 0 !important;
}

/* —— Typography —— */
.home-landing .landing-title,
.home-landing .hero-wesley-title,
.home-landing h1,
.home-landing h2,
.home-landing h3 {
  color: var(--stage-heading) !important;
}

.home-landing .landing-eyebrow,
.home-landing .hero-wesley-subtitle,
.home-landing .landing-music-album,
.home-landing .landing-track-num,
.home-landing .landing-news-card-date,
.home-landing .landing-news-card-cta,
.home-landing .bg-music-label {
  color: var(--stage-gold) !important;
}

.home-landing .hero-wesley-desc,
.home-landing .landing-music-desc,
.home-landing .landing-newsletter-desc,
.home-landing .landing-news-card-excerpt {
  color: var(--stage-text) !important;
}

.home-landing .landing-block-header::before {
  background: linear-gradient(90deg, transparent, var(--stage-gold), transparent) !important;
  box-shadow: 0 0 18px var(--stage-gold-glow) !important;
}

/* —— Hero: blend + meta row —— */
.home-landing .hero--wesley {
  background: var(--stage-bg) !important;
  padding-bottom: clamp(2rem, 5vw, 3.5rem) !important;
}

.home-landing .hero-wesley-photo {
  overflow: visible !important;
  background: transparent !important;
  isolation: isolate;
}

.home-landing .hero-wesley-cutout {
  mix-blend-mode: lighten !important;
  filter: contrast(1.04) saturate(1.06);
}

.home-landing .hero-wesley-meta {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 20px !important;
  margin-top: 1.5rem !important;
}

.home-landing .hero-wesley-streaming,
.home-landing .hero-wesley-meta .hero-visit-counter {
  flex: 0 0 auto !important;
  margin: 0 !important;
}

.home-landing .listen-on--hero {
  display: inline-flex !important;
  width: auto !important;
  max-width: none !important;
  margin-top: 0 !important;
  padding: .75rem 1rem .65rem !important;
  background: rgb(255 255 255 / 4%) !important;
  border: 1px solid rgb(212 175 55 / 28%) !important;
}

.home-landing .listen-on--hero .listen-on-label {
  background: var(--stage-bg) !important;
  color: var(--stage-gold) !important;
}

.home-landing .hero-wesley-meta .hero-visit-counter {
  background: rgb(255 255 255 / 4%) !important;
  border-color: rgb(212 175 55 / 22%) !important;
  color: var(--stage-text) !important;
}

/* —— Buttons: consistent padding + hover —— */
.home-landing .btn-gold,
.home-landing .btn-primary,
.home-landing .btn-shimmer,
.home-landing .btn-gold.btn-shimmer,
.home-landing .btn-secondary,
.home-landing .btn-glow-outline,
.home-landing .landing-btn--gold,
.home-landing .landing-btn--outline,
.home-landing .landing-btn--listen,
.home-landing .landing-newsletter-submit,
.home-landing .landing-recados-cta-card .visitor-message-open {
  padding: 12px 24px !important;
  min-height: auto !important;
  line-height: 1.2 !important;
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease, border-color .2s ease !important;
}

.home-landing .btn-gold,
.home-landing .btn-primary,
.home-landing .btn-shimmer,
.home-landing .landing-btn--gold,
.home-landing .landing-btn--listen,
.home-landing .landing-newsletter-submit {
  background: linear-gradient(135deg, #e8c547, var(--stage-gold), var(--stage-gold-hot)) !important;
  color: #09090b !important;
  border: 0 !important;
  box-shadow: 0 4px 20px rgb(212 175 55 / 30%) !important;
}

.home-landing .btn-gold:hover,
.home-landing .btn-primary:hover,
.home-landing .btn-shimmer:hover,
.home-landing .landing-btn--gold:hover,
.home-landing .landing-btn--listen:hover,
.home-landing .landing-newsletter-submit:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 28px rgb(212 175 55 / 42%) !important;
  filter: none !important;
}

.home-landing .btn-secondary,
.home-landing .btn-glow-outline {
  background: transparent !important;
  border: 1px solid rgb(212 175 55 / 45%) !important;
  color: var(--stage-gold) !important;
}

.home-landing .btn-secondary:hover,
.home-landing .btn-glow-outline:hover {
  background: var(--stage-gold) !important;
  color: #09090b !important;
  border-color: var(--stage-gold) !important;
}

/* —— Música: capa esquerda · faixas direita —— */
.home-landing .landing-music-layout {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr) !important;
  gap: clamp(1.25rem, 3vw, 2.5rem) !important;
  align-items: stretch !important;
  max-width: 56rem !important;
  margin-inline: auto !important;
}

.home-landing .landing-music-cover {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.home-landing .landing-music-cover-img,
.home-landing .landing-music-cover-placeholder {
  width: 100%;
  max-width: 20rem;
  aspect-ratio: 1;
  border-radius: 1rem;
  border: 1px solid rgb(212 175 55 / 35%);
  box-shadow:
    0 20px 56px rgb(0 0 0 / 50%),
    0 0 40px rgb(212 175 55 / 10%);
}

.home-landing .landing-music-cover-img {
  object-fit: cover;
  display: block;
}

.home-landing .landing-music-cover-placeholder {
  display: grid;
  place-items: center;
  background: linear-gradient(145deg, rgb(22 22 28), rgb(14 14 18));
  color: var(--stage-gold);
  font-size: .85rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  text-align: center;
  padding: 1rem;
}

.home-landing .landing-music-card {
  border-left: 1px solid rgb(212 175 55 / 22%) !important;
  background: linear-gradient(145deg, rgb(18 18 22 / 96%), rgb(12 12 16 / 98%)) !important;
}

.home-landing .landing-tracklist li {
  color: var(--stage-heading) !important;
  border-bottom-color: rgb(255 255 255 / 7%) !important;
}

/* —— Novidades: grid 3 colunas · 1 card centralizado —— */
.home-landing .landing-news-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 1.25rem !important;
  max-width: 64rem !important;
  margin-inline: auto !important;
}

.home-landing .landing-news-grid--1 {
  grid-template-columns: minmax(0, 22rem) !important;
  justify-content: center !important;
}

.home-landing .landing-news-grid--1 .landing-news-card {
  margin: 0 auto !important;
}

.home-landing .landing-news-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 17.5rem)) !important;
  justify-content: center !important;
}

.home-landing .landing-news-card {
  background: linear-gradient(145deg, rgb(18 18 22 / 96%), rgb(12 12 16 / 98%)) !important;
  border: 1px solid rgb(212 175 55 / 18%) !important;
  border-left: 3px solid var(--stage-gold) !important;
  color: var(--stage-text) !important;
}

.home-landing .landing-news-card-title a {
  color: var(--stage-heading) !important;
}

/* —— Recados: dots + form flutuante —— */
.home-landing .landing-recados-banner .fan-wall-dots {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 6px !important;
  margin-top: 1rem !important;
}

.home-landing .landing-recados-banner .fan-wall-dot {
  width: 6px !important;
  height: 6px !important;
  min-width: 6px !important;
  flex: 0 0 6px !important;
  padding: 0 !important;
  border-radius: 50% !important;
  background: rgb(255 255 255 / 22%) !important;
  border: 0 !important;
  transition: transform .2s ease, background .2s ease, box-shadow .2s ease !important;
}

.home-landing .landing-recados-banner .fan-wall-dot.is-active {
  background: var(--stage-gold) !important;
  box-shadow: 0 0 10px var(--stage-gold-glow) !important;
  transform: scale(1.15) !important;
}

.home-landing .landing-recados-cta {
  display: flex !important;
  justify-content: center !important;
  margin-top: 2rem !important;
}

.home-landing .landing-recados-cta-card {
  width: min(100%, 26rem) !important;
  margin-inline: auto !important;
  padding: 1rem 1.25rem 1.1rem !important;
  background: rgb(255 255 255 / 4%) !important;
  border: 1px solid rgb(212 175 55 / 22%) !important;
  border-radius: 1rem !important;
  backdrop-filter: blur(14px);
  box-shadow: 0 16px 48px rgb(0 0 0 / 35%) !important;
  text-align: center !important;
}

.home-landing .landing-recados-cta-hint {
  color: rgb(255 255 255 / 55%) !important;
  margin-bottom: .65rem !important;
}

.home-landing .landing-recados-cta-card .visitor-message-open {
  width: auto !important;
  max-width: 100% !important;
}

/* —— Patrocinadores dark —— */
.home-landing .sponsors-section--landing {
  border-top: 1px solid rgb(212 175 55 / 10%) !important;
}

.home-landing .sponsor-card--landing {
  background: rgb(255 255 255 / 3%) !important;
  border: 1px solid rgb(255 255 255 / 7%) !important;
  box-shadow: none !important;
}

.home-landing .sponsor-card--landing:hover {
  background: rgb(255 255 255 / 6%) !important;
  border-color: rgb(212 175 55 / 25%) !important;
}

/* —— Instagram 100% full-bleed · zero gap —— */
.home-landing .landing-instagram-fullbleed {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(-50vw + 50%) !important;
  margin-right: calc(-50vw + 50%) !important;
  margin-top: 2.5rem !important;
  padding: 0 !important;
}

.home-landing .landing-instagram-wall--fullbleed .landing-instagram-wall-grid {
  gap: 0 !important;
  background: transparent !important;
}

.home-landing .landing-instagram-wall-grid {
  gap: 0 !important;
}

.home-landing .landing-instagram-wall-cell {
  border-radius: 0 !important;
}

/* —— Newsletter horizontal escura —— */
.home-landing .landing-section--spotlight,
.home-landing .landing-newsletter {
  background: linear-gradient(180deg, #0d0d10, var(--stage-bg)) !important;
  border-top: 1px solid rgb(212 175 55 / 15%) !important;
}

.home-landing .landing-newsletter-form {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: flex-end !important;
  justify-content: center !important;
  gap: .75rem !important;
  max-width: 52rem !important;
  margin-inline: auto !important;
  padding: 1.15rem 1.25rem !important;
  background: rgb(255 255 255 / 3%) !important;
  border: 1px solid rgb(212 175 55 / 18%) !important;
  border-radius: 1rem !important;
}

.home-landing .landing-newsletter-field label {
  color: rgb(255 255 255 / 50%) !important;
}

.home-landing .landing-newsletter-field input,
.home-landing .landing-newsletter-field select {
  background: rgb(255 255 255 / 6%) !important;
  border: 1px solid rgb(255 255 255 / 10%) !important;
  color: var(--stage-heading) !important;
}

.home-landing .landing-newsletter-field input::placeholder {
  color: rgb(255 255 255 / 35%) !important;
}

/* —— Cleanup: kill stray white gaps —— */
.home-landing .landing-section--dark,
.home-landing .landing-block,
.home-landing .section {
  margin-block: 0 !important;
}

.home-landing .site-footer {
  background: #050506 !important;
  border-top: 1px solid rgb(212 175 55 / 15%) !important;
}

.home-landing .site-header--glass {
  background: rgb(9 9 11 / 92%) !important;
  border-bottom: 1px solid rgb(212 175 55 / 12%) !important;
}

@media (max-width: 1024px) {
  .home-landing .landing-music-layout {
    grid-template-columns: 1fr !important;
  }

  .home-landing .landing-music-cover-img,
  .home-landing .landing-music-cover-placeholder {
    max-width: 14rem;
    margin-inline: auto;
  }

  .home-landing .landing-news-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 768px) {
  .home-landing .hero-wesley-meta {
    flex-direction: column !important;
    align-items: center !important;
  }

  .home-landing .landing-news-grid,
  .home-landing .landing-news-grid--2 {
    grid-template-columns: 1fr !important;
  }

  .home-landing .landing-newsletter-form {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  .home-landing .landing-newsletter-submit {
    width: 100% !important;
  }
}
