/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Apr 21 2026 | 15:35:06 */
/* ---- VERSION DESKTOP (hors responsive) ---- */

.logos-hero {
  position: relative;
  width: 100%;
  max-width: 1200px;
  height: 170px;
  margin: 5% auto 2% auto;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 400px;
}

/* BARRE VERTICALE : animée façon rideau */
.barre-anim {
  position: absolute;
  left: 50%;
  top: 10px;
  bottom: 10px;
  width: 1.5px;
  background: none !important;
  border-radius: 1px;
  z-index: 2;
  transform: translateX(-50%);
  overflow: visible;
}
.barre-anim::before,
.barre-anim::after {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  height: 0;
  background: #fff;
  transition: none;
  border-radius: 2px;
}
.barre-anim::before {
  bottom: 50%;
  border-radius: 2px 2px 0 0;
  animation: growTop 0.6s cubic-bezier(.6,0,.4,1) forwards, hideTop 0.25s 1.18s linear forwards;
}
.barre-anim::after {
  top: 50%;
  border-radius: 0 0 2px 2px;
  animation: growBot 0.6s cubic-bezier(.6,0,.4,1) forwards, hideBot 0.25s 1.18s linear forwards;
}

/* Animation d’ouverture (du centre vers haut/bas) */
@keyframes growTop  { from { height: 0; } to { height: 75px; } }  /* moitié haute */
@keyframes growBot  { from { height: 0; } to { height: 75px; } }  /* moitié basse */

/* Animation rideau fermeture (centre fuit vers haut/bas) */
@keyframes hideTop  { from { height: 75px; bottom: 50%; }
                      to   { height: 0; bottom: 100%; opacity: 0; } }
@keyframes hideBot  { from { height: 75px; top: 50%; }
                      to   { height: 0; top: 100%; opacity: 0; } }


.logo-mask {
  position: absolute;
  top: 50%;
  width: 50%;
  height: 150px;
  overflow: hidden;
  z-index: 1;
  transform: translateY(-50%);
}
.mask-cabinet { left: 0; }
.mask-axa    { left: 50%; }

.logo-cabinet, .logo-axa {
  height: 150px;
  width: auto;
  position: absolute;
  top: 0;
  
}

/* Les logos sortent de la barre et vont loin sur leur moitié, 100% = largeur du mask */



.logo-cabinet {
  left: 100%;
  animation:
    
    slideCabinet 0.70s 0.88s cubic-bezier(.7,0,.3,1) forwards;
}
.logo-axa {
  left: -100%;
  animation:
    
    slideAxa 0.70s 0.88s cubic-bezier(.7,0,.3,1) forwards;
}



@keyframes showLogo { to { opacity: 1; } }
/* Ajuste la valeur finale pour l'écart désiré (ex: 15% ou 20%) */
@keyframes slideCabinet { to { left: 15%; } }
@keyframes slideAxa     { to { left: 5%; } }


/* Tablette */
@media (max-width: 1024px) {

  .logos-hero {
    flex-direction: column;
    width: 100%;
    height: 380px;
	margin: 50px auto;
    justify-content: center;
    position: relative;
  }

  /* BARRE : s'ouvre depuis le centre puis disparaît vers les extrémités */
  .barre-anim {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 300px;
    height: 1.5px;
    background: none !important;
    z-index: 2;
    transform: translate(-50%, -50%);
    overflow: visible;
  }
  .barre-anim::before,
  .barre-anim::after {
    content: "";
    position: absolute;
    top: 0;
    width: 0;
    height: 100%;
    background: #fff;
    transition: none;
  }

	
  .barre-anim::before {
    left:auto;
	right: 50%;
    border-radius: 2px 0 0 2px;
    animation: growLeft 0.6s cubic-bezier(.6,0,.4,1) forwards, hideLeft 0.25s 1.18s linear forwards;
  }
  .barre-anim::after {
    left: 50%;
	 right:auto;
    border-radius: 0 2px 2px 0;
    animation: growRight 0.6s cubic-bezier(.6,0,.4,1) forwards, hideRight 0.25s 1.18s linear forwards;
  }
  @keyframes growLeft { from { width: 0; } to { width: 150px; } }
  @keyframes growRight { from { width: 0; } to { width: 150px; } }
  /* Nouveaux keyframes de fermeture "fuite du centre vers l'extérieur" */
  @keyframes hideLeft {
    from { width: 150px; right: 50%; }
    to   { width: 0; right: 100%; opacity: 0; }
  }
  @keyframes hideRight {
    from { width: 150px; left: 50%; }
    to   { width: 0; left: 100%; opacity: 0; }
  }

  .logo-mask {
    position: absolute;
    width: 100%;
    height: 180px;
    left: 50%;
    transform: translateX(-50%);
    overflow: hidden;
    z-index: 1;
  }
  .mask-cabinet { top: calc(50% - 180px); }
  .mask-axa    { top: calc(50% + 0px); }

  .logo-cabinet, .logo-axa {
    height: 150px;
    width: auto;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    
  }

	
	.logo-cabinet {
    top: 180px;
    animation:
      
      slideCabinetV 0.70s 0.88s cubic-bezier(.7,0,.3,1) forwards;
  }
  .logo-axa {
    top: -180px;
    padding-top: 30px;
    animation:
      
      slideAxaV 0.70s 0.88s cubic-bezier(.7,0,.3,1) forwards;
  }
	
	
	
	
  @keyframes showLogo { to { opacity: 1; } }
  @keyframes slideCabinetV { to { top: 0; opacity: 1; } }
  @keyframes slideAxaV { to { top: 0; opacity: 1; } }
}

/* Mobile */
@media (max-width: 600px) {
  .logos-hero {
    width: 100vw !important;
    max-width: 100vw !important;
    min-width: 0 !important;
	  height: 300px;
    margin: 0 !important;
    padding: 0 !important;
    left: 50%;
    transform: translateX(-50%);
    box-sizing: border-box;
  }
  .barre-anim {
    width: 60vw;
    height: 1.5px;
    left: 50%;
    top: 50%;
    background: none !important;
    transform: translate(-50%, -50%);
    overflow: visible;
  }
  .barre-anim::before,
  .barre-anim::after {
    content: "";
    position: absolute;
    top: 0;
    width: 0;
    height: 100%;
    background: #fff;
    transition: none;
  }
  .barre-anim::before {
    right: 50%;
    border-radius: 2px 0 0 2px;
    animation: growLeftMobile 0.6s cubic-bezier(.6,0,.4,1) forwards, hideLeftMobile 0.25s 1.18s linear forwards;
  }
  .barre-anim::after {
    left: 50%;
    border-radius: 0 2px 2px 0;
    animation: growRightMobile 0.6s cubic-bezier(.6,0,.4,1) forwards, hideRightMobile 0.25s 1.18s linear forwards;
  }
  @keyframes growLeftMobile { from { width: 0; } to { width: 30vw; } }
  @keyframes growRightMobile { from { width: 0; } to { width: 30vw; } }
  /* Nouveaux keyframes mobile pour "fuite du centre" */
  @keyframes hideLeftMobile {
    from { width: 30vw; right: 50%; }
    to   { width: 0; right: 100%; opacity: 0; }
  }
  @keyframes hideRightMobile {
    from { width: 30vw; left: 50%; }
    to   { width: 0; left: 100%; opacity: 0; }
  }

  .logo-mask {
    width: 100%;
    height: 130px;
    left: 50%;
    transform: translateX(-50%);
	  margin-top: 5px;
  }
  .mask-cabinet { top: calc(50% - 130px); }
  .mask-axa    { top: calc(50% + 0px); }

  .logo-cabinet, .logo-axa {
    height: 90px;
    width: auto;
    left: 50%;
    transform: translateX(-50%);
  }
  .logo-cabinet { top: 130px; }
  .logo-axa     { top: -130px; padding-top:20px; }
  @keyframes slideCabinetV { to { top: 0; opacity: 1; } }
  @keyframes slideAxaV     { to { top: 0; opacity: 1; } }
}
