/* Footer site — navigation + mentions légales */
.site-footer{
  border-top:1px solid var(--ig-border,#DBDBDB);
  background:var(--ig-bg,#FAFAFA);
  color:var(--ig-muted,#8E8E8E);
  font-size:.8125rem;
  width:100%;
}
.site-footer-shell{
  width:100%;
  max-width:935px;
  margin-inline:auto;
  padding-inline:1.25rem;
  box-sizing:border-box;
}

.site-footer-top{
  padding:2rem 0 1.25rem;
}
.site-footer-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:1.25rem;
  margin-bottom:1.25rem;
}
.site-footer-brand{min-width:0;flex:1 1 auto}
.site-footer-brand .logo-footer{margin-bottom:.5rem}
.site-footer-brand .logo-footer picture{display:block;line-height:0}
.site-footer-tagline{
  font-size:.75rem;line-height:1.45;max-width:240px;margin:0;color:var(--ig-muted,#8E8E8E);
}
.site-footer-social-wrap{
  display:flex;
  justify-content:flex-end;
  flex:0 0 auto;
  padding-top:.15rem;
}
.site-footer-nav{
  display:flex;
  flex-wrap:wrap;
  gap:.5rem 1.25rem;
  justify-content:flex-start;
}
.site-footer-nav a{
  color:var(--ig-text,#262626);
  font-weight:500;
  text-decoration:none;
  font-size:.8125rem;
  white-space:nowrap;
}
.site-footer-nav a:hover{color:var(--ig-blue,#0095F6)}

.site-footer-techniques{
  border-top:1px solid var(--ig-border,#DBDBDB);
  padding:1.15rem 0 1.35rem;
  background:var(--ig-surface,#fff);
}
.site-footer-techniques-title{
  font-size:.8125rem;
  font-weight:600;
  letter-spacing:-.01em;
  margin:0 0 .75rem;
  text-align:center;
}
.site-footer-techniques-title a{
  color:var(--ig-text,#262626);
  text-decoration:none;
  transition:color .15s;
}
.site-footer-techniques-title a:hover{color:var(--ig-blue,#0095F6)}
.site-footer-techniques-list{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:.45rem .65rem;
  width:100%;
}
.site-footer-techniques-list li{margin:0;padding:0;min-width:0}
.site-footer-techniques-list a{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  min-height:1.75rem;
  padding:.32rem .55rem;
  border:1px solid var(--ig-border,#DBDBDB);
  border-radius:999px;
  background:var(--ig-bg,#FAFAFA);
  color:var(--ig-muted,#8E8E8E);
  text-decoration:none;
  font-size:.6875rem;
  font-weight:500;
  line-height:1.25;
  text-align:center;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  transition:border-color .15s,color .15s,background .15s;
}
.site-footer-techniques-list a:hover{
  color:var(--ig-blue,#0095F6);
  border-color:rgba(0,149,246,.35);
  background:#fff;
}

.site-footer-legal{
  border-top:1px solid var(--ig-border,#DBDBDB);
  padding:1rem 0 1.25rem;
}
.site-footer-legal-links{
  display:flex;
  flex-wrap:wrap;
  gap:.5rem 1.25rem;
  padding-bottom:.75rem;
  justify-content:center;
}
.site-footer-legal-links a{
  color:var(--ig-muted,#8E8E8E);
  text-decoration:none;
  font-size:.75rem;
  font-weight:500;
}
.site-footer-legal-links a:hover{color:var(--ig-blue,#0095F6)}
.site-footer-company{
  text-align:center;
  font-size:.6875rem;
  line-height:1.55;
  color:var(--ig-muted,#8E8E8E);
  margin:0;
}
.site-footer-company strong{color:var(--ig-text,#262626);font-weight:600}
.site-footer-bottom{
  border-top:1px solid var(--ig-border,#DBDBDB);
  padding:.75rem 0 1.5rem;
  text-align:center;
  font-size:.6875rem;
  color:var(--ig-muted,#8E8E8E);
}

@media(max-width:768px){
  .site-footer-top{padding:1.75rem 0 1rem}
  .site-footer-head{
    flex-direction:column;
    align-items:center;
    text-align:center;
    gap:1rem;
  }
  .site-footer-tagline{max-width:none}
  .site-footer-social-wrap{justify-content:center;padding-top:0}
  .site-footer-nav{justify-content:center}
  .site-footer-techniques-list{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:480px){
  .site-footer-techniques-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem .45rem}
  .site-footer-techniques-list a{
    font-size:.6625rem;
    padding:.28rem .45rem;
  }
}
