/**
 * Footer Responsive Styles
 * Synergy Health Theme
 */

/* Tablet & Below - 1024px */
@media (max-width: 1024px) {
    .footer-cta-card {
        padding: 50px 60px;
        height: auto;
        min-height: 320px;
    }
    
    .footer-nav {
        flex-wrap: wrap;
    }
    
    .footer-nav-column {
        flex: 0 0 calc(50% - 20px);
    }
}

/* Tablet Portrait & Below - 768px */
@media (max-width: 768px) {
    /* CTA Section */
    .footer-cta-section {
        height: auto;
        padding: 60px 20px;
    }
    
    .footer-cta-card {
        padding: 40px 30px;
        height: auto;
        min-height: 280px;
        flex-direction: column;
        align-items: flex-start;
    }
    
    .footer-cta-content {
        padding-left: 0;
        gap: 20px;
    }
    
    .footer-cta-title {
        font-size: 36px;
    }
    
    .footer-cta-subtitle {
        font-size: 16px;
    }
    
    .footer-cta-buttons {
        flex-direction: column;
        width: 100%;
        gap: 15px;
    }
    
    .footer-cta-button {
        width: 100%;
        text-align: center;
    }
    
    /* Footer Top */
    .footer-top {
        flex-wrap: wrap;
        gap: 30px;
        align-items: center;
        justify-content: center;
        text-align: center;
    }
    
    .footer-brand,
    .footer-contact {
        flex: 0 0 100%;
    }
    
    .footer-brand {
        justify-content: center;
    }
    
    .footer-logo {
        margin: 0 auto;
    }
    
    .footer-contact {
        flex-direction: row;
        flex-wrap: wrap;
        align-items: center;
        justify-content: center;
        gap: 20px;
    }
    
    .footer-address,
    .footer-locations-link {
        flex: 0 0 100%;
        justify-content: center;
    }
    
    .footer-phone,
    .footer-email {
        flex: 0 0 auto;
    }
    
    .footer-social {
        justify-content: center;
        flex: 0 0 100%;
    }
    
    /* Footer Nav - Accordion Style */
    .footer-nav {
        flex-direction: column;
        gap: 0;
        padding: 0;
    }
    
    .footer-nav-column {
        flex: 0 0 100%;
        border-bottom: 1px solid rgba(255, 255, 255, 0.3);
        padding: 0;
    }
    
    .footer-nav-column:first-child {
        border-top: 1px solid rgba(255, 255, 255, 0.3);
    }
    
    .footer-nav-title {
        margin: 0;
        padding: 25px 20px;
        cursor: pointer;
        position: relative;
        display: flex;
        justify-content: space-between;
        align-items: center;
        font-size: 20px;
        user-select: none;
    }
    
    .footer-nav-title::after {
        content: '+';
        font-size: 28px;
        font-weight: 300;
        line-height: 1;
        transition: transform 0.3s ease;
    }
    
    .footer-nav-title.active::after {
        content: '−';
    }
    
    .footer-nav-menu,
    .footer-nav-column .widget {
        max-height: 0;
        overflow: hidden;
        transition: max-height 0.3s ease;
        padding: 0 20px;
    }
    
    .footer-nav-menu.active,
    .footer-nav-column .widget.active {
        max-height: 500px;
        padding: 0 20px 25px 20px;
    }
    
    .footer-nav-menu li {
        margin-bottom: 15px;
    }
    
    .footer-nav-column .widget ul li {
        margin-bottom: 15px;
    }
    
    /* Footer Bottom */
    .footer-bottom {
        flex-direction: column;
        gap: 20px;
        text-align: center;
    }
    
    .footer-legal {
        flex-wrap: wrap;
        justify-content: center;
    }
}

/* Mobile - 480px */
@media (max-width: 480px) {
    .footer-cta-card {
        padding: 30px 20px;
    }
    
    .footer-cta-title {
        font-size: 28px;
    }
    
    .footer-cta-subtitle {
        font-size: 14px;
    }
    
    .footer-cta-button {
        padding: 12px 24px;
        font-size: 14px;
    }
    
    .footer-main {
        padding: 40px 0 30px;
    }
    
    .footer-nav-title {
        font-size: 16px;
    }
    
    .footer-legal {
        flex-direction: column;
        gap: 10px;
    }
}
