/* 
  modal section 
*/
.x-modal {
  display: none;
  padding: 24px;
  position: fixed;
  z-index: 1000;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.6);
  align-items: center;
  justify-content: center;
  opacity: 0;               /* start hidden */
  transition: opacity 0.3s ease;
}

.x-modal.show {
  display: flex;
  opacity: 1;
}

.x-modal-content {
   max-width: 500px;
   width: 100%;
   background: white;
   padding: 20px;
   border-radius: 10px;
   position: relative;
   box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);
   transform: translateY(-50px);  /* start above */
   opacity: 0;                    /* start transparent */
   transition: all 0.3s ease;
}
.x-modal.show .x-modal-content {
   transform: translateY(0);      /* slide to center */
   opacity: 1;                    /* fade in */
}

.x-modal-content.x-modal-sm {
  max-width: min(600px, 100%);
}

.x-modal-content.x-modal-md {
  max-width: min(850px, 100%);
}

.x-modal-content.x-modal-lg {
  max-width: min(1192px, 100%);
}

.x-modal-close:before {
    content: url(/assets/img/close.svg);
}

.x-modal-close {
  position: absolute;
  top: 18px;
  right: 18px;
  font-size: 24px;
  cursor: pointer;
  color: #999;
}

.x-modal-close:hover {
  color: #333;
}
.no-scroll {
  overflow: hidden;
  height: 100%;
}
@media all and (max-width: 820px) {
   .x-modal {
      padding: 0px;
      align-items: start;
   }
   .x-modal-content {
      width: 100%;
      height: calc(100dvh - 35px);
      border-radius: 0px;
      overflow-y: scroll;
   }
}