/* Footer Styles */

.footer-section {
    display: flex;
    flex-direction: column;
    align-items: center;
    align-self: stretch;
    background: var(--bg-surface-5);
    padding: var(--spacing-xl) var(--spacing-3xl);
}

.footer-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--spacing-4xl);
    max-width: 1440px;
    width: 100%;
    margin: 0 auto;
    padding: var(--spacing-4xl) var(--spacing-5xl);
    align-self: stretch;
}

.footer-content {
    display: flex;
    max-width: 1400px;
    flex-direction: column;
    align-items: center;
    gap: var(--spacing-2xl);
    align-self: stretch;
}

.footer-header {
    display: flex;
    align-items: center;
    gap: var(--spacing-2xl);
    align-self: stretch;
}

.footer-logo {
    flex: 1;
}

.footer-logo-image {
    width: 150px;
}

.footer-links {
    display: flex;
    align-items: flex-start;
    gap: var(--spacing-5xl);
    align-self: stretch;
}

.footer-column {
    display: flex;
    width: 220px;
    flex-direction: column;
    align-items: flex-start;
    gap: var(--spacing-xl);
}

.footer-column h3 {
    color: var(--text-primary-on-dark);
    font-size: var(--font-size-heading-3-platform);
    font-weight: var(--font-weight-bold);
    line-height: var(--line-height-body-1);
    letter-spacing: var(--letter-spacing-md);
}

.footer-column ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
    align-self: stretch;
}

.footer-column li {
    margin-bottom: var(--spacing-xs);
}

.footer-column a {
    transition: color 0.2s ease-in-out;
    color: var(--text-primary-on-dark);
    font-size: var(--font-size-body-1);
    font-weight: var(--font-weight-medium);
    text-decoration-line: underline;
    text-decoration-style: solid;
    text-decoration-skip-ink: none;
    text-decoration-thickness: auto;
    text-underline-offset: auto;
    text-underline-position: from-font;
    opacity: 0.6;
}

.footer-column a:hover {
    opacity: 0.8;
}

.footer-column a:focus {
    opacity: 1;
}

.footer-column a:active {
    opacity: 1;
}

.footer-column a:disabled {
    opacity: 0.3;
}

address {
    color: var(--text-secondary-on-dark);
    font-size: var(--font-size-body-1);
    font-weight: var(--font-weight-medium);
    font-style: normal;
}

.footer-social {
    display: flex;
    gap: var(--spacing-md);
    justify-content: flex-end;
}

.footer-bottom {
    display: flex;
    flex-direction: row;
    align-items: center;
    align-self: stretch;
    background: var(--bg-surface-4);
    padding: var(--spacing-md) var(--spacing-3xl);
}

.footer-bottom-container {
    display: flex;
    flex-direction: row;
    align-items: center;
    align-self: stretch;
    margin: auto;
    width: 100%;
    gap: var(--spacing-4xl);
    max-width: 1440px;
    padding: var(--spacing-xl) var(--spacing-5xl);
}

.footer-bottom-content {
    display: flex;
    max-width: 1400px;
    flex-direction: row;
    align-items: center;
    gap: var(--spacing-2xl);
    align-self: stretch;
    width: 100%;
}

.footer-bottom-content p {
    margin: 0;
    color: var(--text-tertiary-on-dark);
    font-size: var(--font-size-body-2);
    font-weight: var(--font-weight-medium);
    flex: 1 0 0;
}

.footer-bottom-links {
    display: flex;
    gap: var(--spacing-2xl);
    opacity: 0.6;
}

.footer-bottom-links a {
    transition: color 0.2s ease-in-out;
    color: var(--text-primary-on-dark);
    font-size: var(--font-size-body-2);
    font-weight: var(--font-weight-medium);
    text-decoration-line: underline;
    text-decoration-style: solid;
    text-decoration-skip-ink: none;
    text-decoration-thickness: auto;
    text-underline-offset: auto;
    text-underline-position: from-font;
    opacity: 0.6;
}

.footer-bottom-links a:hover {
    opacity: 0.8;
}

.footer-bottom-links a:focus {
    opacity: 1;
}

.footer-bottom-links a:active {
    opacity: 1;
}

.footer-bottom-links a:disabled {
    opacity: 0.3;
}

/* Responsive Design */
@media (max-width: 1024px) {
    .footer-section {
        padding: var(--spacing-xl) var(--spacing-2xl);
    }

    .footer-container {
        padding: var(--spacing-3xl);
    }

    .footer-content {
        gap: var(--spacing-xl);
    }

    .footer-column.footer-column--column2 {
        flex: 1 0 0;
    }

    .footer-bottom {
        padding: var(--spacing-none) var(--spacing-2xl);
    }

    .footer-bottom-container {
        padding: var(--spacing-xl) var(--spacing-3xl);
    }
}

/* Responsive Footer */
@media (max-width: 768px) {
    .footer-section {
        padding: var(--spacing-xl) var(--spacing-none);
        margin-top: var(--spacing-2xl);
    }

    .footer-container {
        border-radius: var(--radius-none);
        padding: var(--spacing-4xl) var(--spacing-xl);
    }

    .footer-header {
        flex-direction: column;
        max-width: 420px;
        justify-content: center;
        align-items: flex-start;
        gap: var(--spacing-2xl, 24px);
        align-self: stretch;
    }

    .footer-links {
        flex-direction: column;
        max-width: 420px;
        justify-content: center;
        align-items: flex-start;
        gap: var(--spacing-5xl);
        align-self: stretch;
    }

    .footer-column.footer-column--column2 {
        flex: 1 0 0;
    }

    .footer-bottom {
        padding: var(--spacing-none);
    }

    .footer-bottom-container {
        padding: var(--spacing-xl);
        flex-direction: column;
        align-items: flex-start;
        gap: var(--spacing-lg);
    }

    .footer-bottom-content {
        flex-direction: column;
        align-items: flex-start;
        gap: var(--spacing-lg);
    }
}
