/* Layout only. Typography, colours and controls come from main.css and bootstrap-custom.css. */
.social-offers-banner {
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  gap: 18px; min-height: 272px; padding: 28px 22px; margin: 0 auto; max-width: 572px;
}
.social-offers-banner .social-offers-title { margin: 0; }
.social-offers-cta .fa, .social-follow-button .fa { margin-left: 8px; }
.social-follow-page { padding-top: 35px; padding-bottom: 35px; }
.social-follow-intro { margin-bottom: 35px; }
.social-follow-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.social-follow-card { display: flex; flex-direction: column; align-items: flex-start; margin-bottom: 0; }
.social-follow-card p { margin-bottom: 25px; }
.social-follow-icon { margin-bottom: 15px; }
.social-follow-button { margin-top: auto; white-space: normal; }
.social-follow-note { margin-top: 35px; }
@media (max-width: 767px) {
  .ofertas-mobile { width: 100%; max-width: 320px; height: auto; padding: 1px 0 20px; background-size: cover; }
  .ofertas-mobile .publica, .ofertas-mobile .recibir { float: none; width: auto; }
  .social-follow-grid { grid-template-columns: 1fr; }
  .social-follow-page { padding-top: 25px; }
  .social-offers-banner { min-height: 240px; }
}
