* {
  margin: 0;
  padding: 0;
  font-family: sans-serif;  /* убрать засечки */
  box-sizing: border-box;
}

.body {
  min-height: 200vh;
}
.body--fixed {
  overflow-y: hidden;
  /* убирает вертикалный скролл */
}

.btn-open {
  width: 300px;
  height: 50px;
  font-size: 20px;
  cursor: pointer;
}

.modal {
  position: fixed;
  inset: 0;  /* растянуть подлжку на весь вьюпорт */
  z-index: 2;  /* чтобы перекрывал кнопку */
  display: flex;  /* было флекс, поменял на нон, флекс - выровнять окошко внутри подложки */
  align-items: center;
  justify-content: center;
  background-color: #000000c1;
  
  opacity: 0; /* сделаем невидимой, чтобы не кликнуть */
  visibility: hidden;
  
  transition: all .3s; /* сделаем появление замедленным */
}

.modal--open {
  opacity: 1;
  visibility: visible;
}

.modal__window {
  position: relative;
  width: 50vw;
  min-height: 40vh;
  padding: 50px 20px 20px 20px;
  background-color: #fff;
  border-radius: 12px;
}

.modal__close-btn {
  position: absolute;
  top: 5px;
  right: 10px;
  width: 30px;
  height: 30px;
  font-size: 20px;
  font-weight: 700;
  background: none;
  cursor: pointer;
}