/* Переходы между страницами — IT SERVICE */

#page-transition-overlay {
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100%;
  max-height: 100dvh;
  z-index: 2147483000;
  padding: env(safe-area-inset-top, 0) env(safe-area-inset-right, 0) env(safe-area-inset-bottom, 0) env(safe-area-inset-left, 0);
  box-sizing: border-box;
  background: linear-gradient(145deg, #06040a 0%, #140a1c 40%, #0e0a14 100%);
  box-shadow: inset 0 0 100px rgba(168, 85, 247, 0.18);
  pointer-events: none;
  visibility: hidden;
  transform: translateX(100%);
  transition:
    transform 0.48s cubic-bezier(0.65, 0, 0.35, 1),
    visibility 0s linear 0.48s;
}

#page-transition-overlay.pt--active {
  pointer-events: auto;
  visibility: visible;
  transition:
    transform 0.48s cubic-bezier(0.65, 0, 0.35, 1),
    visibility 0s;
}

/* ——— Уход: шторка накрывает экран ——— */
#page-transition-overlay.pt--exit-from-left {
  transform: translateX(-100%);
}
#page-transition-overlay.pt--exit-from-left.pt--go {
  transform: translateX(0);
}

#page-transition-overlay.pt--exit-from-right {
  transform: translateX(100%);
}
#page-transition-overlay.pt--exit-from-right.pt--go {
  transform: translateX(0);
}

#page-transition-overlay.pt--exit-from-top {
  transform: translateY(-100%);
}
#page-transition-overlay.pt--exit-from-top.pt--go {
  transform: translateY(0);
}

#page-transition-overlay.pt--exit-from-bottom {
  transform: translateY(100%);
}
#page-transition-overlay.pt--exit-from-bottom.pt--go {
  transform: translateY(0);
}

/* ——— Вход: шторка уезжает в противоположную сторону ——— */
#page-transition-overlay.pt--enter-to-right {
  transform: translateX(0);
}
#page-transition-overlay.pt--enter-to-right.pt--go {
  transform: translateX(100%);
}

#page-transition-overlay.pt--enter-to-left {
  transform: translateX(0);
}
#page-transition-overlay.pt--enter-to-left.pt--go {
  transform: translateX(-100%);
}

#page-transition-overlay.pt--enter-to-bottom {
  transform: translateY(0);
}
#page-transition-overlay.pt--enter-to-bottom.pt--go {
  transform: translateY(100%);
}

#page-transition-overlay.pt--enter-to-top {
  transform: translateY(0);
}
#page-transition-overlay.pt--enter-to-top.pt--go {
  transform: translateY(-100%);
}

@media (prefers-reduced-motion: reduce) {
  #page-transition-overlay {
    transition-duration: 0.01ms !important;
  }
}
