.popup {
  position: fixed;
  z-index: 99999;
  visibility: hidden;
  transition: 0.6s all;
}
.popup.visible {
  visibility: visible;
}
.popup--blur {
  backdrop-filter: blur(5px);
}
.popup--full {
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.85);
  display: flex;
  flex-direction: column;
}
.popup--full.left .popup__inner {
  border-radius: 0;
}
.popup--full.right {
  align-items: flex-end;
}
.popup--full.right .popup__inner {
  border-radius: 0;
}
.popup--full.right .close {
  right: unset;
  left: 30px;
}
.popup--full.center {
  justify-content: center;
  align-items: center;
  padding: 50px 30px;
}
@media max-width(width: 1199px) {
  .popup--full.center {
    padding: 20px;
  }
}
.popup--full.center .popup__inner {
  max-width: 800px;
  height: unset;
}
.popup--full.fullscreen .popup__inner {
  max-width: 100%;
  border-radius: 0;
  background-color: unset;
}
@media max-width(width: 1199px) {
  .popup--full.fullscreen .popup__inner {
    padding-top: 80px;
  }
}
.popup--full.fullscreen .popup__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  background-color: unset;
  padding: 0;
}
.popup--full.fullscreen .popup__content *:not(.button):not([data-validate-for]) {
  color: #fff;
}
.popup--full.fullscreen .popup__content *:not(.button > svg) {
  fill: #fff;
}
.popup--full.fullscreen .popup__content .form__input--select:not([multiple]) option {
  color: var(--form-input-color);
}
.popup--full.fullscreen.popup--narrow .popup__content {
  max-width: 800px;
  margin: 0 auto;
}
.popup--full .popup__inner {
  overflow: auto;
  max-width: 550px;
  height: 100%;
  width: 100%;
  background-color: var(--popup-bg, #fff);
  border-radius: var(--popup-radius);
}
.popup--full .popup__content {
  min-height: 100%;
  padding: 30px;
}
.popup--full .close {
  position: fixed;
  top: 30px;
  right: 30px;
}
@media max-width(width: 991px) {
  .popup--full .close {
    top: 20px;
    right: 20px;
  }
}
.popup--box {
  bottom: 20px;
  right: 20px;
  max-width: 550px;
  width: 100%;
}
.popup--box.left {
  right: unset;
  left: 20px;
}
.popup--box.center {
  right: 50%;
  transform: translateX(50%);
}
.popup--box .popup__inner {
  height: 100%;
  width: 100%;
  background-color: var(--popup-bg, #fff);
  border-radius: var(--popup-radius);
  box-shadow: var(--popup-shadow-size, 0) var(--popup-shadow);
  border: var(--popup-border-size, 0) var(--popup-border);
  padding: 20px 0;
}
.popup--box .popup__content {
  padding: 0 30px;
  overflow: auto;
  max-height: calc(100vh - 90px);
}
.popup--box .close {
  position: absolute;
  right: 10px;
  top: 10px;
  padding: 10px;
}
.popup--box .close svg {
  width: 20px;
  height: 20px;
}
.popup--box.popup--narrow {
  max-width: 450px;
}
.popup--fade {
  opacity: 0;
}
.popup--fade.visible {
  opacity: 1;
}
.popup .popup__content p {
  color: var(--popup-color, var(--text-color));
}
.popup .popup__content .title {
  color: var(--popup-title, var(--headings));
}
.popup .popup__content a:not(.button) {
  color: var(--popup-link, var(--link-color));
}
.popup .popup__content a:not(.button):hover {
  color: var(--popup-link-hover, var(--link-color-hover));
}
