/* ============================================================
   Блок консультации (CTA + форма) — 1:1 из process1 на светлой
   подложке (cta-band = стекло --gl-bg). Фон секции прозрачный
   (световое поле), сама подложка — светлая стеклянная плашка.
   Ширина = 1136 (в main), в общем ритме отступов.
   ============================================================ */
.rk-cta, .rk-cta * { box-sizing: border-box; }
/* Секция full-bleed (на всю ширину экрана), прозрачная — даёт отступ до/после подложки */
.rk-cta { position: relative; width: 100vw; margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); padding: 50px 0; background: transparent; }

/* Подложка — во всю ширину ЭКРАНА (полоса край-в-край), без скруглений */
.rk-cta .cta-band { width: 100%; padding: clamp(48px, 4.5vw, 60px) 0;
  background: rgba(255,255,255,.55); -webkit-backdrop-filter: blur(22px) saturate(1.85); backdrop-filter: blur(22px) saturate(1.85);
  border: 1px solid rgba(255,255,255,.85); border-radius: 18px;
  box-shadow: 0 26px 64px rgba(9,13,48,.18), inset 0 1px 0 rgba(255,255,255,.95); }

/* Контент центрирован в 1200 (край 66, как у остальных блоков) */
.rk-cta .cta-inner { max-width: 1200px; margin: 0 auto; padding-inline: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 50px; align-items: start; }
@media (max-width: 1240px) { .rk-cta .cta-inner { padding-inline: 20px; } }

/* Левая колонка */
.rk-cta .cta-eyebrow { font-family: 'Montserrat', sans-serif; font-size: 12px; font-weight: 700; letter-spacing: .2em; text-transform: uppercase; color: #000b73; display: inline-flex; align-items: center; gap: 11px; }
.rk-cta .cta-eyebrow::before { content: ""; width: 30px; height: 1.5px; background: #000f9f; display: inline-block; }
.rk-cta .cta-h { font-family: 'Montserrat', sans-serif; font-weight: 700; font-size: clamp(28px, 3.4vw, 38px); line-height: 1.08; letter-spacing: -.01em; color: #14161d; margin: 14px 0 0; max-width: 16ch; }
.rk-cta .cta-lead { font-family: 'Montserrat', sans-serif; font-size: 16px; line-height: 1.55; color: #474b58; margin: 16px 0 0; max-width: 42ch; }
.rk-cta .cta-ticks { margin-top: 22px; }
.rk-cta .tick { display: flex; align-items: center; gap: 10px; margin-top: 14px; font-family: 'Montserrat', sans-serif; font-size: 14px; color: #474b58; }
.rk-cta .tick svg { width: 18px; height: 18px; color: #000f9f; flex: none; }

/* Форма */
.rk-cta .cta-form { background: rgba(255,255,255,.72); -webkit-backdrop-filter: blur(20px) saturate(1.6); backdrop-filter: blur(20px) saturate(1.6);
  border: 1px solid rgba(255,255,255,.9); border-radius: 18px; padding: 30px; box-shadow: inset 0 1px 0 rgba(255,255,255,.9), 0 26px 64px rgba(9,13,48,.18); }
.rk-cta .cta-form h3 { font-family: 'Montserrat', sans-serif; font-size: 21px; font-weight: 700; margin: 0 0 4px; color: #14161d; }
.rk-cta .cta-form .fsub { font-family: 'Montserrat', sans-serif; font-size: 14px; color: #474b58; margin: 0 0 22px; }
.rk-cta .field { margin-bottom: 16px; }
.rk-cta .field label { display: block; font-family: 'Montserrat', sans-serif; font-size: 13px; font-weight: 600; color: #14161d; margin-bottom: 7px; }
.rk-cta .field label .opt { color: #83879a; font-weight: 400; }
.rk-cta .field input, .rk-cta .field textarea, .rk-cta .field select { width: 100%; font-family: 'Montserrat', sans-serif; font-size: 15px; color: #14161d; padding: 13px 15px; border: 1.5px solid #dfe3ec; border-radius: 10px; background: #f2f4f9; transition: border-color .18s, box-shadow .18s, background .18s; resize: vertical; }
.rk-cta .field textarea { min-height: 64px; }
.rk-cta .field input::placeholder, .rk-cta .field textarea::placeholder { color: #9aa0b0; }
.rk-cta .field input:focus, .rk-cta .field textarea:focus, .rk-cta .field select:focus { outline: none; border-color: #000f9f; background: #fff; box-shadow: 0 0 0 4px rgba(0,15,159,.1); }
/* Свой вид выпадающего списка: убираем нативную стрелку (текст встаёт по 15px,
   как у инпутов) и рисуем свою стрелку на контролируемом отступе справа. */
.rk-cta .field select {
  -webkit-appearance: none; -moz-appearance: none; appearance: none;
  padding-right: 42px; cursor: pointer;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2383879a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 14px center; background-size: 16px;
}
/* На фокусе фон становится белым (шорткат выше сбрасывает картинку) — возвращаем стрелку. */
.rk-cta .field select:focus {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23000f9f' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 14px center; background-size: 16px;
}
/* Кастомный выпадающий список «Интересует» — вместо нативного <select>,
   чтобы стилизовать сам перечень опций (белая панель, ховер, выделение). */
.rk-cta .cta-select { position: relative; }
.rk-cta .cta-select-btn { width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 10px; font-family: 'Montserrat', sans-serif; font-size: 15px; color: #14161d; text-align: left; padding: 13px 15px; border: 1.5px solid #dfe3ec; border-radius: 10px; background: #f2f4f9; cursor: pointer; transition: border-color .18s, box-shadow .18s, background .18s; }
.rk-cta .cta-select-arrow { flex: none; color: #83879a; transition: transform .2s, color .2s; }
.rk-cta .cta-select.open .cta-select-btn { border-color: #000f9f; background: #fff; box-shadow: 0 0 0 4px rgba(0,15,159,.1); }
.rk-cta .cta-select.open .cta-select-arrow { transform: rotate(180deg); color: #000f9f; }
.rk-cta .cta-select-list { position: absolute; z-index: 20; top: calc(100% + 6px); left: 0; right: 0; margin: 0; padding: 6px; list-style: none; background: #fff; border: 1px solid #e2e6ef; border-radius: 12px; box-shadow: 0 16px 40px rgba(9,13,48,.16); max-height: 264px; overflow-y: auto; }
.rk-cta .cta-select-list[hidden] { display: none; }
.rk-cta .cta-select-list li { font-family: 'Montserrat', sans-serif; font-size: 14.5px; color: #14161d; padding: 11px 12px; border-radius: 8px; cursor: pointer; transition: background .12s, color .12s; }
.rk-cta .cta-select-list li:hover { background: #eef1f7; }
.rk-cta .cta-select-list li.on { background: rgba(0,15,159,.06); color: #000f9f; font-weight: 600; }
.rk-cta .cta-submit { width: 100%; font-family: 'Montserrat', sans-serif; font-size: 16px; font-weight: 700; color: #fff; background: #000f9f; border: none; border-radius: 12px; padding: 16px 30px; margin-top: 4px; cursor: pointer; transition: background .2s, transform .2s, box-shadow .2s; }
.rk-cta .cta-submit:hover { background: #000d80; transform: translateY(-1px); box-shadow: 0 10px 26px rgba(0,15,159,.3); }
/* Галочки согласия (из первоначальной формы) */
.rk-cta .cta-checks { margin: 4px 0 18px; display: flex; flex-direction: column; gap: 12px; }
.rk-cta .cta-check { display: flex; align-items: flex-start; gap: 10px; cursor: pointer; font-family: 'Montserrat', sans-serif; font-size: 12.5px; line-height: 1.45; color: #474b58; }
/* Кастомный чекбокс: скруглённый квадрат, при выборе — синяя заливка с белой
   галочкой (единый стиль с формой, а не серый нативный квадрат). */
.rk-cta .cta-check input {
  -webkit-appearance: none; appearance: none;
  flex: 0 0 auto; width: 18px; height: 18px; margin: 1px 0 0;
  border: 1.5px solid #c3cce6; border-radius: 5px; background: #fff;
  cursor: pointer; transition: background-color .15s, border-color .15s, box-shadow .15s;
  background-repeat: no-repeat; background-position: center; background-size: 11px 11px;
}
.rk-cta .cta-check input:hover { border-color: #000f9f; }
.rk-cta .cta-check input:checked {
  background-color: #000f9f; border-color: #000f9f;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E");
}
.rk-cta .cta-check input:focus-visible { outline: none; box-shadow: 0 0 0 3px rgba(0,15,159,.18); }
.rk-cta .cta-check.err input { border-color: #d64545; }
.rk-cta .cta-check.err span { color: #d64545; }
.rk-cta .cta-check a { color: #000f9f; font-weight: 500; text-decoration: none; }
.rk-cta .cta-check a:hover { text-decoration: underline; }
.rk-cta .consent { font-family: 'Montserrat', sans-serif; font-size: 12px; color: #83879a; margin: 12px 0 0; line-height: 1.45; }

/* Экран «отправлено» */
.rk-cta .form-ok { text-align: center; padding: 30px 10px; }
.rk-cta .form-ok .ok-ic { width: 60px; height: 60px; border-radius: 50%; background: rgba(31,138,91,.12); color: #1f8a5b; display: flex; align-items: center; justify-content: center; margin: 0 auto 18px; }
.rk-cta .form-ok .ok-ic svg { width: 30px; height: 30px; }
.rk-cta .form-ok h3 { font-family: 'Montserrat', sans-serif; font-size: 21px; font-weight: 700; margin: 0 0 8px; color: #14161d; }
.rk-cta .form-ok p { font-family: 'Montserrat', sans-serif; color: #474b58; font-size: 14px; margin: 0; line-height: 1.5; }

@media (max-width: 860px) { .rk-cta .cta-inner { grid-template-columns: 1fr; gap: 32px; } }
