btn-open-modal{
  padding:12px 18px; border-radius:10px; background:#60a4a2; color:#fff; border:1px solid transparent;
  font:500 16px/1.2 system-ui, -apple-system, "Avenir Next", sans-serif; cursor:pointer;
}

.btn-open-modal:hover{ background:#529896 }

/* Подложка */
.modal-overlay{
  position:fixed; inset:0; display:grid; place-items:center; background:rgba(0,0,0,.5);
  opacity:0; pointer-events:none; transition:opacity .25s ease; z-index:999;
}
/* Видимое состояние */
.modal-overlay[aria-hidden="false"]{ opacity:1; pointer-events:auto }

/* Карточка */
.modal {
  position: relative;
  width: min(420px, 92vw);
  background: #f1fbfc; /* мягкий бирюзовый фон */
  border-radius: 10px;
  padding: 56px 24px;
  box-shadow: 0 20px 60px rgba(0,0,0,.25);
  overflow: hidden;
  --c: #60a4a2;
  /* порядок: картинка сверху, паттерн под ней */
  background-image: url("/assets/img/star.svg");
  background-size:cover;
  background-repeat: no-repeat, repeat;
  background-position: 120px 40px;
}

/* Заголовок */
.modal-title{
  margin:0 36px 18px 0;
  font:700 28px/1.25 "AvenirNext", system-ui, -apple-system, sans-serif;
  color:#3f3f3f; text-align:center;
}

/* Крестик */
.modal-close{
  position:absolute; top:12px; right:12px;
  width:36px; height:36px; border-radius:8px;
  background:transparent; border:0; cursor:pointer; font-size:20px; line-height:36px;
  color:#3f3f3f;
}
.modal-close:hover{ background:rgba(0,0,0,.06) }

/* Форма */
.modal-form{ display:flex; flex-direction:column; gap:14px;}

/* Поля */
.field input{
  width:100%; height:56px; padding:0 16px;
  border:1px solid #7dbab8; border-radius:12px; background:#fff;
  font:500 16px/1.2 "AvenirNext", system-ui, -apple-system, sans-serif; color:#2d2d2d;
  outline:none; transition:border-color .2s ease, box-shadow .2s ease;
}
.field input::placeholder{ color:#b5b5b5; font-weight:500 }
.field input:focus{ border-color:#60a4a2; box-shadow:0 0 0 3px rgba(96,164,162,.18) }

/* Согласие */
.consent{ display:flex; align-items:flex-start; gap:10px; font:500 14px/1.45 "AvenirNext", system-ui, -apple-system, sans-serif; color:#48443e; }
.consent input{
  margin-top:2px; width:20px; height:20px; accent-color:#60a4a2; /* современный нативный чекбокс */
}
.consent a{ color:#3b6f6e; text-decoration:underline; }
.consent a:hover{ color:#285250 }

/* Кнопка отправки */
.modal-submit{
  margin-top:6px;
  height:56px;
  border-radius:12px;
  border:1px solid transparent;
  background:#60a4a2;
  color:#fff;
  font:500 18px/1 "AvenirNext", system-ui, -apple-system, sans-serif;
  cursor:pointer;
}
.modal-submit:hover{ background:#529896 }

/* Блокируем скролл при открытой модалке */
body.modal-open{ overflow:hidden }