.home-v3 {
  --home-ink: #103638;
  --home-muted: #5b706f;
  --home-accent: #087a78;
  --home-accent-dark: #075c5b;
  --home-line: #c8d9d6;
  --home-canvas: #eef5f4;
  --home-surface: #fbfdfc;
  overflow: clip;
  color: var(--home-ink);
  background: var(--home-canvas);
}

/* 0.9.23: controls for the two second-screen company films. */
.company-media__playlist {
  position: absolute;
  z-index: 3;
  top: 28px;
  left: 28px;
  display: flex;
  gap: 8px;
  align-items: center;
  padding: 9px 11px;
  border: 1px solid rgba(235, 247, 245, 0.28);
  border-radius: 999px;
  background: rgba(5, 43, 45, 0.48);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.13);
  -webkit-backdrop-filter: blur(12px) saturate(120%);
  backdrop-filter: blur(12px) saturate(120%);
}

.company-media__playlist button {
  width: 28px;
  height: 4px;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: rgba(230, 244, 242, 0.42);
  cursor: pointer;
  transition: width 220ms ease, background 220ms ease, transform 180ms ease;
}

.company-media__playlist button.is-active {
  width: 42px;
  background: #72d8d2;
}

.company-media__playlist button:hover { background: #ffffff; }
.company-media__playlist button:active { transform: scaleX(0.92); }
.company-media__playlist button:focus-visible { outline: 2px solid #72d8d2; outline-offset: 4px; }

.home-v3 h1,
.home-v3 h2,
.home-v3 h3,
.home-v3 p {
  text-wrap: pretty;
}

.home-panel {
  position: relative;
  isolation: isolate;
  border-bottom: 1px solid var(--home-line);
}

@media (min-width: 901px) {
  .home-v3 > .home-panel {
    min-height: 100dvh;
    display: flex;
    align-items: center;
  }

  .home-v3 > .home-hero {
    min-height: calc(100dvh - 76px);
  }

  .home-v3 > .home-panel > .container {
    flex: 0 0 auto;
  }
}

.home-panel__number {
  position: absolute;
  z-index: 4;
  top: 26px;
  right: max(22px, calc((100vw - var(--content)) / 2));
  color: rgba(16, 54, 56, 0.46);
  font-size: 0.68rem;
  font-weight: 780;
  letter-spacing: 0.14em;
}

.home-eyebrow {
  margin: 0 0 18px;
  color: var(--home-accent);
  font-size: 0.74rem;
  font-weight: 780;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.home-v3 .button {
  min-height: 52px;
  padding-inline: 25px;
  white-space: nowrap;
}

.home-v3 .button:active,
.home-inline-link:active {
  transform: translateY(1px) scale(0.99);
}

.home-inline-link {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  border-bottom: 1px solid currentColor;
  color: var(--home-accent);
  font-size: 0.9rem;
  font-weight: 720;
  transition: gap 240ms cubic-bezier(0.16, 1, 0.3, 1), color 180ms ease, transform 180ms ease;
}

.home-inline-link::after {
  content: "↗";
}

.home-inline-link:hover {
  gap: 18px;
  color: var(--home-accent-dark);
}

.home-section {
  padding-block: clamp(92px, 10vw, 144px);
}

.home-section__intro {
  max-width: 900px;
  margin-bottom: clamp(48px, 6vw, 76px);
}

.home-section__intro--compact {
  max-width: 740px;
}

.home-section__intro h2,
.home-proof__heading h2,
.company-copy h2,
.portfolio-heading h2,
.applications-copy h2,
.engineering-copy h2,
.projects-heading h2,
.news-heading h2,
.home-contact h2 {
  margin: 0;
  color: var(--home-ink);
  font-family: "Segoe UI Variable Display", "Segoe UI", system-ui, sans-serif;
  font-size: clamp(2.45rem, 4.7vw, 4.6rem);
  font-weight: 680;
  line-height: 0.99;
  letter-spacing: -0.055em;
}

.home-section__intro > p:last-child,
.company-copy > p,
.applications-copy > p,
.engineering-copy > p,
.projects-heading > p {
  max-width: 670px;
  margin: 24px 0 0;
  color: var(--home-muted);
  font-size: 1.02rem;
}

/* 01 — interactive material hero */
.home-hero {
  background:
    radial-gradient(circle at 78% 16%, rgba(44, 167, 163, 0.2), transparent 29%),
    radial-gradient(circle at 56% 93%, rgba(8, 122, 120, 0.09), transparent 30%),
    #edf4f3;
}

.home-hero__grid {
  min-height: calc(100dvh - 76px);
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(390px, 0.92fr);
  align-items: center;
  gap: clamp(48px, 6vw, 90px);
  padding-block: clamp(62px, 8vw, 108px);
}

.home-hero__content h1 {
  max-width: 780px;
  margin: 0;
  color: var(--home-ink);
  font-family: "Segoe UI Variable Display", "Segoe UI", system-ui, sans-serif;
  font-size: clamp(3.3rem, 5.4vw, 5.15rem);
  font-weight: 690;
  line-height: 0.95;
  letter-spacing: -0.06em;
}

.home-hero__lede {
  max-width: 620px;
  margin: 30px 0 0;
  color: #405d5d;
  font-size: clamp(1rem, 1.45vw, 1.18rem);
}

.home-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  align-items: center;
  margin-top: 38px;
}

.home-hero__visual {
  margin: 0;
}

.material-discovery {
  --reveal-x: 50%;
  --reveal-y: 50%;
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: clamp(440px, 50vw, 665px);
  border: 1px solid rgba(59, 91, 91, 0.3);
  border-radius: 5px 48px 5px 5px;
  background: #cfd5d5;
  box-shadow: 28px 32px 70px rgba(34, 79, 78, 0.17);
}

.material-discovery::after {
  position: absolute;
  inset: 14px;
  z-index: 3;
  border: 1px solid rgba(255, 255, 255, 0.58);
  border-radius: 2px 34px 2px 2px;
  box-shadow: inset 0 0 26px rgba(255, 255, 255, 0.14);
  content: "";
  pointer-events: none;
}

.material-discovery__image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  user-select: none;
}

.material-discovery__aluminium { z-index: 1; }
.material-discovery__wood {
  z-index: 2;
  opacity: 0;
  -webkit-mask-image: radial-gradient(circle 190px at var(--reveal-x) var(--reveal-y), #000 0%, #000 52%, rgba(0, 0, 0, 0.82) 65%, rgba(0, 0, 0, 0.34) 80%, transparent 100%);
  mask-image: radial-gradient(circle 190px at var(--reveal-x) var(--reveal-y), #000 0%, #000 52%, rgba(0, 0, 0, 0.82) 65%, rgba(0, 0, 0, 0.34) 80%, transparent 100%);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  transition: opacity 260ms cubic-bezier(0.16, 1, 0.3, 1);
  will-change: opacity, mask-image;
}

.material-discovery.is-discovering .material-discovery__wood,
.material-discovery:focus-visible .material-discovery__wood { opacity: 1; }
.material-discovery:focus-visible { outline: 3px solid rgba(8, 122, 120, 0.44); outline-offset: 5px; }

.home-hero__visual figcaption {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 24px;
  padding: 18px 0 0;
}

.home-hero__visual figcaption strong { font-size: 0.92rem; }
.home-hero__visual figcaption span { max-width: 250px; color: var(--home-muted); font-size: 0.78rem; text-align: right; }

/* 02 — evidence */
.home-proof {
  padding-block: clamp(78px, 8vw, 112px);
  background: var(--home-surface);
}

.home-proof__heading {
  display: grid;
  grid-template-columns: 0.55fr 1.45fr;
  gap: 60px;
  align-items: end;
  margin-bottom: 58px;
}

.home-proof__heading h2 {
  max-width: 850px;
  font-size: clamp(2.2rem, 4vw, 3.8rem);
}

.home-proof__summary {
  max-width: 720px;
  margin: 20px 0 0;
  color: var(--home-muted);
  font-size: 1rem;
  line-height: 1.7;
}

.home-proof__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border-top: 1px solid var(--home-line);
  border-bottom: 1px solid var(--home-line);
}

.home-proof__grid > div {
  min-height: 180px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 28px 25px;
  border-right: 1px solid var(--home-line);
}

.home-proof__grid > div:first-child { border-left: 1px solid var(--home-line); }
.home-proof strong { color: var(--home-accent); font-size: clamp(2rem, 3.15vw, 3.35rem); font-weight: 670; line-height: 1; letter-spacing: -0.05em; font-variant-numeric: tabular-nums; }
.home-proof span { max-width: 190px; color: var(--home-muted); font-size: 0.82rem; font-weight: 620; line-height: 1.4; }

/* Shared visible placeholders */
.home-upload-placeholder {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  min-height: 390px;
  padding: clamp(26px, 4vw, 42px);
  border: 1px solid #91aaa7;
  color: #143f40;
  background:
    linear-gradient(115deg, transparent 0 47%, rgba(255,255,255,0.44) 47.2% 48%, transparent 48.2%),
    repeating-linear-gradient(135deg, rgba(8,122,120,0.045) 0 1px, transparent 1px 10px),
    #d4e1df;
}

.home-upload-placeholder::before {
  position: absolute;
  z-index: -1;
  inset: 16px;
  border: 1px solid rgba(255,255,255,0.68);
  content: "";
}

.home-upload-placeholder > span {
  margin-bottom: 12px;
  color: var(--home-accent);
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.home-upload-placeholder > strong {
  max-width: 560px;
  color: #143f40;
  font-size: clamp(1.15rem, 2vw, 1.7rem);
  line-height: 1.25;
}

.home-upload-placeholder > small {
  max-width: 570px;
  margin-top: 10px;
  color: #587170;
  font-size: 0.78rem;
}

/* 03 — company */
.company-section { background: #dfeae8; }
.company-layout { display: grid; grid-template-columns: minmax(0, 0.88fr) minmax(0, 1.12fr); gap: clamp(60px, 9vw, 130px); align-items: center; }
.company-copy h2 { max-width: 680px; font-size: clamp(2.2rem, 3.7vw, 3.75rem); line-height: 1.02; }
.company-copy .home-inline-link { margin-top: 30px; }
.company-media {
  position: relative;
  min-height: clamp(420px, 42vw, 590px);
  margin: 0 max(-32px, calc((var(--content) - 100vw) / 2)) 0 0;
  overflow: hidden;
  border-radius: 4px 56px 4px 4px;
  background: #8da8a6;
  box-shadow: 0 32px 70px rgba(24, 70, 71, 0.16);
}
.company-media__video { width: 100%; height: 100%; min-height: inherit; object-fit: cover; }
.company-media__shade { position: absolute; inset: 34% 0 0; background: linear-gradient(180deg, transparent, rgba(5, 34, 36, 0.84)); pointer-events: none; }
.company-media figcaption { position: absolute; z-index: 1; right: clamp(24px, 4vw, 50px); bottom: clamp(26px, 4vw, 46px); left: clamp(24px, 4vw, 50px); display: grid; max-width: 530px; gap: 8px; color: #f2f8f7; }
.company-media figcaption span { color: #92ddd7; font-size: 0.72rem; font-weight: 800; letter-spacing: 0.13em; text-transform: uppercase; }
.company-media figcaption strong { font-size: clamp(1.45rem, 2.5vw, 2.45rem); line-height: 1.08; letter-spacing: -0.035em; text-wrap: balance; }
.company-media__toggle { position: absolute; z-index: 2; top: 22px; right: 22px; min-height: 38px; padding: 9px 14px; border: 1px solid rgba(255, 255, 255, 0.52); border-radius: 99px; color: #fff; background: rgba(8, 44, 46, 0.5); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2); backdrop-filter: blur(12px); cursor: pointer; transition: transform 220ms ease, background 220ms ease; }
.company-media__toggle:hover { background: rgba(8, 44, 46, 0.78); transform: translateY(-1px); }
.company-media__toggle:active { transform: translateY(1px); }

/* 04 — main equipment */
.core-lines-section { color: #d4e5e3; background: #0a3033; }
.core-lines-section .home-panel__number { color: rgba(216, 238, 235, 0.48); }
.core-lines-section .home-eyebrow { color: #72d8d2; }
.core-lines-section .home-section__intro h2 { color: #f4f9f8; }
.core-lines-section .home-section__intro > p:last-child { color: #a9c0be; }
.core-lines { border-top: 1px solid #37595a; }
.core-line { display: grid; grid-template-columns: 1.08fr 0.92fr; gap: clamp(48px, 7vw, 100px); align-items: center; padding-block: clamp(65px, 8vw, 108px); border-bottom: 1px solid #37595a; }
.core-line--sublimation { grid-template-columns: 0.92fr 1.08fr; }
.core-line__media { min-height: clamp(420px, 44vw, 590px); border-color: #527374; border-radius: 52px 4px 4px 4px; background: linear-gradient(145deg, rgba(255,255,255,0.04), rgba(114,216,210,0.16)), repeating-linear-gradient(135deg, rgba(255,255,255,0.04) 0 1px, transparent 1px 12px), #153f41; }
.core-line--sublimation .core-line__media { border-radius: 4px 4px 52px 4px; }
.core-line__media > strong { color: #f2f8f7; }
.core-line__media > small { color: #9fbcba; }
.core-line__copy h3 { max-width: 620px; margin: 0; color: #f5faf9; font-size: clamp(2.2rem, 4vw, 4rem); line-height: 1.02; letter-spacing: -0.05em; }
.core-line__copy > p:not(.home-eyebrow) { margin: 23px 0 0; color: #a9c0be; }
.core-line__copy ul { margin: 30px 0 34px; padding: 0; border-top: 1px solid #37595a; list-style: none; }
.core-line__copy li { padding: 13px 0; border-bottom: 1px solid #37595a; color: #d1e1df; font-size: 0.9rem; }
.core-line__copy .home-inline-link { color: #72d8d2; }

/* 05 — connected portfolio */
.portfolio-section { background: #f8fbfa; }
.portfolio-layout { display: grid; grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr); gap: clamp(64px, 7vw, 100px); align-items: center; }
.portfolio-heading { position: sticky; top: 114px; align-self: start; }
.portfolio-heading h2 { max-width: 590px; font-size: clamp(2.35rem, 4vw, 4rem); line-height: 1.01; }
.portfolio-list { border-top: 1px solid var(--home-line); }
.portfolio-list a { display: grid; grid-template-columns: 44px minmax(170px, 0.78fr) 1fr auto; gap: 28px; align-items: center; padding: 38px 0; border-bottom: 1px solid var(--home-line); transition: padding 220ms ease, color 180ms ease; }
.portfolio-list a:hover { padding-inline: 10px; color: var(--home-accent); }
.portfolio-list span { color: var(--home-accent); font-size: 0.72rem; font-weight: 800; }
.portfolio-list strong { font-size: clamp(1.25rem, 2vw, 1.8rem); line-height: 1.1; }
.portfolio-list small { color: var(--home-muted); font-size: 0.85rem; }
.portfolio-list i { font-size: 1.25rem; font-style: normal; }

/* 06 — applications */
.applications-section { background: #e5edeb; }
.applications-layout { display: grid; grid-template-columns: minmax(0, 0.75fr) minmax(0, 1.25fr); gap: clamp(60px, 9vw, 130px); align-items: start; }
.applications-copy { position: sticky; top: 112px; }
.applications-list { border-top: 1px solid #b3c6c3; }
.applications-list article { display: grid; grid-template-columns: 38px minmax(180px, 0.8fr) 1.2fr; gap: 25px; padding: 30px 0; border-bottom: 1px solid #b3c6c3; }
.applications-list article > span { color: var(--home-accent); font-size: 0.7rem; font-weight: 800; }
.applications-list h3 { margin: 0; color: var(--home-ink); font-size: clamp(1.15rem, 2vw, 1.7rem); font-weight: 660; line-height: 1.18; letter-spacing: -0.025em; }
.applications-list p { margin: 0; color: var(--home-muted); }

/* 07 — technology */
.engineering-section { background: #f7faf9; }
.engineering-layout { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(0, 0.92fr); gap: clamp(55px, 8vw, 112px); align-items: center; }
.engineering-visual { min-height: clamp(520px, 54vw, 700px); border-radius: 4px 4px 4px 56px; }
.engineering-points { margin: 38px 0 34px; border-top: 1px solid #b9c9c6; }
.engineering-points > div { display: grid; grid-template-columns: 0.78fr 1.22fr; gap: 24px; padding: 20px 0; border-bottom: 1px solid #b9c9c6; }
.engineering-points strong { color: var(--home-ink); font-size: 0.9rem; }
.engineering-points span { color: var(--home-muted); font-size: 0.86rem; }

/* 08 — delivery */
.delivery-section { background: #dce8e6; }
.delivery-path { position: relative; display: grid; grid-template-columns: repeat(5, 1fr); border-top: 1px solid #afc5c2; }
.delivery-path::before { position: absolute; top: -2px; left: 0; width: 100%; height: 3px; transform: scaleX(0); transform-origin: left; background: var(--home-accent); content: ""; transition: transform 900ms cubic-bezier(0.16, 1, 0.3, 1); }
.delivery-path.is-visible::before { transform: scaleX(1); }
.delivery-path article { min-height: 275px; padding: 29px 22px; border-right: 1px solid #afc5c2; }
.delivery-path article:first-child { border-left: 1px solid #afc5c2; }
.delivery-path small { color: var(--home-accent); font-size: 0.68rem; font-weight: 800; }
.delivery-path h3 { margin: 52px 0 16px; color: var(--home-ink); font-size: 1.2rem; }
.delivery-path p { margin: 0; color: var(--home-muted); font-size: 0.86rem; }

/* 09 — global projects */
.projects-section { color: #d3e4e1; background: #0c3335; }
.projects-section .home-panel__number { color: rgba(216, 238, 235, 0.48); }
.projects-section .home-eyebrow { color: #72d8d2; }
.projects-heading { display: grid; grid-template-columns: 1.1fr 0.9fr; gap: 80px; align-items: end; margin-bottom: 62px; }
.projects-heading h2 { max-width: 740px; color: #f5f9f8; }
.projects-heading > p { color: #a9c1bf; }
.project-media-grid { display: grid; grid-template-columns: 1.18fr 0.82fr; gap: 18px; }
.project-media { min-height: 310px; border-color: #527374; color: #e8f4f2; background: linear-gradient(145deg, rgba(255,255,255,0.04), rgba(114,216,210,0.15)), repeating-linear-gradient(135deg, rgba(255,255,255,0.035) 0 1px, transparent 1px 12px), #153f41; }
.project-media--lead { min-height: 638px; grid-row: span 2; border-radius: 4px 54px 4px 4px; }
.project-media > strong { color: #f2f8f7; }
.project-media > small { color: #9fbcba; }
.project-media--video::after { position: absolute; top: 28px; right: 28px; width: 54px; height: 54px; display: grid; place-items: center; border: 1px solid #72d8d2; border-radius: 50%; color: #72d8d2; content: "▶"; font-size: 0.82rem; }

/* 10 — news */
.news-section { background: #f8fbfa; }
.news-heading { display: grid; grid-template-columns: 1fr auto; gap: 40px; align-items: end; margin-bottom: 56px; }
.news-heading h2 { max-width: 790px; }
.home-news-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.home-news-card { overflow: hidden; border-top: 1px solid var(--home-line); background: #eef4f3; transition: transform 260ms cubic-bezier(0.16, 1, 0.3, 1); }
.home-news-card:hover { transform: translateY(-5px); }
.home-news-card__media { min-height: 245px; display: block; }
.home-news-card__media img { width: 100%; height: 245px; object-fit: cover; }
.home-news-card__media.home-upload-placeholder { min-height: 245px; padding: 22px; }
.home-news-card__media.home-upload-placeholder::before { inset: 10px; }
.home-news-card__media.home-upload-placeholder > strong { font-size: 1rem; }
.home-news-card__copy { display: flex; min-height: 245px; flex-direction: column; padding: 28px; }
.home-news-card time { color: var(--home-muted); font-size: 0.74rem; font-weight: 650; letter-spacing: 0.06em; text-transform: uppercase; }
.home-news-card h3 { margin: 18px 0 28px; color: var(--home-ink); font-size: clamp(1.3rem, 2vw, 1.9rem); font-weight: 660; line-height: 1.13; letter-spacing: -0.03em; }
.home-news-card .home-inline-link { align-self: flex-start; margin-top: auto; }
.home-news-empty { grid-column: 1 / -1; min-height: 310px; display: flex; flex-direction: column; justify-content: flex-end; padding: 42px; border: 1px solid var(--home-line); background: #e7efed; }
.home-news-empty > span { color: var(--home-accent); font-size: 0.72rem; font-weight: 800; text-transform: uppercase; letter-spacing: 0.1em; }
.home-news-empty h3 { max-width: 780px; margin: 12px 0; font-size: clamp(1.5rem, 3vw, 2.7rem); }
.home-news-empty p { max-width: 650px; margin: 0; color: var(--home-muted); }

/* 11 — project start */
.home-contact { padding-block: clamp(84px, 9vw, 130px); color: #d7e8e6; background: var(--home-accent); }
.home-contact .home-panel__number { color: rgba(255,255,255,0.58); }
.home-contact__inner { display: grid; grid-template-columns: 1fr auto; gap: 70px; align-items: end; }
.home-contact .home-eyebrow { color: #d8f4f1; }
.home-contact h2 { max-width: 900px; color: #f8fcfb; }
.home-contact p { max-width: 750px; margin: 22px 0 0; color: #d0e4e2; }
.home-contact__action { display: grid; gap: 15px; justify-items: center; }
.home-contact .button { color: var(--home-accent-dark); background: #f8fbfa; border-color: #f8fbfa; }
.home-contact__action > a:last-child { color: #e3f1ef; font-size: 0.82rem; border-bottom: 1px solid rgba(255,255,255,0.55); }

/* Motion */
.js .home-v3 [data-reveal] { opacity: 0; transform: translateY(28px); transition: opacity 650ms cubic-bezier(0.16, 1, 0.3, 1), transform 650ms cubic-bezier(0.16, 1, 0.3, 1); transition-delay: var(--reveal-delay, 0ms); }
.js .home-v3 [data-reveal].is-visible { opacity: 1; transform: translateY(0); }
.js .home-hero__content > * { opacity: 0; transform: translateY(24px); transition: opacity 650ms cubic-bezier(0.16, 1, 0.3, 1), transform 650ms cubic-bezier(0.16, 1, 0.3, 1); }
.js .home-v3.is-ready .home-hero__content > * { opacity: 1; transform: translateY(0); }
.js .home-v3.is-ready .home-hero__content > :nth-child(2) { transition-delay: 80ms; }
.js .home-v3.is-ready .home-hero__content > :nth-child(3) { transition-delay: 150ms; }
.js .home-v3.is-ready .home-hero__content > :nth-child(4) { transition-delay: 220ms; }

@media (max-width: 1080px) {
  .home-hero__grid { grid-template-columns: minmax(0, 1fr) minmax(340px, 0.8fr); gap: 40px; }
  .home-hero__content h1 { font-size: clamp(3rem, 5.8vw, 4.2rem); }
  .delivery-path { grid-template-columns: repeat(3, 1fr); }
  .delivery-path article:nth-child(3) { border-right: 0; }
  .home-news-grid { grid-template-columns: 1fr 1fr; }
  .home-news-card:first-child { grid-column: 1 / -1; }
}

@media (max-width: 900px) {
  .home-hero__grid,
  .home-proof__heading,
  .company-layout,
  .core-line,
  .core-line--sublimation,
  .portfolio-layout,
  .applications-layout,
  .engineering-layout,
  .projects-heading {
    grid-template-columns: 1fr;
  }

  .home-hero__grid { min-height: auto; gap: 50px; padding-block: 74px; }
  .material-discovery { min-height: min(75vw, 590px); }
  .home-proof__heading { gap: 20px; }
  .home-proof__grid { grid-template-columns: repeat(2, 1fr); }
  .home-proof__grid > div:nth-child(2) { border-right: 0; }
  .home-proof__grid > div:nth-child(-n+2) { border-bottom: 1px solid var(--home-line); }
  .company-media { margin-right: 0; }
  .core-line--sublimation .core-line__copy { order: 2; }
  .portfolio-heading,
  .applications-copy { position: static; }
  .applications-list article { grid-template-columns: 38px minmax(170px, 0.8fr) 1.2fr; }
  .engineering-visual { order: 2; }
  .delivery-path { grid-template-columns: repeat(2, 1fr); }
  .delivery-path article:nth-child(3) { border-right: 1px solid #afc5c2; }
  .delivery-path article:nth-child(even) { border-right: 0; }
  .projects-heading { gap: 22px; }
  .project-media-grid { grid-template-columns: 1fr 1fr; }
  .project-media--lead { min-height: 500px; grid-column: 1 / -1; grid-row: auto; }
  .home-contact__inner { grid-template-columns: 1fr; align-items: start; }
  .home-contact__action { justify-items: start; }
}

@media (max-width: 640px) {
  .home-panel__number { top: 16px; right: 14px; }
  .home-section { padding-block: 76px; }
  .home-hero__grid { padding-block: 58px; }
  .home-hero__content h1 { font-size: clamp(2.7rem, 13vw, 3.8rem); line-height: 0.98; }
  .home-actions { align-items: stretch; flex-direction: column; }
  .home-actions .button { width: 100%; }
  .home-actions .home-inline-link { align-self: flex-start; }
  .material-discovery { min-height: 105vw; border-radius: 4px 32px 4px 4px; box-shadow: 12px 16px 38px rgba(34, 79, 78, 0.15); }
  .home-hero__visual figcaption { grid-template-columns: 1fr; }
  .home-hero__visual figcaption span { max-width: none; text-align: left; }
  .home-section__intro h2,
  .home-proof__heading h2,
  .company-copy h2,
  .portfolio-heading h2,
  .applications-copy h2,
  .engineering-copy h2,
  .projects-heading h2,
  .news-heading h2,
  .home-contact h2 { font-size: clamp(2.25rem, 10.8vw, 3.25rem); }
  .home-proof__grid { grid-template-columns: 1fr 1fr; }
  .home-proof__grid > div { min-height: 150px; padding: 22px 14px; }
  .home-proof strong { font-size: 2.15rem; }
  .company-media,
  .engineering-visual { min-height: 110vw; border-radius: 4px 32px 4px 4px; }
  .core-line { gap: 34px; padding-block: 58px; }
  .core-line__media { min-height: 100vw; }
  .core-line__copy h3 { font-size: clamp(2.1rem, 10vw, 3.1rem); }
  .portfolio-list a { grid-template-columns: 32px 1fr auto; gap: 13px; }
  .portfolio-list small { grid-column: 2 / -1; }
  .applications-list article,
  .engineering-points > div { grid-template-columns: 1fr; gap: 9px; }
  .delivery-path { grid-template-columns: 1fr; }
  .delivery-path article,
  .delivery-path article:nth-child(3),
  .delivery-path article:nth-child(even) { min-height: 0; border-right: 0; border-left: 1px solid #afc5c2; border-bottom: 1px solid #afc5c2; }
  .delivery-path h3 { margin-top: 24px; }
  .project-media-grid,
  .home-news-grid { grid-template-columns: 1fr; }
  .project-media,
  .project-media--lead { min-height: 100vw; grid-column: auto; }
  .news-heading { grid-template-columns: 1fr; gap: 22px; margin-bottom: 38px; }
  .home-news-card:first-child { grid-column: auto; }
  .home-news-empty { padding: 28px; }
}

@media (prefers-reduced-motion: reduce) {
  .js .home-v3 [data-reveal],
  .js .home-hero__content > * { opacity: 1; transform: none; }
  .delivery-path::before { transform: scaleX(1); }
  .material-discovery__wood { transition: none; }
}

@media (hover: none), (pointer: coarse) {
  .material-discovery__wood {
    opacity: 0.68;
    -webkit-mask-image: linear-gradient(135deg, transparent 0%, transparent 38%, rgba(0, 0, 0, 0.5) 50%, #000 62%, #000 100%);
    mask-image: linear-gradient(135deg, transparent 0%, transparent 38%, rgba(0, 0, 0, 0.5) 50%, #000 62%, #000 100%);
  }
}

/* 0.8.6 — full-screen material narrative */
.home-v3 {
  --home-canvas: #edf4f3;
  --home-grid: rgba(16, 54, 56, 0.045);
  background:
    linear-gradient(90deg, transparent 0 8.3%, rgba(8, 122, 120, 0.08) 8.3% calc(8.3% + 1px), transparent calc(8.3% + 1px)),
    var(--home-canvas);
}

.home-v3 > .home-panel {
  scroll-margin-top: 0;
  overflow: hidden;
}

.home-v3 > .home-panel::before {
  position: absolute;
  z-index: -1;
  inset: 0;
  background:
    linear-gradient(var(--home-grid) 1px, transparent 1px),
    linear-gradient(90deg, var(--home-grid) 1px, transparent 1px);
  background-size: 72px 72px;
  opacity: 0.36;
  transform: scale(1.035);
  transition: opacity 900ms ease, transform 1200ms cubic-bezier(0.16, 1, 0.3, 1);
  content: "";
  pointer-events: none;
}

.home-v3 > .home-panel.is-screen-active::before {
  opacity: 0.72;
  transform: scale(1);
}

.home-v3 > .home-panel > .container {
  position: relative;
  z-index: 1;
}

.home-screen-nav {
  position: fixed;
  z-index: 70;
  top: 50%;
  right: clamp(12px, 1.8vw, 28px);
  display: grid;
  gap: 7px;
  transform: translateY(-50%);
}

.home-screen-nav a {
  position: relative;
  width: 34px;
  height: 13px;
  display: grid;
  justify-items: end;
  align-items: center;
  color: var(--home-ink);
}

.home-screen-nav a::after {
  width: 11px;
  height: 2px;
  background: rgba(16, 54, 56, 0.3);
  content: "";
  transition: width 260ms cubic-bezier(0.16, 1, 0.3, 1), background 180ms ease;
}

.home-screen-nav a:hover::after,
.home-screen-nav a:focus-visible::after,
.home-screen-nav a.is-active::after {
  width: 30px;
  background: var(--home-accent);
}

.home-screen-nav a span {
  position: absolute;
  top: 50%;
  right: 43px;
  padding: 5px 8px;
  color: #f7fbfa;
  background: rgba(7, 62, 63, 0.9);
  font-size: 0.62rem;
  font-weight: 730;
  letter-spacing: 0.06em;
  white-space: nowrap;
  opacity: 0;
  transform: translate(6px, -50%);
  pointer-events: none;
  transition: opacity 180ms ease, transform 180ms ease;
}

.home-screen-nav a:hover span,
.home-screen-nav a:focus-visible span {
  opacity: 1;
  transform: translate(0, -50%);
}

.home-screen-nav.is-on-dark a::after { background: rgba(255, 255, 255, 0.38); }
.home-screen-nav.is-on-dark a.is-active::after { background: #fff; }

.home-proof .home-eyebrow,
.company-section .home-eyebrow,
.portfolio-section .home-eyebrow,
.applications-section .home-eyebrow,
.delivery-section .home-eyebrow,
.news-section .home-eyebrow,
.home-contact .home-eyebrow {
  display: none;
}

.home-panel__number {
  top: clamp(22px, 3vh, 34px);
  right: clamp(56px, 5vw, 78px);
  letter-spacing: 0.18em;
}

.home-section {
  padding-block: clamp(76px, 9vh, 112px);
}

.home-section__intro {
  margin-bottom: clamp(42px, 6vh, 68px);
}

.home-section__intro h2,
.home-proof__heading h2,
.company-copy h2,
.portfolio-heading h2,
.applications-copy h2,
.engineering-copy h2,
.projects-heading h2,
.news-heading h2,
.home-contact h2 {
  font-size: clamp(2.35rem, 4.25vw, 4.25rem);
  line-height: 0.98;
}

/* 01: aluminium mist */
.home-hero {
  background:
    radial-gradient(circle at 77% 17%, rgba(59, 178, 174, 0.2), transparent 30%),
    linear-gradient(115deg, rgba(255, 255, 255, 0.74), transparent 44%),
    #e9f2f1;
}

.home-hero::after {
  position: absolute;
  z-index: -1;
  right: 7%;
  bottom: 9%;
  width: min(32vw, 480px);
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(8, 122, 120, 0.42), transparent);
  box-shadow: 0 18px 36px rgba(8, 122, 120, 0.12);
  content: "";
}

.home-hero__grid { gap: clamp(64px, 8vw, 126px); }
.home-hero__content h1 { max-width: 720px; font-size: clamp(3.35rem, 5.1vw, 5rem); }
.material-discovery { box-shadow: 0 36px 90px rgba(29, 76, 75, 0.19); }

/* 03: measured capability */
.home-proof {
  background:
    radial-gradient(circle at 11% 16%, rgba(8, 122, 120, 0.13), transparent 23%),
    #f8fbfa;
}

.home-proof__heading {
  grid-template-columns: minmax(0, 0.95fr) minmax(340px, 0.7fr);
  align-items: end;
  gap: clamp(54px, 8vw, 118px);
}

.home-proof__heading > div { display: contents; }
.home-proof__heading h2 { max-width: 760px; }
.home-proof__summary { max-width: 480px; margin: 0 0 4px; }

.home-proof__grid {
  border: 0;
  gap: 10px;
}

.home-proof__grid > div,
.home-proof__grid > div:first-child {
  min-height: 190px;
  border: 1px solid rgba(146, 174, 170, 0.58);
  background: rgba(248, 252, 251, 0.62);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.84);
  backdrop-filter: blur(10px);
}

/* 02: company story and manufacturing film */
.company-section {
  background:
    linear-gradient(90deg, #dbe8e6 0 52%, rgba(219, 232, 230, 0.18) 72%, transparent),
    #e2ecea;
}

.company-layout { grid-template-columns: minmax(420px, 1.02fr) minmax(0, 0.98fr); gap: clamp(52px, 7vw, 104px); }
.company-copy h2 { max-width: 650px; font-size: clamp(2.2rem, 3vw, 3.15rem); }
.company-media { min-height: min(66vh, 610px); }

/* 04: one intentional graphite engineering chamber */
.core-lines-section {
  background:
    radial-gradient(circle at 85% 9%, rgba(105, 217, 209, 0.13), transparent 27%),
    linear-gradient(135deg, rgba(255,255,255,0.025), transparent 40%),
    #0a3033;
}

.core-lines-section::before {
  --home-grid: rgba(196, 231, 227, 0.055);
  background-size: 84px 84px;
}

.core-lines-section .home-section__intro { max-width: 1030px; }
.core-lines-section .home-section__intro h2 { max-width: 870px; }
.core-line { gap: clamp(58px, 8vw, 122px); }
.core-line__copy h3 { font-size: clamp(2.15rem, 3.55vw, 3.65rem); }

/* 05: materials catalogue */
.portfolio-section {
  background:
    linear-gradient(112deg, rgba(8, 122, 120, 0.08), transparent 36%),
    #f7fbfa;
}

.portfolio-layout { grid-template-columns: minmax(300px, 0.72fr) minmax(0, 1.28fr); gap: clamp(70px, 10vw, 150px); }
.portfolio-heading { position: static; align-self: center; }
.portfolio-heading h2 { max-width: 510px; font-size: clamp(2.45rem, 3.9vw, 3.9rem); }
.portfolio-list a { padding-block: clamp(30px, 4vh, 42px); }

/* 06: application field */
.applications-section {
  background:
    radial-gradient(ellipse at 84% 52%, rgba(255, 255, 255, 0.88), transparent 40%),
    #e2ecea;
}

.applications-layout { grid-template-columns: minmax(300px, 0.68fr) minmax(0, 1.32fr); }
.applications-copy { position: static; align-self: center; }
.applications-copy h2 { max-width: 520px; }
.applications-list article { padding-block: clamp(22px, 2.9vh, 31px); }

/* 07: blueprint and process */
.engineering-section {
  background:
    linear-gradient(90deg, rgba(8, 122, 120, 0.035) 1px, transparent 1px),
    linear-gradient(rgba(8, 122, 120, 0.035) 1px, transparent 1px),
    #f7faf9;
  background-size: 28px 28px;
}

.engineering-visual { min-height: min(66vh, 650px); }
.engineering-copy h2 { max-width: 570px; }
.engineering-points { margin-block: clamp(26px, 4vh, 38px); }

/* 08: continuous delivery track */
.delivery-section {
  background:
    linear-gradient(105deg, rgba(255, 255, 255, 0.76), transparent 45%),
    #dce8e6;
}

.delivery-section .home-section__intro { display: grid; grid-template-columns: minmax(0, 1fr) minmax(320px, 0.65fr); gap: 70px; align-items: end; max-width: none; }
.delivery-section .home-section__intro h2 { max-width: 740px; }
.delivery-section .home-section__intro > p:last-child { margin: 0 0 4px; }
.delivery-path article { min-height: clamp(240px, 29vh, 285px); }

/* 09: global project coordinates, returned to the light material theme */
.projects-section {
  color: var(--home-ink);
  background:
    radial-gradient(circle at 78% 30%, rgba(8, 122, 120, 0.13), transparent 30%),
    linear-gradient(145deg, rgba(255,255,255,0.74), transparent 45%),
    #dfeae8;
}

.projects-section::before {
  background:
    repeating-radial-gradient(circle at 82% 44%, transparent 0 54px, rgba(8, 122, 120, 0.045) 55px 56px),
    linear-gradient(var(--home-grid) 1px, transparent 1px),
    linear-gradient(90deg, var(--home-grid) 1px, transparent 1px);
  background-size: auto, 72px 72px, 72px 72px;
}

.projects-section .home-panel__number { color: rgba(16, 54, 56, 0.46); }
.projects-section .home-eyebrow { color: var(--home-accent); }
.projects-heading h2 { color: var(--home-ink); }
.projects-heading > p { color: var(--home-muted); }
.project-media { border-color: #89a7a3; background: linear-gradient(145deg, rgba(255,255,255,0.22), rgba(8,122,120,0.1)), repeating-linear-gradient(135deg, rgba(8,122,120,0.045) 0 1px, transparent 1px 12px), #cbdcda; }
.project-media > strong { color: var(--home-ink); }
.project-media > small { color: var(--home-muted); }
.project-media--video::after { color: var(--home-accent); border-color: var(--home-accent); }

/* 10: editorial white space */
.news-section {
  background:
    linear-gradient(180deg, rgba(8, 122, 120, 0.055), transparent 28%),
    #f8fbfa;
}

.home-news-grid { gap: clamp(14px, 1.5vw, 22px); }
.home-news-card { background: rgba(236, 244, 242, 0.84); }
.home-news-card__media { min-height: clamp(180px, 24vh, 245px); }
.home-news-card__media img { height: clamp(180px, 24vh, 245px); }
.home-news-card__copy { min-height: clamp(200px, 25vh, 245px); }

/* 11: brand-colour conclusion */
.home-contact {
  background:
    radial-gradient(circle at 80% 24%, rgba(113, 218, 210, 0.25), transparent 28%),
    linear-gradient(135deg, rgba(3, 68, 68, 0.2), transparent 55%),
    var(--home-accent);
}

.home-contact::before {
  --home-grid: rgba(255,255,255,0.07);
  background-size: 84px 84px;
}

.home-contact__inner { grid-template-columns: minmax(0, 1fr) minmax(220px, auto); }
.home-contact h2 { max-width: 820px; font-size: clamp(2.6rem, 4.5vw, 4.6rem); }

/* Replayed motion on every screen arrival */
.js .home-v3 [data-reveal] {
  opacity: 0;
  filter: blur(5px);
  transform: translate3d(0, 36px, 0) scale(0.988);
  transition:
    opacity 680ms cubic-bezier(0.16, 1, 0.3, 1),
    filter 760ms cubic-bezier(0.16, 1, 0.3, 1),
    transform 760ms cubic-bezier(0.16, 1, 0.3, 1);
  transition-delay: var(--reveal-delay, 0ms);
  will-change: opacity, filter, transform;
}

.js .home-v3 [data-reveal].is-visible {
  opacity: 1;
  filter: blur(0);
  transform: translate3d(0, 0, 0) scale(1);
}

.js .home-v3.is-ready .home-hero__content > [data-reveal] {
  opacity: 0;
  filter: blur(5px);
  transform: translate3d(0, 36px, 0) scale(0.988);
  transition:
    opacity 680ms cubic-bezier(0.16, 1, 0.3, 1),
    filter 760ms cubic-bezier(0.16, 1, 0.3, 1),
    transform 760ms cubic-bezier(0.16, 1, 0.3, 1);
  transition-delay: var(--reveal-delay, 0ms);
}

.js .home-v3.is-ready .home-hero__content > [data-reveal].is-visible {
  opacity: 1;
  filter: blur(0);
  transform: translate3d(0, 0, 0) scale(1);
}

.js .home-v3 .company-media[data-reveal],
.js .home-v3 .engineering-visual[data-reveal],
.js .home-v3 .project-media[data-reveal] {
  transform: translate3d(22px, 28px, 0) scale(0.965);
}

.js .home-v3 .company-media[data-reveal].is-visible,
.js .home-v3 .engineering-visual[data-reveal].is-visible,
.js .home-v3 .project-media[data-reveal].is-visible {
  transform: translate3d(0, 0, 0) scale(1);
}

.js .home-panel__number {
  opacity: 0.34;
  transform: translateY(-7px);
  transition: opacity 500ms ease 240ms, transform 500ms cubic-bezier(0.16, 1, 0.3, 1) 240ms;
}

.js .home-panel.is-screen-active .home-panel__number {
  opacity: 1;
  transform: translateY(0);
}

@media (min-width: 901px) {
  .home-v3 > .home-panel:not(.products-overview-section):not(.home-panel--08) > .container {
    width: min(calc(100% - 96px), var(--content));
  }
}

@media (max-width: 1180px) {
  .home-screen-nav a span { display: none; }
  .home-panel__number { right: 54px; }
  .delivery-section .home-section__intro { grid-template-columns: 1fr; gap: 18px; }
  .delivery-section .home-section__intro > p:last-child { margin-top: 0; }
}

@media (max-width: 900px) {
  .home-screen-nav { display: none; }
  .home-panel__number { right: 22px; }
  .home-v3 > .home-panel::before { background-size: 48px 48px; opacity: 0.42; }
  .home-proof__heading { display: grid; grid-template-columns: 1fr; gap: 20px; }
  .home-proof__heading > div { display: block; }
  .home-proof__summary { max-width: 680px; margin-top: 20px; }
  .company-layout,
  .portfolio-layout,
  .applications-layout { grid-template-columns: 1fr; }
  .company-section { background: #dfeae8; }
}

@media (prefers-reduced-motion: reduce) {
  .js .home-v3 [data-reveal],
  .js .home-v3 .company-media[data-reveal],
  .js .home-v3 .engineering-visual[data-reveal],
  .js .home-v3 .project-media[data-reveal] {
    opacity: 1;
    filter: none;
    transform: none;
    transition: none;
  }

  .home-v3 > .home-panel::before { transform: none; transition: none; }
}

/* 0.8.7 — evidence-led homepage content */
.home-evidence-request {
  display: grid;
  grid-template-columns: minmax(150px, 0.32fr) minmax(0, 1fr);
  gap: clamp(16px, 2vw, 30px);
  align-items: start;
  padding: 16px 18px;
  border-left: 2px solid var(--home-accent);
  color: var(--home-muted);
  background: rgba(248, 252, 251, 0.62);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72);
  backdrop-filter: blur(10px);
}

.home-evidence-request strong {
  color: var(--home-accent-dark);
  font-size: 0.72rem;
  font-weight: 780;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.home-evidence-request p {
  margin: 0;
  color: inherit;
  font-size: 0.76rem;
  line-height: 1.55;
}

.home-proof__evidence { margin-top: 20px; }
.company-history__evidence { margin-top: 30px; }
.portfolio-heading__summary { max-width: 520px; margin: 24px 0 0; color: var(--home-muted); }
.portfolio-heading__evidence { margin-top: 30px; grid-template-columns: 1fr; }

.portfolio-list__featured {
  background: linear-gradient(90deg, rgba(8, 122, 120, 0.1), transparent 84%);
}

.portfolio-list__featured strong { color: var(--home-accent-dark); }

.applications-copy__value {
  color: var(--home-ink) !important;
  font-weight: 620;
}

.applications-copy__evidence { margin-top: 28px; grid-template-columns: 1fr; }

.applications-list article > div small {
  display: block;
  margin-top: 7px;
  color: var(--home-accent);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.01em;
}

.delivery-evidence,
.projects-evidence,
.news-evidence { margin-top: 20px; }

.projects-evidence {
  color: #4f6867;
  background: rgba(241, 248, 246, 0.76);
}

.news-heading__summary {
  max-width: 680px;
  margin: 18px 0 0;
  color: var(--home-muted);
  font-size: 0.94rem;
}

.home-contact__brief {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 20px;
  margin-top: 28px;
}

.home-contact__brief span {
  position: relative;
  padding-left: 13px;
  color: #e0efed;
  font-size: 0.76rem;
  font-weight: 680;
}

.home-contact__brief span::before {
  position: absolute;
  top: 0.62em;
  left: 0;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: #9ee2dc;
  content: "";
}

@media (min-width: 901px) and (max-height: 820px) {
  .home-proof__evidence,
  .delivery-evidence,
  .projects-evidence,
  .news-evidence { margin-top: 12px; }

  .home-evidence-request { padding-block: 12px; }
  .home-evidence-request p { line-height: 1.4; }
  .company-history__evidence { margin-top: 20px; }
  .portfolio-heading__evidence { margin-top: 20px; }
  .home-contact__brief { margin-top: 20px; }
}

@media (max-width: 900px) {
  .home-evidence-request { grid-template-columns: 1fr; }
  .portfolio-heading__summary { max-width: 680px; }
}

@media (max-width: 640px) {
  .home-evidence-request { padding: 14px; }
  .home-contact__brief { gap: 8px 14px; }
}

/* 0.8.9 — unified hero business identity */
.home-hero__identity {
  position: relative;
  isolation: isolate;
  width: fit-content;
  max-width: 100%;
  display: block;
  margin: 0 0 clamp(26px, 3.2vh, 36px);
  padding: 14px clamp(22px, 2.2vw, 32px) 15px 20px;
  border-left: 4px solid var(--home-accent);
  color: var(--home-ink);
  background:
    linear-gradient(112deg, rgba(255,255,255,0.88), rgba(255,255,255,0.36) 72%, transparent),
    linear-gradient(90deg, rgba(8,122,120,0.1), transparent 78%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.96),
    0 14px 34px rgba(24, 75, 74, 0.08);
  font-family: "Segoe UI Variable Display", "Segoe UI", system-ui, sans-serif;
  font-size: clamp(1rem, 1.25vw, 1.28rem);
  font-weight: 760;
  line-height: 1.12;
  letter-spacing: 0.055em;
  text-transform: uppercase;
  text-wrap: balance;
}

.home-hero__identity::after {
  position: absolute;
  z-index: -1;
  right: 0;
  bottom: 0;
  left: 0;
  height: 1px;
  background: linear-gradient(90deg, rgba(8,122,120,0.42), rgba(132,161,158,0.12), transparent);
  content: "";
}

.company-highlights {
  max-width: 690px;
  display: grid;
  gap: 10px;
  margin: 24px 0 0;
  padding: 0;
  list-style: none;
}

.company-highlights li {
  position: relative;
  margin: 0;
  padding: 0 0 0 22px;
  color: var(--home-ink);
  font-size: clamp(0.82rem, 0.9vw, 0.94rem);
  font-weight: 610;
  line-height: 1.45;
}

.company-highlights li::before {
  position: absolute;
  top: 0.54em;
  left: 0;
  width: 8px;
  height: 8px;
  background: var(--home-accent);
  content: "";
}

.company-copy .home-inline-link { margin-top: 24px; }
.company-history__evidence { margin-top: 22px; }

@media (max-width: 640px) {
  .home-hero__identity {
    width: 100%;
    margin-bottom: 24px;
    padding: 13px 16px 14px;
    font-size: 0.96rem;
  }
}

/* Homepage refinement v0.20.0: remove repeated copy and restore a natural closing flow. */
@media (min-width: 1101px) {
  .home-hero__copy-stack,
  .home-hero__lede {
    width: max-content;
    max-width: none;
  }

  .home-hero__lede {
    flex-wrap: nowrap;
  }

  .home-hero__lede span {
    white-space: nowrap;
  }
}

.engineering-evidence-chapter {
  grid-template-rows: auto 1fr;
  gap: clamp(0.85rem, 1.6vh, 1.2rem);
}

.engineering-evidence-chapter__heading {
  min-height: 0;
  padding-left: 0;
  border-left: 0;
}

.engineering-evidence-chapter__heading h2 {
  font-size: clamp(2rem, 2.7vw, 3rem);
}

.engineering-innovation-grid,
.engineering-quality-grid {
  grid-template-columns: repeat(auto-fit, minmax(145px, 1fr));
}

.engineering-innovation-grid {
  min-height: 0;
}

.engineering-innovation-grid img {
  min-height: 0;
  aspect-ratio: 4 / 5;
}

.engineering-quality-grid {
  padding-bottom: 1.1rem;
}

.projects-section {
  display: flex !important;
  flex-direction: column;
  min-height: 100dvh;
}

.projects-section > .container {
  width: min(100% - 40px, 1440px);
  flex: 1 0 auto;
  margin-inline: auto;
  min-height: 100dvh;
}

.projects-section .projects-heading {
  grid-template-columns: minmax(260px, 0.72fr) minmax(320px, 1.28fr);
}

.projects-section .projects-heading h2 {
  font-size: clamp(2.5rem, 4vw, 4.4rem);
  white-space: nowrap;
}

.site-footer--projects {
  width: 100%;
  flex: 0 0 auto;
}

@media (max-width: 1100px) {
  .projects-section .projects-heading {
    grid-template-columns: 1fr;
  }
}

@media (prefers-reduced-transparency: reduce) {
  .home-hero__identity { background: #e7f0ef; }
}

/* 0.9.0: product hierarchy and native depth galleries */
.core-lines-section .home-section__intro > p:last-child {
  max-width: 650px;
  font-size: clamp(0.88rem, 0.95vw, 1rem);
  line-height: 1.65;
}

.core-line__copy .home-eyebrow {
  margin-bottom: 17px;
  font-size: clamp(0.9rem, 1.05vw, 1.08rem);
  letter-spacing: 0.095em;
}

.core-line__copy h3 {
  max-width: 680px;
  font-size: clamp(2.5rem, 4.15vw, 4.35rem);
}

.core-line__copy > p:not(.home-eyebrow) {
  max-width: 610px;
  font-size: clamp(0.84rem, 0.9vw, 0.94rem);
  line-height: 1.65;
}

.core-line__copy li { font-size: 0.84rem; }

.depth-carousel {
  --dc-drag: 0px;
  position: relative;
  isolation: isolate;
  width: 100%;
  min-width: 0;
  min-height: clamp(430px, 45vw, 590px);
  overflow: hidden;
  border: 1px solid #527374;
  border-radius: 16px;
  background:
    radial-gradient(circle at 76% 22%, rgba(114, 216, 210, 0.17), transparent 34%),
    linear-gradient(145deg, rgba(255,255,255,0.035), rgba(114,216,210,0.09)),
    #123b3e;
  box-shadow: 0 26px 70px rgba(3, 31, 33, 0.2);
  perspective: 1400px;
  perspective-origin: 52% 50%;
  touch-action: pan-y;
  user-select: none;
  cursor: grab;
}

.depth-carousel.is-dragging { cursor: grabbing; }
.depth-carousel:focus-visible { outline: 2px solid #72d8d2; outline-offset: 5px; }
.core-line .depth-carousel.core-line__media { border-radius: 16px; }

.depth-carousel__stage {
  position: absolute;
  z-index: 1;
  inset: 18px 22px 74px;
  overflow: visible;
  transform-style: preserve-3d;
  pointer-events: none;
}

.depth-carousel__card {
  position: absolute;
  top: 50%;
  left: 44%;
  width: min(73%, 570px);
  height: min(82%, 460px);
  margin: 0;
  overflow: hidden;
  border: 1px solid rgba(185, 220, 216, 0.4);
  border-radius: 14px;
  background: #dce8e6;
  box-shadow: 0 28px 58px rgba(3, 28, 30, 0.43);
  opacity: var(--dc-opacity, 0);
  filter: blur(var(--dc-blur, 0));
  transform:
    translate(calc(-50% + var(--dc-x, 0px) + var(--dc-drag)), -50%)
    translateZ(var(--dc-z, 0px))
    rotateY(var(--dc-rotate, 0deg))
    scale(var(--dc-scale, 1));
  transform-origin: center;
  transition:
    transform 680ms cubic-bezier(0.16, 1, 0.3, 1),
    opacity 420ms ease,
    filter 520ms ease,
    box-shadow 420ms ease;
  will-change: transform, opacity, filter;
  pointer-events: auto;
}

.depth-carousel__card.is-active { box-shadow: 0 36px 72px rgba(3, 28, 30, 0.52); }
.depth-carousel:not(.is-initialized) .depth-carousel__card:first-child { --dc-opacity: 1; --dc-scale: 1; --dc-blur: 0; --dc-x: 0px; --dc-z: 0px; --dc-rotate: 0deg; }
.depth-carousel__media { height: calc(100% - 92px); padding: 12px; background: #f7f9f8; }
.depth-carousel__media img { width: 100%; height: 100%; display: block; object-fit: cover; object-position: center; }

.depth-carousel__card figcaption {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  min-height: 92px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 4px 18px;
  align-content: center;
  padding: 14px 18px;
  color: #eaf5f3;
  background: rgba(8, 48, 51, 0.96);
}

.depth-carousel__card figcaption span {
  color: #72d8d2;
  font-size: 0.62rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.depth-carousel__card figcaption strong { font-size: 0.91rem; line-height: 1.2; }
.depth-carousel__card figcaption small { grid-row: 1 / span 2; grid-column: 2; max-width: 180px; align-self: center; color: #a9c5c2; font-size: 0.65rem; line-height: 1.35; text-align: right; }

.depth-carousel__placeholder {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: clamp(28px, 4vw, 48px);
  color: #eaf5f3;
  background:
    linear-gradient(145deg, rgba(255,255,255,0.045), rgba(114,216,210,0.13)),
    repeating-linear-gradient(135deg, rgba(255,255,255,0.035) 0 1px, transparent 1px 12px),
    #153f41;
}

.depth-carousel__placeholder::before {
  position: absolute;
  inset: 15px;
  border: 1px solid rgba(171, 211, 207, 0.35);
  content: "";
  pointer-events: none;
}

.depth-carousel__placeholder span { color: #72d8d2; font-size: 0.66rem; font-weight: 800; letter-spacing: 0.1em; }
.depth-carousel__placeholder strong { max-width: 520px; margin-top: 13px; font-size: clamp(1.25rem, 2vw, 1.8rem); line-height: 1.22; }
.depth-carousel__placeholder small { max-width: 520px; margin-top: 10px; color: #a9c5c2; font-size: 0.75rem; line-height: 1.5; }

.depth-carousel__controls {
  position: absolute;
  z-index: 100;
  right: 22px;
  bottom: 18px;
  display: grid;
  grid-template-columns: 42px auto 42px;
  gap: 8px;
  align-items: center;
  pointer-events: auto;
}

.depth-carousel__controls button {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  padding: 0;
  border: 1px solid rgba(205, 235, 232, 0.34);
  border-radius: 50%;
  color: #eef8f7;
  background: rgba(5, 40, 42, 0.7);
  backdrop-filter: blur(12px);
  cursor: pointer;
  transition: background 180ms ease, transform 180ms ease, border-color 180ms ease;
}

.depth-carousel__controls button:hover { border-color: #72d8d2; background: #075c5b; }
.depth-carousel__controls button:active { transform: scale(0.94); }
.depth-carousel__controls button:focus-visible { outline: 2px solid #72d8d2; outline-offset: 2px; }
.depth-carousel__controls output { min-width: 58px; color: #c9dcd9; font-size: 0.7rem; font-weight: 750; letter-spacing: 0.08em; text-align: center; }

.depth-carousel__hint {
  position: absolute;
  z-index: 90;
  bottom: 29px;
  left: 24px;
  margin: 0;
  color: #9ebbb8;
  font-size: 0.66rem;
  letter-spacing: 0.04em;
  pointer-events: none;
}

.depth-carousel--document {
  min-height: min(68vh, 650px);
  border-color: #98b0ad;
  background:
    radial-gradient(circle at 78% 22%, rgba(8, 122, 120, 0.14), transparent 34%),
    #dce8e6;
  box-shadow: 0 28px 66px rgba(33, 79, 78, 0.17);
}

.depth-carousel--document .depth-carousel__stage { inset: 18px 16px 78px; }
.depth-carousel--document .depth-carousel__card { left: 38%; width: min(55%, 365px); height: min(86%, 520px); border-color: #a9bfbc; }
.depth-carousel--document .depth-carousel__media { height: calc(100% - 102px); padding: 10px; }
.depth-carousel--document .depth-carousel__media img { object-fit: contain; background: #fff; }
.depth-carousel--document .depth-carousel__card figcaption { min-height: 102px; grid-template-columns: 1fr; gap: 4px; }
.depth-carousel--document .depth-carousel__card figcaption small { grid-row: auto; grid-column: auto; max-width: none; text-align: left; }
.depth-carousel--document .depth-carousel__controls output { color: #254e4e; }
.depth-carousel--document .depth-carousel__hint { color: #4f7170; }

.engineering-document-note { max-width: 590px; margin: -12px 0 24px; color: var(--home-muted); font-size: 0.74rem; line-height: 1.5; }

.project-media-grid { display: block; }
.project-carousel { min-height: min(66vh, 640px); border-color: #89a7a3; background: linear-gradient(145deg, rgba(255,255,255,0.3), rgba(8,122,120,0.1)), #cbdcda; box-shadow: 0 28px 68px rgba(31, 82, 80, 0.17); }
.project-carousel .depth-carousel__media { padding: 0; background: #0b3234; }
.project-carousel .depth-carousel__media img { filter: saturate(0.94) contrast(1.025); transition: filter 420ms ease, transform 700ms cubic-bezier(0.16, 1, 0.3, 1); }
.project-carousel .depth-carousel__card.is-active .depth-carousel__media img { filter: saturate(1.02) contrast(1.035); transform: scale(1.012); }
.project-carousel .depth-carousel__controls output { color: #244c4c; }
.project-carousel .depth-carousel__hint { color: #4f7170; }

.applications-gallery { grid-column: 1 / -1; margin-top: clamp(30px, 5vh, 58px); }
.application-carousel { min-height: min(58vh, 540px); }

.delivery-gallery { margin-top: clamp(38px, 6vh, 64px); }
.delivery-carousel {
  min-height: min(58vh, 540px);
  border-color: #93ada9;
  background:
    radial-gradient(circle at 78% 22%, rgba(8, 122, 120, 0.13), transparent 34%),
    #cbdcda;
  box-shadow: 0 28px 68px rgba(31, 82, 80, 0.17);
}
.delivery-carousel .depth-carousel__controls output { color: #244c4c; }
.delivery-carousel .depth-carousel__hint { color: #4f7170; }

@media (max-width: 900px) {
  .depth-carousel { min-height: min(82vw, 560px); }
  .depth-carousel__card { left: 39%; width: min(72%, 460px); }
  .depth-carousel--document { min-height: min(110vw, 650px); }
  .depth-carousel--document .depth-carousel__card { left: 35%; width: min(64%, 365px); }
  .depth-carousel__hint { display: none; }
  .applications-gallery { margin-top: 20px; }
}

@media (max-width: 640px) {
  .core-line__copy .home-eyebrow { font-size: 0.88rem; }
  .core-line__copy h3 { font-size: clamp(2.35rem, 11vw, 3.35rem); }
  .depth-carousel { min-height: 112vw; border-radius: 12px; }
  .depth-carousel__stage { inset: 14px 10px 72px; }
  .depth-carousel__card { left: 36%; width: 72%; height: 82%; }
  .depth-carousel__card figcaption { grid-template-columns: 1fr; min-height: 112px; }
  .depth-carousel__card figcaption small { grid-row: auto; grid-column: auto; max-width: none; text-align: left; }
  .depth-carousel__media { height: calc(100% - 112px); }
  .depth-carousel__controls { right: 14px; bottom: 14px; }
  .depth-carousel--document { min-height: 132vw; }
  .depth-carousel--document .depth-carousel__card { left: 34%; width: 69%; height: 86%; }
  .project-carousel,
  .application-carousel,
  .delivery-carousel { min-height: 112vw; }
}

@media (prefers-reduced-motion: reduce) {
  .depth-carousel__card { transition: none; will-change: auto; }
  .depth-carousel__controls button { transition: none; }
}

/* 0.9.2: chapter-first heading hierarchy */
.home-v3 .home-chapter-title {
  max-width: none;
  margin: 0 0 18px;
  font-size: clamp(1.55rem, 2.25vw, 2.25rem);
  font-weight: 760;
  line-height: 1.05;
  letter-spacing: -0.035em;
}

.home-v3 .home-chapter-statement {
  max-width: 760px;
  margin: 0;
  color: inherit;
  font-size: clamp(1.12rem, 1.65vw, 1.55rem);
  font-weight: 620;
  line-height: 1.25;
  letter-spacing: -0.025em;
  text-wrap: balance;
}

.core-lines-section .home-section__intro {
  max-width: 820px;
  margin-bottom: clamp(42px, 5vw, 64px);
}

.core-lines-section .home-section__intro .home-chapter-title { color: #f4f9f8; }
.core-lines-section .home-section__intro .home-chapter-statement { color: #72d8d2; }
.core-lines-section .home-section__intro > p:last-child { margin-top: 18px; }

.engineering-copy .home-chapter-title { color: var(--home-ink); }
.engineering-copy .home-chapter-statement { margin-bottom: 20px; color: var(--home-accent); }
.engineering-copy .home-chapter-statement + p { margin-top: 0; }

.projects-heading { align-items: start; }
.projects-heading .home-chapter-title { color: var(--home-ink); }
.projects-heading .home-chapter-statement { max-width: 650px; color: var(--home-accent); }

@media (max-width: 640px) {
  .home-v3 .home-chapter-title { font-size: clamp(1.65rem, 8vw, 2.2rem); }
  .home-v3 .home-chapter-statement { font-size: 1.08rem; }
}

/* 0.9.3: dark hero and a consistent, product-first heading scale */
.home-v3 {
  --home-display-title-size: clamp(2.05rem, 3.15vw, 3.2rem);
  --home-chapter-title-size: clamp(1.9rem, 2.7vw, 2.7rem);
}

.home-hero {
  color: #d7e8e6;
  background:
    linear-gradient(90deg, rgba(3, 31, 33, 0.88) 0%, rgba(3, 42, 42, 0.74) 42%, rgba(3, 50, 49, 0.3) 72%, rgba(3, 43, 41, 0.18) 100%),
    linear-gradient(180deg, rgba(5, 48, 46, 0.16), rgba(2, 31, 31, 0.48)),
    url("../images/ying-group-forest-hero.webp") center center / cover no-repeat,
    #073c3b;
}

.home-hero::before {
  --home-grid: rgba(255,255,255,0.07);
  background-size: 84px 84px;
}

.home-hero::after {
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.38), transparent);
  box-shadow: 0 18px 36px rgba(3, 68, 68, 0.2);
}

.home-hero .home-panel__number { color: rgba(255,255,255,0.58); }

.home-hero__identity {
  border-left-color: #72d8d2;
  color: #ffffff;
  background:
    linear-gradient(112deg, rgba(255,255,255,0.16), rgba(255,255,255,0.06) 72%, transparent),
    linear-gradient(90deg, rgba(114,216,210,0.13), transparent 78%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.24),
    0 14px 34px rgba(3, 68, 68, 0.16);
}

.home-hero__identity::after {
  background: linear-gradient(90deg, rgba(114,216,210,0.72), rgba(255,255,255,0.14), transparent);
}

.home-hero__content h1 {
  max-width: 790px;
  color: #ffffff;
  font-size: clamp(2.65rem, 4.1vw, 4rem);
  line-height: 0.99;
  letter-spacing: -0.048em;
}

.home-hero__lede { color: rgba(255,255,255,0.84); }
.home-hero__visual figcaption strong { color: #ffffff; }
.home-hero__visual figcaption span { color: rgba(255,255,255,0.76); }

.home-hero .button {
  color: var(--home-accent-dark);
  border-color: #ffffff;
  background: #ffffff;
}

.home-hero .home-inline-link { color: #ffffff; }
.home-hero .home-inline-link:hover { color: #d9f4f1; }

.home-v3 h2:not(.home-chapter-title) {
  font-size: var(--home-display-title-size);
  line-height: 1.03;
  letter-spacing: -0.045em;
}

.home-v3 .home-chapter-title,
.home-v3 .core-line__title {
  max-width: 680px;
  margin: 0;
  font-size: var(--home-chapter-title-size);
  font-weight: 760;
  line-height: 1.05;
  letter-spacing: -0.035em;
  text-wrap: balance;
}

.home-v3 .home-chapter-title { margin-bottom: 18px; }
.home-v3 .core-line__title { color: #f5faf9; }

.core-line__copy > p.core-line__statement {
  max-width: 620px;
  margin: 20px 0 0;
  color: #d6e7e5;
  font-size: clamp(1.12rem, 1.55vw, 1.5rem);
  font-weight: 620;
  line-height: 1.28;
  letter-spacing: -0.022em;
  text-wrap: balance;
}

@media (max-width: 640px) {
  .home-v3 {
    --home-display-title-size: clamp(2rem, 8.8vw, 2.75rem);
    --home-chapter-title-size: clamp(1.85rem, 8.5vw, 2.3rem);
  }

  .home-hero__content h1 {
    font-size: clamp(2.35rem, 10.8vw, 3.15rem);
    line-height: 1;
  }

  .home-hero { background-position: center, center, 64% center; }

  .core-line__copy > p.core-line__statement { font-size: 1.08rem; }
}

@media (prefers-reduced-transparency: reduce) {
  .home-hero__identity { background: rgba(5, 93, 91, 0.96); }
}

/* 0.9.6: calm, solid-color transitions after the forest hero */
.home-v3 > .home-panel:not(.home-panel--01)::before,
.home-v3 > .home-panel:not(.home-panel--01).is-screen-active::before {
  background: none;
  opacity: 0;
  transform: none;
}

.home-proof { background: #f6faf9; }
.company-section { background: #e5efed; }
.core-lines-section { background: #0a3033; }
.portfolio-section { background: #f5f9f8; }
.engineering-section { background: #f1f6f5; }
.delivery-section { background: #e2ecea; }
.projects-section { background: #dce9e6; }
.news-section { background: #f8fbfa; }
.home-contact { background: #087a78; }

/* 0.9.7: material-board transitions keep solid fills, soften screen edges */
.home-v3 > .home-panel:not(.home-panel--01)::after {
  position: absolute;
  z-index: 0;
  top: 0;
  right: 0;
  left: 0;
  height: clamp(24px, 2.8vw, 48px);
  background: linear-gradient(180deg, rgba(8, 122, 120, 0.075), transparent);
  content: "";
  pointer-events: none;
}

.core-lines-section {
  background: #0a3033;
  box-shadow: inset 0 -66px 72px -78px #f5f9f8;
}

.core-lines-section::after {
  height: clamp(30px, 3.5vw, 64px);
  background: linear-gradient(180deg, rgba(114, 216, 210, 0.14), transparent);
}

.home-contact::after {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.17), transparent);
}

/* 0.9.8: a stronger forest-to-workshop opening sequence */
.company-section {
  color: #c8ded9;
  background: #164846;
}

.company-section .home-panel__number { color: rgba(228, 247, 242, 0.5); }
.company-section .home-eyebrow,
.company-section .home-inline-link { color: #84ddd5; }
.company-section .company-copy h2 { color: #f2f9f7; }
.company-section .company-copy > p,
.company-section .company-highlights li { color: #bed4d0; }
.company-section .home-inline-link:hover { color: #e2fbf7; }

.company-section .home-evidence-request {
  color: #b9d2ce;
  background: rgba(5, 37, 38, 0.34);
  box-shadow: inset 0 1px 0 rgba(235, 255, 250, 0.1);
}

.company-section .home-evidence-request strong { color: #8be1da; }

.home-proof {
  background: #c8dad5;
}

.home-proof__grid > div,
.home-proof__grid > div:first-child {
  background: rgba(237, 246, 243, 0.46);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.56);
}

.home-proof .home-evidence-request {
  background: rgba(237, 246, 243, 0.5);
}

/* 0.9.11: one-screen product overview and a shorter eight-screen homepage */
.products-overview-section {
  padding-block: clamp(64px, 7.5vh, 88px);
  background: #0a3033;
}

.products-overview-section .home-section__intro {
  max-width: none;
  display: grid;
  grid-template-columns: minmax(170px, 0.34fr) minmax(0, 1fr);
  gap: clamp(28px, 4vw, 70px);
  align-items: end;
  margin-bottom: clamp(24px, 3.5vh, 38px);
}

.products-overview-section .home-section__intro .home-chapter-title {
  margin: 0;
  font-size: clamp(1.65rem, 2.2vw, 2.2rem);
}

.products-overview-section .home-section__intro .home-chapter-statement {
  max-width: 850px;
  color: #d9ebe8;
  font-size: clamp(1rem, 1.4vw, 1.35rem);
  line-height: 1.3;
}

.products-overview-section .core-lines {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(10px, 1.1vw, 18px);
  border: 0;
}

.products-overview-section .core-line {
  position: relative;
  min-height: min(66vh, 610px);
  display: flex;
  align-items: flex-end;
  padding: clamp(185px, 23vh, 225px) clamp(20px, 2vw, 30px) clamp(24px, 3vh, 34px);
  overflow: hidden;
  border: 1px solid rgba(161, 207, 201, 0.25);
  border-radius: 18px 4px 18px 4px;
  background: #123b3e;
  box-shadow: inset 0 1px 0 rgba(236, 255, 251, 0.06);
}

.products-overview-section .core-line::before,
.products-overview-section .core-line::after {
  position: absolute;
  content: "";
  pointer-events: none;
}

.products-overview-section .core-line::before {
  z-index: 0;
  inset: 0 0 54%;
  border-bottom: 0;
}

.products-overview-section .core-line::after {
  display: none;
}

.products-overview-section .core-line--powder::before {
  background:
    linear-gradient(180deg, rgba(7, 42, 45, 0.08), rgba(7, 42, 45, 0.58)),
    url("../images/home-products/powder-coating-lines.png") center / cover no-repeat,
    #163f41;
}

.products-overview-section .core-line--sublimation {
  border-radius: 4px 18px 4px 18px;
}

.products-overview-section .core-line--sublimation::before {
  background:
    linear-gradient(180deg, rgba(7, 42, 45, 0.06), rgba(7, 42, 45, 0.58)),
    url("../images/home-products/wood-effect-lines.png") center / cover no-repeat,
    #173f40;
}

.products-overview-section .core-line--portfolio::before {
  background:
    linear-gradient(180deg, rgba(7, 42, 45, 0.06), rgba(7, 42, 45, 0.58)),
    url("../images/home-products/transfer-film-powder.png") center / cover no-repeat,
    #123a3d;
}

.products-overview-section .core-line__media { display: none; }

.products-overview-section .core-line__copy {
  position: relative;
  z-index: 2;
  width: 100%;
}

.products-overview-section .core-line__copy h3 {
  max-width: 100%;
  margin: 0;
  color: #f5faf9;
  font-size: clamp(1.35rem, 1.75vw, 1.8rem);
  line-height: 1.04;
  letter-spacing: -0.035em;
  text-wrap: balance;
}

.products-overview-section .core-line__copy > p.core-line__statement {
  margin-top: 14px;
  color: #87ddd5;
  font-size: clamp(0.88rem, 1vw, 1rem);
  font-weight: 650;
  line-height: 1.32;
}

.products-overview-section .core-line__copy > p:not(.core-line__statement) {
  margin-top: 12px;
  color: #aec5c2;
  font-size: clamp(0.72rem, 0.78vw, 0.82rem);
  line-height: 1.52;
}

.products-overview-section .core-line__copy ul {
  margin: 16px 0 18px;
  border-top-color: rgba(169, 202, 198, 0.2);
}

.products-overview-section .core-line__copy li {
  padding: 8px 0;
  border-bottom-color: rgba(169, 202, 198, 0.2);
  font-size: clamp(0.69rem, 0.75vw, 0.78rem);
  line-height: 1.3;
}

/* Keep the three product families visually aligned after the descriptive copy was simplified. */
.products-overview-section .core-line__copy {
  min-height: 224px;
  display: flex;
  flex-direction: column;
}

.products-overview-section .product-support-list { margin-top: auto; }

.products-overview-section .home-inline-link {
  font-size: 0.76rem;
}

.product-support-list {
  margin: 17px 0 19px;
  border-top: 1px solid rgba(169, 202, 198, 0.2);
}

.product-support-list a {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  padding: 9px 0;
  border-bottom: 1px solid rgba(169, 202, 198, 0.2);
  color: #d8e9e7;
  transition: color 180ms ease, transform 220ms cubic-bezier(0.16, 1, 0.3, 1);
}

.product-support-list a:hover,
.product-support-list a:focus-visible {
  color: #83ddd5;
  transform: translateX(4px);
}

.product-support-list a:focus-visible {
  outline: 2px solid #72d8d2;
  outline-offset: 3px;
}

.product-support-list span {
  color: #72d8d2;
  font-size: 0.64rem;
  font-weight: 800;
  letter-spacing: 0.1em;
}

.product-support-list strong {
  font-size: clamp(0.76rem, 0.9vw, 0.92rem);
  line-height: 1.25;
}

@media (max-width: 1180px) and (min-width: 901px) {
  .products-overview-section .core-line {
    min-height: min(66vh, 570px);
    padding-inline: 18px;
  }

  .products-overview-section .core-line__copy > p:not(.core-line__statement) { display: none; }
  .products-overview-section .core-line__copy h3 { font-size: 1.25rem; }
  .products-overview-section .core-line__copy li { font-size: 0.67rem; }
}

@media (max-width: 900px) {
  .products-overview-section .home-section__intro,
  .products-overview-section .core-lines {
    grid-template-columns: 1fr;
  }

  .products-overview-section .home-section__intro { align-items: start; }

  .products-overview-section .core-line {
    min-height: 590px;
    padding: 250px 26px 32px;
  }

  .products-overview-section .core-line__copy h3 { font-size: clamp(1.7rem, 7vw, 2.35rem); }
  .products-overview-section .core-line__copy > p:not(.core-line__statement) { font-size: 0.88rem; }
  .products-overview-section .core-line__copy li { font-size: 0.82rem; }
}

@media (max-width: 520px) {
  .products-overview-section .core-line {
    min-height: 560px;
    padding: 220px 20px 26px;
  }

}

/* 0.9.12: cinematic hero and a single-screen contact/footer close */
.home-hero {
  background: #073c3b;
}

.home-hero__video {
  position: absolute;
  z-index: 0;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.home-hero::before {
  z-index: 1;
  background:
    linear-gradient(90deg, rgba(2, 24, 26, 0.92) 0%, rgba(3, 37, 39, 0.78) 42%, rgba(3, 39, 41, 0.38) 72%, rgba(3, 31, 33, 0.2) 100%),
    linear-gradient(180deg, rgba(3, 34, 36, 0.18), rgba(2, 24, 26, 0.58)),
    linear-gradient(rgba(255,255,255,0.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.045) 1px, transparent 1px);
  background-size: auto, auto, 84px 84px, 84px 84px;
  opacity: 1;
  transform: none;
}

.home-v3 > .home-hero > .container {
  z-index: 2;
}

.home-hero__grid {
  grid-template-columns: minmax(0, 820px);
  justify-content: start;
  gap: 0;
}

.home-hero__video-toggle {
  position: absolute;
  z-index: 5;
  right: clamp(28px, 4vw, 68px);
  bottom: clamp(26px, 4vh, 48px);
  min-height: 42px;
  padding: 0 18px;
  border: 1px solid rgba(255,255,255,0.5);
  border-radius: 999px;
  color: #ffffff;
  background: rgba(5, 42, 44, 0.48);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.18), 0 12px 32px rgba(0,0,0,0.16);
  backdrop-filter: blur(14px) saturate(125%);
  -webkit-backdrop-filter: blur(14px) saturate(125%);
  font-size: 0.76rem;
  font-weight: 720;
  letter-spacing: 0.04em;
  cursor: pointer;
  transition: background 180ms ease, border-color 180ms ease, transform 180ms ease;
}

.home-hero__video-toggle:hover {
  border-color: rgba(255,255,255,0.84);
  background: rgba(5, 62, 63, 0.7);
  transform: translateY(-2px);
}

.home-hero__video-toggle:focus-visible {
  outline: 3px solid #72d8d2;
  outline-offset: 4px;
}

@media (min-width: 901px) {
  .home-v3 > .home-panel:not(.products-overview-section) > .container {
    width: min(calc(100% - 96px), var(--content));
  }

  .home-contact--integrated {
    min-height: 100dvh;
    display: grid !important;
    grid-template-rows: minmax(0, 1fr) auto;
    align-items: stretch !important;
    padding: 0;
  }
}

.home-contact--integrated .home-contact__inner {
  width: min(calc(100% - 96px), var(--content));
  align-self: center;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: clamp(42px, 6vw, 86px);
  padding-block: clamp(54px, 7vh, 82px) clamp(30px, 4.5vh, 52px);
}

.home-contact--integrated h2 {
  max-width: 760px;
  font-size: clamp(2.15rem, 3.35vw, 3.45rem);
  line-height: 1;
}

.home-contact--integrated p {
  max-width: 700px;
  margin-top: 16px;
  font-size: 0.94rem;
  line-height: 1.55;
}

.home-contact--integrated .home-contact__brief {
  margin-top: 20px;
}

.site-footer--integrated {
  position: relative;
  z-index: 2;
  width: 100%;
  color: #c9dcda;
  border-top: 1px solid rgba(214, 241, 237, 0.18);
  background: rgba(3, 43, 45, 0.48);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.035);
}

.site-footer--integrated .footer-main {
  grid-template-columns: minmax(0, 1.25fr) minmax(160px, 0.62fr) minmax(150px, 0.55fr);
  gap: clamp(34px, 5vw, 72px);
  padding-block: 24px 18px;
}

.site-footer--integrated .brand-logo--footer {
  height: 50px;
}

.site-footer--integrated .footer-brand p {
  max-width: 430px;
  margin: 10px 0 0;
  color: rgba(219, 237, 234, 0.66);
  font-size: 0.78rem;
  line-height: 1.45;
}

.site-footer--integrated .footer-column h2 {
  margin-bottom: 9px;
  color: #eff8f7;
  font-size: 0.68rem;
}

.site-footer--integrated .footer-column li {
  margin: 4px 0;
  font-size: 0.76rem;
}

.site-footer--integrated .footer-bottom {
  padding-block: 12px;
  border-top-color: rgba(214, 241, 237, 0.13);
  color: rgba(219, 237, 234, 0.62);
  font-size: 0.7rem;
}

@media (max-width: 900px) {
  .home-hero__grid {
    grid-template-columns: 1fr;
    min-height: calc(100dvh - 68px);
    padding-block: 82px 108px;
  }

  .home-hero::before {
    background:
      linear-gradient(90deg, rgba(2, 24, 26, 0.88), rgba(3, 37, 39, 0.52)),
      linear-gradient(180deg, rgba(3, 34, 36, 0.12), rgba(2, 24, 26, 0.62));
  }

  .home-hero__video-toggle {
    right: 22px;
    bottom: 24px;
  }

  .home-contact--integrated .home-contact__inner {
    width: min(calc(100% - 40px), var(--content));
    grid-template-columns: 1fr;
    padding-block: 82px 50px;
  }

  .site-footer--integrated .footer-main {
    grid-template-columns: 1fr;
    gap: 24px;
    padding-block: 34px 24px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .home-hero__video { display: none; }
}

/* 0.9.15: forest hero with a contained widescreen film */
.home-hero {
  color: #d7e8e6;
  background:
    linear-gradient(90deg, rgba(3, 31, 33, 0.9) 0%, rgba(3, 42, 42, 0.72) 48%, rgba(3, 50, 49, 0.26) 100%),
    linear-gradient(180deg, rgba(5, 48, 46, 0.08), rgba(2, 31, 31, 0.48)),
    url("../images/ying-group-forest-hero.webp") center center / cover no-repeat,
    #073c3b;
}

.home-hero::before {
  z-index: -1;
  background:
    linear-gradient(rgba(255,255,255,0.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.045) 1px, transparent 1px);
  background-size: 84px 84px;
  opacity: 0.52;
}

.home-v3 > .home-hero > .container {
  width: min(calc(100% - 96px), 1500px);
}

.home-hero__grid {
  min-height: calc(100dvh - 76px);
  grid-template-columns: minmax(0, 1.06fr) minmax(520px, 0.94fr);
  gap: clamp(38px, 4.5vw, 76px);
  padding-block: clamp(70px, 8vh, 104px);
}

.home-hero__content h1 {
  max-width: none;
  font-size: clamp(2.15rem, 2.75vw, 2.9rem);
  line-height: 1;
  letter-spacing: -0.048em;
}

.home-hero__video-panel {
  position: relative;
  overflow: hidden;
  width: 100%;
  aspect-ratio: 16 / 9;
  margin: 0;
  border: 1px solid rgba(220, 244, 240, 0.36);
  border-radius: 4px 34px 4px 4px;
  background: #0a3033;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.17), 28px 34px 78px rgba(2, 25, 26, 0.34);
}

.home-hero__video-panel::after {
  position: absolute;
  z-index: 1;
  inset: 0;
  background: linear-gradient(180deg, transparent 48%, rgba(2, 25, 27, 0.84));
  content: "";
  pointer-events: none;
}

.home-hero__video-panel .home-hero__video {
  position: absolute;
  z-index: 0;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.home-hero__video-panel figcaption {
  position: absolute;
  z-index: 2;
  right: clamp(20px, 3vw, 34px);
  bottom: clamp(20px, 3vw, 32px);
  left: clamp(20px, 3vw, 34px);
  display: grid;
  gap: 4px;
  color: #ffffff;
}

.home-hero__video-panel figcaption span {
  color: #72d8d2;
  font-size: 0.68rem;
  font-weight: 780;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

.home-hero__video-panel figcaption strong {
  max-width: 500px;
  color: #ffffff;
  font-size: clamp(0.92rem, 1.18vw, 1.16rem);
  font-weight: 640;
  line-height: 1.35;
}

.home-hero__video-panel .home-hero__video-toggle {
  top: 20px;
  right: 20px;
  bottom: auto;
}

@media (min-width: 1200px) {
  .home-hero__content h1 {
    white-space: nowrap;
    text-wrap: nowrap;
  }
}

/* Screen seven is the site footer, not a footer appended after the screen. */
@media (min-width: 901px) {
  .home-contact--integrated {
    min-height: 100dvh;
    overflow: hidden;
    grid-template-rows: minmax(0, 1fr) auto;
  }
}

.home-contact--integrated .home-contact__inner {
  align-self: end;
  padding-block: clamp(88px, 11vh, 126px) clamp(34px, 4vh, 50px);
}

.site-footer--integrated {
  border-top: 0;
  background: transparent;
  box-shadow: none;
}

.site-footer--integrated .footer-main {
  padding-block: clamp(24px, 3vh, 34px) 20px;
  border-top: 1px solid rgba(225, 244, 241, 0.22);
}

.site-footer--integrated .footer-bottom {
  border-top-color: rgba(225, 244, 241, 0.16);
}

@media (max-width: 1199px) and (min-width: 901px) {
  .home-hero__grid {
    grid-template-columns: minmax(0, 0.94fr) minmax(430px, 1.06fr);
    gap: 34px;
  }

  .home-hero__content h1 {
    font-size: clamp(1.85rem, 2.7vw, 2.2rem);
  }
}

@media (max-width: 900px) {
  .home-v3 > .home-hero > .container {
    width: min(calc(100% - 40px), var(--content));
  }

  .home-hero__grid {
    min-height: auto;
    grid-template-columns: 1fr;
    gap: 42px;
    padding-block: 82px 68px;
  }

  .home-hero__content h1 {
    font-size: clamp(2.15rem, 9.2vw, 3rem);
    text-wrap: balance;
  }

  .home-hero__video-panel {
    max-width: 760px;
  }

  .home-contact--integrated .home-contact__inner {
    align-self: auto;
  }
}

@media (prefers-reduced-motion: reduce) {
  .home-hero__video-panel .home-hero__video { display: none; }
}

/* 0.9.17: clearer desktop hero hierarchy and a centred closing screen. */
@media (min-width: 1200px) {
  .home-hero__grid {
    grid-template-columns: minmax(0, 0.82fr) minmax(640px, 1.18fr);
    grid-template-rows: auto auto minmax(0, 1fr) auto;
    column-gap: clamp(44px, 4vw, 70px);
    row-gap: 0;
    align-content: center;
    align-items: start;
  }

  .home-hero__content {
    display: contents;
  }

  .home-hero__identity {
    grid-column: 1;
    grid-row: 1;
    margin-bottom: 28px;
  }

  .home-hero__content h1 {
    position: relative;
    z-index: 3;
    grid-column: 1 / -1;
    grid-row: 2;
    width: 100%;
    margin-bottom: 34px;
    font-size: clamp(2.75rem, 3.45vw, 3.65rem);
    white-space: nowrap;
    text-wrap: nowrap;
  }

  .home-hero__lede {
    grid-column: 1;
    grid-row: 3;
    align-self: start;
    margin-top: 0;
    padding-top: 4px;
  }

  .home-actions {
    grid-column: 1;
    grid-row: 4;
    align-self: end;
  }

  .home-hero__video-panel {
    grid-column: 2;
    grid-row: 3 / span 2;
    align-self: center;
    width: 100%;
    max-width: none;
  }
}

.home-contact--integrated .home-contact__inner {
  align-self: center;
  padding-block: clamp(54px, 7vh, 82px) clamp(34px, 4vh, 48px);
}

.site-footer--integrated {
  color: #d6e8e6;
  background: linear-gradient(180deg, #075f61 0%, #06484b 100%);
  border-top: 1px solid rgba(225, 244, 241, 0.2);
}

.site-footer--integrated .footer-main {
  border-top: 0;
}

.site-footer--integrated .footer-brand p,
.site-footer--integrated .footer-column a {
  color: rgba(231, 244, 242, 0.76);
}

.site-footer--integrated .footer-column h2 {
  color: #fff;
}

/* 0.9.18: compact hero composition without the artificial vertical gap. */
@media (min-width: 1200px) {
  .home-hero__grid {
    grid-template-columns: minmax(0, 0.88fr) minmax(580px, 1.12fr);
    grid-template-rows: auto auto auto;
    column-gap: clamp(28px, 2.6vw, 46px);
    align-content: center;
  }

  .home-hero__identity {
    margin-bottom: 20px;
    white-space: nowrap;
  }

	.home-hero__content h1 {
		margin-bottom: 26px;
		font-size: clamp(1.9rem, 2.35vw, 2.55rem);
	}

  .home-hero__copy-stack {
    grid-column: 1;
    grid-row: 3;
    display: grid;
    align-content: start;
    gap: 22px;
  }

  .home-hero__copy-stack .home-hero__lede {
    grid-column: auto;
    grid-row: auto;
    max-width: 590px;
    margin: 0;
    padding-top: 0;
  }

  .home-hero__copy-stack .home-actions {
    width: min(100%, 460px);
    grid-column: auto;
    grid-row: auto;
    align-self: start;
    gap: 18px;
    margin-top: clamp(84px, 10vh, 112px);
    padding-top: 16px;
    border-top: 1px solid rgba(190, 224, 219, 0.28);
  }

  .home-hero__video-panel {
    grid-row: 3;
    align-self: start;
  }
}

/* 0.17.3: taste refinement for the existing hero composition. */
.home-v3 > .home-hero {
  background:
    radial-gradient(ellipse at 73% 52%, rgba(114, 216, 210, 0.13) 0%, rgba(114, 216, 210, 0.035) 30%, transparent 52%),
    radial-gradient(ellipse at 18% 46%, rgba(1, 22, 24, 0.22) 0%, transparent 54%),
    linear-gradient(90deg, rgba(2, 27, 30, 0.93) 0%, rgba(3, 40, 41, 0.78) 48%, rgba(3, 50, 49, 0.28) 100%),
    linear-gradient(180deg, rgba(5, 48, 46, 0.08), rgba(2, 27, 29, 0.52)),
    url("../images/ying-group-forest-hero.webp") center center / cover no-repeat,
    #073c3b;
}

.home-v3 > .home-hero::before {
  background:
    linear-gradient(rgba(236, 248, 245, 0.038) 1px, transparent 1px),
    linear-gradient(90deg, rgba(236, 248, 245, 0.038) 1px, transparent 1px);
  background-size: 84px 84px;
  opacity: 0.54;
}

.home-hero__identity {
  border: 1px solid rgba(210, 239, 235, 0.18);
  border-left: 3px solid #72d8d2;
  color: #edf8f6;
  background:
    linear-gradient(110deg, rgba(231, 247, 244, 0.14), rgba(231, 247, 244, 0.035) 72%, transparent),
    rgba(4, 48, 49, 0.2);
  box-shadow:
    inset 0 1px 0 rgba(238, 249, 247, 0.16),
    0 18px 44px rgba(1, 21, 23, 0.18);
  -webkit-backdrop-filter: blur(12px) saturate(112%);
  backdrop-filter: blur(12px) saturate(112%);
}

.home-hero__content h1 {
  color: #f1f8f6;
  font-weight: 650;
  text-shadow: 0 2px 24px rgba(0, 18, 20, 0.28);
}

.home-hero__lede {
  color: rgba(226, 241, 238, 0.88);
  font-weight: 520;
  letter-spacing: -0.012em;
  text-shadow: 0 2px 18px rgba(0, 18, 20, 0.24);
}

.home-hero__video-panel {
  isolation: isolate;
  border-color: rgba(217, 242, 238, 0.3);
  border-radius: 18px;
  box-shadow:
    inset 0 1px 0 rgba(239, 250, 248, 0.16),
    0 28px 74px rgba(0, 19, 21, 0.38),
    0 0 0 1px rgba(114, 216, 210, 0.045);
  transition: transform 520ms cubic-bezier(0.16, 1, 0.3, 1), border-color 320ms ease, box-shadow 520ms cubic-bezier(0.16, 1, 0.3, 1);
}

.home-hero__video-panel::before {
  position: absolute;
  z-index: 3;
  inset: 10px;
  border: 1px solid rgba(230, 246, 243, 0.16);
  border-radius: 11px;
  box-shadow: inset 0 1px 0 rgba(241, 250, 248, 0.08);
  content: "";
  pointer-events: none;
}

.home-hero__video-panel::after {
  background:
    linear-gradient(180deg, rgba(2, 24, 26, 0.04) 34%, rgba(2, 25, 27, 0.86) 100%),
    linear-gradient(110deg, rgba(5, 49, 50, 0.12), transparent 56%);
}

.home-hero__video-panel .home-hero__video {
  transform: scale(1.002);
  transition: transform 900ms cubic-bezier(0.16, 1, 0.3, 1), filter 420ms ease;
}

.home-hero__video-panel figcaption span {
  color: #79ddd6;
}

.home-hero__video-panel figcaption strong {
  color: #f1f8f6;
  text-shadow: 0 2px 18px rgba(0, 17, 19, 0.42);
}

.home-hero__video-panel .home-hero__video-toggle {
  border-color: rgba(224, 243, 240, 0.28);
  color: #eaf6f4;
  background: rgba(3, 38, 40, 0.62);
  box-shadow: inset 0 1px 0 rgba(238, 249, 247, 0.12), 0 10px 28px rgba(0, 17, 19, 0.2);
  -webkit-backdrop-filter: blur(12px) saturate(112%);
  backdrop-filter: blur(12px) saturate(112%);
}

.home-hero .home-panel__number {
  color: rgba(226, 242, 239, 0.56);
}

.js .home-v3 .home-hero__identity[data-reveal] { --reveal-delay: 40ms; }
.js .home-v3 .home-hero__content h1[data-reveal] { --reveal-delay: 120ms; }
.js .home-v3 .home-hero__lede[data-reveal] { --reveal-delay: 210ms; }
.js .home-v3 .home-hero__video-panel[data-reveal] { --reveal-delay: 150ms; }

@media (hover: hover) and (pointer: fine) {
  .home-hero__video-panel:hover {
    border-color: rgba(126, 221, 214, 0.5);
    box-shadow:
      inset 0 1px 0 rgba(239, 250, 248, 0.2),
      0 34px 86px rgba(0, 18, 20, 0.46),
      0 0 0 1px rgba(114, 216, 210, 0.08);
    transform: translate3d(0, -3px, 0);
  }

  .home-hero__video-panel:hover .home-hero__video {
    transform: scale(1.018);
  }
}

@media (max-width: 900px) {
  .home-hero__identity {
    -webkit-backdrop-filter: blur(9px) saturate(108%);
    backdrop-filter: blur(9px) saturate(108%);
  }

  .home-hero__video-panel {
    border-radius: 14px;
  }

  .home-hero__video-panel::before {
    inset: 7px;
    border-radius: 9px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .home-hero__video-panel,
  .home-hero__video-panel .home-hero__video {
    transform: none;
    transition: none;
  }
}

/* 0.17.4: product family links and a clearer hero support line. */
.products-overview-section .product-support-list {
  margin-top: 16px;
}

.products-overview-section .product-support-list a {
  min-height: 40px;
}

@media (min-width: 1200px) {
  .home-hero__copy-stack .home-hero__lede {
    max-width: none;
    color: rgba(232, 245, 242, 0.92);
    font-size: clamp(1.08rem, 1.24vw, 1.28rem);
    white-space: nowrap;
    text-wrap: nowrap;
  }
}

/* 0.18.0: split innovation from quality evidence and flatten the gallery. */
.engineering-section {
  background:
    radial-gradient(circle at 9% 18%, rgba(114, 216, 210, 0.12), transparent 28%),
    linear-gradient(180deg, #edf6f4 0%, #f7faf9 100%);
}

.engineering-layout--evidence {
  display: block;
}

.engineering-evidence-heading {
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) minmax(280px, 0.88fr);
  gap: clamp(28px, 7vw, 112px);
  align-items: end;
  margin-bottom: clamp(34px, 5vw, 58px);
}

.engineering-evidence-heading .home-eyebrow,
.engineering-evidence-card__kicker {
  margin: 0 0 12px;
  color: var(--home-accent);
  font-size: 0.72rem;
  font-weight: 820;
  letter-spacing: 0.15em;
  text-transform: uppercase;
}

.engineering-evidence-heading h2 {
  max-width: 760px;
  margin: 0;
  color: var(--home-ink);
  font-size: clamp(2rem, 3.6vw, 3.65rem);
  font-weight: 720;
  line-height: 1.02;
  letter-spacing: -0.05em;
  text-wrap: balance;
}

.engineering-evidence-heading > p {
  max-width: 410px;
  margin: 0 0 3px;
  color: var(--home-muted);
  font-size: 1rem;
  line-height: 1.55;
}

.engineering-evidence-grid {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  gap: clamp(18px, 2.4vw, 34px);
  align-items: stretch;
}

.engineering-evidence-card {
  overflow: hidden;
  display: flex;
  min-height: 510px;
  flex-direction: column;
  border: 1px solid rgba(120, 157, 153, 0.5);
  border-radius: 24px 24px 8px 24px;
  background: rgba(255, 255, 255, 0.66);
  box-shadow: 0 22px 54px rgba(24, 74, 72, 0.09), inset 0 1px 0 rgba(255, 255, 255, 0.84);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}

.engineering-evidence-card--quality { border-radius: 24px 24px 24px 8px; }

.engineering-evidence-card__hero {
  min-height: 300px;
  margin: 0;
  padding: 18px;
  background: #f7fbfa;
}

.engineering-evidence-card__hero img {
  width: 100%;
  height: 100%;
  min-height: 264px;
  border-radius: 13px;
  object-fit: contain;
  background: #f0f5f3;
}

.engineering-evidence-card__copy {
  padding: 24px clamp(24px, 3vw, 36px) 30px;
}

.engineering-evidence-card__copy h3 {
  margin: 0;
  color: var(--home-ink);
  font-size: clamp(1.7rem, 2.45vw, 2.5rem);
  font-weight: 730;
  line-height: 1.04;
  letter-spacing: -0.045em;
  white-space: nowrap;
}

.engineering-evidence-card__copy > p:last-of-type {
  max-width: 540px;
  margin: 14px 0 0;
  color: var(--home-muted);
  font-size: 0.98rem;
  line-height: 1.5;
}

.engineering-quality-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  padding: 18px;
  border-bottom: 1px solid rgba(120, 157, 153, 0.36);
  background: rgba(247, 251, 250, 0.76);
}

.engineering-quality-grid figure {
  min-width: 0;
  aspect-ratio: 0.78;
  margin: 0;
  padding: 7px;
  border: 1px solid rgba(129, 161, 157, 0.42);
  border-radius: 10px;
  background: #ffffff;
  box-shadow: 0 8px 18px rgba(24, 74, 72, 0.06);
}

.engineering-quality-grid img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.engineering-standards {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 20px 0 0;
  padding: 0;
  list-style: none;
}

.engineering-standards li {
  padding: 7px 10px;
  border: 1px solid rgba(8, 122, 120, 0.28);
  border-radius: 999px;
  color: var(--home-accent-dark);
  background: rgba(114, 216, 210, 0.11);
  font-size: 0.68rem;
  font-weight: 780;
  letter-spacing: 0.04em;
}

/* Keep the hero message to two intentional lines on wide screens. */
@media (min-width: 1180px) {
  .home-hero__content h1 {
    max-width: 940px;
    font-size: clamp(2.55rem, 3.35vw, 3.55rem);
    line-height: 1.02;
    text-wrap: balance;
  }

  .home-hero__title-line {
    display: block;
    white-space: nowrap;
  }
}

@media (max-width: 900px) {
  .engineering-evidence-heading,
  .engineering-evidence-grid {
    grid-template-columns: 1fr;
  }

  .engineering-evidence-heading > p { max-width: 580px; }
  .engineering-evidence-card__copy h3 { white-space: normal; }
}

@media (max-width: 640px) {
  .engineering-evidence-card { min-height: 0; }
  .engineering-evidence-card__hero { min-height: 220px; }
  .engineering-evidence-card__hero img { min-height: 184px; }
  .engineering-quality-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .engineering-quality-grid figure:nth-child(n+4) { display: none; }
  .engineering-evidence-card__copy h3 { font-size: 1.8rem; }
  .home-hero__title-line { display: inline; white-space: normal; }
}

/* 0.18.1: rebalance the hero and align the evidence chapters. */
.products-overview-section .home-section__intro {
  align-items: center;
}

.engineering-evidence-heading {
  align-items: center;
}

.engineering-innovation-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  min-height: 300px;
  padding: 18px;
  border-bottom: 1px solid rgba(120, 157, 153, 0.36);
  background: rgba(247, 251, 250, 0.76);
}

.engineering-innovation-grid figure {
  overflow: hidden;
  min-width: 0;
  margin: 0;
  padding: 8px;
  border: 1px solid rgba(129, 161, 157, 0.42);
  border-radius: 12px;
  background: #ffffff;
  box-shadow: 0 8px 18px rgba(24, 74, 72, 0.06);
}

.engineering-innovation-grid figure:only-child {
  grid-column: 1 / -1;
}

.engineering-innovation-grid img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

@media (min-width: 1180px) {
  .home-hero__grid {
    grid-template-columns: minmax(0, 0.88fr) minmax(680px, 1.12fr);
    gap: clamp(28px, 3.2vw, 54px);
    align-items: center;
    padding-block: clamp(48px, 6vh, 76px);
  }

  .home-hero__content {
    padding-inline-start: clamp(0px, 1vw, 18px);
    transform: translateY(-8px);
  }

  .home-hero__video-panel {
    width: min(100%, 820px);
    justify-self: end;
    transform: translate3d(12px, 6px, 0);
  }

  .engineering-evidence-heading h2 {
    white-space: nowrap;
  }
}

@media (hover: hover) and (pointer: fine) and (min-width: 1180px) {
  .home-hero__video-panel:hover {
    transform: translate3d(12px, 1px, 0);
  }
}

/* 0.18.2: a larger film window, with a restrained moving reflection. */
.home-hero__video-panel::after {
  z-index: 2;
  top: -26%;
  right: auto;
  bottom: -26%;
  left: -28%;
  width: 27%;
  background: linear-gradient(90deg, transparent, rgba(208, 249, 242, 0.18), transparent);
  opacity: 0;
  transform: translate3d(-88%, 0, 0) skewX(-17deg);
  will-change: transform, opacity;
}

@media (prefers-reduced-motion: no-preference) {
  .home-hero__video-panel::after {
    animation: ying-hero-video-reflection 10s cubic-bezier(0.16, 1, 0.3, 1) infinite;
  }
}

@keyframes ying-hero-video-reflection {
  0%,
  42% {
    opacity: 0;
    transform: translate3d(-88%, 0, 0) skewX(-17deg);
  }
  50% {
    opacity: 0.48;
  }
  68%,
  100% {
    opacity: 0;
    transform: translate3d(470%, 0, 0) skewX(-17deg);
  }
}

@media (max-width: 1179px) {
  .home-hero__video-panel {
    max-width: 860px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .home-hero__video-panel::after {
    animation: none;
    opacity: 0;
  }
}

@media (max-width: 900px) {
  .products-overview-section .home-section__intro {
    align-items: start;
  }
}

@media (max-width: 640px) {
  .engineering-innovation-grid {
    grid-template-columns: 1fr;
    min-height: 0;
  }
}

/* 0.18.3: keep the hero identity in one line while giving the supporting copy a safe text lane. */
@media (min-width: 901px) {
  .home-hero__identity {
    width: max-content;
    max-width: none;
    padding-right: 20px;
    font-size: clamp(0.84rem, 1.02vw, 1.06rem);
    white-space: nowrap;
    text-wrap: nowrap;
  }

  .home-hero__copy-stack {
    position: relative;
    z-index: 4;
    width: min(100%, 510px);
  }

  .home-hero__copy-stack .home-hero__lede {
    max-width: 510px;
    white-space: normal;
    text-wrap: balance;
  }
}

@media (max-width: 900px) {
  .home-hero__lede {
    max-width: 36rem;
    white-space: normal;
    text-wrap: balance;
  }
}

/* 0.18.4: make the proof screen read as a confident capability statement. */
.home-proof__heading {
  display: block;
  max-width: none;
  margin-bottom: clamp(26px, 4vh, 44px);
}

.home-proof__heading .home-eyebrow {
  margin-bottom: 12px;
}

.home-proof__heading h2 {
  max-width: none;
  margin: 0;
  color: var(--home-ink);
  font-size: clamp(2.35rem, 4.6vw, 4.9rem);
  line-height: 0.98;
  letter-spacing: -0.065em;
  text-wrap: nowrap;
}

@media (min-width: 901px) {
  .home-proof {
    padding-block: clamp(48px, 5vh, 72px);
  }

  .home-proof__history img {
    max-height: clamp(150px, 18vh, 220px);
  }
}

.home-proof__history {
  position: relative;
  margin: clamp(22px, 3.2vh, 36px) 0 0;
  overflow: hidden;
  border: 1px solid rgba(126, 164, 159, 0.48);
  border-radius: 18px 5px 18px 5px;
  background: #f5f0e5;
  box-shadow: 0 16px 30px rgba(24, 74, 72, 0.08), inset 0 1px 0 rgba(255, 255, 255, 0.78);
}

.home-proof__history::after {
  position: absolute;
  inset: 0;
  background: linear-gradient(100deg, rgba(255, 255, 255, 0.1), transparent 42%, rgba(114, 216, 210, 0.12));
  pointer-events: none;
  content: "";
}

.home-proof__history img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 230px;
  object-fit: contain;
  transition: transform 700ms cubic-bezier(0.16, 1, 0.3, 1);
}

@media (hover: hover) and (pointer: fine) {
  .home-proof__history:hover img {
    transform: scale(1.012);
  }
}

/* Product families keep equal visual weight, while each destination reads like a tactile link. */
.products-overview-section .home-section__intro {
  display: block;
  max-width: none;
}

.products-overview-section .home-section__intro .home-chapter-title {
  max-width: none;
}

.products-overview-section .product-support-list a {
  grid-template-columns: 30px minmax(0, 1fr) auto;
  min-height: 48px;
  border-radius: 5px;
}

.products-overview-section .product-support-list a i {
  color: #72d8d2;
  font-size: 1.02rem;
  font-style: normal;
  line-height: 1;
  opacity: 0.66;
  transition: transform 220ms cubic-bezier(0.16, 1, 0.3, 1), opacity 180ms ease;
}

.products-overview-section .product-support-list a:hover i,
.products-overview-section .product-support-list a:focus-visible i {
  opacity: 1;
  transform: translate(4px, -3px);
}

.products-overview-section .product-support-list a:active {
  transform: translateX(4px) scale(0.99);
}

@media (prefers-reduced-motion: reduce) {
  .products-overview-section .product-support-list a i,
  .products-overview-section .product-support-list a {
    transition: none;
  }

  .products-overview-section .product-support-list a:hover i,
  .products-overview-section .product-support-list a:focus-visible i {
    transform: none;
  }
}

@media (max-width: 900px) {
  .home-proof__heading h2 {
    white-space: normal;
    text-wrap: balance;
  }

  .home-proof__history img {
    max-height: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .home-proof__history img {
    transition: none;
  }

  .home-proof__history:hover img {
    transform: none;
  }
}

/* Homepage refinement v0.19.0
 * Evidence is split into three chapters: history, innovation / quality and global delivery.
 */

/* Hero: turn the supporting statement into a deliberate benefit line. */
.home-hero__lede {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 0.22rem 0.58rem;
  width: min(100%, 660px);
  margin-top: clamp(1.2rem, 2.1vh, 1.75rem);
  color: rgba(238, 250, 247, 0.8);
  line-height: 1.2;
}

.home-hero__lede strong {
  position: relative;
  color: #ffffff;
  font-size: clamp(1.65rem, 2.25vw, 2.45rem);
  font-weight: 760;
  letter-spacing: -0.045em;
  line-height: 0.98;
  text-shadow: 0 12px 34px rgba(0, 0, 0, 0.24);
}

.home-hero__lede strong::after {
  position: absolute;
  right: 0;
  bottom: -0.22rem;
  left: 0;
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(90deg, #69ddd4, rgba(105, 221, 212, 0));
  content: "";
}

.home-hero__lede span {
  font-size: clamp(1.02rem, 1.15vw, 1.24rem);
  font-weight: 560;
  letter-spacing: -0.018em;
}

/* Screen 03: a light, architectural proof chapter with a maintainable history line. */
.home-proof {
  isolation: isolate;
  overflow: hidden;
  color: #0b3839;
  background:
    radial-gradient(circle at 84% 14%, rgba(109, 207, 197, 0.34), transparent 29%),
    radial-gradient(circle at 12% 90%, rgba(255, 255, 255, 0.76), transparent 34%),
    linear-gradient(135deg, #edf5f3 0%, #dbe9e6 54%, #d1e3df 100%);
}

.home-proof::before {
  position: absolute;
  inset: 0;
  z-index: -1;
  background-image:
    linear-gradient(rgba(13, 91, 88, 0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(13, 91, 88, 0.04) 1px, transparent 1px);
  background-size: 72px 72px;
  mask-image: linear-gradient(to bottom, transparent, #000 22%, #000 80%, transparent);
  content: "";
}

.home-proof > .container {
  position: relative;
  z-index: 1;
}

.home-proof__heading {
  align-items: end;
  margin-bottom: clamp(1.3rem, 3vh, 2.5rem);
}

.home-proof__heading h2 {
  max-width: none;
  color: #0a393a;
  font-size: clamp(2.5rem, 4.6vw, 4.9rem);
  letter-spacing: -0.065em;
  line-height: 0.94;
  white-space: nowrap;
}

.home-proof__grid {
  gap: 1px;
  overflow: hidden;
  margin-bottom: clamp(1.1rem, 2.5vh, 2rem);
  border: 1px solid rgba(11, 74, 72, 0.13);
  border-radius: 22px;
  background: rgba(12, 76, 74, 0.12);
  box-shadow: 0 24px 70px rgba(25, 76, 73, 0.1);
}

.home-proof__grid > div,
.home-proof__grid > div:first-child {
  min-height: 132px;
  border: 0;
  border-radius: 0;
  background: rgba(248, 252, 251, 0.82);
  backdrop-filter: blur(16px);
}

.home-proof__grid > div strong {
  color: #087f7a;
  letter-spacing: -0.06em;
}

.home-history {
  position: relative;
  overflow: hidden;
  padding: clamp(1.25rem, 2vw, 2rem);
  border: 1px solid rgba(10, 79, 75, 0.14);
  border-radius: 26px 8px 26px 8px;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.78), rgba(236, 247, 244, 0.58));
  box-shadow: 0 25px 80px rgba(22, 68, 66, 0.1);
  backdrop-filter: blur(18px);
}

.home-history::after {
  position: absolute;
  top: -90px;
  right: -70px;
  width: 260px;
  height: 260px;
  border: 1px solid rgba(8, 135, 128, 0.14);
  border-radius: 50%;
  content: "";
}

.home-history__track {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: clamp(0.7rem, 1.4vw, 1.4rem);
  margin: 0;
  padding: 0;
  list-style: none;
}

.home-history__track::before {
  position: absolute;
  top: 28px;
  right: 4%;
  left: 4%;
  height: 1px;
  background: linear-gradient(90deg, rgba(7, 132, 125, 0.18), #07847d 45%, rgba(7, 132, 125, 0.18));
  content: "";
}

.home-history__track li {
  position: relative;
  min-width: 0;
  padding-top: 58px;
  transition: transform 360ms cubic-bezier(0.16, 1, 0.3, 1);
}

.home-history__track li::before {
  position: absolute;
  top: 21px;
  left: 0;
  width: 15px;
  height: 15px;
  border: 4px solid rgba(234, 246, 243, 0.98);
  border-radius: 50%;
  background: #07847d;
  box-shadow: 0 0 0 1px rgba(7, 132, 125, 0.38), 0 8px 18px rgba(7, 132, 125, 0.25);
  content: "";
  transition: transform 300ms cubic-bezier(0.16, 1, 0.3, 1), background-color 220ms ease;
}

.home-history__track time {
  display: block;
  margin-bottom: 0.65rem;
  color: #07847d;
  font-size: 0.76rem;
  font-weight: 780;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.home-history__track strong {
  display: block;
  min-height: 2.4em;
  margin-bottom: 0.4rem;
  color: #0a393a;
  font-size: clamp(0.96rem, 1.05vw, 1.12rem);
  line-height: 1.18;
}

.home-history__track span {
  display: block;
  color: #587473;
  font-size: clamp(0.78rem, 0.83vw, 0.9rem);
  line-height: 1.48;
}

@media (hover: hover) and (pointer: fine) {
  .home-history__track li:hover {
    transform: translateY(-5px);
  }

  .home-history__track li:hover::before {
    transform: scale(1.35);
    background: #49c7be;
  }
}

html.js .home-history[data-reveal]:not(.is-visible) .home-history__track li {
  opacity: 0;
  transform: translateY(18px);
}

html.js .home-history.is-visible .home-history__track li {
  opacity: 1;
  transform: none;
  transition: opacity 520ms ease, transform 600ms cubic-bezier(0.16, 1, 0.3, 1);
}

html.js .home-history.is-visible .home-history__track li:nth-child(2) { transition-delay: 70ms; }
html.js .home-history.is-visible .home-history__track li:nth-child(3) { transition-delay: 140ms; }
html.js .home-history.is-visible .home-history__track li:nth-child(4) { transition-delay: 210ms; }
html.js .home-history.is-visible .home-history__track li:nth-child(5) { transition-delay: 280ms; }
html.js .home-history.is-visible .home-history__track li:nth-child(6) { transition-delay: 350ms; }

/* Screen 04: product names behave like clear Apple-style destination controls. */
.products-overview-section .product-support-list {
  display: grid;
  gap: 0.52rem;
  margin-top: 1rem;
}

.products-overview-section .product-support-list a {
  position: relative;
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) 34px;
  gap: 0.7rem;
  align-items: center;
  min-height: 58px;
  padding: 0.62rem 0.68rem;
  border: 1px solid rgba(205, 240, 235, 0.15);
  border-radius: 13px;
  color: #eefaf8;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.075), rgba(255, 255, 255, 0.025));
  box-shadow: inset 0 1px rgba(255, 255, 255, 0.06);
  transition:
    color 220ms ease,
    background-color 220ms ease,
    border-color 220ms ease,
    box-shadow 320ms cubic-bezier(0.16, 1, 0.3, 1),
    transform 320ms cubic-bezier(0.16, 1, 0.3, 1);
}

.products-overview-section .product-support-list a span {
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border: 1px solid rgba(112, 220, 210, 0.28);
  border-radius: 9px;
  color: #7ce0d7;
  background: rgba(5, 55, 55, 0.28);
  font-size: 0.66rem;
  font-weight: 780;
  letter-spacing: 0.08em;
}

.products-overview-section .product-support-list a strong {
  color: inherit;
  font-size: clamp(0.83rem, 0.9vw, 0.98rem);
  line-height: 1.25;
}

.products-overview-section .product-support-list a i {
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  color: #073b3a;
  background: #dff9f5;
  opacity: 1;
  box-shadow: 0 8px 24px rgba(1, 24, 24, 0.18);
}

@media (hover: hover) and (pointer: fine) {
  .products-overview-section .product-support-list a:hover {
    color: #073b3a;
    border-color: rgba(225, 250, 246, 0.92);
    background: #effaf8;
    box-shadow: 0 18px 38px rgba(0, 25, 25, 0.24);
    transform: translateY(-3px);
  }

  .products-overview-section .product-support-list a:hover span {
    color: #067d77;
    border-color: rgba(6, 125, 119, 0.2);
    background: rgba(6, 125, 119, 0.08);
  }

  .products-overview-section .product-support-list a:hover i {
    color: #ffffff;
    background: #07847d;
    transform: translateX(3px);
  }
}

.products-overview-section .product-support-list a:focus-visible {
  outline: 3px solid rgba(113, 224, 214, 0.52);
  outline-offset: 3px;
}

/* Screen 05: innovation and quality are separate concepts, not a mixed carousel. */
.engineering-section {
  isolation: isolate;
  overflow: hidden;
  color: #0a393a;
  background:
    radial-gradient(circle at 50% 0%, rgba(111, 213, 202, 0.3), transparent 30%),
    linear-gradient(145deg, #eff7f5 0%, #e1eeeb 48%, #d8e8e5 100%);
}

.engineering-section::before {
  position: absolute;
  inset: 0;
  z-index: -1;
  background:
    linear-gradient(115deg, transparent 0 46%, rgba(6, 126, 120, 0.055) 46% 46.1%, transparent 46.1%),
    linear-gradient(65deg, transparent 0 64%, rgba(6, 126, 120, 0.045) 64% 64.1%, transparent 64.1%);
  content: "";
}

.engineering-evidence-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(1.4rem, 3vw, 3.2rem);
  align-items: stretch;
  width: min(100%, 1280px);
  margin-inline: auto;
}

.engineering-evidence-chapter {
  display: grid;
  grid-template-rows: auto 1fr;
  gap: 1.2rem;
  min-width: 0;
}

.engineering-evidence-chapter__heading {
  min-height: 126px;
  padding-left: 1rem;
  border-left: 3px solid #07847d;
}

.engineering-evidence-chapter__heading .home-eyebrow {
  margin-bottom: 0.55rem;
  color: #07847d;
}

.engineering-evidence-chapter__heading h2 {
  margin: 0;
  color: #0a393a;
  font-size: clamp(2rem, 3vw, 3.25rem);
  letter-spacing: -0.055em;
  line-height: 0.98;
  white-space: nowrap;
}

.engineering-evidence-chapter__heading p {
  max-width: 42rem;
  margin: 0.65rem 0 0;
  color: #5a7473;
  font-size: clamp(0.88rem, 0.94vw, 1.02rem);
  line-height: 1.55;
}

.engineering-evidence-card {
  overflow: hidden;
  min-height: 0;
  border: 1px solid rgba(8, 92, 88, 0.15);
  border-radius: 26px 8px 26px 8px;
  background: rgba(250, 253, 252, 0.78);
  box-shadow: 0 28px 90px rgba(28, 75, 72, 0.11);
  backdrop-filter: blur(18px);
  transition: transform 400ms cubic-bezier(0.16, 1, 0.3, 1), box-shadow 400ms cubic-bezier(0.16, 1, 0.3, 1);
}

.engineering-innovation-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.9rem;
  height: 100%;
  min-height: 430px;
  padding: 1.1rem;
}

.engineering-innovation-grid figure {
  overflow: hidden;
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 14px;
  background: #f6f1e7;
}

.engineering-innovation-grid img {
  width: 100%;
  height: 100%;
  min-height: 390px;
  object-fit: contain;
  border: 1px solid rgba(9, 70, 67, 0.12);
  border-radius: 14px;
  background: #f6f1e7;
}

.engineering-quality-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.78rem;
  padding: 1.1rem 1.1rem 0;
}

.engineering-quality-grid figure {
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 13px;
  background: #ffffff;
}

.engineering-quality-grid img {
  width: 100%;
  height: 226px;
  object-fit: contain;
  border: 1px solid rgba(9, 70, 67, 0.12);
  border-radius: 13px;
  background: #ffffff;
}

.engineering-standards {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 0.95rem;
}

.engineering-standards li {
  padding: 0.4rem 0.72rem;
  border: 1px solid rgba(7, 132, 125, 0.25);
  border-radius: 999px;
  color: #076f6a;
  background: rgba(7, 132, 125, 0.055);
  font-size: 0.72rem;
  font-weight: 740;
  letter-spacing: 0.03em;
}

@media (hover: hover) and (pointer: fine) {
  .engineering-evidence-card:hover {
    box-shadow: 0 38px 105px rgba(28, 75, 72, 0.16);
    transform: translateY(-6px);
  }
}

/* Screen 06: international delivery, service and the compact closing footer. */
.projects-section {
  isolation: isolate;
  overflow: hidden;
  padding-bottom: 0;
  color: #effaf8;
  background:
    radial-gradient(circle at 82% 12%, rgba(57, 174, 162, 0.3), transparent 28%),
    radial-gradient(circle at 5% 88%, rgba(40, 119, 116, 0.18), transparent 30%),
    linear-gradient(145deg, #062f30 0%, #083d3d 52%, #052728 100%);
}

.projects-section::before {
  position: absolute;
  inset: 0;
  z-index: -1;
  background-image:
    linear-gradient(rgba(159, 224, 216, 0.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(159, 224, 216, 0.045) 1px, transparent 1px);
  background-size: 88px 88px;
  mask-image: radial-gradient(circle at center, #000, transparent 78%);
  content: "";
}

.projects-section > .container {
  position: relative;
  z-index: 1;
  padding-bottom: clamp(2.8rem, 5vw, 5rem);
}

.projects-section .projects-heading {
  align-items: end;
  color: #effaf8;
}

.projects-section .projects-heading h2 {
  max-width: none;
  color: #ffffff;
  font-size: clamp(2.6rem, 4.6vw, 5rem);
  letter-spacing: -0.065em;
  line-height: 0.94;
}

.projects-section .projects-heading p {
  max-width: 46rem;
  color: rgba(223, 244, 240, 0.75);
  font-size: clamp(0.98rem, 1.05vw, 1.12rem);
  line-height: 1.65;
}

.projects-section .home-eyebrow {
  color: #79ddd4;
}

.projects-section .project-carousel {
  border-color: rgba(174, 230, 223, 0.15);
  background: rgba(2, 29, 30, 0.36);
  box-shadow: 0 34px 100px rgba(0, 13, 14, 0.32);
  backdrop-filter: blur(16px);
}

.site-footer--projects {
  position: relative;
  z-index: 2;
  margin-top: 0;
  border-top: 1px solid rgba(176, 232, 225, 0.14);
  color: rgba(226, 245, 241, 0.78);
  background: rgba(1, 26, 27, 0.74);
  backdrop-filter: blur(20px);
}

.site-footer--projects .footer-main {
  grid-template-columns: minmax(260px, 1.25fr) minmax(260px, 0.75fr);
  gap: clamp(2rem, 7vw, 7rem);
  padding-block: clamp(2rem, 4vw, 3.4rem);
}

.site-footer--projects .footer-column ul {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.45rem 1.4rem;
}

.site-footer--projects .footer-column li {
  margin: 0;
}

.site-footer--projects .footer-column a,
.site-footer--projects .footer-description {
  color: rgba(226, 245, 241, 0.72);
}

.site-footer--projects .footer-column a:hover,
.site-footer--projects .footer-column a:focus-visible {
  color: #ffffff;
}

.site-footer--projects .footer-bottom {
  border-color: rgba(176, 232, 225, 0.12);
}

@media (max-width: 1120px) {
  .home-proof__heading h2,
  .engineering-evidence-chapter__heading h2 {
    white-space: normal;
    text-wrap: balance;
  }

  .home-history__track {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    row-gap: 1.3rem;
  }

  .home-history__track::before {
    display: none;
  }

  .home-history__track li {
    padding: 1rem 0 0 1.25rem;
    border-top: 1px solid rgba(7, 132, 125, 0.2);
  }

  .home-history__track li::before {
    top: -8px;
    left: 0;
  }

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

@media (max-width: 800px) {
  .home-hero__lede {
    display: block;
  }

  .home-hero__lede strong,
  .home-hero__lede span {
    display: block;
  }

  .home-hero__lede span {
    margin-top: 0.62rem;
  }

  .home-proof__grid,
  .home-history__track,
  .engineering-evidence-grid {
    grid-template-columns: 1fr;
  }

  .home-history__track strong {
    min-height: 0;
  }

  .engineering-evidence-chapter__heading {
    min-height: 0;
  }

  .engineering-innovation-grid,
  .engineering-quality-grid {
    grid-template-columns: 1fr;
  }

  .engineering-innovation-grid img {
    min-height: 0;
  }

  .engineering-quality-grid img {
    height: auto;
    max-height: 330px;
  }

  .site-footer--projects .footer-main,
  .site-footer--projects .footer-column ul {
    grid-template-columns: 1fr;
  }
}

@media (prefers-reduced-motion: reduce) {
  .home-history__track li,
  .home-history__track li::before,
  .engineering-evidence-card,
  .products-overview-section .product-support-list a,
  .products-overview-section .product-support-list a i {
    transition: none;
  }
}

/* Homepage closing refinements v0.20.1. Keep the hero promise legible and the footer below the final chapter. */
@media (min-width: 1101px) {
  .home-hero__copy-stack {
    width: max-content;
    max-width: none;
  }

  .home-hero__lede {
    display: grid;
    width: max-content;
    max-width: none;
    gap: 0.5rem;
  }

  .home-hero__lede strong,
  .home-hero__lede span {
    display: block;
  }

  .home-hero__lede span {
    white-space: nowrap;
  }
}

.engineering-evidence-chapter {
  grid-template-rows: auto 1fr;
  gap: clamp(0.85rem, 1.6vh, 1.2rem);
}

.engineering-evidence-chapter__heading {
  min-height: 0;
  padding-left: 0;
  border-left: 0;
}

.engineering-evidence-chapter__heading h2 {
  font-size: clamp(2rem, 2.7vw, 3rem);
}

.engineering-innovation-grid,
.engineering-quality-grid {
  grid-template-columns: repeat(auto-fit, minmax(145px, 1fr));
}

.engineering-innovation-grid {
  min-height: 0;
}

.engineering-innovation-grid img {
  min-height: 0;
  aspect-ratio: 4 / 5;
}

.engineering-quality-grid {
  padding-bottom: 1.1rem;
}

.projects-section {
  display: flex !important;
  flex-direction: column;
  min-height: 100dvh;
}

.projects-section > .container {
  width: min(100% - 40px, 1440px);
  flex: 1 0 auto;
  margin-inline: auto;
}

.projects-section .projects-heading {
  grid-template-columns: 1fr;
}

.projects-section .projects-heading h2 {
  font-size: clamp(2.7rem, 4.5vw, 4.8rem);
  white-space: nowrap;
}

.site-footer--projects {
  width: 100%;
  flex: 0 0 auto;
}

@media (max-width: 1100px) {
  .projects-section .projects-heading h2 {
    white-space: normal;
  }
}

/* Product chapter alignment: every family title shares one first-line baseline. */
@media (min-width: 901px) {
  .products-overview-section .core-line__copy {
    display: grid;
    grid-template-rows: 5.5rem 11.8rem;
    align-content: end;
    min-height: 244px;
  }

  .products-overview-section .core-line__copy h3 {
    min-height: 5.5rem;
    display: flex;
    align-items: flex-start;
    margin: 0;
    padding-bottom: 0;
  }

  .products-overview-section .product-support-list {
    align-self: start;
    width: 100%;
    margin-top: 0;
  }

  .products-overview-section .core-line--portfolio .core-line__copy {
    transform: none;
  }
}

/* Homepage content updates from the supplied company and proof references. */
.company-highlights {
  max-width: 760px;
  gap: 12px;
}

.home-proof__metric {
  display: block;
  max-width: none;
  color: #087f7a;
  white-space: nowrap;
}

.home-proof__metric > .home-proof__metric-value {
  max-width: none;
  color: inherit;
  font-size: clamp(1.55rem, 2.2vw, 2.75rem);
  font-weight: 670;
  line-height: 1;
  letter-spacing: -0.055em;
  white-space: nowrap;
}

.home-proof__metric-description {
  display: flex;
  align-items: baseline;
  flex-wrap: nowrap;
  gap: 0.28rem 0.5rem;
  max-width: none;
  min-height: clamp(1.35rem, 1.8vw, 1.6rem);
  margin-top: 0.24rem;
  white-space: nowrap;
}

.home-proof__metric-description > .home-proof__metric-unit {
  position: relative;
  display: inline-block;
  max-width: none;
  padding-bottom: 0.12rem;
  color: #056f6b;
  font-size: clamp(1.12rem, 1.4vw, 1.5rem);
  font-weight: 820;
  line-height: 1;
  letter-spacing: -0.035em;
  white-space: nowrap;
}

.home-proof__metric-description > .home-proof__metric-unit::after {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 2px;
  border-radius: 999px;
  background: #72d8d2;
  content: "";
}

.products-overview-section .home-section__intro .home-chapter-title {
  font-size: clamp(1.95rem, 2.7vw, 2.85rem);
}

.home-proof__grid {
  grid-template-columns:
    minmax(0, 1.08fr)
    minmax(0, 1.32fr)
    minmax(0, 1.18fr)
    minmax(0, 0.84fr);
}

.home-proof__grid > div,
.home-proof__grid > div:first-child {
  min-height: 132px;
  display: grid;
  grid-template-rows: auto auto;
  align-content: space-between;
  padding: clamp(1.05rem, 1.7vw, 1.5rem);
}

.home-proof__metric-description > .home-proof__metric-label {
  max-width: none;
  color: var(--home-muted);
  font-size: clamp(0.78rem, 0.88vw, 0.92rem);
  font-weight: 620;
  line-height: 1.08;
  white-space: nowrap;
}

/* The timeline now uses one hierarchy: date, then the supporting fact. */
.home-history__track time {
  margin-bottom: 0.55rem;
}

.home-history__track span {
  max-width: 18ch;
  color: #345d5b;
  font-size: clamp(0.88rem, 0.92vw, 1rem);
  font-weight: 640;
  line-height: 1.42;
}

/* Screens 05 and 06: one evidence chapter per screen, sequenced vertically. */
.engineering-section--innovation {
  background:
    radial-gradient(circle at 14% 12%, rgba(111, 213, 202, 0.24), transparent 30%),
    linear-gradient(145deg, #eff7f5 0%, #e2efec 58%, #d8e8e5 100%);
}

.engineering-section--quality {
  background:
    radial-gradient(circle at 84% 18%, rgba(111, 213, 202, 0.22), transparent 30%),
    linear-gradient(145deg, #e7f1ef 0%, #f5faf8 54%, #dceae7 100%);
}

.engineering-layout--single {
  display: block;
  width: min(100% - 40px, 1440px);
  margin-inline: auto;
}

.engineering-evidence-grid--single {
  grid-template-columns: minmax(0, 1fr);
  width: min(100%, 1180px);
}

.engineering-evidence-grid--single .engineering-evidence-chapter {
  gap: clamp(0.9rem, 1.8vh, 1.35rem);
}

.engineering-evidence-grid--single .engineering-evidence-chapter__heading h2 {
  font-size: clamp(2.4rem, 4.3vw, 4.5rem);
  white-space: nowrap;
}

.engineering-evidence-grid--single .engineering-evidence-card {
  min-height: 0;
}

.engineering-evidence-grid--single .engineering-innovation-grid {
  min-height: 0;
  height: clamp(360px, 52vh, 540px);
  padding: clamp(0.85rem, 1.5vw, 1.2rem);
}

.engineering-evidence-grid--single .engineering-innovation-grid img {
  height: 100%;
  min-height: 0;
  aspect-ratio: auto;
}

.engineering-evidence-grid--single .engineering-quality-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: clamp(0.65rem, 1vw, 0.95rem);
  padding: clamp(0.85rem, 1.5vw, 1.2rem);
}

.engineering-evidence-grid--single .engineering-quality-grid figure {
  display: block;
  aspect-ratio: 0.76;
}

.engineering-evidence-grid--single .engineering-quality-grid img {
  width: 100%;
  height: 100%;
}

@media (max-width: 1100px) {
  .home-proof__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .home-proof__metric > .home-proof__metric-value {
    font-size: clamp(1.75rem, 4.2vw, 2.6rem);
  }

  .home-proof__metric-description > .home-proof__metric-unit {
    font-size: clamp(1.12rem, 2.4vw, 1.5rem);
  }

  .engineering-evidence-grid--single .engineering-quality-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 700px) {
  .home-proof__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .home-proof__metric > .home-proof__metric-value {
    font-size: clamp(2rem, 10vw, 2.75rem);
  }

  .home-proof__metric-description > .home-proof__metric-unit {
    font-size: clamp(1.2rem, 5.5vw, 1.6rem);
  }

  .home-proof__metric-description,
  .home-proof__metric-description > .home-proof__metric-label {
    white-space: nowrap;
  }

  .home-history__track span {
    max-width: 34ch;
  }

  .engineering-evidence-grid--single .engineering-evidence-chapter__heading h2 {
    font-size: clamp(2.1rem, 10vw, 3.2rem);
    white-space: normal;
    text-wrap: balance;
  }

  .engineering-evidence-grid--single .engineering-innovation-grid,
  .engineering-evidence-grid--single .engineering-quality-grid {
    grid-template-columns: minmax(0, 1fr);
    height: auto;
  }

  .engineering-evidence-grid--single .engineering-innovation-grid img,
  .engineering-evidence-grid--single .engineering-quality-grid img {
    height: auto;
    max-height: none;
  }

  .engineering-evidence-grid--single .engineering-quality-grid figure:nth-child(n+4) {
    display: block;
  }
}

/* Homepage v0.29: product-first narrative, international photo wall and certificate viewer. */
.quality-document-button {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  padding: 0;
  overflow: hidden;
  border: 0;
  color: #fff;
  background: #e7eeec;
  cursor: zoom-in;
}

.quality-document-button img {
  transition: transform 360ms cubic-bezier(0.16, 1, 0.3, 1), filter 260ms ease;
}

.quality-document-button > span {
  position: absolute;
  right: 0.65rem;
  bottom: 0.65rem;
  display: flex;
  align-items: center;
  gap: 0.45rem;
  padding: 0.52rem 0.68rem;
  opacity: 0;
  transform: translateY(6px);
  border: 1px solid rgba(255, 255, 255, 0.34);
  border-radius: 3px;
  background: rgba(3, 42, 43, 0.78);
  box-shadow: 0 12px 30px rgba(3, 35, 36, 0.22);
  font-size: 0.69rem;
  font-weight: 760;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  backdrop-filter: blur(12px);
  transition: opacity 220ms ease, transform 220ms ease;
}

.quality-document-button:hover img,
.quality-document-button:focus-visible img {
  transform: scale(1.025);
  filter: saturate(1.02) contrast(1.02);
}

.quality-document-button:hover > span,
.quality-document-button:focus-visible > span {
  opacity: 1;
  transform: translateY(0);
}

.quality-document-button:focus-visible {
  outline: 3px solid #0d8b87;
  outline-offset: 4px;
}

.quality-lightbox[hidden] {
  display: none;
}

.quality-lightbox {
  position: fixed;
  z-index: 80;
  inset: 0;
  display: grid;
  place-items: center;
  padding: clamp(1rem, 3vw, 2.5rem);
}

.quality-lightbox__backdrop {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
  background: rgba(3, 22, 23, 0.88);
  cursor: zoom-out;
  backdrop-filter: blur(18px);
}

.quality-lightbox__panel {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 0.32fr);
  width: min(94vw, 1180px);
  max-height: 90dvh;
  overflow: hidden;
  border: 1px solid rgba(198, 231, 226, 0.3);
  border-radius: 6px 26px 6px 6px;
  background: #f6faf8;
  box-shadow: 0 48px 140px rgba(0, 10, 11, 0.58);
}

.quality-lightbox__media {
  display: grid;
  min-height: min(76dvh, 780px);
  place-items: center;
  padding: clamp(1rem, 2.5vw, 2.2rem);
  overflow: auto;
  background: #e8efed;
}

.quality-lightbox__media img {
  display: block;
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 78dvh;
  object-fit: contain;
  box-shadow: 0 18px 52px rgba(22, 56, 55, 0.16);
}

.quality-lightbox__caption {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: clamp(1.5rem, 3vw, 2.5rem);
}

.quality-lightbox__caption h2 {
  margin: 0;
  color: #123f40;
  font-size: clamp(1.35rem, 2vw, 2rem);
  letter-spacing: -0.035em;
  line-height: 1.08;
  text-wrap: pretty;
}

.quality-lightbox__caption p {
  margin: 1rem 0 0;
  color: #5c7573;
  font-size: 0.88rem;
  line-height: 1.55;
}

.quality-lightbox__close {
  position: absolute;
  z-index: 2;
  top: 0.85rem;
  right: 0.85rem;
  display: grid;
  width: 2.7rem;
  height: 2.7rem;
  place-items: center;
  border: 1px solid rgba(23, 67, 67, 0.18);
  border-radius: 50%;
  color: #123f40;
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0 10px 28px rgba(3, 35, 36, 0.12);
  font-size: 1.55rem;
  line-height: 1;
  cursor: pointer;
  transition: transform 180ms ease, background 180ms ease;
}

.quality-lightbox__close:hover {
  background: #fff;
  transform: rotate(5deg) scale(1.04);
}

.quality-lightbox__close:focus-visible {
  outline: 3px solid #0d8b87;
  outline-offset: 3px;
}

body.quality-lightbox-open {
  overflow: hidden;
}

.international-market-wall {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  grid-template-rows: repeat(2, minmax(175px, 1fr));
  gap: clamp(0.65rem, 1vw, 1rem);
  min-height: clamp(390px, 50vh, 560px);
}

.international-market-wall__item {
  position: relative;
  min-width: 0;
  min-height: 0;
  margin: 0;
  overflow: hidden;
  border: 1px solid rgba(176, 232, 225, 0.14);
  background: #0a3334;
}

.international-market-wall__item--1 { grid-area: 1 / 1 / 3 / 6; }
.international-market-wall__item--2 { grid-area: 1 / 6 / 2 / 10; }
.international-market-wall__item--3 { grid-area: 1 / 10 / 2 / 13; }
.international-market-wall__item--4 { grid-area: 2 / 6 / 3 / 9; }
.international-market-wall__item--5 { grid-area: 2 / 9 / 3 / 13; }

.international-market-wall__item img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(0.88) contrast(1.03);
  transition: transform 620ms cubic-bezier(0.16, 1, 0.3, 1), filter 320ms ease;
}

.international-market-wall__item::after {
  position: absolute;
  inset: 35% 0 0;
  content: "";
  background: linear-gradient(transparent, rgba(1, 22, 23, 0.9));
  pointer-events: none;
}

.international-market-wall__item figcaption {
  position: absolute;
  z-index: 1;
  right: 0;
  bottom: 0;
  left: 0;
  display: grid;
  gap: 0.3rem;
  padding: clamp(0.9rem, 1.6vw, 1.45rem);
  color: #f1faf8;
}

.international-market-wall__item figcaption span {
  color: #79ddd4;
  font-size: 0.62rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.international-market-wall__item figcaption strong {
  max-width: 28ch;
  font-size: clamp(0.88rem, 1.1vw, 1.08rem);
  letter-spacing: -0.02em;
  line-height: 1.2;
  text-wrap: pretty;
}

.international-market-wall__item:hover img {
  transform: scale(1.035);
  filter: saturate(1.03) contrast(1.04);
}

@media (max-width: 900px) {
  .quality-lightbox__panel {
    grid-template-columns: 1fr;
    overflow: auto;
  }

  .quality-lightbox__media {
    min-height: 58dvh;
  }

  .quality-lightbox__caption {
    padding-top: 1.2rem;
  }

  .international-market-wall {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: repeat(3, minmax(210px, auto));
  }

  .international-market-wall__item--1 { grid-area: 1 / 1 / 3 / 2; }
  .international-market-wall__item--2 { grid-area: 1 / 2 / 2 / 3; }
  .international-market-wall__item--3 { grid-area: 2 / 2 / 3 / 3; }
  .international-market-wall__item--4 { grid-area: 3 / 1 / 4 / 2; }
  .international-market-wall__item--5 { grid-area: 3 / 2 / 4 / 3; }
}

@media (max-width: 560px) {
  .quality-document-button > span {
    opacity: 1;
    transform: none;
  }

  .quality-lightbox {
    padding: 0.65rem;
  }

  .quality-lightbox__media {
    min-height: 55dvh;
    padding: 0.75rem;
  }

  .international-market-wall {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: none;
    min-height: 0;
  }

  .international-market-wall__item,
  .international-market-wall__item--1,
  .international-market-wall__item--2,
  .international-market-wall__item--3,
  .international-market-wall__item--4,
  .international-market-wall__item--5 {
    grid-area: auto;
    min-height: 235px;
  }
}

/* Homepage v0.30: full-viewport hero, image-only certificate viewer and scalable market wall. */
.home-v3 > .home-hero {
  scroll-margin-top: 0;
}

@media (min-width: 901px) {
  .home-v3 > .home-hero {
    display: block;
    width: 100%;
    height: 100dvh;
    min-height: 100dvh;
    padding: 0;
    overflow: hidden;
  }

  .home-v3 > .home-hero > .container {
    width: min(calc(100% - 96px), 1500px);
    height: 100%;
  }

  .home-hero__grid {
    min-height: 0;
    height: 100%;
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: minmax(240px, 0.43fr) minmax(0, 0.57fr);
    gap: clamp(18px, 2.5vh, 30px);
    align-content: stretch;
    align-items: stretch;
    padding: clamp(112px, 13vh, 146px) 0 clamp(26px, 3vh, 40px);
  }

  .home-hero__content {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: auto auto auto;
    gap: clamp(10px, 1.45vh, 18px);
    align-content: end;
    min-width: 0;
    padding: 0;
    transform: none;
  }

  .home-hero__identity {
    grid-column: 1;
    grid-row: 1;
    align-self: start;
    width: max-content;
    max-width: 100%;
    margin: 0;
  }

  .home-hero__content h1 {
    position: relative;
    z-index: 3;
    grid-column: 1;
    grid-row: 2;
    width: 100%;
    max-width: none;
    margin: 0;
    font-size: clamp(2.35rem, 3.55vw, 4.15rem);
    line-height: 0.98;
    white-space: normal;
    text-wrap: initial;
  }

  .home-hero__title-line {
    display: block;
    white-space: nowrap;
  }

  .home-hero__copy-stack {
    position: relative;
    z-index: 4;
    grid-column: 1;
    grid-row: 3;
    width: max-content;
    max-width: 100%;
    align-self: end;
  }

  .home-hero__copy-stack .home-hero__lede {
    width: max-content;
    max-width: 100%;
    margin: 0;
    padding: 0;
  }

  .home-hero__video-panel {
    grid-column: 1;
    grid-row: 2;
    align-self: stretch;
    justify-self: stretch;
    width: 100%;
    max-width: none;
    height: 100%;
    min-height: 0;
    aspect-ratio: auto;
    margin: 0;
    border-radius: 4px 30px 4px 4px;
    transform: none;
  }
}

@media (min-width: 1180px) {
  .home-hero__content {
    grid-template-columns: minmax(0, 1.45fr) minmax(290px, 0.55fr);
    grid-template-rows: auto minmax(0, 1fr);
    column-gap: clamp(36px, 5vw, 82px);
  }

  .home-hero__identity {
    grid-column: 1 / -1;
    grid-row: 1;
  }

  .home-hero__content h1 {
    grid-column: 1;
    grid-row: 2;
    align-self: end;
  }

  .home-hero__copy-stack {
    grid-column: 2;
    grid-row: 2;
    justify-self: end;
  }
}

@media (hover: hover) and (pointer: fine) and (min-width: 901px) {
  .home-v3 .home-hero__video-panel:hover {
    transform: translate3d(0, -2px, 0);
  }
}

@media (max-width: 900px) {
  .home-v3 > .home-hero {
    min-height: 100svh;
  }

  .home-hero__grid {
    min-height: 100svh;
    gap: clamp(24px, 5vw, 42px);
    padding-block: 104px 38px;
  }

  .home-hero__video-panel {
    width: 100%;
    max-width: none;
    min-height: clamp(270px, 48svh, 470px);
    aspect-ratio: auto;
  }
}

.quality-lightbox__panel {
  display: block;
  width: min(94vw, 1240px);
  max-height: 92dvh;
  border-radius: 4px 24px 4px 4px;
}

.quality-lightbox__media {
  min-height: min(86dvh, 880px);
  padding: clamp(0.75rem, 2vw, 1.6rem);
}

.quality-lightbox__media img {
  max-height: 86dvh;
}

.international-market-wall {
  display: block;
  columns: 280px 4;
  column-gap: clamp(0.7rem, 1vw, 1rem);
  min-height: 0;
}

.international-market-wall__item,
.international-market-wall__item--1,
.international-market-wall__item--2,
.international-market-wall__item--3,
.international-market-wall__item--4,
.international-market-wall__item--5 {
  display: inline-block;
  width: 100%;
  min-height: 0;
  margin: 0 0 clamp(0.7rem, 1vw, 1rem);
  break-inside: avoid;
  grid-area: auto;
  aspect-ratio: 4 / 3;
}

.international-market-wall__item:nth-child(6n + 1) { aspect-ratio: 3 / 4; }
.international-market-wall__item:nth-child(6n + 2) { aspect-ratio: 4 / 3; }
.international-market-wall__item:nth-child(6n + 3) { aspect-ratio: 16 / 10; }
.international-market-wall__item:nth-child(6n + 4) { aspect-ratio: 1 / 1; }
.international-market-wall__item:nth-child(6n + 5) { aspect-ratio: 4 / 3; }
.international-market-wall__item:nth-child(6n) { aspect-ratio: 3 / 4; }

@media (max-width: 760px) {
  .international-market-wall {
    columns: 2 220px;
  }
}

@media (max-width: 520px) {
  .quality-lightbox__media {
    min-height: 72dvh;
  }

  .international-market-wall {
    columns: 1;
  }
}

/* v0.30.1: raise the hero statement and use the benefit line as the film's introduction. */
@media (min-width: 901px) {
  .home-hero__grid {
    grid-template-rows: auto minmax(300px, 1fr);
    gap: clamp(14px, 1.8vh, 22px);
    padding-top: clamp(102px, 11.5vh, 132px);
    padding-bottom: clamp(50px, 6.5vh, 76px);
  }

  .home-hero__content,
  .home-v3 .home-hero__content {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: auto auto auto;
    gap: clamp(9px, 1.15vh, 14px);
    align-content: start;
    transform: none;
  }

  .home-hero__identity,
  .home-v3 .home-hero__identity {
    grid-column: 1;
    grid-row: 1;
    margin: 0;
  }

  .home-hero__content h1,
  .home-v3 .home-hero__content h1 {
    grid-column: 1;
    grid-row: 2;
    align-self: start;
    margin: 0;
  }

  .home-hero__copy-stack,
  .home-v3 .home-hero__copy-stack {
    grid-column: 1;
    grid-row: 3;
    justify-self: start;
    align-self: start;
    width: max-content;
    max-width: 100%;
  }

  .home-hero__copy-stack .home-hero__lede,
  .home-v3 .home-hero__copy-stack .home-hero__lede {
    display: flex;
    align-items: baseline;
    flex-wrap: nowrap;
    width: max-content;
    max-width: 100%;
    gap: 0.58rem;
    margin: 0;
    white-space: nowrap;
    text-wrap: nowrap;
  }

  .home-hero__lede strong,
  .home-hero__lede span {
    display: inline;
    white-space: nowrap;
  }

  .home-hero__video-panel {
    grid-column: 1;
    grid-row: 2;
  }
}

/* v0.30.3: keep the film expressive without letting it consume the full lower fold. */
@media (min-width: 901px) {
  .home-hero__grid {
    grid-template-rows: auto auto;
    align-content: start;
    padding-bottom: clamp(32px, 5.5vh, 62px);
  }

  .home-hero__video-panel {
    width: min(100%, clamp(760px, 64vw, 1080px));
    height: auto;
    aspect-ratio: 16 / 9;
    align-self: start;
    justify-self: center;
  }

  .home-hero__content h1 {
    line-height: 1;
  }

  .home-hero__title-line + .home-hero__title-line {
    margin-top: clamp(8px, 1.1vh, 14px);
  }

  .home-hero__lede strong {
    font-size: clamp(1.2rem, 1.55vw, 1.65rem);
  }

  .home-hero__lede span {
    font-size: clamp(0.92rem, 1vw, 1.08rem);
  }
}

/* v0.30.5: space the hero statement from its explanation, not the two title lines. */
@media (min-width: 901px) {
  .home-hero__content {
    row-gap: 0;
  }

  .home-hero__identity {
    margin-bottom: clamp(10px, 1.2vh, 16px);
  }

  .home-hero__content h1 {
    margin: 0 0 clamp(20px, 2.6vh, 30px);
  }

  .home-hero__title-line + .home-hero__title-line {
    margin-top: 0;
  }
}

/* v0.30.6: keep the spacing correction ahead of the legacy hero specificity. */
@media (min-width: 901px) {
  .home-v3 .home-hero__content {
    row-gap: 0;
  }

  .home-v3 .home-hero__identity {
    margin-bottom: clamp(10px, 1.2vh, 16px);
  }

  .home-v3 .home-hero__content h1 {
    margin: 0 0 clamp(20px, 2.6vh, 30px);
  }
}

@media (max-width: 900px) {
  .home-hero__video-panel {
    min-height: 0;
    height: auto;
    aspect-ratio: 16 / 9;
  }
}

/* v0.30.7: align the explanation to the film edge and tune tall-viewport balance. */
@media (min-width: 901px) {
  .home-hero__grid {
    --hero-media-width: min(100%, clamp(760px, 64vw, 1080px));
  }

  .home-v3 .home-hero__identity {
    margin-bottom: clamp(18px, 1.8vh, 26px);
  }

  .home-v3 .home-hero__content h1 {
    margin-bottom: clamp(32px, 3.2vh, 48px);
  }

  .home-v3 .home-hero__copy-stack,
  .home-v3 .home-hero__video-panel {
    width: var(--hero-media-width);
  }

  .home-v3 .home-hero__copy-stack {
    justify-self: center;
  }

  .home-v3 .home-hero__video-panel {
    justify-self: center;
  }
}

@media (min-width: 901px) and (min-height: 1001px) and (max-height: 1200px) {
  .home-hero__grid {
    --hero-media-width: min(100%, 1200px);
  }
}

@media (min-width: 901px) and (min-height: 1201px) {
  .home-hero__grid {
    --hero-media-width: 100%;
  }
}

/* v0.30.8: give the proof rail a consistent text-to-border rhythm. */
@media (min-width: 1201px) {
  .home-v3 .home-proof__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (min-width: 901px) and (max-width: 1200px) {
  .home-v3 .home-proof__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 901px) {
  .home-v3 .home-proof__grid > div,
  .home-v3 .home-proof__grid > div:first-child {
    padding: clamp(1.05rem, 1.7vw, 1.5rem);
  }
}

/* v0.31.1: let the hero use the available desktop canvas instead of the site-wide content cap. */
@media (min-width: 901px) {
  html body.home .home-v3 > .home-hero.home-panel > .container {
    width: min(calc(100% - 96px), 1500px);
    max-width: 1500px;
  }
}

/* v0.31.1: keep the proof cells optically even while preserving a clear text-to-border rhythm. */
@media (min-width: 901px) {
  body.home .home-v3 .home-proof__grid > div,
  body.home .home-v3 .home-proof__grid > div:first-child {
    align-content: center;
    row-gap: clamp(0.7rem, 1.3vh, 1rem);
    padding: clamp(1.1rem, 1.8vw, 1.55rem);
  }
}

/* v0.31.1: reduce the desktop hero film to 80% of its previous footprint while keeping 16:9. */
@media (min-width: 901px) {
  .home-v3 .home-hero__grid {
    --hero-media-width: min(100%, clamp(608px, 51.2vw, 864px));
  }
}

@media (min-width: 901px) and (min-height: 1001px) and (max-height: 1200px) {
  .home-v3 .home-hero__grid {
    --hero-media-width: min(100%, 960px);
  }
}

@media (min-width: 901px) and (min-height: 1201px) {
  .home-v3 .home-hero__grid {
    --hero-media-width: 80%;
    padding-top: calc(clamp(102px, 11.5vh, 132px) + ((100dvh - 1097px) / 2));
  }
}

/* v0.32.0: align the hero label and statement with the Everything/media edge. */
@media (min-width: 901px) {
  .home-v3 .home-hero__identity,
  .home-v3 .home-hero__content h1 {
    justify-self: start;
    margin-left: calc((100% - var(--hero-media-width)) / 2);
  }

  .home-v3 .home-hero__content h1 {
    width: max-content;
    max-width: calc((100% + var(--hero-media-width)) / 2);
  }
}
