/* Scroll-only effects for product & service pages (no layout / spacing overrides). */

.page-effects .page-progress {
  position: fixed;
  top: 0;
  left: 0;
  width: 0;
  height: 3px;
  background: linear-gradient(135deg, #ec008c 0%, #70499b 48%, #27aae1 100%);
  z-index: 1000;
  box-shadow: 0 0 18px rgba(236, 0, 140, 0.38);
  pointer-events: none;
}

.page-effects .reveal,
.page-effects .reveal-left,
.page-effects .reveal-right {
  opacity: 0;
  transition:
    opacity 0.7s ease,
    transform 0.7s ease;
  transition-delay: var(--delay, 0ms);
}

.page-effects .reveal {
  transform: translateY(28px);
}

.page-effects .reveal-left {
  transform: translateX(-48px);
}

.page-effects .reveal-right {
  transform: translateX(48px);
}

.page-effects .reveal.visible,
.page-effects .reveal-left.visible,
.page-effects .reveal-right.visible {
  opacity: 1;
  transform: translate(0, 0);
}

@media (prefers-reduced-motion: reduce) {
  .page-effects .reveal,
  .page-effects .reveal-left,
  .page-effects .reveal-right {
    opacity: 1;
    transform: none;
  }
}

/* About-us hero button hover (gradient lift + glow) */
.page-effects .btn-primary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  background: linear-gradient(135deg, #ec008c 0%, #a62d82 50%, #27aae1 100%);
  background-size: 160% 160%;
  color: white;
  font-weight: 600;
  padding: 13px 28px;
  border-radius: 40px;
  text-decoration: none;
  transition:
    transform 0.25s ease,
    box-shadow 0.25s ease,
    background-position 0.25s ease;
  border: none;
  cursor: pointer;
  font-size: 0.95rem;
  box-shadow: 0 8px 24px -8px rgba(236, 0, 140, 0.45);
}

.page-effects .btn-primary:hover {
  background: linear-gradient(135deg, #cb1a71 0%, #56367b 48%, #1f89c1 100%);
  background-position: 100% 50%;
  transform: translateY(-2px);
  box-shadow:
    0 8px 24px -6px rgba(236, 0, 140, 0.45),
    0 10px 28px -10px rgba(39, 170, 225, 0.45);
}

.page-effects .btn-outline {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  background: transparent;
  border: 1px solid rgba(236, 0, 140, 0.28);
  color: #56367b;
  font-weight: 600;
  padding: 10px 24px;
  border-radius: 40px;
  text-decoration: none;
  transition:
    transform 0.25s ease,
    background 0.25s ease,
    border-color 0.25s ease;
}

.page-effects .btn-outline:hover {
  background: #f7d9e8;
  border-color: rgba(236, 0, 140, 0.36);
  transform: translateY(-2px);
}

@media (prefers-reduced-motion: reduce) {
  .page-effects .btn-primary:hover,
  .page-effects .btn-outline:hover {
    transform: none;
  }
}
