.product-split {
  padding: 0;
  background: var(--bg-tint);
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
}

.product-split .container,
.product-split-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(2rem, 4vw, 4rem);
  align-items: center;
}

.product-split .container {
  padding-top: clamp(3rem, 6vw, 5rem);
  padding-bottom: clamp(3rem, 6vw, 5rem);
}

.product-split-grid {
  margin-top: clamp(1.5rem, 3vw, 2.5rem);
}

.features-section .product-split-grid,
.bento-section .product-split-grid,
.seo-content .product-split-grid {
  margin-top: clamp(2rem, 3vw, 3rem);
}

.product-split__visual {
  border-radius: var(--radius-lg);
  overflow: hidden;
  border: 1px solid var(--border);
  aspect-ratio: 4 / 3;
  background: var(--bg-main);
}

.product-split__visual img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.product-split__body h2 {
  margin-bottom: 1rem;
}

.product-split__body > p {
  color: var(--text-muted);
  max-width: 52ch;
}

.product-split__body .icon-list {
  list-style: none;
  margin: 1.5rem 0 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}

.product-split__body .icon-list-item {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 1rem;
  align-items: start;
}

.product-split__body .icon-list-item .icon,
.product-split__body .icon-list-item .icon-list-icon {
  width: 44px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  background: rgba(16, 32, 58, 0.88);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  color: var(--cyan);
}

.product-split__body .icon-list-item .icon svg,
.product-split__body .icon-list-item .icon-list-icon svg {
  width: 22px;
  height: 22px;
  display: block;
  flex-shrink: 0;
}

.product-split__body .icon-list-item h4 {
  font-family: var(--font-display);
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.25;
  color: #fff;
  margin: 0 0 0.35rem;
}

.product-split__body .icon-list-item p {
  margin: 0;
  font-size: var(--copy-size);
  line-height: var(--copy-lh);
  color: var(--text-muted);
}

.product-split__body .icon-list > li:not(.icon-list-item) {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 0.875rem;
  align-items: start;
}

.product-split__body .icon-list .list-icon,
.icon-list .list-icon {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  margin-top: 0.15rem;
  color: var(--cyan);
  display: block;
}

.icon-list > li {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 0.875rem;
  align-items: start;
}

.icon-list > li > div:last-child h4 {
  font-family: var(--font-display);
  font-size: var(--heading-3-size, clamp(1.0625rem, 1.6vw, 1.25rem));
  color: #fff;
  margin: 0 0 0.35rem;
}

.icon-list > li > div:last-child p {
  margin: 0;
  font-size: var(--copy-size);
  line-height: var(--copy-lh);
  color: var(--text-muted);
}

.bento-section {
  background: var(--bg-main);
}

.bento-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: clamp(0.875rem, 1.5vw, 1.25rem);
}

.bento-item {
  background: var(--bg-tint);
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  padding: clamp(1.25rem, 2.5vw, 1.75rem);
  border-left: 3px solid var(--cyan);
}

.bento-item h3 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 0.75rem;
}

.bento-item h3 svg {
  width: 22px;
  height: 22px;
  flex-shrink: 0;
  color: var(--cyan);
}

.bento-item p {
  color: var(--text-muted);
  margin: 0;
}

.bento-item-large,
.bento-item.large {
  grid-column: span 2;
}

.bento-grid--1-3 .bento-item.large {
  grid-column: 1 / -1;
}

.bento-item-tall {
  grid-row: span 2;
}

/* 1 широкая (на всю строку) + 3 равные: широкая сверху или снизу — по классу large/full */
.bento-grid--1-3 {
  grid-template-columns: repeat(3, 1fr);
}

.bento-grid--1-3 > .bento-item:first-child.bento-item-large,
.bento-grid--1-3 > .bento-item:first-child.large,
.bento-grid--1-3 > .bento-item:first-child.bento-item-full,
.bento-grid--1-3 > .bento-item:first-child.full,
.bento-grid--1-3 .bento-item-large:first-child,
.bento-grid--1-3 .bento-item.large:first-child {
  grid-column: 1 / -1;
}

.bento-grid--1-3 > .bento-item:last-child.bento-item-large,
.bento-grid--1-3 > .bento-item:last-child.large,
.bento-grid--1-3 > .bento-item:last-child.bento-item-full,
.bento-grid--1-3 > .bento-item:last-child.full,
.bento-grid--1-3 .bento-item-large:last-child,
.bento-grid--1-3 .bento-item.large:last-child,
.bento-grid--1-3 .bento-item-full:last-child,
.bento-grid--1-3 .bento-item.full:last-child {
  grid-column: 1 / -1;
}

.bento-grid--1-3 .bento-item-large:not(:first-child):not(:last-child),
.bento-grid--1-3 .bento-item.large:not(:first-child):not(:last-child) {
  grid-column: 1 / -1;
}

.bento-grid--1-3 .bento-item-full,
.bento-grid--1-3 .bento-item.full {
  grid-column: 1 / -1;
}

/* 4 равные ячейки в одну строку (только если все одной ширины, без large/full) */
.bento-grid--4 {
  grid-template-columns: repeat(4, 1fr);
}

.bento-grid--4 > .bento-item,
.bento-grid--4 .bento-item-large,
.bento-grid--4 .bento-item.large,
.bento-grid--4 .bento-item-full,
.bento-grid--4 .bento-item.full,
.bento-grid--4 .bento-item-half {
  grid-column: auto;
}

/* 5–6 карточек: 3 колонки, равные ячейки (нижний ряд 2 без центрирования) */
.bento-grid--3-3 {
  grid-template-columns: repeat(3, 1fr);
}

.bento-grid--3-3 > .bento-item {
  grid-column: auto;
}

.bento-grid--3-3 > .bento-item-large,
.bento-grid--3-3 > .bento-item.large {
  grid-column: auto;
}

/* 5 карточек с примерно равным текстом: 3 сверху + 2 по центру снизу */
.bento-grid--3-2 {
  grid-template-columns: repeat(6, 1fr);
}

.bento-grid--3-2 > .bento-item {
  grid-column: span 2;
}

.bento-grid--3-2 > .bento-item:nth-child(4) {
  grid-column: 2 / span 2;
}

.bento-grid--3-2 > .bento-item:nth-child(5) {
  grid-column: 4 / span 2;
}

.bento-grid--3-2 > .bento-item-large,
.bento-grid--3-2 > .bento-item.large,
.bento-grid--3-2 > .bento-item-full,
.bento-grid--3-2 > .bento-item.full {
  grid-column: span 2;
}

.bento-grid--3-2 > .bento-item-large:nth-child(4),
.bento-grid--3-2 > .bento-item.large:nth-child(4) {
  grid-column: 2 / span 2;
}

.bento-grid--3-2 > .bento-item-large:nth-child(5),
.bento-grid--3-2 > .bento-item.large:nth-child(5) {
  grid-column: 4 / span 2;
}

/* 5–6 этапов */
.steps--3-3 {
  grid-template-columns: repeat(3, 1fr);
}

.steps--3-3 > .step {
  grid-column: auto;
}

.steps--3-2 {
  grid-template-columns: repeat(6, 1fr);
}

.steps--3-2 > .step {
  grid-column: span 2;
}

.steps--3-2 > .step:nth-child(4) {
  grid-column: 2 / span 2;
}

.steps--3-2 > .step:nth-child(5) {
  grid-column: 4 / span 2;
}

.bento-stats {
  display: flex;
  flex-wrap: wrap;
  gap: clamp(1.25rem, 3vw, 2.5rem);
  margin-top: 1.25rem;
}

.bento-stat-number {
  font-family: var(--font-display);
  font-size: clamp(1.5rem, 3vw, 2rem);
  font-weight: 700;
  color: var(--cyan);
  line-height: 1.1;
}

.bento-stat-label {
  font-size: 0.85rem;
  color: var(--text-muted);
  margin-top: 0.25rem;
}

.bento-stat {
  font-family: var(--font-display);
  font-size: clamp(2rem, 4vw, 2.75rem);
  font-weight: 700;
  color: var(--cyan);
  line-height: 1;
  margin-bottom: 0.75rem;
}

.bento-stat.accent {
  color: var(--secondary);
}

.applications-section {
  background: var(--bg-tint);
}

.applications-grid,
.app-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: clamp(0.875rem, 1.5vw, 1.25rem);
}

.applications-grid--symmetric,
.app-grid.applications-grid--symmetric {
  display: grid;
  gap: clamp(0.875rem, 1.5vw, 1.25rem);
  grid-template-columns: repeat(3, 1fr);
}

/* 4 равные карточки применения / шагов — одна строка */
.applications-grid--4,
.applications-grid:has(> .app-card:nth-child(4):last-child) {
  grid-template-columns: repeat(4, 1fr);
}

.steps--4,
.steps:has(> .step:nth-child(4):last-child) {
  grid-template-columns: repeat(4, 1fr);
}

.features-grid--symmetric {
  display: grid;
  gap: clamp(0.875rem, 1.5vw, 1.25rem);
  grid-template-columns: repeat(3, 1fr);
}

.app-card {
  background: var(--bg-main);
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  padding: clamp(1.25rem, 2.5vw, 1.75rem);
  transition: border-color 0.2s ease;
}

.app-card:hover {
  border-color: rgba(0, 242, 255, 0.45);
}

.app-card-icon {
  width: 44px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(0, 242, 255, 0.35);
  border-radius: var(--radius);
  color: var(--cyan);
  margin-bottom: 1rem;
}

.app-card-icon svg {
  width: 22px;
  height: 22px;
}

.app-card h3 {
  margin-bottom: 0.65rem;
}

.app-card p {
  color: var(--text-muted);
  margin: 0;
}

.reviews-section {
  background: var(--bg-main);
}

.reviews-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: clamp(1rem, 2vw, 1.5rem);
}

.review-card {
  background: var(--bg-tint);
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  padding: clamp(1.25rem, 2.5vw, 1.75rem);
}

.review-header {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-bottom: 1rem;
}

.review-avatar {
  width: 48px;
  height: 48px;
  border-radius: var(--radius);
  background: rgba(0, 242, 255, 0.12);
  border: 1px solid rgba(0, 242, 255, 0.35);
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font-display);
  font-weight: 700;
  font-size: 0.875rem;
  color: var(--cyan);
  flex-shrink: 0;
}

.review-meta h4 {
  margin: 0 0 0.2rem;
  font-size: 1rem;
}

.review-meta span {
  font-size: var(--caption-size);
  color: var(--text-muted);
}

.review-card > p {
  color: var(--text-muted);
  margin: 0;
  font-style: italic;
}

.seo-section {
  background: var(--bg-tint);
  border-top: 1px solid var(--border);
}

.seo-content {
  max-width: 70ch;
  margin: 0 auto 2rem;
}

.seo-content p {
  color: var(--text-muted);
  margin: 0 0 var(--text-gap, 1rem);
}

.seo-content p:last-of-type {
  margin-bottom: var(--text-to-action, 1.75rem);
}

.features-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: clamp(0.875rem, 1.5vw, 1.25rem);
}

/* 6 равных карточек — 3+3, не 4+2 (auto-fit на широком экране) */
.features-grid:has(> .feature-card:nth-child(6):last-child),
.features-grid:has(> .feature-minimal:nth-child(6):last-child) {
  grid-template-columns: repeat(3, 1fr);
}

.applications-grid:not(.applications-grid--symmetric):has(> .app-card:nth-child(6):last-child),
.applications-grid:not(.applications-grid--symmetric):has(> .application-card:nth-child(6):last-child) {
  grid-template-columns: repeat(3, 1fr);
}

.bento-grid:not([class*='bento-grid--']):has(> .bento-item:nth-child(6):last-child) {
  grid-template-columns: repeat(3, 1fr);
}

.seo-highlights {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem 1.25rem;
  list-style: none;
  margin: 1.75rem auto 0;
  padding: 0;
  max-width: 960px;
}

.seo-highlight {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 0.625rem;
  text-align: left;
}

.seo-highlight__icon {
  flex-shrink: 0;
  width: 36px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--cyan);
  line-height: 0;
  margin-top: 0.05rem;
  background: rgba(0, 242, 255, 0.08);
  border: 1px solid rgba(0, 242, 255, 0.25);
  border-radius: var(--radius);
}

.seo-highlight__icon svg {
  width: 18px;
  height: 18px;
  display: block;
  flex-shrink: 0;
}

.seo-highlight__text {
  margin: 0;
  font-size: var(--copy-size);
  line-height: 1.45;
  color: var(--text-muted);
}

.product-hero-split .hero-content {
  text-align: left;
  margin: 0;
  max-width: none;
}

.product-hero-split .hero-cta {
  justify-content: flex-start;
}

.product-hero-split--visual .container {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(2rem, 4vw, 3rem);
  align-items: center;
}

.product-hero-split--visual .hero-visual,
.product-hero-split--visual .hero-page-visual {
  border-radius: var(--radius-lg);
  overflow: hidden;
  border: 1px solid var(--border);
  aspect-ratio: 4 / 3;
  background: var(--bg-main);
}

.product-hero-split--visual .hero-visual img,
.product-hero-split--visual .hero-page-visual img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

@media (max-width: 900px) {
  .product-hero-split--visual .container {
    grid-template-columns: 1fr;
  }

  .product-split .container {
    grid-template-columns: 1fr;
  }

  .applications-grid--symmetric {
    grid-template-columns: repeat(2, 1fr);
  }

  .features-grid--symmetric {
    grid-template-columns: repeat(2, 1fr);
  }

  .bento-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .bento-item-large,
  .bento-item-tall {
    grid-column: span 1;
    grid-row: span 1;
  }

  .bento-grid--4,
  .bento-grid--1-3 {
    grid-template-columns: repeat(2, 1fr);
  }

.bento-grid--3-3,
  .bento-grid--3-2 {
    grid-template-columns: repeat(2, 1fr);
  }

  .bento-grid--3-2 > .bento-item,
  .bento-grid--3-2 > .bento-item:nth-child(4),
  .bento-grid--3-2 > .bento-item:nth-child(5) {
    grid-column: auto;
  }

  .steps--3-3,
  .steps--3-2 {
    grid-template-columns: repeat(2, 1fr);
  }

  .steps--3-2 > .step,
  .steps--3-2 > .step:nth-child(4),
  .steps--3-2 > .step:nth-child(5) {
    grid-column: auto;
  }
}

@media (max-width: 600px) {
  .seo-highlights {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.875rem 0.75rem;
  }

  .geo-grid,
  .delivery-grid,
  .regions-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .applications-grid--symmetric {
    grid-template-columns: 1fr;
  }

  .features-grid--symmetric {
    grid-template-columns: 1fr;
  }

  .bento-grid {
    grid-template-columns: 1fr;
  }

  .bento-grid--4,
  .bento-grid--1-3 {
    grid-template-columns: 1fr;
  }

  .bento-grid--3-3,
  .bento-grid--3-2 {
    grid-template-columns: 1fr;
  }

  .bento-grid--3-2 > .bento-item,
  .bento-grid--3-2 > .bento-item:nth-child(4),
  .bento-grid--3-2 > .bento-item:nth-child(5) {
    grid-column: auto;
  }

  .steps--3-3,
  .steps--3-2 {
    grid-template-columns: 1fr;
  }

  .steps--3-2 > .step,
  .steps--3-2 > .step:nth-child(4),
  .steps--3-2 > .step:nth-child(5) {
    grid-column: auto;
  }

  .product-hero-split .hero-cta {
    justify-content: center;
  }
}

@media (max-width: 420px) {
  .seo-highlights {
    grid-template-columns: 1fr;
  }
}

/* services.html — сетка услуг и регионы */
.services-section {
  background: var(--bg-main);
}

.services-bento {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: clamp(1rem, 2vw, 1.5rem);
}

.bento-card {
  background: rgba(16, 32, 58, 0.88);
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  padding: clamp(1.25rem, 2.5vw, 1.75rem);
  border-left: 3px solid var(--cyan);
  transition: border-color 0.2s ease, transform 0.28s cubic-bezier(0.16, 1, 0.3, 1);
}

.bento-card:hover {
  border-color: rgba(0, 242, 255, 0.35);
  transform: translateY(-3px);
}

.bento-card-large {
  grid-column: span 7;
}

.bento-card-medium {
  grid-column: span 5;
}

.bento-card-full {
  grid-column: span 12;
}

.bento-card-split {
  grid-column: span 6;
}

.bento-card .bento-icon {
  width: 44px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1rem;
  color: var(--cyan);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  background: rgba(0, 242, 255, 0.06);
}

.bento-card .bento-icon svg {
  width: 22px;
  height: 22px;
  display: block;
}

.bento-card h3 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 0.75rem;
  color: #fff;
  font-family: var(--font-display);
  line-height: 1.2;
}

.bento-card h3 svg {
  width: 22px;
  height: 22px;
  flex-shrink: 0;
  color: var(--cyan);
}

.bento-card p {
  margin: 0 0 1rem;
  color: var(--text-muted);
  font-size: var(--copy-size);
  line-height: var(--copy-lh);
}

.bento-card .btn {
  margin-top: 0.25rem;
}

.geo-section {
  background: var(--bg-tint);
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
}

.geo-section .geo-content {
  position: relative;
  z-index: 1;
}

.geo-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(148px, 1fr));
  gap: 0.5rem 0.625rem;
}

.geo-card,
.geo-city,
.geo-item {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.5rem 0.75rem;
  min-height: 0;
  background: rgba(16, 32, 58, 0.88);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  color: var(--text-muted);
  font-size: 0.875rem;
  line-height: 1.35;
  transition: border-color 0.2s ease;
}

.geo-card:hover,
.geo-city:hover,
.geo-item:hover {
  border-color: rgba(0, 242, 255, 0.35);
}

.geo-card svg,
.geo-city svg,
.geo-item svg {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  display: block;
  color: var(--cyan);
}

.geo-card span,
.geo-city span {
  font-size: 0.875rem;
  line-height: 1.35;
}

.geo-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem 0.625rem;
  list-style: none;
  margin: 0;
  padding: 0;
  justify-content: center;
}

.geo-list li {
  padding: 0.45rem 0.75rem;
  font-size: 0.875rem;
  line-height: 1.35;
  color: var(--text-muted);
  background: rgba(16, 32, 58, 0.88);
  border: 1px solid var(--border);
  border-radius: var(--radius);
}

.delivery-section {
  background: var(--bg-main);
}

.delivery-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(168px, 1fr));
  gap: 0.5rem 0.625rem;
}

.delivery-card {
  padding: 0.75rem 0.875rem;
  background: rgba(16, 32, 58, 0.88);
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
}

.delivery-card .region-name {
  font-family: var(--font-display);
  font-size: 0.9375rem;
  font-weight: 600;
  color: #fff;
  margin-bottom: 0.35rem;
  line-height: 1.25;
}

.delivery-card .region-detail {
  margin: 0;
  font-size: 0.8125rem;
  line-height: 1.4;
  color: var(--text-muted);
}

.delivery-item {
  padding: clamp(1rem, 2vw, 1.25rem);
  background: rgba(16, 32, 58, 0.88);
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
}

.delivery-card-icon,
.delivery-icon {
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  margin-bottom: 0.75rem;
  background: rgba(0, 242, 255, 0.08);
  border: 1px solid rgba(0, 242, 255, 0.25);
  border-radius: var(--radius);
  color: var(--cyan);
}

.delivery-card-icon svg,
.delivery-icon svg {
  width: 20px;
  height: 20px;
  display: block;
  flex-shrink: 0;
}

.delivery-card h3,
.delivery-item h3 {
  margin-bottom: 0.5rem;
}

.delivery-card p,
.delivery-item p {
  margin: 0;
  color: var(--text-muted);
}

/* ——— Legacy bento-cell (до миграции на bento-item) ——— */
.bento-cell {
  background: var(--bg-tint);
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  padding: clamp(1.25rem, 2.5vw, 1.75rem);
  border-left: 3px solid var(--cyan);
}

.bento-cell h3 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 0.75rem;
}

.bento-cell h3 svg {
  width: 22px;
  height: 22px;
  max-width: 22px;
  max-height: 22px;
  flex-shrink: 0;
  color: var(--cyan);
}

.bento-cell .bento-stat,
.bento-cell .bento-stat-accent {
  font-family: var(--font-display);
  font-size: clamp(1.75rem, 3vw, 2.5rem);
  font-weight: 700;
  color: var(--cyan);
  line-height: 1.1;
  margin-bottom: 0.5rem;
}

.bento-cell p {
  color: var(--text-muted);
  margin: 0;
}

/* ——— Legacy-разметка (до полной унификации HTML) ——— */
.premium-icon-box,
.feature-icon,
.bento-item .bento-icon,
.bento-card .bento-icon,
.minimal-feature .feature-icon,
.minimal-feature-icon {
  width: 44px;
  height: 44px;
  min-width: 44px;
  min-height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  margin-bottom: 1rem;
  color: var(--cyan);
  background: rgba(0, 242, 255, 0.08);
  border: 1px solid rgba(0, 242, 255, 0.35);
  border-radius: var(--radius);
}

.feature-icon svg,
.bento-item .bento-icon svg,
.bento-card .bento-icon svg,
.minimal-feature .feature-icon svg,
.minimal-feature-icon svg {
  width: 22px;
  height: 22px;
  display: block;
  flex-shrink: 0;
}

.bento-item h3 svg {
  width: 22px;
  height: 22px;
  flex-shrink: 0;
  color: var(--cyan);
}

.features-minimal,
.features-section.features-minimal {
  background: var(--bg-main);
}

.features-minimal-grid,
.features-minimal .features-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: clamp(0.875rem, 1.5vw, 1.25rem);
}

.minimal-feature,
.feature-card.minimal-feature {
  background: rgba(16, 32, 58, 0.88);
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  padding: clamp(1.25rem, 2.5vw, 1.75rem);
  border-left: 3px solid var(--cyan);
}

.minimal-feature-content h3,
.minimal-feature-content p {
  margin: 0;
}

.minimal-feature-content h3 {
  margin-bottom: 0.65rem;
  color: #fff;
  font-family: var(--font-display);
  font-size: var(--heading-3-size, clamp(1.0625rem, 1.6vw, 1.25rem));
}

.minimal-feature-content p {
  color: var(--text-muted);
  font-size: var(--copy-size);
  line-height: var(--copy-lh);
}

.process-section .dark-content {
  max-width: 52rem;
  margin: 0 auto;
  text-align: center;
}

.process-section .dark-content > h2 {
  margin-bottom: 1rem;
}

.process-section .dark-content > p {
  color: var(--text-muted);
  margin: 0 0 2rem;
  font-size: var(--copy-size);
  line-height: var(--copy-lh);
}

.dark-stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: clamp(0.75rem, 1.5vw, 1.25rem);
  margin-bottom: 2rem;
}

.dark-stat {
  padding: clamp(1rem, 2vw, 1.5rem);
  background: rgba(16, 32, 58, 0.88);
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  text-align: center;
}

.dark-stat-number {
  font-family: var(--font-display);
  font-size: clamp(1.75rem, 3vw, 2.25rem);
  font-weight: 700;
  color: var(--cyan);
  line-height: 1.1;
  margin-bottom: 0.5rem;
}

.dark-stat p {
  margin: 0;
  font-size: var(--copy-size);
  color: var(--text-muted);
  line-height: var(--copy-lh);
}

.process-section .dark-content > .btn,
.process-section .dark-content > .btn-accent {
  margin-top: var(--text-to-action, 1.75rem);
}

.btn-accent {
  background: var(--secondary) !important;
  color: #fff !important;
  border-color: var(--secondary) !important;
}

.app-card:has(.app-card-img),
article.app-card:has(.app-card-img) {
  display: flex;
  flex-direction: column;
  padding: 0;
  overflow: hidden;
  background: rgba(16, 32, 58, 0.88);
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
}

.app-card-img {
  aspect-ratio: 16 / 10;
  overflow: hidden;
  background: var(--bg-main);
  border-bottom: 1px solid var(--border);
}

.app-card-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.app-card-body {
  padding: clamp(1rem, 2vw, 1.25rem);
}

.app-card-body h3 {
  margin-bottom: 0.65rem;
  color: #fff;
}

.app-card-body p {
  margin: 0;
  color: var(--text-muted);
  font-size: var(--copy-size);
  line-height: var(--copy-lh);
}

.product-split:has(.product-split__visual):not(:has(.product-split__body)) .container {
  grid-template-columns: 1fr;
  max-width: 56rem;
}

/* ——— Legacy-сетки и иконки (унификация под эталон) ——— */
.resistance-grid,
.advantages-grid,
.capabilities-grid,
.application-grid,
.apps-grid,
.models-grid,
.specs-grid,
.volume-grid,
.comparison-grid:not(.comparison-table),
.materials-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: clamp(0.875rem, 1.5vw, 1.25rem);
}

.resistance-card,
.advantage-card,
.capability-card,
.minimal-card,
.model-card,
.spec-card,
.volume-card,
.comparison-card {
  background: var(--bg-tint);
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  padding: clamp(1.25rem, 2.5vw, 1.75rem);
}

/* Ключевые параметры (эталон: emkosti-3000-l.html → specs-section) */
.specs-section {
  padding: clamp(3rem, 6vw, 5rem) 0;
}

.specs-section .specs-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: clamp(0.75rem, 1.5vw, 1.25rem);
}

.specs-section .spec-card {
  text-align: center;
  padding: clamp(1.25rem, 2.5vw, 1.75rem);
}

.specs-section .spec-card p {
  margin: 0;
  font-size: var(--copy-size);
  color: var(--text-muted);
  line-height: var(--copy-lh);
}

/* 4 равные ячейки (Производственные возможности, ключевые цифры) — одна строка, не 3+1 */
.specs-grid--4,
.specs-grid:has(> .spec-card:nth-child(4):last-child) {
  grid-template-columns: repeat(4, 1fr);
}

.specs-grid--4 .spec-card,
.specs-grid:has(> .spec-card:nth-child(4):last-child) .spec-card {
  text-align: center;
}

.specs-grid--4 .spec-card p,
.specs-grid:has(> .spec-card:nth-child(4):last-child) .spec-card p {
  margin: 0;
  font-size: var(--copy-size);
  color: var(--text-muted);
  line-height: var(--copy-lh);
}

.spec-number {
  font-family: var(--font-display);
  font-size: clamp(1.75rem, 3vw, 2.5rem);
  font-weight: 700;
  color: var(--text);
  line-height: 1.1;
  margin-bottom: 0.5rem;
}

.spec-number.accent {
  color: var(--cyan);
}

.dark-accent-section .spec-card,
.process-section .spec-card {
  background: rgba(16, 32, 58, 0.88);
}

.dark-accent-section .spec-card p,
.process-section .spec-card p {
  color: var(--text-muted);
}

.resistance-icon,
.advantage-icon,
.application-icon,
.minimal-card-icon,
.material-item-icon,
.type-list-icon,
.apps-list-icon,
.split-list-icon,
.feature-minimal-icon {
  width: 44px;
  height: 44px;
  min-width: 44px;
  min-height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  margin-bottom: 1rem;
  color: var(--cyan);
  background: rgba(0, 242, 255, 0.08);
  border: 1px solid rgba(0, 242, 255, 0.35);
  border-radius: var(--radius);
}

.resistance-icon svg,
.advantage-icon svg,
.application-icon svg,
.minimal-card-icon svg,
.material-item-icon svg,
.type-list-icon svg,
.apps-list-icon svg,
.split-list-icon svg,
.feature-minimal-icon svg {
  width: 22px;
  height: 22px;
  max-width: 22px;
  max-height: 22px;
  display: block;
  flex-shrink: 0;
}

.resistance-card h3,
.advantage-card h3,
.capability-card h3,
.minimal-card h3 {
  margin-bottom: 0.65rem;
}

.resistance-card p,
.advantage-card p,
.capability-card p,
.minimal-card p {
  margin: 0 0 0.75rem;
  color: var(--text-muted);
  font-size: var(--copy-size);
  line-height: var(--copy-lh);
}

.resistance-card ul {
  margin: 0;
  padding-left: 1.1rem;
  color: var(--text-muted);
  font-size: var(--copy-size);
  line-height: var(--copy-lh);
}

.applications-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: clamp(1.5rem, 3vw, 2.5rem);
  align-items: center;
}

.applications-visual {
  border-radius: var(--radius-lg);
  overflow: hidden;
  border: 1px solid var(--border);
  aspect-ratio: 4 / 3;
  background: var(--bg-main);
}

.applications-visual img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.applications-content h2 {
  margin-bottom: 1rem;
}

.applications-content > p {
  color: var(--text-muted);
  margin-bottom: 1.25rem;
}

.application-list,
.materials-list,
.type-list,
.apps-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}

.application-list > li,
.materials-list > li,
.type-list > li,
.apps-list > li {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 1rem;
  align-items: start;
}

.application-list > li > svg,
.materials-list > li > svg,
.type-list > li > svg,
.apps-list > li > svg,
.application-list .list-icon,
.materials-list .list-icon {
  width: 20px;
  height: 20px;
  max-width: 20px;
  max-height: 20px;
  flex-shrink: 0;
  margin-top: 0.15rem;
  color: var(--cyan);
  display: block;
}

.application-list h4,
.materials-list h4,
.type-list h4,
.apps-list h4 {
  margin: 0 0 0.35rem;
  font-family: var(--font-display);
  font-size: var(--heading-3-size, clamp(1.0625rem, 1.6vw, 1.25rem));
  color: #fff;
}

.application-list p,
.materials-list p,
.type-list p,
.apps-list p {
  margin: 0;
  color: var(--text-muted);
  font-size: var(--copy-size);
  line-height: var(--copy-lh);
}

.types-layout {
  display: grid;
  gap: clamp(1.5rem, 3vw, 2rem);
}

.delivery-grid:not(.delivery-section .delivery-grid) {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: clamp(0.875rem, 1.5vw, 1.25rem);
}

.delivery-card-icon svg,
.delivery-icon svg {
  width: 20px;
  height: 20px;
  max-width: 20px;
  max-height: 20px;
}

@media (max-width: 900px) {
  .resistance-grid,
  .bento-grid--4,
  .bento-grid--3-3,
  .bento-grid--3-2,
  .bento-grid--1-3 {
    grid-template-columns: repeat(2, 1fr);
  }

  .applications-layout {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 600px) {
  .resistance-grid,
  .bento-grid--4,
  .bento-grid--3-3,
  .bento-grid--3-2,
  .bento-grid--1-3,
  .applications-grid--symmetric {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 900px) {
  .dark-stats,
  .specs-section .specs-grid,
  .specs-grid--4,
  .specs-grid:has(> .spec-card:nth-child(4):last-child),
  .applications-grid--4,
  .applications-grid:has(> .app-card:nth-child(4):last-child),
  .steps--4,
  .steps:has(> .step:nth-child(4):last-child) {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 600px) {
  .dark-stats,
  .specs-section .specs-grid,
  .specs-grid--4,
  .specs-grid:has(> .spec-card:nth-child(4):last-child),
  .applications-grid--4,
  .applications-grid:has(> .app-card:nth-child(4):last-child),
  .steps--4,
  .steps:has(> .step:nth-child(4):last-child) {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 900px) {
  .services-bento {
    grid-template-columns: 1fr;
  }

  .bento-card-large,
  .bento-card-medium,
  .bento-card-full,
  .bento-card-split {
    grid-column: span 1;
  }
}
