/*
Theme Name: Cabinet GMA Enfant (Fixé)
Template: astra
Version: 1.1
*/

#preloader {
  position: fixed;
  top: 0; left: 0;
  width: 100%;
  height: 100%;
  background-color: #ffffff;
  z-index: 9999;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: opacity 0.5s ease;
}

#preloader.hidden {
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
  z-index: -1;
  display: none;
}

#loader-logo {
  width: 150px;
  animation: zoomFadeOut 2s forwards;
}

@keyframes zoomFadeOut {
  0%   { transform: scale(1);   opacity: 1; }
  50%  { transform: scale(1.2); opacity: 0.8; }
  100% { transform: scale(1.5); opacity: 0; }
}

.fade-in {
  opacity: 1;
  transition: opacity 0.4s ease-in;
}

.fade-out {
  opacity: 0;
  transition: opacity 0.4s ease-out;
}

.elementor-nav-menu--main .elementor-item {
  position: relative;
  text-decoration: none;
}

.elementor-nav-menu--main .elementor-item::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0%;
  height: 2px;
  background-color: currentColor;
  transition: width 0.3s ease;
}

.elementor-nav-menu--main .elementor-item:hover::after {
  width: 100%;
}

#top-contact-bar {
  position: sticky;
  top: 0;
  z-index: 9999;
  background-color: white;
  width: 100%;
  padding: 0.5em 1em;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}