/* IS ART: responsive repairs, 2026-09-21. */
@media (max-width: 767px) {
  html, body { width: 100%; max-width: 100%; overflow-x: clip; }
  body { font-size: 16px; line-height: 1.5; }
  main p, main li, main label, main input, main textarea, main select,
  .bottom-seo-content-text, .main-footer p, .main-footer li, .main-footer a {
    font-size: max(14px, 1em);
    line-height: 1.5;
  }
  body, header.main-header, .znakomstvo-content:before { min-width: 0 !important; }
  .main-header-top .container-2 { flex-wrap: nowrap; gap: 12px; }
  .main-header-top-left { flex: 0 0 100px; width: 100px; padding-right: 0; }
  .main-header-logo { width: 100px; max-width: 100%; }
  .main-header-logo a { display: block; width: 100%; min-width: 0; }
  .main-header-logo .logo-image { max-width: 100%; }
  .main-header-logo img, .main-header-logo svg { max-width: 100%; height: auto; }
  .main-header-top-right, .main-header-top-item { width: auto !important; min-width: 0; }
  .main-header-top-right { flex: 1; }
  a.main-header-phone { font-size: clamp(15px, 4.5vw, 22px); white-space: nowrap; }
  a.main-header-email { font-size: 14px; white-space: nowrap; }
  .main-header-top-item .phone_wa { flex-shrink: 0; }
  .main-header-bottom .container-2 { gap: 12px; }
  .main-header-kp-link { min-width: 0; }
  .main-header-kp-link a { padding: 10px 12px 10px 48px; max-width: 100%; }
  .main-header-bottom-menu { max-width: 100vw; }
  .container, .container-2 { max-width: 100%; }
  h1, h2, h3, .page-develop-content-title, .seo-content-info-title { overflow-wrap: anywhere; }
  .main-content img, .main-content video { max-width: 100%; }
  .seo-content-info, .seo-content-img, .main-page-banner-info { min-width: 0; }
  .razrabotka-banner-image { max-width: 100%; }
  .razrabotka-banner-image img { max-width: 100%; height: auto; }
  .tariff-column.mobile { width: 100%; max-width: 436px; }
  .tariff-column-inner,
  .page-template-page_prodvijenie .tariff-column-inner,
  .single-prodvijenie .tariff-column-inner { grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr); }
  .tariff-item { overflow-wrap: break-word; }
  .gifts-numbers { max-width: 100%; margin-left: 0; }
  .main-footer-content { display: grid; grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .footer-content-left { width: 100%; }
  .footer-content-menu { width: 100%; grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .footer-content-menu-column { width: auto; min-width: 0; }
  .alModal { max-width: calc(100vw - 24px); box-sizing: border-box; }
  .add-question-form-row { flex-wrap: wrap; gap: 12px; }
  .add-question-form-submit { max-width: 100%; }
  .razrabotka-step-info { min-width: 0; overflow-wrap: anywhere; }
  .other-services-row-grid { grid-template-columns: minmax(0, 1fr); }
  .bottom-seo-content-callback { overflow-wrap: anywhere; }
  .page-template-page-gorod .main-page-banner-info { width: 100%; max-width: 100%; box-sizing: border-box; }
  .page-template-page-gorod .main-page-banner-info p { max-width: 100%; }
  .page-template-page-gorod .main-page-trigger,
  .page-template-page-gorod .main-page-development-item,
  .page-template-page-gorod .cms-list-item { min-width: 0; max-width: 100%; box-sizing: border-box; }
  .page-template-page-gorod .main-page-triggers-content,
  .page-template-page-gorod .main-page-development-content { grid-template-columns: minmax(0, 1fr); }
  .page-template-page-gorod .main-page-banner { overflow: hidden; }
}
@media (max-width: 380px) {
  .main-header-top-left, .main-header-logo { width: 82px; flex-basis: 82px; }
  .main-header-top .container-2 { gap: 8px; }
  .main-header-kp-link a { font-size: 11px; padding: 8px 8px 8px 44px; }
  .callback-projects_block-buttons .development-callback { width: 100%; }
  .razrabotka-step-item { flex-direction: column; gap: 12px; }
  .razrabotka-step-info { width: 100%; }
}

/* Commercial templates: let content reflow instead of clipping it. */
@media (max-width: 767px) {
  .razrabotka-banner-image-text { width: auto !important; max-width: 100%; box-sizing: border-box; overflow-wrap: anywhere; }
  .main-page-triggers-link.new-link, .we-know-link.new-link { max-width: 100%; min-width: 0; box-sizing: border-box; white-space: normal; height: auto; text-align: center; }
  .razrabotka-price-text-block-right { min-width: 0; max-width: 100%; flex-wrap: wrap; }
  .razrabotka-price-text-block-right .development-price-item { min-width: 0; max-width: 100%; box-sizing: border-box; flex: 1 1 160px; }
  .product-info-cms, .product-info-cms-item { min-width: 0; max-width: 100%; box-sizing: border-box; }
  .product-info-cms-item { width: 100% !important; }
  .company-trust-title { width: auto !important; max-width: 100%; box-sizing: border-box; overflow-wrap: anywhere; }
  .bitrix-lic-table-content { overflow-x: auto; max-width: 100%; }
  .bitrix-lic-table-content table { min-width: 0; }
}

@media (max-width: 767px) {
  .product-info-cms { grid-template-columns: minmax(0, 1fr); }
  .product-info-cms-item-top { flex-wrap: wrap; gap: 12px; }
  .product-info-cms-item-title, .main-page-trigger, .main-page-trigger-info { min-width: 0; overflow-wrap: anywhere; }
  .product-info-cms-item-img { max-width: 100%; }
  .razrabotka-price-text-block-right .development-price-item { flex-basis: 100%; }
  .razrabotka-price-text-block-right .development-price,
  .razrabotka-price-text-block-right .development-price-info { width: auto; max-width: 100%; }
  .page-template-page_landing2 .razrabotka-banner-image-text { position: relative; left: auto; right: auto; top: auto; bottom: auto; transform: none; width: 100% !important; margin: 16px 0 0; }
  .page-template-page_landing2 .razrabotka-banner-image-text:before { display: none; }
  .page-template-page_prodvijenie .swiper-button-next { right: 0; }
}
@media (max-width: 380px) {
  .request_block-first-content, .online-schools-functions-content { grid-template-columns: minmax(0, 1fr); }
  .request_block-first-item, .online-schools-functions-column { min-width: 0; max-width: 100%; }
}

@media (max-width: 767px) {
  .what-we-do-trigger-text, .types_of_sites-title { overflow-wrap: anywhere; }
  .product-list-item { width: auto; min-width: 0; max-width: 100%; }
  .company-trust-info, .company-trust-text, .company-trust-wa { min-width: 0; max-width: 100%; box-sizing: border-box; }
  .company-trust-info { width: 100%; flex-wrap: wrap; }
  .company-trust-text { width: 100%; }
  .company-trust-wa { white-space: normal; height: auto; text-align: center; }
  .page-template-page_prodvijenie .swiper-button-next { right: 0 !important; }
}
@media (max-width: 380px) {
  .corporat-main-triggers .container-2 { grid-template-columns: minmax(0, 1fr); }
  .corporat-trigger-item { min-width: 0; max-width: 100%; }
}

@media (max-width: 767px) { .product-lists { grid-template-columns: minmax(0, 1fr); } }

.home .main-page-banner-info > p { max-width: 580px; line-height: 1.5; }
