/* Responsive layout follows the available panel width in every browser. */
@media (max-width: 1199px) {
    html { overflow-x: clip; }
    .portfoliobutton { flex-wrap: wrap; justify-content: center; gap: 12px; }
    .portfoliobutton a { margin: 0; }
    #layout-content img, #layout-content video, #layout-content iframe { max-width: 100%; }
    #layout-content input, #layout-content textarea, #layout-content select { max-width: 100%; box-sizing: border-box; }
}
@media (max-width: 1199px) {
    .zayavkkkkk p { white-space: normal; overflow-wrap: break-word; }
    .wid45.fnkimg { min-width: 0; }
    .fnkimg .tipachrome { max-width: 100%; }
}
@media (max-width: 1199px) {
    #layout-content :is(h1, h2, h3, h4, p, li, a, td, th) { overflow-wrap: anywhere; }
    #layout-content .ostavzayav2 a { max-width: 100%; box-sizing: border-box; white-space: normal; }
}
@media (max-width: 767px) {
    .flexmobilnye { flex-direction: column-reverse; gap: 28px; }
    .flexmobilnye > .prodvizhetekstt, .flexmobilnye > .telefonyy { width: 100%; }

}

@media (min-width: 481px) and (max-width: 767px) {
    .flexstack .stackblock { width: 48%; }
}
@media (max-width: 767px) {
    .mobprilbody .verhnoblocks { height: auto; margin-top: 0; }
    .mobprilbody .prodvizhentop { height: auto; padding: 24px 0 40px; }
}
