.medical-form-guide { padding: 105px 0 120px; background: #edf8f8; }
.medical-form-guide__inner { width: min(760px, calc(100% - 48px)); margin: 0 auto; text-align: center; }
.medical-form-guide__label { margin: 0 0 10px; color: #18aebc; font-size: 11px; font-weight: 800; letter-spacing: .2em; }
.medical-form-guide h2 { margin: 0 0 25px; color: #173e70; font-size: clamp(31px, 4vw, 44px); line-height: 1.4; }
.medical-form-guide__lead { max-width: 650px; margin: 0 auto; color: #536974; font-size: 16px; line-height: 2; text-align: left; }
.medical-form-guide__panel { margin-top: 42px; padding: 34px 38px 30px; border-radius: 8px 30px 8px 30px; background: #fff; box-shadow: 0 16px 42px rgba(30, 83, 101, .1); }
.medical-form-guide__check { display: flex; gap: 14px; align-items: flex-start; padding: 20px 22px; border: 1px solid #c8e4e5; border-radius: 12px; background: #f2fbfb; cursor: pointer; text-align: left; }
.medical-form-guide__check input { flex: 0 0 auto; width: 23px; height: 23px; margin: 2px 0 0; accent-color: #18aebc; }
.medical-form-guide__check span { display: grid; gap: 3px; }
.medical-form-guide__check strong { color: #173e70; font-size: 17px; }
.medical-form-guide__check small { color: #71838c; font-size: 12px; }
.medical-form-guide__panel button { display: flex; width: 100%; min-height: 62px; align-items: center; justify-content: center; gap: 12px; margin-top: 22px; border: 0; border-radius: 8px 20px 8px 20px; background: #18aebc; color: #fff; cursor: pointer; font-size: 16px; font-weight: 700; transition: opacity .2s ease, background .2s ease; }
.medical-form-guide__panel button:disabled { background: #becdd1; cursor: not-allowed; opacity: .72; }
.medical-form-guide__external { display: block; margin-top: 12px; color: #73858d; font-size: 11px; }
.medical-form-guide__reservation { margin-top: 34px; padding-top: 28px; border-top: 1px solid #cfe2e3; }
.medical-form-guide__reservation p { margin: 0 0 15px; color: #607580; font-size: 14px; line-height: 1.8; }
.medical-form-guide__reservation-actions { display: grid; grid-template-columns: minmax(0, 1fr) minmax(220px, .78fr); gap: 16px; align-items: stretch; }
.medical-form-guide__phone { display: grid; gap: 3px; align-content: center; padding: 19px 22px; border: 1px solid #cce4e5; border-radius: 8px 20px 8px 20px; background: #fff; text-align: left; }
.medical-form-guide__phone span { color: #657b84; font-size: 12px; }
.medical-form-guide__phone a { width: fit-content; color: #173e70; font-size: clamp(24px, 3vw, 31px); font-weight: 700; line-height: 1.25; text-decoration: none; }
.medical-form-guide__phone small { color: #73858d; font-size: 11px; }
.medical-form-guide__web-link { display: flex; gap: 10px; align-items: center; justify-content: center; padding: 18px 20px; border-radius: 8px 20px 8px 20px; background: #fff; color: #197f8a; font-weight: 700; line-height: 1.6; text-decoration: none; }

@media (max-width: 640px) {
  .medical-form-guide { padding: 72px 0 82px; }
  .medical-form-guide__inner { width: calc(100% - 32px); }
  .medical-form-guide h2 { margin-bottom: 18px; font-size: 30px; }
  .medical-form-guide__lead { font-size: 15px; line-height: 1.9; }
  .medical-form-guide__panel { margin-top: 30px; padding: 22px 18px 24px; border-radius: 7px 24px 7px 24px; }
  .medical-form-guide__check { padding: 16px; }
  .medical-form-guide__panel button { min-height: 58px; font-size: 15px; }
  .medical-form-guide__reservation-actions { grid-template-columns: 1fr; }
  .medical-form-guide__phone { justify-items: center; padding: 18px; text-align: center; }
  .medical-form-guide__web-link { min-height: 58px; }
}
