/* ==========================================================
   Page Loader — эффект "Spill" (реализация без Snap.svg)
   ========================================================== */

/* Блокировка скролла, пока идёт загрузка */
html.is-loading,
html.is-loading body {
  overflow: hidden;
}

.page-loader {
  position: fixed;
  inset: 0;
  z-index: 9999;
}

.page-loader svg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

.page-loader path {
  fill: #ffffff; /* под фон сайта */
}

/* --- Индикатор загрузки (две точки, как в демо) --- */

.page-loader::after,
.page-loader::before {
  content: '';
  position: fixed;
  top: 50%;
  left: 50%;
  width: 20px;
  height: 20px;
  margin: -10px 0 0 -10px;
  border-radius: 50%;
  visibility: hidden;
  opacity: 0;
  z-index: 10000;
  transition: opacity 0.15s, visibility 0s 0.15s;
}

.page-loader::after {
  background: #222222;
  transform: translateX(-20px);
  animation: plMoveRight 0.6s linear infinite alternate;
}

.page-loader::before {
  background: #888888;
  transform: translateX(20px);
  animation: plMoveLeft 0.6s linear infinite alternate;
}

.page-loader.is-waiting::after,
.page-loader.is-waiting::before {
  opacity: 1;
  visibility: visible;
  transition: opacity 0.3s;
}

@keyframes plMoveRight {
  to { transform: translateX(20px); }
}

@keyframes plMoveLeft {
  to { transform: translateX(-20px); }
}

@media (prefers-reduced-motion: reduce) {
  .page-loader::after,
  .page-loader::before {
    animation: none;
  }
}
