/**
 * Footer Styles
 * Styles specific to the site footer
 */

/* ========================================
   Site Footer
======================================== */
.site-footer {
    background-color: var(--background-color);
    color: var(--bleu-fonce);
    padding: var(--spacing-xl) 0;
    margin-top: var(--spacing-xxl);
}

.site-footer a {
    color: var(--bleu-fonce);
    text-decoration: none;
    transition: opacity var(--transition-fast);
}

.site-footer a:hover,
.site-footer a:focus {
    opacity: 0.7;
}

/* ========================================
   Footer Content
======================================== */
.site-footer__content {
    display: grid;
    grid-template-columns: 1fr;
    gap: var(--spacing-lg);
    align-items: center;
}

@media (min-width: 768px) {
    .site-footer__content {
        grid-template-columns: auto 1fr auto;
        gap: var(--spacing-xl);
    }
}

/* ========================================
   Footer Brand
======================================== */
.site-footer__brand {
    display: flex;
    align-items: center;
}

.site-footer__logo {
    display: flex;
    align-items: center;
}

.footer-logo {
    height: 70px;
    width: auto;
}

/* ========================================
   Footer Contact
======================================== */
.site-footer__contact {
    text-align: center;
    font-size: 0.875rem;
}

@media (min-width: 768px) {
    .site-footer__contact {
        text-align: right;
    }
}

.contact-info {
    margin: 0;
    line-height: 1.6;
}

.contact-info__item {
    display: block;
}

.contact-info__item:last-child {
    margin-bottom: 0;
}

.contact-info__item--legal {
    margin-top: var(--spacing-sm);
    padding-top: var(--spacing-sm);
    font-size: 0.8rem;
}

.contact-info__item--legal a {
    text-decoration: underline;
}

/* ========================================
   Social Links
======================================== */
.site-footer__social {
    display: flex;
    justify-content: center;
    align-items: center;
}

@media (min-width: 768px) {
    .site-footer__social {
        justify-content: flex-end;
    }
}

.social-link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: 1px solid var(--bleu-fonce);
    transition: all var(--transition-fast);
}

.social-link:hover,
.social-link:focus {
    background-color: var(--bleu-fonce);
    color: #fff;
}

.social-link svg {
    width: 20px;
    height: 20px;
}