/* Pied de page du site client (parts/footer.php) : pleine largeur, couleurs du thème inversées par défaut ;
   chaque mise en page ajuste --fy-bg / --fy-ink / --fy-line dans layouts/<slug>.css. */
.fy-footer{--fy-bg:var(--sl-front-text,#16181D);--fy-ink:var(--sl-front-bg,#fff);--fy-line:color-mix(in srgb,var(--fy-ink) 16%,transparent);--fy-muted:color-mix(in srgb,var(--fy-ink) 70%,transparent);position:relative;width:100%;margin-top:48px;background:var(--fy-bg);color:var(--fy-ink);font-family:var(--mp-font-text,inherit);font-size:.95rem;line-height:1.5}
.fyf-in{max-width:var(--sl-front-max,1140px);margin:0 auto;padding:44px max(16px,var(--sl-front-gutter,20px)) 20px}
.fyf-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr 1fr;gap:32px}
.fy-footer p,.fy-footer address{margin:0;color:inherit}
.fyf-name{font-family:var(--mp-font-display,inherit);font-size:1.35rem;font-weight:800;line-height:1.2;margin-top:12px!important}
.fy-footer .fyf-muted{color:var(--fy-muted)}
.fyf-logo{display:inline-flex}
.fyf-logo img{max-height:64px;max-width:180px;width:auto;object-fit:contain;border-radius:var(--sl-front-radius-sm,10px)}
.fyf-soc{display:flex;gap:10px;margin-top:16px}
.fyf-soc a{display:inline-flex;width:40px;height:40px;align-items:center;justify-content:center;border:1px solid var(--fy-line);border-radius:999px;color:inherit;transition:background .15s}
.fyf-soc a:hover{background:var(--fy-line)}
.fyf-soc svg{width:19px;height:19px}
.fyf-push{margin-top:16px}
.fyf-push-btn{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:0 16px;border:1px solid var(--fy-line);border-radius:999px;background:transparent;color:inherit;font:inherit;font-weight:700;cursor:pointer;transition:background .15s}
.fyf-push-btn:hover{background:var(--fy-line)}.fyf-push-btn:disabled{opacity:.6;cursor:wait}
.fyf-push-btn svg{width:18px;height:18px}.fyf-push.is-on .fyf-push-btn{font-weight:600}
.fyf-push-note{margin:6px 0 0;font-size:.85rem}
.fyf-col{display:flex;flex-direction:column;align-items:flex-start;gap:6px}
.fyf-h{font-family:var(--mp-font-display,inherit);font-size:.8rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;margin:0 0 6px;color:var(--fy-muted)}
.fyf-status{display:inline-flex;align-items:center;gap:8px;font-weight:700}
.fyf-status::before{content:"";width:9px;height:9px;border-radius:50%;background:#F59E0B}
.fyf-status.is-open::before{background:#22C55E;box-shadow:0 0 0 4px color-mix(in srgb,#22C55E 25%,transparent)}
.fyf-week{display:grid;gap:4px;margin:4px 0 0;width:100%}
.fyf-week div{display:flex;justify-content:space-between;gap:14px}
.fyf-week dt{font-weight:600}
.fyf-week dd{margin:0;text-align:right;color:var(--fy-muted)}
.fyf-addr{font-style:normal}
.fy-footer a{color:inherit}
.fyf-link{text-decoration:underline;text-decoration-color:var(--fy-line);text-underline-offset:3px;word-break:break-word}
.fyf-link:hover{text-decoration-color:currentColor}
.fyf-strong{font-size:1.1rem;font-weight:800;text-decoration:none}
.fyf-modes{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:0;padding:0}
.fyf-modes li{padding:4px 12px;border:1px solid var(--fy-line);border-radius:999px;font-size:.85rem}
.fyf-cta{display:inline-flex;align-items:center;justify-content:center;min-height:46px;margin-top:8px;padding:0 22px;border-radius:999px;background:var(--fy-ink);color:var(--fy-bg)!important;font-weight:800;text-decoration:none}
.fyf-cta:hover{opacity:.9}
.fyf-bottom{display:flex;flex-wrap:wrap;align-items:flex-start;gap:8px 22px;margin-top:36px;padding-top:18px;border-top:1px solid var(--fy-line);font-size:.85rem;color:var(--fy-muted)}
.fyf-bottom>:last-child{margin-left:auto}
.fyf-legal summary{cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.fyf-legal dl{display:grid;gap:4px;margin:10px 0 0}
.fyf-legal dl div{display:flex;flex-wrap:wrap;gap:0 8px}
.fyf-legal dt{font-weight:700}.fyf-legal dd{margin:0}
@media (max-width:991px){.fyf-grid{grid-template-columns:1fr 1fr}}
@media (max-width:575px){.fyf-in{padding-top:32px}.fyf-grid{grid-template-columns:1fr;gap:26px}.fyf-col{padding-top:22px;border-top:1px solid var(--fy-line)}.fyf-cta{width:100%}.fyf-bottom>:last-child{margin-left:0}}
