#fw-section-rich-text-cfc4a570-82cf-4974-a895-7b7593eac8e4 {
--font-heading-scale: 0.89;
--font-body-scale: 0.89;
}

#fw-section-custom-html-f66049f1-4ba4-41f2-a3f6-116d39df8802 {

.logo-container{
  display:flex;
  justify-content:center;
  align-items:center;
  width:100%;
  padding:0 0 10px 0; /* 👈 plus de padding en haut */
  position:relative;
}

.logo-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
}

.logo{
  height:45px !important;
  width:auto !important;
  max-height:45px !important;
  display:block;

  transform: translateZ(0);
  will-change: transform, filter;
  transition: transform 220ms ease, filter 220ms ease;
}

.logo-container::after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:90px;
  height:60px;
  transform: translate(-50%, -50%);
  pointer-events:none;
  opacity:0;
  background: radial-gradient(closest-side, rgba(255,255,255,.35), rgba(255,255,255,0) 70%);
  filter: blur(6px);
}

.logo-container:hover .logo{
  animation: logo-wobble 650ms ease-in-out both;
  transform: scale(1.15);
  filter: blur(0.35px) contrast(1.05) saturate(1.08);
}

.logo-container:hover::after{
  opacity:.9;
  animation: logo-wave 900ms ease-out both;
}

.logo-link:active .logo{
  transform: scale(1.02);
  filter: none;
}

@keyframes logo-wobble{
  0%   { transform: scale(1) translateY(0) rotate(0deg); }
  20%  { transform: scale(1.06) translateY(-1px) rotate(-1.2deg); }
  45%  { transform: scale(1.05) translateY(0.5px) rotate(1.0deg); }
  70%  { transform: scale(1.06) translateY(-0.5px) rotate(-0.6deg); }
  100% { transform: scale(1.06) translateY(0) rotate(0deg); }
}

@keyframes logo-wave{
  0%{
    transform: translate(-50%, -50%) translateX(-18px) scale(0.85);
    opacity:0;
  }
  25%{ opacity:.9; }
  100%{
    transform: translate(-50%, -50%) translateX(18px) scale(1.15);
    opacity:0;
  }
}
}