/* Компактные формы в первом блоке страниц услуг и контактов. */
.page-hero--compact { padding: 1.5rem 0 .9rem; }
.page-hero--compact.page-hero--consultations,
.page-hero--compact.page-hero--services { padding-bottom: 1.75rem; }
.page-hero--compact > .container > .row { --bs-gutter-y: 1.5rem; }
.page-hero--compact .crumbs { flex-wrap: wrap; margin-bottom: .65rem; }
.page-hero--compact .pill { margin-bottom: .65rem; }
.page-hero--compact .page-hero__title { font-size: clamp(1.9rem, 4vw, 2.5rem); margin-bottom: .65rem; }
.page-hero--compact .page-hero__lead { line-height: 1.5; }
.page-hero--compact .offer-points { gap: .45rem 1.2rem; margin: .9rem 0 0; }
.page-hero--compact .page-hero__actions { margin-top: .9rem; }
.page-hero--compact .lead-form { padding: 1.2rem; }
.page-hero--compact .lead-form__sub { margin-bottom: .75rem; line-height: 1.45; }
.page-hero--compact .form-label { margin-bottom: .25rem; }
.page-hero--compact .form-control { min-height: 44px; padding: .5rem .75rem; margin-bottom: .45rem; }
.page-hero--compact textarea.form-control { height: 4.5rem; min-height: 4.5rem; resize: vertical; }
.page-hero--compact .lead-form__note { margin-top: .6rem; }
.page-hero--compact + .section--tight { padding-top: 1.75rem; }

.contact-form-card--compact { padding: 1.2rem; }
.contact-form-card--compact .contact-form-card__title { font-size: 1.3rem; }
.contact-form-card--compact .contact-form-card__sub { margin-bottom: .75rem; line-height: 1.45; }
.contact-form-card--compact .form-label { margin-bottom: .25rem; }
.contact-form-card--compact .form-control { min-height: 44px; padding: .5rem .75rem; }
.contact-form-card--compact textarea.form-control { height: 4.5rem; min-height: 4.5rem; resize: vertical; }
.contact-form-card--compact button[type="submit"] { min-height: 44px; padding: .62rem 1.4rem; }
.contact-form-card--compact #callbackForm { display: grid; grid-template-columns: minmax(0, 1fr); column-gap: 1rem; }
.contact-form-card--compact #callbackForm > * { grid-column: 1 / -1; min-width: 0; }

@media (min-width: 576px) {
    .page-hero--compact .lead-form .row > div { flex: 0 0 auto; width: 50%; }
    .contact-form-card--compact #callbackForm { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .contact-form-card--compact #callbackForm > .mb-2:has(input) { grid-column: auto; }
}
