/* Footer Component Styles */

/* ================================
   FOOTER CSS VARIABLES
   ================================ */
:root {
    /* Main Footer Variables */
    --footer-background: var(--bg-dark);
    --footer-color: var(--text-inverse);
    --footer-margin-top: auto;

    /* Footer Main Section Variables */
    --footer-main-padding-y: var(--space-16);
    --footer-main-padding-bottom: var(--space-8);
    --footer-main-border-bottom: 1px solid rgba(255, 255, 255, 0.1);

    /* Footer Container Variables */
    --footer-container-max-width: var(--container-2xl);
    --footer-container-margin: 0 auto;
    --footer-container-padding: 0 var(--space-6);

    /* Footer Grid Variables */
    --footer-grid-display: grid;
    --footer-grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    --footer-grid-template-columns-desktop: 2fr 1fr 1fr 1.5fr;
    --footer-grid-template-columns-tablet: repeat(2, 1fr);
    --footer-grid-template-columns-mobile: 1fr;
    --footer-grid-gap: var(--space-12);
    --footer-grid-gap-tablet: var(--space-8);

    /* Footer Brand Variables */
    --footer-brand-grid-column: 1;
    --footer-brand-grid-column-tablet: span 2;

    /* Footer Logo Variables */
    --footer-logo-display: flex;
    --footer-logo-align-items: center;
    --footer-logo-gap: var(--space-3);
    --footer-logo-margin-bottom: var(--space-6);
    --footer-logo-font-size: var(--text-2xl);
    --footer-logo-font-weight: var(--font-bold);
    --footer-logo-color: var(--text-inverse);
    --footer-logo-text-decoration: none;
    --footer-logo-transform: translateY(-12px);

    /* Footer Logo Icon Variables */
    --footer-logo-icon-width: 48px;
    --footer-logo-icon-height: 48px;
    --footer-logo-icon-background: var(--primary-gradient);
    --footer-logo-icon-border-radius: var(--radius-xl);
    --footer-logo-icon-display: flex;
    --footer-logo-icon-align-items: center;
    --footer-logo-icon-justify-content: center;
    --footer-logo-icon-color: var(--text-inverse);
    --footer-logo-icon-font-size: var(--text-xl);
    --footer-logo-icon-font-weight: var(--font-bold);

    /* Footer Logo Image Variables */
    --footer-logo-image-height: auto;
    --footer-logo-image-width: 320px;
    --footer-logo-image-max-width: 320px;

    /* Footer Description Variables */
    --footer-description-font-family: 'Georgia', 'Times New Roman', serif;
    --footer-description-font-size: var(--text-base);
    --footer-description-line-height: 1.8;
    --footer-description-color: rgba(255, 255, 255, 0.85);
    --footer-description-margin-bottom: var(--space-6);
    --footer-description-max-width: 320px;
    --footer-description-text-align: justify;
    --footer-description-font-weight: 400;
    --footer-description-letter-spacing: 0.3px;
    --footer-description-transform: translateY(-12px);

    /* Footer Social Variables */
    --footer-social-display: flex;
    --footer-social-justify-content: space-between;
    --footer-social-justify-content-responsive: center;
    --footer-social-width: 320px;
    --footer-social-margin-bottom: var(--space-6);
    --footer-social-transform: translateY(0px);

    /* Footer Social Link Variables */
    --footer-social-link-display: flex;
    --footer-social-link-align-items: center;
    --footer-social-link-justify-content: center;
    --footer-social-link-width: 40px;
    --footer-social-link-height: 40px;
    --footer-social-link-background: rgba(255, 255, 255, 0.1);
    --footer-social-link-color: var(--text-inverse);
    --footer-social-link-border-radius: var(--radius-lg);
    --footer-social-link-text-decoration: none;
    --footer-social-link-transition: all var(--transition-fast);
    --footer-social-link-backdrop-filter: blur(10px);
    --footer-social-link-hover-background: var(--primary-color);
    --footer-social-link-hover-transform: translateY(-2px);
    --footer-social-link-hover-shadow: var(--shadow-lg);

    /* Footer Social Icon Variables */
    --footer-social-icon-width: 24px;
    --footer-social-icon-height: 24px;
    --footer-social-icon-object-fit: contain;
    --footer-social-icon-filter: brightness(1) invert(0);

    /* Footer Contact Variables */
    --footer-contact-margin-top: var(--space-4);

    /* Footer Contact Item Variables */
    --footer-contact-item-display: flex;
    --footer-contact-item-align-items: center;
    --footer-contact-item-gap: var(--space-3);
    --footer-contact-item-margin-bottom: var(--space-3);
    --footer-contact-item-color: rgba(255, 255, 255, 0.7);
    --footer-contact-item-text-decoration: none;
    --footer-contact-item-transition: color var(--transition-fast);
    --footer-contact-item-hover-color: var(--primary-light);

    /* Footer Contact Icon Variables */
    --footer-contact-icon-width: 20px;
    --footer-contact-icon-color: var(--primary-light);

    /* Footer Section Variables */
    --footer-section-display: flex;
    --footer-section-flex-direction: column;

    /* Footer Section Title Variables */
    --footer-section-title-font-size: var(--text-lg);
    --footer-section-title-font-weight: var(--font-semibold);
    --footer-section-title-color: var(--text-inverse);
    --footer-section-title-margin-bottom: var(--space-6);
    --footer-section-title-position: relative;
    --footer-section-title-after-content: '';
    --footer-section-title-after-position: absolute;
    --footer-section-title-after-bottom: -8px;
    --footer-section-title-after-left: 0;
    --footer-section-title-after-width: 30px;
    --footer-section-title-after-height: 2px;
    --footer-section-title-after-background: var(--primary-gradient);
    --footer-section-title-after-border-radius: var(--radius-full);

    /* Footer Links Variables */
    --footer-links-list-style: none;
    --footer-links-margin: 0;
    --footer-links-padding: 0;

    /* Footer Link Item Variables */
    --footer-link-item-margin-bottom: var(--space-3);
    --footer-link-item-margin-bottom-newsletter: 0;

    /* Footer Link Variables */
    --footer-link-color: rgba(255, 255, 255, 0.7);
    --footer-link-text-decoration: none;
    --footer-link-font-size: var(--text-base);
    --footer-link-transition: all var(--transition-fast);
    --footer-link-display: inline-block;
    --footer-link-display-newsletter: inline-flex;
    --footer-link-align-items-newsletter: center;
    --footer-link-cursor: pointer;
    --footer-link-transform-newsletter: translateY(26px);
    --footer-link-hover-color: var(--primary-light);
    --footer-link-hover-transform: translateX(4px);
    --footer-link-hover-transform-newsletter: translateY(26px) translateX(4px);

    /* Footer Link Icon Variables */
    --footer-link-icon-margin-right: var(--space-2);
    --footer-link-icon-color: var(--primary-light);
    --footer-link-icon-font-size: var(--text-sm);

    /* Newsletter Variables */
    --footer-newsletter-background: rgba(255, 255, 255, 0.05);
    --footer-newsletter-padding: var(--space-6);
    --footer-newsletter-border-radius: var(--radius-xl);
    --footer-newsletter-backdrop-filter: blur(10px);
    --footer-newsletter-min-width: 320px;

    /* Newsletter Links Variables */
    --footer-newsletter-links-display: flex;
    --footer-newsletter-links-flex-direction: row;
    --footer-newsletter-links-gap: var(--space-3);
    --footer-newsletter-links-flex-wrap: nowrap;
    --footer-newsletter-links-position: relative;
    --footer-newsletter-links-z-index: 10;
    --footer-newsletter-links-margin-top: var(--space-4);

    /* Newsletter Title Variables */
    --footer-newsletter-title-font-size: var(--text-lg);
    --footer-newsletter-title-font-weight: var(--font-semibold);
    --footer-newsletter-title-color: var(--text-inverse);
    --footer-newsletter-title-margin-bottom: var(--space-3);

    /* Newsletter Description Variables */
    --footer-newsletter-description-color: rgba(255, 255, 255, 0.7);
    --footer-newsletter-description-margin-bottom: var(--space-4);
    --footer-newsletter-description-font-size: var(--text-sm);

    /* Newsletter Form Variables */
    --footer-newsletter-form-display: flex;
    --footer-newsletter-form-gap: var(--space-2);
    --footer-newsletter-form-flex-direction-mobile: column;

    /* Newsletter Input Variables */
    --footer-newsletter-input-flex: 1;
    --footer-newsletter-input-min-width: 220px;
    --footer-newsletter-input-padding: var(--space-3) var(--space-4);
    --footer-newsletter-input-background: rgba(255, 255, 255, 0.1);
    --footer-newsletter-input-border: 1px solid rgba(255, 255, 255, 0.2);
    --footer-newsletter-input-border-radius: var(--radius-lg);
    --footer-newsletter-input-color: var(--text-inverse);
    --footer-newsletter-input-font-size: var(--text-sm);
    --footer-newsletter-input-backdrop-filter: blur(10px);
    --footer-newsletter-input-placeholder-color: rgba(255, 255, 255, 0.5);
    --footer-newsletter-input-focus-outline: none;
    --footer-newsletter-input-focus-border-color: var(--primary-light);
    --footer-newsletter-input-focus-background: rgba(255, 255, 255, 0.15);

    /* Newsletter Button Variables */
    --footer-newsletter-button-padding: var(--space-3) var(--space-6);
    --footer-newsletter-button-background: var(--primary-gradient);
    --footer-newsletter-button-color: var(--text-inverse);
    --footer-newsletter-button-border: none;
    --footer-newsletter-button-border-radius: var(--radius-lg);
    --footer-newsletter-button-font-weight: var(--font-medium);
    --footer-newsletter-button-cursor: pointer;
    --footer-newsletter-button-transition: all var(--transition-fast);
    --footer-newsletter-button-white-space: nowrap;
    --footer-newsletter-button-hover-transform: translateY(-2px);
    --footer-newsletter-button-hover-shadow: var(--shadow-lg);

    /* Footer Bottom Variables */
    --footer-bottom-padding: var(--space-6) 0;

    /* Footer Bottom Content Variables */
    --footer-bottom-content-display: flex;
    --footer-bottom-content-flex-wrap: wrap;
    --footer-bottom-content-justify-content: space-between;
    --footer-bottom-content-align-items: center;
    --footer-bottom-content-gap: var(--space-4);
    --footer-bottom-content-max-width: var(--container-2xl);
    --footer-bottom-content-margin: 0 auto;
    --footer-bottom-content-padding: 0 var(--space-6);
    --footer-bottom-content-flex-direction-mobile: column;
    --footer-bottom-content-text-align-mobile: center;
    --footer-bottom-content-gap-mobile: var(--space-3);

    /* Footer Copyright Variables */
    --footer-copyright-color: var(--text-muted);
    --footer-copyright-font-size: 0.875rem;

    /* Copyright Symbol Variables */
    --footer-copyright-symbol-cursor: pointer;
    --footer-copyright-symbol-user-select: none;
    --footer-copyright-symbol-display: inline-block;
    --footer-copyright-symbol-transition: color 0.2s ease;
    --footer-copyright-symbol-hover-color: var(--primary-color);

    /* Footer Bottom Links Variables */
    --footer-bottom-links-display: flex;
    --footer-bottom-links-gap: var(--space-6);
    --footer-bottom-links-gap-mobile: var(--space-4);
    --footer-bottom-links-list-style: none;
    --footer-bottom-links-margin: 0;
    --footer-bottom-links-padding: 0;
    --footer-bottom-links-flex-wrap-mobile: wrap;
    --footer-bottom-links-justify-content-mobile: center;

    /* Footer Bottom Link Variables */
    --footer-bottom-link-color: rgba(255, 255, 255, 0.6);
    --footer-bottom-link-text-decoration: none;
    --footer-bottom-link-font-size: var(--text-sm);
    --footer-bottom-link-transition: color var(--transition-fast);
    --footer-bottom-link-hover-color: var(--primary-light);

    /* Contact Row Variables */
    --footer-contact-row-display: flex;
    --footer-contact-row-justify-content: center;
    --footer-contact-row-align-items: center;
    --footer-contact-row-gap: var(--space-8);
    --footer-contact-row-grid-column: 2 / 4;
    --footer-contact-row-margin-top: -34px;
    --footer-contact-row-transform: translateX(-40px) translateY(-12px);
    --footer-contact-row-z-index: 5;
    --footer-contact-row-grid-column-tablet: 1 / -1;
    --footer-contact-row-margin-top-tablet: var(--space-6);
    --footer-contact-row-justify-content-tablet: center;
    --footer-contact-row-transform-tablet: none;

    /* Responsive Breakpoints */
    --footer-mobile-breakpoint: 480px;
    --footer-tablet-breakpoint: 768px;
    --footer-tablet-max-breakpoint: 1023px;
    --footer-desktop-breakpoint: 1024px;
}
.footer {
    background: var(--footer-background);
    color: var(--footer-color);
    margin-top: var(--footer-margin-top);
}

.footer-main {
    padding: var(--footer-main-padding-y) 0 var(--footer-main-padding-bottom);
    border-bottom: var(--footer-main-border-bottom);
}

.footer-container {
    max-width: var(--footer-container-max-width);
    margin: var(--footer-container-margin);
    padding: var(--footer-container-padding);
}

.footer-grid {
    display: var(--footer-grid-display);
    grid-template-columns: var(--footer-grid-template-columns);
    gap: var(--footer-grid-gap);
}

.footer-brand {
    grid-column: var(--footer-brand-grid-column);
}

.footer-logo {
    display: var(--footer-logo-display);
    align-items: var(--footer-logo-align-items);
    gap: var(--footer-logo-gap);
    margin-bottom: var(--footer-logo-margin-bottom);
    font-size: var(--footer-logo-font-size);
    font-weight: var(--footer-logo-font-weight);
    color: var(--footer-logo-color);
    text-decoration: var(--footer-logo-text-decoration);
    transform: var(--footer-logo-transform);
}

.footer-logo-icon {
    width: var(--footer-logo-icon-width);
    height: var(--footer-logo-icon-height);
    background: var(--footer-logo-icon-background);
    border-radius: var(--footer-logo-icon-border-radius);
    display: var(--footer-logo-icon-display);
    align-items: var(--footer-logo-icon-align-items);
    justify-content: var(--footer-logo-icon-justify-content);
    color: var(--footer-logo-icon-color);
    font-size: var(--footer-logo-icon-font-size);
    font-weight: var(--footer-logo-icon-font-weight);
}

.footer-description {
    font-family: var(--footer-description-font-family);
    font-size: var(--footer-description-font-size);
    line-height: var(--footer-description-line-height);
    color: var(--footer-description-color);
    margin-bottom: var(--footer-description-margin-bottom);
    max-width: var(--footer-description-max-width);
    text-align: var(--footer-description-text-align);
    font-weight: var(--footer-description-font-weight);
    letter-spacing: var(--footer-description-letter-spacing);
    transform: var(--footer-description-transform);
}

.footer-social {
    display: var(--footer-social-display);
    justify-content: var(--footer-social-justify-content);
    width: var(--footer-social-width);
    margin-bottom: var(--footer-social-margin-bottom);
    transform: var(--footer-social-transform);
}

.footer-social-link {
    display: var(--footer-social-link-display);
    align-items: var(--footer-social-link-align-items);
    justify-content: var(--footer-social-link-justify-content);
    width: var(--footer-social-link-width);
    height: var(--footer-social-link-height);
    background: var(--footer-social-link-background);
    color: var(--footer-social-link-color);
    border-radius: var(--footer-social-link-border-radius);
    text-decoration: var(--footer-social-link-text-decoration);
    transition: var(--footer-social-link-transition);
    backdrop-filter: var(--footer-social-link-backdrop-filter);
}

.footer-social-link:hover {
    background: var(--footer-social-link-hover-background);
    transform: var(--footer-social-link-hover-transform);
    box-shadow: var(--footer-social-link-hover-shadow);
}

.footer-social-icon {
    width: var(--footer-social-icon-width);
    height: var(--footer-social-icon-height);
    object-fit: var(--footer-social-icon-object-fit);
    filter: var(--footer-social-icon-filter);
}

.footer-logo-image {
    height: var(--footer-logo-image-height);
    width: var(--footer-logo-image-width);
    max-width: var(--footer-logo-image-max-width);
}

.footer-contact {
    margin-top: var(--footer-contact-margin-top);
}

.footer-contact-item {
    display: var(--footer-contact-item-display);
    align-items: var(--footer-contact-item-align-items);
    gap: var(--footer-contact-item-gap);
    margin-bottom: var(--footer-contact-item-margin-bottom);
    color: var(--footer-contact-item-color);
    text-decoration: var(--footer-contact-item-text-decoration);
    transition: var(--footer-contact-item-transition);
}

.footer-contact-item:hover {
    color: var(--footer-contact-item-hover-color);
}

.footer-contact-item i {
    width: var(--footer-contact-icon-width);
    color: var(--footer-contact-icon-color);
}

.footer-section {
    display: var(--footer-section-display);
    flex-direction: var(--footer-section-flex-direction);
}

.footer-section-title {
    font-size: var(--footer-section-title-font-size);
    font-weight: var(--footer-section-title-font-weight);
    color: var(--footer-section-title-color);
    margin-bottom: var(--footer-section-title-margin-bottom);
    position: var(--footer-section-title-position);
}

.footer-section-title::after {
    content: var(--footer-section-title-after-content);
    position: var(--footer-section-title-after-position);
    bottom: var(--footer-section-title-after-bottom);
    left: var(--footer-section-title-after-left);
    width: var(--footer-section-title-after-width);
    height: var(--footer-section-title-after-height);
    background: var(--footer-section-title-after-background);
    border-radius: var(--footer-section-title-after-border-radius);
}

.footer-links {
    list-style: var(--footer-links-list-style);
    margin: var(--footer-links-margin);
    padding: var(--footer-links-padding);
}

.footer-link-item {
    margin-bottom: var(--footer-link-item-margin-bottom);
}

.footer-link {
    color: var(--footer-link-color);
    text-decoration: var(--footer-link-text-decoration);
    font-size: var(--footer-link-font-size);
    transition: var(--footer-link-transition);
    display: var(--footer-link-display);
}

.footer-link:hover {
    color: var(--footer-link-hover-color);
    transform: var(--footer-link-hover-transform);
}

.footer-link i {
    margin-right: var(--footer-link-icon-margin-right);
    color: var(--footer-link-icon-color);
    font-size: var(--footer-link-icon-font-size);
}

/* Newsletter Section */
.footer-newsletter {
    background: var(--footer-newsletter-background);
    padding: var(--footer-newsletter-padding);
    border-radius: var(--footer-newsletter-border-radius);
    backdrop-filter: var(--footer-newsletter-backdrop-filter);
    min-width: var(--footer-newsletter-min-width);
}

/* Newsletter section links - horizontal layout */
.footer-newsletter + .footer-links {
    display: var(--footer-newsletter-links-display);
    flex-direction: var(--footer-newsletter-links-flex-direction);
    gap: var(--footer-newsletter-links-gap);
    flex-wrap: var(--footer-newsletter-links-flex-wrap);
    position: var(--footer-newsletter-links-position);
    z-index: var(--footer-newsletter-links-z-index);
    margin-top: var(--footer-newsletter-links-margin-top);
}

.footer-newsletter + .footer-links .footer-link-item {
    margin-bottom: var(--footer-link-item-margin-bottom-newsletter);
}

.footer-newsletter + .footer-links .footer-link {
    display: var(--footer-link-display-newsletter);
    align-items: var(--footer-link-align-items-newsletter);
    transition: var(--footer-link-transition);
    cursor: var(--footer-link-cursor);
    transform: var(--footer-link-transform-newsletter);
}

.footer-newsletter + .footer-links .footer-link:hover {
    transform: var(--footer-link-hover-transform-newsletter);
}

/* Contact row - positioned on same line as newsletter links */
.footer-contact-row {
    display: var(--footer-contact-row-display);
    justify-content: var(--footer-contact-row-justify-content);
    align-items: var(--footer-contact-row-align-items);
    gap: var(--footer-contact-row-gap);
    grid-column: var(--footer-contact-row-grid-column);
    margin-top: var(--footer-contact-row-margin-top);
    transform: var(--footer-contact-row-transform);
    z-index: var(--footer-contact-row-z-index);
}

@media (max-width: 1023px) {
    .footer-contact-row {
        grid-column: var(--footer-contact-row-grid-column-tablet);
        margin-top: var(--footer-contact-row-margin-top-tablet);
        justify-content: var(--footer-contact-row-justify-content-tablet);
        transform: var(--footer-contact-row-transform-tablet);
    }
}

.footer-newsletter-title {
    font-size: var(--footer-newsletter-title-font-size);
    font-weight: var(--footer-newsletter-title-font-weight);
    color: var(--footer-newsletter-title-color);
    margin-bottom: var(--footer-newsletter-title-margin-bottom);
}

.footer-newsletter-description {
    color: var(--footer-newsletter-description-color);
    margin-bottom: var(--footer-newsletter-description-margin-bottom);
    font-size: var(--footer-newsletter-description-font-size);
}

.footer-newsletter-form {
    display: var(--footer-newsletter-form-display);
    gap: var(--footer-newsletter-form-gap);
}

.footer-newsletter-input {
    flex: var(--footer-newsletter-input-flex);
    min-width: var(--footer-newsletter-input-min-width);
    padding: var(--footer-newsletter-input-padding);
    background: var(--footer-newsletter-input-background);
    border: var(--footer-newsletter-input-border);
    border-radius: var(--footer-newsletter-input-border-radius);
    color: var(--footer-newsletter-input-color);
    font-size: var(--footer-newsletter-input-font-size);
    backdrop-filter: var(--footer-newsletter-input-backdrop-filter);
}

.footer-newsletter-input::placeholder {
    color: var(--footer-newsletter-input-placeholder-color);
}

.footer-newsletter-input:focus {
    outline: var(--footer-newsletter-input-focus-outline);
    border-color: var(--footer-newsletter-input-focus-border-color);
    background: var(--footer-newsletter-input-focus-background);
}

.footer-newsletter-button {
    padding: var(--footer-newsletter-button-padding);
    background: var(--footer-newsletter-button-background);
    color: var(--footer-newsletter-button-color);
    border: var(--footer-newsletter-button-border);
    border-radius: var(--footer-newsletter-button-border-radius);
    font-weight: var(--footer-newsletter-button-font-weight);
    cursor: var(--footer-newsletter-button-cursor);
    transition: var(--footer-newsletter-button-transition);
    white-space: var(--footer-newsletter-button-white-space);
}

.footer-newsletter-button:hover {
    transform: var(--footer-newsletter-button-hover-transform);
    box-shadow: var(--footer-newsletter-button-hover-shadow);
}

/* Footer Bottom */
.footer-bottom {
    padding: var(--footer-bottom-padding);
}

.footer-bottom-content {
    display: var(--footer-bottom-content-display);
    flex-wrap: var(--footer-bottom-content-flex-wrap);
    justify-content: var(--footer-bottom-content-justify-content);
    align-items: var(--footer-bottom-content-align-items);
    gap: var(--footer-bottom-content-gap);
    max-width: var(--footer-bottom-content-max-width);
    margin: var(--footer-bottom-content-margin);
    padding: var(--footer-bottom-content-padding);
}

.footer-copyright {
    color: var(--footer-copyright-color);
    font-size: var(--footer-copyright-font-size);
}

.copyright-symbol {
    cursor: var(--footer-copyright-symbol-cursor);
    user-select: var(--footer-copyright-symbol-user-select);
    display: var(--footer-copyright-symbol-display);
    transition: var(--footer-copyright-symbol-transition);
}

.copyright-symbol:hover {
    color: var(--footer-copyright-symbol-hover-color);
}

.footer-bottom-links {
    display: var(--footer-bottom-links-display);
    gap: var(--footer-bottom-links-gap);
    list-style: var(--footer-bottom-links-list-style);
    margin: var(--footer-bottom-links-margin);
    padding: var(--footer-bottom-links-padding);
}

.footer-bottom-link {
    color: var(--footer-bottom-link-color);
    text-decoration: var(--footer-bottom-link-text-decoration);
    font-size: var(--footer-bottom-link-font-size);
    transition: var(--footer-bottom-link-transition);
}

.footer-bottom-link:hover {
    color: var(--footer-bottom-link-hover-color);
}

/* Responsive Design */
@media (max-width: 768px) {
    .footer-main {
        padding: var(--footer-main-padding-y) 0 var(--footer-main-padding-bottom);
    }
    
    .footer-grid {
        grid-template-columns: var(--footer-grid-template-columns-mobile);
        gap: var(--footer-grid-gap-tablet);
    }
    
    .footer-newsletter-form {
        flex-direction: var(--footer-newsletter-form-flex-direction-mobile);
    }
    
    .footer-bottom-content {
        flex-direction: var(--footer-bottom-content-flex-direction-mobile);
        text-align: var(--footer-bottom-content-text-align-mobile);
        gap: var(--footer-bottom-content-gap-mobile);
    }
    
    .footer-bottom-links {
        flex-wrap: var(--footer-bottom-links-flex-wrap-mobile);
        justify-content: var(--footer-bottom-links-justify-content-mobile);
        gap: var(--footer-bottom-links-gap-mobile);
    }
}

@media (max-width: 480px) {
    .footer-container {
        padding: 0 var(--space-4);
    }
    
    .footer-bottom-content {
        padding: 0 var(--space-4);
    }
    
    .footer-social {
        justify-content: var(--footer-social-justify-content-responsive);
    }
}

@media (min-width: 641px) and (max-width: 1023px) {
    .footer-grid {
        grid-template-columns: var(--footer-grid-template-columns-tablet);
        gap: var(--footer-grid-gap-tablet);
    }
    
    .footer-brand {
        grid-column: var(--footer-brand-grid-column-tablet);
        text-align: center;
    }
    
    .footer-social {
        justify-content: var(--footer-social-justify-content-responsive);
    }
}

@media (min-width: 1024px) {
    .footer-container,
    .footer-bottom-content {
        padding: 0 var(--space-8);
    }
    
    .footer-grid {
        grid-template-columns: var(--footer-grid-template-columns-desktop);
    }
} 