/* «Контакты» webnub.ru — итог показа 7б: вариант 1 без фото, форма без подложки, «Отправить» залитая
 * (утверждён 09.11.2026). Основа (шрифт Source Sans 3, цвета, шапка, подвал) — glavnaya/glavnaya_v3.css, классы g3-.
 * Здесь — содержимое страницы, классы kt-; размеры и раскладка — 07b_pokaz/Itog.html, правила — 07_dizajn.md.
 * Детали кнопок и формы — как на «Моих услугах» (uslugi/uslugi.css). Без анимаций. Точка перестройки — 900 px.
 */

/* Заголовки и текст */
.kt h1 { font-size: 28px; line-height: 1.18; font-weight: 600; margin: 0 0 14px; }
.kt h2 { font-size: 24px; line-height: 1.25; font-weight: 600; margin: 0 0 16px; }
.kt p { margin: 0 0 14px; }
.kt-lid { font-size: 19px; line-height: 1.55; }
.kt p.kt-bez-niza { margin-bottom: 0; }

/* Ссылки в тексте: посещённые — свой цвет (палитра блога); кнопки не перекрашиваем */
.kt-tekst p a:visited { color: #5a3d9a; }
.kt-tekst p a:hover { color: #0e3580; }

/* Колонка текста 720 px и воздух между частями */
.kt-k { max-width: 752px; margin-left: auto; margin-right: auto; padding: 0 16px; }
.kt-verh { padding-top: 24px; }
.kt-kanaly { margin-top: 22px; }
.kt-rz { margin-top: 56px; }

/* Кнопки: залитые, на телефоне во всю ширину */
.kt .kt-knopka {
  display: flex; justify-content: center; align-items: center; text-align: center; width: 100%;
  min-height: 52px; padding: 8px 24px; border-radius: 10px; border: 2px solid #154cb3;
  background: #154cb3; color: #ffffff; font-family: inherit; font-size: 19px; font-weight: 600; line-height: 1.3;
  text-decoration: none; cursor: pointer;
}
.kt .kt-knopka:hover, .kt .kt-knopka:visited { color: #ffffff; }
.kt .kt-knopka:hover { background: #0e3580; border-color: #0e3580; }

/* Четыре канала связи */
.kt-svz { display: grid; gap: 10px; margin: 6px 0 20px; }
.kt-podsk { font-size: 17px; color: #5b6270; }
.kt .kt-podsk { margin: 0; }
.kt-adr { user-select: all; white-space: nowrap; color: #1d1f23; }

/* Форма */
.kt-forma label { display: block; font-size: 17px; font-weight: 600; margin: 0 0 6px; }
.kt-forma input[type="text"], .kt-forma input[type="email"], .kt-forma textarea {
  display: block; width: 100%; min-height: 48px; border: 1px solid #8a8f99; border-radius: 8px; padding: 10px 12px;
  font: inherit; font-size: 18px; color: #1d1f23; background: #ffffff;
}
.kt-forma .kt-pole { margin: 0 0 16px; }
.kt-forma label.kt-gal {
  display: flex; gap: 10px; align-items: flex-start; margin: 0 0 16px;
  font-size: 17px; font-weight: 400; line-height: 1.5; cursor: pointer;
}
.kt-forma .kt-gal input { width: 22px; height: 22px; flex: 0 0 22px; margin: 2px 0 0; accent-color: #154cb3; cursor: pointer; }
.kt .kt-pod-kn { font-size: 17px; color: #5b6270; margin: 12px 0 0; }
.kt .kt-osh { color: #b3261e; font-size: 17px; font-weight: 600; margin: 0 0 12px; }
.kt-forma.kt-oshibka .kt-gal input { outline: 2px solid #b3261e; outline-offset: 2px; }
.kt .kt-itog { border: 1px solid #154cb3; border-radius: 10px; padding: 12px 16px; background: #ffffff; font-size: 18px; margin: 0; }
.kt .kt-itog--ne { border-color: #b3261e; }

/* Поле-ловушка для спам-программ: человеку не видно и не попадает под Tab */
.kt-lovushka { position: absolute !important; left: -10000px; width: 1px; height: 1px; overflow: hidden; }

/* Группы блога — ссылками в строку; палец на телефоне — не меньше 44 px */
.kt .kt-gr { display: flex; flex-wrap: wrap; align-items: center; gap: 0 14px; margin: 0; }
.kt-gr a { display: inline-flex; align-items: center; min-height: 44px; }

/* Сведения о владельце */
.kt .kt-vl { border-top: 1px solid #d5dae2; padding-top: 18px; font-size: 17px; color: #5b6270; margin: 28px 0 0; }

@media (min-width: 900px) {
  .kt h1 { font-size: 38px; }
  .kt h2 { font-size: 28px; }
  .kt-lid { font-size: 21px; }
  .kt-verh { padding-top: 48px; }
  .kt-rz { margin-top: 72px; }
  .kt-svz { grid-template-columns: 1fr 1fr; }
  .kt-forma .kt-dva { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
  .kt-forma .kt-knopka { display: inline-flex; width: auto; min-width: 220px; }
}

/* Невысокий ноутбук: кнопки связи и начало формы видны без прокрутки */
@media (min-width: 900px) and (max-height: 700px) {
  body.g3.kt { font-size: 18px; }
  .kt h1 { font-size: 34px; }
  .kt h2 { font-size: 26px; }
  .kt-lid { font-size: 20px; }
  .kt .kt-knopka { font-size: 18px; }
}
