/* Social Banner */
/* Outer wrapper mirrors events-main geometry */
.social-banner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 40px;
}

/* Inner section carries the border, constrained by outer padding → 1120px */
.social-banner-inner {
    padding: 80px 0;
    border-top: 1px solid var(--gold-medium);
}

.social-banner-inner--no-border {
    border-top: none;
}

.social-banner-box {
    max-width: 560px;
    margin: 0 auto;
    text-align: center;
}

.social-banner-title {
    margin-bottom: 16px;
    font-family: var(--font-display), serif;
    font-size: 28px;
    font-weight: 400;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: var(--color-black);
}

.social-banner-text {
    margin-bottom: 32px;
    font-family: var(--font-body), sans-serif;
    font-weight: 300;
    line-height: 2;
    color: var(--text-muted);
}

.social-banner-links {
    display: flex;
    justify-content: center;
    gap: 24px;
}

.social-banner-icon {
    width: 18px;
    height: 18px;
}

/* Responsive - Tablet */
@media (max-width: 768px) {
    .social-banner {
        padding: 0 24px;
    }

    .social-banner-inner {
        padding: 60px 0;
    }

    .social-banner-links {
        gap: 16px;
    }
}

/* Responsive - Mobile */
@media (max-width: 480px) {
    .social-banner {
        padding: 0 16px;
    }

    .social-banner-inner {
        padding: 48px 0;
    }

    .social-banner-title {
        font-size: 24px;
        letter-spacing: 2px;
    }

    .social-banner-text {
        font-size: 14px;
    }
}
