/* Shared glass reflection: decorative only; never intercepts links or forms. */
.zwaka-reveal { opacity: 0; transform: translateY(24px); transition: opacity .8s ease var(--sub-delay, 0s), transform .8s ease var(--sub-delay, 0s); }
.zwaka-reveal.is-visible { opacity: 1; transform: none; }
.zwaka-reflection-host { position: relative; }
.zwaka-reflection {
  position: absolute;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
  border-radius: inherit;
  z-index: 1;
}
.zwaka-reflection::before {
  content: "";
  position: absolute;
  inset: -30% -100%;
  background: linear-gradient(112deg, transparent 40%, rgb(255 255 255 / .04) 46%, rgb(255 255 255 / .24) 49%, rgb(255 255 255 / .06) 53%, transparent 59%);
  transform: translateX(-55%);
  animation: zwaka-reflection-sweep 9s ease-in-out infinite;
  animation-play-state: paused;
}
.zwaka-reflection-host.is-reflecting > .zwaka-reflection::before { animation-play-state: running; }
@keyframes zwaka-reflection-sweep {
  0%, 12% { transform: translateX(-55%); }
  65%, 100% { transform: translateX(55%); }
}
@media (prefers-reduced-motion: reduce) {
  .zwaka-reflection { display: none; }
  .reveal, .sub-reveal, .zwaka-reveal { opacity: 1 !important; transform: none !important; transition: none !important; }
}
