:root {
  --container-gutter: 1.25rem;
}

body {
  min-width: 0;
}

.site-header__inner {
  grid-template-columns: auto 1fr;
  gap: var(--space-2);
  min-height: 4.5rem;
  padding-block: var(--space-1);
}

.site-brand-lockup { min-width: 0; }
.site-brand { gap: 0.25rem; font-size: 0.75rem; }
.site-brand img { width: 1.5rem; height: 1.5rem; }
.site-brand__descriptor {
  padding-inline-start: 0.4rem;
  margin-inline-start: 0.4rem;
  font-size: 0.4rem;
  letter-spacing: 0.035em;
  line-height: 1.35;
  white-space: nowrap;
}

.menu-button {
  grid-column: 2;
  grid-row: 1;
  width: 2.75rem;
  min-height: 2.75rem;
  align-items: center;
  justify-content: center;
  justify-self: end;
  padding: 0;
  background: var(--color-paper);
  border: 0.0625rem solid var(--color-text);
  border-radius: var(--radius);
  cursor: pointer;
}

.menu-button__icon,
.menu-button__icon::before,
.menu-button__icon::after {
  display: block;
  width: 1.125rem;
  height: 0.09375rem;
  background: currentColor;
  content: "";
  transition: transform var(--motion-fast) ease, opacity var(--motion-fast) ease;
}

.menu-button__icon { position: relative; }
.menu-button__icon::before,
.menu-button__icon::after { position: absolute; inset-inline-start: 0; }
.menu-button__icon::before { transform: translateY(-0.35rem); }
.menu-button__icon::after { transform: translateY(0.35rem); }
.site-header.is-menu-open .menu-button__icon { background: transparent; }
.site-header.is-menu-open .menu-button__icon::before { transform: rotate(45deg); }
.site-header.is-menu-open .menu-button__icon::after { transform: rotate(-45deg); }
.site-header.is-navigation-ready .menu-button { display: inline-flex; }

.primary-nav {
  display: grid;
  grid-column: 1 / -1;
  grid-row: 2;
  gap: var(--space-3);
  justify-self: stretch;
  padding-block-start: var(--space-2);
  border-block-start: 0.0625rem solid var(--color-line);
}

.site-header.is-navigation-ready .primary-nav { display: none; }
.site-header.is-navigation-ready.is-menu-open .primary-nav { display: grid; }

.primary-nav__list {
  display: grid;
  gap: var(--space-1);
  grid-template-columns: repeat(2, minmax(0, 1fr));
  width: auto;
}

.primary-nav a,
.site-header__cta { width: 100%; }

@media (min-width: 22rem) {
  .site-brand { gap: 0.375rem; font-size: 0.875rem; }
  .site-brand img { width: 2rem; height: 2rem; }
  .site-brand__descriptor {
    padding-inline-start: 0.625rem;
    margin-inline-start: 0.625rem;
    font-size: clamp(0.48rem, 2vw, 0.5625rem);
    letter-spacing: 0.055em;
  }
}

.project-competencies__list {
  grid-template-columns: 1fr;
}

.hero {
  min-height: 0;
  padding-block: var(--space-8) var(--space-5);
  background:
    linear-gradient(90deg, transparent 0 94%, color-mix(in srgb, var(--color-brand) 48%, transparent) 94% 100%),
    var(--color-paper);
}

.hero.has-no-media {
  padding-block: var(--space-5);
}

.hero__content,
.hero.has-no-media .hero__content,
.project-passport {
  grid-column: 1 / -1;
}

.hero__visual {
  margin-block-end: var(--space-4);
}

.hero.has-no-media .hero__content {
  grid-column: 1 / -1;
}

.hero__eyebrow {
  max-width: 28ch;
  margin-block-end: var(--space-3);
}

.hero h1 {
  max-width: none;
  margin-block-end: var(--space-4);
  font-size: clamp(2rem, 7.5vw, 2.5rem);
  letter-spacing: -0.04em;
}

.hero.has-no-media h1 {
  max-width: none;
  font-size: clamp(2.125rem, 9vw, 2.5rem);
  text-wrap: wrap;
}

.hero__lead,
.hero__summary {
  margin-block-end: var(--space-4);
  font-size: var(--type-body);
}

.hero__subtitle {
  font-size: clamp(1.125rem, 4.8vw, 1.25rem);
}

.hero-proof {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-2);
}

.hero-proof__item {
  padding-inline-start: var(--space-1);
}

.hero-proof__item strong {
  font-size: clamp(0.875rem, 3.8vw, 1rem);
  white-space: nowrap;
}

.hero-proof__item span {
  font-size: 0.75rem;
}

.hero.has-no-media .hero__lead {
  grid-template-columns: 1fr;
  font-size: var(--type-body);
  line-height: 1.45;
}

.hero.has-no-media .hero__primary-copy {
  grid-column: 1;
}

.hero.has-no-media .hero__supporting-copy {
  grid-column: 1;
  grid-template-columns: 1fr;
}

.content-section h2,
.contact-section h2 {
  font-size: clamp(1.75rem, 8vw, 2.25rem);
  hyphens: none;
  overflow-wrap: normal;
  word-break: normal;
}

.section__intro {
  max-width: 48rem;
}

.section-lead {
  font-size: 1.125rem;
}

.project-section .section__intro,
.products-section .section__intro,
.economics-logic-section .section__intro,
.project-section__summary,
.products-section__summary,
.economics-logic__body,
.technology-section .section__intro,
.technology-section__summary,
.readiness-section .section__intro,
.readiness-section__summary,
.production-section .section__intro,
.production-section__body,
.market-section .section__intro,
.market-section__summary,
.raw-materials-section .section__intro,
.raw-materials-section__body,
.economics-section .section__intro,
.economics-section__summary,
.roadmap-section .section__intro,
.roadmap-section__summary,
.team-section .section__intro,
.team-section__summary,
.partnership-section .section__intro,
.contact-section .section__intro,
.contact-section__body {
  grid-column: 1 / -1;
}

.project-section__summary,
.products-section__summary,
.technology-section__summary,
.readiness-section__summary,
.production-section__body,
.market-section__summary,
.raw-materials-section__body,
.economics-section__summary,
.roadmap-section__summary,
.team-section__summary,
.contact-section__body {
  margin-block-start: var(--space-4);
}

.project-section__summary,
.products-section__summary {
  display: grid;
  grid-template-columns: 1fr;
  max-width: none;
}

.project-section__summary p,
.products-section__summary p {
  margin: 0;
}

.project-panorama {
  grid-template-columns: 1fr;
  margin-block-start: var(--space-6);
}

.project-panorama__site,
.project-panorama__line,
.project-panorama__directions {
  grid-column: 1;
}

.project-panorama__line {
  border-block: 0.0625rem solid var(--color-line);
  border-inline: 0;
}

.project-panorama h3,
.project-panorama__statement {
  max-width: none;
  margin-block-end: var(--space-4);
}

.project-panorama h3 {
  font-size: 1.75rem;
}

.project-panorama__statement {
  font-size: 1.375rem;
}

.logic-chain {
  grid-template-columns: 1fr;
  margin-block-start: var(--space-6);
}

.logic-chain li + li {
  border-block-start: 0.0625rem solid var(--color-line);
  border-inline-start: 0;
}

.logic-chain li + li::before {
  content: "↓";
  inset-block-start: -1rem;
  inset-inline-start: var(--space-3);
}

.logic-chain .technical-label {
  min-height: 0;
  margin-block-end: var(--space-4);
}

.logic-status {
  grid-template-columns: 1fr;
}

.product-line {
  grid-template-columns: 1fr;
  margin-block-start: var(--space-6);
}

.product-line__item--coupling,
.product-line__item--pup-joint,
.product-line__item--adapter,
.product-line__extension {
  grid-column: 1;
  grid-row: auto;
}

.product-line__item--coupling {
  min-height: 0;
}

.product-line__item--pup-joint {
  display: block;
  min-height: 0;
}

.product-line__item--pup-joint > p {
  margin-block-start: var(--space-8);
}

.product-line__item--adapter {
  margin-inline-start: var(--space-4);
  padding-inline-end: 0;
}

.product-line__extension {
  display: block;
}

.technology-route {
  grid-template-columns: 1fr;
  gap: 0;
  margin-block-start: var(--space-8);
}

.technology-route li {
  min-height: 5.5rem;
  padding: 0 0 var(--space-6) var(--space-8);
}

.technology-route li::before {
  inset-block-start: 0.15rem;
}

.technology-route li:not(:last-child)::after {
  width: 0.0625rem;
  height: auto;
  inset-block: 1.75rem 0;
  inset-inline: 0.7rem auto;
}

.technology-route h3 {
  max-width: 17ch;
  font-size: 1.25rem;
}

.readiness-section .technical-register {
  grid-template-columns: 1fr;
  gap: var(--space-3);
  margin-block-start: var(--space-6);
}

.production-section {
  padding-block: var(--space-12);
  background-image:
    linear-gradient(180deg, rgb(15 27 38 / 88%) 0 55%, rgb(15 27 38 / 70%) 100%),
    url('../images/future-production-bg.png');
  background-position: 62% center;
}

.production-section__statement {
  font-size: 1.375rem;
}

.market-composition {
  grid-template-columns: 1fr;
  margin-block-start: var(--space-6);
}

.market-segments,
.market-entry {
  grid-column: 1;
  min-width: 0;
}

.market-entry {
  padding: var(--space-4);
}

.market-entry h3 {
  font-size: clamp(1.75rem, 9vw, 2rem);
}

.market-route {
  grid-template-columns: 1fr;
  margin-block-start: var(--space-6);
}

.market-route li {
  display: grid;
  grid-template-columns: 2.5rem minmax(0, 1fr);
  padding-block: var(--space-3);
  border-block-start: 0.0625rem solid color-mix(in srgb, var(--color-text) 35%, transparent);
}

.market-route li::before {
  margin-block-end: 0;
}

.raw-materials-section--compact {
  padding-block: var(--space-8);
}

.raw-materials-section__body {
  grid-column: 1 / -1;
  grid-row: auto;
  grid-template-columns: 1fr;
}

.raw-materials-section__visual {
  grid-column: 1 / -1;
  grid-row: auto;
  width: calc(100% + var(--container-gutter));
  margin-inline-end: calc(-1 * var(--container-gutter));
}

.economic-factors {
  grid-template-columns: 1fr;
  margin-block-start: var(--space-6);
}

.economic-factors li + li,
.economic-factors li:nth-child(4) {
  border-block-start: 0.0625rem solid var(--color-line);
  border-inline-start: 0;
}

.economic-factors .technical-label {
  margin-block-end: var(--space-3);
}

.roadmap {
  grid-template-columns: 1fr;
  gap: 0;
  margin-block-start: var(--space-8);
}

.roadmap li {
  min-height: 6rem;
  padding: 0 0 var(--space-6) var(--space-8);
  border-block-start: 0;
  border-inline-start: 0.125rem solid var(--color-text);
}

.roadmap li::before {
  padding-block-end: var(--space-2);
  padding-inline-end: 0;
  inset-block-start: 0;
  inset-inline-start: -0.45rem;
}

.roadmap h3 {
  max-width: 18ch;
}

.team-composition,
.partnership-map {
  grid-template-columns: 1fr;
  margin-block-start: var(--space-6);
}

.team-lead,
.team-roles,
.team-composition .competency-register,
.partnership-role--priority,
.partnership-role--supporting {
  grid-column: 1;
}

.team-lead {
  min-height: 22rem;
  padding: var(--space-4);
}

.team-lead h3 {
  margin-block-end: var(--space-6);
  font-size: clamp(2.75rem, 15vw, 3.25rem);
}

.team-roles {
  margin-block-start: var(--space-3);
}

.team-role {
  grid-template-columns: 1fr;
  gap: var(--space-2);
  padding-block: var(--space-4);
}

.team-role .technical-label {
  margin-block-end: var(--space-1);
}

.partnership-role--priority {
  min-height: 20rem;
  padding: var(--space-4);
}

.partnership-role--priority h3 {
  font-size: clamp(1.75rem, 9vw, 2.5rem);
  overflow-wrap: normal;
}

.partnership-role--supporting {
  padding-inline-start: var(--space-3);
}

.contact-section {
  padding-block: var(--space-12);
}

.contact-section::before {
  width: 44%;
}

.site-footer__inner {
  grid-template-columns: 1fr;
}

@media (min-width: 48rem) {
  .project-competencies__list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  :root { --container-gutter: clamp(2.5rem, 5vw, 4.5rem); }

  .grid-12 { grid-template-columns: repeat(12, minmax(0, 1fr)); }
  .section { padding-block: var(--space-12); }

  .hero {
    padding-block-start: clamp(4rem, 8vw, 7.5rem);
    overflow: hidden;
    background:
      linear-gradient(90deg, transparent 0 88%, color-mix(in srgb, var(--color-brand) 34%, transparent) 88% 100%),
      var(--color-paper);
  }

  .project-section__stage {
    grid-template-columns: repeat(12, minmax(0, 1fr));
    min-height: 40rem;
    padding: var(--space-6);
    background-image:
      linear-gradient(90deg, rgb(255 255 255 / 96%) 0 42%, rgb(255 255 255 / 62%) 68%, rgb(255 255 255 / 8%) 100%),
      url('../images/zavod.png');
  }

  .project-section__stage .section__intro,
  .project-section__stage .project-section__summary {
    grid-column: 1 / span 8;
    grid-template-columns: 1fr;
  }

  .project-section__caption {
    grid-column: 1 / span 6;
  }

  .economics-logic-section .section__intro {
    grid-column: 1 / -1;
    grid-row: auto;
  }

  .economics-logic__visual {
    grid-column: 1 / -1;
    grid-row: auto;
    width: 100%;
    max-width: 30rem;
    margin-block-start: var(--space-6);
  }

  .economics-logic__body {
    grid-column: 1 / -1;
    grid-row: auto;
    margin-block-start: var(--space-8);
  }

  .hero.has-no-media { padding-block-start: clamp(3rem, 5vw, 5rem); }
  .hero__content { display: grid; grid-column: 1 / -1; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 0 var(--grid-gap); }
  .hero__eyebrow { grid-column: 1 / -1; }
  .hero__summary { grid-column: 1 / span 5; grid-row: 4; position: relative; z-index: 2; }
  .hero-proof { grid-column: 1 / -1; grid-row: 5; grid-template-columns: repeat(3, minmax(0, 1fr)); position: relative; z-index: 2; }
  .hero-partners { grid-column: 1 / span 6; grid-row: 6; position: relative; z-index: 2; }
  .hero__visual { grid-column: 7 / -1; grid-row: 3 / span 4; align-self: center; margin-block-end: var(--space-5); transform: scale(1.2); transform-origin: right center; }
  .hero__media { -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 24%, #000 100%); mask-image: linear-gradient(90deg, transparent 0, #000 24%, #000 100%); }
  .hero h1 { grid-column: 1 / -1; max-width: none; font-size: var(--type-hero); }
  .hero.has-no-media h1 { max-width: none; font-size: var(--type-hero); }
  .hero.has-no-media .hero__lead { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .hero.has-no-media .hero__supporting-copy { grid-column: 2 / -1; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .project-passport__list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .project-passport__list li:nth-child(2) { text-align: center; }
  .project-passport__list li:last-child { text-align: end; }

  .content-section h2,
  .contact-section h2 { font-size: var(--type-h2); }
  .section-lead { font-size: var(--type-intro); }

  .project-section__summary,
  .products-section__summary { gap: var(--grid-gap); grid-template-columns: repeat(2, minmax(0, 1fr)); }

  .project-section__summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }

  .project-panorama { grid-template-columns: repeat(12, minmax(0, 1fr)); margin-block-start: var(--space-8); }
  .project-panorama__site { grid-column: 1 / span 3; }
  .project-panorama__line { grid-column: 4 / span 6; border-block: 0; border-inline: 0.0625rem solid var(--color-line); }
  .project-panorama__directions { grid-column: 10 / -1; }
  .project-panorama h3 { max-width: 13ch; margin-block-end: var(--space-8); }
  .project-panorama__statement { max-width: 10ch; margin-block-end: var(--space-10); }

  .product-line { grid-template-columns: repeat(12, minmax(0, 1fr)); margin-block-start: var(--space-8); }
  .product-line__item--coupling { grid-column: 1 / span 4; }
  .product-line__item--pup-joint,
  .product-line__item--adapter { grid-column: 5 / -1; }
  .product-line__item--pup-joint { display: grid; }
  .product-line__item--pup-joint > p { margin-block-start: 0; }
  .product-line__item--adapter { margin-inline-start: 0; }
  .product-line__extension { display: grid; grid-column: 1 / -1; gap: var(--grid-gap); grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .product-line__extension p:last-child { grid-column: 2 / -1; }

  .readiness-section .technical-register { grid-template-columns: repeat(2, minmax(0, 1fr)); }

  .production-section {
    background-image:
      linear-gradient(90deg, rgb(15 27 38 / 84%) 0 45%, rgb(15 27 38 / 48%) 62%, rgb(15 27 38 / 76%) 100%),
      url('../images/future-production-bg.png');
    background-position: 56% center;
  }

  .readiness-section__stage {
    grid-template-columns: repeat(12, minmax(0, 1fr));
    min-height: 29rem;
    align-content: center;
    padding: var(--space-7);
    background-image:
      linear-gradient(90deg, rgb(255 255 255 / 94%) 0 43%, rgb(255 255 255 / 38%) 54%, rgb(255 255 255 / 92%) 68% 100%),
      url('../images/technology-readiness-bg.png');
    background-position: 68% center;
    background-size: cover, auto 128%;
  }

  .readiness-section__stage .section__intro {
    grid-column: 1 / span 6;
  }

  .readiness-section__stage .readiness-section__summary {
    grid-column: 8 / -1;
    margin-block-start: 0;
  }

  .market-composition { grid-template-columns: repeat(12, minmax(0, 1fr)); margin-block-start: var(--space-10); }
  .market-segments { grid-column: 1 / span 4; }
  .market-entry { grid-column: 5 / -1; padding: var(--space-5); }
  .market-entry h3 { font-size: clamp(2rem, 3.3vw, 3.25rem); }

  .raw-materials-section .section__intro { grid-column: 1 / span 5; grid-row: 1; align-self: center; }
  .raw-materials-section__visual { grid-column: 6 / -1; grid-row: 1; width: auto; margin-inline-end: 0; }
  .raw-materials-section__body { grid-column: 1 / -1; grid-row: 2; grid-template-columns: repeat(2, minmax(0, 1fr)); }

  .economic-factors { grid-template-columns: repeat(3, minmax(0, 1fr)); margin-block-start: var(--space-10); }
  .economic-factors li:nth-child(4) { border-inline-start: 0; }
  .economic-factors li:nth-child(n + 4) { border-block-start: 0.0625rem solid var(--color-line); }

  .competency-register { grid-template-columns: 1fr; }
  .competency-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); }

  .team-composition,
  .partnership-map { grid-template-columns: repeat(12, minmax(0, 1fr)); margin-block-start: var(--space-10); }
  .team-lead { grid-column: 1 / span 5; min-height: 27rem; padding: var(--space-5); }
  .team-lead h3 { font-size: clamp(3rem, 5.2vw, 4.75rem); }
  .team-roles { grid-column: 6 / -1; margin-block-start: 0; }
  .team-composition .competency-register { grid-column: 1 / -1; }
  .partnership-role--priority,
  .partnership-role--supporting { grid-column: span 6; }
  .partnership-role--priority { padding: var(--space-5); }

  .site-footer__inner { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; }
}

@media (min-width: 75rem) {
  .site-header__inner { grid-template-columns: auto minmax(0, 1fr); gap: var(--space-4); min-height: 5rem; padding-block: 0; }
  .site-brand { gap: var(--space-2); font-size: clamp(1.0625rem, 1.35vw, 1.375rem); }
  .site-brand img { width: 2.5rem; height: 2.5rem; }
  .site-brand__descriptor { padding-inline-start: var(--space-3); margin-inline-start: var(--space-3); font-size: 0.625rem; letter-spacing: 0.08em; }
  .site-header.is-navigation-ready .menu-button { display: none; }
  .primary-nav,
  .site-header.is-navigation-ready .primary-nav,
  .site-header.is-navigation-ready.is-menu-open .primary-nav { display: flex; grid-column: 2; grid-row: 1; justify-self: end; padding-block-start: 0; border-block-start: 0; }
  .primary-nav__list { display: flex; gap: clamp(1rem, 2vw, 2rem); }
  .primary-nav a { width: auto; }
  .hero { padding-block: 1.5rem var(--space-3); background: linear-gradient(90deg, transparent 0 74%, color-mix(in srgb, var(--color-brand) 34%, transparent) 74% 100%), var(--color-paper); }
  .hero__content { grid-column: 1 / span 5; display: contents; }
  .hero__eyebrow,
  .hero__summary { grid-column: 1 / span 5; position: relative; z-index: 2; }
  .hero__eyebrow { grid-row: 1; }
  .hero__eyebrow { max-width: none; }
  .hero h1 { grid-column: 1 / span 6; grid-row: 2; max-width: 22ch; margin-block-end: var(--space-3); font-size: clamp(2.75rem, 3.6vw, 3.5rem); position: relative; z-index: 2; }
  .hero__summary { grid-row: 3; margin-block-end: var(--space-3); }
  .hero-proof { grid-column: 1 / -1; grid-row: 4; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-block-end: var(--space-3); position: relative; z-index: 2; }
  .hero-partners { grid-column: 1 / span 4; grid-row: 5; position: relative; z-index: 2; }
  .hero__visual { grid-column: 5 / -1; grid-row: 1 / span 5; width: calc(100% + var(--container-gutter)); max-width: none; min-height: 40rem; align-self: stretch; justify-self: start; margin-block: calc(-1 * var(--space-3)) 0; overflow: hidden; transform: none; }
  .hero__media { width: 100%; height: 100%; -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 17%, #000 100%); mask-image: linear-gradient(90deg, transparent 0, #000 17%, #000 100%); }
  .hero__media img { width: 100%; height: 100%; object-fit: contain; object-position: right center; }
  .project-passport { grid-row: 6; position: relative; z-index: 2; }
  .hero.has-no-media .hero__content { grid-column: 1 / -1; }
  .product-line__item--coupling { grid-row: 1 / span 2; min-height: 28rem; }
  .product-line__item--pup-joint { min-height: 12rem; }
  .product-line__item--adapter { grid-column: 5 / span 5; }
  .product-line__extension { display: block; grid-column: 10 / -1; }

  .section__intro { grid-column: 1 / span 4; }
  .section__body { grid-column: 5 / -1; }
  .has-no-media .section__intro,
  .has-no-media .section__body { grid-column: 1 / span 8; }

  .project-section .section__intro { grid-column: 1 / span 6; }
  .products-section .section__intro,
  .economics-logic-section .section__intro,
  .market-section .section__intro,
  .economics-section .section__intro,
  .team-section .section__intro { grid-column: 1 / span 5; }
  .project-section__summary,
  .products-section__summary,
  .market-section__summary,
  .economics-section__summary,
  .team-section__summary { display: block; grid-column: 7 / -1; margin-block-start: 0; }
  .economics-logic-section .section__intro {
    grid-column: 1 / span 5;
    grid-row: 1;
  }

  .economics-logic__visual {
    grid-column: 1 / span 5;
    grid-row: 2;
    margin-block-start: var(--space-6);
  }

  .economics-logic__body {
    grid-column: 7 / -1;
    grid-row: 1 / span 2;
    margin-block-start: 0;
  }

  .project-section__stage {
    grid-column: 1 / -1;
    grid-row: 1 / span 2;
    min-height: 43rem;
    padding: var(--space-7);
    background-image:
      linear-gradient(90deg, rgb(255 255 255 / 96%) 0 30%, rgb(255 255 255 / 72%) 48%, rgb(255 255 255 / 4%) 72%),
      url('../images/zavod.png');
  }

  .project-section__stage .section__intro {
    grid-column: 1 / span 5;
    grid-row: 1;
  }

  .project-section h2 {
    font-size: clamp(3rem, 4vw, 3.625rem);
  }

  .project-section__stage .project-section__summary {
    grid-column: 1 / span 5;
    grid-row: 2;
    align-self: start;
    margin-block-start: var(--space-6);
  }

  .project-section__caption {
    grid-column: 1 / span 5;
    grid-row: 3;
  }

  .products-section .section__intro {
    grid-column: 1 / span 4;
    grid-row: 1;
  }

  .products-section__summary {
    display: block;
    grid-column: 1 / span 4;
    grid-row: 2;
    margin-block-start: var(--space-7);
  }

  .products-section__summary p + p {
    margin-block-start: var(--space-4);
  }

  .products-section__visual {
    grid-column: 6 / -1;
    grid-row: 1 / span 2;
    align-self: start;
    margin-block-start: calc(var(--space-5) * -1);
  }

  .products-section .product-line {
    grid-row: 3;
    margin-block-start: var(--space-6);
  }

  .project-panorama {
    grid-column: 1 / -1;
    grid-row: 3;
    margin-block-start: var(--space-10);
  }

  .technology-section .section__intro { grid-column: 1 / span 6; }
  .technology-section__summary { grid-column: 8 / -1; margin-block-start: 0; }
  .technology-route { grid-template-columns: repeat(6, minmax(0, 1fr)); gap: var(--grid-gap); margin-block-start: var(--space-12); }
  .technology-route li { min-height: 0; padding: var(--space-5) 0 0; }
  .technology-route li::before { inset-block-start: 0; }
  .technology-route li:not(:last-child)::after { width: auto; height: 0.0625rem; inset-block: 0.55rem auto; inset-inline: 2.25rem calc(var(--grid-gap) * -1); }
  .technology-route h3 { max-width: none; font-size: clamp(1.125rem, 1.45vw, 1.375rem); }

  .readiness-section__stage {
    min-height: 38rem;
    padding: var(--space-9);
    background-image:
      linear-gradient(90deg, rgb(255 255 255 / 96%) 0 34%, rgb(255 255 255 / 28%) 49%, rgb(255 255 255 / 92%) 63% 100%),
      url('../images/technology-readiness-bg.png');
    background-position: center;
    background-size: cover, auto 135%;
  }
  .readiness-section__stage .section__intro { grid-column: 1 / span 5; }
  .readiness-section__stage .readiness-section__summary { grid-column: 8 / -1; margin-block-start: 0; }
  .readiness-section .technical-register { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: var(--space-4); margin-block-start: var(--space-8); }

  .production-section {
    display: flex;
    min-height: 80svh;
    align-items: center;
    padding-block: var(--space-16);
    background-image:
      linear-gradient(90deg, rgb(15 27 38 / 88%) 0 38%, rgb(15 27 38 / 38%) 57%, rgb(15 27 38 / 74%) 100%),
      url('../images/future-production-bg.png');
    background-position: center;
  }
  .production-section .section__intro { grid-column: 1 / span 7; }
  .production-section__body { grid-column: 9 / -1; margin-block-start: 0; }
  .production-section__statement { font-size: clamp(1.375rem, 2vw, 1.875rem); }

  .raw-materials-section .section__intro { grid-column: 1 / span 5; }
  .raw-materials-section__body { grid-column: 1 / -1; margin-block-start: var(--space-4); }
  .economic-factors { grid-template-columns: repeat(5, minmax(0, 1fr)); }
  .economic-factors li:nth-child(n + 4) { border-block-start: 0; }
  .economic-factors li:nth-child(4) { border-inline-start: 0.0625rem solid var(--color-line); }

  .roadmap-section .section__intro { grid-column: 1 / span 7; }
  .roadmap-section__summary { grid-column: 9 / -1; margin-block-start: 0; }
  .roadmap { grid-template-columns: repeat(5, minmax(0, 1fr)); margin-block-start: var(--space-12); }
  .roadmap li { min-height: 0; padding: var(--space-6) var(--space-3) 0 0; border-block-start: 0.125rem solid var(--color-text); border-inline-start: 0; }
  .roadmap li::before { padding-block-end: 0; padding-inline-end: var(--space-2); inset-block-start: -0.65rem; inset-inline-start: 0; }
  .roadmap h3 { max-width: 16ch; }

  .team-role { grid-template-columns: minmax(8rem, 2fr) minmax(12rem, 3fr) minmax(12rem, 3fr); gap: var(--grid-gap); }
  .competency-gallery { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .partnership-section .section__intro { grid-column: 1 / span 7; }
  .partnership-section .partnership-section__summary { grid-column: 9 / -1; align-self: end; }
  .partnership-role--priority { min-height: 24rem; }
  .partnership-role--priority h3 { font-size: clamp(2.5rem, 4vw, 3.75rem); }
  .partnership-role--supporting { padding-inline-start: 0; }

  .contact-section { display: flex; min-height: 75svh; align-items: center; padding-block: var(--space-16); }
  .contact-section::before { width: min(28rem, 42vw); }
  .contact-section .section__intro { grid-column: 1 / span 7; }
  .contact-section__body { grid-column: 9 / -1; margin-block-start: 0; }
  .site-footer__inner { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
