/* Footer Component
 *
 * WAPI PREV: LIGHT footer, not a dark band.
 * The starter ships a dark footer, and Direction A has no dark surface at
 * all - its only surfaces are the page (#FBFBFB) and the sage sections.
 * `#1F5B65` is listed in the direction as "Interactif - bouton principal,
 * liens", i.e. a colour for things you click, not a background.
 * The mock Yves approved renders the footer as
 *   `footer{padding:40px 0; color:var(--text2); border-top:1px solid var(--border)}`
 * - page background, a thin top rule, ordinary text. That is what this is.
 */
.site-footer {
    background-color: var(--color-bg-white);
    color: var(--color-text);
    border-top: 1px solid var(--color-border);
    padding: var(--space-16) 0 var(--space-6) 0;
    margin-top: 0;
}

.site-footer__top {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: var(--space-8);
    padding-bottom: var(--space-10);
    border-bottom: 1px solid var(--color-border-neutral);
    margin-bottom: var(--space-6);
}

/* Logo / Site Name */
.site-footer__logo {
    font-family: var(--font-heading);
    font-size: var(--text-2xl);
    font-weight: var(--weight-bold);
    color: var(--color-text);
    text-decoration: none;
    transition: opacity var(--transition-fast);
}

.site-footer__logo:hover {
    opacity: 0.8;
    color: var(--color-text);
}

.site-footer__logo img {
    display: block;
    width: 200px;
    height: auto;
}

/* Navigation */
.site-footer__menu {
    display: flex;
    list-style: none;
    gap: var(--space-6);
    padding: 0;
    margin: 0;
}

.site-footer__menu li a {
    font-family: var(--font-body);
    font-size: var(--text-base);
    color: var(--color-text-muted);
    text-decoration: none;
    transition: color var(--transition-fast);
}

.site-footer__menu li a:hover {
    color: var(--color-primary);
}

/* Bottom row */
.site-footer__bottom {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: var(--space-4);
}

/* On the light footer the phone link takes the interactive teal, like every
   other link on the site (7.40:1 on the page background). */
.site-footer__contact a {
    color: var(--color-primary);
    text-decoration: none;
    transition: color var(--transition-fast);
}

.site-footer__contact a:hover {
    color: var(--color-primary-light);
    text-decoration: underline;
}

.site-footer__copyright {
    font-size: var(--text-sm);
    color: var(--color-text-muted);
    margin: 0;
}

.site-footer__credit {
    font-size: var(--text-sm);
    color: var(--color-text-muted);
    text-decoration: none;
    transition: color var(--transition-fast);
}

.site-footer__credit:hover {
    color: var(--color-primary);
}

.site-footer__legal {
    display: flex;
    justify-content: center;
    gap: var(--space-4);
    margin-top: var(--space-4);
}

.site-footer__legal a {
    color: var(--color-text-muted);
    font-size: var(--text-sm);
    text-decoration: underline;
    text-underline-offset: 3px;
}

/* Mobile */
@media (max-width: 768px) {
    .site-footer {
        padding: var(--space-12) 0 var(--space-6) 0;
    }

    .site-footer__top {
        flex-direction: column;
        align-items: center;
        text-align: center;
        gap: var(--space-6);
    }

    .site-footer__logo img {
        width: 160px;
    }

    .site-footer__menu {
        flex-wrap: wrap;
        justify-content: center;
        gap: var(--space-3) var(--space-6);
    }

    .site-footer__bottom {
        flex-direction: column;
        text-align: center;
        gap: var(--space-2);
    }

    .site-footer__legal {
        flex-direction: column;
        align-items: center;
        gap: var(--space-2);
    }
}
