/* Element reveals. Transform-only motion keeps layout and scrolling stable. */
html.bt-wow-ready,
html.bt-wow-ready body {
  overflow-x: hidden;
  overflow-x: clip;
}

[data-wow] {
  opacity: 0;
  transition-property: opacity, transform;
  transition-duration: 1.05s;
  transition-timing-function: cubic-bezier(.16, 1, .3, 1);
  transition-delay: var(--wow-delay, 0ms);
  will-change: opacity, transform;
  backface-visibility: hidden;
}

[data-wow="fadeInUp"]    { transform: translate3d(0, 38px, 0); }
[data-wow="fadeInDown"]  { transform: translate3d(0, -32px, 0); }
[data-wow="fadeInLeft"]  { transform: translate3d(-32px, 0, 0); }
[data-wow="fadeInRight"] { transform: translate3d(32px, 0, 0); }

[data-wow].wow-visible {
  opacity: 1;
  transform: translate3d(0, 0, 0);
  will-change: auto;
}

/* Header load sequence: logo, menu items, then action buttons. */
.bt-header__brand {
  animation: btHeaderFromRight 1.1s cubic-bezier(.16, 1, .3, 1) .12s backwards;
}

.bt-header .bt-menu > li {
  animation: btHeaderFromTop 1s cubic-bezier(.16, 1, .3, 1) backwards;
}
.bt-header .bt-menu > li:nth-child(1) { animation-delay: .28s; }
.bt-header .bt-menu > li:nth-child(2) { animation-delay: .40s; }
.bt-header .bt-menu > li:nth-child(3) { animation-delay: .52s; }
.bt-header .bt-menu > li:nth-child(4) { animation-delay: .64s; }
.bt-header .bt-menu > li:nth-child(5) { animation-delay: .76s; }
.bt-header .bt-menu > li:nth-child(6) { animation-delay: .88s; }
.bt-header .bt-menu > li:nth-child(7) { animation-delay: 1s; }
.bt-header .bt-menu > li:nth-child(8) { animation-delay: 1.12s; }
.bt-header .bt-menu > li:nth-child(n+9) { animation-delay: 1.24s; }

.bt-header__actions > * {
  animation: btHeaderFromLeft 1.05s cubic-bezier(.16, 1, .3, 1) backwards;
}
.bt-header__actions > *:nth-child(1) { animation-delay: 1.18s; }
.bt-header__actions > *:nth-child(2) { animation-delay: 1.32s; }
.bt-header__actions > *:nth-child(3) { animation-delay: 1.46s; }

@keyframes btHeaderFromRight {
  from { opacity: 0; transform: translate3d(36px, 0, 0); }
  to   { opacity: 1; transform: translate3d(0, 0, 0); }
}
@keyframes btHeaderFromTop {
  from { opacity: 0; transform: translate3d(0, -30px, 0); }
  to   { opacity: 1; transform: translate3d(0, 0, 0); }
}
@keyframes btHeaderFromLeft {
  from { opacity: 0; transform: translate3d(-32px, 0, 0); }
  to   { opacity: 1; transform: translate3d(0, 0, 0); }
}

/* A light pulse around the floating WhatsApp button without moving the button. */
.bt-wa-float::before {
  content: "";
  position: absolute;
  inset: -6px;
  border: 2px solid rgba(37, 211, 102, .58);
  border-radius: 50%;
  pointer-events: none;
  animation: btWaPulse 2.2s ease-out infinite;
}

@keyframes btWaPulse {
  0%   { opacity: .8; transform: scale(.86); }
  70%  { opacity: 0; transform: scale(1.22); }
  100% { opacity: 0; transform: scale(1.22); }
}

@media (max-width: 767px) {
  [data-wow="fadeInLeft"]  { transform: translate3d(-16px, 0, 0); }
  [data-wow="fadeInRight"] { transform: translate3d(16px, 0, 0); }
}

@media (prefers-reduced-motion: reduce) {
  .bt-header__brand,
  .bt-header .bt-menu > li,
  .bt-header__actions > *,
  .bt-wa-float::before {
    animation: none !important;
  }

  [data-wow] {
    opacity: 1;
    transform: none;
    transition: none;
  }
}
