Модальное окно обрезается сверху при уменьшении высоты экрана (React Js)

Есть модальное окно на react js. При уменьшении высоты экрана, обрезается верхняя часть модального окна, при этом скролл работает вниз и показывает часть которая не влезла, но верхнюю часть проскролить не удается, так как, контент модального окна уходит за отображение браузера. В чём может быть проблема?


Ссылка на проект korobko.site


скрин

SCSS

.modal {
  height: 100vh;
  width: 100vw;
  background-color: rgba(0, 0, 0, 0.8);
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: 0.3s;
  overflow: auto;

  &__content {
    background-color: #ffffff;
    max-width: rem(1100);

    border-radius: 12px;
    transform: scale(0.5);
    transition: 0.3s;

    &.active {
      transform: scale(1);
      -webkit-transform: scale(1);
      -moz-transform: scale(1);
      -ms-transform: scale(1);
      -o-transform: scale(1);
    }
  }

  opacity: 0;
  pointer-events: none;

  &.active {
    opacity: 1;
    pointer-events: all;
  }
}

.modal-top {
  h2,
  h6 {
    color: #000000;
    text-align: center;
  }

  h6 {
    padding: rem(45) 0 rem(75) 0;
    font-weight: 400;
    font-size: rem(20);
    line-height: rem(24);
  }
}

.modal-main {
  max-width: rem(680);
  margin: 0 auto;
  gap: rem(20);
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(rem(280), 1fr));
}

ModalBtn.jsx

  const [modalActive, setModalActive] = useState(false);

  return (
    <>
      <div className="ModalBtn" onClick={() => setModalActive(true)}>
        <svg>
          <use xlinkHref="/sprite.svg#go"></use>
        </svg>
      </div>

      <Modal active={modalActive} setActive={setModalActive}>
        <div className="d-fl">
          <div className="form-left d-fl-col">
            <div className="modal-top">
              <h6>
                Сделайте заказ прямо сейчас и получите доменное имя в подарок!
              </h6>
            </div>
            <ContactUsModal></ContactUsModal>
          </div>
          <div className="form-right d-fl-col">
            <div className="form__img">
              <img
                src="/img/photo/form-img.png"
                alt="Разработка сайтов с нуля до выгрузки на хостинг"
              />
            </div>
          </div>
        </div>
      </Modal>
    </>
  );
};

export default ModalBtn;

Modal.jsx

  return (
    <div
      className={active ? "modal active" : "modal"}
      onClick={() => setActive(false)}
    >
      <div
        className={active ? "modal__content active" : "modal__content"}
        onClick={(e) => e.stopPropagation()}
      >
        {children}
      </div>
    </div>
  );
};

export default Modal;

Ответы (1 шт):

Автор решения: Павел

Решил проблему переписав два класса с нуля, .modal и .modal__content

SCSS

.modal {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1000;
  display: flex;
  overflow: auto;
  background-color: rgba(0, 0, 0, 0.8);
  transition: 0.3s;

  &__content {
    max-width: rem(1100);
    margin: auto;
    background-color: #ffffff;
    border-radius: 12px;
    transform: scale(0.5);
    transition: 0.3s;
  }
}
→ Ссылка