/* =========================================================
   AFROTUNE HOME PREMIUM V4.4
   Finition esthétique de l'accueil
   V4.3 reste responsable des correctifs responsive/fonctionnels.
   ========================================================= */

:root {
  --af44-bg: #090b11;
  --af44-surface: rgba(18, 22, 32, .88);
  --af44-surface-2: rgba(27, 33, 47, .78);
  --af44-border: rgba(255, 255, 255, .085);
  --af44-border-hover: rgba(255, 255, 255, .16);
  --af44-text: #f5f7fb;
  --af44-muted: #9ba4b5;
  --af44-accent: #ef1748;
  --af44-radius: 18px;
  --af44-shadow: 0 18px 45px rgba(0, 0, 0, .22);
}

/* ---------- Cohérence générale ---------- */

#afrotune-home-premium {
  color: var(--af44-text);
}

#afrotune-home-premium .afh-section {
  margin-bottom: clamp(28px, 4vw, 54px);
}

#afrotune-home-premium .afh-section-header {
  margin-bottom: 16px;
}

#afrotune-home-premium .afh-section-header h2 {
  margin: 0;
  color: var(--af44-text);
  font-size: clamp(1.2rem, 1.7vw, 1.65rem);
  line-height: 1.15;
  letter-spacing: -.025em;
}

#afrotune-home-premium .afh-section-header p {
  color: var(--af44-muted);
  line-height: 1.5;
}

/* ---------- Hero ---------- */

#afrotune-home-premium .afh-hero {
  border: 1px solid var(--af44-border);
  box-shadow: var(--af44-shadow);
}

#afrotune-home-premium .afh-hero-content {
  position: relative;
  z-index: 2;
}

#afrotune-home-premium .afh-hero h1 {
  letter-spacing: -.045em;
  text-shadow: 0 5px 24px rgba(0, 0, 0, .3);
}

#afrotune-home-premium .afh-hero-text {
  max-width: 650px;
  color: rgba(245, 247, 251, .82);
}

/* ---------- Cartes morceaux / playlists ---------- */

#afrotune-home-premium .afh-card,
#afrotune-home-premium .afh-track-card,
#afrotune-home-premium .afh-playlist-card {
  border: 1px solid var(--af44-border);
  background:
    linear-gradient(
      180deg,
      rgba(31, 37, 51, .90),
      rgba(17, 21, 30, .96)
    );
  border-radius: var(--af44-radius);
  box-shadow: 0 8px 24px rgba(0, 0, 0, .14);
  transition:
    transform .22s ease,
    border-color .22s ease,
    box-shadow .22s ease;
}

@media (hover: hover) {
  #afrotune-home-premium .afh-card:hover,
  #afrotune-home-premium .afh-track-card:hover,
  #afrotune-home-premium .afh-playlist-card:hover {
    transform: translateY(-4px);
    border-color: var(--af44-border-hover);
    box-shadow: 0 16px 34px rgba(0, 0, 0, .24);
  }
}

/* ---------- Artistes ---------- */

#afrotune-home-premium .afh-artist-card {
  border: 1px solid transparent;
  border-radius: var(--af44-radius);
  transition:
    transform .2s ease,
    background .2s ease,
    border-color .2s ease;
}

@media (hover: hover) {
  #afrotune-home-premium .afh-artist-card:hover {
    transform: translateY(-3px);
    background: rgba(255, 255, 255, .035);
    border-color: var(--af44-border);
  }
}

#afrotune-home-premium .afh-artist-card img {
  box-shadow: 0 10px 30px rgba(0, 0, 0, .30);
}

/* ---------- Genres ---------- */

#afrotune-home-premium .afh-genre,
#afrotune-home-premium .afh-genre-chip {
  border: 1px solid var(--af44-border);
  background: rgba(255, 255, 255, .045);
  transition:
    background .18s ease,
    border-color .18s ease,
    transform .18s ease;
}

@media (hover: hover) {
  #afrotune-home-premium .afh-genre:hover,
  #afrotune-home-premium .afh-genre-chip:hover {
    transform: translateY(-2px);
    background: rgba(255, 255, 255, .075);
    border-color: var(--af44-border-hover);
  }
}

/* ---------- Bloc créateurs ---------- */

#afrotune-home-premium .afh-pro {
  position: relative;
  overflow: hidden;

  border: 1px solid rgba(255, 255, 255, .11);
  border-radius: 24px;

  background:
    radial-gradient(
      circle at 90% 10%,
      rgba(103, 80, 255, .22),
      transparent 34%
    ),
    radial-gradient(
      circle at 5% 100%,
      rgba(0, 216, 255, .10),
      transparent 34%
    ),
    linear-gradient(
      135deg,
      rgba(25, 32, 46, .98),
      rgba(22, 25, 55, .96)
    );

  box-shadow: var(--af44-shadow);
}

#afrotune-home-premium .afh-pro h2,
#afrotune-home-premium .afh-pro h3 {
  letter-spacing: -.035em;
}

#afrotune-home-premium .afh-pro p {
  max-width: 760px;
  color: rgba(245, 247, 251, .75);
  line-height: 1.6;
}

/* ---------- Boutons ---------- */

#afrotune-home-premium .btn,
#afrotune-home-premium button {
  border-radius: 999px;
}

#afrotune-home-premium .btn:focus-visible,
#afrotune-home-premium button:focus-visible,
#afrotune-home-premium a:focus-visible {
  outline: 2px solid rgba(255, 255, 255, .9);
  outline-offset: 3px;
}

/* ---------- Bannière Afrotune ---------- */

.afrotune-banner {
  max-width: 1440px;
}

.afrotune-banner img {
  border: 1px solid rgba(255, 255, 255, .08);
  box-shadow: 0 16px 42px rgba(0, 0, 0, .22);
}

/* ---------- Footer public ---------- */

.site-footer {
  width: 100%;
  box-sizing: border-box;

  margin-top: 36px;
  padding:
    30px
    max(18px, env(safe-area-inset-right))
    calc(32px + env(safe-area-inset-bottom))
    max(18px, env(safe-area-inset-left));

  gap: 11px;

  background:
    linear-gradient(
      180deg,
      rgba(12, 15, 22, .96),
      rgba(7, 9, 14, .99)
    );

  border-top: 1px solid rgba(255, 255, 255, .07);
}

.site-footer img {
  height: 42px;
  max-width: 180px;
  object-fit: contain;
}

.site-footer p {
  margin: 0;
  line-height: 1.45;
}

.site-footer .footer-legal-afrotune {
  max-width: 760px;
}

.site-footer .footer-legal-afrotune a {
  color: #aab2c0;
  text-decoration: none;
}

.site-footer .footer-legal-afrotune a:hover {
  color: #fff;
  text-decoration: underline;
}

.site-footer .footer-reseaux {
  margin-top: 4px;
}

/* ---------- Tablettes ---------- */

@media (min-width: 641px) and (max-width: 1024px) {

  #afrotune-home-premium .afh-section {
    margin-bottom: 34px;
  }

  #afrotune-home-premium .afh-pro {
    border-radius: 20px;
  }

  .site-footer {
    margin-top: 26px;
  }
}

/* ---------- Smartphones ---------- */

@media (max-width: 640px) {

  #afrotune-home-premium .afh-section {
    margin-bottom: 26px;
  }

  #afrotune-home-premium .afh-section-header {
    margin-bottom: 12px;
  }

  #afrotune-home-premium .afh-card,
  #afrotune-home-premium .afh-track-card,
  #afrotune-home-premium .afh-playlist-card,
  #afrotune-home-premium .afh-artist-card {
    border-radius: 15px;
  }

  #afrotune-home-premium .afh-pro {
    border-radius: 18px;
  }

  .afrotune-banner {
    margin-bottom: 18px;
  }

  .site-footer {
    margin-top: 20px;
    padding-top: 24px;
    gap: 10px;
  }

  .site-footer img {
    height: 36px;
  }

  .site-footer .footer-legal-afrotune {
    font-size: .78rem;
    line-height: 1.55;
  }
}

/* ---------- Très petits écrans ---------- */

@media (max-width: 390px) {

  #afrotune-home-premium .afh-section-header h2 {
    font-size: 1.1rem;
  }

  .site-footer {
    padding-inline: 14px;
  }
}

/* ---------- Réduction animations ---------- */

@media (prefers-reduced-motion: reduce) {

  #afrotune-home-premium .afh-card,
  #afrotune-home-premium .afh-track-card,
  #afrotune-home-premium .afh-playlist-card,
  #afrotune-home-premium .afh-artist-card,
  #afrotune-home-premium .afh-genre,
  #afrotune-home-premium .afh-genre-chip {
    transition: none;
  }
}
