.social-media-wrapper { text-align: center; margin-top: 1rem; }
.social-media-label { display: block; font-weight: bold; font-size: .95rem; margin-bottom: 10px; color: #000; }

.social-media {
  display: grid;
  grid-template-columns: repeat(4, 1fr); /* 4 on top + 4 below */
  gap: 10px;
  justify-items: center;
  max-width: 420px;
  margin: 0 auto;
}

.social-media a {
  width: 40px; height: 40px; border-radius: 50%;
  display: inline-flex; align-items: center; justify-content: center;
  background: #fff; border: 2px solid #ccc; font-size: 18px; text-decoration: none; color: inherit;
  transition: transform .2s ease, border-color .2s ease, background-color .2s ease;
}
.social-media a:hover { transform: scale(1.06); border-color: #28a745; background-color: #e6f9f0; }

.social-media .fa-facebook    { color: #3b5998; }
.social-media .fa-twitter     { color: #1da1f2; }
.social-media .fa-instagram   { color: #e1306c; }
.social-media .fa-youtube     { color: #ff0000; }
.social-media .fa-tiktok      { color: #000000; }
.social-media .fa-snapchat-ghost { color: #fffc00; } /* brand yellow ghost */
.social-media .fa-pinterest   { color: #bd081c; }
.social-media .fa-discord     { color: #7289da; }

/* Mobile: keep 4x2 if space allows; gracefully wrap to 3x? if very narrow */
@media (max-width: 420px) {
  .social-media { grid-template-columns: repeat(4, 1fr); }
}
