/* Layout corrections for the existing Bootstrap site. Public wording is unchanged. */
.bw44 a { border-radius: 8px !important; }

@media (max-width: 1199px) {
    /* A nested fixed-width Bootstrap container otherwise overflows its column. */
    .container .container, footer .tops > .container { max-width: 100%; }
}

@media (max-width: 1023px) {
    /* The mobile navigation is 64px high; do not add the old contact strip again. */
    .header a.navbar-mobile { padding-top: 10px; padding-bottom: 10px; }
    .headmain { padding-top: 88px; padding-bottom: 28px; }
    .headmain .headmain-content { margin-top: 0; }
    .headmain h1 { padding-top: 0 !important; padding-bottom: 0; line-height: 1.3; }
    .headmain .slidermain0 { padding-top: 12px; padding-bottom: 40px; }
    .first-advantage__box { transform: none; margin: 20px 0 30px; }
    .headmain .breadcrumbs { margin-bottom: 0; }
    .contact-block-item { max-width: 100%; }
    .services-columns { margin-left: 0; padding-left: 0; }
    .services-columns__list { min-width: 0; }
    .services-columns__list--active .services-top:before { left: 0; right: 0; }
}

@media (max-width: 767px) {
    .headmain h1 { font-size: 22px !important; }
    .services-columns__list { width: 100%; }
    .contact-block { padding-top: 28px; }
    .mainform .form1 { display: flex; flex-wrap: wrap; justify-content: center; gap: 16px; }
    .mainform .form1 input[type="phone"] { float: none; width: 100%; margin-bottom: 0 !important; }
    .mainform .form1 > div { margin-left: 0 !important; }
    .tableprice table { font-size: 14px; line-height: 1.45; }
    .tableprice tr td, .tableprice th, .tableprice th:first-child { padding: 10px 8px; }
    .tableprice thead { font-size: 16px; }
    .docs img { height: auto; }
    .cdi-appointment input, .cdi-appointment select, .cdi-appointment textarea { min-width: 0; max-width: 100%; }
}

@media (max-width: 359px) {
    .header .navbar-header { gap: 8px; }
    .header .header-mobile-actions { gap: 6px; }
    .header a.navbar-mobile { gap: 6px; font-size: 20px; }
    .header a.navbar-mobile:before { width: 32px; height: 32px; flex-basis: 32px; }
    .cdi-appointment .cdi-navigation { flex-wrap: wrap; }
}
