/**
 * TVK — полноэкранная вёрстка: без узкой колонки и лишнего центрирования.
 */
:root {
  --container: 100%;
  --page-gutter: 0;
}

body.product-page {
  --page-pad: 0;
  --page-gutter: 0;
}

.container,
.product-page .container,
.gpi-ribbon-section .container,
.about-industrial-strip .container,
.gpi-transport-ribbon-section .container,
.engineering-section > .container,
.engineering-section--lab > .container,
.page-section > .container,
main > section > .container,
.site-header .container,
.site-footer .container {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: var(--page-gutter) !important;
  padding-right: var(--page-gutter) !important;
  box-sizing: border-box !important;
}

.product-page main,
.product-page main > section,
.product-page .page-section {
  width: 100% !important;
  max-width: none !important;
}

.product-page .page-hero .container.hero-grid,
.product-page .page-hero .container {
  width: 100% !important;
  max-width: none !important;
  margin-inline: 0 !important;
}

.product-page .product-description,
.product-page .product-caption {
  display: none !important;
}

@media (max-width: 560px) {
  .container,
  .product-page .container,
  .gpi-transport-ribbon-section .container {
    width: 100% !important;
    max-width: 100vw !important;
    padding-left: clamp(8px, 2.5vw, 14px) !important;
    padding-right: clamp(8px, 2.5vw, 14px) !important;
  }
}

@media (min-width: 768px) {
  .product-page .page-grid {
    display: flex !important;
    flex-direction: column !important;
    grid-template-columns: 1fr !important;
  }
}

.section-heading,
.section-heading .section-intro,
.hero-lead,
.hero-lead--offer,
.hero-copy .hero-benefits,
.page-hero .section-heading p,
.about-industrial-copy p,
.video-instructions-rutube-more,
.contact-lead,
.seo-block p {
  max-width: none !important;
}

.section-heading {
  text-align: left !important;
  margin-bottom: clamp(32px, 4vw, 48px) !important;
}

.gpi-ribbon-section .section-heading {
  text-align: center !important;
}

.hero-grid,
.hero-grid--elite {
  grid-template-columns: minmax(0, 1.5fr) minmax(min(360px, 36vw), 540px) !important;
  gap: clamp(28px, 4vw, 64px) !important;
  align-items: start !important;
  width: 100% !important;
}

.hero-visual-premium img {
  max-height: min(340px, 42vh) !important;
}

.hero-stats {
  text-align: left !important;
}

.hero-stats article {
  text-align: left !important;
}

.table-scroll-container,
.tvk-table-scroll {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.table-scroll-container table,
.tvk-spec-table {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.izc-host--home,
.izc-host {
  max-width: none !important;
  width: 100% !important;
}

.documents-cta {
  justify-content: flex-start !important;
}

.catalog-grid {
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 280px), 1fr)) !important;
}

.trust-grid {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr)) !important;
}

.footer-grid {
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)) !important;
  width: 100% !important;
}

.factory-power-grid {
  width: 100% !important;
}

@media (min-width: 1200px) {
  .catalog-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}

@media (min-width: 1600px) {
  .catalog-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  }

  .hero-grid--elite {
    grid-template-columns: minmax(0, 1.55fr) minmax(420px, 580px) !important;
  }
}

.product-page .page-grid,
.product-page .page-grid.page-grid--centered,
.product-page .hero-grid,
.product-page .page-hero > .container,
.product-page .page-section > .container {
  max-width: none !important;
  width: 100% !important;
  margin-inline: 0 !important;
}

.product-page .page-hero .hero-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(min(380px, 46vw), 580px) !important;
  align-items: center !important;
  gap: clamp(16px, 2.5vw, 32px) !important;
}

.product-page .page-hero .hero-copy {
  grid-column: 1 !important;
  grid-row: 1 !important;
}

.product-page .page-hero .product-media {
  grid-column: 2 !important;
  grid-row: 1 !important;
}

@media (max-width: 900px) {
  .product-page .page-hero .hero-grid {
    display: flex !important;
    flex-direction: column !important;
    grid-template-columns: none !important;
  }

  .product-page .page-hero .hero-copy,
  .product-page .page-hero .product-media {
    grid-column: auto !important;
    grid-row: auto !important;
  }
}

.product-page .page-hero .hero-copy h1,
.product-page .page-hero .hero-points.feature-list,
.product-page .content-stack,
.product-page .content-card,
.product-page .table-shell,
.product-page .table-shell .content-card,
.product-page .u-table-scroll,
.product-page .u-table-min,
.product-page .engineering-section--embed,
.product-page .tvk-product-cta,
.product-page .product-nav--bar {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
}

.product-page .page-hero .hero-points.feature-list {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  column-gap: clamp(20px, 3vw, 48px) !important;
}

@media (max-width: 768px) {
  .product-page .page-hero .hero-points.feature-list {
    grid-template-columns: 1fr !important;
  }
}

.product-page .page-hero .product-media .product-photo img,
.product-page .page-hero .product-media .product-photo video {
  max-width: min(100%, 1400px) !important;
}

.product-page .table-shell,
.product-page .table-shell table,
.product-page .u-table-scroll,
.product-page .u-table-min {
  width: 100% !important;
  max-width: none !important;
}

.product-page .section-heading,
.product-page .content-card > h2:first-child,
.product-page .izc-section-heading {
  text-align: left !important;
}

.product-page .gpi-ribbon-section .section-heading,
.product-page .gpi-ribbon-section .section-heading h2,
.product-page .gpi-ribbon-section .section-heading .section-intro {
  text-align: center !important;
}

.product-page .page-hero .hero-copy {
  text-align: left !important;
}

.product-page .page-hero .hero-copy .breadcrumbs,
.product-page .page-hero .hero-copy .back-to-catalog {
  text-align: left !important;
}

/* Каталог фитингов — как контент на карточке трубы */
.product-page .gpi-accessories-block,
.product-page #gpi-accessories {
  width: 100% !important;
  max-width: none !important;
}

.product-page .gpi-accessories-block .section-heading,
.product-page .gpi-accessories-block .section-heading h2,
.product-page .gpi-accessories-block .section-heading .eyebrow,
.product-page #gpi-accessories .section-heading,
.product-page #gpi-accessories .section-heading h2,
.product-page #gpi-accessories .section-heading .eyebrow,
.product-page #gpi-accessories .document-card h3,
.product-page #gpi-accessories .document-card p {
  text-align: left !important;
}

.product-page .gpi-accessories-block .documents-grid,
.product-page #gpi-accessories .documents-grid {
  width: 100%;
  max-width: 100%;
}

/* Контентные карточки — как на ИЗОКОМ-95a (не по центру) */
.product-page .page-section .content-card > h2,
.product-page .page-section .content-card > .card-intro,
.product-page .page-section .content-card > p,
.product-page .page-section .content-card .feature-list {
  text-align: left !important;
}

.product-page .page-section .content-card .card-intro {
  justify-content: flex-start !important;
}

.tvk-inner-page .page-grid,
.tvk-inner-page .content-stack,
.download-page .page-grid,
.download-page .documents-grid {
  max-width: none !important;
  width: 100% !important;
}

.page-section,
.hero-section,
.factory-power-section,
.catalog-section,
.clients-section {
  width: 100% !important;
  max-width: none !important;
}
