/* Адаптив прототипа. Десктоп (от 1200 px) зафиксирован в CSS сайта и здесь не меняется.
   Планшет: 768–1199 px, макет на 768. Мобильный: до 767 px, макет на 390.
   Правила лежат в слое: !important внутри @layer сильнее любого !important вне слоя.
*/
@layer adaptive {

:root {
  --a-gutter: 32px;
  --a-section-y: 64px;
  --a-accent: #e68125;
  --a-h1: 44px;
  --a-h2: 36px;
  --a-h3: 21px;
  --a-text: 16px;
  --a-watermark: 86px;
}

@media (max-width: 1199px) {
  html, body { overflow-x: clip !important; width: 100% !important; min-width: 0 !important; }
  img, video, iframe { max-width: 100%; }

  /* --rec-h: высота блока на десктопе из атрибута style */
  main * { --rec-h: auto !important; --rec-h-mob: auto !important; }
  .sh1-prose { min-height: 0 !important; padding-block: 12px !important; }

  /* Контейнеры */
  .container, .yandex-container {
    width: auto !important; max-width: none !important; min-width: 0 !important;
    margin-inline: 0 !important; padding-inline: var(--a-gutter) !important;
  }
  .yandex-container .container, .home-cases .container { padding-inline: 0 !important; }
  .home-section, .sh1-block, .sh1-heading, .sh1-works, .sh1-cases, .sh1-aspects, .sh3-cat,
  .yandex-tariffs, .yandex-intro, .home-reviews, .review-shot-gallery, .home-process,
  .home-cases, .sh1-final, .home-contacts {
    height: auto !important; min-height: 0 !important; width: auto !important;
  }

  /* Шапка и меню */
  .site-header-demo {
    display: flex !important; align-items: center !important; justify-content: flex-start !important; gap: 12px !important;
    width: 100% !important; min-height: 72px !important; height: auto !important; padding: 12px var(--a-gutter) !important;
    grid-template-columns: none !important; box-sizing: border-box !important;
  }
  .site-header-demo .site-logo { margin-right: auto !important; position: static !important; width: 180px !important; flex: none !important; }
  .site-header-demo .site-logo img { width: 100% !important; height: auto !important; }
  .site-header-demo .header-socials { position: static !important; display: flex !important; margin: 0 !important; }
  .site-header-demo .header-consult { position: static !important; width: auto !important; margin: 0 !important; padding-inline: 18px !important; white-space: nowrap; }
  .site-header-demo > nav { display: none !important; }
  .site-header-demo .menu-toggle {
    display: flex !important; flex-direction: column; justify-content: center; align-items: center; gap: 5px;
    position: relative !important; flex: none; width: 44px !important; height: 44px !important; margin: 0 !important; padding: 0 !important;
    border: 1px solid var(--a-accent) !important; border-radius: 50% !important; background: #fff !important; cursor: pointer; z-index: 1002;
    top: auto !important; right: auto !important; left: auto !important;
  }
  .site-header-demo .menu-toggle i { display: block !important; position: static !important; width: 20px !important; height: 2px !important; background: #1b1b1b !important; transition: transform .2s, opacity .2s; transform: none; }
  .site-header-demo.is-menu-open .menu-toggle i:nth-child(1) { transform: translateY(7px) rotate(45deg); }
  .site-header-demo.is-menu-open .menu-toggle i:nth-child(2) { opacity: 0; }
  .site-header-demo.is-menu-open .menu-toggle i:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
  .site-header-demo.is-menu-open > nav {
    display: flex !important; flex-direction: column !important; align-items: stretch !important; gap: 0 !important;
    position: fixed !important; inset: 0 !important; left: 0 !important; top: 0 !important; transform: none !important;
    width: 100% !important; height: 100dvh !important; max-width: none !important; margin: 0 !important;
    padding: 84px var(--a-gutter) 32px !important; overflow-y: auto !important; box-sizing: border-box !important;
    background: #fff !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; z-index: 1001;
  }
  .site-header-demo > nav > a, .site-header-demo > nav .menu-dropdown > summary {
    display: flex !important; justify-content: space-between !important; align-items: center;
    width: auto !important; height: auto !important; padding: 16px 0 !important; font-size: 20px !important; font-weight: 600 !important;
    color: #1b1b1b !important; background: none !important; border: 0 !important; border-bottom: 1px solid #eee !important; border-radius: 0 !important; box-shadow: none !important;
  }
  .site-header-demo .menu-dropdown { position: static !important; width: 100% !important; }
  .site-header-demo .services-mega {
    position: static !important; display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 20px !important;
    width: auto !important; max-width: none !important; max-height: none !important; overflow: visible !important; transform: none !important; opacity: 1 !important; visibility: visible !important;
    margin: 0 !important; padding: 16px 0 !important; box-shadow: none !important; border: 0 !important; background: none !important; border-radius: 0 !important;
  }
  .site-header-demo .services-mega__column { width: auto !important; min-width: 0 !important; grid-column: auto !important; grid-row: auto !important; grid-area: auto !important; }
  .site-header-demo .services-mega { grid-template-areas: none !important; grid-auto-flow: row !important; }
  body.menu-locked { overflow: hidden !important; }

  /* Заголовки секций с водяным знаком */
  .section-title, .sh1-section-head {
    display: block !important; position: relative !important; height: auto !important; min-height: 0 !important;
    width: auto !important; margin: 0 0 32px !important; padding: calc(var(--a-watermark) * .55) 0 0 !important; overflow: clip !important;
  }
  .section-title > span, .sh1-watermark {
    position: absolute !important; top: 0 !important; left: 0 !important; right: auto !important; bottom: auto !important;
    width: auto !important; height: auto !important; margin: 0 !important; transform: none !important;
    font-size: var(--a-watermark) !important; line-height: 1 !important; white-space: nowrap !important;
  }
  .section-title h2, .sh1-section-head h2 {
    white-space: normal !important;
    position: relative !important; top: auto !important; left: auto !important; right: auto !important; bottom: auto !important; transform: none !important;
    width: auto !important; max-width: 100% !important; margin: 0 !important; font-size: var(--a-h2) !important; line-height: 1.15 !important; text-align: left !important;
  }
  h1, h2, h3 { overflow-wrap: anywhere !important; }
  h3 { white-space: normal !important; max-width: 100%; }
  .sh1-section-head h1 { hyphens: auto; }
  .home-heading, .sh1-heading { display: block !important; padding: var(--a-section-y) 0 0 !important; margin: 0 !important; }
  .home-heading .section-title, .sh1-heading .sh1-section-head { margin-bottom: 8px !important; }
  .sh1-final > .yandex-container > h2, .sh1-final > .container > h2 { width: auto !important; font-size: var(--a-h2) !important; line-height: 1.15 !important; }
  .sh1-final > .yandex-container > p, .sh1-final > .container > p { width: auto !important; max-width: 100% !important; }

  /* Первый экран главной */
  .home-hero {
    position: relative !important; display: block !important; overflow: hidden !important;
    height: auto !important; max-height: none !important; width: auto !important;
    padding: 96px var(--a-gutter) 0 !important; min-height: 620px !important;
  }
  .home-hero .hero-content {
    position: relative !important; inset: auto !important; left: auto !important; top: auto !important; transform: none !important; z-index: 2;
    width: 62% !important; max-width: none !important; margin: 0 !important; padding: 0 0 48px !important;
  }
  .home-hero h1 { width: auto !important; margin: 0 0 20px !important; font-size: var(--a-h1) !important; line-height: 1.12 !important; }
  .home-hero .hero-benefits { width: auto !important; margin: 0 0 20px !important; }
  .home-hero .hero-benefits li { position: relative !important; padding-left: 22px !important; font-size: 17px !important; line-height: 1.35 !important; margin: 0 0 8px !important; height: auto !important; width: auto !important; }
  .home-hero .hero-benefits li::before { position: absolute !important; left: 0 !important; top: .45em !important; margin: 0 !important; }
  .home-hero .hero-cta-icon { flex: none !important; width: 30px !important; height: 30px !important; }
  .home-hero .audit-link b { font-size: 14px !important; line-height: 1.25 !important; }
  .home-hero .hero-content > p { width: auto !important; margin: 0 0 24px !important; font-size: 18px !important; line-height: 1.35 !important; }
  .home-hero .row { width: auto !important; flex-direction: column !important; align-items: flex-start !important; gap: 12px !important; margin: 0 !important; }
  .home-hero .hero-audit-cta { position: static !important; width: 100% !important; max-width: 340px !important; min-height: 52px; font-size: 15px !important; box-sizing: border-box; }
  .home-hero .audit-link { position: static !important; width: auto !important; margin: 0 !important; }
  .home-hero .hero-person {
    position: absolute !important; left: auto !important; top: auto !important; right: 0 !important; bottom: 0 !important;
    width: 36% !important; height: auto !important; transform: none !important; z-index: 1; margin: 0 !important;
  }
  .home-hero .hero-person img { width: 100% !important; height: auto !important; }

  /* Первый экран посадочных */
  .sh1-hero--art { height: auto !important; min-height: 0 !important; overflow: hidden !important; }
  .sh1-hero__art {
    position: relative !important; inset: auto !important; display: flex !important; flex-direction: column !important; align-items: flex-start !important;
    width: auto !important; height: auto !important; min-height: 560px; padding: 96px var(--a-gutter) 48px !important; box-sizing: border-box;
  }
  .sh1-hero__art > h1 {
    position: relative !important; inset: auto !important; left: auto !important; top: auto !important; transform: none !important; z-index: 2;
    width: 66% !important; margin: 0 0 20px !important; font-size: var(--a-h1) !important; line-height: 1.12 !important;
  }
  .sh1-hero__art > ul, .sh1-hero__art > div {
    position: relative !important; inset: auto !important; left: auto !important; top: auto !important; z-index: 2;
    width: 62% !important; height: auto !important; margin: 0 0 24px !important; padding-bottom: 0 !important;
  }
  .sh1-hero__art > div p { width: auto !important; font-size: 18px !important; line-height: 1.4 !important; height: auto !important; }
  .sh1-hero__art ul { padding-left: 0 !important; }
  .sh1-hero__art li::before { position: absolute !important; left: 0 !important; top: .45em !important; margin: 0 !important; }
  .sh1-hero__art li { position: relative !important; padding-left: 22px !important; width: auto !important; height: auto !important; font-size: 16px !important; line-height: 1.35 !important; margin-bottom: 8px !important; }
  .sh1-hero__art .yandex-btn {
    position: relative !important; inset: auto !important; left: auto !important; top: auto !important; bottom: auto !important; transform: none !important; z-index: 2;
    width: 100% !important; max-width: 380px !important; min-height: 52px; margin: 0 0 12px !important; box-sizing: border-box;
  }
  .sh1-hero__art .yandex-audit-link {
    position: relative !important; inset: auto !important; left: auto !important; top: auto !important; bottom: auto !important; transform: none !important; z-index: 2;
    width: auto !important; margin: 0 !important;
  }
  .sh1-hero__photo {
    position: absolute !important; left: auto !important; top: auto !important; right: -24px !important; bottom: 0 !important;
    width: 44% !important; height: auto !important; transform: none !important; z-index: 1; margin: 0 !important;
  }

  .yandex-audit-link, .home-hero .audit-link { display: inline-flex !important; align-items: center !important; gap: 10px !important; height: auto !important; }
  .yandex-audit-link > *, .home-hero .audit-link > * { position: static !important; transform: none !important; width: auto; margin: 0 !important; }
  .sh1-hero__art .yandex-audit-link { width: auto !important; float: none !important; }
  .yandex-audit-link > span { flex: none !important; width: auto !important; }
  .sh1-hero__art .yandex-audit-link { width: max-content !important; max-width: 100% !important; }
  .yandex-audit-link > b { flex: none !important; width: 44px !important; height: 44px !important; display: grid !important; place-items: center !important; }
  .yandex-audit-link::before, .yandex-audit-link::after { position: static !important; transform: none !important; flex: none !important; margin: 0 !important; }
  .home-hero .audit-link > span { width: 44px !important; height: 44px !important; flex: none !important; }

  /* Сетки: две колонки на планшете */
  .info-grid, .difference-grid, .sh1-work-grid, .kb-steps-grid, .kb-linkcards, .process-grid, .addon-grid,
  .sh3-cat__grid, .home-video-grid, .kb-contacts {
    display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 20px !important;
    height: auto !important; width: auto !important;
  }
  .info-grid > *, .difference-grid > *, .sh1-work-grid > *, .kb-steps-grid > *, .kb-linkcards > *, .process-grid > *,
  .addon-grid > *, .sh3-cat__grid > *, .home-video-grid > *, .kb-contacts > * {
    width: auto !important; min-width: 0 !important; height: auto !important; min-height: 0 !important; margin: 0 !important;
    grid-column: auto !important; grid-row: auto !important; position: relative !important; left: auto !important; top: auto !important; transform: none !important;
  }
  .info-grid > * > *, .difference-grid > * > :not(img):not(.btn), .sh1-work-grid > * > *, .process-grid > * > *, .addon-grid > * > :not(.addon-icon), .sh3-cat__grid > * > * {
    width: auto !important; max-width: 100% !important;
  }
  .process-grid { padding-inline: var(--a-gutter) !important; }
  .process-grid > article { padding: 0 0 12px !important; }
  .process-grid > article > span { width: 60px !important; height: 60px !important; }
  .process-grid::before, .process-grid::after { display: none !important; }
  .process-grid h3 { height: auto !important; min-height: 0 !important; margin: 14px 0 10px !important; }
  .process-grid > article p { height: auto !important; }

  /* Последняя карточка в нечётном ряду занимает всю ширину */
  .info-grid > :last-child:nth-child(odd), .difference-grid > :last-child:nth-child(odd), .sh1-work-grid > :last-child:nth-child(odd),
  .kb-steps-grid > :last-child:nth-child(odd), .kb-linkcards > :last-child:nth-child(odd), .addon-grid > :last-child:nth-child(odd),
  .sh3-cat__grid > :last-child:nth-child(odd), .kb-contacts > :last-child:nth-child(odd) { grid-column: 1 / -1 !important; }

  /* Обо мне */
  .about-block {
    display: grid !important; grid-template-columns: minmax(0, 260px) minmax(0, 1fr) !important; gap: 24px !important;
    height: auto !important; padding: 28px !important; align-items: start !important; width: auto !important; box-sizing: border-box;
  }
  .about-block .about-mobile-portrait { position: relative !important; left: auto !important; top: auto !important; bottom: auto !important; z-index: 1 !important; grid-column: 1 !important; grid-row: 1 !important; width: 100% !important; height: auto !important; margin: 0 !important; display: block !important; opacity: 1 !important; visibility: visible !important; transform: none !important; }
  .about-block .about-copy { grid-column: 2 !important; grid-row: 1 !important; width: auto !important; margin: 0 !important; }
  .about-block .about-copy > * { width: auto !important; }
  .about-block .about-actions { grid-column: 1 / -1 !important; width: auto !important; margin: 0 !important; position: static !important; }
  .about-block .about-actions nav { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 10px !important; width: auto !important; }

  /* Кейсы */
  .home-case, .battle-case, .case-stack { width: auto !important; height: auto !important; min-height: 0 !important; }
  .case-layout {
    display: grid !important; grid-template-columns: minmax(0, 1fr) !important; gap: 20px !important;
    width: auto !important; height: auto !important;
  }
  .case-layout > * { width: auto !important; max-width: 100% !important; height: auto !important; grid-column: auto !important; grid-row: auto !important; position: relative !important; left: auto !important; top: auto !important; }
  .case-layout > .case-copy { display: contents !important; }
  .case-copy > * { position: relative !important; inset: auto !important; left: auto !important; top: auto !important; transform: none !important; width: auto !important; max-width: 100% !important; height: auto !important; margin: 0 !important; grid-column: 1 !important; grid-row: auto !important; min-width: 0; }
  .case-copy > h2, .case-copy > h3 { order: 1; font-size: var(--a-h3) !important; line-height: 1.25 !important; }
  .case-layout > img { order: 2; }
  .case-copy > .case-details { order: 3; }
  .case-copy > .btn { order: 4; justify-self: start; }
  .case-details > * { width: auto !important; max-width: 100% !important; }
  .case-layout img, .case-stack img, .battle-case img { width: 100% !important; height: auto !important; }
  .home-case, .case-stack, .battle-case { margin-inline: 0 !important; }
  .yandex-container .home-case, .yandex-container .battle-case { padding: 24px !important; box-sizing: border-box !important; }
  .home-cases > .home-case > .container { padding-inline: var(--a-gutter) !important; }
  .yandex-container .home-cases > .home-case > .container { padding-inline: 0 !important; }
  .case-stack > .container, .battle-case > .container { width: auto !important; height: auto !important; grid-template-columns: minmax(0, 1fr) !important; }
  .case-stack > .container > *, .battle-case > .container > * { width: auto !important; max-width: 100% !important; height: auto !important; min-width: 0; }
  .sh1-case-grid { display: grid !important; grid-template-columns: minmax(0, 1fr) !important; gap: 24px !important; height: auto !important; }
  .sh1-case { width: auto !important; height: auto !important; min-height: 0 !important; grid-column: auto !important; grid-row: auto !important; position: relative !important; top: auto !important; margin: 0 !important; }
  .sh1-case > * { width: auto !important; max-width: 100% !important; }
  .sh1-case .sh1-case-shot { height: auto !important; aspect-ratio: auto !important; overflow: hidden !important; }
  .sh1-case .sh1-case-shot img { position: static !important; transform: none !important; width: 100% !important; height: auto !important; max-width: 100% !important; object-fit: contain !important; margin: 0 !important; }

  .portfolio-case-card { display: grid !important; grid-template-columns: minmax(0, 1fr) !important; gap: 20px !important; width: auto !important; height: auto !important; min-height: 0 !important; padding: 28px !important; box-sizing: border-box !important; }
  .portfolio-case-card > * { position: relative !important; inset: auto !important; left: auto !important; top: auto !important; transform: none !important; width: auto !important; max-width: 100% !important; height: auto !important; min-width: 0 !important; margin: 0 !important; grid-column: 1 !important; grid-row: auto !important; }
  .portfolio-case-card > h2 { font-size: var(--a-h3) !important; line-height: 1.25 !important; }
  .portfolio-case-card > .btn { justify-self: start; width: auto !important; }
  .portfolio-case-card .case-details > * { width: auto !important; max-width: 100% !important; }
  .battle-case > .container > h3 { width: auto !important; height: auto !important; font-size: var(--a-h3) !important; line-height: 1.25 !important; }
  .battle-case__body { display: grid !important; grid-template-columns: minmax(0, 1fr) !important; gap: 20px !important; width: auto !important; height: auto !important; }
  .battle-case__body > * { position: relative !important; inset: auto !important; left: auto !important; top: auto !important; transform: none !important; width: auto !important; max-width: 100% !important; height: auto !important; min-width: 0 !important; margin: 0 !important; grid-column: 1 !important; grid-row: auto !important; }
  .battle-case__body > * > * { max-width: 100% !important; width: auto !important; height: auto !important; position: relative !important; left: auto !important; top: auto !important; }
  .battle-case__body img { width: 100% !important; height: auto !important; }

  /* Отзывы */
  .review-shot-gallery > .container { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 16px !important; height: auto !important; }
  .review-shot-gallery article { width: auto !important; height: auto !important; min-width: 0; position: relative !important; left: auto !important; top: auto !important; grid-column: auto !important; grid-row: auto !important; }
  .review-shot-gallery img { width: 100% !important; height: auto !important; }
  .review-shot-gallery p { width: auto !important; height: auto !important; }
  .home-video-grid .review-cta {
    grid-column: 1 / -1 !important; display: grid !important; grid-template-columns: minmax(0, 200px) minmax(0, 1fr) !important;
    gap: 16px 24px !important; padding: 24px !important; align-items: center;
  }
  .home-video-grid .review-cta > .btn { grid-column: 1 / -1 !important; position: static !important; width: 100% !important; box-sizing: border-box; }
  .home-video-grid .video-card:nth-child(odd) + .review-cta { grid-column: auto !important; grid-template-columns: minmax(0, 1fr) !important; }
  .review-cta p, .review-cta__title, .review-cta h3 { width: auto !important; }
  .video-card > * { width: auto !important; }
  .video-frame, .video-load { width: 100% !important; height: auto !important; aspect-ratio: 16/9; }
  .home-wide-videos { grid-template-columns: minmax(0, 1fr) !important; gap: 24px !important; height: auto !important; }
  .wide-video-card { width: auto !important; height: auto !important; }
  .wide-video-card > * { width: auto !important; }
  .wide-video { width: 100% !important; height: auto !important; aspect-ratio: 16/9; }

  /* Тарифы */
  .tariff-grid, .tariff-family {
    transform: none !important; width: auto !important; display: grid !important; grid-template-columns: minmax(0, 1fr) !important; gap: 24px !important; height: auto !important; align-items: stretch !important;
  }
  .tariff, .tariff-card {
    position: relative !important; left: auto !important; top: auto !important; transform: none !important; display: flex !important; flex-direction: column !important;
    width: auto !important; height: auto !important; min-height: 0 !important; margin: 0 !important; padding: 28px !important; grid-column: auto !important; grid-row: auto !important; box-sizing: border-box;
  }
  .tariff, .tariff-card { border-radius: 20px !important; }
  .tariff > *, .tariff-card > * {
    position: relative !important; inset: auto !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; transform: none !important;
    width: auto !important; height: auto !important; max-width: 100% !important; margin: 0 0 14px !important;
  }
  .tariff-action, .tariff-bottom { display: flex !important; flex-wrap: wrap !important; justify-content: space-between !important; align-items: center !important; gap: 16px !important; margin: 8px 0 0 !important; }
  .tariff-action .price, .tariff-bottom .price { white-space: nowrap !important; }
  .tariff-action .price, .tariff-bottom .price { position: relative !important; width: auto !important; height: auto !important; margin: 0 !important; }

  /* Доп. услуги и отличия */
  .addon-grid > article { padding: 24px !important; box-sizing: border-box; }
  .addon-grid h3 { width: calc(100% - 80px) !important; height: auto !important; }
  .addon-grid .addon-icon { top: 20px !important; right: 20px !important; left: auto !important; }
  .addon-grid p { height: auto !important; }
  .difference-consult { display: grid !important; grid-template-columns: minmax(0, 1fr) 40% !important; gap: 12px !important; padding: 24px !important; overflow: hidden; box-sizing: border-box; align-items: end; }
  .difference-consult .consult-copy { width: auto !important; position: static !important; grid-column: 1 !important; }
  .difference-consult > img { position: static !important; width: 100% !important; height: auto !important; grid-column: 2 !important; grid-row: 1 / span 2; }
  .difference-consult > .btn { position: static !important; width: auto !important; grid-column: 1 !important; left: auto !important; right: auto !important; font-size: 13px !important; padding-inline: 12px !important; box-sizing: border-box; }
  .difference-consult > .btn img { display: none !important; }

  /* FAQ */
  .faq { height: auto !important; }
  .faq details, .faq summary { width: auto !important; }
  .faq summary { font-size: 20px !important; line-height: 1.3 !important; height: auto !important; min-height: 64px; padding-block: 16px !important; padding-right: 48px !important; box-sizing: border-box; }
  .faq details > div, .faq details ul { width: auto !important; height: auto !important; }

  /* Связь и формы */
  .contact-strip { display: block !important; height: auto !important; width: auto !important; min-height: 0 !important; margin-top: 0 !important; overflow: clip !important; }
  .contact-strip > div:first-child { position: relative !important; padding-top: calc(var(--a-watermark) * .55) !important; height: auto !important; width: auto !important; }
  .contact-strip .kicker {
    position: absolute !important; top: 0 !important; left: 0 !important; right: auto !important; bottom: auto !important; transform: none !important; margin: 0 !important;
    width: auto !important; height: auto !important; font-size: var(--a-watermark) !important; line-height: 1 !important; letter-spacing: 0 !important; white-space: nowrap !important;
  }
  .contact-strip h2, .contact-strip > div:first-child > p:last-child {
    position: relative !important; left: auto !important; top: auto !important; right: auto !important; bottom: auto !important; transform: none !important;
    width: auto !important; max-width: 100% !important; text-align: left !important; white-space: normal !important;
  }
  .contact-strip h2 { font-size: var(--a-h2) !important; line-height: 1.15 !important; margin: 0 0 12px !important; }
  .contact-strip .contact-actions { position: static !important; justify-content: flex-start !important; margin: 20px 0 0 !important; transform: none !important; }
  .sh1-final__panel { flex-direction: column !important; align-items: stretch !important; gap: 20px !important; height: auto !important; padding: 28px !important; width: auto !important; }
  .sh1-final__text { width: auto !important; }
  .sh1-final__btn { flex: none !important; width: 100% !important; height: auto !important; min-height: 56px !important; box-sizing: border-box !important; }
  .pnqi-card { width: auto !important; max-width: none !important; height: auto !important; box-sizing: border-box; }
  .pnqi-deliverables, .pnqi-form, .pnqi-channels, .pnqi-meta { width: auto !important; max-width: 100% !important; min-width: 0 !important; }
  .pnqi-form { display: grid !important; grid-template-columns: minmax(0, 1fr) !important; }
  .pnqi-options { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)) !important; gap: 8px !important; width: auto !important; }
  .pnqi-options > * { width: auto !important; min-width: 0 !important; }
  .pnqi-fields { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; width: auto !important; height: auto !important; }
  .pnqi-fields > * { min-width: 0 !important; width: auto !important; }
  .pnqi-fields > :last-child { grid-column: 1 / -1 !important; }
  .pnqi-fields input { width: 100% !important; box-sizing: border-box; }
  .pnqi-meta { flex-wrap: wrap !important; gap: 8px !important; height: auto !important; }

  /* Блоки посадочных */
  .sh1-aspect-grid { width: auto !important; height: auto !important; }
  .sh1-aspect { width: auto !important; height: auto !important; }
  .kb-steps-grid .kb-step > * { width: auto !important; }
  .kb-method { width: auto !important; height: auto !important; }
  .kb-method__h, .kb-method__r { grid-template-columns: minmax(0, .8fr) minmax(0, 1fr) minmax(0, 1fr) !important; gap: 16px !important; width: auto !important; height: auto !important; padding-inline: 8px !important; }
  .kb-method__r > *, .kb-method__h > * { width: auto !important; min-width: 0; height: auto !important; font-size: 14px !important; position: static !important; }
  .kb-method__r h3 { font-size: 16px !important; }
  .kb-lead { display: grid !important; grid-template-columns: minmax(0, 1fr) !important; gap: 20px !important; height: auto !important; width: auto !important; }
  .kb-lead > * { width: auto !important; height: auto !important; position: static !important; min-width: 0; }
  .kb-lead__list, .kb-lead__list li { width: auto !important; height: auto !important; }
  .kb-lead__side > * { width: auto !important; }
  .kb-out, .kb-out__r { width: auto !important; height: auto !important; }
  .kb-out__r { grid-template-columns: minmax(0, 220px) minmax(0, 1fr) !important; gap: 16px !important; }
  .kb-out__r > * { width: auto !important; min-width: 0; }
  .kb-person, .kb-person > div { width: auto !important; height: auto !important; }
  .kb-person > div > * { width: auto !important; max-width: 100% !important; }
  .kb-person__facts > li { width: auto !important; min-width: 0; }
  .kb-req { width: auto !important; height: auto !important; flex-wrap: wrap !important; }
  .kb-req li { width: auto !important; }
  .kb-linkcard > :not(i), .kb-contact > * { width: auto !important; min-width: 0; overflow-wrap: anywhere; }
  .kb-linkcard > i { flex: none !important; align-self: flex-start !important; }
  .kb-linkcards__note { width: auto !important; max-width: 100% !important; }
  .kb-sitemap, .kb-sitemap__group, .kb-sitemap__group ul { width: auto !important; height: auto !important; }
  .yandex-prose, .yandex-prose p { width: auto !important; height: auto !important; max-width: 100% !important; }
  .sh1-block > .yandex-container > h1, .sh1-lead-text { width: auto !important; max-width: 100% !important; }

  /* Первый экран услуг и городов: кнопка и ссылка на разбор в столбик */
  .sh1-hero__art > div { min-width: 0 !important; }
  .sh1-hero__art > div > div { flex-direction: column !important; align-items: flex-start !important; gap: 12px !important; width: 100% !important; }

  /* Сетки услуг и городов */
  .kb-works, .kb-niches, .kb-adv, .kb-pains, .kb-cases, .kb-resp, .kb-terms__cols, .kb-tariffs__extras {
    display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 16px !important; width: auto !important; height: auto !important;
  }
  .kb-works > *, .kb-niches > *, .kb-adv > *, .kb-pains > *, .kb-cases > *, .kb-resp > *, .kb-terms__cols > *, .kb-tariffs__extras > * { min-width: 0 !important; width: auto !important; }
  .kb-works > :last-child:nth-child(odd), .kb-niches > :last-child:nth-child(odd), .kb-adv > :last-child:nth-child(odd),
  .kb-pains > :last-child:nth-child(odd), .kb-cases > :last-child:nth-child(odd), .kb-tariffs__extras > :last-child:nth-child(even) { grid-column: 1 / -1 !important; }
  .kb-tariffs__extras-t { font-size: var(--a-h3) !important; }
  .kb-price-axes { padding: 24px !important; }
  .kb-case ul { min-height: 0 !important; }

  /* Кейсы на страницах CMS, позиций и трафика */
  .sh2-case { min-height: 0 !important; padding: 24px 0 !important; }
  .sh2-case > .yandex-container { display: block !important; margin-inline: var(--a-gutter) !important; padding: 28px !important; }
  .sh2-case__title { max-width: none !important; font-size: var(--a-h3) !important; overflow-wrap: anywhere; }
  .sh2-case__body { display: grid !important; grid-template-columns: minmax(0, 1fr) !important; gap: 20px !important; }
  .sh2-case__media { order: 1 !important; min-width: 0; }
  .sh2-case__text { order: 2 !important; display: grid !important; min-width: 0; }
  .sh2-case__works, .sh2-case__results { margin-top: 0 !important; margin-bottom: 0 !important; grid-column: auto !important; grid-row: auto !important; min-width: 0; }
  .sh2-case__videos { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 20px !important; margin-top: 24px !important; }
  .sh2-case--single-video .sh2-case__videos { grid-template-columns: minmax(0, 1fr) !important; }
  .sh2-case__video { flex: none !important; width: auto !important; max-width: none !important; min-width: 0 !important; }
  .sh2-case__video .sh1-video { width: 100% !important; height: auto !important; aspect-ratio: 16/9 !important; }
  .sh2-case__video .video-load { display: flex !important; flex-direction: column !important; align-items: center !important; justify-content: center !important; min-height: 0 !important; height: 100% !important; aspect-ratio: auto !important; }
  .sh2-case__video .video-load__play, .sh2-case__video .video-load__hint { position: static !important; transform: none !important; }
  .sh2-case__actions { gap: 12px !important; margin-top: 24px !important; }
  .sh2-case__actions .sh1-btn--audit { margin-left: 0 !important; }

  /* Страницы без первого экрана: отступ под шапку */
  main > .sh1-block:first-child { padding-top: 96px !important; }

  /* Полосы, подвал */
  .niche-strip, .home-note, .home-preview-link {
    height: auto !important; min-height: 0 !important; width: auto !important; flex-wrap: wrap !important; justify-content: center !important;
    padding: 16px var(--a-gutter) !important; text-align: center !important; gap: 4px !important;
  }
  .site-footer-demo {
    display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr) !important; gap: 32px !important;
    width: auto !important; height: auto !important; padding: 40px var(--a-gutter) !important;
  }
  .site-footer-demo > * { width: auto !important; min-width: 0 !important; position: static !important; grid-row: auto !important; grid-column: auto !important; margin: 0 !important; transform: none !important; }
  .site-footer-demo .footer-legal { grid-column: 1 / -1 !important; grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
  .site-footer-demo .footer-legal > p { grid-column: 1 / -1 !important; }
  .site-footer-demo .footer-nav { width: auto !important; height: auto !important; }

  /* Плавающие кнопки */
  .lead-fabs { right: 16px !important; bottom: 16px !important; }
}

/* ============ Мобильный ============ */
@media (max-width: 767px) {
  :root {
    --a-gutter: 16px;
    --a-section-y: 44px;
    --a-h1: 32px;
    --a-h2: 27px;
    --a-h3: 19px;
    --a-watermark: 50px;
  }

  .site-header-demo { min-height: 64px !important; padding-block: 10px !important; }
  .site-header-demo .site-logo { width: 150px !important; }
  .site-header-demo .header-consult { display: none !important; }
  .site-header-demo .services-mega { grid-template-columns: minmax(0, 1fr) !important; }
  .site-header-demo .services-mega__column > *:not(h3):not(h4) { grid-template-columns: minmax(0, 1fr) !important; columns: auto !important; }
  .site-header-demo.is-menu-open > nav { padding-top: 76px !important; }

  /* Первые экраны: текст сверху, фото снизу в потоке */
  .home-hero { padding: 80px var(--a-gutter) 0 !important; min-height: 0 !important; }
  .home-hero .hero-content { width: auto !important; padding-bottom: 8px !important; }
  .home-hero .hero-benefits li { font-size: 16px !important; }
  .home-hero .hero-content > p { font-size: 16px !important; }
  .home-hero .hero-audit-cta { max-width: none !important; }
  .home-hero .hero-person { position: relative !important; right: auto !important; bottom: auto !important; width: 72% !important; margin: 0 auto !important; }

  .sh1-hero__art { min-height: 0; padding: 80px var(--a-gutter) 0 !important; }
  .sh1-hero__art > h1, .sh1-hero__art > ul, .sh1-hero__art > div { width: auto !important; }
  .sh1-hero__art > div p { font-size: 16px !important; }
  .sh1-hero__art .yandex-btn { max-width: none !important; }
  .sh1-hero__photo { position: relative !important; right: auto !important; width: 78% !important; align-self: center !important; margin-top: 16px !important; }

  /* Всё в одну колонку */
  .info-grid, .difference-grid, .sh1-work-grid, .kb-steps-grid, .kb-linkcards, .process-grid, .addon-grid,
  .sh3-cat__grid, .home-video-grid, .kb-contacts { grid-template-columns: minmax(0, 1fr) !important; gap: 14px !important; }

  .about-block { grid-template-columns: minmax(0, 1fr) !important; padding: 18px !important; }
  .about-block .about-mobile-portrait { grid-row: auto !important; order: -1 !important; max-width: 260px !important; margin-inline: auto !important; }
  .about-block .about-copy { grid-column: 1 !important; grid-row: auto !important; }
  .about-block .about-actions nav { grid-template-columns: minmax(0, 1fr) !important; }

  .review-shot-gallery > .container { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 12px !important; }
  .home-video-grid .review-cta { grid-template-columns: minmax(0, 1fr) !important; padding: 20px !important; grid-column: 1 / -1 !important; }
  .review-shot-gallery article:last-child:nth-child(odd) { grid-column: 1 / -1 !important; }

  .tariff, .tariff-card { padding: 22px !important; }
  .tariff-action .btn, .tariff-bottom .btn, .tariff-bottom a { width: 100% !important; box-sizing: border-box; }
  .tariff-action, .tariff-bottom { flex-direction: column-reverse !important; align-items: flex-start !important; }

  .difference-consult { grid-template-columns: minmax(0, 1fr) 36% !important; padding: 18px !important; }

  .faq summary { font-size: 17px !important; min-height: 56px; }

  .sh1-final__panel { padding: 20px !important; }
  .pnqi-card { padding: 16px !important; }
  .pnqi-options { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .pnqi-fields { grid-template-columns: minmax(0, 1fr) !important; }

  /* Таблица «принято / делаю я» превращается в карточки */
  .kb-method__h { display: none !important; }
  .kb-method__r { display: block !important; padding: 16px !important; height: auto !important; }
  .kb-method__r h3 { margin: 0 0 10px !important; }
  .kb-method__bad::before, .kb-method__good::before {
    display: block; margin-bottom: 2px; font-size: 11px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase;
  }
  .kb-method__bad::before { content: "как принято"; opacity: .6; }
  .kb-method__good::before { content: "как делаю я"; color: var(--a-accent); }
  .kb-method__bad { margin: 0 0 12px !important; }

  .kb-out__r { grid-template-columns: minmax(0, 1fr) !important; gap: 4px !important; }
  .kb-person__facts { grid-template-columns: minmax(0, 1fr) !important; }

  /* Блоки услуг и городов */
  .sh1-aspect-grid { grid-template-columns: minmax(0, 1fr) !important; }
  .sh1-hero__art > div { width: 100% !important; }
  .sh1-hero__art > div > div { align-items: stretch !important; }
  .kb-works, .kb-niches, .kb-adv, .kb-pains, .kb-cases, .kb-resp, .kb-terms__cols, .kb-tariffs__extras { grid-template-columns: minmax(0, 1fr) !important; gap: 14px !important; }
  .kb-price-axes { padding: 18px !important; }
  .kb-price-axes ul { grid-template-columns: minmax(0, 1fr) !important; }
  .sh2-case > .yandex-container { padding: 18px !important; }
  .sh2-case__videos { grid-template-columns: minmax(0, 1fr) !important; }
  .sh2-case__actions { flex-direction: column !important; align-items: stretch !important; }
  .sh2-case__actions .sh1-btn { width: 100% !important; white-space: normal !important; }

  .site-footer-demo { grid-template-columns: minmax(0, 1fr) !important; gap: 28px !important; padding: 32px var(--a-gutter) !important; }
  .site-footer-demo .footer-legal { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .lead-fabs { right: 12px !important; bottom: 12px !important; }
}

}
