.header__logo-link {
  position: relative;
  display: inline-flex;
  align-items: center;
  isolation: isolate;
  overflow: hidden;
}

.header__logo-link::after {
  content: "";
  position: absolute;
  z-index: 2;
  top: -35%;
  bottom: -35%;
  left: -70%;
  width: 42%;
  pointer-events: none;
  background: linear-gradient(
    115deg,
    rgba(255, 255, 255, 0) 0%,
    rgba(255, 255, 255, .12) 34%,
    rgba(255, 255, 255, .88) 50%,
    rgba(255, 255, 255, .16) 64%,
    rgba(255, 255, 255, 0) 100%
  );
  transform: skewX(-18deg);
  mix-blend-mode: screen;
  animation: avenmarque-logo-sweep 3.8s ease-in-out infinite;
}

.header__logo-image,
.header__logo-text {
  position: relative;
  z-index: 1;
}

.header__logo-text {
  display: inline-block;
  color: #080808;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
  background: linear-gradient(100deg, #080808 0%, #080808 35%, #9a8a5d 48%, #fff 51%, #080808 66%, #080808 100%);
  background-size: 260% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  animation: avenmarque-logo-text-glint 4.8s ease-in-out infinite;
}

@keyframes avenmarque-logo-sweep {
  0%,
  42% {
    left: -75%;
    opacity: 0;
  }
  50% {
    opacity: .9;
  }
  68% {
    left: 135%;
    opacity: 0;
  }
  100% {
    left: 135%;
    opacity: 0;
  }
}

@keyframes avenmarque-logo-text-glint {
  0%,
  48% {
    background-position: 140% 0;
  }
  70%,
  100% {
    background-position: -80% 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .header__logo-link::after,
  .header__logo-text {
    animation: none;
  }
}
