:root {
  --width-window-close: 30px;
  --height-window-close: 30px;
  --z-index-window: 99;
  --window-container-color: #00000062;
  --top-window-close-cross: 12px;
  --width-window-close-cross: 20px;
  --height-window-close-cross: 6px;
  --right-close-cross: 6px;
  --top-close-cross: 6px;
}

/* модальные окна */

.modal-window-container {
  visibility: hidden;
  position: fixed;
  left: 0;
  top: 0;
  z-index: var(--z-index-window);
  background-color: var(--window-container-color);
}

.modal-window-active {
  visibility: visible;
}

.modal-window {
  min-width: var(--width-bl-30);
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  border-radius: var(--radius-medium);
}

@media (max-width: 1140px) {
  .modal-window {
    min-width: var(--width-bl-60);
  }
}

@media (max-width: 641px) {
  .modal-window {
    min-width: var(--width-bl-80);
  }
}

.modal-window__close {
  width: var(--width-window-close);
  height: var(--height-window-close);
  cursor: pointer;
  position: absolute;
  top: var(--top-close-cross);
  right: var(--right-close-cross);
  border-radius: var(--radius-medium);
}

.modal-window__close:hover {
  opacity: var(--opacity-75);
}

.modal-window__close span {
  width: var(--width-window-close-cross);
  height: var(--height-window-close-cross);
  position: absolute;
  border-radius: var(--radius-medium);
  background-color: var(--color-primary-800);
}

.modal-window__close span:first-child {
  top: var(--top-window-close-cross);
  transform: rotate(-45deg);
}

.modal-window__close span:last-child {
  top: 12px;
  transform: rotate(45deg);
}

/* анимированное модальное окно */
.modal-animated>.modal-window {
  opacity: var(--opacity-0);
}

.modal-window-active>.modal-window {
  opacity: var(--opacity-1);
  /* transition: opacity 0.5s; */
}

.movement-to-side > .modal-window {
  left: var(--movement-left);
  top: var(--movement-top);
}

.modal-window-active>.modal-window {
  left: 50%;
  top: 50%;
}