/**
 * Footer OFNAC — porté depuis la maquette ofnac-accueil.html.
 */

.ftr{background:#000;color:rgba(255,255,255,.62);padding-top:clamp(56px,6vw,80px);font-size:.87rem}
.ftr__top{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:2.5rem;padding-bottom:3rem}
.ftr h4{font-size:.72rem;font-family:var(--ff-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--teal-200);margin-bottom:1.1rem;font-weight:500}
.ftr ul{list-style:none;display:grid;gap:.6rem}
.ftr a:hover{color:#fff}
.ftr__brand{display:flex;align-items:center;gap:.7rem;margin-bottom:1rem}
.ftr__brand img{width:170px;height:auto;display:block}
.ftr__brand .logo__wm{color:#fff}
.ftr__desc{max-width:34ch;line-height:1.6;margin-bottom:1.4rem}
.ftr__contact{display:grid;gap:.5rem;font-family:var(--ff-mono);font-size:.78rem;letter-spacing:.02em}
.ftr__bot{
  border-top:1px solid rgba(255,255,255,.1);padding:1.4rem 0;
  display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;
  font-size:.76rem;color:rgba(255,255,255,.4);
}
.ftr__bot nav{display:flex;gap:1.4rem;flex-wrap:wrap}

@media(max-width:1180px){
  .ftr__top{grid-template-columns:1fr 1fr}
}
@media(max-width:680px){
  .ftr__top{grid-template-columns:1fr}
}

/* -------- Retour en haut de page -------- */
/* Empilé au-dessus de la bulle de l'assistant JUB (wp-content/plugins/
   ofnac-assistant/assets/css/assistant.css) : même décalage à droite
   pour rester sur le même axe vertical, et un bottom calculé à partir
   du décalage + de la hauteur de la bulle (56px) + un espacement net,
   pour que les deux restent nettement séparés et cliquables à tout
   viewport — pas de valeurs fixes dupliquées par breakpoint. */
.back-to-top{
  position:fixed;right:clamp(16px,3vw,28px);
  bottom:calc(clamp(16px,3vw,28px) + 56px + 14px);
  z-index:200;
  width:44px;height:44px;border-radius:50%;
  background:var(--teal-800);color:#fff;display:grid;place-items:center;
  box-shadow:0 10px 26px -10px rgba(14,30,30,.5);
  opacity:0;visibility:hidden;transform:translateY(8px);
  transition:opacity .25s var(--ease),transform .25s var(--ease),background .2s,visibility .25s;
}
.back-to-top svg{width:18px;height:18px}
.back-to-top.is-visible{opacity:1;visibility:visible;transform:translateY(0)}
.back-to-top:hover{background:var(--teal-600)}

/* Le panneau de l'assistant ouvre juste au-dessus de sa bulle et
   viendrait chevaucher cette zone : la flèche s'efface tant que le
   panneau est ouvert plutôt que de passer derrière ou devant lui.
   Classe posée sur <body> par assistant.js. */
body.ofa-est-ouvert .back-to-top.is-visible{opacity:0;visibility:hidden;pointer-events:none}

@media(max-width:680px){
  .back-to-top{width:38px;height:38px}
  .back-to-top svg{width:16px;height:16px}
}
@media(prefers-reduced-motion:reduce){
  .back-to-top{transition:opacity .01ms}
}
