/* planeta123.ru — модалка заявки для посадочных: правила скопированы с главной (stage502, 2026-08-24) */
.lead-modal{--cyan:#22dce8; --cyan-hover:#57f0f7; --ink:#111827;--font-main:'Manrope','Segoe UI',system-ui,sans-serif}
button, input, select, textarea, .nav, .phone, .brand-sub, .form-policy-note{font-family:var(--font-main);}
.btn-cyan{background: var(--cyan);
      color: #061018;
      box-shadow: 0 12px 26px rgba(34,220,232,.18), 0 0 0 1px rgba(255,255,255,.12) inset;}
.btn-cyan:hover{background: var(--cyan-hover); box-shadow: 0 16px 32px rgba(34,220,232,.22), 0 0 0 1px rgba(255,255,255,.16) inset;}
.input, .select{width: 100%; min-width: 0; min-height: 54px; border-radius: 16px; border: 1px solid #dce3ee; background: #fff; padding: 0 16px; font-family:var(--font-main); font-size: 16px; font-weight: 400; outline: none;}
.input:focus, .select:focus{border-color: #06a9c5; box-shadow: 0 0 0 4px rgba(6,169,197,.12);}
.form-policy-note{margin: 2px 0 0; color: #7b8798; font-size: 12px; line-height: 1.45; text-align: center;}
.form-policy-note a{color: #06a9c5; text-decoration: underline; text-underline-offset: 3px;}
.hp-field{position: absolute !important; left: -9999px !important; width: 1px !important; height: 1px !important; opacity: 0 !important; pointer-events: none !important;}
.lead-modal{position: fixed;
      inset: 0;
      z-index: 120;
      display: grid;
      place-items: center;
      padding: 24px;
      opacity: 0;
      pointer-events: none;
      transition: opacity .22s ease;}
.lead-modal.is-open{opacity: 1;
      pointer-events: auto;}
.lead-modal[hidden]{display: none;}
.lead-modal__backdrop{position: absolute;
      inset: 0;
      background: rgba(5, 7, 19, .78);
      backdrop-filter: blur(10px);}
.lead-modal__dialog{position: relative;
      width: min(520px, 100%);
      max-height: min(92vh, 680px);
      overflow: auto;
      padding: 40px 34px 34px;
      border-radius: 30px;
      background: linear-gradient(160deg, #fff 0%, #fff 74%, #ddfbff 100%);
      color: var(--ink);
      box-shadow: 0 30px 100px rgba(0, 0, 0, .45);
      transform: translateY(16px) scale(.98);
      transition: transform .22s ease;}
.lead-modal.is-open .lead-modal__dialog{transform: translateY(0) scale(1);}
.lead-modal__close{position: absolute;
      top: 18px;
      right: 18px;
      display: grid;
      place-items: center;
      width: 42px;
      height: 42px;
      border: 0;
      border-radius: 14px;
      background: #f2f6fc;
      color: #111827;
      cursor: pointer;}
.lead-modal__close::before,
    .lead-modal__close::after{content: '';
      position: absolute;
      width: 17px;
      height: 2px;
      border-radius: 999px;
      background: currentColor;}
.lead-modal__close::before{transform: rotate(45deg);}
.lead-modal__close::after{transform: rotate(-45deg);}
.lead-modal__eyebrow{margin: 0 0 16px;
      color: #067c91;
      font-family:var(--font-main);
      font-size: 12px;
      font-weight: 800;
      letter-spacing: 0;
      text-transform: uppercase;}
.lead-modal h2{margin: 0;
      max-width: 420px;
      color: var(--ink);
      font-size: clamp(34px, 6.4vw, 42px);
      line-height: 1.02;
      font-weight: 800;}
.lead-modal__text{margin: 16px 0 22px;
      color: #657085;
      font-size: 16px;
      line-height: 1.55;}
.lead-modal__form{display: grid; gap: 13px;}
.lead-modal__form .input{min-height: 54px;
      border-radius: 16px;
      border-color: #d6deeb;
      background: #fff;}
.lead-modal__form .input:focus{border-color: var(--cyan);
      box-shadow: 0 0 0 4px rgba(34, 220, 232, .22), 0 0 0 1px var(--cyan) inset;}
.lead-modal__form .btn{width: 100%;
      margin-top: 2px;
      min-height: 56px;
      border-radius: 16px;}
body.lead-modal-lock{overflow: hidden;}
html, body, button, input, select, textarea,
    .nav, .phone, .brand-sub, .form-policy-note,
    h1, h2, h3, .section-title, .btn, .option,
    .trust-item strong, .program-card-clean__badge,
    .program-card-clean__topline, .program-wide-card__eyebrow,
    .program-card-clean__price span, .program-wide-card__meta-item span,
    .budget-price-clean span, .inclusion-body span,
    .parent-benefit-row span, .include-number,
    .review-source, .review-theme, .contact-list span{font-family: var(--font-main) !important;}
@media (max-width: 560px) {.lead-modal{padding: 12px; align-items: center;}.lead-modal__dialog{max-height: calc(100dvh - 24px); padding: 32px 20px 24px; border-radius: 24px;}.lead-modal h2{font-size: 30px; line-height: 1.06;}.lead-modal__text{font-size: 15px; line-height: 1.5;}.lead-modal__close{top: 12px; right: 12px; width: 38px; height: 38px; border-radius: 13px;}}
