/* /info/brands/ — макет primesv-content-pages-2026-10-21/brands.html */

.brands-page {
  --blue: #34b4d9;
  --blue-2: #1e9fc4;
  --brown: #c4a574;
  --ink: #111;
  --muted: #6b6b6b;
  --line: #e0e0e0;
  --gray: #f7f7f7;
  --sand: #f3efe8;
  line-height: 1.45;
  overflow-x: clip;
  max-width: 100%;
}
.brands-page .wrap {
  width: min(1348px, calc(100% - 48px));
  margin: 0 auto;
  max-width: 100%;
  box-sizing: border-box;
  min-width: 0;
}
.brands-page img { max-width: 100%; display: block; }
.brands-page a { color: inherit; text-decoration: none; }
.brands-page p { margin: 0; }
.brands-page h1, .brands-page h2, .brands-page h3 { margin: 0; font-weight: 700; color: var(--ink); }
.brands-page .btn {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 44px; padding: 0 22px; border-radius: 30px; border: 1px solid transparent;
  font: 600 13px/1 Montserrat, sans-serif; letter-spacing: .08em; text-transform: uppercase;
  cursor: pointer; background: none; color: var(--ink); text-decoration: none;
  transition: background .2s, border-color .2s, color .2s, transform .2s, box-shadow .2s;
}
.brands-page .btn-blue { background: var(--blue); color: #fff; border-color: var(--blue); }
.brands-page .btn-blue:hover { background: var(--blue-2); border-color: var(--blue-2); color: #fff; transform: translateY(-1px); }
/* как в макете: обводка blue, текст blue, фон белый */
.brands-page .btn-line {
  border-color: var(--blue); color: var(--blue); background: #fff;
}
.brands-page .btn-line:hover {
  background: var(--blue); border-color: var(--blue); color: #fff; transform: translateY(-1px);
}
.brands-page .page-hero { padding: 36px 0 8px; }
.brands-page .crumbs { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; font-size: 13px; color: var(--muted); margin-bottom: 18px; }
.brands-page .crumbs a:hover { color: var(--blue); }
.brands-page .crumbs b { color: var(--ink); font-weight: 600; }
.brands-page .page-hero-grid { display: grid; grid-template-columns: 1.3fr .9fr; gap: 28px; align-items: end; }
.brands-page .page-kicker { font-size: 12px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: var(--brown); margin-bottom: 10px; }
.brands-page .page-hero h1 { font-size: clamp(28px, 3.6vw, 46px); line-height: 1.12; letter-spacing: -.02em; max-width: 16ch; }
.brands-page .page-lead { margin-top: 14px; color: var(--muted); font-size: 16px; font-weight: 500; max-width: 48ch; line-height: 1.5; }
.brands-page .page-lead strong {
  font-weight: 700; color: var(--ink);
  background: linear-gradient(180deg, transparent 62%, rgba(14,164,196,.18) 62%);
}
.brands-page .page-cta { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 22px; }
.brands-page .filters { display: flex; flex-wrap: wrap; gap: 8px; padding: 20px 0 8px; }
.brands-page .chip {
  display: inline-flex; align-items: center; min-height: 38px; padding: 0 16px;
  border-radius: 999px; background: #fff; border: 1px solid var(--line);
  font-size: 13px; font-weight: 600; transition: background .2s, border-color .2s, color .2s, transform .2s;
}
.brands-page .chip:hover { background: var(--blue); border-color: var(--blue); color: #fff; transform: translateY(-1px); }
.brands-page section { padding: 56px 0; }
.brands-page .sec-head { display: flex; justify-content: space-between; align-items: flex-end; gap: 16px; margin-bottom: 28px; flex-wrap: wrap; }
.brands-page .sec-head h2 { font-size: clamp(26px, 2.6vw, 34px); line-height: 1.2; letter-spacing: -.02em; }

    .brands-page .page-hero.brands-hero h1 { max-width: 12ch; }
    .brands-page .page-hero.brands-hero .page-lead { max-width: 52ch; }
    .brands-page .brands-hero-panel {
      position: relative; overflow: hidden;
      background: linear-gradient(155deg, #10232b 0%, #1a3a45 50%, #0e4a5c 100%);
      color: #fff; border-radius: 28px; padding: 28px 26px;
      box-shadow: 0 18px 40px rgba(16,35,43,.22);
      opacity: 0; transform: translateY(24px);
      transition: opacity .7s cubic-bezier(.22,.7,.3,1), transform .7s cubic-bezier(.22,.7,.3,1);
    }
    .brands-page .brands-hero-panel.is-on { opacity: 1; transform: none; }
    .brands-page .brands-hero-panel:before {
      content: ""; position: absolute; width: 160px; height: 160px; right: -40px; top: -50px;
      border-radius: 50%; pointer-events: none;
      background: radial-gradient(circle, rgba(52,180,217,.3), transparent 68%);
    }
    .brands-page .brands-hero-panel .k {
      font-size: 12px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase;
      color: rgba(232,195,106,.95); margin-bottom: 14px;
    }
    .brands-page .brands-hero-panel ul {
      list-style: none !important; margin: 0; padding: 0;
      display: flex; flex-direction: column; gap: 12px;
    }
    .brands-page .brands-hero-panel li {
      display: flex; align-items: flex-start; gap: 12px;
      font-size: 14px; font-weight: 600; color: rgba(255,255,255,.9); line-height: 1.4;
      position: relative; padding-left: 0 !important; margin: 0 !important;
    }
    .brands-page .brands-hero-panel li:before,
    .brands-page .brands-hero-panel li:after,
    .brands-page .brands-hero-panel ul li:before,
    .brands-page .brands-hero-panel ul li:after {
      content: none !important; display: none !important;
    }
    .brands-page .brands-hero-panel li > div { min-width: 0; flex: 1; }
    .brands-page .brands-hero-panel li span {
      flex-shrink: 0; width: 28px; height: 28px; border-radius: 50%;
      display: inline-flex; align-items: center; justify-content: center;
      background: rgba(52,180,217,.22); color: #34b4d9; font-size: 12px; font-weight: 800;
    }

    .brands-page #dealer { padding-top: 28px; padding-bottom: 8px; }
    .brands-page .dealer-copy {
      max-width: none; color: #3a3a3a; font-size: 16px; font-weight: 500; line-height: 1.65;
      margin-bottom: 22px;
    }
    .brands-page .dealer-copy strong {
      font-weight: 700; color: var(--ink);
      background: linear-gradient(180deg, transparent 62%, rgba(14,164,196,.18) 62%);
    }
    .brands-page .dealer-grid {
      display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px;
    }
    .brands-page .dealer-card {
      position: relative; overflow: hidden;
      padding: 24px 20px; border-radius: 22px; min-height: 148px;
      background: #fff; border: 1px solid var(--line);
      display: flex; flex-direction: column; gap: 10px;
      transition: transform .35s cubic-bezier(.22,.7,.3,1), box-shadow .35s, border-color .35s, color .35s;
    }
    .brands-page .dealer-card:before {
      content: ""; position: absolute; inset: 0; z-index: 0;
      background: linear-gradient(145deg, var(--blue) 0%, var(--blue-2) 55%, #167a9a 100%);
      opacity: 0; transform: scale(1.06);
      transition: opacity .4s ease, transform .5s cubic-bezier(.22,.7,.3,1);
    }
    .brands-page .dealer-card > * { position: relative; z-index: 1; }
    .brands-page .dealer-card .n {
      font-size: 12px; font-weight: 800; letter-spacing: .12em; color: var(--brown);
      transition: color .3s;
    }
    .brands-page .dealer-card h3 { font-size: 17px; margin: 0; transition: color .3s; }
    .brands-page .dealer-card p {
      margin-top: auto; color: var(--muted); font-size: 14px; font-weight: 500; line-height: 1.45;
      transition: color .3s;
    }
    .brands-page .dealer-card:hover, .brands-page .dealer-card.is-on {
      transform: translateY(-5px); border-color: transparent; color: #fff;
      box-shadow: 0 18px 40px rgba(52,180,217,.28);
    }
    .brands-page .dealer-card:hover:before, .brands-page .dealer-card.is-on:before { opacity: 1; transform: none; }
    .brands-page .dealer-card:hover .n, .brands-page .dealer-card.is-on .n { color: rgba(232,195,106,.95); }
    .brands-page .dealer-card:hover h3, .brands-page .dealer-card.is-on h3 { color: #fff; }
    .brands-page .dealer-card:hover p, .brands-page .dealer-card.is-on p { color: rgba(255,255,255,.86); }

    .brands-page #regions { padding-top: 36px; }
    .brands-page .region {
      display: grid; grid-template-columns: .9fr 1.2fr; gap: 0;
      border-radius: 28px; overflow: hidden;
      border: 1px solid #e4d8c4; background: #fff;
      box-shadow: 0 16px 36px rgba(140,110,60,.08);
      margin-bottom: 18px;
      scroll-margin-top: 110px;
      align-items: stretch;
    }
    .brands-page .region:nth-child(even) { grid-template-columns: 1.2fr .9fr; }
    .brands-page .region:nth-child(even) .region-visual { order: 2; }
    .brands-page .region-visual {
      position: relative; min-height: 420px; background: #10232b;
    }
    .brands-page .region-visual img {
      position: absolute; inset: 0;
      width: 100%; height: 100%; object-fit: cover; object-position: center; display: block;
    }
    .brands-page .region-visual:after {
      content: ""; position: absolute; inset: 0;
      background: linear-gradient(180deg, rgba(16,35,43,.06) 45%, rgba(16,35,43,.32) 100%);
    }
    .brands-page .region-visual .badge {
      position: absolute; left: 18px; top: 18px; z-index: 2;
      padding: 8px 14px; border-radius: 999px;
      background: rgba(16,35,43,.72); color: #fff; backdrop-filter: blur(6px);
      font-size: 12px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase;
    }
    .brands-page .region-body {
      padding: 20px 22px 22px; display: flex; flex-direction: column;
      background: linear-gradient(180deg, #fbf7f1 0%, #fff 55%);
    }
    .brands-page .region-body .page-kicker { margin-bottom: 4px; }
    .brands-page .region-body h2 { font-size: clamp(20px, 2.2vw, 28px); margin-bottom: 6px; }
    .brands-page .region-body > p {
      color: var(--muted); font-weight: 500; line-height: 1.45; margin-bottom: 14px; font-size: 14px;
    }
    .brands-page .brand-logos {
      display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px;
      margin-top: auto;
    }
    .brands-page .brand-logo {
      display: flex; align-items: center; justify-content: center;
      min-height: 48px; padding: 8px 10px;
      border-radius: 14px; background: #fff; border: 1px solid var(--line);
      text-decoration: none; color: var(--ink);
      transition: transform .25s ease, box-shadow .25s, border-color .25s;
    }
    .brands-page .brand-logo .brand-logo-text {
      font-size: 12px; font-weight: 700; letter-spacing: -.01em; text-align: center; line-height: 1.25;
      color: var(--ink); word-break: break-word;
    }
    .brands-page .brand-logo:hover {
      transform: translateY(-3px); border-color: #cfeaf3;
      box-shadow: 0 14px 28px rgba(52,180,217,.12);
      color: var(--ink);
    }

    .brands-page #catalog-brands { padding-top: 28px; padding-bottom: 12px; }
    .brands-page .brands-board {
      display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px;
    }
    .brands-page .brand-tile {
      display: flex; flex-direction: column; gap: 12px;
      padding: 22px 20px; min-height: 168px;
      border-radius: 22px; background: #fff; border: 1px solid var(--line);
      text-decoration: none; color: inherit;
      transition: transform .3s cubic-bezier(.22,.7,.3,1), box-shadow .3s, border-color .3s;
      opacity: 0; transform: translateY(16px);
    }
    /* Related: без #catalog-brands — иначе плитки навсегда opacity:0 */
    .brands-page #related-brands .brand-tile { opacity: 1; transform: none; }
    .brands-page #catalog-brands.is-on .brand-tile,
    .brands-page #related-brands.is-on .brand-tile { opacity: 1; transform: none; }
    .brands-page #catalog-brands.is-on .brand-tile:nth-child(1) { transition-delay: .03s; }
    .brands-page #catalog-brands.is-on .brand-tile:nth-child(2) { transition-delay: .06s; }
    .brands-page #catalog-brands.is-on .brand-tile:nth-child(3) { transition-delay: .09s; }
    .brands-page #catalog-brands.is-on .brand-tile:nth-child(4) { transition-delay: .12s; }
    .brands-page #catalog-brands.is-on .brand-tile:nth-child(5) { transition-delay: .15s; }
    .brands-page #catalog-brands.is-on .brand-tile:nth-child(6) { transition-delay: .18s; }
    .brands-page #catalog-brands.is-on .brand-tile:nth-child(7) { transition-delay: .21s; }
    .brands-page #catalog-brands.is-on .brand-tile:nth-child(8) { transition-delay: .24s; }
    .brands-page .brand-tile:hover {
      transform: translateY(-4px); border-color: #cfeaf3;
      box-shadow: 0 16px 34px rgba(52,180,217,.14);
    }
    .brands-page .brand-tile .mark {
      display: flex; align-items: center; justify-content: center;
      height: 56px; border-radius: 14px;
      background: linear-gradient(180deg, #f7fafb 0%, #eef6f8 100%);
      border: 1px solid #e5eef1;
    }
    .brands-page .brand-tile .mark img {
      max-width: 78%; max-height: 34px; object-fit: contain;
      filter: grayscale(1); opacity: .85;
      transition: filter .25s, opacity .25s;
    }
    .brands-page .brand-tile:hover .mark img { filter: none; opacity: 1; }
    .brands-page .brand-tile .mark .letter {
      font-size: 22px; font-weight: 800; color: var(--blue); letter-spacing: -.03em;
    }
    .brands-page .brand-tile h3 {
      margin: 0; font-size: 16px; font-weight: 700; line-height: 1.25;
    }
    .brands-page .brand-tile p {
      margin: 0; color: var(--muted); font-size: 13px; font-weight: 500; line-height: 1.45;
    }
    .brands-page .brand-tile .go {
      margin-top: auto; font-size: 12px; font-weight: 700; letter-spacing: .08em;
      text-transform: uppercase; color: var(--blue);
    }

    .brands-pager {
      display: flex; flex-wrap: wrap; gap: 8px; align-items: center; justify-content: center;
      margin-top: 28px;
    }
    .brands-pager a, .brands-pager span {
      display: inline-flex; align-items: center; justify-content: center;
      min-width: 42px; height: 42px; padding: 0 14px;
      border-radius: 14px; border: 1px solid var(--line);
      background: #fff; color: var(--ink); text-decoration: none;
      font: 700 14px/1 Montserrat, sans-serif;
      transition: background .2s, border-color .2s, color .2s, transform .2s;
    }
    .brands-pager a:hover { transform: translateY(-1px); border-color: #cfeaf3; color: var(--blue); }
    .brands-pager a.is-on, .brands-pager span.is-on {
      background: var(--blue); border-color: var(--blue); color: #fff;
    }
    .brands-pager .muted { color: var(--muted); border-style: dashed; }

    .brands-page #why-brands { background: linear-gradient(180deg, #fff 0%, #f7fafb 100%); }
    .brands-page .why-brands-grid {
      display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px;
    }
    .brands-page .why-b {
      padding: 24px 22px; border-radius: 22px;
      background: #fff; border: 1px solid var(--line);
    }
    .brands-page .why-b .n {
      font-size: 12px; font-weight: 800; letter-spacing: .12em; color: var(--brown); margin-bottom: 12px;
    }
    .brands-page .why-b h3 { font-size: 18px; margin-bottom: 8px; }
    .brands-page .why-b p { color: var(--muted); font-size: 14px; font-weight: 500; line-height: 1.5; }
    .brands-page .why-b p strong {
      font-weight: 700; color: var(--ink);
      background: linear-gradient(180deg, transparent 62%, rgba(14,164,196,.18) 62%);
    }


    /* brand detail */
    .brands-page .page-hero.brand-detail-hero h1 { max-width: 18ch; }
    .brands-page .brand-detail-panel {
      border-radius: 28px; padding: 28px 26px; min-height: 220px;
      background: linear-gradient(155deg, #10232b 0%, #1a3a45 55%, #0e4a5c 100%);
      color: #fff; box-shadow: 0 18px 40px rgba(16,35,43,.22);
      display: flex; flex-direction: column; justify-content: center; gap: 14px;
    }
    .brands-page .brand-detail-panel .mark {
      display: flex; align-items: center; justify-content: center;
      height: 88px; border-radius: 18px; background: rgba(255,255,255,.94);
      padding: 16px;
    }
    .brands-page .brand-detail-panel .mark img { max-height: 48px; max-width: 85%; object-fit: contain; }
    .brands-page .brand-detail-panel .mark .letter {
      font-size: 36px; font-weight: 800; color: #0e4a5c;
    }
    .brands-page .brand-detail-panel .k {
      font-size: 12px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase;
      color: rgba(232,195,106,.95);
    }
    .brands-page .brand-detail-panel__note {
      margin: 0; color: rgba(255,255,255,.82); font-weight: 500; line-height: 1.45;
    }
    .brands-page .brand-detail-copy {
      max-width: 62ch; color: #3a3a3a; font-size: 16px; font-weight: 500; line-height: 1.65;
      margin: 0 0 28px;
    }
    .brands-page .brand-detail-copy strong {
      font-weight: 700; color: var(--ink);
      background: linear-gradient(180deg, transparent 62%, rgba(14,164,196,.18) 62%);
    }
    .brands-page .brand-detail-hero ~ #dealer .dealer-grid { margin-top: 8px; }
    .brands-page #dealer + #related-brands { padding-top: 48px; }
.brands-page .page-anchor {
  position: relative;
  top: -96px;
  height: 0;
  width: 0;
  overflow: hidden;
  pointer-events: none;
}
.brands-page #brand-goods,
.brands-page #related-brands,
.brands-page #catalog-brands,
.brands-page #contacts,
.brands-page #request {
  scroll-margin-top: 96px;
}
    .brands-page .related-brands {
      display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px;
    }

    @media (max-width: 980px) {
      .brands-page .dealer-grid, .brands-page .why-brands-grid, .brands-page .brands-board, .brands-page .related-brands { grid-template-columns: 1fr 1fr; }
      .brands-page .region, .brands-page .region:nth-child(even) { grid-template-columns: 1fr; }
      .brands-page .region:nth-child(even) .region-visual { order: 0; }
      .brands-page .region-visual { min-height: 260px; }
      .brands-page .brand-logos { grid-template-columns: 1fr 1fr; }
      .brands-page .brands-cta { grid-template-columns: 1fr; }
      .brands-page .page-hero.brands-hero h1 { max-width: none; }
    }
    @media (max-width: 560px) {
      .brands-page .dealer-grid, .brands-page .why-brands-grid, .brands-page .brands-board, .brands-page .related-brands { grid-template-columns: 1fr; }
      .brands-page .brand-logos { grid-template-columns: 1fr 1fr; }
      .brands-page .region-body { padding: 16px 18px; }
      .brands-page .brands-cta { padding: 28px 22px; }
    }
    @media (prefers-reduced-motion: reduce) {
      .brands-hero-panel, .dealer-card, .dealer-card:before, .brand-logo, .brand-logo img,
      .brands-page .brand-tile { transition: none; opacity: 1; transform: none; }
      .brands-page .brands-hero-panel,
      .brands-page #catalog-brands.is-on .brand-tile,
      .brands-page #related-brands .brand-tile { opacity: 1; transform: none; }
      .brands-page .dealer-card:hover, .brands-page .dealer-card.is-on, .brands-page .brand-tile:hover { transform: none; }
    }

      /* adaptive-extra-560 */
    @media (max-width: 560px) {
      .brands-page .wrap { width: min(1348px, calc(100% - 20px)); }
      .brands-page .page-hero h1 { font-size: clamp(28px, 9vw, 40px); }
      .brands-page .catalog-mega { grid-template-columns: 1fr; }
      .brands-page .catalog-panel { border-radius: 18px; padding: 14px 12px 12px; max-height: min(68vh, 560px); }
      .brands-page .catalog-col { padding: 10px; }
      .brands-page .sticky .btn { font-size: 13px; min-height: 44px; }
      .brands-page section { padding: 48px 0; }
      .brands-page .user-tools .tool b { display: none; }
      .brands-page .page-cta { flex-direction: column; align-items: stretch; }
      .brands-page .page-cta .btn { width: 100%; flex: none; }
      .brands-page .prose > .art-cover {
        float: none; width: 100%; max-width: none; margin: 0 0 16px;
        aspect-ratio: 16 / 10;
      }
      .brands-page .job { min-height: 0; }
      .brands-page .faq-intro p { max-width: none; margin-left: 0; }

    }

  
    /* type-scale-tabs: одна шкала для вкладок шапки */
    .page-hero h1,
    .brands-page .page-hero.art-single h1 {
      font-size: clamp(32px, 3.4vw, 44px);
      font-weight: 700;
      line-height: 1.15;
      letter-spacing: -.02em;
    }
    .sec-head h2,
    .story h2,
    .why-intro h2,
    .faq-intro h2,
    .region-body h2,
    .brands-cta h2,
    .print-cta h2,
    .port-cta h2,
    .art-cta h2,
    .feat-body h2,
    .visit-copy h2,
    .reqs-intro h2,
    .project-copy h2,
    .methods-intro h2,
    .tech-head h2,
    .brands-page .prose h2 {
      font-size: clamp(26px, 2.6vw, 34px);
      font-weight: 700;
      line-height: 1.2;
      letter-spacing: -.02em;
    }
    .page-lead,
    .story p,
    .sec-head p,
    .dealer-copy,
    .prose p,
    .brands-page .prose li {
      font-size: 16px;
      font-weight: 500;
      line-height: 1.6;
    }
    .job h3,
    .why-item h3,
    .dealer-card h3,
    .brand-tile h3,
    .art-card h3,
    .port-card h3,
    .brands-page .prose h3 {
      font-size: 18px;
      font-weight: 700;
      line-height: 1.3;
      letter-spacing: -.01em;
    }
    .job p,
    .why-item p,
    .dealer-card p,
    .brand-tile p,
    .art-card p,
    .brands-page .port-card .desc {
      font-size: 14px;
      font-weight: 500;
      line-height: 1.45;
    }
    .page-kicker,
    .brands-page .form-kicker {
      font-size: 12px;
      font-weight: 700;
      letter-spacing: .14em;
      line-height: 1.3;
    }
    .brands-page .form-title {
      font-size: clamp(22px, 2.2vw, 28px);
      font-weight: 700;
      line-height: 1.25;
      letter-spacing: -.02em;
    }
    @media (max-width: 560px) {
      .page-hero h1,
      .brands-page .page-hero.art-single h1 { font-size: clamp(30px, 8vw, 40px); }
    }

  

/* detail — основные правила выше (brand-detail-*); related grid */
    .brands-page .related-brands {
      display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px;
    }

    @media (max-width: 980px) {
      .brands-page .dealer-grid, .brands-page .why-brands-grid, .brands-page .brands-board, .brands-page .related-brands { grid-template-columns: 1fr 1fr; }
      .brands-page .region, .brands-page .region:nth-child(even) { grid-template-columns: 1fr; }
      .brands-page .region:nth-child(even) .region-visual { order: 0; }
      .brands-page .region-visual, .brands-page .region-visual img { min-height: 220px; }
      .brands-page .brands-cta { grid-template-columns: 1fr; }
      .brands-page .page-hero.brands-hero h1 { max-width: none; }
    }
    @media (max-width: 560px) {
      .brands-page .dealer-grid, .brands-page .why-brands-grid, .brands-page .brand-logos, .brands-page .brands-board, .brands-page .related-brands { grid-template-columns: 1fr; }
      .brands-page .region-body { padding: 26px 20px; }
      .brands-page .brands-cta { padding: 28px 22px; }
    }
    @media (prefers-reduced-motion: reduce) {
      .brands-hero-panel, .dealer-card, .dealer-card:before, .brand-logo, .brand-logo img,
      .brands-page .brand-tile { transition: none; opacity: 1; transform: none; }
      .brands-page .brands-hero-panel,
      .brands-page #catalog-brands.is-on .brand-tile,
      .brands-page #related-brands .brand-tile { opacity: 1; transform: none; }
      .brands-page .dealer-card:hover, .brands-page .dealer-card.is-on, .brands-page .brand-tile:hover { transform: none; }
    }

/* Товары бренда: разметка Aspro catalog_block, лёгкая подгонка без ломки сетки */
.brands-page #brand-goods { padding-top: 8px; padding-bottom: 24px; }
.brands-page .brand-goods {
  background: transparent; border: 0; border-radius: 0; padding: 0;
}
.brands-page .brand-goods .catalog.vertical,
.brands-page .brand-goods .inner_wrapper,
.brands-page .brand-goods .ajax_load,
.brands-page .brand-goods .top_wrapper,
.brands-page .brand-goods .catalog_block_template {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}
.brands-page .brand-goods-empty {
  margin: 0; max-width: 68ch; color: #3a3a3a; font-size: 16px; font-weight: 500; line-height: 1.6;
  padding: 22px 24px; background: #fff; border: 1px solid var(--line); border-radius: 22px;
}
.brands-page .brand-goods-empty strong {
  font-weight: 700; color: var(--ink);
  background: linear-gradient(180deg, transparent 62%, rgba(14,164,196,.18) 62%);
}
.brands-page .brand-goods .item-title a {
  font-family: Montserrat, "Segoe UI", sans-serif;
}
.brands-page .brand-goods .bottom_nav,
.brands-page .brand-goods .module-pagination {
  margin-top: 12px;
}
.brands-page .brand-goods .ajax_load.is-loading {
  opacity: .55;
  pointer-events: none;
}
.brands-page #catalog-brands.is-loading { opacity: .55; pointer-events: none; }
.brands-page #related-brands .related-brands,
.brands-page #related-brands .brands-board { margin-top: 0; }

/* CTA «Заявка» — белый текст поверх тёмного фона */
.brands-page .brands-cta {
  margin-top: 36px; padding: 36px 40px;
  display: grid; grid-template-columns: 1.2fr auto; gap: 24px; align-items: center;
  border-radius: 28px;
  background: linear-gradient(135deg, #10232b 0%, #1a3a45 60%, #0e4a5c 100%);
  color: #fff; box-shadow: 0 18px 40px rgba(16,35,43,.2);
}
.brands-page .brands-cta .page-kicker { color: rgba(232,195,106,.95); margin-bottom: 8px; }
.brands-page .brands-cta h2,
.brands-page .brands-cta h3 { color: #fff !important; font-size: clamp(22px, 2.4vw, 30px); margin-bottom: 8px; }
.brands-page .brands-cta p { color: rgba(255,255,255,.78) !important; font-weight: 500; }
.brands-page .brands-cta .btn { background: var(--blue); border-color: var(--blue); color: #fff; }

/* Контакты: см. css/page_contacts.css (.page-contacts) */

.brands-page #catalog-brands .brand-tile,
.brands-page #related-brands .brand-tile { opacity: 1; transform: none; }
@media (prefers-reduced-motion: no-preference) {
  .brands-page #catalog-brands:not(.is-on) .brand-tile,
  .brands-page #related-brands:not(.is-on) .brand-tile { opacity: 0; transform: translateY(16px); }
  .brands-page #catalog-brands.is-on .brand-tile,
  .brands-page #related-brands.is-on .brand-tile { opacity: 1; transform: none; }
}

@media (max-width: 980px) {
  .brands-page .wrap { width: min(1348px, calc(100% - 24px)); }
  .brands-page .page-hero-grid,
  .brands-page .region,
  .brands-page .region:nth-child(even) { grid-template-columns: 1fr; }
  .brands-page .region:nth-child(even) .region-visual { order: 0; }
  .brands-page .page-hero h1 { max-width: none; }
  .brands-page .dealer-grid,
  .brands-page .brands-board,
  .brands-page .related-brands { grid-template-columns: 1fr 1fr; }
  .brands-page .brands-cta { grid-template-columns: 1fr; }
  .brands-page .brand-logos { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 560px) {
  .brands-page .wrap { width: min(1348px, calc(100% - 20px)); }
  .brands-page .page-hero h1 { font-size: clamp(28px, 9vw, 40px); }
  .brands-page .dealer-grid,
  .brands-page .brands-board,
  .brands-page .related-brands,
  .brands-page .brand-logos { grid-template-columns: 1fr; }
  .brands-page section { padding: 48px 0; }
  .brands-page .page-cta { flex-direction: column; align-items: stretch; }
  .brands-page .page-cta .btn { width: 100%; }
  .brands-page .brands-cta { padding: 28px 22px; }
  .brands-page .region-body { padding: 16px 18px; }
}
