/* Контакты (/contacts) — аудит 08.10, п. 4. Блоки лендинга (bl-requisites, bl-contacts, bl-final, pt-bmk-button,
   pt-contact-link) живут в pelltech-bmk*.css, pelltech-landing-blocks.css и pelltech-panels.css; здесь только
   то, чего там нет: отступы первого блока, кнопка звонка и мессенджеры в левой колонке, карточка формы обращения.
   Поля формы — .wb-auth-field (systemway.css, header.css), как в модалке заявки. */
.pt-contacts .pt-bmk-landing > .bl-section:first-child { margin-top: 0; }
.pt-contacts__intro > div:first-child { min-width: 0; }
.pt-contacts__call { display: inline-flex; margin-top: 4px; }
.pt-contacts__links { margin-top: 28px; }
.pt-contacts__links > p { margin: 0 0 10px; font-size: 13px; font-weight: 600; color: #242629; }
/* Правило лендинга красит все ссылки — плитки мессенджеров остаются тёмными (ховер — белый текст на тёмном) */
.pt-contacts.pt-landing-page .pt-bmk-landing a.pt-contact-link { flex: 0 1 auto; color: #242629; text-decoration: none; }
.pt-contacts.pt-landing-page .pt-bmk-landing a.pt-contact-link:hover,
.pt-contacts.pt-landing-page .pt-bmk-landing a.pt-contact-link:focus-visible { color: #fff; }

/* Форма обращения: текст слева, карточка формы справа (как bl-intro / bl-form-card) */
.pt-contacts__write { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.6fr); gap: 60px; align-items: start; }
.pt-contacts__form { padding: 32px; background: #fff; border: 1px solid #e4e5e7; border-top: 3px solid #c41e2e; border-radius: 16px; }
.pt-contacts__row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.pt-contacts__form .wb-auth-field { display: block; margin: 0 0 16px; min-width: 0; }
.pt-contacts__row .wb-auth-field { margin-bottom: 16px; }
.pt-contacts__form .wb-auth-field__label { display: block; margin-bottom: 6px; font-size: 13px; font-weight: 600; color: #242629; }
.pt-contacts__form .wb-auth-field__input { width: 100%; height: 48px; padding: 10px 14px; border-radius: 10px; font-size: 15px; }
.pt-contacts__form .wb-auth-field--textarea .wb-auth-field__input { min-height: 140px; }
.pt-contacts__form .wb-auth-captcha-row { align-items: flex-end; gap: 12px; margin: 0 0 16px; }
.pt-contacts__form .wb-auth-captcha-row .wb-auth-field { margin: 0; }
.pt-contacts__form .wb-auth-captcha-visual { display: flex; align-items: center; gap: 8px; flex: 0 0 auto; }
.pt-contacts__form .wb-auth-captcha-img { border: 1px solid #e4e5e7; border-radius: 10px; }
.pt-contacts__form .wb-auth-captcha-refresh { display: inline-flex; align-items: center; justify-content: center; width: 48px; height: 48px; border: 1px solid #d8dade; border-radius: 10px; background: #fff; color: #242629; cursor: pointer; }
.pt-contacts__form .wb-auth-captcha-refresh:hover { border-color: #c41e2e; color: #c41e2e; }
.pt-contacts__form .wb-auth-captcha-error { color: #a81726; font-size: 13px; margin: -8px 0 12px; }
.pt-contacts__form .wb-auth-agree { margin: 4px 0 6px; font-size: 13px; color: #242629; }
.pt-contacts__form .pt-privacy-note { margin: 0 0 8px; }
.pt-contacts__error { margin: 6px 0 0; font-size: 13px; line-height: 1.5; color: #a81726; }
.pt-contacts__error--top { margin: 0 0 16px; padding: 12px 14px; border: 1px solid #f0c7cc; border-radius: 10px; background: #fff4f5; }
.pt-contacts__submit { width: 100%; margin-top: 12px; }

@media (max-width: 1100px) {
  .pt-contacts__write { gap: 32px; }
}
@media (max-width: 900px) {
  .pt-contacts__write { grid-template-columns: 1fr; gap: 24px; }
}
@media (max-width: 700px) {
  .pt-contacts__call { width: 100%; }
  .pt-contacts__links { margin-top: 20px; }
  .pt-contacts__form { padding: 22px 18px; border-radius: 14px; }
  .pt-contacts__row { grid-template-columns: 1fr; gap: 0; }
  .pt-contacts__form .wb-auth-captcha-row { flex-wrap: wrap; }
  .pt-contacts__form .wb-auth-captcha-row .wb-auth-field { flex: 1 1 100%; margin-bottom: 12px; }
}
