/* =====================================================
   ТД ССК — media.css (все @media-запросы)
   Версия: 2026-05-11 (агент 0, рефакторинг)
   ─────────────────────────────────────────────────────
   Порядок: от широких max-width к узким (1100 → 360).
   Внутри каждого брейкпоинта блоки помечены по секциям:
     GLOBALS  — header / nav / footer / utility / hero / formы (агент 4)
     HOMEPAGE — главная: .hero, .cats, .industries, .projects, .facts,
                .brands, .certs, .reviews, .cta-strip, .cilce (агент 1)
     CATALOG  — /brand/, /catalog/, search, favorites (агент 2)
     ARTICLES — /about/, /contacts/, /post/, /reviews/ (агент 3)
   Агентам 1-4: правьте только свою секцию. Если правка нужна в чужой —
   связаться. Стилей вне @media здесь НЕ должно быть — они в style.css.
   ===================================================== */

/* =====================================================
   ── max-width: 1100px
   ===================================================== */

/* --- GLOBALS (из base_new.css) --- */
@media (max-width: 1100px){
    .related-posts__grid{grid-template-columns:repeat(2, 1fr)}
  }

/* --- HOMEPAGE (из homepage.css) --- */
@media(max-width:1100px){
  .cta-strip-benefits{display:none}
  .cta-strip-text{max-width:none;flex:1}
  /* fix: на промежуточной ширине 1025-1100 заголовки .cat слипались зрительно — переходим в 2 колонки заранее */
  .cats{grid-template-columns:repeat(2,1fr) !important}
  .cat{height:300px !important;aspect-ratio:auto !important;width:100%;min-width:0}
  /* industries на 1025-1100 — 4 карточки в 2 колонки (иначе слишком узкие) */
  .industries{grid-template-columns:repeat(2,1fr)}
  /* brands: 6 в ряд не помещаются — внутренний overflow 121px. Сводим к 4 */
  .brands{grid-template-columns:repeat(4,1fr)}
  .brand:nth-child(6n){border-right:1px solid var(--steel-200)}
  .brand:nth-child(4n){border-right:none}
  /* footer 5 колонок → 3, brand на всю ширину */
  :is(.footer.kf-footer, footer.footer) .foot-grid{grid-template-columns:repeat(3,1fr);gap:32px}
  :is(.footer.kf-footer, footer.footer) .foot-brand{grid-column:1 / -1}
}

/* =====================================================
   ── max-width: 1024px
   ===================================================== */

/* --- ARTICLES (из about.css) --- */
@media (max-width:1024px){
  .about-hero-inner{grid-template-columns:1fr;gap:40px}
  .about-do{grid-template-columns:repeat(2,1fr)}
  .about-facts{grid-template-columns:repeat(2,1fr)}
  .about-facts .f:nth-child(2n){border-right:none}
  .about-facts .f:nth-child(n+3){border-top:1px solid rgba(255,255,255,.08)}
  .about-team{grid-template-columns:1fr}
  .about-mission{grid-template-columns:1fr;gap:32px}
  .about-tl-grid{grid-template-columns:1fr;gap:32px}
}

/* --- ARTICLES — legacy list pages (агент 3) --- */
@media (max-width:1024px){
  .post_article_main{grid-template-columns:repeat(2,1fr);gap:18px}
  .post_article_list_service{grid-template-columns:repeat(2,1fr);gap:18px}
  .post_article_h1{font-size:clamp(26px,4vw,36px);margin:36px 0 24px}
  .reviews_top_main h1{font-size:clamp(26px,4vw,36px)}
}

/* --- GLOBALS (из base_new.css) --- */
@media(max-width:1024px){
  .second_block_items{grid-template-columns:repeat(2,1fr)!important}
  .second_block_item:nth-child(2n){border-right:none!important}
  .second_block_item:nth-last-child(-n+3){border-bottom:1px solid rgba(255,255,255,.07)!important}
  .second_block_item:nth-last-child(-n+2){border-bottom:none!important}
}

/* --- GLOBALS (из base_new.css) --- */
@media (max-width:1024px){
  .brands-grid{grid-template-columns:repeat(4,1fr)}
  .tab-pane.active{grid-template-columns:repeat(2,1fr)}
}

/* --- GLOBALS (из base_new.css) --- */
@media (max-width:1024px){
  .cat-grid{grid-template-columns:repeat(2,1fr)}
  .cat-hero h1{font-size:38px}
}

/* --- GLOBALS (из base_new.css) --- */
@media (max-width:1024px){
  .cat-d-grid{grid-template-columns:repeat(3,1fr)}
  .cat-d-products{grid-template-columns:repeat(2,1fr)}
  .cat-d-hero h1{font-size:36px}
  .cat-d-hero .counter .v{font-size:32px}
}

/* --- GLOBALS (из base_new.css) --- */
@media (max-width:1024px){
  .product-hero .grid{grid-template-columns:1fr;gap:32px}
  .product-gallery{position:static}
  .product-info h1{font-size:28px}
  .product-feats{grid-template-columns:repeat(2,1fr)}
  .product-related .grid{grid-template-columns:repeat(2,1fr)}
  .product-delivery-list{grid-template-columns:1fr}
  .product-docs-list{grid-template-columns:1fr}
}

/* --- GLOBALS (из base_new.css) --- */
@media (max-width:1024px){
  .kf-wrap,
  .utility .wrap, header.header > .wrap, nav.nav > .wrap, footer.footer > .wrap{padding:0 20px}

  /* Utility-bar становится компактнее: убираем «Документы/Вакансии/Блог», оставляем гео+часы+ЛК */
  .utility :is(.kf-wrap,.wrap){height:auto;padding:8px 20px;gap:14px;flex-wrap:wrap}
  .utility .links{display:none}
  .utility .login{margin-left:auto}

  /* Header: search занимает всё доступное место, контактная колонка прячется */
  :is(.header.kf, header.header) :is(.kf-wrap,.wrap){height:auto;padding:14px 20px;gap:16px;flex-wrap:wrap}
  :is(.header.kf, header.header) .contact{display:none}
  /* Бургер уводим в правый край, чтобы он не «прилипал» к кнопке «Получить КП» */
  :is(.header.kf, header.header) .nav-burger{display:flex;margin-left:auto}

  /* NAV: верхнее меню скрыто, остаётся только «Каталог продукции» (его и кнопка-бургер уже открывают offcanvas) */
  :is(.nav.kf-nav, nav.nav) :is(.kf-wrap,.wrap){height:auto;padding:0 20px}
  :is(.nav.kf-nav, nav.nav) .nav-links{display:none}
  :is(.nav.kf-nav, nav.nav) .nav-meta{display:none}
  :is(.nav.kf-nav, nav.nav) .nav-catalog{padding:14px 18px;font-size:var(--fs-14)}

  /* Mega-menu: одна колонка (скрываем right-promo) */
  :is(.nav.kf-nav, nav.nav) .mega{max-height:calc(100vh - 136px);overflow:auto}
  :is(.nav.kf-nav, nav.nav) .mega-inner{grid-template-columns:1fr;min-height:auto}
  :is(.nav.kf-nav, nav.nav) .mega-left{border-right:none;border-bottom:1px solid var(--steel-200)}
  :is(.nav.kf-nav, nav.nav) #megaCenterWrap{grid-column:1 / -1 !important;display:block !important}
  :is(.nav.kf-nav, nav.nav) .mega-center{padding:20px;grid-template-columns:repeat(2,1fr);gap:18px 20px}
  #megaRightWrap,:is(.nav.kf-nav, nav.nav) .mega-right{display:none !important}

  /* Footer: 4 колонки → 2 */
  :is(.footer.kf-footer, footer.footer){padding:48px 0 0}
  :is(.footer.kf-footer, footer.footer) .foot-grid{grid-template-columns:1fr 1fr;gap:32px}
  :is(.footer.kf-footer, footer.footer) .foot-brand{grid-column:1 / -1}

  /* CTA-блок (одна колонка) */
  .cta-block{grid-template-columns:1fr;margin:0 20px}
  .cta-left{padding:40px 28px}
  .cta-left h2{font-size:32px}
  .cta-form{padding:32px 28px}
}

/* --- GLOBALS (из base_new.css) --- */
@media (max-width:1024px){
  .contacts-grid{grid-template-columns:repeat(2,1fr)}
  .contacts-extra{grid-template-columns:1fr;gap:32px}
}

/* --- GLOBALS (из base_new.css) --- */
@media(max-width:1024px){
  .brand-hero__inner{grid-template-columns:1fr;gap:32px}
  .brand-hero__logo{min-height:180px;padding:36px 28px}
  .brand-hero__logo img{max-height:120px}
}

/* --- HOMEPAGE (из homepage.css) --- */
@media (max-width:1024px){
  .wrap{padding:0 20px}

  /* Utility-bar — компактнее, прячем «Доставка/Документы/...» */
  .utility .wrap{height:auto;padding:8px 20px;gap:14px;flex-wrap:wrap}
  .utility .links{display:none}
  .utility .login{margin-left:auto}

  /* Header: контактная колонка прячется, появляется бургер */
  .header .wrap{height:auto;padding:14px 20px;gap:16px;flex-wrap:wrap}
  .header .contact{display:none}
  .header .nav-burger{display:flex}

  /* NAV: верхнее меню сворачивается под бургер; на узких экранах открывается выпадающим списком */
  .nav .wrap{height:auto;padding:0 20px}
  .nav-links{display:none}
  .nav-links.mobile-open{
    display:flex;flex-direction:column;
    position:absolute;left:0;right:0;top:100%;z-index:80;
    background:var(--ink);
    border-top:1px solid var(--line-soft);
    padding:8px 0;margin:0;
  }
  .nav-links.mobile-open > li{width:100%}
  .nav-links.mobile-open > li > a{height:auto;padding:14px 24px;display:flex;width:100%}
  .nav-links.mobile-open .dropdown{position:static;display:block !important;background:rgba(255,255,255,0.04);border-top:none;box-shadow:none;padding:4px 0}
  .nav-links.mobile-open .dropdown > li > a{color:#dde4ee;padding:10px 36px;border-left:none}
  .nav-links.mobile-open .chev{display:none}
  .nav-meta{display:none}
  .nav-catalog{padding:14px 18px;font-size:var(--fs-14)}

  /* Mega-menu (одна колонка, без правого промо) */
  .mega{max-height:calc(100vh - 136px);overflow:auto}
  .mega-inner{grid-template-columns:1fr;min-height:auto}
  .mega-left{border-right:none;border-bottom:1px solid var(--steel-200)}
  #megaCenterWrap{grid-column:1 / -1 !important;display:block !important}
  .mega-center{padding:20px;grid-template-columns:repeat(2,1fr);gap:18px 20px}
  .mega-right{display:none !important}

  /* HERO: h1 поменьше, hero-actions гибче */
  .hero{min-height:auto}
  .hero .wrap{padding-top:56px;padding-bottom:64px}
  .hero h1.hero-title-main{font-size:clamp(36px,6vw,56px)}
  .hero-actions{flex-wrap:wrap;gap:12px}
  .hero-badges{gap:12px}

  /* Adv-strip → 2 колонки */
  .adv-strip .wrap{grid-template-columns:repeat(2,1fr)}
  .adv-strip .item{padding:18px 16px 18px 0}

  /* Сетки секций: переход к промежуточным колонкам */
  .section{padding:64px 0}
  .section-head{flex-direction:column;align-items:flex-start;gap:18px;margin-bottom:32px}
  .section h2{font-size:36px}
  .cats{grid-template-columns:repeat(2,1fr) !important}
  .cat{height:280px !important;aspect-ratio:auto !important;width:100%;min-width:0}
  .industries{grid-template-columns:repeat(2,1fr)}
  .industries--dark{grid-auto-rows:240px}
  .projects{grid-template-columns:repeat(2,1fr)}
  .brands{grid-template-columns:repeat(3,1fr)}
  .brand:nth-child(6n){border-right:1px solid var(--steel-200)}
  .brand:nth-child(3n){border-right:none}
  .certs{grid-template-columns:repeat(3,1fr)}
  .reviews{grid-template-columns:1fr 1fr}
  .facts{grid-template-columns:repeat(2,1fr)}
  .fact{border-right:1px solid var(--line-soft)}
  .fact:nth-child(2n){border-right:none}
  .products{grid-template-columns:repeat(2,1fr)}

  /* CTA-блок (одна колонка) */
  .cta-block{grid-template-columns:1fr;margin:0 20px}
  .cta-left{padding:40px 28px}
  .cta-left h2{font-size:32px}
  .cta-form{padding:32px 28px}

  /* Footer: 5 колонок → 2, brand тянется во всю ширину */
  .footer{padding:48px 0 0}
  .foot-grid{grid-template-columns:1fr 1fr;gap:32px}
  .foot-brand{grid-column:1 / -1}
}

/* =====================================================
   ── max-width: 900px
   ===================================================== */

/* --- GLOBALS (из base_new.css) --- */
@media (max-width: 900px){
    .kf-cycle__grid{grid-template-columns:1fr; gap:14px}
    .kf-cycle__inner{padding:24px}
  }

/* =====================================================
   ── max-width: 768px
   ===================================================== */

/* --- ARTICLES (из about.css) --- */
@media (max-width:768px){
  .about-wrap{padding:0 20px}
  .about-hero{padding:72px 0 60px}
  .about-hero h1{font-size:clamp(28px,6vw,40px);line-height:1.1}
  .about-hero p.about-lead{font-size:16px;margin-bottom:36px}
  .about-hero-mark{padding:20px 22px;font-size:11px}
  .about-hero-stats{gap:32px;padding-top:28px;margin-top:36px}
  .about-sec{padding:72px 0}
  .about-sec-head{margin-bottom:40px}
  .about-do{gap:18px}
  .about-do-card{padding:26px 22px}
  .about-mission{gap:28px}
  .about-tl-grid{gap:28px}
  .about-tcard{padding:30px 26px 28px}
  .about-tcard .avatar{width:72px;height:72px;font-size:24px;margin-bottom:18px}
}

/* --- ARTICLES — legacy list pages (агент 3) на планшете --- */
@media (max-width:768px){
  .page-new .container,
  body.page-new > .container,
  body.page_body > .container,
  .post_body .container,
  .contacts .container{padding:0 20px}
  .post_article_main{grid-template-columns:repeat(2,1fr);gap:14px}
  .post_article_list_service{grid-template-columns:repeat(2,1fr);gap:14px}
  .post_article_item_main{padding:20px 18px}
  .post_article_item_main .post_item_image{margin:0 -18px 4px}
  .post_project .post_article_item_main h2,
  .post_project .post_article_item_main .desc_art_post,
  .post_project .post_article_item_main .news_btn_main{padding-left:18px;padding-right:18px}
  .post_article_h1{font-size:clamp(24px,4.5vw,32px);margin:32px 0 20px}
  .reviews_top_main{margin:32px 0 24px}
  .reviews_top_main h1{font-size:clamp(24px,4.5vw,32px)}
  .post_body .news_post_image .image_special_main{aspect-ratio:16 / 10}
  .banner_post .slider_post{padding:0 20px}
  .banner_post .banner_top_item_img img{max-height:360px}
}

/* --- GLOBALS (из base_new.css) --- */
@media (max-width:768px){
  /* Скроллбар-гаттер на мобиле даёт минус 15-17px к ширине body (на vp 320 → body 305). Отключаем. */
  html{scrollbar-gutter:auto}

  /* Utility-bar — оставляем только адрес + ЛК-иконку */
  .utility{font-size:var(--fs-12)}
  .utility :is(.kf-wrap,.wrap) > span:nth-of-type(2){display:none}  /* «Пн–Пт …» убираем */
  .utility .login{font-size:var(--fs-12)}
  .utility .login svg{width:16px;height:16px}

  /* Header: лого + поиск (свернутый) + бургер */
  :is(.header.kf, header.header) :is(.kf-wrap,.wrap){padding:10px 16px;gap:10px}
  :is(.header.kf, header.header) .logo-image{height:52px;max-width:138px}
  :is(.footer.kf-footer, footer.footer) .foot-brand .logo-image{height:64px;max-width:168px;padding:7px 9px}
  :is(.header.kf, header.header) .logo-mark{width:44px !important;height:44px !important}
  :is(.header.kf, header.header) .logo-text b{font-size:16px}
  :is(.header.kf, header.header) .logo-text span{font-size:10px}

  /* Поиск занимает всю ширину второй строки */
  :is(.header.kf, header.header) .search{order:5;flex-basis:100%;height:42px}
  :is(.header.kf, header.header) .search-cat{display:none}
  :is(.header.kf, header.header) .search input{font-size:var(--fs-14);padding:0 12px}
  :is(.header.kf, header.header) .search-btn{width:48px}

  /* Длинный плейсхолдер укорачиваем на мобиле — мешает обзору. */
  :is(.header.kf, header.header) .search input::placeholder{font-size:var(--fs-13)}

  /* CTA «Получить КП» — компактная: иконка + короткий текст */
  :is(.header.kf, header.header) .cta-primary{padding:10px 14px;font-size:var(--fs-13)}
  :is(.header.kf, header.header) .cta-primary svg{width:12px;height:12px}
  :is(.header.kf, header.header) .nav-burger{background:var(--navy);box-shadow:0 8px 20px rgba(26,58,107,.18)}
  :is(.header.kf, header.header) .nav-burger span{background:#fff}

  /* Mega-menu — 1 колонка */
  :is(.nav.kf-nav, nav.nav) .mega-center{grid-template-columns:1fr;padding:16px}
  :is(.nav.kf-nav, nav.nav) .mega-left a{padding:14px 18px;font-size:var(--fs-14)}

  /* CTA-блок */
  .cta-section{padding:0 0 56px}
  .cta-block{margin:0 16px}
  .cta-left{padding:32px 22px}
  .cta-left h2{font-size:26px}
  .cta-form .field-row{grid-template-columns:1fr}

  /* Page-hero на сервисных страницах */
  .page-hero{padding:36px 0 28px}
  .page-hero__wrap{padding:0 16px}
  .page-hero__h1{font-size:clamp(1.5rem,4.6vw,2rem);overflow-wrap:break-word;word-break:normal;hyphens:manual}
  .page-hero__sub{font-size:.95rem;overflow-wrap:break-word}
  .page-hero__bc{font-size:11px;margin-bottom:14px;gap:5px}

  /* Полный цикл услуг — компактнее */
  .kf-cycle{margin:32px 0}
  .kf-cycle__inner{padding:24px 18px}
  .kf-cycle__card{padding:20px 18px}
  .kf-cycle__title{font-size:16px}

  /* Контакты: карта и текст в столбик, iframe на всю ширину */
  .contacts_main{display:flex;flex-direction:column;gap:24px}
  .contact_map,
  .contact_map > div,
  .contact_map iframe{width:100%!important;max-width:100%!important}
  .contact_map iframe{height:320px}

  /* Контейнер post_article — компактнее */
  .post_article{padding-left:0;padding-right:0}

  /* Список постов категории — карточки в столбик уже на 768 */
  .post_article_main{gap:16px;flex-direction:column}
  .post_article_item_list,
  .post_article_item_main,
  .post_article_item_list.post_article_item_main{width:100%!important}

  /* Prose */
  .kf-content-shell .kf-wrap{padding:0 16px}
  .prose h1{font-size:28px}
  .prose h2{font-size:24px}
  .prose h3{font-size:20px}

  /* Footer */
  :is(.footer.kf-footer, footer.footer) .foot-bottom{flex-direction:column;align-items:flex-start;gap:10px;text-align:left}
  :is(.footer.kf-footer, footer.footer) .foot-bottom a{margin-left:0;margin-right:18px}

  /* === КАТАЛОГ: 768px === */

  /* Hero списка категорий */
  .cat-hero{padding:40px 0 32px}
  .cat-hero .kf-wrap{flex-direction:column;align-items:flex-start;gap:24px}
  .cat-hero h1{font-size:34px}
  .cat-hero .lead{font-size:15px}
  .cat-hero .stats{flex-wrap:wrap;gap:20px;width:100%}
  .cat-hero .stats .stat{flex:1 1 auto;min-width:120px}

  /* Сетка категорий: 3 → 2 */
  .cat-section{padding:48px 0}
  .cat-head h2{font-size:28px}
  .cat-grid{grid-template-columns:repeat(2,1fr);gap:14px}
  .cat-tile{min-height:240px}
  .cat-tile h3{font-size:18px}

  /* Hero детальной категории */
  .cat-d-hero .kf-wrap{padding:48px 16px 40px;flex-direction:column;align-items:flex-start;gap:24px}
  .cat-d-hero h1{font-size:32px;max-width:100%}
  .cat-d-hero .lead{font-size:14px}
  .cat-d-hero .counter{padding:14px 18px}
  .cat-d-hero .counter .v{font-size:32px}

  /* Сетка подразделов: 4 → 2 */
  .cat-d-section{padding:48px 0}
  .cat-d-head h2{font-size:24px}
  .cat-d-grid{grid-template-columns:repeat(2,1fr);gap:12px}
  .cat-d-tile{min-height:180px}

  /* Сетка товаров: 4 → 2 */
  .cat-d-products{grid-template-columns:repeat(2,1fr);gap:14px}
  .cat-d-prod-img{height:160px}
  .cat-d-prod-body{padding:12px 14px}
  .cat-d-prod-name{font-size:13px}
  .cat-d-prod-foot{flex-wrap:wrap;gap:6px}
  .cat-d-prod-foot .price{font-size:12px}

  /* Hero брендов */
  .materials-hero{padding:40px 0 32px}
  .materials-hero .kf-wrap{flex-direction:column;align-items:flex-start;gap:24px}
  .materials-hero h1{font-size:26px;overflow-wrap:break-word;word-break:normal;hyphens:manual;max-width:100%}
  .materials-hero .lead{font-size:14px;overflow-wrap:break-word}
  .materials-hero .stats{flex-wrap:wrap;gap:18px;width:100%}
  .materials-hero .stats .stat{flex:1 1 auto;min-width:90px}
  .materials-hero .stats .v{font-size:24px}

  /* Сетка брендов: 6 → 3 */
  .materials-section{padding:48px 0}
  .materials-head{margin-bottom:24px}
  .materials-head h2{font-size:26px}
  .brands-grid{grid-template-columns:repeat(3,1fr);gap:10px}
  .brand-card{padding:14px}
  .brand-card .brand-img{height:48px}
  .brand-card .brand-img img{max-height:48px;max-width:100px}

  /* Табы популярного: горизонт. скролл */
  .tabs{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .tabs::-webkit-scrollbar{display:none}
  .tabs button{flex-shrink:0;white-space:nowrap;padding:12px 14px;font-size:13px}
  .tab-pane.active{grid-template-columns:repeat(2,1fr);gap:14px}
  .prod-img{height:160px}
  .prod-body{padding:12px 14px}
  .prod-name{font-size:13px}

  /* Карточка товара: фото сверху, инфо снизу */
  .product-hero{padding:24px 0 40px}
  .product-hero .grid{grid-template-columns:1fr;gap:24px}
  .product-gallery{position:static}
  .product-gallery .main{aspect-ratio:4/3;height:auto}
  .product-gallery .thumbs{grid-template-columns:repeat(5,1fr);gap:6px}
  .product-info h1{font-size:24px}
  .product-info .meta{font-size:11px;gap:10px}
  .product-info .lead{font-size:14px;margin:0 0 18px}
  .product-specs{padding:14px 16px;margin-bottom:18px}
  .product-specs dt{flex:0 0 50%;font-size:12px}
  .product-specs dd{font-size:12px}
  .product-price{padding:16px 18px}
  .product-price .value{font-size:18px}
  .product-actions{flex-direction:column;gap:8px}
  .product-actions .btn{flex:1 1 100%;min-width:0;padding:12px 18px;font-size:13px}
  .product-feats{grid-template-columns:repeat(2,1fr);gap:12px;padding-top:18px}
  .product-feats .feat .t{font-size:11px}

  /* Хлебные крошки компактно */
  .product-breadcrumb-mini{padding:14px 0 0}
  .product-breadcrumb-mini ul{font-size:11px;gap:4px}
  .product-breadcrumb-mini li::after{margin-left:4px}

  /* Табы продукта: горизонт. скролл */
  .product-tabs-section{padding:32px 0}
  .product-tabs{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin-bottom:24px}
  .product-tabs::-webkit-scrollbar{display:none}
  .product-tabs button{flex-shrink:0;white-space:nowrap;padding:12px 16px;font-size:13px}
  .product-spec-table td{padding:10px 12px;font-size:13px}
  .product-delivery-list{grid-template-columns:1fr;gap:12px}
  .product-delivery-list .item{padding:14px 16px}
  .product-docs-list{grid-template-columns:1fr;gap:8px}

  /* Похожие товары: 4 → 2 */
  .product-related{padding:48px 0}
  .product-related h2{font-size:24px}
  .product-related .grid{grid-template-columns:repeat(2,1fr);gap:14px}

  /* Деталка бренда (старый шаблон) */
  .container_800{padding:0 16px}
  .post_article_service .news_post_image{display:flex;flex-direction:column;gap:18px}
  .image_brand_main{width:100%;text-align:center}
  .image_brand_main img{max-width:240px;height:auto}
  .desc_brand_main{width:100%}
  .news_post h1{font-size:26px}

  /* Сортировка/фильтры на бренд-деталке (старая разметка) */
  .category_sort_main{flex-direction:column;align-items:flex-start;gap:14px}
  .category_sort{flex-wrap:wrap;gap:10px}
  .subcategory_main{display:flex;flex-direction:column;gap:14px}
}

/* --- HOMEPAGE (из homepage.css) --- */
@media(max-width:768px){
  .cta-modal-box{grid-template-columns:1fr}
  .cta-modal-left{padding:40px 32px 24px}
  .cta-form{padding:24px 32px 40px}
}

/* --- HOMEPAGE (из homepage.css) --- */
@media (max-width:768px){
  .utility{font-size:var(--fs-12)}
  .utility .wrap > span:nth-of-type(2){display:none}  /* «Пн–Пт …» */

  .header .wrap{padding:10px 16px;gap:10px}
  .logo-image{height:52px;max-width:138px}
  :is(.footer.kf-footer, footer.footer) .foot-brand .logo-image{height:64px;max-width:168px;padding:7px 9px}
  .logo-mark{width:44px !important;height:44px !important}
  .logo-text b{font-size:16px}
  .logo-text span{font-size:10px}

  /* Поиск — на отдельной строке во всю ширину */
  .search{order:5;flex-basis:100%;height:42px}
  .search-cat{display:none}
  .search input{font-size:var(--fs-14);padding:0 12px}
  .search input::placeholder{font-size:var(--fs-13)}
  .search-btn{width:48px}

  .cta-primary{padding:10px 14px;font-size:var(--fs-13)}
  .cta-primary svg{width:12px;height:12px}

  /* Mega-center 2 → 1 */
  .mega-center{grid-template-columns:1fr;padding:16px}

  /* HERO */
  .hero .wrap{padding-top:44px;padding-bottom:48px}
  .hero-eyebrow{margin-bottom:20px;padding:6px 10px;font-size:11px}
  .hero h1.hero-title-main{font-size:clamp(26px,7vw,40px);overflow-wrap:break-word;word-break:normal;hyphens:manual;max-width:100%}
  .hero p.lead{font-size:15px;margin-bottom:28px;overflow-wrap:break-word}
  .hero-actions{margin-bottom:32px}
  .btn-amber,.btn-ghost{padding:14px 22px;font-size:14px;flex:1 1 auto;justify-content:center}
  .hero-badges{padding-top:20px;gap:10px}
  .hero-badges .hb{padding:8px 12px 8px 10px;width:100%;min-width:0;box-sizing:border-box}
  .hero-badges .hb > div{min-width:0;flex:1 1 auto;overflow-wrap:break-word}
  .hero-badges .hb-v,.hero-badges .hb-l{overflow-wrap:break-word;word-break:normal;white-space:normal}
  .hero-badges .hb-ico{width:30px;height:30px}

  /* Карточки категорий и проектов — текст переносится по словам, без разрыва внутри */
  .cat .body{padding:18px}
  .cat h3,.cat .meta{overflow-wrap:break-word;word-break:normal;max-width:100%;hyphens:manual}
  .cat h3{font-size:18px}
  .project .body{padding:18px}
  .project h4,.project .ind,.project .yr{overflow-wrap:break-word;word-break:normal;max-width:100%;hyphens:manual}
  .project h4{font-size:18px}
  .project .det{gap:14px;flex-wrap:wrap}

  /* Adv-strip → 1 колонка списком */
  .adv-strip .wrap{grid-template-columns:1fr;gap:0;padding:6px 16px}
  .adv-strip .item{padding:14px 0;border-bottom:1px solid var(--steel-100)}
  .adv-strip .item:last-child{border-bottom:none}

  /* Секции */
  .section{padding:48px 0}
  .section h2{font-size:28px}
  .section-head{margin-bottom:24px}
  .industries{grid-template-columns:repeat(2,1fr)}
  .industries--dark{grid-auto-rows:auto}
  .industries--dark .ind-card{min-height:200px}
  .projects{grid-template-columns:1fr}
  .brands{grid-template-columns:repeat(2,1fr)}
  .brand{padding:24px 18px;font-size:var(--fs-16)}
  .brand:nth-child(3n){border-right:1px solid var(--steel-200)}
  .brand:nth-child(2n){border-right:none}
  .certs{grid-template-columns:repeat(2,1fr)}
  .reviews{grid-template-columns:1fr}
  .review{padding:24px 22px}
  .facts{grid-template-columns:1fr}
  .fact{border-right:none;padding:32px 22px}
  .fact:not(:last-child){border-bottom:1px solid var(--line-soft)}
  .fact .v{font-size:42px}
  .products{grid-template-columns:1fr}

  /* CTA */
  .cta-block{margin:0 16px}
  .cta-left{padding:32px 22px}
  .cta-left h2{font-size:26px}
  .field-row{grid-template-columns:1fr}
  .cta-form{padding:24px 22px}

  /* Footer */
  .foot-bottom{flex-direction:column;align-items:flex-start;gap:10px;text-align:left}
  .foot-bottom a{margin-left:0;margin-right:18px}
}

/* =====================================================
   ── max-width: 700px
   ===================================================== */

/* --- GLOBALS (из base_new.css) --- */
@media (max-width: 700px){
    .related-posts{padding:48px 0}
    .related-posts__inner{padding:0 20px}
    .related-posts__grid{grid-template-columns:1fr}
    .related-posts__title{font-size:26px}
  }

/* =====================================================
   ── max-width: 640px
   ===================================================== */

/* --- HOMEPAGE (из homepage.css) --- */
@media(max-width:640px){.cta-strip-inner{flex-direction:column;align-items:flex-start;gap:20px}}

/* =====================================================
   ── max-width: 600px
   ===================================================== */

/* --- ARTICLES (из about.css) --- */
@media (max-width:600px){
  .about-hero{padding:64px 0 56px}
  .about-sec{padding:64px 0}
  .about-do{grid-template-columns:1fr}
  .about-facts{grid-template-columns:1fr}
  .about-facts .f{border-right:none;border-top:1px solid rgba(255,255,255,.08)!important}
  .about-facts .f:first-child{border-top:none!important}
  .about-hero-stats{flex-direction:column;gap:24px}
}

/* --- ARTICLES (из about.css) --- */
@media(max-width:600px){.about-hero-bc{font-size:11px;margin-bottom:20px}}

/* --- ARTICLES — legacy list pages (агент 3) на мобиле --- */
@media (max-width:600px){
  .post_article_main{grid-template-columns:1fr;gap:16px}
  .post_article_list_service{grid-template-columns:1fr;gap:16px}
  .post_article_item_main{padding:18px 18px 18px}
  .post_article_item_main .post_item_image{aspect-ratio:16 / 9}
  .post_project .post_article_item_main .post_item_image{aspect-ratio:16 / 10}
  .post_article > .post_article_item_3{padding:18px 18px}
  .reviews_top_main{flex-direction:column;align-items:flex-start;gap:14px}
  .review_write_btn .btn_mini{font-size:13px;padding:12px 18px}
  /* контактная карта — уменьшение на мобиле */
  .contact-map iframe{height:320px}
  /* prose img — защита от вылета */
  .prose img{margin:16px 0}
  .prose .table-wrap,.prose table{font-size:13px}
}

/* --- GLOBALS (из base_new.css) --- */
@media(max-width:600px){
  .second_block{padding:64px 0!important}
  .second_block_items{grid-template-columns:1fr!important}
  .second_block_item{border-right:none!important;border-bottom:1px solid rgba(255,255,255,.07)!important}
  .second_block_item:last-child{border-bottom:none!important}
}

/* --- GLOBALS (из base_new.css) --- */
@media (max-width:600px){
  .brands-grid{grid-template-columns:repeat(2,1fr)}
  .tab-pane.active{grid-template-columns:1fr}
  .materials-hero h1{font-size:32px}
}

/* --- GLOBALS (из base_new.css) --- */
@media (max-width:600px){
  .cat-grid{grid-template-columns:1fr}
  .cat-hero h1{font-size:30px}
  .cat-hero .stats{gap:20px}
  .cat-hero .stats .v{font-size:24px}
}

/* --- GLOBALS (из base_new.css) --- */
@media (max-width:600px){
  .cat-d-grid{grid-template-columns:repeat(2,1fr)}
  .cat-d-products{grid-template-columns:1fr}
  .cat-d-hero h1{font-size:28px}
  .cat-d-hero .kf-wrap{padding:48px 20px 40px}
  .cat-d-section{padding:48px 0}
}

/* --- GLOBALS (из base_new.css) --- */
@media (max-width:600px){
  .product-info h1{font-size:24px}
  .product-actions .btn{flex:1 1 100%;min-width:0}
  .product-feats{grid-template-columns:1fr}
  .product-related .grid{grid-template-columns:1fr}
  .product-gallery .thumbs{grid-template-columns:repeat(4,1fr)}
}

/* --- GLOBALS (из base_new.css) --- */
@media (max-width:600px){
  .contacts-sec{padding:48px 0}
  .contacts-wrap{padding:0 16px}
  .contacts-grid{grid-template-columns:1fr;margin-bottom:40px}
  .contact-card{padding:24px 20px}
  .req-list>div{flex-direction:column;gap:4px;align-items:flex-start}
  .req-list b{text-align:left}
}

/* --- GLOBALS (из base_new.css) --- */
@media(max-width:600px){.materials-hero-bc{font-size:11px;margin-bottom:18px}}

/* --- GLOBALS (из base_new.css) --- */
@media(max-width:600px){
  .brand-hero{padding:48px 0 64px}
  .brand-hero__logo{padding:28px 20px;min-height:140px}
  .brand-hero__logo img{max-height:90px}
  .brand-hero__sub{font-size:14px}
  .brand-hero__chips .chip{font-size:10px;padding:6px 10px}
  .brand-about{padding:48px 0}
  .brand-about__wrap{padding:0 16px}
}

/* =====================================================
   ── max-width: 480px
   ===================================================== */

/* --- ARTICLES (из about.css) --- */
@media (max-width:480px){
  .about-wrap{padding:0 16px}
  .about-hero{padding:48px 0 44px}
  .about-hero-inner{gap:28px}
  .about-hero h1{font-size:clamp(22px,6.5vw,30px);line-height:1.14;margin-bottom:18px;overflow-wrap:break-word;word-break:normal;hyphens:manual;max-width:100%}
  .about-hero h1 em{white-space:normal}
  .about-hero p.about-lead{font-size:15px;line-height:1.55;margin-bottom:28px;overflow-wrap:break-word}
  .about-hero-mark{padding:18px 18px;font-size:11px;line-height:1.6}
  .about-hero-stats{padding-top:24px;margin-top:28px;gap:20px}
  .about-hero-stats .st .v{font-size:clamp(28px,8vw,40px)}
  .about-hero-stats .st .l{font-size:12px;max-width:none}
  .about-sec{padding:48px 0}
  .about-sec h2{font-size:clamp(24px,5.5vw,32px);line-height:1.18}
  .about-sec .sub{font-size:14px}
  .about-sec-head{margin-bottom:32px}
  .about-kicker{font-size:10px;letter-spacing:.16em}
  .about-do{gap:14px}
  .about-do-card{padding:22px 20px}
  .about-do-card h3{font-size:16px}
  .about-do-card p{font-size:13px}
  .about-mission{gap:22px}
  .about-mission .right,.about-mission .prose{font-size:14px;line-height:1.65}
  .about-facts .f{padding:32px 22px}
  .about-facts .f .tag{top:20px;right:20px}
  .about-facts .f .v{font-size:clamp(28px,8vw,40px)}
  .about-facts .f .l{font-size:13px}
  .about-tcard{padding:26px 22px 24px}
  .about-tcard .avatar{width:64px;height:64px;font-size:20px;margin-bottom:16px}
  .about-tcard h4{font-size:19px}
  .about-tcard p{font-size:13px}
  .about-timeline{padding-left:0}
  .about-timeline::before{left:7px}
  .about-tl-item{padding:0 0 40px 28px}
  .about-tl-item::before{left:-23px;width:18px;height:18px;border-width:2px}
  .about-tl-item .yr{font-size:20px;flex-wrap:wrap;gap:10px}
  .about-tl-item .yr .badge{font-size:9px}
  .about-tl-item h4{font-size:17px}
  .about-tl-item p{font-size:14px}
}

/* --- ARTICLES — legacy list pages (агент 3) на узком мобайле --- */
@media (max-width:480px){
  .page-new .container,
  body.page-new > .container,
  body.page_body > .container,
  .post_body .container,
  .contacts .container{padding:0 16px}
  .post_article_item_main{padding:16px 16px}
  .post_article_item_main .post_item_image{margin:0 -16px 4px}
  .post_project .post_article_item_main h2,
  .post_project .post_article_item_main .desc_art_post,
  .post_project .post_article_item_main .news_btn_main{padding-left:16px;padding-right:16px}
  .post_article > .post_article_item_3{padding:16px 16px}
  .post_article > .post_article_item_3 h2{font-size:16px}
  .reviews_top_main h1{font-size:24px}
  .review_write_btn .btn_mini{font-size:12px;padding:11px 16px;letter-spacing:.04em}
  .post_body .news_post_image .image_special_main{aspect-ratio:4 / 3}
  .post_body .news_post_image .desc_special_main h1{font-size:22px}
  .post_body .news_post_image .short_post{font-size:14.5px}
  .banner_post .banner_top_item_img img{max-height:280px}
  .banner_post .slider_post{padding:0 16px}
  .banner_post .slider_post h1,
  .banner_post .slider_post h2{font-size:clamp(20px,5.4vw,28px)}
  .banner_post .slider_post p{font-size:14px}
  /* contact-map — самое узкое */
  .contact-map iframe{height:280px}
}

/* --- GLOBALS (из base_new.css) --- */
@media (max-width:480px){
  .kf-wrap,
  .utility .wrap, header.header > .wrap, nav.nav > .wrap, footer.footer > .wrap{padding:0 14px}

  /* Лого без подписи «поставки с 2008», только марка + название */
  :is(.header.kf, header.header) .logo-image{height:46px;max-width:122px}
  :is(.footer.kf-footer, footer.footer) .foot-brand .logo-image{height:58px;max-width:152px;padding:6px 8px}
  :is(.header.kf, header.header) .logo-text span{display:none}

  /* CTA «Получить КП» — только иконка + укороченный текст */
  :is(.header.kf, header.header) .cta-primary{padding:9px 12px;font-size:var(--fs-12)}
  :is(.header.kf, header.header) .nav-burger{width:42px;height:42px}

  /* Catalog-кнопка во всю ширину */
  :is(.nav.kf-nav, nav.nav) .nav-catalog{width:100%;justify-content:flex-start}
  :is(.nav.kf-nav, nav.nav) :is(.kf-wrap,.wrap){padding:0 14px}

  /* Footer 2 → 1 колонка */
  :is(.footer.kf-footer, footer.footer) .foot-grid{grid-template-columns:1fr;gap:28px;padding-bottom:32px}
  :is(.footer.kf-footer, footer.footer) .foot-brand{grid-column:auto}
  :is(.footer.kf-footer, footer.footer) :is(.kf-wrap,.wrap){padding:0 16px}

  /* CTA-блок */
  .cta-block{margin:0 12px;border-radius:var(--r-md)}
  .cta-left{padding:24px 18px}
  .cta-left h2{font-size:22px}
  .cta-form{padding:24px 18px}

  /* Prose */
  .prose h1{font-size:24px}
  .prose h2{font-size:20px}
  .prose h3{font-size:17px}
  .prose p{font-size:15px}

  /* Page-hero */
  .page-hero{padding:28px 0 22px}
  .page-hero__wrap{padding:0 14px}
  .page-hero__h1{font-size:clamp(1.35rem,6vw,1.75rem);line-height:1.18;overflow-wrap:break-word;word-break:normal;hyphens:manual;max-width:100%}
  .page-hero__sub{font-size:.9rem;line-height:1.5;overflow-wrap:break-word}
  .page-hero__bc{font-size:10.5px;gap:4px;margin-bottom:12px}
  .page-hero__bc-cur{
    overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:55vw;display:inline-block;vertical-align:bottom;
  }

  /* Полный цикл услуг — ещё компактнее */
  .kf-cycle{margin:24px 0}
  .kf-cycle__inner{padding:20px 14px}
  .kf-cycle__grid{gap:12px}
  .kf-cycle__card{padding:18px 16px}
  .kf-cycle__title{font-size:15px}
  .kf-cycle__desc{font-size:12.5px}

  /* Контакты: карта меньше */
  .contact_map iframe{height:260px!important}

  /* CTA-форма: ещё компактнее */
  .cta-form h3{font-size:20px}
  .cta-form .field input,
  .cta-form .field textarea,
  .cta-form .field select{font-size:13.5px;padding:10px 12px}
  .cta-submit{font-size:14px;padding:14px 18px}

  /* post_article: контейнер во всю ширину, без боковых паддингов */
  .post_article{padding:0}
  .post_article .news_post h1{font-size:22px;line-height:1.2}

  /* Список постов категории — карточки в столбик */
  .post_article_main{flex-direction:column;gap:14px}
  .post_article_item_list,
  .post_article_item_main,
  .post_article_item_list.post_article_item_main{width:100%!important}
  .post_article_h1{font-size:24px;margin-top:20px;margin-bottom:18px}

  /* Аккордеон quest на 480: уменьшаем шрифт */
  .quest_btn,
  .quest_btn p,.quest_btn strong,.quest_btn span{font-size:14px!important;padding-right:48px!important}
  .quest_desc p{font-size:13px!important}

  /* Offcanvas (старый bootstrap) — растянуть пошире */
  #offcanvasExample{width:88vw !important;max-width:360px}

  /* === КАТАЛОГ: 480px === */

  /* Hero списка категорий */
  .cat-hero{padding:32px 0 24px}
  .cat-hero h1{font-size:26px}
  .cat-hero .lead{font-size:14px}
  .cat-hero .stats{gap:14px}
  .cat-hero .stats .v{font-size:22px}
  .cat-hero .stats .l{font-size:11px}

  /* Сетка категорий: 2 → 1 */
  .cat-section{padding:36px 0}
  .cat-head{margin-bottom:24px}
  .cat-head h2{font-size:22px}
  .cat-head .sub{font-size:14px}
  .cat-grid{grid-template-columns:1fr;gap:12px}
  .cat-tile{min-height:280px}

  /* Hero детальной категории */
  .cat-d-hero .kf-wrap{padding:36px 14px 32px;gap:18px}
  .cat-d-hero h1{font-size:24px}
  .cat-d-hero .lead{font-size:13px}
  .cat-d-hero .counter{padding:12px 14px;align-self:stretch}
  .cat-d-hero .counter .v{font-size:26px}

  /* Сетка подразделов: 2 → 1 */
  .cat-d-section{padding:36px 0}
  .cat-d-head h2{font-size:20px}
  .cat-d-grid{grid-template-columns:1fr;gap:10px}
  .cat-d-tile{min-height:160px}

  /* Сетка товаров: 2 → 1 */
  .cat-d-products{grid-template-columns:1fr;gap:12px}
  .cat-d-prod-img{height:200px}

  /* Пагинация компактно */
  .cat-d-pagination a,.cat-d-pagination .current-page{padding:8px 12px;font-size:13px}

  /* Hero брендов */
  .materials-hero{padding:32px 0 24px}
  .materials-hero h1{font-size:24px}
  .materials-hero .lead{font-size:13px}
  .materials-hero .stats{gap:12px}
  .materials-hero .stats .stat{min-width:0}
  .materials-hero .stats .v{font-size:20px}
  .materials-hero .stats .l{font-size:10px}

  /* Сетка брендов: 3 → 2 */
  .materials-section{padding:36px 0}
  .materials-head h2{font-size:22px}
  .materials-head .sub{font-size:13px}
  .brands-grid{grid-template-columns:repeat(2,1fr);gap:8px}
  .brand-card{padding:12px}
  .brand-card .brand-img{height:42px}
  .brand-card .brand-img img{max-height:42px;max-width:90px}
  .brand-card .brand-name{font-size:12px}

  /* Табы популярного: 1 колонка */
  .tab-pane.active{grid-template-columns:1fr;gap:12px}
  .prod-img{height:200px}

  /* Карточка товара */
  .product-hero{padding:18px 0 32px}
  .product-hero .grid{gap:18px}
  .product-gallery .thumbs{grid-template-columns:repeat(4,1fr)}
  .product-info h1{font-size:20px;line-height:1.2}
  .product-info .meta{font-size:11px;gap:8px}
  .product-info .lead{font-size:13px}
  .product-specs{padding:12px 14px}
  .product-specs .row{padding:8px 0}
  .product-specs dt,.product-specs dd{font-size:12px}
  .product-price{padding:14px 16px}
  .product-price .value{font-size:16px}
  .product-price .hint{font-size:12px}
  .product-actions .btn{padding:11px 16px;font-size:12px}
  .product-spec-link{font-size:12px;margin-bottom:18px}
  .product-feats{grid-template-columns:1fr;gap:10px}

  /* Хлебные крошки */
  .product-breadcrumb-mini ul{font-size:11px}

  /* Табы продукта */
  .product-tabs-section{padding:24px 0}
  .product-tabs button{padding:10px 12px;font-size:12px}
  .product-tab-pane .prose{font-size:14px}
  .product-spec-table td{padding:8px 10px;font-size:12px}
  .product-spec-table td:first-child{width:45%}

  /* Похожие: 1 колонка */
  .product-related{padding:36px 0}
  .product-related h2{font-size:20px}
  .product-related .grid{grid-template-columns:1fr;gap:12px}

  /* Деталка бренда */
  .news_post h1{font-size:22px}
  .image_brand_main img{max-width:200px}
}

/* --- HOMEPAGE (из homepage.css) --- */
@media (max-width:480px){
  .wrap{padding:0 14px}

  /* Лого без подписи */
  .logo-image{height:46px;max-width:122px}
  :is(.footer.kf-footer, footer.footer) .foot-brand .logo-image{height:58px;max-width:152px;padding:6px 8px}
  .logo-text span{display:none}

  /* CTA в header — компактная */
  .cta-primary{padding:8px 12px;font-size:var(--fs-12)}

  /* Catalog-кнопка во всю ширину строки nav */
  .nav .wrap{padding:0 14px}
  .nav-catalog{width:100%;justify-content:flex-start}

  /* HERO ещё немного ужать */
  .hero .wrap{padding-top:36px;padding-bottom:40px;max-width:100%;overflow:hidden}
  .hero-content{min-width:0;max-width:100%;width:100%}
  .hero-title-main{font-size:clamp(20px,7vw,28px) !important;line-height:1.1 !important;letter-spacing:-.01em;overflow-wrap:break-word !important;word-break:normal !important;hyphens:manual !important;max-width:100% !important}
  .hero p.lead{font-size:14px;overflow-wrap:break-word;max-width:100%}
  .hero-actions{flex-direction:column !important;align-items:stretch !important;width:100% !important;flex-wrap:wrap}
  .btn-amber,.btn-ghost{width:100% !important;padding:13px 18px;flex:0 0 auto !important;box-sizing:border-box}
  .hero-badges{flex-direction:column;align-items:stretch;width:100%}
  .hero-badges .hb{width:100%;min-width:0;box-sizing:border-box;text-align:left}
  .hero-badges .hb > div{min-width:0;flex:1 1 auto;overflow:hidden}
  .hero-badges .hb-v,.hero-badges .hb-l{overflow-wrap:break-word;word-break:normal;white-space:normal}

  /* Сетки → 1 колонка */
  .industries{grid-template-columns:1fr}
  .brands{grid-template-columns:1fr}
  .brand{border-right:none;border-bottom:1px solid var(--steel-200)}
  .brand:last-child{border-bottom:none}
  .certs{grid-template-columns:1fr}

  /* Категории — 1 колонка на узком экране (перекрываем !important из base) */
  .cats{grid-template-columns:1fr !important;gap:14px}
  .cat{height:240px !important;aspect-ratio:auto !important;width:100%;min-width:0}
  .cat .body{padding:16px}
  .cat h3{font-size:17px;margin-bottom:8px;overflow-wrap:break-word;word-break:normal;hyphens:manual;max-width:100%}
  .cat .meta{font-size:13px;margin-bottom:10px;overflow-wrap:break-word;max-width:100%}

  /* Проекты — 1 колонка, заголовки переносятся */
  .projects{grid-template-columns:1fr}
  .project{min-height:280px;aspect-ratio:auto;width:100%;min-width:0}
  .project .body{padding:16px}
  .project h4{font-size:18px;overflow-wrap:break-word;word-break:normal;hyphens:manual;max-width:100%}
  .project .ind,.project .yr{font-size:11px;overflow-wrap:break-word}
  .project .det{gap:12px;flex-wrap:wrap}

  .section{padding:40px 0}
  .section h2{font-size:24px;overflow-wrap:break-word;word-break:normal;hyphens:manual}

  /* Footer 2 → 1 */
  .foot-grid{grid-template-columns:1fr;gap:28px;padding-bottom:32px}
  .foot-brand{grid-column:auto}

  /* CTA */
  .cta-block{margin:0 12px;border-radius:var(--r-md)}
  .cta-left{padding:24px 18px}
  .cta-left h2{font-size:22px}
  .cta-form{padding:24px 18px}
  .cta-modal-overlay{padding:12px}
  .cta-modal-left{padding:28px 20px 16px}
}

/* =====================================================
   ── max-width: 360px
   ===================================================== */

/* --- HOMEPAGE (из homepage.css) --- */
@media (max-width:360px){
  .wrap{padding:0 10px}

  /* HERO h1 — гарантированно влезает в 300px без разрыва слов */
  .hero .wrap{padding-top:28px;padding-bottom:32px}
  .hero-title-main{
    font-size:22px;
    line-height:1.1;letter-spacing:-.02em;
    overflow-wrap:break-word;word-break:normal;hyphens:manual;
    max-width:100%;
  }
  .hero p.lead{font-size:13px;line-height:1.45;margin-bottom:20px;overflow-wrap:break-word}
  .hero-actions{gap:10px;margin-bottom:24px}
  .btn-amber,.btn-ghost{padding:12px 14px;font-size:13px}

  /* HERO badges */
  .hero-badges{padding-top:16px;gap:8px}
  .hero-badges .hb{padding:8px 10px;width:100%;box-sizing:border-box}
  .hero-badges .hb-ico{width:26px;height:26px}
  .hero-badges .hb-ico svg{width:14px;height:14px}
  .hero-badges .hb-v{font-size:12px}
  .hero-badges .hb-l{font-size:11px}

  /* Категории — карточки полной ширины */
  .cats{grid-template-columns:1fr !important;gap:12px}
  .cat{height:220px !important;aspect-ratio:auto !important;width:100%;min-width:0}
  .cat .body{padding:14px}
  .cat h3{font-size:16px;line-height:1.2}
  .cat .meta{font-size:12px}

  /* Проекты — карточки полной ширины */
  .projects{grid-template-columns:1fr;gap:16px}
  .project{min-height:260px;aspect-ratio:auto;width:100%;min-width:0}
  .project .body{padding:14px}
  .project h4{font-size:16px;line-height:1.2}
  .project .det{gap:10px}

  .section{padding:32px 0}
  .section h2{font-size:22px;line-height:1.15}
  .section-head{margin-bottom:20px}
}


/* =====================================================
   ── Хвост: CATALOG-добавки (агент 2 — медиа для каталога)
   Сюда агент 2 добавляет новые @media для каталога
   ===================================================== */

/* ── Промежуточная ширина 1025–1100 (фикс 1060) ───────
   На 1060 .brands-grid из 6 колонок даёт 182px карточки — узко.
   На этом же диапазоне .brand-hero__inner ещё 2 колонки.
   .cta-block ломается (gtc 1.1fr/1fr суммарно >контейнера). */
@media (min-width:1025px) and (max-width:1100px){
  .brands-grid{grid-template-columns:repeat(5,1fr);gap:12px}
  .brand-card{padding:20px 16px;min-height:148px}
  .brand-card .brand-img{height:56px}
  .brand-card .brand-img img{max-height:56px;max-width:120px}
  /* .cta-block: переходим в 1 колонку раньше, чтобы не было overflow */
  .cta-block{grid-template-columns:1fr;margin:0 16px}
  .cta-left{padding:40px 28px}
  .cta-left h2{font-size:32px}
  .cta-form{padding:32px 28px}
  /* .brand-hero: укладываем логотип сверху, инфу под ним */
  .brand-hero__inner{grid-template-columns:1fr;gap:28px}
  .brand-hero__logo{min-height:160px;padding:32px 28px}
  .brand-hero__logo img{max-height:110px}
}

/* ── ≤1024: старая разметка каталога — 3 колонки ── */
@media (max-width:1024px){
  .subcategory_main{grid-template-columns:repeat(3,1fr);gap:16px}
  .content_main.category_index > .container,
  .category_index > .container,
  .search_top_main > .container,
  .search_top_main .container{padding:0 20px}
}

/* ── ≤768: фиксы для шаблона brand_material_list (старая разметка) ──
   subcategory_main/product_main не имеют media. */
@media (max-width:768px){
  .subcategory_main{grid-template-columns:repeat(2,1fr);gap:14px}
  .product_main{min-width:0}
  .product_main img,.product_main picture img{max-width:100%;height:auto}
  /* Сортировка фильтров — в столбик */
  .category_sort_main{flex-direction:column;align-items:stretch;gap:14px}
  .category_sort{flex-wrap:wrap;gap:10px}
  .btn_sort{font-size:13px}
  .dropdown-menu{min-width:0;max-width:90vw}
  .prod_top_img{height:200px}
  .title_prod{font-size:13px}
  .category_sort_main .title_index h2,
  .category_sort_main .subcategory_title p,
  .title_index_search h2{font-size:22px}
}

/* ── ≤480: subcategory_main в 1 колонку, h1 каталога без разрыва слов ── */
@media (max-width:480px){
  .subcategory_main{grid-template-columns:1fr;gap:12px}
  .prod_top_img{height:220px}
  .content_main.category_index > .container,
  .category_index > .container,
  .search_top_main > .container,
  .search_top_main .container{padding:0 14px}
  .category_sort_main .title_index h2,
  .category_sort_main .subcategory_title p,
  .title_index_search h2{font-size:20px}
  .title_index_search p{font-size:15px}
  /* Гарантируем break-word и для старой разметки заголовков */
  .news_post h1,
  .post_article_h1,
  .desc_brand_main h1,
  .desc_brand_main h2{overflow-wrap:break-word;word-break:normal;hyphens:manual}
}

/* ── ≤375: ещё ужать карточки товара в каталоге ── */
@media (max-width:375px){
  .prod-img,
  .cat-d-prod-img{height:180px}
  .prod-body,.cat-d-prod-body{padding:12px 14px}
  .prod-name,.cat-d-prod-name{font-size:13px;line-height:1.32}
  .prod-foot,.cat-d-prod-foot{flex-wrap:wrap;gap:6px;padding-top:10px}
}

/* ── ≤320: компактный материалс-хиро, статы во всю ширину ── */
@media (max-width:320px){
  .kf-wrap{padding:0 12px}
  .materials-hero{padding:28px 0 22px}
  .materials-hero h1{font-size:22px;line-height:1.15}
  .materials-hero .lead{font-size:12.5px}
  .materials-hero .stats{flex-direction:column;gap:10px}
  .materials-hero .stats .stat{flex:1 1 100%;min-width:0}
  .materials-hero .stats .v{font-size:20px}
  .brands-grid{gap:8px}
  .brand-card{padding:10px;min-height:96px}
  .brand-card .brand-img{height:36px}
  .brand-card .brand-img img{max-height:36px;max-width:80px}
  .brand-card .brand-name{font-size:11px}
  .tabs button{padding:10px 8px;font-size:12px}
  .tab-pane.active{grid-template-columns:1fr;gap:10px}
  .prod-img,.cat-d-prod-img{height:170px}
  .prod-body,.cat-d-prod-body{padding:11px 12px}
  .prod-name,.cat-d-prod-name{font-size:12.5px}
  /* CTA в каталоге — компактнее */
  .cta-block{margin:0 10px}
  .cta-left{padding:20px 14px}
  .cta-left h2{font-size:20px;line-height:1.15}
  .cta-form{padding:20px 14px}
  .cta-form h3{font-size:18px}
}

/* =====================================================
   === CATALOG / PRODUCT DETAIL === мобильные доводки
   ===================================================== */
@media (max-width:480px){
  /* Хлебные крошки на мобиле — компактные и аккуратные */
  .breadcrumbs_main,
  .product-breadcrumb-mini{padding:10px 0;font-size:12px}
  .breadcrumbs_main.container{padding:10px 14px}
  .breadcrumbs_main ul,
  .product-breadcrumb-mini ul{font-size:12px}
  .breadcrumbs_main ul li::after,
  .product-breadcrumb-mini li::after{margin:0 5px;font-size:13px}
  .breadcrumbs_main ul li:last-child,
  .product-breadcrumb-mini li:last-child{max-width:55vw}

  /* HERO товара компактнее */
  .product-hero{padding:16px 0 32px}
  .product-hero .grid{gap:18px}
  .product-gallery .main{aspect-ratio:1/1;border-radius:10px}
  .product-gallery .thumbs{grid-template-columns:repeat(4,1fr);gap:5px}
  .product-gallery .thumbs button{border-radius:6px}
  .product-gallery .badge-art{font-size:10px;padding:5px 10px;top:10px;right:10px}

  /* Инфо-блок */
  .product-info .kicker{font-size:10px;letter-spacing:.12em;margin-bottom:10px}
  .product-info h1{font-size:20px;line-height:1.2;margin:0 0 10px;overflow-wrap:break-word;word-break:normal;hyphens:manual}
  .product-info .meta{font-size:10px;letter-spacing:.04em;margin-bottom:14px;gap:8px}
  .product-info .lead{font-size:13px;line-height:1.5}

  /* Спеки */
  .product-specs{padding:12px 14px;margin-bottom:14px;border-radius:8px}
  .product-specs .row{padding:8px 0}
  .product-specs dt,.product-specs dd{font-size:12px}
  .product-specs dt{flex:0 0 45%}

  /* Цена */
  .product-price{padding:14px 16px;margin-bottom:14px;border-radius:10px}
  .product-price .label{font-size:11px}
  .product-price .value{font-size:17px;line-height:1.25}
  .product-price .hint{font-size:11px;margin-top:6px;line-height:1.4}

  /* Кнопки на мобиле — крупные, во всю ширину, в столбик */
  .product-actions{flex-direction:column;gap:8px;margin-bottom:14px}
  .product-actions .btn{width:100%;flex:1 1 100%;padding:14px 16px;font-size:13px;letter-spacing:.06em}

  /* Фичи 2×2 */
  .product-feats{grid-template-columns:repeat(2,1fr);gap:10px;padding-top:14px}
  .product-feats .feat{padding:10px;gap:8px}
  .product-feats .feat .ico{width:32px;height:32px}
  .product-feats .feat .ico svg{width:16px;height:16px}
  .product-feats .feat .t{font-size:10.5px;line-height:1.3}

  /* Табы — горизонтальный скролл, компактные */
  .product-tabs-section{padding:24px 0}
  .product-tabs{gap:0;border-bottom:1px solid var(--steel-200);margin-bottom:18px}
  .product-tabs button{padding:10px 14px;font-size:12px;letter-spacing:.04em}
  .product-tab-pane .prose{font-size:14px;line-height:1.6}
  .product-tab-pane .prose h1{font-size:20px}
  .product-tab-pane .prose h2{font-size:18px}
  .product-tab-pane .prose h3{font-size:16px}
  .product-tab-pane .prose ul li{font-size:13px;line-height:1.5}

  /* Таблица характеристик в скролле — на мобиле column-stack */
  .product-spec-table{display:block;width:100%}
  .product-spec-table tbody{display:block;width:100%}
  .product-spec-table tr{display:flex;flex-direction:column;border-bottom:1px solid var(--steel-100,#f3f4f6);padding:8px 0}
  .product-spec-table td{display:block;padding:2px 0;font-size:12px;border:none}
  .product-spec-table td:first-child{color:var(--steel-500);font-size:11px;text-transform:uppercase;letter-spacing:.06em}
  .product-spec-table td:last-child{color:var(--steel-900);font-weight:600;font-size:13px}

  /* Доставка / документы */
  .product-delivery-list .item{padding:12px 14px;gap:10px}
  .product-delivery-list h4{font-size:14px;margin:0 0 4px}
  .product-delivery-list p{font-size:12px;line-height:1.45}
  .product-docs-list .doc{padding:10px 12px;font-size:12px}
  .product-docs-list .pdf{width:36px;height:36px;font-size:9px}

  /* Похожие товары — 1 колонка для самой узкой мобилы */
  .product-related{padding:32px 0}
  .product-related h2{font-size:20px}
  .product-related .head{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:18px}
  .product-related .grid{grid-template-columns:1fr;gap:12px}
}

@media (max-width:360px){
  .product-hero{padding:12px 0 24px}
  .product-info h1{font-size:18px}
  .product-feats{grid-template-columns:1fr;gap:8px}
  .product-tabs button{padding:10px 10px;font-size:11px}
}
