﻿:root {
  --bg: #ffffff;
  --bg-soft: #f5f8fc;
  --bg-panel: #eef4fb;
  --bg-dark: #111317;
  --bg-dark-2: #1a1e24;
  --text: #0f1114;
  --muted: #68707c;
  --line: rgba(15, 17, 20, 0.08);
  --line-strong: rgba(15, 17, 20, 0.14);
  --white: #ffffff;
  --accent: #123a74;
  --accent-2: #2d67b3;
  --accent-soft: #dbe9fb;
  --accent-glow: rgba(74, 129, 208, 0.22);
  --shadow-soft: 0 22px 70px rgba(15, 17, 20, 0.08);
  --shadow-deep: 0 35px 120px rgba(10, 12, 16, 0.18);
  --radius-xl: 8px;
  --radius-lg: 8px;
  --radius-md: 8px;
  --content: 1380px;
}

/* Site quality pass 2026-08-28: shared brand, navigation and legacy-page system. */
@font-face {
  font-family: "Manrope";
  src: url("/assets/brand/fonts/Manrope-Variable.ttf") format("truetype");
  font-style: normal;
  font-weight: 200 800;
  font-display: swap;
}

@font-face {
  font-family: "Space Grotesk";
  src: url("/assets/brand/fonts/SpaceGrotesk-Variable.ttf") format("truetype");
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
}

@font-face {
  font-family: "Rajdhani";
  src: url("/assets/brand/fonts/Rajdhani-SemiBold.ttf") format("truetype");
  font-style: normal;
  font-weight: 600;
  font-display: swap;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.home-variant-a,
.home-variant-a * {
  letter-spacing: 0;
}

.home-variant-a :focus-visible {
  outline: 3px solid #20d0c3;
  outline-offset: 3px;
}

.home-a-header {
  grid-template-columns: minmax(170px, 220px) minmax(520px, 1fr) auto;
  gap: clamp(18px, 2.4vw, 40px);
  width: 100%;
  height: 76px;
  padding: 0 clamp(20px, 3vw, 48px);
}

.home-a-logo {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  min-height: 44px;
}

.home-a-logo img {
  width: 158px;
  height: auto;
}

.home-a-nav,
.home-a-tools {
  gap: clamp(14px, 2vw, 32px);
}

.home-a-nav a,
.home-a-tools a {
  position: relative;
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  font-family: "Rajdhani", sans-serif;
  font-size: 14px;
  font-weight: 600;
  text-transform: uppercase;
}

.home-a-nav a::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 2px;
  background: transparent;
}

.home-a-nav a:hover,
.home-a-nav a.is-active,
.home-a-tools a:hover {
  color: #063f46;
}

.home-a-nav a.is-active::after,
.climate-page .home-a-nav a.is-active::after {
  right: 0;
  bottom: 0;
  left: 0;
  height: 2px;
  background: #20d0c3;
}

.home-a-compare,
.mobile-nav-cta {
  justify-content: center;
  min-height: 44px;
  padding: 0 16px;
  border: 1px solid rgba(6, 63, 70, 0.28);
}

.mobile-nav-cta,
.site-menu-toggle {
  display: none;
}

.home-a-support-items article > span {
  display: none;
}

.home-a-support-items article::before {
  content: "";
  width: 26px;
  height: 26px;
  border: 2px solid rgba(244, 251, 250, 0.82);
  box-shadow: inset 0 0 0 6px rgba(32, 208, 195, 0.18);
}

.home-a-footer img {
  width: 158px;
}

.home-a-footer a {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  min-height: 32px;
}

/* The legacy content keeps its facts but now uses the current Zollerz system. */
.legacy-page {
  --text: #1b2226;
  --ink: #032b30;
  --muted: #566b70;
  --line: rgba(6, 63, 70, 0.16);
  --line-strong: rgba(6, 63, 70, 0.34);
  --bg: #f4fbfa;
  --bg-soft: #eaf4f2;
  --white: #ffffff;
  color: var(--text);
  background: var(--bg);
  font-family: "Manrope", Arial, sans-serif;
}

.legacy-page main {
  width: min(calc(100% - 48px), 1240px);
  margin: 0 auto;
}

.legacy-page h1,
.legacy-page h2,
.legacy-page h3,
.legacy-page h4 {
  font-family: "Space Grotesk", Arial, sans-serif;
  color: var(--ink);
}

.legacy-page .eyebrow,
.legacy-page .catalog-card > span,
.legacy-page .range-card > span,
.legacy-page .product-summary-grid span,
.legacy-page .spec-card h2 {
  color: #087f80;
  font-family: "Rajdhani", sans-serif;
  font-weight: 600;
  text-transform: uppercase;
}

.legacy-page .page-hero {
  grid-template-columns: minmax(0, 0.82fr) minmax(420px, 1.18fr);
  gap: 0;
  margin-top: 32px;
  padding: 0;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #ffffff;
  box-shadow: none;
}

.legacy-page .page-hero > div {
  min-height: 460px;
  padding: clamp(32px, 4vw, 58px);
  background: #ffffff;
}

.legacy-page .page-hero h1 {
  max-width: 14ch;
  font-size: clamp(2.55rem, 5vw, 4.8rem);
  font-weight: 600;
  line-height: 1;
}

.legacy-page .page-hero p:not(.eyebrow) {
  color: var(--muted);
  font-size: 17px;
}

.legacy-page .page-hero img {
  min-height: 460px;
  border-radius: 0;
  background: #e8f2f0;
}

.legacy-page .page-hero-dark,
.legacy-page .product-hero-dark {
  color: var(--text);
  background: #ffffff;
}

.legacy-page .page-hero-dark p:not(.eyebrow),
.legacy-page .product-hero-dark .product-lead {
  color: var(--muted);
}

.legacy-page .catalog-section {
  margin-top: 72px;
}

.legacy-page .section-head {
  margin-bottom: 26px;
}

.legacy-page .catalog-grid,
.legacy-page .range-grid {
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 16px;
}

.legacy-page .catalog-card,
.legacy-page .range-card {
  grid-column: span 4;
  min-height: 330px;
  padding: 22px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #ffffff;
  box-shadow: none;
  transition: border-color 160ms ease, transform 160ms ease;
}

.legacy-page .catalog-card:hover,
.legacy-page .range-card:hover {
  border-color: var(--line-strong);
  transform: translateY(-2px);
}

.legacy-page .catalog-card-lead {
  grid-column: span 8;
  grid-row: span 2;
  min-height: 676px;
}

.legacy-page .catalog-card img,
.legacy-page .range-card img {
  height: 228px;
  background: #edf5f3;
}

.legacy-page .catalog-card-lead img {
  height: 420px;
}

.legacy-page .catalog-card h3,
.legacy-page .range-card h3 {
  font-size: 1.35rem;
}

.legacy-page .catalog-card p,
.legacy-page .range-card p {
  color: var(--muted);
}

.legacy-page .product-hero {
  grid-template-columns: minmax(0, 1.08fr) minmax(360px, 0.92fr);
  border-color: var(--line);
  border-radius: 6px;
  box-shadow: none;
}

.legacy-page .product-copy {
  padding: clamp(34px, 4vw, 58px);
}

.legacy-page .product-copy h1 {
  font-family: "Space Grotesk", Arial, sans-serif;
  font-size: clamp(2.3rem, 4vw, 4rem);
  font-weight: 600;
}

.legacy-page .product-visual {
  background: #edf5f3;
}

.legacy-page .product-summary-grid article,
.legacy-page .product-panel,
.legacy-page .spec-card {
  border-color: var(--line);
  border-radius: 6px;
  background: #ffffff;
  box-shadow: none;
}

.legacy-page .button,
.legacy-page .home-a-button {
  min-height: 48px;
  border-radius: 2px;
  font-family: "Rajdhani", sans-serif;
  font-weight: 600;
  text-transform: uppercase;
}

.legacy-page .button-primary {
  color: #ffffff;
  border-color: #063f46;
  background: #063f46;
}

.legacy-page .button-secondary {
  color: #063f46;
  border-color: var(--line-strong);
  background: transparent;
}

.privacy-choice {
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 100;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 24px;
  width: min(calc(100% - 40px), 720px);
  padding: 20px;
  color: #f4fbfa;
  border: 1px solid rgba(32, 208, 195, 0.48);
  background: #032b30;
  box-shadow: 0 18px 48px rgba(3, 43, 48, 0.22);
}

.privacy-choice p,
.privacy-choice p span {
  display: block;
  margin: 0;
}

.privacy-choice p span {
  margin-top: 4px;
  color: rgba(244, 251, 250, 0.72);
  font-size: 13px;
}

.privacy-choice div {
  display: flex;
  gap: 8px;
}

.privacy-choice button {
  min-height: 44px;
  padding: 0 16px;
  color: #f4fbfa;
  border: 1px solid rgba(244, 251, 250, 0.36);
  border-radius: 2px;
  background: transparent;
  font: 600 13px "Manrope", sans-serif;
  cursor: pointer;
}

.privacy-choice button.is-primary {
  color: #032b30;
  border-color: #20d0c3;
  background: #20d0c3;
}

@media (max-width: 1120px) {
  .home-a-header {
    grid-template-columns: minmax(160px, 1fr) auto;
    height: 72px;
    padding: 0 24px;
  }

  .home-a-nav {
    grid-column: 1 / -1;
  }

  .home-a-tools {
    display: none;
  }
}

@media (max-width: 980px) {
  .home-a-header {
    position: sticky;
  }

  .site-menu-toggle {
    display: grid;
    place-content: center;
    gap: 5px;
    width: 44px;
    height: 44px;
    padding: 0;
    color: #032b30;
    border: 1px solid rgba(6, 63, 70, 0.24);
    border-radius: 2px;
    background: transparent;
    cursor: pointer;
  }

  .site-menu-toggle i {
    display: block;
    width: 20px;
    height: 2px;
    background: currentColor;
    transition: transform 160ms ease, opacity 160ms ease;
  }

  .site-menu-toggle[aria-expanded="true"] i:first-of-type {
    transform: translateY(7px) rotate(45deg);
  }

  .site-menu-toggle[aria-expanded="true"] i:nth-of-type(2) {
    opacity: 0;
  }

  .site-menu-toggle[aria-expanded="true"] i:last-of-type {
    transform: translateY(-7px) rotate(-45deg);
  }

  .home-a-nav {
    position: absolute;
    top: 72px;
    right: 0;
    left: 0;
    display: grid;
    grid-template-columns: 1fr;
    gap: 0;
    max-height: calc(100vh - 72px);
    padding: 12px 24px 24px;
    overflow-y: auto;
    border-bottom: 1px solid rgba(6, 63, 70, 0.16);
    background: #ffffff;
  }

  .has-js .home-a-nav {
    display: none;
  }

  .has-js .home-a-nav.is-open {
    display: grid;
  }

  .home-a-nav a {
    min-height: 52px;
    border-bottom: 1px solid rgba(6, 63, 70, 0.1);
  }

  .home-a-nav a::after {
    display: none;
  }

  .mobile-nav-cta {
    display: inline-flex;
    margin-top: 14px;
    border-bottom: 1px solid rgba(6, 63, 70, 0.28) !important;
  }

  .legacy-page .page-hero,
  .legacy-page .product-hero,
  .legacy-page .product-detail-grid {
    grid-template-columns: 1fr;
  }

  .legacy-page .page-hero > div,
  .legacy-page .page-hero img {
    min-height: 360px;
  }

  .legacy-page .catalog-card,
  .legacy-page .range-card {
    grid-column: span 6;
  }

  .legacy-page .catalog-card-lead {
    grid-column: span 12;
    grid-row: auto;
    min-height: 520px;
  }
}

@media (max-width: 640px) {
  .home-a-header {
    padding: 0 20px;
  }

  .home-a-logo img {
    width: 142px;
  }

  .home-a-footer a {
    min-height: 44px;
  }

  .legacy-page main {
    width: min(calc(100% - 32px), 1240px);
  }

  .legacy-page .page-hero {
    margin-top: 18px;
  }

  .legacy-page .page-hero > div {
    min-height: 320px;
    padding: 30px 24px;
  }

  .legacy-page .page-hero img {
    min-height: 260px;
    max-height: 360px;
  }

  .legacy-page .page-hero h1 {
    font-size: 2.55rem;
  }

  .legacy-page .catalog-section {
    margin-top: 56px;
  }

  .legacy-page .catalog-card,
  .legacy-page .range-card,
  .legacy-page .catalog-card-lead {
    grid-column: 1 / -1;
    min-height: auto;
  }

  .legacy-page .catalog-card-lead img,
  .legacy-page .catalog-card img,
  .legacy-page .range-card img {
    height: 238px;
  }

  .legacy-page .product-summary-grid {
    grid-template-columns: 1fr 1fr;
  }

  .privacy-choice {
    right: 12px;
    bottom: 12px;
    grid-template-columns: 1fr;
    width: calc(100% - 24px);
    gap: 16px;
  }

  .privacy-choice div,
  .privacy-choice button {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}

/* FHT product page */
.fht-product-page {
  background: #fff;
  color: #11181c;
  overflow-x: hidden;
}

.fht-product-page *,
.fht-product-page *::before,
.fht-product-page *::after {
  box-sizing: border-box;
}

.fht-product-page .home-a-header {
  position: sticky;
  top: 0;
  z-index: 50;
  box-shadow: 0 1px 0 rgba(15, 36, 42, 0.08);
}

.fht-product-page .home-a-nav a.is-active {
  color: #003f43;
}

.fht-product-page .home-a-nav a.is-active::after {
  opacity: 1;
}

.fht-page {
  width: 100%;
  max-width: 1480px;
  margin: 0 auto;
  padding: 0 36px 76px;
  overflow-x: hidden;
}

.fht-breadcrumb {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
  padding: 22px 0 8px;
  color: #768286;
  font: 500 12px/1.4 "Manrope", sans-serif;
}

.fht-breadcrumb a,
.fht-breadcrumb span,
.fht-breadcrumb strong {
  color: inherit;
  text-decoration: none;
}

.fht-breadcrumb > * + *::before {
  content: ">";
  margin-right: 12px;
  color: #a7b0b3;
}

.fht-breadcrumb a:hover,
.fht-breadcrumb a:focus-visible {
  color: #087f80;
}

.fht-product-top {
  width: 100%;
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 420px;
  gap: 22px;
  align-items: start;
}

.fht-product-title {
  grid-column: 1;
  min-width: 0;
}

.fht-product-title h1 {
  margin: 14px 0 22px;
  color: #11181c;
  font: 750 clamp(28px, 2.3vw, 38px)/1.05 "Manrope", sans-serif;
  letter-spacing: -0.02em;
  overflow-wrap: anywhere;
}

.fht-product-tabs {
  grid-column: 2;
  display: flex;
  justify-content: center;
  gap: 56px;
  min-height: 60px;
  padding-top: 12px;
}

.fht-product-tabs a {
  position: relative;
  color: #5f6a6f;
  text-decoration: none;
  font: 700 14px/1 "Manrope", sans-serif;
}

.fht-product-tabs a.is-active {
  color: #102024;
}

.fht-product-tabs a.is-active::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -14px;
  height: 3px;
  background: #004e52;
}

.fht-gallery {
  position: relative;
  grid-column: 1;
  min-width: 0;
  max-width: 100%;
}

.fht-gallery-main {
  display: block;
  width: 100%;
  aspect-ratio: 1.585 / 1;
  object-fit: contain;
  background: #fff;
  border: 1px solid #e2eaeb;
}

.fht-gallery-arrow {
  position: absolute;
  top: 42%;
  z-index: 3;
  width: 42px;
  height: 42px;
  border: 1px solid rgba(0, 58, 63, 0.12);
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 8px 24px rgba(18, 31, 36, 0.14);
  cursor: pointer;
  transition: transform 160ms ease, box-shadow 160ms ease, opacity 160ms ease;
}

.fht-gallery-arrow:hover {
  transform: translateY(-1px);
  box-shadow: 0 12px 28px rgba(18, 31, 36, 0.18);
}

.fht-gallery-arrow::before {
  content: "";
  position: absolute;
  width: 9px;
  height: 9px;
  top: 16px;
  border-top: 2px solid #192428;
  border-left: 2px solid #192428;
}

.fht-gallery-prev {
  left: 20px;
}

.fht-gallery-prev::before {
  left: 18px;
  transform: rotate(-45deg);
}

.fht-gallery-next {
  right: 20px;
}

.fht-gallery-next::before {
  left: 14px;
  transform: rotate(135deg);
}

.fht-thumbs {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 14px;
  margin-top: 14px;
}

.fht-thumbs button {
  height: 78px;
  padding: 0;
  overflow: hidden;
  border: 1px solid #d8e1e2;
  border-radius: 3px;
  background: #f7faf9;
}

.fht-thumbs button.is-active {
  border: 2px solid #006b70;
}

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

.fht-config {
  grid-column: 2;
  grid-row: 2 / span 2;
  min-width: 0;
  padding: 36px 30px 32px;
  border: 1px solid #dfe7e8;
  border-radius: 10px;
  box-shadow: 0 20px 50px rgba(18, 31, 36, 0.06);
  background: #fff;
}

.fht-config h2 {
  margin: 0 0 28px;
  font: 750 30px/1.1 "Manrope", sans-serif;
  letter-spacing: -0.025em;
}

.fht-config p,
.fht-config > strong {
  display: block;
  margin: 0 0 14px;
  color: #556166;
  text-transform: uppercase;
  font: 800 12px/1 "Manrope", sans-serif;
  letter-spacing: 0.08em;
}

.fht-capacity {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 13px;
  margin-bottom: 34px;
}

.fht-capacity button {
  height: 42px;
  border: 1px solid #dce5e6;
  border-radius: 22px;
  background: #fff;
  color: #182226;
  font: 800 13px/1 "Manrope", sans-serif;
}

.fht-capacity button.is-selected {
  background: #004e52;
  color: #fff;
  border-color: #004e52;
}

.fht-config dl,
.fht-specs dl {
  margin: 0;
}

.fht-config dl div,
.fht-specs dl div {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 20px;
  align-items: baseline;
  min-height: 36px;
  padding: 10px 0;
  border-bottom: 1px solid #dfe7e8;
}

.fht-config dt,
.fht-config dd,
.fht-specs dt,
.fht-specs dd {
  margin: 0;
  color: #667175;
  font: 500 14px/1.25 "Manrope", sans-serif;
}

.fht-config dd,
.fht-specs dd {
  color: #11181c;
  text-align: right;
  font-weight: 700;
}

.fht-button {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 50px;
  margin-top: 20px;
  border-radius: 7px;
  text-decoration: none;
  font: 800 14px/1 "Manrope", sans-serif;
}

.fht-button-primary {
  background: linear-gradient(90deg, #00636a, #00565c);
  color: #fff !important;
  box-shadow: 0 18px 36px rgba(0, 76, 82, 0.18);
}

.fht-button-secondary {
  border: 1px solid #8ea5a8;
  color: #153236;
  background: #fff;
}

.fht-highlights {
  padding: 76px 0 48px;
}

.fht-highlights h2,
.fht-specs h2 {
  margin: 0 0 22px;
  color: #11181c;
  font: 750 28px/1.15 "Manrope", sans-serif;
  letter-spacing: -0.02em;
}

.fht-highlight-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 20px;
}

.fht-highlight-grid article {
  overflow: hidden;
  border: 1px solid #dfe7e8;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 16px 32px rgba(18, 31, 36, 0.04);
}

.fht-highlight-grid img {
  display: block;
  width: 100%;
  height: 154px;
  object-fit: cover;
}

.fht-highlight-grid div {
  min-height: 148px;
  padding: 22px 22px 18px;
  position: relative;
}

.fht-highlight-grid h3 {
  margin: 0 0 10px;
  color: #11181c;
  font: 800 16px/1.2 "Manrope", sans-serif;
}

.fht-highlight-grid p {
  margin: 0;
  max-width: 220px;
  color: #4f5d62;
  font: 500 13px/1.5 "Manrope", sans-serif;
}

.fht-highlight-grid a {
  position: absolute;
  right: 18px;
  bottom: 18px;
  width: 22px;
  height: 22px;
}

.fht-highlight-grid a::before {
  content: "→";
  color: #122226;
  font: 700 20px/1 "Manrope", sans-serif;
}

.fht-feature {
  display: grid;
  grid-template-columns: 1fr 1.18fr;
  align-items: stretch;
  min-height: 350px;
  margin: 0 -36px;
  background: #fff;
  border-top: 1px solid #e2e9ea;
}

.fht-feature img {
  width: 100%;
  height: 100%;
  min-height: 350px;
  object-fit: cover;
  display: block;
}

.fht-feature-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 80px 74px;
}

.fht-feature-copy p {
  margin: 0 0 18px;
  color: #005c62;
  text-transform: uppercase;
  font: 800 12px/1 "Manrope", sans-serif;
  letter-spacing: 0.1em;
}

.fht-feature-copy h2 {
  margin: 0 0 22px;
  color: #10181c;
  font: 750 clamp(30px, 3vw, 43px)/1.08 "Manrope", sans-serif;
  letter-spacing: -0.03em;
}

.fht-feature-copy span {
  display: block;
  max-width: 470px;
  color: #263237;
  font: 500 17px/1.75 "Manrope", sans-serif;
}

.fht-feature-copy strong {
  margin-top: 38px;
  color: #00777a;
  font: 800 25px/1 "Manrope", sans-serif;
}

.fht-feature-copy small {
  margin-top: 8px;
  color: #00777a;
  font: 700 14px/1 "Manrope", sans-serif;
}

.fht-feature-quiet {
  grid-template-columns: 1fr 1fr;
}

.fht-specs {
  padding: 42px 0 54px;
}

.fht-spec-tables {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 34px;
}

.fht-spec-tables article h3 {
  margin: 0 0 14px;
  color: #11181c;
  font: 800 18px/1.2 "Manrope", sans-serif;
}

.fht-specs dt,
.fht-specs dd {
  font-size: 13px;
}

.fht-docs {
  display: grid;
  grid-template-columns: 1fr 280px;
  gap: 22px;
  align-items: stretch;
  margin-bottom: 42px;
}

.fht-doc-panel,
.fht-docs aside,
.fht-bottom-benefits {
  border: 1px solid #dfe7e8;
  border-radius: 9px;
  background: #fff;
  box-shadow: 0 16px 42px rgba(18, 31, 36, 0.045);
}

.fht-doc-panel {
  padding: 30px;
}

.fht-doc-panel h2 {
  margin: 0 0 24px;
  color: #11181c;
  font: 750 25px/1.15 "Manrope", sans-serif;
}

.fht-doc-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.fht-doc-grid a {
  display: grid;
  grid-template-columns: 28px 1fr;
  grid-template-areas: "icon title" "icon meta";
  gap: 4px 12px;
  align-items: center;
  min-height: 68px;
  padding: 13px 14px;
  border: 1px solid #e1e8e9;
  border-radius: 7px;
  color: inherit;
  text-decoration: none;
  background: #fff;
}

.fht-doc-grid span {
  grid-area: icon;
  width: 24px;
  height: 28px;
  border: 2px solid #687579;
  border-radius: 3px;
  position: relative;
}

.fht-doc-grid span::after {
  content: "";
  position: absolute;
  left: 6px;
  right: 6px;
  top: 8px;
  height: 2px;
  background: #687579;
  box-shadow: 0 6px 0 #687579;
}

.fht-doc-grid strong {
  grid-area: title;
  color: #11181c;
  font: 800 13px/1.25 "Manrope", sans-serif;
}

.fht-doc-grid small {
  grid-area: meta;
  color: #667175;
  font: 600 12px/1 "Manrope", sans-serif;
}

.fht-docs aside {
  padding: 34px 28px;
}

.fht-docs aside strong {
  display: block;
  margin-bottom: 10px;
  color: #11181c;
  font: 800 18px/1.2 "Manrope", sans-serif;
}

.fht-docs aside span {
  display: block;
  margin-bottom: 34px;
  color: #5f6c70;
  font: 500 14px/1.5 "Manrope", sans-serif;
}

.fht-docs aside a {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 42px;
  border-radius: 7px;
  background: #005d63;
  color: #fff;
  text-decoration: none;
  font: 800 13px/1 "Manrope", sans-serif;
}

.fht-bottom-benefits {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  padding: 34px 36px;
  margin-bottom: 48px;
}

.fht-bottom-benefits article {
  display: grid;
  grid-template-columns: 58px 1fr;
  gap: 6px 18px;
}

.fht-bottom-benefits article > span {
  grid-row: span 2;
  width: 44px;
  height: 44px;
  border: 1px solid #9eb6b9;
  border-radius: 50%;
  position: relative;
}

.fht-bottom-benefits article > span::after {
  content: attr(data-icon);
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #00656b;
  font: 700 9px/1 "Manrope", sans-serif;
  text-transform: uppercase;
}

.fht-bottom-benefits strong {
  color: #006169;
  font: 800 15px/1.2 "Manrope", sans-serif;
}

.fht-bottom-benefits small {
  max-width: 220px;
  color: #5f6b70;
  font: 500 13px/1.45 "Manrope", sans-serif;
}

@media (max-width: 980px) {
  .fht-page {
    padding: 0 20px 52px;
  }

  .fht-product-top,
  .fht-spec-tables,
  .fht-docs,
  .fht-bottom-benefits {
    grid-template-columns: 1fr;
  }

  .fht-product-tabs,
  .fht-config {
    grid-column: 1;
    grid-row: auto;
  }

  .fht-product-tabs {
    justify-content: flex-start;
    gap: 30px;
    overflow-x: auto;
  }

  .fht-highlight-grid,
  .fht-doc-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .fht-feature,
  .fht-feature-quiet {
    grid-template-columns: 1fr;
    margin-left: -20px;
    margin-right: -20px;
  }

  .fht-feature-copy {
    padding: 52px 30px;
  }
}

@media (max-width: 640px) {
  .fht-page {
    padding-left: 20px;
    padding-right: 20px;
  }

  .fht-breadcrumb {
    max-width: 100%;
    overflow: hidden;
    gap: 6px;
    font-size: 11px;
  }

  .fht-breadcrumb a,
  .fht-breadcrumb span,
  .fht-breadcrumb strong {
    white-space: nowrap;
  }

  .fht-product-title h1 {
    max-width: 100%;
    font-size: 28px;
    line-height: 1.08;
  }

  .fht-gallery-main {
    aspect-ratio: 1.1 / 1;
  }

  .fht-product-tabs {
    max-width: 100%;
  }

  .fht-thumbs {
    max-width: 100%;
    grid-template-columns: repeat(5, 86px);
    gap: 12px;
    overflow-x: auto;
    padding-bottom: 8px;
  }

  .fht-config {
    width: 100%;
    max-width: 100%;
    padding: 28px 22px;
  }

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

  .fht-config dl div,
  .fht-specs dl div {
    grid-template-columns: 1fr;
    gap: 5px;
  }

  .fht-config dt,
  .fht-config dd,
  .fht-specs dt,
  .fht-specs dd {
    font-size: 13px;
  }

  .fht-highlight-grid,
  .fht-doc-grid {
    grid-template-columns: 1fr;
  }

  .fht-docs aside {
    padding: 26px 22px;
  }

  .fht-bottom-benefits {
    padding: 26px 22px;
    gap: 24px;
  }
}

@media (max-width: 720px) {
  .fht-product-page,
  .fht-product-page .home-a-header,
  .fht-product-page .fht-page,
  .fht-product-page .fht-product-top,
  .fht-product-page .fht-gallery,
  .fht-product-page .fht-config,
  .fht-product-page .fht-highlight-grid,
  .fht-product-page .fht-specs,
  .fht-product-page .fht-docs,
  .fht-product-page .fht-bottom-benefits {
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }

  .fht-product-page .home-a-header {
    grid-template-columns: 1fr;
    gap: 24px;
    padding: 32px 24px 20px;
    overflow: hidden;
  }

  .fht-product-page .home-a-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 18px 28px;
    min-width: 0;
    max-width: 100%;
    overflow: hidden;
  }

  .fht-product-page .home-a-tools {
    display: none;
  }

  .fht-product-page .fht-page {
    padding-left: 20px;
    padding-right: 20px;
    overflow: hidden;
  }

  .fht-product-page .fht-breadcrumb {
    overflow-x: auto;
    overflow-y: hidden;
    padding-bottom: 4px;
  }

  .fht-product-page .fht-product-title h1 {
    width: 100%;
    max-width: calc(100vw - 40px);
    white-space: normal;
    overflow-wrap: anywhere;
    font-size: clamp(24px, 7vw, 30px);
    line-height: 1.1;
  }

  .fht-product-page .fht-product-tabs {
    display: flex;
    max-width: calc(100vw - 40px);
    gap: 28px;
    overflow-x: auto;
  }

  .fht-product-page .fht-gallery-main {
    width: 100%;
    max-width: calc(100vw - 40px);
  }

  .fht-product-page .fht-thumbs {
    max-width: calc(100vw - 40px);
  }

  .fht-product-page .fht-config {
    padding: 30px 22px;
    overflow: hidden;
  }

  .fht-product-page .fht-config h2 {
    font-size: clamp(24px, 7vw, 30px);
  }

  .fht-product-page .fht-capacity {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .fht-product-page .fht-capacity button,
  .fht-product-page .fht-config-actions a {
    width: 100%;
    min-width: 0;
  }

  .fht-product-page .fht-config dl div,
  .fht-product-page .fht-specs dl div {
    grid-template-columns: 1fr;
  }

  .fht-product-page .fht-config dd,
  .fht-product-page .fht-specs dd {
    text-align: left;
  }
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  color: var(--text);
  font-family: "Plus Jakarta Sans", sans-serif;
  overflow-x: hidden;
  background:
    radial-gradient(circle at top right, rgba(77, 135, 220, 0.12), transparent 22%),
    radial-gradient(circle at top left, rgba(166, 202, 255, 0.12), transparent 20%),
    var(--bg);
}

img {
  display: block;
  max-width: 100%;
}

a {
  color: inherit;
  text-decoration: none;
}

main,
.site-header,
.site-footer {
  width: min(calc(100% - 36px), var(--content));
  margin: 0 auto;
}

.site-header {
  position: sticky;
  top: 0;
  z-index: 50;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 28px;
  padding: 18px 0;
  background: rgba(255, 255, 255, 0.82);
  backdrop-filter: blur(18px);
}

.brand img {
  width: 144px;
  height: auto;
}

.site-nav,
.header-actions {
  display: flex;
  align-items: center;
}

.site-nav {
  justify-content: center;
  gap: 30px;
}

.site-nav a,
.header-link {
  color: var(--muted);
  font-size: 14px;
  transition: color 160ms ease;
}

.site-nav a:hover,
.header-link:hover,
.inline-link:hover {
  color: var(--text);
}

.header-actions {
  gap: 18px;
}

.language-toggle,
.icon-link {
  appearance: none;
  border: 0;
  color: #05070b;
  background: transparent;
  cursor: pointer;
}

.language-toggle {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 0;
  font: inherit;
  font-size: 15px;
  font-weight: 800;
}

.globe-icon,
.search-icon,
.menu-icon {
  position: relative;
  display: inline-block;
}

.globe-icon {
  width: 22px;
  height: 22px;
  border: 2px solid currentColor;
  border-radius: 999px;
}

.globe-icon::before,
.globe-icon::after {
  content: "";
  position: absolute;
  inset: 4px auto;
  left: 50%;
  border-left: 2px solid currentColor;
  transform: translateX(-50%);
}

.globe-icon::after {
  inset: 9px 3px auto;
  left: 3px;
  border-left: 0;
  border-top: 2px solid currentColor;
  transform: none;
}

.chevron-icon {
  width: 9px;
  height: 9px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(45deg) translateY(-2px);
}

.icon-link {
  width: 42px;
  height: 42px;
}

.search-icon::before {
  content: "";
  position: absolute;
  top: 5px;
  left: 5px;
  width: 20px;
  height: 20px;
  border: 4px solid currentColor;
  border-radius: 999px;
}

.search-icon::after {
  content: "";
  position: absolute;
  right: 6px;
  bottom: 7px;
  width: 17px;
  height: 4px;
  border-radius: 999px;
  background: currentColor;
  transform: rotate(-45deg);
  transform-origin: center;
}

.menu-icon {
  display: inline-grid;
  align-content: center;
  gap: 8px;
  padding: 0;
}

.menu-icon span {
  display: block;
  width: 40px;
  height: 4px;
  border-radius: 999px;
  background: currentColor;
}

.home-hero-showcase {
  min-height: 0;
  margin-top: 44px;
  display: grid;
  grid-template-columns: 0.9fr 1.1fr;
  align-items: stretch;
  gap: 28px;
  overflow: hidden;
  padding: 34px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: linear-gradient(180deg, #ffffff 0%, #eef5fb 100%);
  box-shadow: var(--shadow-soft);
}

.home-hero-copy {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 520px;
  color: var(--text);
}

.home-kicker {
  margin: 0 0 10px;
  color: #4d6f98;
  font-size: 12px;
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.home-hero-copy h1 {
  max-width: 12ch;
  margin: 0;
  color: var(--text);
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: clamp(3.2rem, 6vw, 6.1rem);
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0;
}

.home-hero-copy p:not(.home-kicker) {
  max-width: 460px;
  margin: 24px 0 0;
  color: var(--muted);
  font-size: 17px;
  font-weight: 500;
  line-height: 1.65;
}

.hero-outline-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 150px;
  min-height: 50px;
  width: max-content;
  margin-top: 30px;
  padding: 0 24px;
  border: 0;
  border-radius: 999px;
  color: var(--white);
  background: linear-gradient(135deg, var(--accent) 0%, var(--accent-2) 100%);
  box-shadow: 0 18px 44px rgba(18, 58, 116, 0.24);
  font-size: 14px;
  font-weight: 800;
  text-transform: none;
  transition: background 180ms ease, color 180ms ease, transform 180ms ease;
}

.hero-outline-button:hover {
  transform: translateY(-2px);
}

.home-hero-visual {
  position: relative;
  min-height: 520px;
}

.hero-product-plate {
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: 8px;
  background: var(--bg-soft);
}

.hero-product-plate img {
  width: 100%;
  height: 100%;
  min-height: 520px;
  object-fit: cover;
}

.home-hero-dots {
  display: none;
}

.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 50px;
  padding: 0 22px;
  border-radius: 999px;
  font-size: 14px;
  font-weight: 700;
  transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
}

.button:hover {
  transform: translateY(-1px);
}

.button-primary {
  color: var(--white);
  background: linear-gradient(135deg, var(--accent) 0%, var(--accent-2) 100%);
  box-shadow: 0 18px 44px rgba(18, 58, 116, 0.24);
}

.button-secondary {
  border: 1px solid var(--line-strong);
  background: var(--white);
}

.eyebrow,
.card-label,
.mini-label {
  margin: 0 0 14px;
  color: #4d6f98;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.hero h1,
.section-head h2,
.spotlight-copy h2,
.support-card h2,
.trade-card h2 {
  margin: 0;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-weight: 900;
  letter-spacing: 0;
}

.hero {
  display: grid;
  grid-template-columns: 0.94fr 1.06fr;
  gap: 34px;
  align-items: center;
  padding: 44px 0 18px;
}

.hero h1 {
  max-width: 8.8ch;
  font-size: 6.8rem;
  line-height: 0.9;
}

.hero-text,
.hero-points,
.stage-card p,
.card-copy p,
.feature-copy p,
.spotlight-copy p,
.map-grid p,
.assortment-grid p,
.support-card p,
.trade-card p,
.footer-brand p,
.footer-columns a,
.footer-bottom p {
  line-height: 1.7;
}

.hero-text {
  max-width: 600px;
  margin: 22px 0 0;
  color: var(--muted);
  font-size: 18px;
}

.hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 30px;
}

.hero-points {
  display: grid;
  gap: 14px;
  padding: 0;
  margin: 34px 0 0;
  list-style: none;
  color: var(--muted);
  font-size: 14px;
}

.hero-points li {
  position: relative;
  padding-left: 24px;
}

.hero-points li::before {
  content: "";
  position: absolute;
  top: 10px;
  left: 0;
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: var(--accent-2);
  box-shadow: 0 0 0 6px rgba(45, 103, 179, 0.14);
}

.hero-stage {
  position: relative;
  min-height: 760px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: var(--radius-xl);
  background:
    linear-gradient(145deg, #12141a 0%, #1e2430 45%, #141821 100%);
  box-shadow: var(--shadow-deep);
}

.hero-stage-image,
.light-grid,
.stage-card {
  position: absolute;
}

.hero-stage-image {
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.88;
}

.hero-stage::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(7, 10, 15, 0.14) 0%, rgba(7, 10, 15, 0.46) 100%);
}

.light-grid {
  inset: 0;
  background:
    linear-gradient(rgba(255, 255, 255, 0.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.05) 1px, transparent 1px);
  background-size: 48px 48px;
  mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.96), transparent 90%);
  opacity: 0.24;
}

.stage-card {
  z-index: 2;
  padding: 24px;
  border-radius: 24px;
  backdrop-filter: blur(16px);
}

.stage-card-dark {
  top: 24px;
  left: 24px;
  width: min(320px, calc(100% - 48px));
  color: #ffffff;
  background: rgba(11, 13, 17, 0.68);
  border: 1px solid rgba(255, 255, 255, 0.08);
}

.stage-card-dark h2 {
  margin: 0 0 10px;
  font-size: 1.9rem;
}

.stage-card-dark p {
  margin: 0;
  color: rgba(255, 255, 255, 0.74);
  font-size: 14px;
}

.stage-card-light {
  right: 24px;
  bottom: 24px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  min-width: min(470px, calc(100% - 48px));
  background: rgba(255, 255, 255, 0.88);
  border: 1px solid rgba(255, 255, 255, 0.32);
  box-shadow: 0 18px 50px var(--accent-glow);
}

.stage-card-light span {
  display: block;
  margin-bottom: 8px;
  color: var(--muted);
  font-size: 12px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.stage-card-light strong {
  font-size: 17px;
}

.anchor-nav,
.category-grid,
.feature-grid,
.support-trade,
.footer-top,
.footer-columns,
.map-grid,
.assortment-grid {
  display: grid;
}

.anchor-nav {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin-top: 10px;
}

.anchor-nav a {
  padding: 18px 22px;
  border: 1px solid var(--line);
  border-radius: 22px;
  background: var(--white);
  box-shadow: 0 18px 50px rgba(15, 17, 20, 0.04);
}

.anchor-nav a:hover {
  border-color: rgba(45, 103, 179, 0.24);
  box-shadow: 0 18px 50px rgba(45, 103, 179, 0.12);
}

.anchor-nav span {
  display: block;
  margin-bottom: 6px;
  color: var(--muted);
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.anchor-nav strong {
  font-size: 15px;
}

.category-overview,
.feature-band,
.spotlight,
.site-map-band,
.assortment-band,
.support-trade {
  margin-top: 92px;
}

.section-head {
  display: grid;
  gap: 12px;
  max-width: 800px;
  margin-bottom: 28px;
}

.section-head-tight {
  max-width: 700px;
}

.section-head h2,
.spotlight-copy h2,
.support-card h2,
.trade-card h2 {
  font-size: 4.2rem;
  line-height: 0.92;
}

.category-grid {
  grid-template-columns: 1.2fr 1fr 1fr;
  gap: 18px;
}

.category-card,
.feature-tile,
.support-card,
.trade-card {
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  background: var(--white);
  box-shadow: var(--shadow-soft);
}

.category-card {
  min-height: 520px;
  display: flex;
  flex-direction: column;
}

.category-card-wide {
  position: relative;
  justify-content: space-between;
  background:
    linear-gradient(180deg, #ffffff 0%, #edf5ff 100%);
}

.category-card-wide img {
  align-self: center;
  width: 92%;
  max-width: 560px;
  object-fit: contain;
  padding: 0 12px 16px;
}

.category-card:not(.category-card-wide) img {
  width: 100%;
  height: 250px;
  object-fit: cover;
}

.card-copy,
.feature-copy,
.support-card,
.trade-card {
  padding: 26px;
}

.card-copy h3,
.feature-copy h3,
.map-grid h3,
.footer-columns h3,
.footer-brand h3 {
  margin: 0 0 10px;
  font-size: 1.6rem;
}

.card-copy p,
.feature-copy p,
.map-grid p,
.support-card p,
.trade-card p {
  margin: 0;
  color: var(--muted);
  font-size: 14px;
}

.inline-link {
  display: inline-block;
  margin-top: 16px;
  font-weight: 700;
  color: var(--accent);
}

.inline-link-light {
  color: rgba(255, 255, 255, 0.92);
}

.feature-grid {
  grid-template-columns: 1.2fr 1fr 1fr;
  gap: 18px;
}

.feature-tile {
  min-height: 360px;
}

.feature-tile-primary {
  position: relative;
  background:
    linear-gradient(145deg, #111317 0%, #1f2a39 100%);
  color: var(--white);
}

.feature-tile-primary img {
  position: absolute;
  right: -8%;
  bottom: 0;
  width: 58%;
  max-width: 360px;
  filter: drop-shadow(0 18px 40px rgba(0, 0, 0, 0.32));
}

.feature-tile-primary .feature-copy {
  position: relative;
  z-index: 1;
  max-width: 62%;
}

.feature-tile-primary .feature-copy p {
  color: rgba(255, 255, 255, 0.78);
}

.feature-tile:not(.feature-tile-primary) {
  display: flex;
  align-items: flex-end;
  background:
    linear-gradient(180deg, #f8fbff 0%, #edf4fb 100%);
}

.lifestyle-band {
  margin-top: 92px;
}

.lifestyle-grid {
  display: grid;
  grid-template-columns: 1.2fr 1fr 1fr;
  gap: 18px;
}

.lifestyle-card {
  position: relative;
  min-height: 420px;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  background: var(--white);
  box-shadow: var(--shadow-soft);
}

.lifestyle-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.lifestyle-card:nth-child(2) img {
  object-fit: contain;
  background: linear-gradient(180deg, #f8fbff 0%, #edf4fb 100%);
  padding: 28px;
}

.lifestyle-card::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(10, 14, 20, 0.02) 26%, rgba(10, 14, 20, 0.72) 100%);
}

.lifestyle-card-large {
  min-height: 520px;
}

.lifestyle-copy {
  position: absolute;
  z-index: 1;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 24px;
  color: var(--white);
}

.lifestyle-copy h3 {
  margin: 0 0 8px;
  font-size: 1.5rem;
}

.lifestyle-copy p {
  margin: 0;
  color: rgba(255, 255, 255, 0.8);
  font-size: 14px;
}

.spotlight {
  display: grid;
  grid-template-columns: 0.96fr 1.04fr;
  gap: 24px;
  padding: 0;
}

.spotlight-copy {
  padding: 26px 8px 26px 0;
}

.spotlight-copy p {
  max-width: 560px;
  margin: 18px 0 0;
  color: var(--muted);
  font-size: 15px;
}

.spotlight-visual {
  margin-top: 28px;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 24px;
  box-shadow: 0 20px 60px rgba(23, 77, 145, 0.12);
}

.spotlight-visual img {
  width: 100%;
  height: 320px;
  object-fit: cover;
}

.pill-list {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  padding: 0;
  margin: 28px 0 0;
  list-style: none;
}

.pill-list li {
  padding: 12px 16px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: var(--white);
  font-size: 13px;
  font-weight: 600;
}

.spotlight-range-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.spotlight-range-grid article {
  min-height: 210px;
  padding: 22px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--white);
}

.spotlight-range-grid span {
  color: #4d6f98;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.spotlight-range-grid h4 {
  margin: 12px 0 0;
  font-size: 1.35rem;
  line-height: 1.18;
}

.spotlight-range-grid p {
  margin: 14px 0 0;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.6;
}

.spec-panel {
  padding: 24px;
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  background: var(--white);
  box-shadow: var(--shadow-soft);
}

.spec-top {
  margin-bottom: 18px;
}

.spec-top h3 {
  margin: 0;
  font-size: 1.7rem;
}

.table-wrap {
  overflow-x: auto;
}

table {
  width: 100%;
  min-width: 720px;
  border-collapse: collapse;
}

th,
td {
  padding: 18px 14px;
  border-bottom: 1px solid var(--line);
  text-align: left;
}

th {
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

td {
  font-size: 14px;
}

.site-map-band {
  padding: 36px;
  border: 1px solid var(--line);
  border-radius: var(--radius-xl);
  background: linear-gradient(180deg, #f8fbff 0%, #eef4fb 100%);
}

.map-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
}

.map-grid article {
  padding: 20px;
  border-radius: var(--radius-md);
  background: var(--white);
  border: 1px solid rgba(15, 17, 20, 0.05);
}

.assortment-band {
  padding: 36px;
  border: 1px solid var(--line);
  border-radius: var(--radius-xl);
  background: var(--white);
  box-shadow: var(--shadow-soft);
}

.assortment-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.assortment-grid article {
  min-height: 210px;
  padding: 24px;
  border: 1px solid var(--line);
  border-radius: var(--radius-md);
  background: linear-gradient(180deg, #ffffff 0%, #f7faff 100%);
}

.assortment-grid h3 {
  margin: 0;
  font-size: 18px;
}

.assortment-grid p {
  margin: 16px 0 0;
  color: var(--muted);
  font-size: 14px;
}

.support-trade {
  grid-template-columns: 1fr 1fr;
  gap: 18px;
}

.support-card,
.trade-card {
  min-height: 100%;
}

.support-card ul {
  display: grid;
  gap: 12px;
  padding: 0;
  margin: 24px 0 0;
  list-style: none;
}

.support-card li {
  padding: 14px 16px;
  border-radius: 14px;
  background: var(--bg-soft);
  font-size: 14px;
  font-weight: 600;
}

.trade-card {
  background: linear-gradient(145deg, #101318 0%, #1e3252 100%);
  color: var(--white);
}

.trade-card p {
  color: rgba(255, 255, 255, 0.78);
}

.trade-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 24px;
}

.trade-card .button-secondary {
  color: var(--white);
  border-color: rgba(255, 255, 255, 0.18);
  background: rgba(255, 255, 255, 0.06);
}

.site-footer {
  margin-top: 92px;
  margin-bottom: 36px;
  padding: 36px;
  border-radius: var(--radius-xl);
  background: linear-gradient(145deg, #0f1217 0%, #132742 100%);
  color: var(--white);
  box-shadow: var(--shadow-deep);
}

.footer-top {
  grid-template-columns: 1.05fr 1fr;
  gap: 40px;
  padding-bottom: 28px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.footer-brand img {
  width: 150px;
  margin-bottom: 16px;
}

.footer-brand p {
  max-width: 420px;
  margin: 0;
  color: rgba(255, 255, 255, 0.66);
  font-size: 14px;
}

.footer-columns {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}

.footer-columns h3 {
  color: rgba(255, 255, 255, 0.92);
  font-size: 15px;
}

.footer-columns a {
  display: block;
  margin-bottom: 10px;
  color: rgba(255, 255, 255, 0.64);
  font-size: 14px;
}

.footer-bottom {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  padding-top: 18px;
}

.footer-bottom p {
  margin: 0;
  color: rgba(255, 255, 255, 0.46);
  font-size: 13px;
}

.subpage main {
  padding-bottom: 84px;
}

.page-hero {
  display: grid;
  grid-template-columns: 0.9fr 1.1fr;
  gap: 28px;
  align-items: stretch;
  margin-top: 44px;
  padding: 34px;
  border: 1px solid var(--line);
  border-radius: var(--radius-xl);
  background: linear-gradient(180deg, #ffffff 0%, #f4f8fd 100%);
  box-shadow: var(--shadow-soft);
}

.page-hero-dark {
  color: var(--white);
  background: linear-gradient(145deg, #101318 0%, #1d2f4d 100%);
}

.page-hero > div {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 520px;
}

.page-hero h1 {
  margin: 0;
  max-width: 13ch;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: clamp(2.8rem, 5vw, 5rem);
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0;
}

.page-hero p:not(.eyebrow) {
  max-width: 620px;
  margin: 24px 0 0;
  color: var(--muted);
  font-size: 18px;
  line-height: 1.7;
}

.page-hero-dark p:not(.eyebrow) {
  color: rgba(255, 255, 255, 0.74);
}

.page-hero img {
  width: 100%;
  height: 100%;
  min-height: 520px;
  object-fit: cover;
  border-radius: 24px;
}

.catalog-section {
  margin-top: 88px;
}

.catalog-grid,
.range-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.catalog-grid.compact {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.catalog-card,
.range-card {
  display: flex;
  flex-direction: column;
  min-height: 280px;
  padding: 24px;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: var(--radius-md);
  background: var(--white);
  box-shadow: var(--shadow-soft);
}

.catalog-card-lead {
  grid-row: span 2;
  min-height: 580px;
}

.catalog-card img,
.range-card img {
  width: calc(100% + 48px);
  max-width: none;
  height: 240px;
  margin: -24px -24px 22px;
  object-fit: cover;
  background: var(--bg-soft);
}

.catalog-card-lead img {
  height: 360px;
  object-fit: contain;
  padding: 26px;
}

.catalog-card span,
.range-card span,
.tag-cloud span,
.contact-list span {
  color: #4d6f98;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.catalog-card h3,
.range-card h3 {
  margin: 10px 0 0;
  font-size: 1.45rem;
}

.catalog-card p,
.range-card p,
.contact-panel p {
  margin: 16px 0 0;
  color: var(--muted);
  line-height: 1.65;
}

.range-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.range-card {
  min-height: 420px;
}

.range-card img {
  height: 230px;
  object-fit: contain;
  padding: 18px;
}

.portable-range-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.portable-range-grid .range-card {
  min-height: 390px;
  padding: 20px;
}

.portable-range-grid .range-card img {
  width: calc(100% + 40px);
  height: 190px;
  margin: -20px -20px 18px;
}

.portable-range-grid .range-card h3 {
  font-size: 1.08rem;
  letter-spacing: -0.03em;
}

.portable-range-grid .range-card p {
  font-size: 0.94rem;
}

.page-panel {
  margin-top: 28px;
}

.tag-cloud,
.contact-list {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.tag-cloud span,
.contact-list span {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: 0 18px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: var(--white);
}

.contact-panel {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 22px;
  margin-top: 88px;
  padding: 34px;
  border-radius: var(--radius-xl);
  background: var(--white);
  box-shadow: var(--shadow-soft);
}

.contact-panel h2 {
  margin: 0;
  font-size: 2.4rem;
}

.ac-hero {
  background: linear-gradient(180deg, #ffffff 0%, #eef5fb 100%);
}

.ac-hero h1 {
  max-width: 12ch;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: clamp(3.2rem, 6vw, 6.1rem);
  font-weight: 900;
  letter-spacing: 0;
}

.ac-page .section-head h2 {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: clamp(2.2rem, 4vw, 4.4rem);
  font-weight: 900;
  line-height: 1.02;
}

.ac-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 30px;
}

.ac-tabs {
  position: sticky;
  top: 76px;
  z-index: 30;
  display: flex;
  gap: 8px;
  margin-top: 22px;
  padding: 10px;
  overflow-x: auto;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 12px 38px rgba(15, 17, 20, 0.06);
  backdrop-filter: blur(18px);
}

.ac-tabs a {
  flex: 0 0 auto;
  min-height: 42px;
  padding: 12px 18px;
  border-radius: 6px;
  color: var(--muted);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.ac-tabs a:hover,
.ac-tabs a:focus-visible {
  color: var(--text);
  background: var(--bg-soft);
}

.series-section {
  margin-top: 88px;
}

.ac-series-block {
  scroll-margin-top: 150px;
  padding-top: 34px;
  margin-top: 34px;
  border-top: 1px solid var(--line);
}

#series,
#portable-models {
  scroll-margin-top: 150px;
}

.series-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 22px;
  margin-bottom: 22px;
}

.series-heading h3 {
  margin: 0;
  font-size: 2.15rem;
  line-height: 1.08;
}

.product-card-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.series-card-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.product-card-grid.two-up {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.portable-model-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.ac-product-card {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--white);
  box-shadow: 0 18px 55px rgba(15, 17, 20, 0.06);
}

.series-card {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  padding: 22px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--white);
  box-shadow: 0 18px 55px rgba(15, 17, 20, 0.06);
}

.series-card img {
  width: calc(100% + 44px);
  max-width: none;
  height: 260px;
  margin: -22px -22px 22px;
  object-fit: contain;
  padding: 18px;
  background: #fff;
  border-radius: 8px 8px 0 0;
}

.series-card > span {
  color: #4d6f98;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.series-card h4 {
  margin: 10px 0 0;
  font-size: 1.45rem;
  line-height: 1.16;
}

.series-card p {
  margin: 14px 0 0;
  color: var(--muted);
  line-height: 1.62;
}

.capacity-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 18px;
}

.capacity-list span {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 12px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: var(--bg-soft);
  color: var(--text);
  font-size: 12px;
  font-weight: 800;
}

.series-card dl {
  display: grid;
  gap: 0;
  margin: 18px 0 0;
}

.series-card dl div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 11px 0;
  border-top: 1px solid var(--line);
}

.series-card dt {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.series-card dd {
  margin: 0;
  font-size: 13px;
  font-weight: 800;
  text-align: right;
}

.ac-product-card img {
  width: calc(100% + 36px);
  max-width: none;
  height: 220px;
  margin: -18px -18px 18px;
  object-fit: cover;
  padding: 0;
  background: #f7fafc;
  border-radius: 8px 8px 0 0;
}

.ac-product-card h4 {
  margin: 0;
  font-size: 1.16rem;
  line-height: 1.2;
}

.ac-product-card p {
  margin: 8px 0 18px;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.55;
}

.ac-product-card dl {
  display: grid;
  gap: 0;
  margin: auto 0 0;
}

.ac-product-card dl div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 11px 0;
  border-top: 1px solid var(--line);
}

.ac-product-card dt {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.ac-product-card dd {
  margin: 0;
  font-size: 13px;
  font-weight: 800;
  text-align: right;
}

.portable-feature-band {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.portable-feature-band article {
  min-height: 210px;
  padding: 24px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--white);
  box-shadow: 0 18px 55px rgba(15, 17, 20, 0.06);
}

.portable-feature-band span {
  color: #4d6f98;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.portable-feature-band h3 {
  margin: 12px 0 0;
  font-size: 1.45rem;
}

.portable-feature-band p {
  margin: 14px 0 0;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.65;
}

.ac-support-band {
  display: grid;
  grid-template-columns: 0.95fr 1fr auto;
  align-items: center;
  gap: 28px;
  margin-top: 88px;
  padding: 28px;
  border: 1px solid rgba(18, 58, 116, 0.18);
  border-radius: 8px;
  background: linear-gradient(180deg, #ffffff 0%, #f1f7ff 100%);
}

.ac-support-band h2 {
  margin: 0;
  font-size: 2rem;
  line-height: 1.08;
}

.ac-support-band p:not(.eyebrow) {
  margin: 0;
  color: var(--muted);
  line-height: 1.65;
}

.product-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(360px, 0.92fr);
  gap: 28px;
  align-items: stretch;
  margin-top: 34px;
  padding: 0;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--white);
  box-shadow: 0 18px 55px rgba(15, 17, 20, 0.06);
}

.product-hero > * {
  min-width: 0;
}

.product-hero-dark {
  color: var(--text);
  background: var(--white);
}

.product-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 440px;
  padding: 54px 52px 54px 24px;
  min-width: 0;
}

.product-copy h1 {
  margin: 0;
  max-width: 13ch;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: clamp(2.35rem, 4vw, 4.2rem);
  font-weight: 900;
  line-height: 1.02;
  letter-spacing: 0;
  overflow-wrap: anywhere;
}

.product-lead {
  max-width: 540px;
  margin: 18px 0 0;
  color: var(--muted);
  font-size: 16px;
  line-height: 1.68;
  overflow-wrap: anywhere;
}

.product-hero-dark .product-lead {
  color: var(--muted);
}

.product-hero-dark .button-secondary {
  color: var(--text);
  border-color: var(--line-strong);
  background: var(--white);
}

.product-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 30px;
}

.product-visual {
  order: -1;
  display: grid;
  place-items: center;
  min-height: 440px;
  overflow: hidden;
  background: #fff;
}

.product-hero-dark .product-visual {
  background: #fff;
}

.product-visual img {
  width: 100%;
  height: 100%;
  max-height: none;
  object-fit: contain;
  padding: 24px;
}

.product-summary-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  margin-top: 18px;
}

.product-summary-grid article {
  min-height: 112px;
  padding: 22px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--white);
  box-shadow: 0 16px 45px rgba(15, 17, 20, 0.05);
}

.product-summary-grid span {
  color: #4d6f98;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.product-summary-grid strong {
  display: block;
  margin-top: 12px;
  color: var(--ink);
  font-size: 1.45rem;
}

.product-detail-grid {
  display: grid;
  grid-template-columns: 0.8fr 1.2fr;
  gap: 28px;
  margin-top: 64px;
}

.product-panel,
.spec-card {
  padding: 32px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--white);
  box-shadow: 0 18px 55px rgba(15, 17, 20, 0.06);
}

.product-panel h2,
.spec-card h2 {
  margin: 0;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: 2rem;
  font-weight: 900;
  line-height: 1.08;
}

.product-panel p:not(.eyebrow) {
  margin: 20px 0 0;
  color: var(--muted);
  line-height: 1.72;
}

.spec-card dl {
  display: grid;
  gap: 0;
  margin: 26px 0 0;
}

.spec-card dl div {
  display: grid;
  grid-template-columns: minmax(180px, 0.72fr) 1fr;
  gap: 20px;
  padding: 16px 0;
  border-top: 1px solid var(--line);
}

.spec-card dt {
  color: var(--muted);
  font-weight: 700;
}

.spec-card dd {
  margin: 0;
  color: var(--ink);
  font-weight: 800;
}

@media (max-width: 1180px) {
  .site-header,
  .hero,
  .anchor-nav,
  .category-grid,
  .feature-grid,
  .lifestyle-grid,
  .spotlight,
  .map-grid,
  .assortment-grid,
  .page-hero,
  .product-hero,
  .product-detail-grid,
  .catalog-grid,
  .range-grid,
  .product-card-grid,
  .product-card-grid.two-up,
  .series-card-grid,
  .portable-model-grid,
  .portable-feature-band,
  .ac-support-band,
  .product-summary-grid,
  .contact-panel,
  .support-trade,
  .footer-top,
  .footer-columns,
  .footer-bottom {
    grid-template-columns: 1fr;
  }

  .site-header {
    gap: 18px;
    grid-template-columns: 1fr auto;
  }

  .site-nav {
    display: none;
  }

  .language-toggle {
    display: none;
  }

  .home-hero-showcase {
    grid-template-columns: 1fr;
    gap: 28px;
    min-height: 0;
    padding: 56px 28px 42px;
  }

  .home-hero-copy {
    max-width: 760px;
  }

  .home-hero-copy h1 {
    max-width: 11ch;
  }

  .hero-outline-button {
    margin-top: 34px;
  }

  .home-hero-visual {
    min-height: 390px;
  }

  .hero-product-plate {
    left: 0;
    right: auto;
    width: 100%;
  }

  .hero-product-plate img {
    height: 390px;
  }

  .header-actions {
    justify-content: flex-end;
  }

  .header-link {
    display: none;
  }

  .hero h1 {
    font-size: 5.2rem;
  }

  .section-head h2,
  .spotlight-copy h2,
  .support-card h2,
  .trade-card h2 {
    font-size: 3.4rem;
  }

  .hero-stage {
    min-height: 660px;
  }

  .feature-tile-primary .feature-copy {
    max-width: 100%;
  }

  .feature-tile-primary img {
    right: 20px;
    width: 40%;
  }

  .page-hero > div,
  .page-hero img,
  .product-copy,
  .product-visual {
    min-height: 420px;
  }

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

  .product-copy {
    padding: 34px;
  }

  .page-hero h1 {
    font-size: 3.6rem;
  }

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

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

  .ac-tabs {
    top: 70px;
  }

  .series-heading {
    align-items: flex-start;
    flex-direction: column;
  }

  .product-card-grid,
  .product-card-grid.two-up,
  .series-card-grid,
  .portable-model-grid,
  .portable-feature-band,
  .ac-support-band {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 760px) {
  main,
  .site-header,
  .site-footer {
    width: 100%;
    padding-right: 18px;
    padding-left: 18px;
  }

  .site-nav,
  .header-actions,
  .hero-actions,
  .trade-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .menu-icon span {
    width: 34px;
    height: 3px;
  }

  .home-hero-showcase {
    padding: 44px 20px 30px;
  }

  .home-kicker {
    font-size: 2.15rem;
  }

  .home-hero-copy h1 {
    font-size: 3rem;
    letter-spacing: -0.05em;
  }

  .home-hero-copy p:not(.home-kicker) {
    font-size: 15px;
  }

  .hero-outline-button {
    min-width: 156px;
    min-height: 52px;
    margin-top: 26px;
    font-size: 16px;
  }

  .home-hero-visual {
    min-height: 270px;
  }

  .hero-product-plate {
    border-radius: 22px;
  }

  .hero-product-plate img {
    height: 270px;
  }

  .home-hero-dots {
    gap: 16px;
    margin-top: 22px;
    margin-bottom: 46px;
  }

  .home-hero-dots span {
    width: 42px;
    height: 5px;
  }

  .button,
  .header-link {
    width: 100%;
    text-align: center;
  }

  .hero-stage {
    min-height: 520px;
  }

  .stage-card-light {
    grid-template-columns: 1fr;
    min-width: 0;
  }

  .spotlight-copy,
  .site-map-band,
  .assortment-band,
  .site-footer,
  .support-card,
  .trade-card {
    padding-left: 22px;
    padding-right: 22px;
  }

  .spotlight {
    display: block;
    width: 100%;
    overflow: hidden;
  }

  .spotlight-range-grid {
    grid-template-columns: 1fr;
  }

  .spotlight-copy {
    width: 100%;
    padding-top: 0;
    padding-bottom: 0;
  }

  .pill-list li {
    max-width: 100%;
  }

  .table-wrap {
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .site-map-band {
    padding-top: 22px;
    padding-bottom: 22px;
  }

  .assortment-band {
    padding-top: 22px;
    padding-bottom: 22px;
  }

  .section-head h2,
  .spotlight-copy h2,
  .support-card h2,
  .trade-card h2 {
    font-size: 2.25rem;
    line-height: 1;
  }

  .hero h1 {
    font-size: 3.25rem;
    line-height: 0.96;
  }

  .hero-text {
    font-size: 15px;
  }

  .brand img {
    width: 118px;
  }

  .site-header {
    grid-template-columns: 1fr auto;
    padding: 12px 0;
  }

  .header-actions {
    display: none;
  }

  .header-actions .button {
    width: auto;
    max-width: 172px;
    min-height: 42px;
    padding: 0 16px;
    white-space: nowrap;
    font-size: 12px;
  }

  .stage-card-dark,
  .stage-card-light {
    left: 16px;
    right: 16px;
    width: auto;
    min-width: 0;
  }

  .stage-card-light {
    bottom: 16px;
  }

  .site-footer {
    padding: 24px;
  }

  .page-hero {
    width: 100%;
    max-width: 100%;
    padding: 22px;
  }

  .page-hero,
  .page-hero > div,
  .page-hero img,
  .catalog-card,
  .series-card,
  .ac-product-card,
  .product-panel,
  .spec-card {
    min-width: 0;
  }

  .page-hero > div,
  .page-hero img {
    min-height: 320px;
  }

  .page-hero h1 {
    font-size: 2.55rem;
    line-height: 1;
  }

  .page-hero p:not(.eyebrow) {
    max-width: 290px;
    font-size: 15px;
  }

  .ac-hero h1,
  .page-hero h1 {
    max-width: calc(100vw - 64px);
    font-size: 2.45rem;
  }

  .ac-page .section-head h2 {
    max-width: calc(100vw - 32px);
    font-size: 2rem;
  }

  .product-hero {
    padding: 22px;
  }

  .product-copy,
  .product-visual {
    min-height: 300px;
  }

  .product-copy {
    padding: 24px 0 0;
  }

  .product-copy h1 {
    max-width: 100%;
    font-size: 2rem;
  }

  .product-lead {
    max-width: 100%;
    font-size: 14px;
  }

  .product-visual {
    border-radius: 8px;
  }

  .product-visual img {
    width: 100%;
    max-height: none;
  }

  .product-lead {
    font-size: 15px;
  }

  .product-actions {
    flex-direction: column;
  }

  .ac-hero-actions {
    flex-direction: column;
  }

  .ac-tabs {
    position: static;
    display: grid;
    grid-template-columns: 1fr;
    margin-right: 0;
    margin-left: 0;
    overflow: visible;
    border-right: 0;
    border-left: 0;
    border-radius: 0;
  }

  .ac-tabs a {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 10px 14px;
    font-size: 12px;
    text-align: center;
  }

  .series-heading h3 {
    font-size: 1.65rem;
  }

  .product-card-grid,
  .product-card-grid.two-up,
  .series-card-grid,
  .portable-model-grid,
  .portable-feature-band,
  .ac-support-band {
    grid-template-columns: 1fr;
  }

  .ac-product-card img {
    height: 190px;
  }

  .series-card img {
    height: 210px;
  }

  .ac-support-band {
    padding: 22px;
  }

  .product-panel,
  .spec-card {
    padding: 22px;
  }

  .product-panel h2,
  .spec-card h2 {
    font-size: 1.9rem;
  }

  .spec-card dl div {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .catalog-card-lead {
    min-height: 0;
  }

  .catalog-card,
  .range-card {
    min-height: 0;
  }

  .range-grid,
  .portable-range-grid {
    grid-template-columns: 1fr;
  }

  .catalog-card img,
  .range-card img,
  .catalog-card-lead img {
    height: 210px;
  }

  .contact-panel {
    padding: 22px;
  }

  .contact-panel h2 {
    font-size: 1.8rem;
  }
}

/* Zollerz brand guidelines v04 - homepage only */
.brand-v04 {
  --v04-deep-teal: #063f46;
  --v04-abyss: #032b30;
  --v04-graphite: #1b2226;
  --v04-frost: #f4fbfa;
  --v04-ice: #dcebe8;
  --v04-steel: #7e99a0;
  --v04-cyan: #20d0c3;
  --v04-amber: #d6a64a;
  color: var(--v04-graphite);
  font-family: "Manrope", sans-serif;
  background: var(--v04-frost);
}

.brand-v04::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  background:
    linear-gradient(90deg, rgba(6, 63, 70, 0.035) 1px, transparent 1px),
    linear-gradient(180deg, rgba(6, 63, 70, 0.03) 1px, transparent 1px);
  background-size: 96px 96px;
}

.brand-v04 .site-header,
.brand-v04 .site-footer,
.brand-v04 main {
  width: min(calc(100% - 48px), 1520px);
}

.brand-v04 .site-header {
  position: sticky;
  top: 0;
  z-index: 60;
  grid-template-columns: auto 1fr auto;
  padding: 20px 28px;
  margin-top: 18px;
  border: 1px solid rgba(6, 63, 70, 0.18);
  background: rgba(244, 251, 250, 0.92);
  backdrop-filter: blur(18px);
}

.brand-v04 .brand img {
  width: 132px;
  filter: brightness(0) saturate(100%) invert(16%) sepia(29%) saturate(1490%) hue-rotate(142deg) brightness(91%) contrast(96%);
}

.brand-v04 .site-nav {
  gap: 38px;
}

.brand-v04 .site-nav a,
.brand-v04 .button,
.brand-v04 .v04-kicker,
.brand-v04 .v04-product-card p,
.brand-v04 .v04-spec-strip span,
.brand-v04 .v04-category-grid span {
  font-family: "Rajdhani", sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.brand-v04 .site-nav a {
  position: relative;
  color: rgba(27, 34, 38, 0.72);
  font-size: 15px;
  font-weight: 700;
}

.brand-v04 .site-nav a::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -12px;
  height: 2px;
  background: transparent;
}

.brand-v04 .site-nav a:hover {
  color: var(--v04-deep-teal);
}

.brand-v04 .site-nav a:hover::after {
  background: var(--v04-cyan);
}

.brand-v04 .button {
  min-height: 44px;
  padding: 0 20px;
  border-radius: 0;
  font-size: 13px;
  font-weight: 700;
  box-shadow: none;
}

.brand-v04 .button-primary {
  border: 1px solid var(--v04-abyss);
  color: #fff;
  background: var(--v04-abyss);
}

.brand-v04 .button-secondary {
  border: 1px solid rgba(6, 63, 70, 0.32);
  color: var(--v04-deep-teal);
  background: transparent;
}

.v04-main {
  display: grid;
  gap: 22px;
  margin-top: 22px;
}

.v04-hero,
.v04-selection,
.v04-principles,
.v04-categories,
.v04-support {
  position: relative;
  border: 1px solid rgba(6, 63, 70, 0.16);
  background: rgba(255, 255, 255, 0.72);
}

.v04-hero::after,
.v04-selection::after,
.v04-categories::after,
.v04-support::after {
  content: "";
  position: absolute;
  right: 26px;
  bottom: 24px;
  width: 120px;
  height: 72px;
  pointer-events: none;
  background:
    linear-gradient(var(--v04-cyan), var(--v04-cyan)) right 18px bottom 16px / 92px 2px no-repeat,
    linear-gradient(135deg, transparent 48%, var(--v04-cyan) 49%, var(--v04-cyan) 51%, transparent 52%) right 0 bottom 0 / 78px 58px no-repeat;
  opacity: 0.42;
}

.v04-hero {
  display: grid;
  grid-template-columns: minmax(0, 0.92fr) minmax(460px, 1.08fr);
  align-items: stretch;
  min-height: 570px;
  overflow: hidden;
}

.v04-hero-copy {
  padding: clamp(42px, 6vw, 86px);
  align-self: center;
}

.v04-kicker {
  margin: 0 0 18px;
  color: var(--v04-deep-teal);
  font-size: 15px;
  font-weight: 700;
}

.v04-hero h1,
.v04-section-head h2,
.v04-dark-panel h2,
.v04-support h2 {
  margin: 0;
  font-family: "Space Grotesk", sans-serif;
  font-weight: 400;
  letter-spacing: 0;
}

.v04-hero h1 {
  max-width: 13ch;
  font-size: clamp(3.2rem, 5.6vw, 6.7rem);
  line-height: 0.96;
}

.v04-hero-copy > p:not(.v04-kicker) {
  max-width: 610px;
  margin: 28px 0 0;
  color: rgba(27, 34, 38, 0.72);
  font-size: 18px;
  line-height: 1.65;
}

.v04-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 32px;
}

.v04-hero-visual {
  display: grid;
  place-items: center;
  min-height: 100%;
  padding: clamp(34px, 5vw, 82px);
  background:
    linear-gradient(90deg, transparent 0, transparent 82%, rgba(32, 208, 195, 0.36) 82%, rgba(32, 208, 195, 0.36) calc(82% + 2px), transparent calc(82% + 2px)),
    linear-gradient(180deg, rgba(220, 235, 232, 0.62), rgba(244, 251, 250, 0.86));
}

.v04-hero-visual img {
  width: min(100%, 760px);
  border: 1px solid rgba(6, 63, 70, 0.14);
  background: #fff;
}

.v04-selection,
.v04-categories,
.v04-support {
  padding: clamp(28px, 4vw, 54px);
}

.v04-section-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 28px;
  margin-bottom: 28px;
}

.v04-section-head h2 {
  max-width: 820px;
  font-size: clamp(2rem, 3vw, 4rem);
  line-height: 1.05;
}

.v04-text-link {
  color: var(--v04-deep-teal);
  font-family: "Rajdhani", sans-serif;
  font-size: 15px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.v04-product-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}

.v04-product-card {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 210px;
  gap: 20px;
  min-height: 178px;
  padding: 24px;
  border: 1px solid rgba(6, 63, 70, 0.16);
  background: rgba(255, 255, 255, 0.86);
}

.v04-product-card.is-active {
  border-color: var(--v04-cyan);
  box-shadow: inset 0 -3px 0 var(--v04-cyan);
}

.v04-product-card.is-active::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  width: 110px;
  height: 58px;
  background: linear-gradient(135deg, transparent 49%, var(--v04-cyan) 50%, transparent 51%);
}

.v04-product-card p {
  margin: 0 0 10px;
  color: var(--v04-deep-teal);
  font-size: 14px;
  font-weight: 700;
}

.v04-product-card h3 {
  margin: 0 0 12px;
  font-family: "Space Grotesk", sans-serif;
  font-size: 1.45rem;
  font-weight: 600;
  line-height: 1.1;
}

.v04-product-card span {
  display: block;
  color: rgba(27, 34, 38, 0.68);
  font-size: 14px;
  line-height: 1.55;
}

.v04-product-card img {
  align-self: center;
  justify-self: end;
  width: 100%;
  max-height: 130px;
  object-fit: contain;
}

.v04-spec-strip {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  margin-top: 22px;
  border: 1px solid rgba(6, 63, 70, 0.14);
  background: rgba(255, 255, 255, 0.88);
}

.v04-spec-strip article {
  min-height: 118px;
  padding: 22px;
  border-right: 1px solid rgba(6, 63, 70, 0.12);
}

.v04-spec-strip article:last-child {
  border-right: 0;
}

.v04-spec-strip span {
  display: block;
  color: var(--v04-steel);
  font-size: 13px;
  font-weight: 700;
}

.v04-spec-strip strong {
  display: block;
  margin-top: 10px;
  font-family: "Space Grotesk", sans-serif;
  font-size: 1.45rem;
  font-weight: 600;
}

.v04-spec-strip small {
  display: block;
  margin-top: 4px;
  color: rgba(27, 34, 38, 0.56);
  line-height: 1.35;
}

.v04-principles {
  display: grid;
  grid-template-columns: minmax(0, 0.82fr) minmax(0, 1.18fr);
}

.v04-dark-panel {
  padding: clamp(36px, 5vw, 72px);
  color: #fff;
  background: var(--v04-abyss);
}

.v04-dark-panel .v04-kicker {
  color: var(--v04-cyan);
}

.v04-dark-panel h2 {
  max-width: 12ch;
  font-size: clamp(2.3rem, 4vw, 5rem);
  line-height: 1.05;
}

.v04-dark-panel p:not(.v04-kicker) {
  max-width: 560px;
  margin: 28px 0 0;
  color: rgba(244, 251, 250, 0.74);
  font-size: 17px;
  line-height: 1.7;
}

.v04-principle-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.v04-principle-list article {
  min-height: 250px;
  padding: clamp(26px, 4vw, 48px);
  border-left: 1px solid rgba(6, 63, 70, 0.14);
  border-bottom: 1px solid rgba(6, 63, 70, 0.14);
  background: rgba(244, 251, 250, 0.72);
}

.v04-principle-list span {
  color: var(--v04-deep-teal);
  font-family: "Rajdhani", sans-serif;
  font-size: 1.55rem;
  font-weight: 700;
}

.v04-principle-list h3 {
  margin: 34px 0 12px;
  font-family: "Space Grotesk", sans-serif;
  font-size: 1.55rem;
  font-weight: 500;
}

.v04-principle-list p {
  max-width: 420px;
  margin: 0;
  color: rgba(27, 34, 38, 0.66);
  line-height: 1.65;
}

.v04-category-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border: 1px solid rgba(6, 63, 70, 0.14);
}

.v04-category-grid a {
  min-height: 210px;
  padding: 28px;
  border-right: 1px solid rgba(6, 63, 70, 0.14);
  background: rgba(255, 255, 255, 0.76);
}

.v04-category-grid a:last-child {
  border-right: 0;
}

.v04-category-grid span {
  color: var(--v04-cyan);
  font-size: 16px;
  font-weight: 700;
}

.v04-category-grid strong {
  display: block;
  margin-top: 40px;
  font-family: "Space Grotesk", sans-serif;
  font-size: 1.8rem;
  font-weight: 500;
}

.v04-category-grid small {
  display: block;
  margin-top: 14px;
  color: rgba(27, 34, 38, 0.62);
  font-size: 14px;
  line-height: 1.55;
}

.v04-support {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
  margin-bottom: 28px;
  background: transparent;
  border: 0;
  padding-left: 0;
  padding-right: 0;
}

.v04-support::after {
  display: none;
}

.v04-support article {
  min-height: 300px;
  padding: clamp(30px, 4vw, 52px);
  border: 1px solid rgba(6, 63, 70, 0.16);
  background: rgba(255, 255, 255, 0.78);
}

.v04-support h2 {
  max-width: 720px;
  margin-bottom: 34px;
  font-size: clamp(1.8rem, 2.8vw, 3.5rem);
  line-height: 1.08;
}

.brand-v04 .site-footer {
  margin-top: 0;
  border: 0;
  border-top: 1px solid rgba(244, 251, 250, 0.18);
  background: var(--v04-abyss);
}

.brand-v04 .footer-top,
.brand-v04 .footer-bottom {
  color: rgba(244, 251, 250, 0.78);
}

.brand-v04 .footer-brand img {
  filter: brightness(0) invert(1);
}

.brand-v04 .footer-columns h3 {
  color: var(--v04-cyan);
}

.brand-v04 .footer-columns a {
  color: rgba(244, 251, 250, 0.72);
}

@media (max-width: 1180px) {
  .v04-hero,
  .v04-principles,
  .v04-support {
    grid-template-columns: 1fr;
  }

  .v04-product-row,
  .v04-category-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .v04-spec-strip {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .brand-v04 .site-header,
  .brand-v04 .site-footer,
  .brand-v04 main {
    width: min(calc(100% - 24px), 1520px);
  }

  .brand-v04 .site-header {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    padding: 18px;
  }

  .brand-v04 .site-nav {
    order: 3;
    width: 100%;
    justify-content: flex-start;
    gap: 18px;
    overflow-x: auto;
  }

  .brand-v04 .header-actions {
    margin-left: auto;
  }

  .brand-v04 .header-actions .button {
    display: none;
  }

  .v04-hero {
    grid-template-columns: 1fr;
    min-height: 0;
  }

  .v04-hero-copy {
    padding: 34px 24px;
  }

  .v04-hero h1 {
    font-size: clamp(3rem, 13vw, 4.6rem);
  }

  .v04-hero-visual {
    min-height: 260px;
    padding: 22px;
  }

  .v04-selection,
  .v04-categories {
    padding: 28px 20px;
  }

  .v04-section-head {
    display: grid;
  }

  .v04-product-row,
  .v04-spec-strip,
  .v04-principle-list,
  .v04-category-grid,
  .v04-support {
    grid-template-columns: 1fr;
  }

  .v04-product-card {
    grid-template-columns: 1fr;
  }

  .v04-product-card img {
    justify-self: start;
    max-width: 240px;
  }

  .v04-spec-strip article,
  .v04-category-grid a {
    border-right: 0;
    border-bottom: 1px solid rgba(6, 63, 70, 0.12);
  }
}

/* Homepage Variant A: broad consumer technology homepage */
.home-variant-a {
  --home-a-abyss: #032b30;
  --home-a-teal: #063f46;
  --home-a-graphite: #1b2226;
  --home-a-frost: #f4fbfa;
  --home-a-ice: #dcebe8;
  --home-a-steel: #7e99a0;
  --home-a-cyan: #20d0c3;
  margin: 0;
  color: var(--home-a-graphite);
  background: #f7fbfa;
  font-family: "Manrope", Arial, sans-serif;
}

.home-variant-a a {
  color: inherit;
  text-decoration: none;
}

.home-a-header {
  position: sticky;
  top: 0;
  z-index: 20;
  display: grid;
  grid-template-columns: 230px 1fr auto;
  align-items: center;
  gap: 28px;
  height: 76px;
  padding: 0 32px;
  border-bottom: 1px solid rgba(3, 43, 48, 0.12);
  background: rgba(255, 255, 255, 0.94);
  backdrop-filter: blur(18px);
}

.home-a-logo img {
  width: 170px;
  height: auto;
  display: block;
}

.home-a-nav,
.home-a-tools {
  display: flex;
  align-items: center;
  gap: clamp(22px, 3vw, 54px);
}

.home-a-nav {
  justify-content: center;
}

.home-a-nav a,
.home-a-tools a,
.home-a-section-label,
.home-a-category-card strong,
.home-a-feature-copy p,
.home-a-display-panel p,
.home-a-paths article p,
.home-a-support-band p,
.home-a-footer strong {
  font-family: "Rajdhani", sans-serif;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.home-a-nav a,
.home-a-tools a {
  color: var(--home-a-graphite);
  font-size: 13px;
}

.home-a-icon {
  position: relative;
  width: 18px;
  height: 18px;
  font-size: 0;
  line-height: 1;
}

.home-a-icon::before {
  content: "";
  position: absolute;
  left: 2px;
  top: 2px;
  width: 8px;
  height: 8px;
  border: 2px solid currentColor;
  border-radius: 50%;
}

.home-a-icon::after {
  content: "";
  position: absolute;
  left: 11px;
  top: 11px;
  width: 7px;
  height: 2px;
  background: currentColor;
  transform: rotate(45deg);
}

.home-a-region::before {
  content: "";
  display: inline-block;
  width: 13px;
  height: 13px;
  margin-right: 8px;
  vertical-align: -2px;
  border: 1px solid currentColor;
  border-radius: 50%;
}

.home-a-region::after {
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  margin-left: 8px;
  border-right: 1px solid currentColor;
  border-bottom: 1px solid currentColor;
  transform: rotate(45deg) translateY(-3px);
}

.home-a-compare {
  padding: 13px 18px;
  border: 1px solid rgba(6, 63, 70, 0.42);
  background: rgba(244, 251, 250, 0.68);
}

.home-a-hero {
  position: relative;
  min-height: 620px;
  overflow: hidden;
  background: #e8eeec;
}

.home-a-hero-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.home-a-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(3, 43, 48, 0.68) 0%, rgba(3, 43, 48, 0.38) 27%, rgba(3, 43, 48, 0.05) 62%, rgba(3, 43, 48, 0) 100%),
    linear-gradient(0deg, rgba(3, 43, 48, 0.12), rgba(3, 43, 48, 0));
}

.home-a-hero-copy {
  position: relative;
  z-index: 2;
  max-width: 620px;
  padding: 116px 0 0 76px;
  color: #fff;
}

.home-a-hero-copy p {
  margin: 0 0 28px;
  color: var(--home-a-cyan);
  font-family: "Rajdhani", sans-serif;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.home-a-hero-copy h1,
.home-a-feature-copy h2,
.home-a-display-panel h2,
.home-a-support-band h2 {
  font-family: "Space Grotesk", sans-serif;
  letter-spacing: 0;
}

.home-a-hero-copy h1 {
  max-width: 470px;
  margin: 0 0 26px;
  font-size: clamp(3.8rem, 5.2vw, 5.7rem);
  font-weight: 600;
  line-height: 0.98;
}

.home-a-hero-copy span {
  display: block;
  max-width: 380px;
  color: rgba(255, 255, 255, 0.88);
  font-size: 19px;
  line-height: 1.6;
}

.home-a-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin-top: 30px;
}

.home-a-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
  padding: 0 24px;
  border: 1px solid rgba(6, 63, 70, 0.36);
  font-family: "Rajdhani", sans-serif;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.home-a-button::after,
.home-a-text-link::after,
.home-a-paths article a::after,
.home-a-category-card::after {
  content: ">";
  margin-left: 18px;
  font-family: "Manrope", sans-serif;
  font-weight: 800;
}

.home-a-button-dark {
  color: #fff;
  border-color: var(--home-a-teal);
  background: var(--home-a-teal);
}

.home-a-button-light {
  color: var(--home-a-teal);
  border-color: rgba(255, 255, 255, 0.92);
  background: rgba(255, 255, 255, 0.94);
}

.home-a-hero .home-a-button-light {
  color: #163f44;
  border-color: rgba(255, 255, 255, 0.98);
  background: rgba(255, 255, 255, 0.98);
  box-shadow: 0 18px 36px rgba(3, 43, 48, 0.12);
}

.home-a-category-strip {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 14px;
  padding: 22px 32px 20px;
  background: #fff;
}

.home-a-category-card {
  position: relative;
  min-height: 315px;
  padding: 18px 24px 30px;
  border: 1px solid rgba(3, 43, 48, 0.12);
  background:
    linear-gradient(135deg, #fff 0%, var(--home-a-frost) 100%);
}

.home-a-category-card img {
  display: block;
  width: 100%;
  height: 166px;
  object-fit: contain;
  margin: 0 auto 26px;
  mix-blend-mode: multiply;
}

.home-a-category-card strong {
  display: block;
  color: var(--home-a-teal);
  font-size: 16px;
}

.home-a-category-card span {
  display: block;
  max-width: 190px;
  margin-top: 14px;
  color: rgba(27, 34, 38, 0.72);
  font-size: 15px;
  line-height: 1.5;
}

.home-a-category-card::after {
  position: absolute;
  right: 24px;
  bottom: 30px;
  color: var(--home-a-teal);
  font-size: 18px;
}

.home-a-category-support {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.home-a-line-icon {
  width: 100%;
  margin-bottom: 52px;
  color: var(--home-a-teal);
  font-size: 72px;
  line-height: 1;
  text-align: center;
}

.home-a-feature-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  padding: 0 32px 14px;
}

.home-a-feature-card,
.home-a-display-panel,
.home-a-facts,
.home-a-paths {
  border: 1px solid rgba(3, 43, 48, 0.12);
  background:
    radial-gradient(circle at 100% 0%, rgba(32, 208, 195, 0.12), transparent 36%),
    linear-gradient(135deg, #fff 0%, #eef8f6 100%);
}

.home-a-feature-card {
  position: relative;
  min-height: 498px;
  padding: 38px 32px 28px;
  overflow: hidden;
}

.home-a-feature-copy {
  position: relative;
  z-index: 2;
  max-width: 330px;
}

.home-a-feature-copy p,
.home-a-display-panel p,
.home-a-section-label,
.home-a-paths article p,
.home-a-support-band p {
  margin: 0;
  color: var(--home-a-teal);
  font-size: 15px;
}

.home-a-feature-copy h2,
.home-a-display-panel h2 {
  margin: 18px 0 18px;
  color: #12171a;
  font-size: clamp(2.1rem, 3vw, 3.25rem);
  font-weight: 600;
  line-height: 1.02;
}

.home-a-feature-copy span,
.home-a-display-panel > div > span {
  display: block;
  max-width: 315px;
  color: rgba(27, 34, 38, 0.68);
  font-size: 16px;
  line-height: 1.55;
}

.home-a-feature-card > img {
  position: absolute;
  right: 20px;
  bottom: 150px;
  width: min(48%, 390px);
  height: 220px;
  object-fit: contain;
  mix-blend-mode: multiply;
}

.home-a-feature-card > img.home-a-tall-product {
  right: 0;
  bottom: 110px;
  width: min(52%, 420px);
  height: 330px;
}

.home-a-spec-row {
  position: absolute;
  left: 32px;
  right: 32px;
  bottom: 72px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-top: 1px solid rgba(3, 43, 48, 0.22);
  border-bottom: 1px solid rgba(3, 43, 48, 0.22);
}

.home-a-spec-row div {
  position: relative;
  min-height: 72px;
  padding: 17px 18px 17px 58px;
  border-right: 1px solid rgba(3, 43, 48, 0.16);
}

.home-a-spec-row div:last-child {
  border-right: 0;
}

.home-a-spec-row small {
  display: block;
  color: var(--home-a-teal);
  font-family: "Rajdhani", sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.home-a-spec-row strong {
  display: block;
  margin-top: 6px;
  font-size: 15px;
}

.home-a-spec-row div::before {
  content: "";
  position: absolute;
  left: 18px;
  top: 22px;
  width: 24px;
  height: 24px;
  background: var(--home-a-teal);
  opacity: 0.95;
  -webkit-mask: var(--spec-icon) center / contain no-repeat;
  mask: var(--spec-icon) center / contain no-repeat;
}

.home-a-spec-row div[data-icon="snow"] {
  --spec-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 2v20M4.9 4.9l14.2 14.2M2 12h20M4.9 19.1 19.1 4.9M8 2.9l4 3.7 4-3.7M8 21.1l4-3.7 4 3.7M2.9 8l3.7 4-3.7 4M21.1 8l-3.7 4 3.7 4'/%3E%3C/svg%3E");
}

.home-a-spec-row div[data-icon="sun"] {
  --spec-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Cpath d='M12 2v2M12 20v2M4.93 4.93l1.41 1.41M17.66 17.66l1.41 1.41M2 12h2M20 12h2M4.93 19.07l1.41-1.41M17.66 6.34l1.41-1.41'/%3E%3C/svg%3E");
}

.home-a-spec-row div[data-icon="leaf"] {
  --spec-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M11 20A7 7 0 0 1 4 13c0-6 7-9 16-9-1 9-4 16-10 16Z'/%3E%3Cpath d='M4 20c4-6 8-9 16-16'/%3E%3C/svg%3E");
}

.home-a-spec-row div[data-icon="bolt"] {
  --spec-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M13 2 4 14h7l-1 8 10-13h-7l0-7Z'/%3E%3C/svg%3E");
}

.home-a-spec-row div[data-icon="capacity"] {
  --spec-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 3'/%3E%3C/svg%3E");
}

.home-a-spec-row div[data-icon="design"] {
  --spec-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m12 3 8 4.5v9L12 21l-8-4.5v-9L12 3Z'/%3E%3Cpath d='M12 12 4 7.5M12 12v9M12 12l8-4.5'/%3E%3C/svg%3E");
}

.home-a-text-link {
  position: absolute;
  left: 32px;
  bottom: 28px;
  color: var(--home-a-teal);
  font-family: "Rajdhani", sans-serif;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.home-a-display-panel {
  position: relative;
  display: grid;
  grid-template-columns: 0.55fr 0.9fr 220px;
  align-items: center;
  min-height: 350px;
  margin: 0 32px 22px;
  padding: 42px 32px;
  overflow: hidden;
}

.home-a-display-panel img {
  justify-self: center;
  width: min(92%, 540px);
  max-height: 270px;
  object-fit: contain;
  mix-blend-mode: multiply;
}

.home-a-display-panel aside {
  padding: 34px;
  color: #fff;
  background: var(--home-a-abyss);
}

.home-a-display-panel aside strong,
.home-a-display-panel aside span {
  display: block;
}

.home-a-display-panel aside strong {
  margin-top: 20px;
  font-size: 26px;
}

.home-a-display-panel aside strong:first-child {
  margin-top: 0;
}

.home-a-display-panel aside span {
  padding-bottom: 16px;
  color: rgba(244, 251, 250, 0.72);
  border-bottom: 1px solid rgba(244, 251, 250, 0.28);
  font-size: 13px;
}

.home-a-facts,
.home-a-paths {
  margin: 0 32px 22px;
  padding: 28px 30px;
  background: #fff;
}

.home-a-section-label {
  margin-bottom: 18px;
  color: var(--home-a-cyan);
}

.home-a-fact-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 18px;
}

.home-a-fact-grid article {
  min-height: 128px;
  padding: 22px 24px;
  border: 1px solid rgba(3, 43, 48, 0.13);
  background: rgba(244, 251, 250, 0.52);
}

.home-a-fact-icon {
  position: relative;
  display: block;
  width: 30px;
  height: 30px;
  margin-bottom: 16px;
  color: var(--home-a-teal);
  line-height: 1;
}

.home-a-fact-icon::before {
  content: "";
  position: absolute;
  inset: 2px;
  background: var(--home-a-teal);
  -webkit-mask: var(--fact-icon) center / contain no-repeat;
  mask: var(--fact-icon) center / contain no-repeat;
}

.icon-capacity { --fact-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 17 16-3 2-7L7 10 5 17Z'/%3E%3Cpath d='M5 17h16'/%3E%3C/svg%3E"); }
.icon-noise { --fact-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 5a10 10 0 1 0 10 10h-10V5Z'/%3E%3Cpath d='M15 5v10h10'/%3E%3C/svg%3E"); }
.icon-energy { --fact-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 3v6M15 21v6M3 15h6M21 15h6M6.5 6.5l4.2 4.2M19.3 19.3l4.2 4.2M6.5 23.5l4.2-4.2M19.3 10.7l4.2-4.2'/%3E%3C/svg%3E"); }
.icon-dimensions { --fact-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 8h14v14H8z'/%3E%3Cpath d='M5 8h1M5 22h1M8 5v1M22 5v1'/%3E%3C/svg%3E"); }
.icon-documents { --fact-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 6h14v18H8z'/%3E%3Cpath d='M11 11h8M11 15h8M11 19h8'/%3E%3C/svg%3E"); }
.icon-service { --fact-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 11 5 5M11 11l-5 5M18 14l6 4M18 18l6-4'/%3E%3C/svg%3E"); }

.home-a-fact-grid strong {
  display: block;
  color: var(--home-a-teal);
  font-family: "Rajdhani", sans-serif;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.home-a-fact-grid small {
  display: block;
  margin-top: 8px;
  color: rgba(27, 34, 38, 0.66);
  font-size: 13px;
  line-height: 1.5;
}

.home-a-path-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
}

.home-a-paths article {
  position: relative;
  display: grid;
  grid-template-rows: auto auto auto 1fr auto;
  min-height: 448px;
  padding: 0;
  border: 1px solid rgba(3, 43, 48, 0.14);
  background: #fff;
  overflow: hidden;
  transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}

.home-a-paths article:hover {
  transform: translateY(-2px);
  border-color: rgba(32, 208, 195, 0.72);
  box-shadow: 0 18px 42px rgba(3, 43, 48, 0.08);
}

.home-a-paths article h3 {
  min-height: 0;
  margin: 8px 28px 20px;
  color: rgba(27, 34, 38, 0.84);
  font-size: 18px;
  font-weight: 600;
  line-height: 1.35;
}

.home-a-paths article p {
  margin: 30px 28px 0;
}

.home-a-path-photo {
  position: relative;
  display: grid;
  place-items: center;
  height: 190px;
  margin: 0 28px 22px;
  background: var(--home-a-frost);
  overflow: hidden;
}

.home-a-path-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  mix-blend-mode: normal;
  transition: transform 220ms ease;
}

.home-a-paths article:hover .home-a-path-photo img {
  transform: scale(1.025);
}

.home-a-path-photo::after {
  content: "";
  position: absolute;
  inset: 0;
  border: 1px solid rgba(255, 255, 255, 0.42);
  box-shadow: inset 0 -44px 70px rgba(3, 43, 48, 0.12);
  pointer-events: none;
}

.home-a-paths ul {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
  margin: 0 28px 24px;
  padding: 18px 0 0;
  border-top: 1px solid rgba(3, 43, 48, 0.12);
  list-style: none;
  color: rgba(27, 34, 38, 0.72);
  font-size: 14px;
}

.home-a-paths li::before {
  content: "";
  display: inline-block;
  width: 18px;
  height: 18px;
  margin-right: 10px;
  background: var(--home-a-teal);
  opacity: 0.86;
  vertical-align: -4px;
  -webkit-mask: var(--path-icon) center / contain no-repeat;
  mask: var(--path-icon) center / contain no-repeat;
}

.home-a-paths li[data-icon="wall-ac"] {
  --path-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='6' width='16' height='7' rx='1.5'/%3E%3Cpath d='M5 15h12M7 13v2M15 13v2'/%3E%3C/svg%3E");
}

.home-a-paths li[data-icon="portable"] {
  --path-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='6' y='3' width='10' height='16' rx='2'/%3E%3Cpath d='M9 6h4M8 19v1M14 19v1'/%3E%3C/svg%3E");
}

.home-a-paths li[data-icon="appliance"] {
  --path-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='2.5' width='8' height='17' rx='1.5'/%3E%3Ccircle cx='16' cy='14' r='4'/%3E%3Cpath d='M7.5 6h3M13 14h7'/%3E%3C/svg%3E");
}

.home-a-paths li[data-icon="multi"] {
  --path-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='12' width='7' height='6' rx='1'/%3E%3Crect x='12' y='3' width='7' height='6' rx='1'/%3E%3Crect x='12' y='13' width='7' height='6' rx='1'/%3E%3Cpath d='M10 15h2M9 12l4-3M9 18l4 0'/%3E%3C/svg%3E");
}

.home-a-paths li[data-icon="display"] {
  --path-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='16' height='10' rx='1.5'/%3E%3Cpath d='M9 18h4M11 14v4'/%3E%3C/svg%3E");
}

.home-a-paths li[data-icon="project"] {
  --path-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 19V8l7-4 7 4v11'/%3E%3Cpath d='M8 19v-5h6v5M8 9h.01M11 9h.01M14 9h.01'/%3E%3C/svg%3E");
}

.home-a-paths li[data-icon="heat-pump"] {
  --path-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='16' height='12' rx='1.5'/%3E%3Ccircle cx='11' cy='11' r='3'/%3E%3Cpath d='M11 8v6M8 11h6'/%3E%3C/svg%3E");
}

.home-a-paths li[data-icon="slim"] {
  --path-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='8' y='3' width='6' height='16' rx='1.5'/%3E%3Cpath d='M10 6h2M10 16h2'/%3E%3C/svg%3E");
}

.home-a-paths article a {
  align-self: end;
  margin: 0 28px 28px;
  color: var(--home-a-teal);
  font-family: "Rajdhani", sans-serif;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.home-a-support-band {
  display: grid;
  grid-template-columns: 0.85fr 1.6fr 1fr;
  gap: 24px;
  align-items: stretch;
  padding: 44px 56px;
  color: #fff;
  background:
    radial-gradient(circle at 32% 10%, rgba(32, 208, 195, 0.22), transparent 35%),
    linear-gradient(115deg, var(--home-a-teal), var(--home-a-abyss));
}

.home-a-support-band p {
  color: var(--home-a-cyan);
}

.home-a-support-band h2 {
  margin: 12px 0 24px;
  font-size: 28px;
  font-weight: 500;
  line-height: 1.2;
}

.home-a-support-band .home-a-button-dark {
  min-height: 48px;
  border-color: rgba(32, 208, 195, 0.52);
  background: rgba(3, 43, 48, 0.28);
}

.home-a-support-items {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
}

.home-a-support-items article {
  display: grid;
  align-content: start;
  justify-items: center;
  gap: 12px;
  padding: 12px;
  text-align: center;
}

.home-a-support-items span {
  color: rgba(244, 251, 250, 0.9);
  font-size: 34px;
}

.home-a-support-items strong {
  color: #fff;
  font-family: "Rajdhani", sans-serif;
  font-size: 14px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.home-a-support-items small {
  color: rgba(244, 251, 250, 0.68);
  font-size: 12px;
  line-height: 1.5;
}

.home-a-trade {
  padding-left: 34px;
  border-left: 1px solid rgba(244, 251, 250, 0.28);
}

.home-a-trade .home-a-button-light {
  min-height: 48px;
  color: #fff;
  border-color: rgba(244, 251, 250, 0.36);
  background: transparent;
}

.home-a-footer {
  display: grid;
  grid-template-columns: 1.35fr repeat(4, 1fr);
  gap: 34px;
  padding: 46px 56px 28px;
  color: rgba(244, 251, 250, 0.72);
  background: #11191b;
}

.home-a-footer img {
  width: 172px;
  height: auto;
  display: block;
  margin-bottom: 22px;
}

.home-a-footer p {
  max-width: 230px;
  margin: 0;
  line-height: 1.6;
}

.home-a-footer nav {
  display: grid;
  align-content: start;
  gap: 9px;
}

.home-a-footer strong {
  margin-bottom: 8px;
  color: #fff;
  font-size: 13px;
}

.home-a-footer a {
  color: rgba(244, 251, 250, 0.68);
  font-size: 13px;
}

.footer-consent-settings {
  width: fit-content;
  min-height: 32px;
  padding: 0;
  color: rgba(244, 251, 250, 0.68);
  border: 0;
  background: transparent;
  font: inherit;
  font-size: 13px;
  text-align: left;
  cursor: pointer;
}

.footer-consent-settings:hover,
.footer-consent-settings:focus-visible {
  color: #ffffff;
}

.home-a-footer-bottom {
  grid-column: 1 / -1;
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  margin-top: 28px;
  padding-top: 24px;
  border-top: 1px solid rgba(244, 251, 250, 0.12);
  font-size: 12px;
}

.legal-main {
  padding-bottom: 96px;
}

.legal-hero {
  margin-top: 32px;
  padding: clamp(36px, 6vw, 72px);
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #e8f2f0;
}

.legal-hero h1 {
  max-width: 13ch;
  margin: 14px 0 18px;
  font-size: clamp(2.7rem, 6vw, 5.1rem);
  line-height: 0.98;
}

.legal-hero > p:not(.eyebrow) {
  max-width: 56ch;
  margin: 0;
  color: var(--muted);
  font-size: 17px;
  line-height: 1.75;
}

.legal-hero > span {
  display: block;
  margin-top: 26px;
  color: #547579;
  font-size: 12px;
}

.legal-article {
  width: min(100%, 820px);
  margin: 64px auto 0;
}

.legal-article h2 {
  margin: 44px 0 14px;
  font-size: clamp(1.5rem, 3vw, 2.1rem);
  line-height: 1.15;
}

.legal-article p {
  margin: 0 0 18px;
  color: var(--muted);
  font-size: 16px;
  line-height: 1.8;
}

.legal-article a,
.contact-panel h2 a {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  vertical-align: middle;
  color: #087f80;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 4px;
}

@media (max-width: 640px) {
  .legal-main {
    padding-bottom: 68px;
  }

  .legal-hero {
    margin-top: 20px;
    padding: 30px 24px;
  }

  .legal-article {
    margin-top: 44px;
  }

  .legal-article h2 {
    margin-top: 36px;
  }

  .footer-consent-settings {
    min-height: 44px;
  }
}

@media (max-width: 1120px) {
  .home-a-header {
    grid-template-columns: 1fr;
    height: auto;
    padding: 18px 24px;
  }

  .home-a-nav,
  .home-a-tools {
    justify-content: flex-start;
    gap: 22px;
    overflow-x: auto;
  }

  .home-a-category-strip,
  .home-a-feature-grid,
  .home-a-path-grid,
  .home-a-support-band,
  .home-a-footer {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .home-a-fact-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .home-a-display-panel {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .home-a-header {
    position: relative;
  }

  .home-a-logo img {
    width: 145px;
  }

  .home-a-tools {
    display: none;
  }

  .home-a-nav {
    display: grid;
    grid-template-columns: repeat(3, max-content);
    row-gap: 14px;
    overflow: visible;
  }

  .home-a-hero {
    min-height: 660px;
  }

  .home-a-hero-bg {
    object-position: 58% center;
  }

  .home-a-hero::after {
    background: linear-gradient(90deg, rgba(3, 43, 48, 0.82), rgba(3, 43, 48, 0.38));
  }

  .home-a-hero-copy {
    padding: 78px 28px 0;
  }

  .home-a-hero-copy h1 {
    font-size: clamp(3.1rem, 12vw, 4.1rem);
  }

  .home-a-button {
    width: 100%;
  }

  .home-a-category-strip,
  .home-a-feature-grid,
  .home-a-path-grid,
  .home-a-support-band,
  .home-a-footer,
  .home-a-fact-grid {
    grid-template-columns: 1fr;
  }

  .home-a-category-strip,
  .home-a-feature-grid {
    padding-left: 16px;
    padding-right: 16px;
  }

  .home-a-display-panel,
  .home-a-facts,
  .home-a-paths {
    margin-left: 16px;
    margin-right: 16px;
  }

  .home-a-display-panel {
    padding: 32px 22px;
  }

  .home-a-feature-card {
    min-height: 720px;
  }

  .home-a-feature-card > img,
  .home-a-feature-card > img.home-a-tall-product {
    left: 24px;
    right: 24px;
    bottom: 250px;
    width: calc(100% - 48px);
    height: 220px;
  }

  .home-a-feature-card > img.home-a-tall-product {
    bottom: 270px;
    height: 170px;
  }

  .home-a-spec-row {
    grid-template-columns: 1fr;
  }

  .home-a-spec-row div {
    min-height: 54px;
    padding: 12px 0 12px 42px;
    border-right: 0;
  }

  .home-a-spec-row div::before {
    left: 8px;
    top: 17px;
    width: 22px;
    height: 22px;
  }

  .home-a-spec-row small {
    font-size: 11px;
    line-height: 1.1;
  }

  .home-a-spec-row strong {
    font-size: 15px;
    line-height: 1.25;
  }

  .home-a-support-band,
  .home-a-footer {
    padding-left: 24px;
    padding-right: 24px;
  }

  .home-a-support-items {
    grid-template-columns: 1fr 1fr;
  }

  .home-a-trade {
    padding-left: 0;
    border-left: 0;
  }
}

/* Climate category page: D2 direction */
.climate-page .home-a-nav a.is-active {
  position: relative;
  color: var(--home-a-teal);
}

.climate-page .home-a-nav a.is-active::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -28px;
  height: 3px;
  background: var(--home-a-cyan);
}

.climate-main {
  background: #f7fbfa;
}

.climate-main a {
  color: inherit;
  text-decoration: none;
}

.climate-hero {
  position: relative;
  display: block;
  min-height: 486px;
  overflow: hidden;
  border-bottom: 1px solid rgba(3, 43, 48, 0.1);
  background: #f6fbfa;
}

.climate-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, #fff 0%, rgba(255,255,255,0.96) 34%, rgba(255,255,255,0.6) 49%, rgba(255,255,255,0) 68%);
  pointer-events: none;
  z-index: 1;
}

.climate-hero::after {
  content: "";
  position: absolute;
  right: -6%;
  top: 0;
  width: 22%;
  height: 100%;
  background:
    linear-gradient(90deg, rgba(3, 43, 48, 0.015), rgba(3, 43, 48, 0.08)),
    linear-gradient(145deg, transparent 0 36%, rgba(32, 208, 195, 0.05) 36% 100%);
  pointer-events: none;
  z-index: 1;
}

.climate-hero-copy {
  position: relative;
  z-index: 2;
  align-self: center;
  width: min(39%, 560px);
  padding: 44px 0 48px 60px;
}

.climate-kicker,
.climate-path-intro p,
.climate-series-card p {
  margin: 0;
  color: var(--home-a-cyan);
  font-family: "Rajdhani", sans-serif;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.climate-hero h1 {
  max-width: 610px;
  margin: 12px 0 16px;
  color: #10191d;
  font-family: "Space Grotesk", sans-serif;
  font-size: clamp(3.1rem, 4.2vw, 5rem);
  font-weight: 700;
  line-height: 1.02;
}

.climate-hero-copy > span {
  display: block;
  max-width: 420px;
  color: rgba(27, 34, 38, 0.68);
  font-size: 15px;
  line-height: 1.55;
}

.climate-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 28px;
}

.climate-action {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  min-width: 204px;
  min-height: 54px;
  padding: 0 22px 0 54px;
  border: 1px solid rgba(6, 63, 70, 0.34);
  color: var(--home-a-teal);
  background: rgba(255, 255, 255, 0.84);
  font-weight: 800;
}

.climate-action::before {
  content: "";
  position: absolute;
  left: 20px;
  top: 50%;
  width: 22px;
  height: 22px;
  background: currentColor;
  transform: translateY(-50%);
  -webkit-mask: var(--climate-action-icon) center / contain no-repeat;
  mask: var(--climate-action-icon) center / contain no-repeat;
}

.climate-action::after,
.climate-path-intro a::after,
.climate-section-head a::after,
.climate-family-card::after,
.climate-series-card::after,
.climate-support em::after {
  content: ">";
  margin-left: 18px;
  font-family: "Manrope", sans-serif;
  font-weight: 800;
}

.climate-action-dark {
  color: #fff !important;
  border-color: var(--home-a-teal);
  background: var(--home-a-teal);
}

.climate-action[data-icon="home"],
.icon-home {
  --climate-action-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m3 11 9-8 9 8'/%3E%3Cpath d='M5 10v10h14V10M10 20v-6h4v6'/%3E%3C/svg%3E");
}

.climate-action[data-icon="work"],
.icon-work {
  --climate-action-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='7' width='18' height='13' rx='2'/%3E%3Cpath d='M8 7V5h8v2M3 12h18'/%3E%3C/svg%3E");
}

.climate-hero-products {
  position: absolute;
  inset: 0;
  z-index: 0;
  min-height: 0;
  background: #f6fbfa;
  overflow: hidden;
}

.climate-hero-products img {
  position: absolute;
  right: 0;
  bottom: 0;
  display: block;
  width: 100%;
  max-width: none;
  height: 100%;
  min-height: 486px;
  object-fit: cover;
  object-position: 56% center;
}

.climate-series-card::after { display: none; }
.climate-series-grid .climate-series-product::before { display:none; }
.climate-series-card > div { min-width: 0; }
.climate-series-card .core-link { display:flex; justify-content:space-between; margin-top:20px; color:#063f46; }
.climate-series-card .climate-chips { margin-top:16px; }
.climate-series-card img { padding:18px; margin-bottom:18px; }
.portable-page .split-cat-breadcrumb { flex-wrap:wrap; white-space:normal; overflow:visible; gap:8px; }
.hp-options { border:0; padding:0; margin:28px 0; }
.hp-page .split-catalog-intro { padding-top:32px; padding-bottom:32px; margin-bottom:24px; min-height:0; }
.hp-page .split-cat-support { margin-top:36px; }
.hp-page .split-cat-support h2 { font-size:clamp(29px,3vw,43px); }
.hp-options legend { margin-bottom:12px; font-weight:600; }
.hp-options > div { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.hp-options button { min-height:48px; padding:12px; border:1px solid #bdd0d1; color:#063f46; background:#f4fbfa; font:inherit; font-weight:600; cursor:pointer; }
.hp-options button[aria-pressed="true"] { background:#063f46; color:#f4fbfa; }
.hp-options button:focus-visible { outline:3px solid #20d0c3; outline-offset:3px; }
.hp-chapter { max-width:1400px; margin:64px auto; padding:48px 32px; display:grid; grid-template-columns:1.2fr 1fr; gap:64px; border-top:1px solid #bdd0d1; }
.hp-chapter h2 { font-size:clamp(29px,3vw,43px); }
.hp-chapter p { max-width:55ch; line-height:1.65; }
.hp-facts > div { padding:20px 0; border-bottom:1px solid #bdd0d1; font-size:24px; font-weight:600; color:#063f46; }
.hp-page .hp-stage img { max-height:560px; width:100%; object-fit:contain; }
.hp-page .hp-card-image img { height:240px; max-width:100%; object-fit:contain; }
@media(max-width:980px) { .climate-series-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .hp-chapter { gap:28px; } }
@media(max-width:620px) { .climate-series-grid { grid-template-columns:1fr; } .hp-chapter { grid-template-columns:1fr; padding:32px 20px; margin:24px auto; } }

.climate-path,
.climate-series,
.climate-support {
  margin: 12px 32px 0;
}

.climate-path {
  display: grid;
  gap: 8px;
  border: 1px solid rgba(3, 43, 48, 0.12);
  background: #fff;
}

.climate-path-home {
  grid-template-columns: 236px repeat(4, minmax(0, 1fr));
}

.climate-path-pro {
  grid-template-columns: 236px repeat(3, minmax(0, 1fr));
}

.climate-path-intro {
  display: grid;
  align-content: start;
  gap: 12px;
  min-height: 158px;
  padding: 24px 22px;
  background:
    radial-gradient(circle at 100% 0%, rgba(32, 208, 195, 0.12), transparent 48%),
    linear-gradient(135deg, #fff, var(--home-a-frost));
}

.climate-path-intro-dark {
  color: #fff;
  background:
    radial-gradient(circle at 100% 0%, rgba(32, 208, 195, 0.18), transparent 48%),
    linear-gradient(135deg, var(--home-a-teal), var(--home-a-abyss));
}

.climate-path-intro-dark p,
.climate-path-intro-dark a,
.climate-path-intro-dark .climate-line-icon {
  color: var(--home-a-cyan);
}

.climate-path-intro-dark a {
  color: rgba(244, 251, 250, 0.94);
}

.climate-path-intro strong {
  max-width: 160px;
  color: rgba(27, 34, 38, 0.7);
  font-size: 14px;
  font-weight: 500;
  line-height: 1.45;
}

.climate-path-intro-dark strong {
  color: rgba(244, 251, 250, 0.86);
}

.climate-path-intro a,
.climate-section-head a {
  align-self: end;
  color: var(--home-a-teal);
  font-size: 13px;
  font-weight: 700;
}

.climate-path-intro.climate-path-intro-dark a {
  color: rgba(244, 251, 250, 0.94);
}

.climate-line-icon,
.climate-support-icon {
  display: block;
  width: 30px;
  height: 30px;
  background: currentColor;
  color: var(--home-a-teal);
  -webkit-mask: var(--climate-action-icon) center / contain no-repeat;
  mask: var(--climate-action-icon) center / contain no-repeat;
}

.climate-family-card {
  position: relative;
  display: flex;
  align-items: flex-end;
  min-height: 246px;
  padding: 20px 18px 16px;
  border: 1px solid rgba(3, 43, 48, 0.12);
  background: #102025;
  overflow: hidden;
}

.climate-family-card::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(180deg, rgba(5, 38, 43, 0.08), rgba(5, 38, 43, 0.72)),
    linear-gradient(90deg, rgba(5, 38, 43, 0.78), rgba(5, 38, 43, 0.1) 66%);
}

.climate-family-card > div {
  position: relative;
  z-index: 2;
}

.climate-family-card.is-featured {
  border-color: var(--home-a-cyan);
  box-shadow: inset 0 0 0 1px rgba(32, 208, 195, 0.3);
}

.climate-family-card h2 {
  margin: 0 0 9px;
  color: #fff;
  font-size: 17px;
  line-height: 1.15;
}

.climate-family-card p {
  max-width: 218px;
  margin: 0;
  color: rgba(255, 255, 255, 0.84);
  font-size: 13px;
  line-height: 1.45;
}

.climate-family-card img {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  max-width: none;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.climate-family-card::after,
.climate-series-card::after {
  position: absolute;
  z-index: 2;
  right: 15px;
  bottom: 18px;
  color: #fff;
}

.climate-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 18px;
}

.climate-chips span {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 0 12px;
  border: 1px solid rgba(6, 63, 70, 0.22);
  border-radius: 999px;
  color: var(--home-a-teal);
  background: rgba(255, 255, 255, 0.9);
  font-family: "Rajdhani", sans-serif;
  font-size: 12px;
  font-weight: 700;
}

.climate-project-card { grid-template-columns: 1fr 42%; }

.climate-series {
  padding: 18px 0 0;
}

.climate-section-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 12px;
}

.climate-section-head h2 {
  margin: 4px 0 0;
  color: #11191b;
  font-family: "Space Grotesk", sans-serif;
  font-size: 20px;
  line-height: 1.2;
}

.climate-series-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.climate-series-card {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  min-height: 150px;
  padding: 18px 18px 14px;
  border: 1px solid rgba(3, 43, 48, 0.13);
  background: #fff;
  overflow: hidden;
}

.climate-series-card h3 {
  margin: 8px 0 6px;
  color: #102025;
  font-size: 17px;
}

.climate-series-card > div > span {
  display: block;
  max-width: 36ch;
  color: rgba(27, 34, 38, 0.65);
  font-size: 13px;
  line-height: 1.4;
}

.climate-series-card img {
  align-self: center;
  justify-self: end;
  width: 100%;
  max-width: 100%;
  height: 190px;
  object-fit: contain;
  object-position: center;
}

.climate-support {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  margin-bottom: 0;
  border: 1px solid rgba(3, 43, 48, 0.12);
  background: #fff;
}

.climate-support a {
  display: grid;
  grid-template-columns: 46px 1fr;
  gap: 6px 14px;
  min-height: 112px;
  padding: 22px 22px;
  border-right: 1px solid rgba(3, 43, 48, 0.12);
}

.climate-support a:last-child {
  border-right: 0;
}

.climate-support-icon {
  grid-row: 1 / span 3;
}

.climate-support strong {
  color: #102025;
  font-size: 14px;
}

.climate-support small {
  color: rgba(27, 34, 38, 0.62);
  font-size: 12px;
  line-height: 1.45;
}

.climate-support em {
  color: var(--home-a-teal);
  font-size: 12px;
  font-style: normal;
  font-weight: 800;
}

.icon-doc { --climate-action-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 4h10l4 4v18H8z'/%3E%3Cpath d='M18 4v5h5M11 14h8M11 18h8M11 22h6'/%3E%3C/svg%3E"); }
.icon-shield { --climate-action-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 3 25 7v7c0 7-4.5 11-10 13C9.5 25 5 21 5 14V7l10-4Z'/%3E%3Cpath d='m10 15 3 3 7-7'/%3E%3C/svg%3E"); }
.icon-sheet { --climate-action-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 4h12l4 4v18H7z'/%3E%3Cpath d='M19 4v5h5M11 13h6M11 17h8M11 21h8M21 18l5 5'/%3E%3C/svg%3E"); }
.icon-tools { --climate-action-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 24 7-7M17 13l7-7M19 5l6 6M5 8l6 6M4 7l3-3 6 6-3 3Z'/%3E%3C/svg%3E"); }
.icon-headset { --climate-action-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 17v-2a10 10 0 0 1 20 0v2'/%3E%3Cpath d='M5 17h4v6H5zM21 17h4v6h-4zM18 25h-3'/%3E%3C/svg%3E"); }

@media (max-width: 1180px) {
  .climate-hero {
    display: block;
  }

  .climate-hero-copy {
    width: auto;
    padding-right: 32px;
  }

  .climate-hero-products {
    min-height: 360px;
  }

  .climate-hero-products img {
    right: 0;
    width: 122%;
    height: 100%;
    min-height: 360px;
    object-fit: cover;
    object-position: 60% center;
  }

  .climate-path-home,
  .climate-path-pro,
  .climate-series-grid,
  .climate-support {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .climate-path-intro {
    grid-column: 1 / -1;
  }

  .climate-support a:nth-child(2n) {
    border-right: 0;
  }
}

@media (max-width: 720px) {
  .climate-page .home-a-nav a.is-active::after {
    bottom: -7px;
  }

  .climate-hero {
    min-height: 0;
    display: flex;
    flex-direction: column;
  }

  .climate-hero-copy {
    padding: 52px 24px 22px;
  }

  .climate-hero h1 {
    font-size: 44px;
  }

  .climate-action {
    width: 100%;
  }

  .climate-hero-products {
    position: relative;
    inset: auto;
    min-height: 300px;
  }

  .climate-hero-products img {
    right: 0;
    width: 100%;
    height: 100%;
    min-height: 300px;
    object-fit: cover;
    object-position: 62% center;
  }

  .climate-path,
  .climate-series,
  .climate-support {
    margin-left: 16px;
    margin-right: 16px;
  }

  .climate-path-home,
  .climate-path-pro,
  .climate-series-grid,
  .climate-support {
    grid-template-columns: 1fr;
  }

  .climate-family-card,
  .climate-series-card {
    grid-template-columns: 1fr;
    min-height: 280px;
  }

  .climate-family-card img {
    height: 100%;
    margin-top: 0;
  }

  .climate-series-card img {
    width: 100%;
    height: 150px;
    margin-top: 14px;
  }

  .climate-support a,
  .climate-support a:nth-child(2n) {
    border-right: 0;
    border-bottom: 1px solid rgba(3, 43, 48, 0.12);
  }

  .climate-support a:last-child {
    border-bottom: 0;
  }
}

/* Final mobile guard for the FHT product page. Kept at the end so shared
   homepage/header rules cannot make the product layout wider than viewport. */
@media (max-width: 720px) {
  body.fht-product-page {
    width: 100%;
    max-width: 100vw;
    overflow-x: hidden;
  }

  body.fht-product-page .home-a-header {
    width: 100%;
    max-width: 100vw;
    grid-template-columns: minmax(0, 1fr);
    padding: 30px 24px 20px;
    overflow: hidden;
  }

  body.fht-product-page .home-a-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 18px 26px;
    width: 100%;
    max-width: calc(100vw - 48px);
    overflow: hidden;
  }

  body.fht-product-page .home-a-nav a {
    white-space: nowrap;
  }

  body.fht-product-page .fht-page {
    width: 100%;
    max-width: 100vw;
    padding: 0 20px 52px;
    overflow: hidden;
  }

  body.fht-product-page .fht-product-top {
    display: flex;
    flex-direction: column;
    gap: 22px;
    width: calc(100vw - 40px);
    max-width: calc(100vw - 40px);
    overflow: hidden;
  }

  body.fht-product-page .fht-product-title,
  body.fht-product-page .fht-product-tabs,
  body.fht-product-page .fht-gallery,
  body.fht-product-page .fht-config {
    width: calc(100vw - 40px);
    max-width: calc(100vw - 40px);
    min-width: 0;
  }

  body.fht-product-page .fht-product-title h1 {
    display: block;
    width: 100%;
    max-width: 100%;
    white-space: normal;
    overflow-wrap: break-word;
    word-break: normal;
    font-size: 27px;
    line-height: 1.12;
  }

  body.fht-product-page .fht-gallery-main {
    width: 100%;
    max-width: 100%;
    aspect-ratio: 1.05 / 1;
  }

  body.fht-product-page .fht-thumbs {
    display: flex;
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
  }

  body.fht-product-page .fht-thumbs button {
    flex: 0 0 86px;
  }

  body.fht-product-page .fht-config {
    box-sizing: border-box;
    padding: 30px 20px;
    overflow: hidden;
  }

  body.fht-product-page .fht-capacity {
    width: 100%;
    max-width: 100%;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 12px;
  }

  body.fht-product-page .fht-capacity button {
    width: 100%;
    max-width: 100%;
  }

  body.fht-product-page .fht-config dl div,
  body.fht-product-page .fht-specs dl div {
    grid-template-columns: 1fr;
  }

  body.fht-product-page .fht-config dd,
  body.fht-product-page .fht-specs dd {
    text-align: left;
  }

  body.fht-product-page .fht-highlight-grid,
  body.fht-product-page .fht-spec-tables,
  body.fht-product-page .fht-doc-grid,
  body.fht-product-page .fht-bottom-benefits {
    grid-template-columns: 1fr;
  }
}

/* Final navigation cascade: this remains last so older page media rules cannot win. */
.home-variant-a .home-a-header {
  grid-template-columns: minmax(170px, 220px) minmax(520px, 1fr) auto;
  gap: clamp(18px, 2.4vw, 40px);
  width: 100%;
  height: 76px;
  padding: 0 clamp(20px, 3vw, 48px);
}

.home-variant-a .home-a-logo {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  min-height: 44px;
}

.home-variant-a .home-a-logo img,
.home-variant-a .home-a-footer img {
  width: 158px;
  height: auto;
}

.home-variant-a .home-a-nav,
.home-variant-a .home-a-tools {
  display: flex;
  align-items: center;
  gap: clamp(14px, 2vw, 32px);
}

.home-variant-a .home-a-nav {
  justify-content: center;
}

.home-variant-a .home-a-nav a,
.home-variant-a .home-a-tools a {
  position: relative;
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  font-family: "Rajdhani", sans-serif;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0;
  text-transform: uppercase;
}

.home-variant-a .home-a-nav a.is-active::after,
.home-variant-a.climate-page .home-a-nav a.is-active::after {
  right: 0;
  bottom: 0;
  left: 0;
  height: 2px;
  background: #20d0c3;
}

.home-variant-a .mobile-nav-cta,
.home-variant-a .site-menu-toggle {
  display: none;
}

.home-variant-a .home-a-support-items article > span {
  display: none;
}

.home-variant-a .home-a-footer a {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  min-height: 32px;
}

@media (max-width: 1120px) {
  .home-variant-a .home-a-header {
    grid-template-columns: minmax(150px, 190px) minmax(0, 1fr);
    height: 72px;
    padding: 0 24px;
  }

  .home-variant-a .home-a-nav {
    grid-column: auto;
    justify-content: flex-end;
    gap: clamp(12px, 1.8vw, 24px);
    overflow: visible;
  }

  .home-variant-a .home-a-tools {
    display: none;
  }
}

@media (max-width: 980px) {
  .home-variant-a .home-a-header {
    position: sticky;
    grid-template-columns: minmax(150px, 1fr) auto;
  }

  .home-variant-a .site-menu-toggle {
    display: grid;
  }

  .home-variant-a .home-a-nav {
    position: absolute;
    top: 72px;
    right: 0;
    left: 0;
    display: grid;
    grid-template-columns: 1fr;
    justify-content: stretch;
    gap: 0;
    max-height: calc(100vh - 72px);
    padding: 12px 24px 24px;
    overflow-y: auto;
    border-bottom: 1px solid rgba(6, 63, 70, 0.16);
    background: #ffffff;
  }

  .has-js .home-variant-a .home-a-nav {
    display: none;
  }

  .has-js .home-variant-a .home-a-nav.is-open {
    display: grid;
  }

  .home-variant-a .home-a-nav a {
    min-height: 52px;
    border-bottom: 1px solid rgba(6, 63, 70, 0.1);
  }

  .home-variant-a .home-a-nav a::after {
    display: none;
  }

  .home-variant-a .mobile-nav-cta {
    display: inline-flex;
    margin-top: 14px;
    border-bottom: 1px solid rgba(6, 63, 70, 0.28);
  }
}

@media (max-width: 640px) {
  .home-variant-a .home-a-header {
    padding: 0 20px;
  }

  .home-variant-a .home-a-logo img {
    width: 142px;
  }

  .home-variant-a .home-a-footer a {
    min-height: 44px;
  }
}

/* Keep the mobile enquiry link out of desktop navigation. */
@media (min-width: 981px) {
  body.home-variant-a .home-a-nav > a.mobile-nav-cta { display: none !important; }
}
@media (max-width: 640px) {
  body.home-variant-a .home-a-footer { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 30px 24px; padding: 36px 20px; }
  body.home-variant-a .home-a-footer > div { grid-column: 1 / -1; }
  body.home-variant-a .home-a-footer nav { min-width: 0; gap: 4px; }
  body.home-variant-a .home-a-footer a { font-size: 12px; line-height: 1.5; }
  body.home-variant-a .home-a-footer-bottom { padding-top: 24px; margin-top: 8px; }
}

/* Product-detail interaction and typography normalization. */
body.home-variant-a *,
body.home-variant-a *::before,
body.home-variant-a *::after {
  letter-spacing: 0;
}

body.home-variant-a .home-a-nav > a {
  padding-right: 7px;
  padding-left: 7px;
}

body.fht-product-page .fht-breadcrumb a,
body.fht-product-page .fht-breadcrumb span,
body.fht-product-page .fht-breadcrumb strong,
body.fht-product-page .fht-product-tabs a {
  display: inline-flex;
  align-items: center;
  min-width: 44px;
  min-height: 44px;
}

body.fht-product-page .fht-gallery-arrow {
  width: 44px;
  height: 44px;
}

body.fht-product-page .fht-gallery-arrow::before {
  top: 17px;
}

body.fht-product-page .fht-gallery-prev::before {
  left: 19px;
}

body.fht-product-page .fht-gallery-next::before {
  left: 15px;
}

body.fht-product-page .fht-capacity button,
body.fht-product-page .fht-docs aside a {
  min-height: 44px;
  height: 44px;
}

body.fht-product-page .fht-highlight-grid a {
  right: 8px;
  bottom: 8px;
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
}

body.fht-product-page .fht-highlight-grid a::before {
  line-height: 1;
}

body.fht-product-page .fht-config,
body.fht-product-page .fht-highlight-grid article,
body.fht-product-page .fht-doc-panel,
body.fht-product-page .fht-docs aside,
body.fht-product-page .fht-bottom-benefits,
body.fht-product-page .fht-doc-grid a {
  border-radius: 6px;
}

body.fht-product-page .fht-capacity button,
body.fht-product-page .fht-button,
body.fht-product-page .fht-docs aside a {
  border-radius: 2px;
}

body.fht-product-page .fht-button-primary {
  background: #005d63;
}

body.home-page .home-a-text-link,
body.home-page .home-a-paths article > a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
}

/* Anti-AI quality pass 2026-08-31: restrained catalogue typography and surfaces. */
.home-variant-a,
.home-variant-a * {
  letter-spacing: 0;
}

.home-a-nav a,
.home-a-tools a,
.home-a-button,
.home-a-section-label,
.home-a-category-card strong,
.home-a-feature-copy p,
.home-a-display-panel p,
.home-a-paths article p,
.home-a-support-band p,
.home-a-footer strong,
.home-a-fact-grid strong,
.home-a-paths article a,
.home-a-text-link,
.legacy-page .eyebrow,
.legacy-page .catalog-card > span,
.legacy-page .range-card > span,
.legacy-page .product-summary-grid span,
.legacy-page .spec-card h2,
.climate-kicker,
.climate-path-intro p,
.climate-series-card p {
  font-family: "Manrope", sans-serif;
  letter-spacing: 0;
  text-transform: none;
}

.home-a-nav a,
.home-a-tools a {
  font-size: 13px;
  font-weight: 650;
}

.home-a-hero {
  min-height: 540px;
}

.home-a-hero-copy {
  max-width: 560px;
  padding: 82px 0 0 64px;
}

.home-a-hero-copy p {
  margin-bottom: 20px;
  font-family: "Manrope", sans-serif;
  font-size: 13px;
  font-weight: 650;
  text-transform: none;
}

.home-a-hero-copy h1 {
  max-width: 520px;
  margin-bottom: 22px;
  font-size: clamp(2.8rem, 4.25vw, 4.45rem);
  font-weight: 520;
  line-height: 1.02;
}

.home-a-hero-copy span {
  max-width: 440px;
  font-size: 17px;
  line-height: 1.55;
}

.home-a-actions {
  margin-top: 26px;
}

.home-a-button {
  min-height: 48px;
  padding: 0 20px;
  font-size: 13px;
  font-weight: 650;
}

.home-a-hero .home-a-button-light {
  box-shadow: none;
}

.home-a-category-strip {
  gap: 0;
  padding: 0 32px;
  border-bottom: 1px solid rgba(3, 43, 48, 0.12);
}

.home-a-category-card {
  min-height: 252px;
  padding: 20px 22px 26px;
  border-width: 0 1px 0 0;
  background: #fbfdfc;
}

.home-a-category-card:first-child {
  border-left: 1px solid rgba(3, 43, 48, 0.12);
}

.home-a-category-card img {
  height: 126px;
  margin-bottom: 20px;
}

.home-a-category-card strong {
  font-size: 14px;
  font-weight: 700;
}

.home-a-category-card span {
  max-width: 220px;
  margin-top: 8px;
  font-size: 13px;
}

.home-a-line-icon {
  margin-bottom: 34px;
  font-size: 52px;
}

.home-a-feature-card,
.home-a-display-panel,
.home-a-facts,
.home-a-paths {
  background: #fbfdfc;
}

.home-a-feature-card {
  min-height: 450px;
  padding-top: 32px;
}

.home-a-feature-copy h2,
.home-a-display-panel h2 {
  margin: 12px 0 14px;
  font-size: clamp(1.8rem, 2.35vw, 2.45rem);
  font-weight: 540;
  line-height: 1.08;
}

.home-a-feature-copy p,
.home-a-display-panel p,
.home-a-section-label,
.home-a-paths article p,
.home-a-support-band p {
  font-size: 13px;
  font-weight: 650;
}

.home-a-feature-card > img {
  bottom: 132px;
  height: 190px;
}

.home-a-display-panel {
  min-height: 320px;
  background: #fbfdfc;
}

.home-a-fact-grid {
  gap: 0;
  border: 1px solid rgba(3, 43, 48, 0.13);
}

.home-a-fact-grid article {
  min-height: 112px;
  padding: 18px 20px;
  border: 0;
  border-right: 1px solid rgba(3, 43, 48, 0.13);
  background: transparent;
}

.home-a-fact-grid article:last-child {
  border-right: 0;
}

.home-a-fact-icon {
  width: 24px;
  height: 24px;
  margin-bottom: 12px;
}

.home-a-path-grid {
  grid-template-columns: 1.12fr 1fr 1fr 1fr;
}

.home-a-paths article {
  min-height: 430px;
  transition: border-color 180ms cubic-bezier(0.2, 0.8, 0.2, 1);
}

.home-a-paths article:hover {
  transform: none;
  box-shadow: none;
}

.home-a-paths article h3 {
  font-size: 17px;
  font-weight: 560;
}

.home-a-paths article:hover .home-a-path-photo img {
  transform: none;
}

.home-a-support-band {
  padding-top: 38px;
  padding-bottom: 38px;
  background: #063f46;
}

.home-a-support-band h2 {
  margin-top: 9px;
  font-size: 24px;
  font-weight: 520;
}

.legacy-page .page-hero {
  grid-template-columns: minmax(0, 0.72fr) minmax(440px, 1.28fr);
}

.legacy-page .page-hero > div,
.legacy-page .page-hero img {
  min-height: 410px;
}

.legacy-page .page-hero h1,
.page-hero h1,
.ac-hero h1 {
  max-width: 18ch;
  font-family: "Space Grotesk", sans-serif;
  font-size: clamp(2.25rem, 3.45vw, 3.7rem);
  font-weight: 540;
  line-height: 1.06;
}

.legacy-page .page-hero p:not(.eyebrow),
.page-hero p:not(.eyebrow) {
  max-width: 58ch;
  font-size: 16px;
  line-height: 1.65;
}

.legacy-page .catalog-section,
.catalog-section {
  margin-top: 58px;
}

.section-head h2,
.ac-page .section-head h2 {
  font-family: "Space Grotesk", sans-serif;
  font-size: clamp(1.8rem, 2.8vw, 2.7rem);
  font-weight: 540;
  line-height: 1.08;
}

.legacy-page .catalog-card,
.legacy-page .range-card {
  transition: border-color 160ms cubic-bezier(0.2, 0.8, 0.2, 1);
}

.legacy-page .catalog-card:hover,
.legacy-page .range-card:hover {
  transform: none;
}

.legacy-page .product-copy h1,
.product-copy h1 {
  max-width: 18ch;
  font-family: "Space Grotesk", sans-serif;
  font-size: clamp(2rem, 3vw, 3.15rem);
  font-weight: 560;
  line-height: 1.08;
}

.climate-hero h1 {
  max-width: 520px;
  font-size: clamp(2.35rem, 3.5vw, 3.85rem);
  font-weight: 560;
  line-height: 1.06;
}

.climate-hero::after,
.climate-path-intro::after {
  display: none;
}

.climate-path-intro {
  background: #f4fbfa;
}

.climate-path-intro-dark {
  background: #063f46;
}

.legal-hero h1 {
  max-width: 18ch;
  font-size: clamp(2.2rem, 3.4vw, 3.6rem);
  font-weight: 540;
  line-height: 1.06;
}

.legacy-page .catalog-grid {
  grid-auto-flow: dense;
}

@media (min-width: 981px) {
  .legacy-page .catalog-grid.compact {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .legacy-page .catalog-card,
  .legacy-page .catalog-card-lead {
    grid-column: span 4;
    grid-row: auto;
    min-height: 430px;
  }

  .legacy-page .catalog-grid.compact .catalog-card,
  .legacy-page .catalog-grid.compact .catalog-card-lead {
    grid-column: auto;
  }

  .legacy-page .catalog-card img,
  .legacy-page .catalog-card-lead img {
    height: 238px;
    object-fit: contain;
    padding: 18px;
  }

  .legacy-page .catalog-grid.compact .catalog-card:not(:has(img)) {
    justify-content: center;
    background: #e8f3f1;
  }

  .legacy-page .catalog-grid.compact:not(:has(img)) .catalog-card {
    min-height: 220px;
  }
}

@media (min-width: 721px) and (max-width: 980px) {
  .legacy-page .catalog-grid.compact {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .legacy-page .catalog-grid.compact .catalog-card,
  .legacy-page .catalog-grid.compact .catalog-card-lead {
    grid-column: auto;
    grid-row: auto;
  }
}

.catalog-trade-row {
  display: grid;
  grid-template-columns: minmax(150px, 0.6fr) minmax(320px, 2fr) auto;
  align-items: center;
  gap: 28px;
  min-height: 118px;
  margin-top: 16px;
  padding: 24px 28px;
  border-top: 1px solid rgba(3, 43, 48, 0.18);
  border-bottom: 1px solid rgba(3, 43, 48, 0.18);
  color: var(--ink);
}

.catalog-trade-row > span,
.catalog-trade-row > strong {
  font-family: "Manrope", sans-serif;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0;
  text-transform: none;
}

.catalog-trade-row h3 {
  margin: 0 0 6px;
  font-family: "Space Grotesk", sans-serif;
  font-size: 1.25rem;
  font-weight: 560;
  line-height: 1.2;
}

.catalog-trade-row p {
  max-width: 58ch;
  margin: 0;
  color: var(--muted);
  line-height: 1.55;
}

.catalog-trade-row > strong {
  padding-right: 22px;
  background: linear-gradient(90deg, currentColor, currentColor) right 55% / 14px 1px no-repeat;
}

.legacy-page .catalog-card-text {
  background: #063f46;
  color: #ffffff;
}

.legacy-page .catalog-card-text > span,
.legacy-page .catalog-card-text h3,
.legacy-page .catalog-card-text p {
  color: #ffffff;
}

.legacy-page .catalog-card-text > span,
.legacy-page .catalog-card-text p {
  color: rgba(255, 255, 255, 0.72);
}

.legacy-page .catalog-card-text ul {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0;
  margin: auto 0 0;
  padding: 18px 0 0;
  border-top: 1px solid rgba(255, 255, 255, 0.22);
  list-style: none;
}

.legacy-page .catalog-card-text li {
  padding: 8px 10px 8px 0;
  font-family: "Manrope", sans-serif;
  font-size: 13px;
  font-weight: 650;
}

@media (max-width: 720px) {
  .home-a-hero {
    min-height: 570px;
  }

  .home-a-hero-copy {
    padding: 64px 24px 0;
  }

  .home-a-hero-copy h1 {
    max-width: 11ch;
    font-size: clamp(2.5rem, 10vw, 3.15rem);
  }

  .home-a-category-strip {
    padding-right: 16px;
    padding-left: 16px;
  }

  .home-a-category-card,
  .home-a-category-card:first-child {
    min-height: 0;
    border-width: 0 0 1px;
  }

  .home-a-feature-card {
    min-height: 620px;
  }

  .home-a-fact-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .home-a-fact-grid article,
  .home-a-fact-grid article:last-child {
    min-height: 124px;
    border-right: 1px solid rgba(3, 43, 48, 0.13);
    border-bottom: 1px solid rgba(3, 43, 48, 0.13);
  }

  .home-a-fact-grid article:nth-child(2n) {
    border-right: 0;
  }

  .home-a-fact-grid article:nth-last-child(-n + 2) {
    border-bottom: 0;
  }

  .catalog-trade-row {
    grid-template-columns: 1fr;
    gap: 12px;
    padding: 22px 4px;
  }

  .legacy-page .catalog-grid.compact {
    grid-template-columns: 1fr;
  }

  .legacy-page .catalog-grid.compact .catalog-card,
  .legacy-page .catalog-grid.compact .catalog-card-lead {
    grid-column: auto;
    grid-row: auto;
  }

  .catalog-trade-row > strong {
    justify-self: start;
  }

  .home-a-path-grid {
    grid-template-columns: 1fr;
  }

  .legacy-page .page-hero,
  .page-hero {
    grid-template-columns: 1fr;
  }

  .legacy-page .page-hero h1,
  .page-hero h1,
  .ac-hero h1,
  .climate-hero h1 {
    font-size: clamp(2.1rem, 9vw, 2.75rem);
  }

  .legal-hero h1 {
    font-size: clamp(2rem, 8vw, 2.6rem);
  }
}

/* ZTT1I2 product story */
.ztt1i2-product-page { --ztt-paper: #fbfdfc; --ztt-ice: #edf8f6; --ztt-mint: #d9f0e9; --ztt-ink: #073f46; --ztt-graphite: #1b2226; --ztt-red: #a51f28; --ztt-line: rgba(7, 63, 70, .16); }
.climate-series-product { color: inherit; text-decoration: none; }
.climate-series-product::before { content: "Explore"; position: absolute; right: 28px; top: 28px; z-index: 2; color: #0b656c; font-size: .68rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.climate-series-product img { transition: opacity .25s ease; }
.climate-series-product:hover img { opacity: .94; }
.climate-series-product:focus-visible { outline: 3px solid #20a8a7; outline-offset: 4px; }
.ztt1i2-product-page .fht-page { max-width: 1480px; padding-bottom: 0; }
.ztt1i2-product-page main * { letter-spacing: 0; }
.ztt1i2-product-page .ztt-eyebrow,
.ztt1i2-product-page .ztt-intro > p,
.ztt1i2-product-page .ztt-story-copy > p,
.ztt1i2-product-page .ztt-efficiency-copy > p,
.ztt1i2-product-page .ztt-selection-help p,
.ztt1i2-product-page .ztt-config-kicker { color: #167c7d; font-size: .72rem; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }
.ztt1i2-product-page .fht-product-title { align-self: end; padding-bottom: 16px; }
.ztt1i2-product-page .fht-product-title h1 { margin: 3px 0 8px; font-size: clamp(2.7rem, 4.2vw, 3.7rem); line-height: .96; }
.ztt1i2-product-page .fht-product-title > span { display: block; max-width: 34rem; color: #4d6264; font-size: 1rem; line-height: 1.55; }
.ztt1i2-product-page .fht-product-top { grid-template-columns: minmax(0, 1fr) minmax(370px, 410px); gap: 24px; }
.ztt1i2-product-page .fht-product-tabs { justify-content: flex-end; gap: clamp(24px, 3vw, 46px); }
.ztt1i2-product-page .fht-gallery { overflow: hidden; background: var(--ztt-ice); }
.ztt1i2-product-page .fht-gallery-main { aspect-ratio: 1.62 / 1; object-fit: contain; object-position: center; padding: clamp(8px, 1.4vw, 20px); border-color: var(--ztt-line); background: #f3f7f6; transition: opacity 220ms cubic-bezier(.2,.65,.3,1); }
.ztt1i2-product-page .fht-thumbs { grid-template-columns: repeat(8, minmax(88px, 1fr)); gap: 8px; margin-top: 8px; overflow-x: auto; scrollbar-width: thin; }
.ztt1i2-product-page .fht-thumbs button { background: var(--ztt-paper); min-width: 88px; min-height: 64px; border-radius: 2px; cursor: pointer; }
.ztt1i2-product-page .fht-thumbs img { width: 100%; height: 100%; object-fit: contain; }
.ztt1i2-product-page .fht-gallery-arrow { width: 48px; height: 48px; border-color: var(--ztt-line); background: rgba(251,253,252,.94); box-shadow: 0 14px 34px rgba(7,63,70,.12); }
.ztt1i2-product-page .fht-gallery-arrow::before { top: 19px; }
.ztt1i2-product-page .fht-gallery-prev::before { left: 20px; }
.ztt1i2-product-page .fht-gallery-next::before { left: 16px; }
.ztt1i2-product-page .fht-config { padding: clamp(28px, 3vw, 42px); box-shadow: none; border: 1px solid var(--ztt-line); border-radius: 2px; background: var(--ztt-paper); }
.ztt1i2-product-page .fht-config > h2 { margin: 0 0 8px; font-size: clamp(1.55rem, 2.4vw, 2.2rem); letter-spacing: -.035em; }
.ztt1i2-product-page .fht-config > p:not(.ztt-config-kicker) { margin: 0 0 28px; color: #607174; line-height: 1.55; }
.ztt-config-choice-head { display: flex; justify-content: space-between; gap: 18px; align-items: baseline; margin: 22px 0 10px; }
.ztt1i2-product-page .ztt-config-choice-head strong { color: var(--ztt-graphite); font-size: .76rem; }
.ztt-config-choice-head span { color: #617275; font-size: .72rem; }
.ztt-finish-select { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
.ztt-finish-select button { display: grid; grid-template-columns: 20px minmax(0, 1fr); gap: 8px; align-items: center; min-height: 52px; padding: 8px 9px; border: 1px solid var(--ztt-line); border-radius: 2px; color: var(--ztt-graphite); background: transparent; cursor: pointer; font: 700 .72rem/1.25 "Manrope", sans-serif; text-align: left; transition: border-color 180ms cubic-bezier(.2,.65,.3,1), background-color 180ms cubic-bezier(.2,.65,.3,1); }
.ztt-finish-select button.is-selected { border-color: var(--ztt-ink); background: #e3f2ef; }
.ztt-swatch { display: block; width: 20px; height: 20px; border: 1px solid rgba(7,63,70,.2); border-radius: 50%; }
.ztt-swatch-white { background: #f5f7f5; }
.ztt-swatch-black { background: #202426; }
.ztt-swatch-red { background: var(--ztt-red); box-shadow: inset 0 0 0 4px rgba(251,253,252,.12); }
.ztt-swatch-turquoise { background: #087f82; box-shadow: inset 0 0 0 4px rgba(251,253,252,.14); }

/* ZTF1I2 fresh-air product narrative */
.ztf1i2-product-page { --ztf-ink:#102b2e; --ztf-air:#18b9bd; --ztf-mist:#edf7f6; --ztf-line:#cfe0dd; background:#f8fbfa; color:var(--ztf-ink); }
.ztf1i2-product-page .fht-page { max-width:1480px; }
.ztf-hero { padding:18px 24px 80px; }
.ztf-hero-head { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr); align-items:end; gap:64px; padding:56px 0 38px; border-bottom:1px solid var(--ztf-line); }
.ztf-kicker,.ztf-chapter { margin:0 0 10px; color:#37696c; font-size:12px; font-weight:700; line-height:1.4; }
.ztf-hero-head h1 { margin:0; font:400 clamp(52px,8vw,116px)/.86 "Space Grotesk",sans-serif; }
.ztf-hero-head>p { max-width:32ch; margin:0 0 5px auto; color:#476164; font-size:18px; line-height:1.55; }
.ztf-hero .fht-product-tabs { margin:0; border-bottom:1px solid var(--ztf-line); }
.ztf-product-grid { display:grid; grid-template-columns:minmax(0,1.55fr) minmax(330px,.45fr); gap:0; border-bottom:1px solid var(--ztf-line); }
.ztf-gallery { grid-column:1; grid-row:1; min-width:0; background:#f3f8f7; border-right:1px solid var(--ztf-line); }
.ztf-gallery .fht-gallery-main { width:100%; height:clamp(520px,55vw,780px); object-fit:contain; padding:38px; box-sizing:border-box; background:#f3f8f7; }
.ztf-gallery .fht-thumbs { background:#e9f2f1; border-top:1px solid var(--ztf-line); }
.ztf-gallery .fht-thumbs button { background:#f8fbfa; }
.ztf-gallery .fht-thumbs img { object-fit:contain; }
.ztf-config { grid-column:2; grid-row:1; align-self:stretch; border:0; border-radius:0; background:#fbfdfc; padding:42px 34px; }
.ztf-config h2 { max-width:10ch; margin:0 0 14px; font-size:34px; line-height:1.05; }
.ztf-config>p:not(.ztf-kicker) { max-width:34ch; margin-bottom:30px; color:#4b6668; font-size:13px; font-weight:500; line-height:1.55; letter-spacing:0; text-transform:none; }
.ztf-finish-line { display:flex; align-items:center; gap:14px; min-height:68px; margin:0 0 26px; padding:12px 0; border-top:1px solid var(--ztf-line); border-bottom:1px solid var(--ztf-line); }
.ztf-finish-line div { display:grid; gap:2px; }
.ztf-finish-line strong { font-size:13px; }
.ztf-finish-line span { color:#567174; font-size:13px; }
.ztf-finish-swatch { flex:0 0 32px; width:32px; height:32px; border:1px solid #bdcac9; border-radius:50%; background:#f5f7f6; box-shadow:inset -8px -2px 10px rgba(119,139,140,.18); }
.ztf-config .fht-capacity { grid-template-columns:1fr 1fr; margin-bottom:28px; }
.ztf-config .fht-button { width:100%; margin-top:28px; }
.ztf-air-story { display:grid; grid-template-columns:minmax(0,1.7fr) minmax(320px,.7fr); min-height:720px; margin:0 24px; background:#dcebea; }
.ztf-air-media { min-height:600px; overflow:hidden; }
.ztf-air-media img { width:100%; height:100%; object-fit:cover; object-position:center; }
.ztf-air-copy { display:flex; flex-direction:column; justify-content:flex-end; padding:64px 46px; border-left:1px solid rgba(16,43,46,.16); }
.ztf-air-copy h2,.ztf-filter-head h2,.ztf-sense-copy h2 { margin:0 0 26px; font-size:clamp(36px,4.2vw,62px); font-weight:450; line-height:1.02; }
.ztf-air-copy>p,.ztf-filter-head>p,.ztf-sense-copy>p { max-width:46ch; margin:0; color:#3d5c5f; font-size:16px; line-height:1.7; }
.ztf-air-copy dl { margin:44px 0 0; border-top:1px solid rgba(16,43,46,.2); }
.ztf-air-copy dl div { display:flex; justify-content:space-between; gap:16px; padding:15px 0; border-bottom:1px solid rgba(16,43,46,.2); }
.ztf-air-copy dt { color:#587174; }
.ztf-air-copy dd { margin:0; font-weight:700; text-align:right; }
.ztf-filter { display:grid; grid-template-columns:minmax(320px,.7fr) minmax(0,1.3fr); gap:72px; margin:0 24px; padding:120px 72px; background:#0b3236; color:#f4fbfa; }
.ztf-filter .ztf-chapter { color:#82cfd0; }
.ztf-filter-head>p { color:#bad0ce; }
.ztf-filter-diagram { display:grid; align-content:center; gap:0; perspective:900px; }
.ztf-filter-layer { display:grid; grid-template-columns:42px 84px 1fr; grid-template-rows:auto auto; align-items:center; column-gap:22px; min-height:108px; padding:15px 0; border-top:1px solid rgba(226,245,243,.2); transform:translateX(calc(var(--layer,0) * 12px)); }
.ztf-filter-layer:nth-child(1){--layer:0}.ztf-filter-layer:nth-child(2){--layer:1}.ztf-filter-layer:nth-child(3){--layer:2}.ztf-filter-layer:nth-child(4){--layer:3;border-bottom:1px solid rgba(226,245,243,.2)}
.ztf-filter-layer>span { grid-row:1/3; color:#82cfd0; font:600 13px/1 "Manrope",sans-serif; }
.ztf-filter-layer i { grid-row:1/3; width:72px; height:58px; border:1px solid rgba(195,237,234,.55); background-color:rgba(24,185,189,.08); background-image:radial-gradient(circle at center,rgba(231,250,248,.5) 1px,transparent 1.5px); background-size:8px 8px; transform:skewY(-5deg); box-shadow:12px 10px 0 rgba(24,185,189,.07); }
.ztf-filter-layer strong { align-self:end; font-size:19px; font-weight:600; }
.ztf-filter-layer small { align-self:start; color:#98b7b5; font-size:13px; }
.ztf-sense { display:grid; grid-template-columns:minmax(320px,.7fr) minmax(0,1.3fr); min-height:620px; margin:0 24px; background:#eef6f5; }
.ztf-sense-display { display:flex; flex-direction:column; align-items:center; justify-content:center; width:min(58vw,390px); height:min(58vw,390px); align-self:center; justify-self:center; border:1px solid #9db9b8; border-radius:50%; box-shadow:inset 0 0 0 18px rgba(255,255,255,.62),inset 0 0 0 19px #c8dbd9; }
.ztf-sense-display>span { color:#517376; font-size:13px; font-weight:700; }
.ztf-sense-display>strong { margin:9px 0 18px; font:400 clamp(42px,5vw,72px)/1 "Space Grotesk",sans-serif; }
.ztf-sense-display i { width:108px; height:5px; background:var(--ztf-air); }
.ztf-sense-display small { margin-top:13px; color:#517376; }
.ztf-sense-copy { display:flex; flex-direction:column; justify-content:center; max-width:670px; padding:72px 56px; border-left:1px solid var(--ztf-line); }
.ztf-status-line { display:flex; align-items:baseline; gap:20px; margin-top:45px; padding-top:25px; border-top:1px solid var(--ztf-line); }
.ztf-status-line strong { font:400 46px/1 "Space Grotesk",sans-serif; }
.ztf-status-line span { color:#48696b; }
.ztf-breeze { display:grid; grid-template-columns:minmax(350px,.72fr) minmax(0,1.28fr); margin:0 24px; border-top:1px solid var(--ztf-line); border-bottom:1px solid var(--ztf-line); background:#fbfdfc; }
.ztf-breeze-copy { display:flex; flex-direction:column; justify-content:flex-end; padding:72px 52px; }
.ztf-breeze-copy h2 { margin:0 0 26px; font-size:clamp(32px,4vw,56px); font-weight:450; line-height:1.06; }
.ztf-breeze-copy h2 strong { display:block; color:#087f82; font-size:1.65em; font-weight:400; }
.ztf-breeze-copy>p { max-width:45ch; margin:0; color:#496668; line-height:1.7; }
.ztf-breeze-media { min-height:600px; background:#f4f8f7; }
.ztf-breeze-media img { width:100%; height:100%; object-fit:contain; padding:36px; box-sizing:border-box; }
.ztf-operating { display:grid; grid-template-columns:repeat(4,1fr); margin:0 24px; background:#fbfdfc; border-bottom:1px solid var(--ztf-line); }
.ztf-operating>div { min-height:230px; padding:42px 28px; border-right:1px solid var(--ztf-line); }
.ztf-operating>div:last-child { border-right:0; }
.ztf-operating strong { display:block; margin-bottom:36px; font:400 clamp(44px,5vw,72px)/.9 "Space Grotesk",sans-serif; }
.ztf-operating small { margin-left:5px; font-size:.35em; }
.ztf-operating span { display:block; max-width:19ch; color:#4b696b; font-size:13px; line-height:1.5; }
.ztf-specs { margin:0 24px; padding-top:110px; }
.ztf-selection-help { margin:0 24px 96px; background:#0b3236; color:#f4fbfa; }
.ztf-selection-help p,.ztf-selection-help span { color:#b9d0ce; }
@media (max-width:1080px){
  .ztf-product-grid{grid-template-columns:1fr}.ztf-gallery,.ztf-config{grid-column:1;grid-row:auto}.ztf-gallery{border-right:0;border-bottom:1px solid var(--ztf-line)}.ztf-gallery .fht-gallery-main{height:610px}.ztf-config h2{max-width:none}.ztf-config>p:not(.ztf-kicker){max-width:58ch}.ztf-air-story{grid-template-columns:1fr}.ztf-air-copy{border-left:0;border-top:1px solid rgba(16,43,46,.16)}.ztf-filter{grid-template-columns:1fr;padding:90px 54px}.ztf-sense{grid-template-columns:1fr;padding-top:70px}.ztf-sense-copy{max-width:none;border-left:0}.ztf-breeze{grid-template-columns:1fr}.ztf-operating{grid-template-columns:1fr 1fr}.ztf-operating>div:nth-child(2){border-right:0}.ztf-operating>div:nth-child(-n+2){border-bottom:1px solid var(--ztf-line)}
}
@media (max-width:700px){
  .ztf-hero{padding:8px 16px 52px}.ztf-hero-head{grid-template-columns:1fr;gap:28px;padding:34px 0 24px}.ztf-hero-head h1{font-size:54px}.ztf-hero-head>p{margin:0;font-size:16px}.ztf-hero .fht-product-tabs{display:grid;grid-template-columns:1fr 1fr}.ztf-hero .fht-product-tabs a{display:flex;align-items:center;justify-content:center;min-width:0;min-height:48px;padding:8px;text-align:center}.ztf-gallery .fht-gallery-main{height:360px;padding:18px}.ztf-config{padding:32px 20px}.ztf-air-story,.ztf-filter,.ztf-sense,.ztf-breeze,.ztf-operating,.ztf-specs,.ztf-selection-help{margin-left:16px;margin-right:16px}.ztf-air-story{min-height:0}.ztf-air-media{min-height:410px}.ztf-air-copy{padding:48px 24px}.ztf-filter{gap:48px;padding:64px 24px}.ztf-filter-layer{grid-template-columns:30px 62px 1fr;column-gap:12px;transform:none}.ztf-filter-layer i{width:56px;height:46px}.ztf-filter-layer strong{font-size:16px}.ztf-sense{padding-top:48px}.ztf-sense-display{width:270px;height:270px}.ztf-sense-copy{padding:48px 24px}.ztf-breeze-copy{padding:54px 24px}.ztf-breeze-media{min-height:390px}.ztf-breeze-media img{padding:18px}.ztf-operating{grid-template-columns:1fr}.ztf-operating>div{min-height:170px;border-right:0;border-bottom:1px solid var(--ztf-line)}.ztf-operating>div:last-child{border-bottom:0}.ztf-operating strong{margin-bottom:24px}.ztf-specs{padding-top:76px}
}
.ztt1i2-product-page .fht-capacity { display: grid; grid-template-columns: repeat(2, 1fr); gap: 6px; }
.ztt1i2-product-page .fht-capacity button { min-height: 48px; padding: 9px 8px; border-radius: 2px; cursor: pointer; }
.ztt1i2-product-page .fht-config dl { border-top: 1px solid var(--ztt-line); }
.ztt1i2-product-page .fht-config dl div { border-color: var(--ztt-line); }
.ztt-finish-select button:focus-visible, .ztt1i2-product-page .fht-capacity button:focus-visible, .ztt1i2-product-page .fht-thumbs button:focus-visible { outline: 3px solid #20a8a7; outline-offset: 3px; }
.ztt-finishes { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 16px; margin-top: clamp(64px, 7vw, 105px); padding-top: clamp(34px, 4vw, 58px); border-top: 1px solid var(--ztt-line); }
.ztt-finishes-head { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(280px, .7fr); gap: 38px; align-items: end; margin-bottom: clamp(24px, 4vw, 46px); }
.ztt-finishes-head p { grid-column: 1 / -1; margin: 0; color: #167c7d; font-size: .72rem; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }
.ztt-finishes-head h2 { margin: 0; color: var(--ztt-graphite); font-size: clamp(3rem, 6vw, 6.3rem); letter-spacing: -.065em; line-height: .88; }
.ztt-finishes-head > span { display: block; max-width: 35rem; color: #566d70; font-size: clamp(1rem, 1.4vw, 1.18rem); line-height: 1.7; }
.ztt-finish-feature { display: grid; align-content: space-between; overflow: hidden; border-top: 1px solid var(--ztt-line); background: #f0f5f3; }
.ztt-finish-feature > div { z-index: 1; padding: clamp(26px, 3.2vw, 46px); }
.ztt-finish-feature > div > span { color: #637577; font-size: .72rem; font-weight: 800; letter-spacing: .11em; text-transform: uppercase; }
.ztt-finish-feature h3 { margin: 13px 0 12px; font-size: clamp(1.75rem, 3vw, 3.3rem); letter-spacing: -.045em; line-height: 1; }
.ztt-finish-feature p { max-width: 38rem; margin: 0; color: #5b6d70; line-height: 1.65; }
.ztt-finish-feature img { display: block; width: 100%; min-height: 0; object-fit: cover; }
.ztt-finish-black { grid-column: 1 / span 7; color: #edf4f2; background: #1b2124; }
.ztt-finish-black > div > span, .ztt-finish-black p { color: rgba(237,244,242,.66); }
.ztt-finish-red { grid-column: 8 / -1; align-self: end; background: #f4f0ed; }
.ztt-finish-turquoise { grid-column: 1 / -1; grid-template-columns: minmax(280px,.55fr) minmax(0,1.45fr); background: #e7f2f0; }
.ztt-finish-turquoise img { height: 100%; max-height: 620px; object-fit: contain; padding: 18px; box-sizing: border-box; }
.ztt-finish-black img { aspect-ratio: 1.5 / 1; }
.ztt-finish-red img { aspect-ratio: 1.23 / 1; }
.ztt-intro { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(280px, .8fr); gap: 48px; align-items: end; max-width: none; margin: clamp(100px, 12vw, 175px) 0 clamp(55px, 8vw, 100px); text-align: left; }
.ztt-intro h2 { margin: 12px 0 0; color: var(--ztt-ink); font-size: clamp(2.8rem, 5.6vw, 5.7rem); letter-spacing: -.065em; line-height: .91; }
.ztt-intro > span { display: block; max-width: 39rem; margin: 0; color: #557073; font-size: clamp(1rem, 1.4vw, 1.2rem); line-height: 1.7; }
.ztt-story { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(330px, .7fr); min-height: 720px; border-top: 1px solid var(--ztt-line); }
.ztt-story-media { position: relative; display: grid; place-items: center; min-width: 0; overflow: hidden; background: #f4faf9; }
.ztt-air-main { width: 100%; max-height: 700px; object-fit: contain; padding: clamp(22px, 4vw, 54px); }
.ztt-story-media figure { position: absolute; right: 4%; bottom: 4%; width: min(31%, 310px); margin: 0; border: 6px solid var(--ztt-paper); background: var(--ztt-paper); box-shadow: 0 18px 48px rgba(6,63,70,.12); }
.ztt-story-media figure img { display: block; width: 100%; aspect-ratio: 1.08; object-fit: cover; }
.ztt-story-media figcaption { padding: 10px 4px 3px; color: #536b6e; font-size: .72rem; letter-spacing: .09em; text-transform: uppercase; }
.ztt-story-copy { padding: clamp(48px, 6vw, 90px); color: #fff; background: var(--ztt-ink); }
.ztt-index { display: block; margin-bottom: clamp(70px, 11vw, 150px); color: rgba(255,255,255,.45); font-size: .78rem; letter-spacing: .16em; }
.ztt-story-copy h2 { margin: 12px 0 clamp(38px, 5vw, 68px); font-size: clamp(2.3rem, 4.2vw, 4.7rem); letter-spacing: -.06em; line-height: .98; }
.ztt-stat { display: grid; grid-template-columns: 112px 1fr; gap: 18px; align-items: baseline; padding: 18px 0; border-top: 1px solid rgba(255,255,255,.18); }
.ztt-stat strong { font-size: 2rem; letter-spacing: -.04em; }
.ztt-stat span { color: rgba(255,255,255,.68); line-height: 1.45; }
.ztt-body { max-width: 38rem; color: rgba(255,255,255,.72); line-height: 1.7; }
.ztt1i2-product-page .ztt-story-copy > .ztt-body { color: rgba(237,244,242,.72); font-size: 1rem; font-weight: 500; letter-spacing: 0; line-height: 1.7; text-transform: none; }
.ztt-finishes, .ztt-intro, .ztt-specs { scroll-margin-top: 92px; }
.ztt-efficiency { position: relative; display: grid; grid-template-columns: .72fr 1.28fr; min-height: 720px; overflow: hidden; background: var(--ztt-mint); }
.ztt-efficiency-copy { z-index: 1; padding: clamp(54px, 7vw, 105px); }
.ztt-efficiency-copy .ztt-index { margin-bottom: 95px; color: rgba(7,63,70,.45); }
.ztt-efficiency-copy h2 { margin: 12px 0 64px; color: var(--ztt-ink); font-size: clamp(5.2rem, 10vw, 10.5rem); letter-spacing: -.09em; line-height: .75; }
.ztt-efficiency-copy h2 small { display: block; margin: 28px 0 0 9px; font-size: .75rem; font-weight: 700; letter-spacing: .11em; text-transform: uppercase; }
.ztt-efficiency-copy > div { display: flex; gap: 20px; align-items: center; padding-top: 22px; border-top: 1px solid rgba(7,63,70,.25); }
.ztt-efficiency-copy > div strong { color: var(--ztt-ink); font-size: 3rem; letter-spacing: -.06em; }
.ztt-efficiency-copy > div span { max-width: 170px; color: #49676a; line-height: 1.4; }
.ztt-efficiency > img { align-self: center; width: 110%; max-height: 620px; object-fit: contain; transform: translateX(-7%); }
.ztt-facts { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--ztt-line); border-bottom: 1px solid var(--ztt-line); }
.ztt-facts article { min-height: 190px; padding: clamp(28px, 4vw, 52px); border-right: 1px solid var(--ztt-line); }
.ztt-facts article:last-child { border-right: 0; }
.ztt-facts strong { display: block; margin-bottom: 15px; color: var(--ztt-ink); font-size: clamp(1.8rem, 3vw, 3.2rem); letter-spacing: -.05em; }
.ztt-facts span { color: #637577; line-height: 1.45; }
.ztt-story-inverter { grid-template-columns: minmax(360px, .78fr) minmax(0, 1.22fr); background: #052f35; }
.ztt-story-inverter .ztt-story-copy { order: 0; background: transparent; }
.ztt-story-inverter dl { margin-top: 44px; }
.ztt-story-inverter dl div { display: flex; justify-content: space-between; gap: 24px; padding: 17px 0; border-top: 1px solid rgba(255,255,255,.18); }
.ztt-story-inverter dt { color: rgba(255,255,255,.58); }
.ztt-story-inverter dd { margin: 0; color: #fff; font-weight: 700; text-align: right; }
.ztt-outdoor-wrap { display: grid; place-items: center; align-content: center; padding: 50px; background: #eaf4f1; }
.ztt-outdoor-wrap img { width: min(88%, 760px); max-height: 570px; object-fit: contain; }
.ztt-outdoor-wrap span { max-width: 330px; margin-top: 25px; color: #5a7072; text-align: center; line-height: 1.5; }
.ztt-specs { padding-top: clamp(86px, 11vw, 150px); }
.ztt-section-head { display: grid; grid-template-columns: 1fr 1.4fr; gap: 20px 60px; margin-bottom: 45px; }
.ztt-section-head p { color: #167c7d; font-size: .75rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.ztt-section-head h2 { grid-column: 2; grid-row: 1 / span 2; margin: 0; font-size: clamp(2.4rem, 5vw, 5rem); letter-spacing: -.06em; line-height: .95; }
.ztt-section-head > span { max-width: 320px; color: #65787a; line-height: 1.55; }
.ztt1i2-product-page .fht-spec-tables article { border-radius: 0; box-shadow: none; }
.ztt-selection-help { display: flex; justify-content: space-between; gap: 50px; align-items: end; margin: clamp(80px, 10vw, 140px) 0 0; padding: clamp(42px, 6vw, 80px); color: #fff; background: var(--ztt-ink); }
.ztt-selection-help h2 { max-width: 780px; margin: 12px 0 18px; font-size: clamp(2rem, 4.5vw, 4.6rem); letter-spacing: -.055em; line-height: 1; }
.ztt-selection-help span { display: block; max-width: 680px; color: rgba(255,255,255,.7); line-height: 1.65; }
.ztt-selection-help .fht-button { flex: 0 0 auto; background: #fff; color: var(--ztt-ink); }

@media (max-width: 980px) {
  .ztt1i2-product-page .fht-product-top { grid-template-columns: 1fr; }
  .ztt-finishes-head, .ztt-intro { grid-template-columns: 1fr; }
  .ztt-finish-black { grid-column: 1 / span 7; }
  .ztt-finish-red { grid-column: 8 / -1; }
  .ztt-story, .ztt-efficiency, .ztt-story-inverter { grid-template-columns: 1fr; }
  .ztt-story-copy { order: -1; }
  .ztt-index, .ztt-efficiency-copy .ztt-index { margin-bottom: 45px; }
  .ztt-story-media, .ztt-outdoor-wrap { min-height: 560px; }
  .ztt-efficiency > img { width: 100%; transform: none; padding: 0 30px 50px; }
  .ztt-facts { grid-template-columns: repeat(2, 1fr); }
  .ztt-facts article:nth-child(2) { border-right: 0; }
  .ztt-facts article:nth-child(-n+2) { border-bottom: 1px solid var(--ztt-line); }
  .ztt-section-head { grid-template-columns: 1fr; }
  .ztt-section-head h2 { grid-column: 1; grid-row: auto; }
}
@media (max-width: 640px) {
  .ztt1i2-product-page .fht-product-title h1 { font-size: 3.25rem; }
  .ztt1i2-product-page .fht-product-tabs { justify-content: flex-start; gap: 28px; overflow-x: auto; }
  .ztt1i2-product-page .fht-gallery-main { aspect-ratio: 1.08 / 1; object-fit: contain; padding: 8px; }
  .ztt1i2-product-page .fht-gallery-arrow { width: 44px; height: 44px; }
  .ztt1i2-product-page .fht-gallery-arrow::before { top: 17px; }
  .ztt1i2-product-page .fht-gallery-prev::before { left: 18px; }
  .ztt1i2-product-page .fht-gallery-next::before { left: 14px; }
  .ztt-finish-select { grid-template-columns: 1fr; }
  .ztt-finish-select button { min-height: 48px; }
  .ztt1i2-product-page .fht-capacity { grid-template-columns: repeat(2, 1fr); }
  .ztt-finishes { grid-template-columns: 1fr; gap: 14px; }
  .ztt-finishes-head, .ztt-finish-black, .ztt-finish-red, .ztt-finish-turquoise { grid-column: 1; }
  .ztt-finish-turquoise { grid-template-columns: 1fr; }
  .ztt-finishes-head h2 { font-size: 3.2rem; }
  .ztt-finish-feature img { aspect-ratio: 1.2 / 1; }
  .ztt-intro { gap: 26px; text-align: left; }
  .ztt-intro h2 { font-size: 3.1rem; }
  .ztt-story-copy, .ztt-efficiency-copy { padding: 42px 24px; }
  .ztt-story-media, .ztt-outdoor-wrap { min-height: 430px; }
  .ztt-story-media figure { right: 16px; bottom: 16px; width: 38%; border-width: 5px; }
  .ztt-facts { grid-template-columns: 1fr; }
  .ztt-facts article { min-height: 145px; border-right: 0; border-bottom: 1px solid var(--ztt-line); }
  .ztt-facts article:last-child { border-bottom: 0; }
  .ztt-selection-help { display: grid; align-items: start; padding: 38px 24px; }
  .ztt-selection-help .fht-button { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  .ztt1i2-product-page *, .ztt1i2-product-page *::before, .ztt1i2-product-page *::after { scroll-behavior: auto !important; transition: none !important; }
}

/* ZTP1I2 product story */
.ztp1i2-product-page { --ztp-paper: #fbfdfc; --ztp-frost: #eef5f3; --ztp-ink: #073f46; --ztp-deep: #052d33; --ztp-graphite: #1a2225; --ztp-coral: #b44238; --ztp-red: #8d252b; --ztp-line: rgba(7, 63, 70, .17); }
.ztp1i2-product-page .fht-page { max-width: 1480px; padding-bottom: 0; }
.ztp1i2-product-page main * { letter-spacing: 0; }
.ztp-kicker { margin: 0; color: #177d7e; font-size: .72rem; font-weight: 800; letter-spacing: .14em !important; text-transform: uppercase; }
.ztp-hero { display: grid; grid-template-columns: minmax(0, 1fr) minmax(370px, 410px); gap: 24px; align-items: start; }
.ztp-hero-copy { align-self: end; min-height: 188px; padding: 10px 0 18px; }
.ztp-hero-copy h1 { margin: 5px 0 11px; color: var(--ztp-graphite); font-size: clamp(2.75rem, 4.2vw, 3.7rem); line-height: .92; }
.ztp-lead { max-width: 49rem; margin: 0; color: #4e6669; font-size: clamp(.98rem, 1.2vw, 1.1rem); line-height: 1.65; }
.ztp-hero-meta { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 22px; }
.ztp-hero-meta span { padding: 7px 12px; border: 1px solid var(--ztp-line); color: #315d61; font-size: .72rem; font-weight: 750; }
.ztp1i2-product-page .fht-product-tabs { align-self: end; justify-content: flex-end; gap: clamp(20px, 2.6vw, 38px); min-height: 188px; }
.ztp-gallery { overflow: hidden; border: 1px solid var(--ztp-line); background: var(--ztp-frost); }
.ztp1i2-product-page .ztp-gallery .fht-gallery-main { aspect-ratio: 1.58 / 1; object-fit: contain; object-position: center; padding: clamp(8px, 1.4vw, 20px); border: 0; background: #f1f6f4; transition: opacity 180ms cubic-bezier(.2,.65,.3,1); }
.ztp1i2-product-page .ztp-gallery .fht-gallery-main.is-changing { opacity: .35; }
.ztp1i2-product-page .ztp-gallery .fht-thumbs { grid-template-columns: repeat(7, minmax(92px, 1fr)); gap: 7px; margin: 7px; overflow-x: auto; scrollbar-width: thin; }
.ztp1i2-product-page .ztp-gallery .fht-thumbs button { min-width: 92px; min-height: 68px; border-radius: 0; background: var(--ztp-paper); cursor: pointer; }
.ztp1i2-product-page .ztp-gallery .fht-thumbs img { width: 100%; height: 100%; object-fit: contain; }
.ztp1i2-product-page .fht-gallery-arrow { width: 48px; height: 48px; border-color: var(--ztp-line); background: rgba(251,253,252,.94); box-shadow: 0 14px 34px rgba(7,63,70,.12); }
.ztp1i2-product-page .fht-gallery-arrow::before { top: 19px; }
.ztp1i2-product-page .fht-gallery-prev::before { left: 20px; }
.ztp1i2-product-page .fht-gallery-next::before { left: 16px; }
.ztp-config { padding: clamp(28px, 3vw, 42px); border: 1px solid var(--ztp-line); border-radius: 0; box-shadow: none; background: var(--ztp-paper); }
.ztp-config > h2 { margin: 3px 0 8px; color: var(--ztp-graphite); font-size: clamp(1.7rem, 2.4vw, 2.2rem); }
.ztp-config > p:not(.ztp-kicker) { margin: 0 0 26px; color: #617477; line-height: 1.55; }
.ztp-choice-head { display: flex; justify-content: space-between; gap: 18px; align-items: baseline; margin: 22px 0 10px; }
.ztp-choice-head strong { color: var(--ztp-graphite); font-size: .76rem; }
.ztp-choice-head span { color: #66787b; font-size: .72rem; }
.ztp-finish-select { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
.ztp-finish-select button { display: grid; grid-template-columns: 20px minmax(0, 1fr); gap: 8px; align-items: center; min-height: 52px; padding: 8px 9px; border: 1px solid var(--ztp-line); border-radius: 0; color: var(--ztp-graphite); background: transparent; cursor: pointer; font: 700 .71rem/1.25 "Manrope", sans-serif; text-align: left; transition: border-color 180ms cubic-bezier(.2,.65,.3,1), background-color 180ms cubic-bezier(.2,.65,.3,1); }
.ztp-finish-select button.is-selected { border-color: var(--ztp-ink); background: #e1efec; }
.ztp-swatch { display: block; width: 20px; height: 20px; border: 1px solid rgba(7,63,70,.22); border-radius: 50%; }
.ztp-swatch-white { background: #f5f7f5; }
.ztp-swatch-black { background: #191d1f; }
.ztp-swatch-red { background: repeating-linear-gradient(90deg, #8d252b 0 2px, #782027 2px 3px); }
.ztp-swatch-turquoise { background: repeating-linear-gradient(90deg, #177f83 0 2px, #116d71 2px 3px); }
.ztp-config .fht-capacity { display: grid; grid-template-columns: repeat(2, 1fr); gap: 6px; }
.ztp-config .fht-capacity button { min-height: 48px; padding: 9px 8px; border-radius: 0; cursor: pointer; }
.ztp-config dl { border-top: 1px solid var(--ztp-line); }
.ztp-config dl div { border-color: var(--ztp-line); }
.ztp-finish-select button:focus-visible, .ztp1i2-product-page .fht-capacity button:focus-visible, .ztp1i2-product-page .fht-thumbs button:focus-visible, .ztp-mode-switch button:focus-visible { outline: 3px solid #20a8a7; outline-offset: 3px; }
.ztp-direction { display: grid; grid-template-columns: minmax(350px, .72fr) minmax(0, 1.28fr); min-height: 720px; margin-top: clamp(86px, 10vw, 146px); color: #edf5f3; background: var(--ztp-deep); scroll-margin-top: 90px; }
.ztp-direction-copy { display: flex; flex-direction: column; justify-content: center; padding: clamp(46px, 6vw, 90px); }
.ztp-direction-copy .ztp-kicker { color: #6ad9cf; }
.ztp-direction-copy h2 { margin: 14px 0 26px; font-size: clamp(2.6rem, 5vw, 5.3rem); letter-spacing: -.06em !important; line-height: .9; }
.ztp-direction-copy > p:not(.ztp-kicker) { max-width: 37rem; margin: 0; color: rgba(237,245,243,.7); line-height: 1.72; }
.ztp-mode-switch { display: grid; grid-template-columns: 1fr 1fr; margin-top: clamp(48px, 7vw, 92px); border-top: 1px solid rgba(237,245,243,.2); }
.ztp-mode-switch button { display: grid; gap: 4px; min-height: 98px; padding: 20px 12px 16px 0; border: 0; border-bottom: 1px solid rgba(237,245,243,.2); color: rgba(237,245,243,.55); background: transparent; cursor: pointer; font: inherit; text-align: left; transition: color 180ms cubic-bezier(.2,.65,.3,1), border-color 180ms cubic-bezier(.2,.65,.3,1); }
.ztp-mode-switch button + button { padding-left: 22px; border-left: 1px solid rgba(237,245,243,.2); }
.ztp-mode-switch button.is-active { border-bottom-color: #6ad9cf; color: #edf5f3; }
.ztp-mode-switch strong { font-size: 2rem; letter-spacing: -.04em !important; }
.ztp-mode-switch span { font-size: .76rem; }
.ztp-direction-media { display: grid; align-content: stretch; min-width: 0; margin: 0; background: #11171b; }
.ztp-direction-media img { width: 100%; height: 100%; min-height: 660px; object-fit: contain; object-position: center; background: #11171b; }
.ztp-direction-media figcaption { padding: 14px 20px; color: rgba(237,245,243,.66); background: #11171b; font-size: .75rem; }
.ztp-gentle { position: relative; display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(350px, .6fr); min-height: 690px; overflow: hidden; background: #101b22; scroll-margin-top: 90px; }
.ztp-gentle > img { width: 100%; height: 100%; min-height: 690px; object-fit: contain; object-position: center; background: #07182a; }
.ztp-gentle-copy { display: flex; flex-direction: column; justify-content: center; padding: clamp(44px, 5vw, 78px); color: #f0f5f4; background: #13252a; }
.ztp-gentle-copy > span, .ztp-engine > div > span, .ztp-service > div > span { color: #6ad9cf; font-size: .72rem; font-weight: 800; letter-spacing: .12em !important; text-transform: uppercase; }
.ztp-gentle-copy h2 { margin: 15px 0 22px; font-size: clamp(2.1rem, 3.8vw, 4.2rem); letter-spacing: -.055em !important; line-height: .98; }
.ztp-gentle-copy > p { margin: 0; color: rgba(240,245,244,.7); line-height: 1.72; }
.ztp-gentle-copy dl { margin: clamp(40px, 5vw, 72px) 0 0; }
.ztp-gentle-copy dl div { display: grid; grid-template-columns: 120px 1fr; gap: 18px; align-items: baseline; padding: 17px 0; border-top: 1px solid rgba(240,245,244,.2); }
.ztp-gentle-copy dt { font-size: clamp(2rem, 3vw, 3.1rem); font-weight: 700; }
.ztp-gentle-copy dd { margin: 0; color: rgba(240,245,244,.65); }
.ztp-performance { display: grid; grid-template-columns: .82fr 1.18fr; min-height: 560px; border-bottom: 1px solid var(--ztp-line); background: #dfeeea; }
.ztp-performance-main { display: flex; flex-direction: column; justify-content: center; padding: clamp(52px, 7vw, 102px); border-right: 1px solid rgba(7,63,70,.18); }
.ztp-performance-main > strong { display: block; margin: 24px 0 12px; color: var(--ztp-ink); font-size: clamp(5.6rem, 11vw, 11rem); letter-spacing: -.1em !important; line-height: .72; }
.ztp-performance-main > span { max-width: 300px; color: #496568; line-height: 1.5; }
.ztp-performance > dl { display: grid; grid-template-columns: repeat(2, 1fr); margin: 0; }
.ztp-performance > dl div { display: flex; flex-direction: column; justify-content: flex-end; min-height: 280px; padding: clamp(30px, 5vw, 66px); border-right: 1px solid rgba(7,63,70,.18); border-bottom: 1px solid rgba(7,63,70,.18); }
.ztp-performance > dl div:nth-child(2n) { border-right: 0; }
.ztp-performance > dl div:nth-last-child(-n+2) { border-bottom: 0; }
.ztp-performance dt { color: var(--ztp-ink); font-size: clamp(2.2rem, 4.2vw, 4.8rem); font-weight: 700; letter-spacing: -.06em !important; }
.ztp-performance dd { margin: 10px 0 0; color: #577174; line-height: 1.45; }
.ztp-engine { display: grid; grid-template-columns: minmax(350px, .68fr) minmax(0, 1.32fr); min-height: 660px; color: #edf5f3; background: #0d151b; }
.ztp-engine > div { display: flex; flex-direction: column; justify-content: center; padding: clamp(46px, 6vw, 90px); }
.ztp-engine h2 { margin: 15px 0 22px; font-size: clamp(2.25rem, 4.2vw, 4.7rem); letter-spacing: -.06em !important; line-height: .96; }
.ztp-engine p { margin: 0; color: rgba(237,245,243,.68); line-height: 1.72; }
.ztp-engine strong { margin-top: clamp(54px, 7vw, 96px); padding-top: 20px; border-top: 1px solid rgba(237,245,243,.2); font-size: clamp(2.3rem, 4.2vw, 4.8rem); letter-spacing: -.06em !important; }
.ztp-engine small { margin-top: 8px; color: rgba(237,245,243,.52); line-height: 1.45; }
.ztp-engine > img { width: 100%; height: 100%; min-height: 660px; object-fit: cover; object-position: center right; }
.ztp-service { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(350px, .7fr); min-height: 620px; border-bottom: 1px solid var(--ztp-line); background: #f1f5f4; }
.ztp-service > img { width: 100%; height: 100%; min-height: 620px; object-fit: cover; object-position: center; }
.ztp-service > div { display: flex; flex-direction: column; justify-content: center; padding: clamp(46px, 6vw, 90px); }
.ztp-service > div > span { color: #177d7e; }
.ztp-service h2 { margin: 15px 0 22px; color: var(--ztp-graphite); font-size: clamp(2.2rem, 4vw, 4.4rem); letter-spacing: -.055em !important; line-height: .96; }
.ztp-service p { margin: 0; color: #5d7275; line-height: 1.72; }
.ztp-service a { display: inline-flex; align-items: center; align-self: flex-start; min-height: 44px; margin-top: 28px; padding: 7px 0; border-bottom: 1px solid var(--ztp-ink); color: var(--ztp-ink); font-size: .82rem; font-weight: 800; text-decoration: none; }
.ztp-specs { padding-top: clamp(90px, 11vw, 150px); scroll-margin-top: 90px; }
.ztp-section-head { display: grid; grid-template-columns: .72fr 1.28fr; gap: 20px 58px; margin-bottom: 45px; }
.ztp-section-head p { margin: 0; color: #177d7e; font-size: .75rem; font-weight: 800; letter-spacing: .1em !important; text-transform: uppercase; }
.ztp-section-head h2 { grid-column: 2; grid-row: 1 / span 2; margin: 0; color: var(--ztp-graphite); font-size: clamp(2.5rem, 5vw, 5rem); letter-spacing: -.06em !important; line-height: .95; }
.ztp-section-head > span { max-width: 340px; color: #65787a; line-height: 1.55; }
.ztp1i2-product-page .fht-spec-tables article { border-radius: 0; box-shadow: none; }
.ztp-selection-help { display: flex; justify-content: space-between; gap: 48px; align-items: end; margin: clamp(80px, 10vw, 140px) 0 0; padding: clamp(44px, 6vw, 82px); color: #edf5f3; background: var(--ztp-ink); }
.ztp-selection-help .ztp-kicker { color: #6ad9cf; }
.ztp-selection-help h2 { max-width: 820px; margin: 13px 0 18px; font-size: clamp(2.1rem, 4.5vw, 4.7rem); letter-spacing: -.055em !important; line-height: 1; }
.ztp-selection-help span { display: block; max-width: 690px; color: rgba(237,245,243,.7); line-height: 1.65; }
.ztp-selection-help .fht-button { flex: 0 0 auto; color: var(--ztp-ink); background: #f8fbfa; }

@media (max-width: 980px) {
  .ztp-hero { grid-template-columns: 1fr; }
  .ztp1i2-product-page .fht-product-tabs { justify-content: flex-start; min-height: 0; }
  .ztp-direction, .ztp-gentle, .ztp-performance, .ztp-engine, .ztp-service { grid-template-columns: 1fr; }
  .ztp-direction-media img, .ztp-gentle > img, .ztp-engine > img, .ztp-service > img { min-height: 520px; }
  .ztp-gentle-copy, .ztp-engine > div, .ztp-service > div { order: -1; }
  .ztp-performance-main { border-right: 0; border-bottom: 1px solid rgba(7,63,70,.18); }
  .ztp-section-head { grid-template-columns: 1fr; }
  .ztp-section-head h2 { grid-column: 1; grid-row: auto; }
}

@media (max-width: 640px) {
  .ztp-hero-copy { min-height: 0; }
  .ztp-hero-copy h1 { font-size: 2.75rem; }
  .ztp1i2-product-page .fht-product-tabs { gap: 26px; overflow-x: auto; }
  .ztp1i2-product-page .ztp-gallery .fht-gallery-main { aspect-ratio: 1.08 / 1; object-fit: contain; padding: 8px; }
  .ztp1i2-product-page .fht-gallery-arrow { width: 44px; height: 44px; }
  .ztp1i2-product-page .fht-gallery-arrow::before { top: 17px; }
  .ztp1i2-product-page .fht-gallery-prev::before { left: 18px; }
  .ztp1i2-product-page .fht-gallery-next::before { left: 14px; }
  .ztp-finish-select { grid-template-columns: 1fr; }
  .ztp-finish-select button { min-height: 48px; }
  .ztp-config .fht-capacity { grid-template-columns: repeat(2, 1fr); }
  .ztp-direction { min-height: 0; }
  .ztp-direction-copy, .ztp-gentle-copy, .ztp-engine > div, .ztp-service > div { padding: 44px 24px; }
  .ztp-direction-media img, .ztp-gentle > img, .ztp-engine > img, .ztp-service > img { min-height: 360px; }
  .ztp-direction-media img { object-position: 50% center; }
  .ztp-gentle > img { object-position: center; }
  .ztp-mode-switch { margin-top: 42px; }
  .ztp-performance > dl { grid-template-columns: 1fr; }
  .ztp-performance > dl div { min-height: 160px; border-right: 0; border-bottom: 1px solid rgba(7,63,70,.18); }
  .ztp-performance > dl div:nth-last-child(-n+2) { border-bottom: 1px solid rgba(7,63,70,.18); }
  .ztp-performance > dl div:last-child { border-bottom: 0; }
  .ztp-performance-main { padding: 48px 24px; }
  .ztp-selection-help { display: grid; align-items: start; padding: 42px 24px; }
  .ztp-selection-help .fht-button { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  .ztp1i2-product-page *, .ztp1i2-product-page *::before, .ztp1i2-product-page *::after { scroll-behavior: auto !important; transition: none !important; }
}

/* ZAM1I2 product-specific composition */
.zam1i2-product-page { --ztp-frost: #f0f4f2; --ztp-deep: #0a3236; }
.zam1i2-product-page .ztp-gallery .fht-thumbs { grid-template-columns: repeat(3, minmax(112px, 1fr)); }
.zam-finish-lock { display: grid; grid-template-columns: 22px 1fr auto; gap: 10px; align-items: center; min-height: 52px; padding: 9px 12px; border: 1px solid var(--ztp-line); background: #f7faf9; }
.zam-finish-lock span { color: var(--ztp-graphite); font-size: .75rem; font-weight: 750; }
.zam-finish-lock small { color: #6b7e80; font-size: .68rem; }
.zam-airflow-media { position: relative; overflow: hidden; background: radial-gradient(circle at 60% 45%, #f9fcfb 0 22%, #dbe8e4 55%, #b8cfca 100%); }
.zam-airflow-media::before, .zam-airflow-media::after { position: absolute; z-index: 1; right: 5%; bottom: 20%; width: 68%; height: 30%; border: 2px solid rgba(27, 151, 151, .34); border-left-color: transparent; border-radius: 50%; content: ""; transform: rotate(-8deg); pointer-events: none; }
.zam-airflow-media::after { right: 10%; bottom: 11%; width: 58%; height: 26%; opacity: .62; }
.zam-airflow-media img { position: relative; z-index: 2; min-height: 620px; padding: clamp(30px, 6vw, 92px); background: transparent; object-fit: contain; }
.zam-airflow-media figcaption { position: relative; z-index: 3; background: #102f33; }
.zam-airflow-axis { display: grid; grid-template-columns: 1fr 1fr; margin: clamp(42px, 6vw, 78px) 0 0; border-top: 1px solid rgba(237,245,243,.2); }
.zam-airflow-axis div { padding: 22px 0 12px; border-bottom: 1px solid rgba(237,245,243,.2); }
.zam-airflow-axis div + div { padding-left: 24px; border-left: 1px solid rgba(237,245,243,.2); }
.zam-airflow-axis dt { font-size: 2rem; font-weight: 700; }
.zam-airflow-axis dd { margin: 6px 0 0; color: rgba(237,245,243,.6); font-size: .75rem; }
.zam-pore-visual { position: relative; min-height: 690px; overflow: hidden; background-color: #e8efed; background-image: radial-gradient(circle, rgba(22,73,76,.35) 0 1.4px, transparent 1.7px); background-size: 16px 16px; }
.zam-pore-visual::after { position: absolute; inset: 0; background: linear-gradient(115deg, rgba(7,45,51,.08), rgba(255,255,255,.78) 43%, rgba(7,45,51,.12)); content: ""; }
.zam-pore-visual img { position: absolute; z-index: 2; left: 7%; top: 50%; width: 86%; height: auto; filter: drop-shadow(0 28px 38px rgba(8, 35, 38, .18)); transform: translateY(-50%); }
.zam1i2-product-page .zam-engine > img, .zam1i2-product-page .zam-service > img { padding: clamp(28px, 4vw, 64px); background: #f3f7f6; object-fit: contain; object-position: center; }
.zam1i2-product-page .zam-engine > img { background: radial-gradient(circle at 58% 45%, #eef5f3, #101d21 72%); }

@media (max-width: 640px) {
  .zam1i2-product-page .ztp-gallery .fht-thumbs { grid-template-columns: repeat(3, minmax(94px, 1fr)); }
  .zam-airflow-media img { min-height: 360px; padding: 28px 18px; }
  .zam-pore-visual { min-height: 390px; }
  .zam-airflow-axis { margin-top: 38px; }
}

/* ZTM21I2 / ZTM31I2 multi-split product system */
.ztm-product-page { --ztp-paper: #fbfcfb; --ztp-frost: #edf3f1; --ztp-ink: #073f46; --ztp-deep: #082c31; --ztp-graphite: #172124; --ztp-line: rgba(7,63,70,.17); }
.ztm-product-page.ztm-high-efficiency { --ztp-frost: #e9f1ee; --ztp-deep: #06282d; }
.ztm-product-page .fht-page { max-width: 1480px; padding-bottom: 0; }
.ztm-product-page main * { letter-spacing: 0; }
.ztm-hero { grid-template-columns: minmax(0,1fr) minmax(370px,410px); }
.ztm-product-stage { position: relative; display: grid; place-items: center; width: 100%; min-width: 0; min-height: 570px; overflow: hidden; border: 1px solid var(--ztp-line); background: #eaf1ef; }
.ztm-product-stage::before { position: absolute; inset: 8% 11%; border: 1px solid rgba(7,63,70,.08); border-radius: 50%; content: ""; transform: rotate(-12deg); }
.ztm-high-efficiency .ztm-product-stage { background: #dceae6; }
.ztm-product-stage > img { position: relative; z-index: 2; width: 88%; height: 470px; object-fit: contain; filter: drop-shadow(0 30px 38px rgba(15,45,47,.17)); }
.ztm-stage-label { position: absolute; z-index: 3; top: 26px; left: 28px; display: grid; gap: 4px; }
.ztm-stage-label span { color: #527073; font-size: .7rem; font-weight: 800; text-transform: uppercase; }
.ztm-stage-label strong { color: var(--ztp-ink); font-size: .85rem; }
.ztm-stage-facts { position: absolute; z-index: 3; right: 28px; bottom: 24px; display: flex; gap: 26px; color: #527073; font-size: .7rem; }
.ztm-stage-facts span { display: grid; gap: 3px; }
.ztm-stage-facts strong { color: var(--ztp-ink); font-size: 1.05rem; }
.ztm-config .fht-capacity { grid-template-columns: repeat(2,1fr); }
.ztm-system { display: grid; grid-template-columns: minmax(330px,.66fr) minmax(0,1.34fr); min-height: 760px; margin-top: clamp(86px,10vw,146px); color: #eef6f4; background: var(--ztp-deep); scroll-margin-top: 90px; }
.ztm-system-copy { display: flex; flex-direction: column; justify-content: center; padding: clamp(48px,6vw,90px); }
.ztm-system-copy .ztp-kicker { color: #6ad9cf; }
.ztm-system-copy h2 { margin: 14px 0 26px; font-size: clamp(2.7rem,5vw,5.4rem); letter-spacing: -.06em !important; line-height: .9; }
.ztm-system-copy > p:not(.ztp-kicker) { margin: 0; color: rgba(238,246,244,.69); line-height: 1.72; }
.ztm-system-copy strong { color: #f4fbf9; }
.ztm-system-map { position: relative; min-height: 760px; overflow: hidden; background: radial-gradient(circle at 58% 53%, rgba(46,145,142,.24), transparent 38%), #0d171b; }
.ztm-system-map::before, .ztm-system-map::after { position: absolute; left: 23%; width: 42%; height: 30%; border-right: 1px solid rgba(106,217,207,.52); content: ""; }
.ztm-system-map::before { top: 18%; border-top: 1px solid rgba(106,217,207,.52); border-radius: 0 80px 0 0; }
.ztm-system-map::after { bottom: 18%; border-bottom: 1px solid rgba(106,217,207,.52); border-radius: 0 0 80px 0; }
.ztm-indoor-node, .ztm-outdoor-node { position: absolute; z-index: 2; display: grid; place-items: center; }
.ztm-indoor-node { left: 7%; width: 38%; min-height: 190px; padding: 22px; border: 1px solid rgba(238,246,244,.16); background: rgba(245,250,248,.96); }
.ztm-node-a { top: 9%; }
.ztm-node-b { bottom: 9%; }
.ztm-indoor-node img { width: 100%; height: 124px; object-fit: contain; }
.ztm-indoor-node span { color: #31585c; font-size: .7rem; font-weight: 800; }
.ztm-outdoor-node { right: 5%; top: 50%; width: 48%; transform: translateY(-50%); }
.ztm-outdoor-node img { width: 100%; height: 360px; object-fit: contain; }
.ztm-outdoor-node strong { margin-top: 10px; color: #bce6df; font-size: .8rem; letter-spacing: .1em !important; }
.ztm-compatible { padding: clamp(90px,11vw,150px) 0; scroll-margin-top: 90px; }
.ztm-section-head { display: grid; grid-template-columns: .55fr 1fr .7fr; gap: 38px; align-items: end; margin-bottom: 48px; }
.ztm-section-head h2 { margin: 0; color: var(--ztp-graphite); font-size: clamp(2.5rem,4.5vw,4.8rem); letter-spacing: -.06em !important; line-height: .95; }
.ztm-section-head > p:last-child { margin: 0; color: #607578; line-height: 1.65; }
.ztm-compatible-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; background: var(--ztp-line); }
.ztm-compatible-grid article { display: grid; grid-template-columns: .78fr 1.22fr; min-height: 470px; background: #f2f6f5; }
.ztm-compatible-grid article > div { display: flex; flex-direction: column; justify-content: flex-end; padding: clamp(30px,4vw,58px); }
.ztm-compatible-grid article > div > span { color: #177d7e; font-size: .7rem; font-weight: 800; text-transform: uppercase; }
.ztm-compatible-grid h3 { margin: 8px 0 18px; color: var(--ztp-ink); font-size: clamp(2.7rem,4vw,4.8rem); letter-spacing: -.06em !important; }
.ztm-compatible-grid p { margin: 0; color: #5b7073; line-height: 1.65; }
.ztm-compatible-grid a { align-self: flex-start; margin-top: 26px; padding-bottom: 7px; border-bottom: 1px solid var(--ztp-ink); color: var(--ztp-ink); font-size: .78rem; font-weight: 800; text-decoration: none; }
.ztm-compatible-grid img { align-self: center; width: 100%; height: 360px; padding: 26px; object-fit: contain; }
.ztm-high-efficiency .ztm-efficiency { background: #d8ebe5; }
.ztm-installation { display: grid; grid-template-columns: .72fr 1.28fr; min-height: 580px; color: #eef6f4; background: #0e191d; }
.ztm-installation > div { display: flex; flex-direction: column; justify-content: center; padding: clamp(46px,6vw,90px); border-right: 1px solid rgba(238,246,244,.15); }
.ztm-installation .ztp-kicker { color: #6ad9cf; }
.ztm-installation h2 { margin: 14px 0 24px; font-size: clamp(2.4rem,4.5vw,4.9rem); letter-spacing: -.06em !important; line-height: .94; }
.ztm-installation > div > p:last-child { margin: 0; color: rgba(238,246,244,.66); line-height: 1.7; }
.ztm-installation dl { display: grid; grid-template-columns: 1fr 1fr; margin: 0; }
.ztm-installation dl div { display: flex; flex-direction: column; justify-content: flex-end; min-height: 290px; padding: clamp(30px,5vw,64px); border-right: 1px solid rgba(238,246,244,.15); border-bottom: 1px solid rgba(238,246,244,.15); }
.ztm-installation dl div:nth-child(2n) { border-right: 0; }
.ztm-installation dl div:nth-last-child(-n+2) { border-bottom: 0; }
.ztm-installation dt { color: #f4fbf9; font-size: clamp(1.75rem,3vw,3.5rem); font-weight: 700; letter-spacing: -.05em !important; }
.ztm-installation dd { margin: 10px 0 0; color: rgba(238,246,244,.57); line-height: 1.45; }

@media (max-width: 1120px) {
  .ztm-hero, .ztm-system, .ztm-section-head, .ztm-installation { grid-template-columns: 1fr; }
  .ztm-hero > * { grid-column: 1; grid-row: auto; min-width: 0; }
  .ztm-product-page .fht-product-tabs { justify-content: flex-start; min-height: 0; overflow-x: auto; }
  .ztm-product-stage { min-height: 520px; }
  .ztm-product-stage > img { height: 410px; }
  .ztm-system-map { min-height: 680px; }
  .ztm-compatible-grid { grid-template-columns: 1fr; }
  .ztm-installation > div { border-right: 0; border-bottom: 1px solid rgba(238,246,244,.15); }
}

@media (max-width: 640px) {
  .ztm-hero { width: calc(100vw - 40px); max-width: calc(100vw - 40px); min-width: 0; }
  .ztm-product-stage { min-height: 410px; }
  .ztm-product-stage > img { width: 96%; height: 300px; }
  .ztm-stage-label { top: 18px; left: 18px; }
  .ztm-stage-facts { right: 18px; bottom: 18px; max-width: calc(100% - 36px); flex-wrap: wrap; justify-content: flex-end; gap: 10px 14px; }
  .ztm-system { min-height: 0; }
  .ztm-system-copy { padding: 46px 24px; }
  .ztm-system-map { min-height: 580px; }
  .ztm-indoor-node { left: 5%; width: 52%; min-height: 142px; padding: 14px; }
  .ztm-indoor-node img { height: 88px; }
  .ztm-outdoor-node { right: 1%; width: 50%; }
  .ztm-outdoor-node img { height: 250px; }
  .ztm-system-map::before, .ztm-system-map::after { left: 28%; width: 39%; }
  .ztm-section-head { gap: 18px; }
  .ztm-compatible-grid article { grid-template-columns: 1fr; min-height: 0; }
  .ztm-compatible-grid article > div { order: 2; padding: 30px 24px 40px; }
  .ztm-compatible-grid img { height: 250px; padding: 18px; }
  .ztm-installation > div { padding: 46px 24px; }
  .ztm-installation dl { grid-template-columns: 1fr; }
  .ztm-installation dl div { min-height: 158px; border-right: 0; border-bottom: 1px solid rgba(238,246,244,.15); }
  .ztm-installation dl div:nth-last-child(-n+2) { border-bottom: 1px solid rgba(238,246,244,.15); }
  .ztm-installation dl div:last-child { border-bottom: 0; }
}

/* ZTF1I2 cascade guards after shared ZTT/ZTP product rules. */
.ztf1i2-product-page .ztf-selection-help { background:#0b3236; color:#f4fbfa; }
.ztf1i2-product-page .ztf-selection-help p,
.ztf1i2-product-page .ztf-selection-help span { color:#b9d0ce; }
.ztf1i2-product-page .fht-gallery-arrow:focus-visible,
.ztf1i2-product-page .fht-thumbs button:focus-visible,
.ztf1i2-product-page .fht-capacity button:focus-visible { outline:3px solid #20a8a7; outline-offset:3px; }
@media (prefers-reduced-motion: reduce) {
  .ztf1i2-product-page *, .ztf1i2-product-page *::before, .ztf1i2-product-page *::after { scroll-behavior:auto !important; transition:none !important; }
}

/* Split-system category approval prototype */
.split-category-page { --split-ink:#102126; --split-teal:#063f46; --split-cyan:#18bdb3; --split-paper:#f8fcfb; --split-frost:#e9f3f1; --split-line:rgba(6,63,70,.16); color:var(--split-ink); background:var(--split-paper); }
.split-category-page main { overflow:hidden; background:var(--split-paper); }
.split-category-page main * { box-sizing:border-box; letter-spacing:0; }
.split-category-page .home-a-nav a.is-active { position:relative; color:var(--split-teal); }
.split-category-page .home-a-nav a.is-active::after { position:absolute; right:0; bottom:-28px; left:0; height:3px; background:var(--split-cyan); content:""; }
.split-cat-breadcrumb { display:flex; gap:10px; width:min(1480px,calc(100% - 72px)); margin:0 auto; padding:30px 0 20px; color:#667b7e; font-size:.76rem; }
.split-cat-breadcrumb a { color:inherit; text-decoration:none; }
.split-cat-breadcrumb strong { color:var(--split-teal); }
.split-cat-hero { display:grid; grid-template-columns:minmax(330px,.76fr) minmax(0,1.24fr); width:min(1480px,calc(100% - 72px)); min-height:600px; margin:0 auto; border:1px solid var(--split-line); }
.split-cat-hero-copy { display:flex; flex-direction:column; justify-content:flex-end; padding:clamp(42px,5vw,78px); background:var(--split-teal); color:#edf7f5; }
.split-cat-kicker { margin:0; color:#147c7d; font-size:.72rem; font-weight:800; text-transform:uppercase; }
.split-cat-hero-copy .split-cat-kicker { color:#6edbd2; }
.split-cat-hero h1 { max-width:8ch; margin:12px 0 22px; color:#f3faf8; font-family:"Space Grotesk",sans-serif; font-size:clamp(3.4rem,6vw,6.8rem); line-height:.86; }
.split-cat-hero-copy > p:not(.split-cat-kicker) { max-width:38rem; margin:0; color:#c6d9d6; font-size:clamp(1rem,1.4vw,1.2rem); line-height:1.7; }
.split-cat-summary { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin:62px 0 0; border-top:1px solid rgba(237,247,245,.2); }
.split-cat-summary div { padding:22px 18px 0 0; border-right:1px solid rgba(237,247,245,.2); }
.split-cat-summary div:last-child { padding-left:18px; border-right:0; }
.split-cat-summary dt { color:#f4fbf9; font-family:"Space Grotesk",sans-serif; font-size:clamp(1.3rem,2vw,2.1rem); font-weight:700; }
.split-cat-summary dd { margin:6px 0 0; color:#9eb9b6; font-size:.72rem; line-height:1.4; }
.split-cat-hero-product { position:relative; display:grid; place-items:center; min-width:0; margin:0; overflow:hidden; background:#e4efed; }
.split-cat-hero-product::before { position:absolute; width:70%; aspect-ratio:1; border:1px solid rgba(6,63,70,.12); border-radius:50%; content:""; }
.split-cat-hero-product > span { position:absolute; top:30px; left:34px; color:#527174; font-size:.7rem; font-weight:800; text-transform:uppercase; }
.split-cat-hero-product img { position:relative; z-index:1; width:90%; height:430px; object-fit:contain; filter:drop-shadow(0 32px 30px rgba(22,61,62,.17)); }
.split-cat-hero-product figcaption { position:absolute; right:34px; bottom:30px; max-width:25rem; color:#526c6f; font-size:.78rem; line-height:1.5; text-align:right; }
.split-cat-decision { display:grid; grid-template-columns:1.2fr repeat(3,1fr); width:min(1480px,calc(100% - 72px)); margin:18px auto 0; border:1px solid var(--split-line); background:#f4faf8; }
.split-cat-decision > div,.split-cat-decision > a { min-height:160px; padding:30px 32px; border-right:1px solid var(--split-line); }
.split-cat-decision > :last-child { border-right:0; }
.split-cat-decision h2 { max-width:22rem; margin:8px 0 0; font-family:"Space Grotesk",sans-serif; font-size:clamp(1.45rem,2vw,2rem); line-height:1.08; }
.split-cat-decision > a { display:flex; flex-direction:column; justify-content:flex-end; color:var(--split-ink); text-decoration:none; }
.split-cat-decision > a::before { width:38px; height:1px; margin-bottom:auto; background:var(--split-cyan); content:""; transition:transform 220ms cubic-bezier(.2,.65,.3,1); transform-origin:left; }
.split-cat-decision > a:hover::before { transform:scaleX(1.8); }
.split-cat-decision strong { font-size:1rem; }
.split-cat-decision span { max-width:18rem; margin-top:7px; color:#62777a; font-size:.78rem; line-height:1.45; }
.split-cat-range { width:min(1480px,calc(100% - 72px)); margin:clamp(92px,10vw,150px) auto 0; }
.split-cat-section-head { display:grid; grid-template-columns:1.1fr .7fr; gap:70px; align-items:end; margin-bottom:42px; }
.split-cat-section-head h2,.split-cat-compare h2,.split-cat-support h2 { margin:10px 0 0; font-family:"Space Grotesk",sans-serif; font-size:clamp(2.5rem,5vw,5.3rem); line-height:.92; }
.split-cat-section-head > p { max-width:40rem; margin:0; color:#607578; line-height:1.7; }
.split-series-row { display:grid; grid-template-columns:54px minmax(280px,.82fr) minmax(300px,1fr) 240px; min-height:390px; border-top:1px solid var(--split-line); background:#f8fcfb; }
.split-series-row:last-child { border-bottom:1px solid var(--split-line); }
.split-series-row-tint { background:#edf5f3; }
.split-series-row-dark { color:#edf7f5; background:#0d2f34; }
.split-series-index { padding-top:30px; color:#6c8587; font-family:"Space Grotesk",sans-serif; font-size:.76rem; font-weight:700; }
.split-series-row figure { display:grid; place-items:center; min-width:0; margin:0; overflow:hidden; }
.split-series-row figure img { width:96%; height:320px; padding:22px; object-fit:contain; filter:drop-shadow(0 24px 24px rgba(20,58,60,.14)); }
.split-series-copy { display:flex; flex-direction:column; justify-content:center; padding:42px clamp(30px,4vw,66px); }
.split-series-copy > p { margin:0; color:#178082; font-size:.72rem; font-weight:800; text-transform:uppercase; }
.split-series-row-dark .split-series-copy > p { color:#69d8cf; }
.split-series-copy h3 { margin:7px 0 18px; font-family:"Space Grotesk",sans-serif; font-size:clamp(2.7rem,4.5vw,5rem); line-height:.88; }
.split-series-copy > span { max-width:34rem; color:#5a7174; line-height:1.68; }
.split-series-row-dark .split-series-copy > span { color:#b8cfcc; }
.split-series-copy a { align-self:flex-start; margin-top:28px; padding:12px 0 8px; border-bottom:1px solid currentColor; color:var(--split-teal); font-size:.78rem; font-weight:800; text-decoration:none; }
.split-series-row-dark .split-series-copy a { color:#ecf8f6; }
.split-series-row > dl { display:flex; flex-direction:column; justify-content:center; margin:0; border-left:1px solid var(--split-line); }
.split-series-row > dl div { padding:20px 26px; border-bottom:1px solid var(--split-line); }
.split-series-row > dl div:last-child { border-bottom:0; }
.split-series-row dt { color:#6a8083; font-size:.68rem; font-weight:700; text-transform:uppercase; }
.split-series-row dd { margin:7px 0 0; font-family:"Space Grotesk",sans-serif; font-size:1.05rem; font-weight:650; }
.split-series-row-dark > dl { border-color:rgba(237,247,245,.16); }
.split-series-row-dark > dl div { border-color:rgba(237,247,245,.16); }
.split-series-row-dark dt { color:#91afac; }
.split-cat-compare { width:min(1480px,calc(100% - 72px)); margin:clamp(90px,10vw,150px) auto 0; }
.split-cat-compare header { display:grid; grid-template-columns:.38fr 1fr; align-items:end; margin-bottom:34px; }
.split-cat-table-wrap { overflow-x:auto; border-top:1px solid var(--split-line); border-bottom:1px solid var(--split-line); }
.split-cat-compare table { width:100%; min-width:820px; border-collapse:collapse; }
.split-cat-compare th,.split-cat-compare td { padding:20px 18px; border-bottom:1px solid var(--split-line); text-align:left; }
.split-cat-compare thead th { color:#6b8083; font-size:.68rem; text-transform:uppercase; }
.split-cat-compare tbody th { color:var(--split-teal); font-family:"Space Grotesk",sans-serif; font-size:1.15rem; }
.split-cat-compare tbody td { color:#506a6d; font-size:.84rem; }
.split-cat-compare tbody tr:last-child th,.split-cat-compare tbody tr:last-child td { border-bottom:0; }
.split-cat-compare td:last-child { text-align:right; }
.split-cat-compare a { color:var(--split-teal); font-weight:800; text-decoration:none; }
.split-cat-support { display:grid; grid-template-columns:1fr auto; gap:60px; align-items:end; width:min(1480px,calc(100% - 72px)); margin:clamp(90px,10vw,150px) auto; padding:clamp(46px,6vw,82px); color:#edf7f5; background:var(--split-teal); }
.split-cat-support h2 { max-width:14ch; color:#f4fbf9; }
.split-cat-support div > p:last-child { max-width:42rem; margin:24px 0 0; color:#b8cecb; line-height:1.7; }
.split-cat-support .split-cat-kicker { color:#6ad9cf; }
.split-cat-support > a { display:inline-flex; align-items:center; justify-content:center; min-width:210px; min-height:52px; padding:0 24px; border:1px solid #7cded6; color:#f2fbf9; font-weight:800; text-decoration:none; }
.split-category-page a:focus-visible { outline:3px solid var(--split-cyan); outline-offset:4px; }

@media (max-width:1100px) {
  .split-cat-hero { grid-template-columns:1fr; }
  .split-cat-hero-copy { min-height:520px; }
  .split-cat-hero-product { min-height:520px; }
  .split-cat-decision { grid-template-columns:1fr 1fr; }
  .split-cat-decision > :nth-child(2) { border-right:0; }
  .split-cat-decision > :nth-child(-n+2) { border-bottom:1px solid var(--split-line); }
  .split-series-row { grid-template-columns:54px minmax(260px,.8fr) 1.2fr; }
  .split-series-row > dl { grid-column:2 / -1; display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--split-line); border-left:0; }
  .split-series-row > dl div { border-right:1px solid var(--split-line); border-bottom:0; }
  .split-series-row > dl div:last-child { border-right:0; }
}

@media (max-width:720px) {
  .split-category-page .home-a-nav a.is-active::after { bottom:-7px; }
  .split-cat-breadcrumb,.split-cat-hero,.split-cat-decision,.split-cat-range,.split-cat-compare,.split-cat-support { width:calc(100% - 32px); }
  .split-cat-breadcrumb { overflow-x:auto; white-space:nowrap; }
  .split-cat-hero-copy { min-height:0; padding:50px 24px 38px; }
  .split-cat-hero h1 { font-size:3.45rem; }
  .split-cat-summary { margin-top:42px; }
  .split-cat-summary { grid-template-columns:1fr; }
  .split-cat-summary div,.split-cat-summary div:last-child { padding:16px 0; border-right:0; border-bottom:1px solid rgba(237,247,245,.2); }
  .split-cat-summary div:last-child { border-bottom:0; }
  .split-cat-hero-product { min-height:390px; }
  .split-cat-hero-product img { width:100%; height:300px; }
  .split-cat-hero-product figcaption { right:20px; bottom:20px; left:20px; text-align:left; }
  .split-cat-decision { grid-template-columns:1fr; }
  .split-cat-decision > div,.split-cat-decision > a { min-height:132px; padding:24px; border-right:0; border-bottom:1px solid var(--split-line); }
  .split-cat-decision > :last-child { border-bottom:0; }
  .split-cat-section-head { grid-template-columns:1fr; gap:24px; }
  .split-cat-section-head h2,.split-cat-compare h2,.split-cat-support h2 { font-size:2.7rem; }
  .split-series-row { grid-template-columns:42px 1fr; min-height:0; padding-top:20px; }
  .split-series-index { grid-row:1 / span 3; padding:12px 0 0; }
  .split-series-row figure { grid-column:2; min-height:250px; }
  .split-series-row figure img { height:245px; padding:10px; }
  .split-series-copy { grid-column:2; padding:24px 18px 34px 0; }
  .split-series-copy h3 { font-size:3rem; }
  .split-series-row > dl { grid-column:1 / -1; grid-template-columns:1fr; }
  .split-series-row > dl div { padding:16px; border-right:0; border-bottom:1px solid var(--split-line); }
  .split-series-row > dl div:last-child { border-bottom:0; }
  .split-cat-compare header { grid-template-columns:1fr; gap:10px; }
  .split-cat-support { grid-template-columns:1fr; gap:34px; padding:42px 24px; }
  .split-cat-support > a { width:100%; }
}

@media (prefers-reduced-motion:reduce) {
  .split-category-page *,.split-category-page *::before,.split-category-page *::after { scroll-behavior:auto !important; transition:none !important; }
}

/* Split systems category V3 - AlexMockup composition translated into the site system. */
.split-category-page {
  --split-ink:#102126;
  --split-teal:#063f46;
  --split-cyan:#18bdb3;
  --split-paper:#fbfdfc;
  --split-frost:#eef6f4;
  --split-line:rgba(6,63,70,.16);
}
.split-category-page main { overflow:hidden; background:var(--split-paper); }
.split-category-page .split-cat-breadcrumb { width:min(1440px,calc(100% - 72px)); padding:28px 0 20px; }
.split-category-page .split-cat-hero {
  display:grid;
  grid-template-columns:minmax(360px,.8fr) minmax(0,1.2fr);
  grid-template-rows:minmax(590px,auto) auto;
  width:min(1440px,calc(100% - 72px));
  min-height:0;
  border:1px solid var(--split-line);
  background:#fff;
}
.split-category-page .split-cat-hero-copy {
  position:relative;
  z-index:2;
  justify-content:center;
  min-width:0;
  padding:clamp(58px,6vw,96px);
  color:var(--split-ink);
  background:#fff;
}
.split-category-page .split-cat-hero-copy .split-cat-kicker { color:#138d8d; }
.split-category-page .split-cat-hero h1 {
  max-width:11ch;
  margin:16px 0 28px;
  color:var(--split-teal);
  font-size:clamp(4.1rem,6.2vw,7rem);
  line-height:.88;
  letter-spacing:-.06em;
}
.split-category-page .split-cat-hero-copy > p:not(.split-cat-kicker) {
  max-width:35rem;
  color:#445e62;
  font-size:clamp(1rem,1.25vw,1.18rem);
  line-height:1.7;
}
.split-cat-hero-actions { display:flex; flex-wrap:wrap; gap:36px; margin-top:38px; }
.split-cat-hero-actions a {
  display:inline-flex;
  gap:22px;
  align-items:center;
  padding:11px 0 8px;
  border-bottom:2px solid var(--split-cyan);
  color:var(--split-teal);
  font-size:.82rem;
  font-weight:800;
  text-decoration:none;
}
.split-cat-hero-actions a span { transition:transform 180ms ease; }
.split-cat-hero-actions a:hover span { transform:translateX(4px); }
.split-category-page .split-cat-hero-product {
  position:relative;
  display:grid;
  place-items:center;
  min-width:0;
  min-height:590px;
  overflow:hidden;
  background:#e9ebe8;
}
.split-category-page .split-cat-hero-product::before {
  position:absolute;
  inset:0;
  width:auto;
  aspect-ratio:auto;
  border:0;
  border-radius:0;
  background:
    linear-gradient(90deg,transparent 0 12%,rgba(28,46,45,.12) 12% 12.4%,transparent 12.4% 52%,rgba(28,46,45,.1) 52% 52.4%,transparent 52.4%),
    linear-gradient(104deg,#d7dad5 0 18%,#f1f1ee 18% 54%,#c7c9c5 54% 100%);
  content:"";
}
.split-category-page .split-cat-hero-product::after {
  position:absolute;
  inset:9% 8%;
  border:1px solid rgba(255,255,255,.45);
  content:"";
}
.split-category-page .split-cat-hero-product img {
  position:relative;
  z-index:1;
  width:92%;
  height:430px;
  padding:20px;
  object-fit:contain;
  filter:drop-shadow(0 34px 32px rgba(24,47,46,.2));
}
.split-category-page .split-cat-summary {
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  margin:0;
  border-top:1px solid var(--split-line);
  background:#fff;
}
.split-category-page .split-cat-summary div,
.split-category-page .split-cat-summary div:last-child {
  padding:22px 32px;
  border-right:1px solid var(--split-line);
  border-bottom:0;
  text-align:center;
}
.split-category-page .split-cat-summary div:last-child { border-right:0; }
.split-category-page .split-cat-summary dt { color:var(--split-teal); font-size:1rem; }
.split-category-page .split-cat-summary dd { margin:5px 0 0; color:#73878a; }
.split-category-page .split-cat-decision {
  grid-template-columns:1.22fr repeat(3,1fr);
  width:min(1440px,calc(100% - 72px));
  margin:22px auto 0;
  border:1px solid var(--split-line);
  background:#f5faf8;
}
.split-category-page .split-cat-decision > div,
.split-category-page .split-cat-decision > a {
  min-height:190px;
  padding:34px 34px 30px;
  border-right:1px solid var(--split-line);
}
.split-category-page .split-cat-decision > :last-child { border-right:0; }
.split-category-page .split-cat-decision h2 { max-width:none; margin-top:12px; font-size:clamp(2rem,3vw,3.2rem); }
.split-category-page .split-cat-decision > a { justify-content:center; }
.split-category-page .split-cat-decision > a::before { display:none; }
.split-category-page .split-cat-decision strong { color:var(--split-teal); font-size:1.02rem; }
.split-category-page .split-cat-decision span { margin-top:13px; color:#587074; line-height:1.65; }
.split-category-page .split-cat-range { width:min(1440px,calc(100% - 72px)); margin:clamp(100px,10vw,154px) auto 0; }
.split-category-page .split-cat-section-head { grid-template-columns:1fr .62fr; gap:80px; margin-bottom:44px; }
.split-category-page .split-cat-section-head h2,
.split-category-page .split-cat-compare h2,
.split-category-page .split-cat-support h2 { letter-spacing:-.055em; }
.split-category-page .split-cat-section-head > p { padding-bottom:8px; }
.split-product-grid { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:10px; }
.split-product-card {
  position:relative;
  display:grid;
  min-width:0;
  overflow:hidden;
  border:1px solid var(--split-line);
  border-radius:3px;
  background:#f0f7f5;
}
.split-product-card::after {
  position:absolute;
  right:-10%;
  bottom:-45%;
  width:58%;
  aspect-ratio:1;
  border:1px solid rgba(6,63,70,.09);
  border-radius:50%;
  content:"";
  pointer-events:none;
}
.split-product-copy { position:relative; z-index:2; display:flex; flex-direction:column; min-width:0; padding:34px; }
.split-product-copy > p { margin:0; color:#118788; font-size:.7rem; font-weight:800; text-transform:uppercase; }
.split-product-copy h3 { margin:8px 0 13px; color:var(--split-teal); font-family:"Space Grotesk",sans-serif; font-size:clamp(2.1rem,3.6vw,4rem); line-height:.9; letter-spacing:-.05em; }
.split-product-copy > span { max-width:31rem; color:#52696d; font-size:.84rem; line-height:1.6; }
.split-product-copy > b { margin-top:18px; color:#677d80; font-size:.72rem; font-weight:700; }
.split-product-copy > a {
  align-self:flex-start;
  display:inline-flex;
  gap:16px;
  align-items:center;
  margin-top:auto;
  padding:10px 0 7px;
  border-bottom:1px solid currentColor;
  color:var(--split-teal);
  font-size:.77rem;
  font-weight:800;
  text-decoration:none;
}
.split-product-card figure { position:relative; z-index:1; display:grid; place-items:center; min-width:0; margin:0; }
.split-product-card figure img { width:100%; height:100%; padding:18px; object-fit:contain; filter:drop-shadow(0 22px 22px rgba(23,55,56,.13)); }
.split-product-feature { grid-column:span 12; grid-template-columns:minmax(300px,.7fr) minmax(0,1.3fr); min-height:500px; color:#ecf8f6; background:#073f46; }
.split-product-feature::after { border-color:rgba(235,248,246,.12); }
.split-product-feature .split-product-copy { justify-content:center; padding:clamp(38px,5vw,74px); }
.split-product-feature .split-product-copy > p { color:#64d9d0; }
.split-product-feature .split-product-copy h3 { color:#f0faf8; font-size:clamp(3.5rem,6vw,6.4rem); }
.split-product-feature .split-product-copy > span { color:#bdd2cf; }
.split-product-feature .split-product-copy > a { margin-top:34px; color:#edf8f6; }
.split-product-feature figure { min-height:500px; }
.split-product-feature figure::before { position:absolute; inset:13% 10%; border:1px solid rgba(232,248,245,.13); content:""; }
.split-product-feature figure img { position:relative; z-index:1; height:430px; padding:28px; filter:drop-shadow(0 30px 32px rgba(0,17,20,.35)); }
.split-product-feature dl { display:flex; gap:34px; margin:24px 0 0; }
.split-product-feature dl div { padding-right:34px; border-right:1px solid rgba(236,248,246,.2); }
.split-product-feature dl div:last-child { border-right:0; }
.split-product-feature dt { color:#81aaa6; font-size:.65rem; text-transform:uppercase; }
.split-product-feature dd { margin:5px 0 0; font-size:.78rem; }
.split-product-medium { grid-column:span 6; grid-template-columns:minmax(210px,.78fr) minmax(0,1.22fr); min-height:410px; }
.split-product-medium .split-product-copy { padding:38px; }
.split-product-medium figure { min-height:410px; }
.split-product-medium figure img { height:330px; }
.split-product-compact { grid-column:span 4; grid-template-rows:1fr 190px; min-height:480px; }
.split-product-compact .split-product-copy { padding:32px; }
.split-product-compact .split-product-copy h3 { font-size:2.6rem; }
.split-product-compact figure img { height:190px; padding:8px 24px 24px; }
.split-category-page .split-cat-compare { width:min(1360px,calc(100% - 72px)); margin:clamp(100px,10vw,154px) auto 0; }
.split-category-page .split-cat-compare header { grid-template-columns:.3fr 1fr; }
.split-category-page .split-cat-table-wrap { background:#fff; }
.split-category-page .split-cat-compare tbody tr { transition:background-color 160ms ease; }
.split-category-page .split-cat-compare tbody tr:hover { background:#f1f8f6; }
.split-category-page .split-cat-support {
  width:min(1440px,calc(100% - 72px));
  margin:clamp(100px,10vw,154px) auto;
  border:1px solid rgba(242,251,249,.08);
  background:#073f46;
}
.split-category-page .split-cat-support > a { gap:28px; min-width:280px; }

@media (max-width:1100px) {
  .split-category-page .split-cat-hero { grid-template-columns:1fr; grid-template-rows:auto; }
  .split-category-page .split-cat-hero-copy { min-height:500px; }
  .split-category-page .split-cat-hero-product { min-height:520px; }
  .split-category-page .split-cat-summary { grid-column:1; }
  .split-category-page .split-cat-decision { grid-template-columns:1fr 1fr; }
  .split-category-page .split-cat-decision > :nth-child(2) { border-right:0; }
  .split-category-page .split-cat-decision > :nth-child(-n+2) { border-bottom:1px solid var(--split-line); }
  .split-product-feature { grid-template-columns:1fr; }
  .split-product-feature .split-product-copy { min-height:350px; }
  .split-product-medium { grid-column:span 12; }
  .split-product-compact { grid-column:span 6; }
}

@media (max-width:720px) {
  .split-category-page .split-cat-breadcrumb,
  .split-category-page .split-cat-hero,
  .split-category-page .split-cat-decision,
  .split-category-page .split-cat-range,
  .split-category-page .split-cat-compare,
  .split-category-page .split-cat-support { width:calc(100% - 32px); }
  .split-category-page .split-cat-hero-copy { min-height:0; padding:50px 24px 44px; }
  .split-category-page .split-cat-hero h1 { font-size:clamp(3.3rem,16vw,4.25rem); }
  .split-cat-hero-actions { gap:24px; }
  .split-category-page .split-cat-hero-product { min-height:340px; }
  .split-category-page .split-cat-hero-product img { width:110%; height:290px; padding:14px; }
  .split-category-page .split-cat-summary { grid-template-columns:1fr; }
  .split-category-page .split-cat-summary div,
  .split-category-page .split-cat-summary div:last-child { padding:16px 20px; border-right:0; border-bottom:1px solid var(--split-line); text-align:left; }
  .split-category-page .split-cat-summary div:last-child { border-bottom:0; }
  .split-category-page .split-cat-decision { grid-template-columns:1fr; }
  .split-category-page .split-cat-decision > div,
  .split-category-page .split-cat-decision > a { min-height:0; padding:26px 24px; border-right:0; border-bottom:1px solid var(--split-line); }
  .split-category-page .split-cat-decision > :last-child { border-bottom:0; }
  .split-category-page .split-cat-section-head { grid-template-columns:1fr; gap:22px; }
  .split-category-page .split-cat-section-head h2,
  .split-category-page .split-cat-compare h2,
  .split-category-page .split-cat-support h2 { font-size:2.65rem; }
  .split-product-grid { display:block; }
  .split-product-card { margin-bottom:10px; }
  .split-product-feature,
  .split-product-medium,
  .split-product-compact { display:grid; grid-template-columns:1fr; grid-template-rows:auto 250px; min-height:0; }
  .split-product-feature .split-product-copy,
  .split-product-medium .split-product-copy,
  .split-product-compact .split-product-copy { min-height:330px; padding:30px 24px; }
  .split-product-copy h3,
  .split-product-feature .split-product-copy h3,
  .split-product-compact .split-product-copy h3 { font-size:3.3rem; }
  .split-product-feature figure,
  .split-product-medium figure { min-height:250px; }
  .split-product-feature figure img,
  .split-product-medium figure img,
  .split-product-compact figure img { width:100%; height:240px; padding:10px 18px 24px; }
  .split-product-feature dl { gap:18px; }
  .split-product-feature dl div { padding-right:18px; }
  .split-category-page .split-cat-compare header { grid-template-columns:1fr; }
  .split-category-page .split-cat-support { grid-template-columns:1fr; padding:42px 24px; }
  .split-category-page .split-cat-support > a { min-width:0; }
}

/* Split systems category V4 - LG-style product catalogue within Zollerz. */
.split-category-page .split-catalog-breadcrumb {
  width:min(1400px,calc(100% - 72px));
  padding-bottom:14px;
}
.split-catalog-intro {
  display:grid;
  grid-template-columns:minmax(300px,1.05fr) minmax(300px,.7fr);
  gap:clamp(48px,8vw,140px);
  align-items:end;
  width:min(1400px,calc(100% - 72px));
  margin:0 auto;
  padding:clamp(44px,6vw,86px) 0 clamp(54px,7vw,98px);
  border-bottom:1px solid var(--split-line);
}
.split-catalog-intro h1 {
  margin:12px 0 0;
  color:var(--split-teal);
  font-family:"Space Grotesk",sans-serif;
  font-size:clamp(3.1rem,5.2vw,3.7rem);
  font-weight:650;
  line-height:.98;
  letter-spacing:-.045em;
}
.split-catalog-intro > p {
  max-width:38rem;
  margin:0;
  color:#455e62;
  font-size:clamp(1rem,1.35vw,1.16rem);
  line-height:1.72;
}
.split-catalog {
  width:min(1400px,calc(100% - 72px));
  margin:clamp(66px,7vw,104px) auto 0;
}
.split-catalog-toolbar {
  display:flex;
  gap:32px;
  align-items:end;
  justify-content:space-between;
  margin-bottom:30px;
  padding-bottom:22px;
  border-bottom:1px solid var(--split-line);
}
.split-catalog-toolbar h2 {
  margin:0 0 8px;
  color:var(--split-teal);
  font-family:"Space Grotesk",sans-serif;
  font-size:clamp(2rem,3vw,2.7rem);
  line-height:1;
  letter-spacing:-.04em;
}
.split-catalog-toolbar div > span { color:#63797c; font-size:.84rem; }
.split-catalog-toolbar > a {
  display:inline-flex;
  gap:14px;
  align-items:center;
  min-height:44px;
  padding:0 2px;
  border-bottom:1px solid var(--split-teal);
  color:var(--split-teal);
  font-size:.8rem;
  font-weight:800;
  text-decoration:none;
}
.split-catalog-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.split-catalog-card {
  display:flex;
  min-width:0;
  min-height:620px;
  flex-direction:column;
  overflow:hidden;
  border:1px solid #cfdddb;
  border-radius:4px;
  background:#fbfdfc;
  transition:border-color 180ms cubic-bezier(.2,.65,.3,1);
}
.split-catalog-card:hover { border-color:#75999a; }
.split-catalog-image {
  position:relative;
  display:grid;
  place-items:center;
  min-height:300px;
  overflow:hidden;
  border-bottom:1px solid #d5e2e0;
  background:#f0f4f3;
}
.split-catalog-image::after {
  position:absolute;
  inset:24px;
  border:1px solid rgba(6,63,70,.07);
  content:"";
  pointer-events:none;
}
.split-catalog-image img {
  position:relative;
  z-index:1;
  width:92%;
  height:270px;
  padding:20px;
  object-fit:contain;
  filter:drop-shadow(0 18px 18px rgba(20,58,60,.12));
}
.split-catalog-card-body {
  display:flex;
  flex:1;
  flex-direction:column;
  padding:28px 28px 26px;
}
.split-catalog-card-body > p {
  margin:0;
  color:#147f80;
  font-size:.68rem;
  font-weight:800;
  text-transform:uppercase;
}
.split-catalog-card-body h3 {
  margin:8px 0 13px;
  color:var(--split-teal);
  font-family:"Space Grotesk",sans-serif;
  font-size:1.85rem;
  line-height:1;
  letter-spacing:-.035em;
}
.split-catalog-card-body > span {
  max-width:34rem;
  min-height:4.8em;
  color:#536a6e;
  font-size:.83rem;
  line-height:1.6;
}
.split-catalog-card-body dl {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  margin:24px 0 26px;
  border-top:1px solid #d5e2e0;
  border-bottom:1px solid #d5e2e0;
}
.split-catalog-card-body dl div { padding:15px 12px 15px 0; }
.split-catalog-card-body dl div + div { padding-left:18px; border-left:1px solid #d5e2e0; }
.split-catalog-card-body dt { color:#718589; font-size:.61rem; font-weight:700; text-transform:uppercase; }
.split-catalog-card-body dd { margin:5px 0 0; color:var(--split-ink); font-size:.82rem; font-weight:700; }
.split-catalog-cta {
  display:inline-flex;
  gap:16px;
  align-items:center;
  justify-content:space-between;
  width:100%;
  min-height:48px;
  margin-top:auto;
  padding:0 18px;
  border:1px solid var(--split-teal);
  color:#f4fbfa;
  background:var(--split-teal);
  font-size:.78rem;
  font-weight:800;
  text-decoration:none;
  transition:background-color 180ms cubic-bezier(.2,.65,.3,1),color 180ms cubic-bezier(.2,.65,.3,1);
}
.split-catalog-cta:hover { color:var(--split-teal); background:#e9f4f2; }
.split-category-page #compare { scroll-margin-top:100px; }

@media (max-width:1040px) {
  .split-catalog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width:720px) {
  .split-category-page .split-catalog-breadcrumb,
  .split-catalog-intro,
  .split-catalog { width:calc(100% - 32px); }
  .split-catalog-intro { grid-template-columns:1fr; gap:24px; padding:38px 0 50px; }
  .split-catalog-intro h1 { font-size:2.75rem; }
  .split-catalog-toolbar { align-items:flex-start; }
  .split-catalog-toolbar > a { flex:0 0 auto; }
  .split-catalog-grid { grid-template-columns:1fr; gap:14px; }
  .split-catalog-card { min-height:0; }
  .split-catalog-image { min-height:245px; }
  .split-catalog-image img { height:225px; padding:14px; }
  .split-catalog-card-body { min-height:320px; padding:24px 22px 22px; }
  .split-catalog-card-body > span { min-height:0; }
}

/* Split systems category V5 - approved four-series catalogue. */
.split-catalog-intro-media {
  position:relative;
  grid-column:1 / -1;
  display:grid;
  place-items:center;
  height:clamp(320px,34vw,470px);
  margin:16px 0 0;
  overflow:hidden;
  border:1px solid var(--split-line);
  border-radius:4px;
  background:
    radial-gradient(circle at 50% 52%,rgba(255,255,255,.96) 0 32%,rgba(255,255,255,0) 65%),
    linear-gradient(135deg,#dfeae7 0%,#f3f7f5 52%,#d7e4e1 100%);
}
.split-catalog-intro-media::before {
  position:absolute;
  inset:12% 8%;
  border:1px solid rgba(6,63,70,.09);
  border-radius:50%;
  content:"";
}
.split-catalog-intro-media img {
  position:relative;
  z-index:1;
  display:block;
  width:min(1060px,88%);
  height:80%;
  object-fit:contain;
  object-position:center;
  filter:drop-shadow(0 28px 24px rgba(20,55,57,.16));
}
.split-category-page .split-catalog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.split-category-page .split-catalog-card { min-height:650px; }
.split-category-page .split-catalog-image { min-height:330px; }
.split-category-page .split-catalog-image img { height:295px; }
.split-category-page .split-catalog-cta,
.split-category-page .split-catalog-cta:visited { color:#f4fbfa !important; -webkit-text-fill-color:#f4fbfa; }
.split-category-page .split-catalog-cta:hover { color:var(--split-teal) !important; -webkit-text-fill-color:var(--split-teal); }

@media (max-width:720px) {
  .split-catalog-intro-media { grid-column:1; height:240px; margin-top:8px; }
  .split-catalog-intro-media::before { inset:14% 4%; }
  .split-catalog-intro-media img { width:108%; height:84%; }
  .split-category-page .split-catalog-grid { grid-template-columns:1fr; gap:14px; }
  .split-category-page .split-catalog-card { min-height:0; }
  .split-category-page .split-catalog-image { min-height:245px; }
  .split-category-page .split-catalog-image img { height:225px; }
}

/* Multi-split category V1 - exact product imagery arranged as a system. */
.multi-split-category-page .multi-system-hero {
  display:block;
  height:clamp(400px,39vw,560px);
  background:
    linear-gradient(90deg,rgba(255,255,255,.74),rgba(255,255,255,.18) 48%,rgba(255,255,255,.62)),
    linear-gradient(135deg,#dce9e6 0%,#f4f8f6 52%,#d8e5e2 100%);
}
.multi-split-category-page .multi-system-hero::before {
  inset:11% 34% 11% 7%;
  border-radius:3px;
  background:rgba(255,255,255,.2);
}
.multi-system-routes {
  position:absolute;
  z-index:0;
  inset:0;
  width:100%;
  height:100%;
}
.multi-system-routes path {
  fill:none;
  stroke:rgba(6,63,70,.3);
  stroke-dasharray:2 8;
  stroke-linecap:round;
  stroke-width:1.5;
}
.multi-system-indoor,
.multi-system-outdoor {
  position:absolute;
  z-index:1;
}
.multi-system-indoor {
  left:clamp(28px,5vw,76px);
  width:min(45%,560px);
  height:35%;
}
.multi-system-indoor-top { top:8%; }
.multi-system-indoor-bottom { bottom:11%; }
.multi-system-indoor img,
.multi-system-outdoor img {
  width:100% !important;
  height:100% !important;
  padding:0;
  object-fit:contain;
  filter:drop-shadow(0 18px 18px rgba(20,55,57,.14));
}
.multi-system-indoor span,
.multi-system-outdoor span {
  position:absolute;
  padding:7px 10px;
  border:1px solid rgba(6,63,70,.15);
  border-radius:2px;
  color:#34575b;
  background:rgba(251,253,252,.9);
  font-size:.6rem;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.multi-system-indoor span { left:2%; bottom:3%; }
.multi-system-outdoor {
  right:clamp(30px,6vw,90px);
  top:15%;
  width:min(34%,430px);
  height:70%;
}
.multi-system-outdoor span { right:0; bottom:4%; }
.multi-system-hero figcaption {
  position:absolute;
  z-index:2;
  right:18px;
  bottom:16px;
  display:flex;
  gap:10px;
  align-items:center;
  padding:9px 12px;
  color:#395d60;
  background:rgba(251,253,252,.88);
  font-size:.62rem;
  font-weight:700;
  letter-spacing:.02em;
}
.multi-system-hero figcaption i { width:3px; height:3px; border-radius:50%; background:#18bdb3; }
.multi-split-category-page .multi-outdoor-card .split-catalog-image img {
  width:72%;
  height:290px;
  padding:26px;
}
.multi-split-category-page .split-catalog-card-body > span { min-height:5.7em; }
.multi-outdoor-card .split-catalog-card-body dl { grid-template-columns:repeat(2,minmax(0,1fr)); }
.multi-outdoor-card .split-catalog-card-body dl div:nth-child(3) { border-left:0; border-top:1px solid #d5e2e0; }
.multi-outdoor-card .split-catalog-card-body dl div:nth-child(4) { border-top:1px solid #d5e2e0; }

.multi-compatible-range {
  width:min(1400px,calc(100% - 72px));
  margin:clamp(74px,8vw,118px) auto 0;
}
.multi-compatible-range > header {
  display:grid;
  grid-template-columns:minmax(300px,1fr) minmax(300px,.72fr);
  gap:clamp(46px,8vw,130px);
  align-items:end;
  margin-bottom:30px;
  padding-bottom:24px;
  border-bottom:1px solid var(--split-line);
}
.multi-compatible-range h2 {
  max-width:660px;
  margin:10px 0 0;
  color:var(--split-teal);
  font-family:"Space Grotesk",sans-serif;
  font-size:clamp(2rem,3.4vw,3.15rem);
  line-height:1.02;
  letter-spacing:-.045em;
}
.multi-compatible-range > header > p {
  margin:0;
  color:#536a6e;
  font-size:.9rem;
  line-height:1.7;
}
.multi-compatible-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.multi-compatible-grid article { min-width:0; overflow:hidden; border:1px solid #cfdddb; border-radius:4px; background:#fbfdfc; }
.multi-compatible-grid a {
  display:grid;
  grid-template-columns:minmax(225px,.82fr) minmax(280px,1.18fr);
  min-height:370px;
  color:inherit;
  text-decoration:none;
}
.multi-compatible-grid a > div { display:flex; flex-direction:column; padding:32px 28px 26px; }
.multi-compatible-grid p { margin:0; color:#147f80; font-size:.65rem; font-weight:800; text-transform:uppercase; }
.multi-compatible-grid h3 { margin:8px 0 16px; color:var(--split-teal); font-family:"Space Grotesk",sans-serif; font-size:2rem; line-height:1; letter-spacing:-.035em; }
.multi-compatible-grid div > span { color:#536a6e; font-size:.82rem; line-height:1.6; }
.multi-compatible-grid b { display:flex; justify-content:space-between; margin-top:auto; padding-top:18px; border-top:1px solid #d5e2e0; color:var(--split-teal); font-size:.72rem; }
.multi-compatible-grid b i { font-style:normal; }
.multi-compatible-grid figure { display:grid; place-items:center; min-width:0; margin:0; overflow:hidden; border-left:1px solid #d5e2e0; background:#f0f4f3; }
.multi-compatible-grid img { width:94%; height:300px; padding:16px; object-fit:contain; filter:drop-shadow(0 18px 18px rgba(20,58,60,.12)); transition:transform 260ms cubic-bezier(.2,.65,.3,1); }
.multi-compatible-grid a:hover img { transform:scale(1.025); }

@media (max-width:900px) {
  .multi-compatible-grid a { grid-template-columns:1fr; }
  .multi-compatible-grid figure { min-height:245px; border-top:1px solid #d5e2e0; border-left:0; }
  .multi-compatible-grid img { height:225px; }
}

@media (max-width:720px) {
  .multi-split-category-page .multi-system-hero { height:390px; }
  .multi-split-category-page .multi-system-hero::before { inset:7% 7% 44%; }
  .multi-system-routes { display:none; }
  .multi-system-indoor { left:18px; width:56%; height:25%; }
  .multi-system-indoor-top { top:7%; }
  .multi-system-indoor-bottom { top:30%; bottom:auto; }
  .multi-system-outdoor { right:18px; top:50%; width:54%; height:42%; }
  .multi-system-indoor span,
  .multi-system-outdoor span { padding:5px 7px; font-size:.53rem; }
  .multi-system-hero figcaption { right:auto; bottom:12px; left:12px; font-size:.53rem; }
  .multi-split-category-page .multi-outdoor-card .split-catalog-image img { width:80%; height:220px; padding:18px; }
  .multi-split-category-page .split-catalog-card-body > span { min-height:0; }
  .multi-compatible-range { width:calc(100% - 32px); margin-top:70px; }
  .multi-compatible-range > header { grid-template-columns:1fr; gap:20px; }
  .multi-compatible-grid { grid-template-columns:1fr; gap:14px; }
  .multi-compatible-grid a { min-height:0; }
  .multi-compatible-grid a > div { min-height:260px; padding:26px 22px 22px; }
}

/* Multi-split product cutouts and indoor-unit taxonomy */
.ztm-stage-facts {
  right:28px;
  bottom:22px;
  display:grid;
  grid-template-columns:repeat(2,minmax(126px,auto));
  gap:0;
  align-items:end;
  color:#527073;
}
.ztm-stage-facts span { min-width:0; padding-left:20px; border-left:1px solid rgba(6,63,70,.2); }
.ztm-stage-facts strong { white-space:nowrap; font-size:1.12rem; line-height:1.1; }
.ztm-stage-facts small { color:#527073; font-size:.66rem; font-weight:500; line-height:1.2; }

.ztm-system-map { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(250px,.9fr); align-items:center; gap:clamp(24px,4vw,64px); padding:clamp(42px,6vw,84px); }
.ztm-system-map::before,
.ztm-system-map::after { display:none; }
.ztm-indoor-stack { position:relative; z-index:2; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.ztm-indoor-node,
.ztm-outdoor-node { position:relative; inset:auto; width:auto; min-height:0; }
.ztm-indoor-node {
  display:grid;
  grid-template-rows:112px auto auto;
  place-items:center;
  padding:15px 12px 13px;
  border:1px solid rgba(238,246,244,.15);
  background:rgba(238,246,244,.065);
  color:#eef6f4;
  text-decoration:none;
}
.ztm-indoor-node img { width:100%; height:100%; object-fit:contain; filter:drop-shadow(0 12px 16px rgba(0,0,0,.24)); }
.ztm-indoor-node span { margin-top:8px; color:#eef6f4; font-size:.72rem; font-weight:800; letter-spacing:.04em; }
.ztm-indoor-node small { margin-top:2px; color:rgba(238,246,244,.52); font-size:.58rem; }
.ztm-indoor-node:hover { border-color:rgba(106,217,207,.58); background:rgba(106,217,207,.1); }
.ztm-outdoor-node { display:grid; place-items:center; align-content:center; }
.ztm-outdoor-node::before { position:absolute; right:100%; top:50%; width:clamp(28px,5vw,76px); border-top:1px solid rgba(106,217,207,.55); content:""; }
.ztm-outdoor-node img { width:100%; height:360px; object-fit:contain; filter:drop-shadow(0 25px 28px rgba(0,0,0,.35)); }
.ztm-outdoor-node strong { margin-top:12px; color:#6ad9cf; font-size:1rem; }
.ztm-outdoor-node small { margin-top:3px; color:rgba(238,246,244,.55); font-size:.66rem; }

.ztm-compatible-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; background:transparent; }
.ztm-compatible-grid article { display:flex; flex-direction:column; min-height:460px; overflow:hidden; border:1px solid var(--ztp-line); background:#f2f6f5; }
.ztm-compatible-grid article > img { order:0; width:100%; height:235px; padding:24px 22px 4px; object-fit:contain; filter:drop-shadow(0 16px 18px rgba(20,58,60,.13)); }
.ztm-compatible-grid article > div { order:1; flex:1; justify-content:flex-start; padding:24px 26px 28px; }
.ztm-compatible-grid h3 { margin:7px 0 12px; font-size:2.2rem; }
.ztm-compatible-grid p { font-size:.82rem; }
.ztm-compatible-grid a { margin-top:auto; padding-top:24px; }

.multi-system-indoor { left:clamp(28px,5vw,76px); width:min(42%,500px); height:22%; }
.multi-system-indoor-top { top:4%; }
.multi-system-indoor-middle { top:35%; }
.multi-system-indoor-bottom { top:66%; bottom:auto; }
.multi-system-indoor span { bottom:0; }
.multi-compatible-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.multi-compatible-grid a { grid-template-columns:1fr; min-height:430px; }
.multi-compatible-grid figure { order:0; min-height:215px; border:0; border-bottom:1px solid #d5e2e0; background:#f0f4f3; }
.multi-compatible-grid a > div { order:1; min-height:215px; padding:23px 24px 22px; }
.multi-compatible-grid img { height:210px; padding:16px 18px 6px; }

/* ZTM indoor product pages */
.ztm-indoor-page main { color:var(--ztp-ink); background:#f7faf9; }
.ztmi-hero { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr); grid-template-rows:auto auto; width:min(1880px,calc(100% - 80px)); margin:0 auto; padding:clamp(58px,7vw,104px) 0 clamp(80px,9vw,130px); }
.ztmi-hero-copy { align-self:center; padding:clamp(30px,5vw,70px); }
.ztmi-hero-copy h1 { margin:12px 0 4px; font-size:clamp(4.8rem,10vw,10rem); letter-spacing:-.075em; line-height:.78; }
.ztmi-hero-copy > strong { color:#147f80; font-size:clamp(1.2rem,2vw,1.8rem); }
.ztmi-hero-copy > p:not(.ztp-kicker) { max-width:670px; margin:28px 0 34px; color:#536a6e; font-size:clamp(1.05rem,1.55vw,1.4rem); line-height:1.55; }
.ztmi-hero > figure { display:grid; place-items:center; min-width:0; min-height:540px; margin:0; background:radial-gradient(circle at 50% 48%,rgba(24,189,179,.13),transparent 57%); }
.ztmi-hero > figure img { width:92%; height:500px; object-fit:contain; filter:drop-shadow(0 32px 34px rgba(20,58,60,.15)); }
.ztmi-config { grid-column:1/-1; display:grid; grid-template-columns:.55fr .9fr 1.2fr 1.55fr auto; gap:26px; align-items:center; padding:30px clamp(28px,4vw,58px); border:1px solid var(--ztp-line); background:#fff; }
.ztmi-config h2 { margin:0; font-size:2rem; letter-spacing:-.04em; }
.ztmi-config .ztp-choice-head { display:none; }
.ztmi-config .fht-capacity { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }
.ztmi-config .fht-capacity button { min-height:56px; }
.ztmi-config dl { display:grid; grid-template-columns:repeat(4,1fr); margin:0; }
.ztmi-config dl div { display:grid; gap:4px; padding:0 16px; border-left:1px solid var(--ztp-line); }
.ztmi-config dt { color:#6a7f82; font-size:.62rem; text-transform:uppercase; }
.ztmi-config dd { margin:0; font-size:.8rem; font-weight:800; white-space:nowrap; }
.ztmi-config .fht-button { white-space:nowrap; }
.ztmi-feature { display:grid; grid-template-columns:1fr 1fr; min-height:680px; color:#edf7f5; background:#0c181c; }
.ztmi-feature > div { display:flex; flex-direction:column; justify-content:center; padding:clamp(52px,7vw,110px); }
.ztmi-feature .ztp-kicker { color:#6ad9cf; }
.ztmi-feature h2 { max-width:720px; margin:16px 0 26px; font-size:clamp(3rem,5vw,6rem); letter-spacing:-.065em; line-height:.9; }
.ztmi-feature p:not(.ztp-kicker) { max-width:620px; margin:0; color:rgba(238,246,244,.66); line-height:1.75; }
.ztmi-feature figure { display:grid; place-items:center; margin:0; background:radial-gradient(circle,rgba(24,189,179,.18),transparent 58%); }
.ztmi-feature img { width:86%; height:520px; object-fit:contain; filter:drop-shadow(0 28px 28px rgba(0,0,0,.35)); }
.ztmi-specs { display:grid; grid-template-columns:.65fr 1.35fr; gap:clamp(36px,6vw,92px); padding:clamp(86px,10vw,150px) max(40px,calc((100vw - 1740px)/2)); background:#fff; }
.ztmi-specs header h2 { margin:12px 0 22px; font-size:clamp(2.8rem,5vw,5.5rem); letter-spacing:-.06em; line-height:.9; }
.ztmi-specs header > strong { color:#147f80; font-size:.86rem; }
.ztmi-specs dl { margin:0; border-top:1px solid var(--ztp-line); }
.ztmi-specs dl div { display:grid; grid-template-columns:1fr 1fr; gap:24px; padding:20px 0; border-bottom:1px solid var(--ztp-line); }
.ztmi-specs dt { color:#587073; }
.ztmi-specs dd { margin:0; text-align:right; font-weight:800; }
.ztm-indoor-page .ztp-selection-help { color:#eef7f5; background:#063f46; }
.ztm-indoor-page .ztp-selection-help .ztp-kicker { color:#6ad9cf; }
.ztm-indoor-page .ztp-selection-help h2 { color:#fff; }
.ztm-indoor-page .ztp-selection-help span { color:rgba(238,247,245,.72); }
.ztm-indoor-page .ztp-selection-help .fht-button { border-color:#6ad9cf; color:#063f46; background:#6ad9cf; }

@media (max-width:1100px) {
  .ztm-compatible-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .multi-compatible-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ztmi-hero { grid-template-columns:1fr; }
  .ztmi-config { grid-template-columns:1fr 1fr; }
  .ztmi-config > .ztp-kicker,.ztmi-config h2 { grid-column:auto; }
  .ztmi-config .fht-capacity,.ztmi-config dl { grid-column:1/-1; }
}

@media (max-width:760px) {
  .ztm-stage-facts { right:14px; bottom:14px; grid-template-columns:repeat(2,minmax(92px,auto)); }
  .ztm-stage-facts span { padding-left:12px; }
  .ztm-system-map { grid-template-columns:1fr; min-height:0; padding:34px 20px 46px; }
  .ztm-indoor-stack { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ztm-indoor-node { left:auto; width:auto; grid-template-rows:80px auto auto; padding:12px 8px; }
  .ztm-outdoor-node img { height:250px; }
  .ztm-outdoor-node::before { display:none; }
  .ztm-compatible-grid { grid-template-columns:1fr; }
  .ztm-compatible-grid article { grid-template-columns:1fr; min-height:0; }
  .multi-system-indoor-middle { top:31%; }
  .multi-system-indoor-bottom { top:55%; }
  .multi-system-outdoor { top:52%; }
  .multi-compatible-grid { grid-template-columns:1fr; }
  .ztmi-hero { width:calc(100% - 32px); padding-top:24px; }
  .ztmi-hero-copy { padding:34px 8px; }
  .ztmi-hero > figure { min-height:330px; }
  .ztmi-hero > figure img { height:300px; }
  .ztmi-config { grid-template-columns:1fr; gap:18px; padding:26px 20px; }
  .ztmi-config .fht-capacity,.ztmi-config dl { grid-column:1; }
  .ztmi-config dl { grid-template-columns:1fr 1fr; gap:14px 0; }
  .ztmi-feature,.ztmi-specs { grid-template-columns:1fr; }
  .ztmi-feature { min-height:0; }
  .ztmi-feature > div { padding:64px 24px 24px; }
  .ztmi-feature figure { min-height:390px; }
  .ztmi-feature img { height:340px; }
  .ztmi-specs { padding:74px 24px; }
  .ztmi-specs dl div { grid-template-columns:1fr; gap:8px; }
  .ztmi-specs dd { text-align:left; }
}
/* Portable catalogue: shared product-card language, portrait equipment stages. */
.pac-product,.pac-story,.pac-specifications{max-width:1400px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,6vw,88px);padding:32px 28px 72px}
.pac-product-stage{min-width:0;min-height:540px;background:#eaf2f0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;padding:36px}
.pac-product-stage img{width:auto;max-width:100%;height:450px;object-fit:contain}.pac-product-stage span{color:#526d72;font-size:14px}.pac-product-stage.pac-compact-stage img{height:300px}
.pac-product-copy{align-self:center;min-width:0}.pac-product-copy h1{font-size:clamp(38px,5vw,64px);margin:8px 0 20px}.pac-product-copy>p{max-width:52ch;line-height:1.65}.pac-product-copy .pac-lead{font-size:24px;line-height:1.35;color:#063f46}.pac-key-facts{display:grid;grid-template-columns:1fr 1fr;gap:24px;border-block:1px solid #cbdcdd;padding:24px 0;margin:28px 0}.pac-key-facts dt{font-size:14px;color:#526d72}.pac-key-facts dd{font-family:'Space Grotesk',sans-serif;font-size:32px;margin:8px 0 0;color:#063f46}.pac-key-facts small{font-size:15px}.pac-article{display:flex;justify-content:space-between;gap:16px;font-size:15px}.pac-spec-link{display:inline-block;margin-top:20px;text-decoration:underline;text-underline-offset:5px}.pac-product-copy .split-catalog-cta{color:#fff;background:#063f46}
.pac-story{border-top:1px solid #cbdcdd;padding-top:64px}.pac-story h2,.pac-install h2,.pac-specifications h2{font-size:clamp(27px,3.2vw,42px);line-height:1.2;margin:12px 0 24px}.pac-story p,.pac-install p,.pac-specifications p{line-height:1.7;max-width:60ch}.pac-story-facts{display:grid;grid-template-columns:1fr 1fr;gap:32px}.pac-story-facts strong{display:block;font:500 64px 'Space Grotesk',sans-serif;color:#063f46}.pac-story-facts small{font-size:26px}.pac-story-facts span{display:block;margin-top:8px}.pac-story-facts>p{grid-column:1/-1;margin:0;border-top:1px solid #cbdcdd;padding-top:22px}
.pac-install{background:#063f46;color:#f4fbfa;padding:56px max(28px,calc((100vw - 1344px)/2));margin-bottom:64px}.pac-install h2,.pac-install p{color:#f4fbfa}.pac-install .split-cat-kicker{color:#20d0c3}.pac-specifications dl{margin:0}.pac-specifications dl>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;padding:17px 0;border-bottom:1px solid #cbdcdd;font-size:15px;line-height:1.5}.pac-specifications dt{color:#526d72}.pac-specifications dd{margin:0;text-align:right;font-weight:600}.pac-specifications{scroll-margin-top:100px}
.pac-category-media{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:clamp(40px,10vw,180px);margin:0;background:#eaf2f0;padding:40px 24px}.pac-category-media img{height:320px;width:auto;max-width:40%;object-fit:contain}.split-catalog-image.pac-catalog-image{height:310px}.pac-catalog-image img{height:260px;width:auto;max-width:80%;object-fit:contain}.portable-page .split-catalog-card-body>span{min-height:5em}
@media(max-width:760px){.pac-product,.pac-story,.pac-specifications{grid-template-columns:1fr;padding:24px 20px 44px;gap:32px}.pac-product-stage{min-height:360px;padding:24px}.pac-product-stage img{height:310px}.pac-product-copy .pac-lead{font-size:21px}.pac-install{padding:36px 20px;margin-bottom:24px}.pac-category-media{gap:28px;padding:24px 16px}.pac-category-media img{height:230px}.pac-story-facts strong{font-size:48px}.pac-specifications dl>div{font-size:14px;gap:12px}.pac-catalog-intro h1{font-size:clamp(32px,8vw,46px)}}
.portable-page .split-cat-support{background:#063f46;color:#f4fbfa;margin:0 auto 64px;max-width:1344px;padding:44px;min-height:0}.portable-page .split-cat-support h2,.portable-page .split-cat-support p,.portable-page .split-cat-support a{color:#f4fbfa}.portable-page .split-cat-support .split-cat-kicker{color:#20d0c3}.portable-page .split-cat-support a{border:1px solid #8cc5c5;padding:16px 22px;min-height:48px}.portable-page .split-catalog-cta{background:#063f46;color:#f4fbfa}.portable-page .split-catalog-card{background:#f4fbfa}.portable-page .split-catalog-image{background:#eaf2f0}
@media(max-width:760px){.portable-page .split-cat-support{margin:0 20px 36px;padding:28px 22px;display:grid;gap:24px}.portable-page .split-cat-support h2{font-size:28px}}
.portable-page{--split-teal:#063f46;--split-ink:#1b2226}.portable-page .split-catalog-cta,.portable-page .split-catalog-cta:visited{color:#f4fbfa!important;-webkit-text-fill-color:#f4fbfa}.portable-page .split-catalog-cta:hover{background:#09525a}.portable-page .split-cat-support a{color:#f4fbfa!important;-webkit-text-fill-color:#f4fbfa}
