/* Soja — pied de page, et pied toujours en bas de l'écran (pages courtes : 404, recherche vide…). */

body{display:flex;flex-direction:column;min-height:100vh}
body.admin-bar{min-height:calc(100vh - 32px)}
.site-main{flex:1 0 auto}

.site-footer{position:relative;overflow:hidden;flex:none;background:var(--sage-d);color:#d6e3d3;font-size:.92rem;padding:72px 0 28px;margin-top:40px;border-radius:44px 44px 0 0}
.site-footer__blob{position:absolute;width:420px;height:420px;right:-120px;top:-160px;border-radius:60% 40% 55% 45%/50% 60% 40% 50%;background:rgba(255,250,242,.06);box-shadow:0 0 0 60px rgba(255,250,242,.03);pointer-events:none}
.site-footer .wrap{position:relative;display:block}
.site-footer a{color:var(--cream);transition:color .2s}
.site-footer a:hover{color:#c9eac0}

.site-footer__top{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:40px;padding-bottom:44px}
.site-footer__logo{display:inline-flex}
.site-footer__logo img{width:190px;height:auto;object-fit:contain}
.site-footer__tagline{font-family:var(--serif);font-size:1.6rem;line-height:1.2;color:var(--cream);margin:20px 0 0;max-width:16ch}
.site-footer__tagline em{color:#c9eac0}
.site-footer__follow{margin:26px 0 10px;font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#a9c6a5}
.site-footer__social{list-style:none;margin:0;padding:0;display:flex;gap:10px}
.site-footer__social a{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:rgba(255,250,242,.1);color:var(--cream);transition:background .2s,transform .2s,color .2s}
.site-footer__social a:hover{background:var(--cream);color:var(--sage-d);transform:translateY(-2px)}
.site-footer__social svg{fill:currentColor}

.site-footer__title{font-family:var(--serif);font-size:1.25rem;color:var(--cream);margin:6px 0 14px}
.site-footer__col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px}
.site-footer__col a{color:#d6e3d3}
.site-footer__col a:hover{color:var(--cream);text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--terra)}

.site-footer__notice{display:flex;align-items:center;gap:24px;padding:20px 24px;border-radius:24px;background:rgba(0,0,0,.14);font-size:.86rem;line-height:1.5}
.site-footer__notice p{margin:0}
.site-footer__sos{flex:none;font-weight:700;color:var(--cream);background:var(--terra);padding:9px 16px;border-radius:999px}
.site-footer__sos a{text-decoration:underline;text-underline-offset:3px}
.site-footer__sos a:hover{color:var(--cream)}

.site-footer__bottom{display:flex;align-items:center;flex-wrap:wrap;gap:12px 24px;padding-top:26px;font-size:.85rem;color:#a9c6a5}
.site-footer .footer-nav ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 20px}
.site-footer .footer-nav a{color:#d6e3d3}
.site-footer__top-link{margin-left:auto;font-weight:600}

@media (max-width:980px){
  .site-footer__top{grid-template-columns:1fr 1fr;gap:36px}
  .site-footer__brand{grid-column:1/-1}
}
@media (max-width:600px){
  .site-footer{padding-top:52px;border-radius:32px 32px 0 0}
  .site-footer__top{grid-template-columns:1fr 1fr;gap:28px 20px}
  .site-footer__notice{flex-direction:column;align-items:flex-start;gap:12px}
  .site-footer__top-link{margin-left:0}
}
