:root {
  color-scheme: light;
  --bg: #edf4f9;
  --surface: #ffffff;
  --surface-soft: rgba(255, 255, 255, 0.8);
  --surface-raised: rgba(255, 255, 255, 0.94);
  --surface-muted: rgba(245, 249, 253, 0.92);
  --line: rgba(13, 34, 58, 0.11);
  --line-strong: rgba(13, 34, 58, 0.2);
  --ink: #102033;
  --muted: #485b72;
  --text-soft: #334962;
  --navy: #0b1c2f;
  --blue: #1e66da;
  --blue-strong: #114da9;
  --blue-soft: rgba(30, 102, 218, 0.12);
  --link-color: #1e66da;
  --lime: #c7ff31;
  --lime-soft: rgba(199, 255, 49, 0.16);
  --hero-gradient-main: linear-gradient(
    136deg,
    rgba(17, 44, 79, 0.98),
    rgba(31, 76, 142, 0.95) 56%,
    rgba(68, 122, 204, 0.9)
  );
  --hero-gradient-accent: radial-gradient(
    circle at 100% 0,
    rgba(199, 255, 49, 0.14),
    transparent 30%
  );
  --hero-gradient-depth: radial-gradient(
    circle at 18% 100%,
    rgba(122, 171, 255, 0.16),
    transparent 32%
  );
  --hero-gradient-sheen: linear-gradient(
    112deg,
    rgba(255, 255, 255, 0.07),
    transparent 38%
  );
  --hero-intro: rgba(255, 255, 255, 0.96);
  --hero-meta: rgba(255, 255, 255, 0.74);
  --hero-motif-opacity: 0.22;
  --hero-badge-bg: rgba(255, 255, 255, 0.14);
  --hero-badge-border: rgba(255, 255, 255, 0.18);
  --hero-badge-text: rgba(255, 255, 255, 0.96);
  --hero-metric-bg: rgba(255, 255, 255, 0.14);
  --hero-metric-border: rgba(255, 255, 255, 0.16);
  --hero-metric-text: rgba(255, 255, 255, 0.94);
  --shadow: 0 20px 48px rgba(11, 28, 47, 0.11);
  --shadow-heavy: 0 34px 90px rgba(11, 28, 47, 0.16);
  --page-glow-primary: rgba(30, 102, 218, 0.2);
  --page-glow-secondary: rgba(199, 255, 49, 0.16);
  --page-glow-tertiary: rgba(122, 171, 255, 0.16);
  --page-sheen: rgba(255, 255, 255, 0.3);
  --page-beam-primary: rgba(255, 255, 255, 0.28);
  --page-beam-secondary: rgba(30, 102, 218, 0.12);
  --page-conic-glow: rgba(30, 102, 218, 0.1);
  --page-orb-primary: rgba(30, 102, 218, 0.12);
  --page-orb-secondary: rgba(199, 255, 49, 0.09);
  --page-orb-tertiary: rgba(114, 159, 255, 0.12);
  --page-blob-lime-primary: rgba(199, 255, 49, 0.24);
  --page-blob-lime-secondary: rgba(163, 225, 57, 0.17);
  --page-blob-blue: rgba(98, 150, 255, 0.18);
  --page-blob-blue-secondary: rgba(138, 180, 255, 0.15);
  --page-blob-lime-tertiary: rgba(199, 255, 49, 0.15);
  --page-ribbon: rgba(255, 255, 255, 0.14);
  --page-grid-opacity: 0.16;
  --radius-xl: 30px;
  --radius-lg: 22px;
  --radius-md: 16px;
  --shell: min(1540px, calc(100vw - 40px));
  --heading-font: "Public Sans", "Segoe UI Variable Display", "Segoe UI",
    sans-serif;
  --body-font: "Public Sans", "Segoe UI Variable Text", "Segoe UI",
    sans-serif;
  --header-height: 0px;
}

:root[data-theme="dark"] {
  color-scheme: dark;
  --bg: #122638;
  --surface: #182b40;
  --surface-soft: rgba(24, 42, 61, 0.9);
  --surface-raised: rgba(29, 48, 71, 0.95);
  --surface-muted: rgba(27, 46, 68, 0.94);
  --line: rgba(220, 232, 247, 0.14);
  --line-strong: rgba(220, 232, 247, 0.24);
  --ink: #edf4ff;
  --muted: #c4d0de;
  --text-soft: #d7e1ed;
  --navy: #edf4ff;
  --blue: #7aabff;
  --blue-strong: #9dc0ff;
  --blue-soft: rgba(122, 171, 255, 0.22);
  --link-color: #9dc0ff;
  --lime: #d8ff57;
  --lime-soft: rgba(216, 255, 87, 0.18);
  --hero-gradient-main: linear-gradient(
    136deg,
    rgba(18, 34, 54, 0.97),
    rgba(34, 76, 143, 0.95) 58%,
    rgba(59, 106, 187, 0.92)
  );
  --hero-gradient-accent: radial-gradient(
    circle at 100% 0,
    rgba(216, 255, 87, 0.14),
    transparent 30%
  );
  --hero-gradient-depth: radial-gradient(
    circle at 18% 100%,
    rgba(122, 171, 255, 0.2),
    transparent 32%
  );
  --hero-gradient-sheen: linear-gradient(
    112deg,
    rgba(255, 255, 255, 0.08),
    transparent 36%
  );
  --hero-intro: rgba(255, 255, 255, 0.95);
  --hero-meta: rgba(255, 255, 255, 0.78);
  --hero-motif-opacity: 0.16;
  --hero-badge-bg: rgba(255, 255, 255, 0.12);
  --hero-badge-border: rgba(255, 255, 255, 0.16);
  --hero-badge-text: rgba(255, 255, 255, 0.95);
  --hero-metric-bg: rgba(255, 255, 255, 0.14);
  --hero-metric-border: rgba(255, 255, 255, 0.18);
  --hero-metric-text: rgba(255, 255, 255, 0.95);
  --shadow: 0 20px 52px rgba(0, 0, 0, 0.18);
  --shadow-heavy: 0 34px 96px rgba(0, 0, 0, 0.26);
  --page-glow-primary: rgba(122, 171, 255, 0.24);
  --page-glow-secondary: rgba(216, 255, 87, 0.1);
  --page-glow-tertiary: rgba(79, 135, 255, 0.18);
  --page-sheen: rgba(255, 255, 255, 0.06);
  --page-beam-primary: rgba(122, 171, 255, 0.08);
  --page-beam-secondary: rgba(216, 255, 87, 0.04);
  --page-conic-glow: rgba(122, 171, 255, 0.08);
  --page-orb-primary: rgba(122, 171, 255, 0.12);
  --page-orb-secondary: rgba(216, 255, 87, 0.07);
  --page-orb-tertiary: rgba(79, 135, 255, 0.11);
  --page-blob-lime-primary: rgba(216, 255, 87, 0.14);
  --page-blob-lime-secondary: rgba(177, 229, 88, 0.1);
  --page-blob-blue: rgba(122, 171, 255, 0.12);
  --page-blob-blue-secondary: rgba(96, 146, 255, 0.1);
  --page-blob-lime-tertiary: rgba(216, 255, 87, 0.08);
  --page-ribbon: rgba(255, 255, 255, 0.03);
  --page-grid-opacity: 0.1;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  min-width: 320px;
  overflow-x: clip;
  font-family: var(--body-font);
  color: var(--ink);
  background:
    radial-gradient(circle at 0 0, var(--page-glow-primary), transparent 30%),
    radial-gradient(circle at 100% 0, var(--page-glow-secondary), transparent 24%),
    radial-gradient(circle at 50% 34%, var(--page-glow-tertiary), transparent 36%),
    conic-gradient(
      from 210deg at 84% 10%,
      var(--page-conic-glow),
      transparent 0.18turn,
      transparent 0.78turn,
      var(--page-conic-glow)
    ),
    linear-gradient(128deg, transparent 2%, var(--page-beam-primary) 28%, transparent 54%),
    linear-gradient(312deg, transparent 18%, var(--page-beam-secondary) 46%, transparent 69%),
    linear-gradient(180deg, var(--page-sheen), transparent 24%),
    var(--bg);
}

body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  opacity: var(--page-grid-opacity);
  background-image:
    linear-gradient(var(--line) 1px, transparent 1px),
    linear-gradient(90deg, var(--line) 1px, transparent 1px);
  background-size: 44px 44px;
  mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.8), transparent 92%);
}

body::after {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(ellipse 26% 20% at 6% 52%, var(--page-blob-lime-tertiary), transparent 62%),
    radial-gradient(ellipse 30% 22% at 14% 24%, var(--page-blob-blue), transparent 62%),
    radial-gradient(ellipse 24% 18% at 18% 88%, var(--page-blob-blue-secondary), transparent 62%),
    radial-gradient(ellipse 24% 18% at 58% 14%, var(--page-blob-blue-secondary), transparent 60%),
    radial-gradient(ellipse 26% 20% at 88% 18%, var(--page-blob-lime-primary), transparent 62%),
    radial-gradient(ellipse 28% 18% at 28% 78%, var(--page-blob-lime-tertiary), transparent 62%),
    radial-gradient(ellipse 32% 24% at 78% 82%, var(--page-blob-lime-secondary), transparent 64%),
    radial-gradient(circle at 16% 28%, var(--page-orb-primary), transparent 24%),
    radial-gradient(circle at 84% 62%, var(--page-orb-secondary), transparent 22%),
    radial-gradient(circle at 50% 100%, var(--page-orb-tertiary), transparent 28%),
    linear-gradient(112deg, transparent 18%, var(--page-ribbon) 46%, transparent 72%);
  filter: blur(30px);
  opacity: 0.96;
  mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.96), rgba(0, 0, 0, 0.84) 82%, transparent 100%);
}

:root[data-theme="dark"] body::after {
  opacity: 0.88;
}

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

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

button,
input,
textarea {
  font: inherit;
}

button {
  cursor: pointer;
}

h1,
h2,
h3,
p,
span,
strong,
a,
button {
  overflow-wrap: break-word;
  word-break: normal;
}

.shell {
  width: var(--shell);
  margin-inline: auto;
}

.icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.1rem;
  height: 1.1rem;
  flex: 0 0 auto;
  line-height: 0;
}

.icon svg {
  display: block;
  width: 100%;
  height: 100%;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.85;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.icon--moon {
  transform: translateY(-1px);
}

.icon--device {
  transform: translateY(-1px);
}

.eyebrow {
  margin: 0;
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.18em;
}

@keyframes riseIn {
  from {
    opacity: 0;
    transform: translateY(12px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.button,
.icon-button,
.locale-pill,
.filter-chip,
.tag,
.main-nav__link,
.nav-dropdown__link,
.mobile-nav__link,
.mobile-nav__subitem,
.header-quick,
.panel--link,
.panel--interactive {
  transition:
    transform 180ms ease,
    background 180ms ease,
    border-color 180ms ease,
    color 180ms ease,
    box-shadow 180ms ease,
    opacity 180ms ease;
}

.button:hover,
.icon-button:hover,
.locale-pill:hover,
.filter-chip:hover,
.main-nav__link:hover,
.nav-dropdown__link:hover,
.mobile-nav__link:hover,
.mobile-nav__subitem:hover,
.header-quick:hover,
.panel--link:hover,
.panel--interactive:hover {
  transform: translateY(-1px);
}

.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.6rem;
  min-height: 52px;
  padding: 0.82rem 1.2rem;
  border-radius: 999px;
  border: 1px solid var(--line-strong);
  background: var(--surface-raised);
  color: var(--ink);
  box-shadow: var(--shadow);
  font-weight: 800;
}

.button--primary {
  background: linear-gradient(135deg, var(--lime), #efff8c);
  color: #091422;
  border-color: rgba(9, 20, 34, 0.12);
  box-shadow: 0 18px 34px rgba(199, 255, 49, 0.22);
}

.button--secondary {
  background: var(--surface-raised);
}

.icon-button,
.locale-pill,
.filter-chip,
.tag,
.badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 0.6rem 0.9rem;
  border-radius: 999px;
  border: 1px solid var(--line);
  background: var(--surface-raised);
  color: var(--ink);
  box-shadow: var(--shadow);
}

.icon-button {
  min-width: 42px;
  line-height: 0;
}

.icon-button:not(.is-active):hover,
.icon-button:not(.is-active):focus-visible {
  background: linear-gradient(180deg, rgba(30, 102, 218, 0.07), transparent),
    var(--surface);
  border-color: var(--line-strong);
  color: var(--link-color);
  box-shadow: var(--shadow-heavy);
}

.icon-button--static {
  pointer-events: none;
  box-shadow: none;
}

.locale-pill,
.filter-chip,
.tag,
.badge {
  font-size: 0.86rem;
  font-weight: 800;
}

.locale-pill.is-active,
.filter-chip.is-active {
  background: var(--blue);
  border-color: var(--blue);
  color: #fff;
}

.badge {
  min-height: 34px;
  padding: 0.45rem 0.78rem;
  border-color: rgba(255, 255, 255, 0.14);
  background: rgba(255, 255, 255, 0.09);
  color: rgba(255, 255, 255, 0.88);
  box-shadow: none;
}

.page-shell {
  padding-bottom: 1.6rem;
}

.site-header {
  position: sticky;
  top: 0;
  z-index: 60;
  padding-top: 0.85rem;
}

.site-header__inner {
  position: relative;
  padding: 0.85rem 1rem;
  border-radius: var(--radius-xl);
  border: 1px solid var(--line);
  background: var(--surface-soft);
  box-shadow: var(--shadow-heavy);
  backdrop-filter: blur(16px);
  transition:
    padding 180ms ease,
    border-radius 180ms ease,
    background 180ms ease,
    box-shadow 220ms ease;
}

.site-header.has-open-panel .site-header__inner {
  background: var(--surface-raised);
  border-color: var(--line-strong);
}

.site-header__row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 1rem;
  align-items: center;
}

.site-header.is-condensed .site-header__inner {
  padding: 0.42rem 0.65rem;
  border-radius: 22px;
}

.brand {
  display: flex;
  align-items: center;
  gap: 0.9rem;
  min-width: 0;
  justify-self: start;
  inline-size: fit-content;
  max-inline-size: 100%;
}

.brand__mark {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(241, 246, 251, 0.96));
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.82),
    0 12px 28px rgba(11, 28, 47, 0.12);
}

.brand__mark::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.26), transparent 58%);
  pointer-events: none;
}

.brand__mark--header {
  width: 148px;
  height: 46px;
  background: #ffffff;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.92),
    0 10px 22px rgba(11, 28, 47, 0.14),
    0 0 24px rgba(122, 171, 255, 0.08);
}

.brand__mark--footer {
  width: 136px;
  height: 44px;
  background: #ffffff;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.92),
    0 10px 22px rgba(11, 28, 47, 0.12),
    0 0 18px rgba(122, 171, 255, 0.05);
}

.brand img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 22%;
  transform: scale(1.02);
  transition:
    width 180ms ease,
    height 180ms ease;
}

.brand__mark--header img {
  object-fit: contain;
  object-position: center;
  transform: none;
  padding: 0.12rem 0.22rem;
}

.brand__mark--footer img {
  padding: 0.12rem 0.22rem;
}

.brand__copy {
  display: grid;
  gap: 0.14rem;
  min-width: 0;
}

.brand__copy strong,
.page-hero h1,
.section-heading h2,
.panel h3,
.footer-card h3,
.timeline-card__year,
.sitemap-card h3,
.hero-panel-list__item strong,
.hero-metric strong,
.stat-inline strong {
  font-family: var(--heading-font);
}

.brand__copy strong {
  font-size: 1.24rem;
  line-height: 1;
}

.brand__copy span {
  color: var(--text-soft);
  font-size: 0.9rem;
  transition:
    max-height 180ms ease,
    opacity 180ms ease;
}

.site-header.is-condensed .brand__mark--header {
  width: 92px;
  height: 34px;
  border-radius: 12px;
}

.site-header.is-condensed .brand__copy strong {
  font-size: 1rem;
}

.site-header.is-condensed .brand__copy span {
  max-height: 0;
  opacity: 0;
  overflow: hidden;
}

.brand__mark img,
.footer-brand img {
  display: block;
}

:root[data-theme="dark"] .brand__mark {
  background: linear-gradient(180deg, rgba(244, 247, 252, 0.98), rgba(222, 231, 243, 0.94));
  border-color: rgba(255, 255, 255, 0.12);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.74),
    0 14px 30px rgba(0, 0, 0, 0.24);
}

:root[data-theme="dark"] .brand__mark--header {
  background: #ffffff;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.94),
    0 14px 28px rgba(0, 0, 0, 0.28),
    0 0 34px rgba(122, 171, 255, 0.14);
}

:root[data-theme="dark"] .brand__mark--footer {
  background: #ffffff;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.94),
    0 14px 24px rgba(0, 0, 0, 0.24),
    0 0 22px rgba(122, 171, 255, 0.08);
}

.site-header__inner,
.site-header__row,
.brand,
.brand__copy,
.header-tools,
.header-tools > *,
.hero-panel-list__item > *,
.footer-brand > *,
.contact-person > *,
.catalog-search,
.catalog-search > * {
  min-width: 0;
}

.main-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.25rem;
  min-width: 0;
  flex-wrap: wrap;
}

.nav-item {
  position: relative;
}

.main-nav__link {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  min-height: 46px;
  padding: 0.72rem 0.95rem;
  border-radius: 999px;
  border: 1px solid transparent;
  background: transparent;
  color: var(--muted);
  font-weight: 800;
  white-space: nowrap;
}

.main-nav__link.is-active,
.nav-item:hover > .main-nav__link,
.nav-item:focus-within > .main-nav__link {
  border-color: var(--line);
  background: var(--surface-raised);
  color: var(--ink);
  box-shadow: var(--shadow);
}

.nav-dropdown {
  position: absolute;
  top: calc(100% + 12px);
  left: 0;
  min-width: 320px;
  display: grid;
  gap: 0.35rem;
  padding: 0.8rem;
  border-radius: 20px;
  border: 1px solid var(--line);
  background: var(--surface-raised);
  box-shadow: var(--shadow-heavy);
  opacity: 0;
  pointer-events: none;
  transform: translateY(8px);
  transition:
    transform 180ms ease,
    opacity 180ms ease;
}

.nav-item.has-children:hover .nav-dropdown,
.nav-item.has-children:focus-within .nav-dropdown {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}

.nav-dropdown__label {
  margin: 0.2rem 0.35rem 0.1rem;
  color: var(--muted);
  font-size: 0.74rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.16em;
}

.nav-dropdown__link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  min-height: 44px;
  padding: 0.75rem 0.85rem;
  border-radius: 14px;
  border: 1px solid transparent;
  background: transparent;
  color: var(--ink);
  font-weight: 700;
}

.nav-dropdown__link.is-active,
.nav-dropdown__link:hover {
  border-color: var(--line);
  background: var(--surface-muted);
}

.header-tools,
.language-control,
.hero-actions,
.hero-pills,
.catalog-filter-row,
.tag-row,
.footer-links {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
  align-items: center;
}

.header-tools {
  justify-content: flex-end;
  flex-wrap: nowrap;
}

.header-tool-group {
  position: relative;
}

.icon-button.is-active {
  background: var(--blue);
  border-color: var(--blue);
  color: #fff;
}

.header-popover {
  position: absolute;
  top: calc(100% + 10px);
  right: 0;
  min-width: 200px;
  display: grid;
  gap: 0.35rem;
  padding: 0.55rem;
  border-radius: 18px;
  border: 1px solid var(--line);
  background: var(--surface-raised);
  box-shadow: var(--shadow-heavy);
  opacity: 0;
  pointer-events: none;
  transform: translateY(8px) scale(0.98);
  transition:
    opacity 200ms ease,
    transform 220ms ease;
}

.header-popover.is-open {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0) scale(1);
}

.header-popover__item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.7rem;
  min-height: 44px;
  padding: 0.72rem 0.8rem;
  border-radius: 14px;
  border: 1px solid transparent;
  background: transparent;
  color: var(--ink);
  font-weight: 800;
  text-align: left;
  transition:
    transform 180ms ease,
    background 180ms ease,
    border-color 180ms ease,
    color 180ms ease,
    box-shadow 180ms ease;
}

.header-popover__item small {
  color: var(--muted);
  font-size: 0.8rem;
  font-weight: 600;
}

.header-popover__item:not(.is-active):hover,
.header-popover__item:not(.is-active):focus-visible {
  background: linear-gradient(135deg, rgba(30, 102, 218, 0.08), transparent),
    var(--surface-muted);
  border-color: var(--line-strong);
  color: var(--ink);
  transform: translateY(-1px);
  box-shadow: var(--shadow);
}

.header-popover__item:not(.is-active):hover small,
.header-popover__item:not(.is-active):focus-visible small {
  color: var(--text-soft);
}

.header-popover__item.is-active {
  background: linear-gradient(135deg, var(--blue-strong), var(--blue));
  border-color: transparent;
  color: #fff;
}

.header-popover__item.is-active small {
  color: rgba(255, 255, 255, 0.82);
}

.menu-trigger {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.58rem;
  min-height: 42px;
  padding: 0.64rem 0.95rem;
  border-radius: 999px;
  border: 1px solid var(--line);
  background: var(--surface-raised);
  color: var(--ink);
  box-shadow: var(--shadow);
  font-weight: 800;
  line-height: 1;
  transition:
    transform 180ms ease,
    background 180ms ease,
    border-color 180ms ease,
    color 180ms ease,
    box-shadow 180ms ease;
}

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

.menu-trigger:not(.is-active):hover,
.menu-trigger:not(.is-active):focus-visible {
  background: linear-gradient(180deg, rgba(30, 102, 218, 0.07), transparent),
    var(--surface);
  border-color: var(--line-strong);
  color: var(--link-color);
  box-shadow: var(--shadow-heavy);
}

.menu-trigger.is-active {
  background: linear-gradient(135deg, var(--blue-strong), var(--blue));
  border-color: transparent;
  color: #fff;
}

.menu-trigger__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 0;
}

.site-header.is-condensed .menu-trigger {
  padding-inline: 0.72rem;
}

.site-header.is-condensed .menu-trigger__label {
  display: none;
}

.site-header.is-condensed .icon-button,
.site-header.is-condensed .menu-trigger {
  min-height: 40px;
  min-width: 40px;
}

.site-header.is-condensed .icon--moon {
  transform: translateY(-1.5px);
}

.site-header.is-condensed .icon--device {
  transform: translateY(-1.5px);
}

.header-menu {
  position: absolute;
  inset-inline: 0;
  top: calc(100% + 12px);
  display: grid;
  gap: 0.9rem;
  padding: 0;
  border: 1px solid transparent;
  border-radius: 26px;
  background: transparent;
  max-height: 0;
  overflow: hidden auto;
  opacity: 0;
  pointer-events: none;
  transform: translateY(-10px);
  transition:
    opacity 220ms ease,
    transform 260ms ease,
    max-height 280ms ease,
    padding-top 220ms ease;
}

.header-menu.is-open {
  max-height: min(72dvh, calc(100dvh - 96px));
  padding: 0.9rem;
  border-color: var(--line);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.18), transparent),
    var(--surface-raised);
  box-shadow: var(--shadow-heavy);
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}

.header-menu__meta {
  display: flex;
  flex-wrap: wrap;
  gap: clamp(0.65rem, 2.2vw, 1.45rem);
  align-items: center;
  justify-content: center;
}

.header-menu__contact,
.header-menu__status {
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
  min-height: 40px;
  padding: 0.65rem 0.85rem;
  border-radius: 999px;
  border: 1px solid var(--line);
  background: var(--surface-raised);
  color: var(--ink);
  box-shadow: var(--shadow);
  font-weight: 700;
  transition:
    transform 180ms ease,
    background 180ms ease,
    border-color 180ms ease,
    color 180ms ease,
    box-shadow 180ms ease;
}

.header-menu__status {
  color: var(--ink);
}

.header-menu__contact:hover,
.header-menu__contact:focus-visible {
  background: linear-gradient(135deg, rgba(30, 102, 218, 0.07), transparent),
    var(--surface);
  border-color: var(--line-strong);
  color: var(--ink);
  transform: translateY(-1px);
  box-shadow: var(--shadow-heavy);
}

.header-menu__layout {
  display: grid;
  gap: 0.85rem;
  grid-template-columns: minmax(0, 1.08fr) minmax(380px, 1fr);
  align-items: start;
}

.header-menu__grid {
  display: grid;
  gap: 0.85rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: start;
  align-content: start;
}

.header-menu__card {
  display: grid;
  gap: 0.85rem;
  min-width: 0;
  padding: 1rem;
  border-radius: 20px;
  border: 1px solid var(--line);
  background: var(--surface-muted);
  box-shadow: var(--shadow);
  animation: riseIn 420ms ease both;
  align-self: start;
  transition:
    transform 180ms ease,
    background 180ms ease,
    border-color 180ms ease,
    box-shadow 180ms ease;
}

.header-menu__card.is-active {
  border-color: rgba(30, 102, 218, 0.4);
}

.header-menu__primary,
.header-menu__card:not(.header-menu__card--products) {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.75rem;
  color: inherit;
}

.header-menu__primary {
  margin: -0.1rem -0.1rem 0;
  padding: 0.1rem;
  border-radius: 16px;
  transition:
    background 180ms ease,
    color 180ms ease,
    box-shadow 180ms ease;
}

.header-menu__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.8rem;
  height: 2.8rem;
  border-radius: 16px;
  border: 1px solid var(--line);
  background: var(--surface-raised);
  color: var(--link-color);
  flex: 0 0 auto;
  transition:
    background 180ms ease,
    border-color 180ms ease,
    color 180ms ease,
    box-shadow 180ms ease,
    transform 180ms ease;
}

.header-menu__copy {
  display: grid;
  gap: 0.18rem;
  min-width: 0;
  flex: 1 1 auto;
}

.header-menu__copy strong {
  font-family: var(--heading-font);
  font-size: 1.18rem;
  line-height: 1;
}

.header-menu__card:not(.header-menu__card--products) {
  gap: 0.68rem;
  padding: 0.9rem;
}

.header-menu__card:not(.header-menu__card--products) .header-menu__icon {
  width: 2.55rem;
  height: 2.55rem;
  border-radius: 14px;
}

.header-menu__card:not(.header-menu__card--products) .header-menu__copy strong {
  font-size: 1.02rem;
  line-height: 1.08;
}

.header-menu__card--products {
  min-height: 100%;
  gap: 0.7rem;
  background: linear-gradient(180deg, rgba(30, 102, 218, 0.07), transparent),
    var(--surface-muted);
  border-color: rgba(30, 102, 218, 0.16);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.36),
    var(--shadow);
}

.header-menu__card--products .header-menu__primary {
  margin: 0;
  padding: 0.8rem;
  border-radius: 18px;
  border: 1px solid rgba(30, 102, 218, 0.14);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.34), transparent),
    var(--surface);
  box-shadow: 0 14px 30px rgba(11, 28, 47, 0.07);
}

.header-menu__copy span {
  color: var(--text-soft);
  line-height: 1.5;
  transition: color 180ms ease;
}

.header-menu__subgrid {
  display: grid;
  gap: 0.4rem;
  padding: 0.72rem;
  border-radius: 18px;
  border: 1px solid rgba(30, 102, 218, 0.12);
  background: linear-gradient(180deg, rgba(30, 102, 218, 0.04), transparent),
    rgba(255, 255, 255, 0.34);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.32);
}

.header-menu__label {
  margin: 0.02rem 0 0.12rem;
  color: var(--muted);
  font-size: 0.74rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.16em;
}

.header-menu__subitem {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  min-height: 44px;
  padding: 0.72rem 0.85rem;
  border-radius: 14px;
  border: 1px solid rgba(13, 34, 58, 0.1);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.32), transparent),
    var(--surface);
  color: var(--ink);
  font-weight: 700;
  box-shadow: 0 8px 22px rgba(11, 28, 47, 0.05);
  transition:
    transform 180ms ease,
    background 180ms ease,
    border-color 180ms ease,
    color 180ms ease,
    box-shadow 180ms ease;
}

.header-menu__card:not(.header-menu__card--products):hover,
.header-menu__card:not(.header-menu__card--products):focus-visible,
.header-menu__card--products:focus-within {
  border-color: var(--line-strong);
  background: linear-gradient(180deg, rgba(30, 102, 218, 0.05), transparent),
    var(--surface);
  box-shadow: var(--shadow-heavy);
  transform: translateY(-2px);
}

.header-menu__primary:hover,
.header-menu__primary:focus-visible {
  background: linear-gradient(135deg, rgba(30, 102, 218, 0.08), transparent),
    rgba(255, 255, 255, 0.02);
}

.header-menu__subitem:not(.is-active):hover,
.header-menu__subitem:not(.is-active):focus-visible {
  border-color: var(--line-strong);
  background: linear-gradient(135deg, rgba(30, 102, 218, 0.08), transparent),
    var(--surface);
  box-shadow: var(--shadow);
  transform: translateY(-1px);
}

.header-menu__subitem.is-active {
  border-color: transparent;
  background: linear-gradient(135deg, var(--blue-strong), var(--blue));
  color: #fff;
}

.header-menu__card:not(.header-menu__card--products):hover .header-menu__icon,
.header-menu__card:not(.header-menu__card--products):focus-visible .header-menu__icon,
.header-menu__card--products:focus-within .header-menu__icon,
.header-menu__primary:hover .header-menu__icon,
.header-menu__primary:focus-visible .header-menu__icon {
  background: var(--surface);
  border-color: rgba(30, 102, 218, 0.22);
  color: var(--link-color);
  box-shadow: 0 16px 28px rgba(30, 102, 218, 0.14);
}

.header-menu__card:not(.header-menu__card--products):hover .header-menu__copy span,
.header-menu__card:not(.header-menu__card--products):focus-visible .header-menu__copy span,
.header-menu__card--products:focus-within .header-menu__copy span,
.header-menu__primary:hover .header-menu__copy span,
.header-menu__primary:focus-visible .header-menu__copy span {
  color: var(--ink);
}

.icon-button:focus-visible,
.menu-trigger:focus-visible,
.header-popover__item:focus-visible,
.header-menu__contact:focus-visible,
.header-menu__card:focus-visible,
.header-menu__primary:focus-visible,
.header-menu__subitem:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px var(--blue-soft), var(--shadow-heavy);
}

:root[data-theme="dark"] .header-menu__card {
  background: linear-gradient(180deg, rgba(122, 171, 255, 0.08), transparent),
    var(--surface-muted);
}

:root[data-theme="dark"] .header-menu__card--products {
  background: linear-gradient(180deg, rgba(122, 171, 255, 0.14), transparent),
    rgba(25, 43, 64, 0.98);
  border-color: rgba(122, 171, 255, 0.18);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.04),
    var(--shadow);
}

:root[data-theme="dark"] .header-menu__card--products .header-menu__primary {
  border-color: rgba(122, 171, 255, 0.16);
  background: linear-gradient(180deg, rgba(122, 171, 255, 0.12), transparent),
    rgba(19, 35, 54, 0.96);
  box-shadow: 0 16px 30px rgba(0, 0, 0, 0.14);
}

:root[data-theme="dark"] .header-menu__subgrid {
  border-color: rgba(122, 171, 255, 0.14);
  background: linear-gradient(180deg, rgba(122, 171, 255, 0.08), transparent),
    rgba(18, 34, 54, 0.64);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
}

:root[data-theme="dark"] .header-menu__subitem:hover {
  background: rgba(255, 255, 255, 0.08);
}

:root[data-theme="dark"] .header-menu__subitem {
  border-color: rgba(255, 255, 255, 0.08);
  background: linear-gradient(180deg, rgba(122, 171, 255, 0.1), transparent),
    rgba(24, 42, 61, 0.96);
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.14);
}

:root[data-theme="dark"] .icon-button:not(.is-active):hover,
:root[data-theme="dark"] .icon-button:not(.is-active):focus-visible,
:root[data-theme="dark"] .menu-trigger:not(.is-active):hover,
:root[data-theme="dark"] .menu-trigger:not(.is-active):focus-visible,
:root[data-theme="dark"] .header-menu__contact:hover,
:root[data-theme="dark"] .header-menu__contact:focus-visible,
:root[data-theme="dark"] .header-popover__item:not(.is-active):hover,
:root[data-theme="dark"] .header-popover__item:not(.is-active):focus-visible,
:root[data-theme="dark"] .header-menu__card:not(.header-menu__card--products):hover,
:root[data-theme="dark"] .header-menu__card:not(.header-menu__card--products):focus-visible,
:root[data-theme="dark"] .header-menu__card--products:focus-within,
:root[data-theme="dark"] .header-menu__primary:hover,
:root[data-theme="dark"] .header-menu__primary:focus-visible,
:root[data-theme="dark"] .header-menu__subitem:not(.is-active):hover,
:root[data-theme="dark"] .header-menu__subitem:not(.is-active):focus-visible {
  background: linear-gradient(180deg, rgba(122, 171, 255, 0.16), transparent),
    rgba(24, 42, 61, 0.98);
}

:root[data-theme="dark"] .header-menu__status,
:root[data-theme="dark"] .header-menu__contact,
:root[data-theme="dark"] .header-popover,
:root[data-theme="dark"] .menu-trigger,
:root[data-theme="dark"] .icon-button {
  background: rgba(23, 40, 59, 0.96);
}

:root[data-theme="dark"] .header-menu.is-open {
  background: linear-gradient(180deg, rgba(122, 171, 255, 0.12), transparent),
    rgba(16, 30, 47, 0.98);
}

:root[data-theme="dark"] .site-header__inner {
  background: linear-gradient(180deg, rgba(122, 171, 255, 0.08), transparent),
    var(--surface-soft);
}

:root[data-theme="dark"] .page-hero__panel,
:root[data-theme="dark"] .panel,
:root[data-theme="dark"] .footer-card,
:root[data-theme="dark"] .catalog-toolbar,
:root[data-theme="dark"] .grade-banner {
  background: linear-gradient(180deg, rgba(122, 171, 255, 0.12), transparent),
    var(--surface-soft);
}

:root[data-theme="dark"] .panel--lead {
  background: linear-gradient(180deg, rgba(122, 171, 255, 0.22), transparent),
    var(--surface-soft);
}

:root[data-theme="dark"] .panel--accent,
:root[data-theme="dark"] .grade-banner {
  background: linear-gradient(180deg, rgba(216, 255, 87, 0.16), transparent),
    var(--surface-soft);
}

.header-quick {
  display: grid;
  gap: 0.12rem;
  min-width: 0;
  padding: 0.74rem 0.95rem;
  border-radius: 999px;
  border: 1px solid var(--line);
  background: var(--surface-raised);
  box-shadow: var(--shadow);
}

.header-quick__label {
  color: var(--muted);
  font-size: 0.7rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.16em;
}

.header-quick strong {
  font-size: 0.9rem;
  white-space: nowrap;
}

.language-control {
  padding: 0.2rem;
  border-radius: 999px;
  border: 1px solid var(--line);
  background: rgba(255, 255, 255, 0.22);
}

:root[data-theme="dark"] .language-control {
  background: rgba(255, 255, 255, 0.03);
}

.nav-toggle,
.mobile-nav,
.main-nav,
.header-quick,
.language-control {
  display: none;
}

.page-main {
  padding-top: 1.25rem;
}

.page-hero {
  padding-top: 0.55rem;
}

.page-hero__layout {
  display: grid;
  grid-template-columns: minmax(0, 1.72fr) minmax(300px, 0.68fr);
  gap: 1rem;
  align-items: stretch;
}

.page-hero__layout--single {
  grid-template-columns: 1fr;
}

.page-hero__layout--documents {
  grid-template-columns: minmax(0, 1.7fr) minmax(280px, 0.7fr);
}

.page-hero__copy,
.page-hero__panel {
  min-width: 0;
  display: grid;
  align-content: start;
  padding: clamp(1.35rem, 2.2vw, 2.35rem);
  border-radius: var(--radius-xl);
  border: 1px solid var(--line);
  box-shadow: var(--shadow-heavy);
  animation: riseIn 500ms ease both;
}

.page-hero__copy {
  position: relative;
  overflow: hidden;
  background:
    var(--hero-gradient-main),
    var(--hero-gradient-accent),
    var(--hero-gradient-depth),
    var(--hero-gradient-sheen);
  color: #fff;
}

.page-hero__copy > * {
  position: relative;
  z-index: 1;
}

.page-hero__headline-block,
.page-hero__body {
  position: relative;
  z-index: 1;
}

.page-hero__headline-block {
  display: grid;
  align-content: start;
}

.page-hero__body {
  display: grid;
  align-content: start;
}

.page-hero__layout:not(.page-hero__layout--single) .page-hero__copy:not(.page-hero__copy--home) {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.page-hero__layout:not(.page-hero__layout--single) .page-hero__panel {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.page-hero__layout:not(.page-hero__layout--single) .page-hero__panel > * {
  width: 100%;
}

.page-hero__layout:not(.page-hero__layout--single) .page-hero__headline-block {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  min-height: 0;
  padding-bottom: 1.25rem;
}

.page-hero__layout:not(.page-hero__layout--single) .page-hero__headline-block h1 {
  margin-block: auto;
}

.page-hero__layout:not(.page-hero__layout--single) .page-hero__body {
  display: grid;
  align-content: end;
}

.page-hero__copy .eyebrow {
  margin-bottom: clamp(0.7rem, 1.1vw, 1.1rem);
  color: var(--hero-meta);
}

.page-hero__copy::before {
  content: "";
  position: absolute;
  right: -3.4rem;
  top: -2rem;
  width: min(21rem, 42vw);
  aspect-ratio: 1;
  background: url("assets/images/motifs/benzene-core.svg") center / contain no-repeat;
  opacity: var(--hero-motif-opacity);
  pointer-events: none;
}

.page-hero__copy::after {
  content: "";
  position: absolute;
  right: -5rem;
  bottom: -5.5rem;
  width: 18rem;
  height: 18rem;
  border-radius: 48% 52% 63% 37% / 31% 37% 63% 69%;
  background: radial-gradient(circle at center, rgba(199, 255, 49, 0.28), transparent 62%);
  pointer-events: none;
}

.page-hero__panel {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.22), transparent), var(--surface-soft);
  backdrop-filter: blur(14px);
}

.page-hero h1 {
  margin: 0;
  max-width: none;
  font-size: clamp(1.95rem, 3.45vw, 3.85rem);
  line-height: 1.08;
  letter-spacing: -0.05em;
  text-wrap: pretty;
  hyphens: manual;
}

.page-hero__layout:not(.page-hero__layout--single) .page-hero h1 {
  font-size: clamp(2.2rem, 4.15vw, 4.35rem);
  line-height: 1.03;
  text-wrap: balance;
}

.page-hero__layout--company .page-hero h1,
.page-hero__layout--single .page-hero h1 {
  max-width: none;
  font-size: clamp(1.95rem, 2.8vw, 3.5rem);
  line-height: 1.12;
  text-wrap: pretty;
}

.page-hero__layout--home {
  grid-template-columns: minmax(0, 1.72fr) minmax(300px, 0.68fr);
}

.page-hero__copy--home {
  grid-template-rows: minmax(0, 1fr) auto;
}

.page-hero__copy--home .page-hero__headline-block {
  align-content: start;
  grid-template-rows: auto 1fr;
  padding-bottom: 1.8rem;
}

.page-hero__copy--home .eyebrow {
  margin-bottom: clamp(1.05rem, 1.85vw, 1.8rem);
}

.page-hero__copy--home .page-hero__body {
  align-content: end;
}

.page-hero__copy--home h1 {
  align-self: center;
  font-size: clamp(2.4rem, 4.55vw, 4.85rem);
  line-height: 1.02;
  text-wrap: balance;
}

.page-hero__copy--home .hero-actions {
  margin-top: 1.15rem;
}

.page-hero__copy--home .hero-pills {
  margin-top: 1rem;
}

.page-hero__intro {
  margin: 1.2rem 0 0;
  max-width: none;
  color: var(--hero-intro);
  font-size: 1.05rem;
  line-height: 1.75;
}

.hero-actions {
  margin-top: 1.35rem;
}

.hero-pills {
  margin-top: 1.15rem;
}

.page-hero__copy .hero-metrics {
  margin-top: 1.45rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.page-hero__copy .hero-metric {
  padding: 0.95rem 1rem;
  background: var(--hero-metric-bg);
  border-color: var(--hero-metric-border);
  box-shadow: none;
}

.page-hero__copy .hero-metric span {
  color: var(--hero-metric-text);
}

.page-hero__copy .badge {
  background: var(--hero-badge-bg);
  border-color: var(--hero-badge-border);
  color: var(--hero-badge-text);
}

.page-hero__copy .button--secondary {
  background: rgba(255, 255, 255, 0.94);
  color: #091422;
  border-color: rgba(9, 20, 34, 0.1);
  box-shadow: 0 18px 34px rgba(9, 20, 34, 0.16);
}

.hero-metrics,
.panel-grid,
.timeline-grid,
.catalog-grid,
.footer-grid,
.sitemap-grid {
  display: grid;
  gap: 1rem;
}

.hero-metrics {
  grid-template-columns: repeat(auto-fit, minmax(148px, 1fr));
}

.hero-metric {
  padding: 1rem;
  border-radius: 18px;
  border: 1px solid var(--line);
  background: var(--surface-raised);
  box-shadow: var(--shadow);
}

.hero-metric strong {
  display: block;
  font-size: 1.9rem;
  line-height: 1;
}

.hero-metric span {
  display: block;
  margin-top: 0.45rem;
  color: var(--muted);
  line-height: 1.55;
}

.hero-panel-list {
  display: grid;
  gap: 0.8rem;
  margin-top: 1rem;
}

.hero-panel-list--stack {
  margin-top: 0;
}

.hero-panel-list--dense {
  gap: 0.65rem;
}

.hero-panel-list__item {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.85rem;
  padding: 1rem;
  border-radius: 18px;
  border: 1px solid var(--line);
  background: var(--surface-raised);
  box-shadow: var(--shadow);
  transition:
    transform 180ms ease,
    background 180ms ease,
    border-color 180ms ease,
    box-shadow 180ms ease,
    color 180ms ease;
}

.hero-panel-list--dense .hero-panel-list__item {
  padding: 0.82rem 0.9rem;
}

.hero-panel-list__item--static {
  cursor: default;
}

.hero-panel-list__item strong {
  display: block;
  width: 100%;
  margin-bottom: 0.35rem;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid var(--line);
  font-size: 1.05rem;
  transition:
    color 180ms ease,
    border-color 180ms ease;
}

.hero-panel-list__item span {
  color: var(--text-soft);
  line-height: 1.6;
  transition: color 180ms ease;
}

.hero-panel-list__link {
  color: inherit;
  text-decoration: none;
}

.hero-panel-list__link:hover,
.hero-panel-list__link:focus-visible {
  color: var(--ink);
  text-decoration: none;
}

.hero-panel-list__item .icon {
  color: var(--link-color);
  transition: color 180ms ease;
}

.page-section {
  padding-top: 1.35rem;
}

.section-heading {
  display: grid;
  gap: 0.55rem;
  margin-bottom: 1.15rem;
}

.section-heading__split {
  display: grid;
  grid-template-columns: minmax(0, 0.94fr) minmax(0, 1.06fr);
  gap: 1rem 1.4rem;
  align-items: end;
}

.section-heading--balanced .section-heading__split {
  grid-template-columns: minmax(0, 1.16fr) minmax(20rem, 0.84fr);
  align-items: center;
}

.section-heading--stacked .section-heading__split {
  grid-template-columns: 1fr;
  gap: 0.5rem;
  align-items: start;
}

.section-heading h2 {
  margin: 0;
  font-size: clamp(1.95rem, 3.5vw, 3.3rem);
  line-height: 0.98;
  letter-spacing: -0.04em;
}

.section-heading p {
  margin: 0;
  color: var(--text-soft);
  line-height: 1.75;
}

.section-cta {
  margin-top: 1.15rem;
}

.section-cta--center {
  display: flex;
  justify-content: center;
}

.section-heading__intro--balanced {
  max-width: 34ch;
  justify-self: end;
  text-wrap: pretty;
}

.section-heading__intro--stacked {
  max-width: none;
  text-wrap: pretty;
}

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

.panel-grid--align-start {
  align-items: start;
}

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

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

.panel,
.footer-card,
.catalog-toolbar,
.grade-banner {
  display: grid;
  gap: 0.95rem;
  align-content: start;
  min-width: 0;
  padding: 1.35rem;
  border-radius: var(--radius-lg);
  border: 1px solid var(--line);
  background: var(--surface-soft);
  box-shadow: var(--shadow);
  backdrop-filter: blur(14px);
  animation: riseIn 460ms ease both;
}

.panel--link,
.panel--interactive,
.hero-panel-list__item:not(.hero-panel-list__item--static) {
  position: relative;
  transition:
    transform 180ms ease,
    background 180ms ease,
    border-color 180ms ease,
    box-shadow 180ms ease,
    color 180ms ease;
}

.panel--lead {
  background: linear-gradient(180deg, var(--blue-soft), transparent), var(--surface-soft);
}

.panel--accent {
  background: linear-gradient(180deg, var(--lime-soft), transparent), var(--surface-soft);
}

.panel--interactive {
  width: 100%;
  text-align: left;
  appearance: none;
  cursor: pointer;
}

.panel--link:hover,
.panel--link:focus-visible,
.panel--interactive:not(.is-active):hover,
.panel--interactive:not(.is-active):focus-visible,
.hero-panel-list__item:not(.hero-panel-list__item--static):hover,
.hero-panel-list__item:not(.hero-panel-list__item--static):focus-visible {
  border-color: var(--line-strong);
  background: linear-gradient(180deg, rgba(30, 102, 218, 0.06), transparent),
    var(--surface);
  box-shadow: var(--shadow-heavy);
  transform: translateY(-2px);
}

.panel--interactive.is-active {
  background: linear-gradient(180deg, rgba(30, 102, 218, 0.96), rgba(17, 77, 169, 0.96));
  border-color: rgba(17, 77, 169, 0.94);
  color: #fff;
  box-shadow: 0 28px 64px rgba(17, 77, 169, 0.3);
}

.panel--interactive.is-active p,
.panel--interactive.is-active .panel__eyebrow,
.panel--interactive.is-active .stat-inline span {
  color: rgba(255, 255, 255, 0.9);
}

.panel--link:hover .panel__link,
.panel--link:focus-visible .panel__link,
.panel--interactive:not(.is-active):hover .panel__link,
.panel--interactive:not(.is-active):focus-visible .panel__link,
.panel--link:hover .panel__eyebrow,
.panel--link:focus-visible .panel__eyebrow,
.panel--interactive:not(.is-active):hover .panel__eyebrow,
.panel--interactive:not(.is-active):focus-visible .panel__eyebrow {
  color: var(--link-color);
}

.panel--link:hover p,
.panel--link:focus-visible p,
.panel--interactive:not(.is-active):hover p,
.panel--interactive:not(.is-active):focus-visible p,
.hero-panel-list__item:not(.hero-panel-list__item--static):hover span,
.hero-panel-list__item:not(.hero-panel-list__item--static):focus-visible span {
  color: var(--ink);
}

.panel--link:hover h3,
.panel--link:focus-visible h3,
.panel--interactive:not(.is-active):hover h3,
.panel--interactive:not(.is-active):focus-visible h3,
.hero-panel-list__item:hover strong,
.hero-panel-list__item:focus-visible strong {
  border-bottom-color: var(--line-strong);
}

.panel--link:focus-visible,
.panel--interactive:focus-visible,
.hero-panel-list__item:not(.hero-panel-list__item--static):focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px var(--blue-soft), var(--shadow-heavy);
}

.panel__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.58rem;
  color: var(--muted);
  font-size: 0.8rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.panel h3,
.footer-card h3,
.sitemap-card h3 {
  margin: 0;
  font-size: 1.35rem;
  line-height: 1.04;
}

.panel > h3,
.catalog-context__copy h3,
.contact-cta h3,
.grade-banner h3,
.sitemap-card h3 {
  padding-bottom: 0.72rem;
  border-bottom: 1px solid var(--line);
}

.panel p,
.footer-card p,
.catalog-summary {
  margin: 0;
  color: var(--text-soft);
  line-height: 1.7;
}

.lead {
  color: var(--ink) !important;
  font-size: 1.08rem;
  line-height: 1.8;
}

.panel__link {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  margin-top: auto;
  font-weight: 800;
  color: var(--ink);
}

.panel-divider {
  height: 1px;
  background: var(--line);
}

.stat-inline {
  display: flex;
  align-items: baseline;
  gap: 0.5rem;
}

.stat-inline strong {
  font-size: 1.9rem;
  line-height: 1;
}

.stat-inline span {
  color: var(--text-soft);
}

.timeline-list {
  display: grid;
  gap: 0.8rem;
}

.timeline-list__item {
  display: grid;
  gap: 0.25rem;
  padding-bottom: 0.8rem;
  border-bottom: 1px solid var(--line);
}

.timeline-list__item:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.timeline-list__item strong {
  font-size: 1rem;
}

.timeline-grid {
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}

.timeline-card {
  position: relative;
  overflow: hidden;
  background: linear-gradient(180deg, var(--blue-soft), transparent), var(--surface-soft);
}

.timeline-card__header {
  display: flex;
  align-items: center;
  gap: 0.8rem;
}

.timeline-card__year {
  display: inline-flex;
  width: fit-content;
  min-height: 36px;
  align-items: center;
  padding: 0.45rem 0.75rem;
  border-radius: 999px;
  background: var(--surface-raised);
  border: 1px solid var(--line-strong);
  color: var(--link-color);
  font-size: 1rem;
  font-weight: 800;
}

.timeline-card__rule {
  flex: 1 1 auto;
  min-width: 0;
  height: 1px;
  background: linear-gradient(90deg, var(--blue), transparent);
  opacity: 0.42;
}

.timeline-card p {
  margin: 0;
  color: var(--ink);
  line-height: 1.7;
}

.media-showcase {
  display: grid;
  grid-template-columns: minmax(0, 1.06fr) minmax(0, 0.94fr);
  gap: 0.9rem;
}

.media-showcase__stack {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.9rem;
}

.media-showcase__stack .media-frame:last-child {
  grid-column: 1 / -1;
}

.hero-media-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.8rem;
}

.hero-media-stack {
  display: grid;
  gap: 0.85rem;
}

.hero-media-stack__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.85rem;
}

.hero-media-stack__grid--single {
  grid-template-columns: 1fr;
}

.hero-media-stack__feature img {
  aspect-ratio: 16 / 9.2;
}

.hero-media-stack__secondary img {
  aspect-ratio: 16 / 8;
}

.hero-media-stack .media-frame {
  border-color: var(--line-strong);
  box-shadow: 0 20px 36px rgba(10, 24, 41, 0.16);
}

.media-frame {
  position: relative;
  overflow: hidden;
  min-width: 0;
  border-radius: 18px;
  border: 1px solid var(--line);
  background: var(--surface-raised);
  box-shadow: var(--shadow);
}

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

.media-frame--feature {
  min-height: 100%;
}

.media-frame--feature img {
  aspect-ratio: 16 / 11;
}

.media-frame--portrait img {
  aspect-ratio: 1 / 1.04;
}

.media-frame--wide img,
.media-frame--panel img {
  aspect-ratio: 16 / 8.8;
}

.media-frame__overlay {
  position: absolute;
  inset: auto 0 0 0;
  display: grid;
  gap: 0.3rem;
  padding: 1rem 1rem 1.08rem;
  background: linear-gradient(180deg, rgba(7, 18, 32, 0), rgba(7, 18, 32, 0.94));
  color: #fff;
}

.media-frame__badge {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  min-height: 28px;
  padding: 0.18rem 0.55rem;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.14);
  border: 1px solid rgba(255, 255, 255, 0.18);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.media-frame__overlay strong {
  font-family: var(--heading-font);
  font-size: 1.04rem;
  line-height: 1.08;
}

.media-frame__overlay span:not(.media-frame__badge) {
  color: rgba(255, 255, 255, 0.94);
  line-height: 1.5;
}

.industry-card__lead {
  color: var(--ink) !important;
  font-weight: 700;
}

.industry-card__media {
  margin: -1.35rem -1.35rem -0.15rem;
  border: 0;
  border-bottom: 1px solid var(--line);
  border-radius: calc(var(--radius-lg) - 1px) calc(var(--radius-lg) - 1px) 0 0;
  box-shadow: none;
}

.industry-card__media img {
  aspect-ratio: 16 / 8.5;
}

.industries-list {
  display: grid;
  border-top: 1px solid var(--line);
}

.industry-row {
  display: grid;
  grid-template-columns: minmax(220px, 0.36fr) minmax(0, 1fr);
  gap: 0;
  align-items: stretch;
  border-bottom: 1px solid var(--line);
  background: #ffffff;
}

.industry-row__media {
  min-height: 220px;
  border: 0;
  border-right: 1px solid var(--line);
  box-shadow: none;
}

.industry-row__media img {
  width: 100%;
  height: 100%;
  aspect-ratio: 16 / 10;
  object-fit: cover;
}

.industry-row__content {
  display: grid;
  align-content: center;
  gap: 0.65rem;
  padding: clamp(1.5rem, 3vw, 2.6rem);
}

.industry-row__content h3 {
  margin: 0;
  color: var(--navy);
  font-size: clamp(1.45rem, 2.6vw, 2.55rem);
  line-height: 1;
  text-transform: uppercase;
}

.industry-row__content p {
  max-width: 760px;
  margin: 0;
  color: var(--text-soft);
  line-height: 1.65;
}

.industry-row__content .industry-card__lead {
  color: var(--navy) !important;
  font-size: 1.03rem;
}

.industry-card--compact p {
  line-height: 1.6;
}

.bullet-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 0.8rem;
}

.bullet-list--compact {
  gap: 0.6rem;
}

.bullet-list--columns {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 1.25rem;
}

.bullet-list li {
  position: relative;
  padding-left: 1.15rem;
  line-height: 1.7;
}

.bullet-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.65rem;
  width: 0.48rem;
  height: 0.48rem;
  border-radius: 999px;
  background: var(--lime);
  box-shadow: 0 0 0 4px var(--lime-soft);
}

.company-overview__text,
.company-overview__visuals,
.sustainability-overview__text,
.sustainability-overview__visuals {
  width: 100%;
}

.company-overview__visuals,
.sustainability-overview__visuals {
  gap: 1rem;
}

.catalog-toolbar {
  margin-bottom: 1rem;
}

.catalog-toolbar__main {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 0.9rem;
  align-items: center;
}

.catalog-toolbar__count {
  display: grid;
  gap: 0.16rem;
  min-width: 132px;
  padding: 0.8rem 0.95rem;
  border-radius: 18px;
  border: 1px solid var(--line);
  background: var(--surface-raised);
  justify-items: end;
}

.catalog-toolbar__count strong {
  font-family: var(--heading-font);
  font-size: 1.7rem;
  line-height: 1;
}

.catalog-toolbar__count span {
  color: var(--text-soft);
  line-height: 1.35;
}

.catalog-context {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 1rem;
  align-items: center;
  margin-bottom: 1rem;
  padding: 1rem 1.1rem;
  border-radius: var(--radius-lg);
  border: 1px solid var(--line);
  background: linear-gradient(180deg, var(--blue-soft), transparent), var(--surface-soft);
  box-shadow: var(--shadow);
}

.catalog-context__copy {
  display: grid;
  gap: 0.45rem;
}

.catalog-context__copy h3 {
  margin: 0;
  font-family: var(--heading-font);
  font-size: 1.35rem;
}

.catalog-context__copy p {
  margin: 0;
  color: var(--text-soft);
  line-height: 1.65;
}

.catalog-context__stats {
  display: grid;
  gap: 0.22rem;
  justify-items: end;
}

.catalog-context__stats strong {
  font-family: var(--heading-font);
  font-size: 2rem;
  line-height: 1;
}

.catalog-context__stats span {
  color: var(--text-soft);
}

.catalog-search {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 0.75rem;
  min-height: 56px;
  padding: 0 1rem;
  border-radius: 999px;
  border: 1px solid var(--line);
  background: var(--surface-raised);
}

.catalog-search__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--link-color);
}

.catalog-search__body {
  display: grid;
  gap: 0.14rem;
  min-width: 0;
}

.catalog-search__caption {
  color: var(--muted);
  font-size: 0.74rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.12em;
}

.catalog-search input {
  width: 100%;
  min-width: 0;
  border: 0;
  outline: none;
  background: transparent;
  color: var(--ink);
  padding: 0;
}

.catalog-grid {
  grid-template-columns: repeat(auto-fit, minmax(270px, 1fr));
}

.catalog-results {
  min-height: 220px;
}

.grade-banner + .catalog-results {
  margin-top: 1rem;
}

.product-card {
  position: relative;
  min-height: 178px;
  gap: 1.2rem;
  overflow: hidden;
  animation: none;
}

.product-card::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 5px;
  background: var(--blue);
  opacity: 0.95;
}

.product-card__top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 0.65rem;
}

.product-card--technical::before {
  background: linear-gradient(180deg, #1e66da, #114da9);
}

.product-card--food::before {
  background: linear-gradient(180deg, #5a9c1d, #9ad13a);
}

.product-card--special::before {
  background: linear-gradient(180deg, #865dff, #4f87ff);
}

.tag {
  gap: 0.45rem;
}

.tag--ghost {
  background: transparent;
}

.tag--minimal {
  min-width: 42px;
  padding-inline: 0.6rem;
}

.product-card h3 {
  font-size: 1.16rem;
  line-height: 1.22;
}

.product-card__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
  margin-top: 0.1rem;
}

.tag--catalog-meta {
  min-height: 34px;
  padding: 0.42rem 0.74rem;
  font-size: 0.78rem;
  font-weight: 700;
  box-shadow: none;
}

.tag--catalog-code {
  background: rgba(26, 111, 60, 0.1);
  border-color: rgba(26, 111, 60, 0.16);
}

.tag--catalog-grade {
  background: rgba(79, 135, 255, 0.08);
  border-color: rgba(79, 135, 255, 0.16);
}

[data-theme="dark"] .tag--catalog-code {
  background: rgba(154, 209, 58, 0.12);
  border-color: rgba(154, 209, 58, 0.22);
}

[data-theme="dark"] .tag--catalog-grade {
  background: rgba(134, 93, 255, 0.14);
  border-color: rgba(134, 93, 255, 0.22);
}

.grade-banner {
  grid-template-columns: minmax(0, 0.82fr) minmax(0, 1.18fr);
  align-items: start;
  background: linear-gradient(180deg, var(--lime-soft), transparent), var(--surface-soft);
}

.grade-banner__copy {
  display: grid;
  gap: 0.7rem;
}

.grade-banner__copy p {
  margin: 0;
  color: var(--text-soft);
  line-height: 1.65;
}

.grade-banner h3 {
  font-size: 1.45rem;
  margin: 0;
}

.grade-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
}

.grade-pill {
  display: inline-flex;
  align-items: center;
  min-height: 42px;
  padding: 0.58rem 0.9rem;
  border-radius: 14px;
  border: 1px solid var(--line);
  background: var(--surface-raised);
  font-weight: 700;
  line-height: 1.2;
}

.empty-card {
  display: grid;
  place-items: center;
  min-height: 160px;
  padding: 1.2rem;
  border-radius: var(--radius-lg);
  border: 1px dashed var(--line-strong);
  background: rgba(255, 255, 255, 0.32);
  color: var(--muted);
  text-align: center;
}

.load-more {
  display: flex;
  justify-content: center;
  margin-top: 1.25rem;
}

.category-card {
  overflow: hidden;
}

.category-card__media {
  margin: -1.35rem -1.35rem -0.1rem;
  border: 0;
  border-bottom: 1px solid var(--line);
  border-radius: calc(var(--radius-lg) - 1px) calc(var(--radius-lg) - 1px) 0 0;
  box-shadow: none;
}

.category-card__media img {
  aspect-ratio: 16 / 9.6;
  transition: transform 220ms ease;
}

.panel--interactive.is-active .category-card__media {
  border-bottom-color: rgba(255, 255, 255, 0.16);
}

.panel--link:hover .category-card__media img,
.panel--link:focus-visible .category-card__media img,
.panel--interactive:not(.is-active):hover .category-card__media img,
.panel--interactive:not(.is-active):focus-visible .category-card__media img {
  transform: scale(1.02);
}

.contact-list {
  display: grid;
  gap: 1rem;
}

.contact-person {
  display: grid;
  gap: 0.48rem;
  padding-top: 1rem;
  border-top: 1px solid var(--line);
}

.contact-person:first-child {
  padding-top: 0;
  border-top: 0;
}

.contact-person strong {
  font-size: 1rem;
}

.contact-person a {
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
  color: var(--text-soft);
}

.contact-cta {
  align-content: start;
}

.contact-cta > h3,
.contact-cta > p {
  border-bottom: 0;
  padding-bottom: 0;
}

.contact-cta__stack {
  display: grid;
  gap: 0.8rem;
}

.contact-cta__link {
  color: inherit;
  text-decoration: none;
  font-size: clamp(1.05rem, 1.6vw, 1.38rem);
  line-height: 1.3;
  font-weight: 800;
  word-break: break-word;
}

.contact-cta__link:hover,
.contact-cta__link:focus-visible {
  color: var(--ink);
  text-decoration: none;
}

.career-opening {
  align-content: start;
}

.career-opening__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
  margin-top: -0.05rem;
  margin-bottom: 0.25rem;
}

.site-footer {
  padding-top: 1.8rem;
}

.footer-grid {
  grid-template-columns: 1.2fr 1fr 1fr 0.9fr;
  padding-bottom: 0.8rem;
  align-items: stretch;
}

.footer-card {
  grid-template-rows: auto 1fr;
  align-content: stretch;
}

.footer-card__header {
  text-align: left;
  padding-bottom: 0.25rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.footer-card__body {
  display: grid;
  gap: 0.9rem;
  min-height: 0;
  align-content: start;
  justify-items: start;
  text-align: left;
  padding-top: 0.15rem;
}

.footer-card__body--brand,
.footer-card__body--end {
  align-content: start;
}

.footer-brand {
  display: flex;
  gap: 1rem;
  align-items: center;
}

.footer-brand--split {
  width: 100%;
  justify-content: flex-start;
  text-align: left;
}

.footer-brand__copy {
  display: grid;
  gap: 0.45rem;
  justify-items: start;
}

.footer-stack {
  display: grid;
  gap: 0.95rem;
  justify-items: start;
  text-align: left;
}

.footer-stack--address {
  gap: 0.22rem;
}

.footer-stack__line--strong {
  color: var(--ink);
}

.footer-links {
  display: grid;
  justify-items: start;
  text-align: left;
  gap: 0.95rem;
}

.footer-links > a {
  display: block;
  width: 100%;
  line-height: 1.7;
}

.footer-card a {
  color: inherit;
}

.footer-card a:hover,
.footer-card a:focus-visible {
  color: var(--ink);
}

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

.noscript-note {
  width: var(--shell);
  margin: 1rem auto;
  padding: 1rem;
  border-radius: var(--radius-md);
  background: #ffe9a7;
  color: #433000;
}

@media (max-width: 1320px) {
  .panel-grid--4,
  .footer-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .header-menu__layout {
    grid-template-columns: minmax(0, 1fr) minmax(320px, 0.96fr);
  }

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

@media (max-width: 1180px) {
  body::after {
    background:
      radial-gradient(ellipse 30% 22% at 8% 54%, var(--page-blob-lime-tertiary), transparent 62%),
      radial-gradient(ellipse 34% 24% at 12% 22%, var(--page-blob-blue), transparent 62%),
      radial-gradient(ellipse 26% 18% at 18% 86%, var(--page-blob-blue-secondary), transparent 62%),
      radial-gradient(ellipse 30% 22% at 84% 18%, var(--page-blob-lime-primary), transparent 62%),
      radial-gradient(ellipse 28% 20% at 52% 14%, var(--page-blob-blue-secondary), transparent 60%),
      radial-gradient(ellipse 34% 24% at 76% 84%, var(--page-blob-lime-secondary), transparent 64%),
      radial-gradient(circle at 18% 26%, var(--page-orb-primary), transparent 24%),
      radial-gradient(circle at 82% 66%, var(--page-orb-secondary), transparent 22%),
      linear-gradient(112deg, transparent 18%, var(--page-ribbon) 46%, transparent 72%);
    filter: blur(28px);
    opacity: 0.82;
  }

  .page-hero__layout,
  .section-heading__split,
  .panel-grid--2,
  .timeline-grid,
  .sitemap-grid,
  .catalog-context,
  .media-showcase {
    grid-template-columns: 1fr;
  }

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

  .catalog-toolbar__main,
  .grade-banner,
  .hero-media-grid,
  .hero-media-stack__grid {
    grid-template-columns: 1fr;
  }

  .catalog-toolbar__count {
    justify-items: start;
  }

  .page-hero__layout:not(.page-hero__layout--single) .page-hero__copy {
    display: grid;
    grid-template-rows: auto;
  }

  .page-hero__layout:not(.page-hero__layout--single) .page-hero__panel {
    display: grid;
  }

  .page-hero__layout:not(.page-hero__layout--single) .page-hero__headline-block,
  .page-hero__layout:not(.page-hero__layout--single) .page-hero__body {
    display: grid;
    align-content: start;
  }

  .page-hero__layout:not(.page-hero__layout--single) .page-hero__headline-block {
    flex: none;
    padding-bottom: 1.1rem;
  }

  .page-hero__layout:not(.page-hero__layout--single) .page-hero h1 {
    margin-block: 0;
  }

  .section-heading__intro--balanced {
    justify-self: start;
    max-width: 42ch;
  }
}

@media (max-width: 980px) {
  :root {
    --shell: min(1540px, calc(100vw - 28px));
  }

  .header-menu__layout {
    grid-template-columns: 1fr;
  }

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

  .page-hero__layout,
  .panel-grid--4,
  .footer-grid {
    grid-template-columns: 1fr;
  }

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

}

@media (max-width: 720px) {
  :root {
    --shell: min(1540px, calc(100vw - 20px));
  }

  .site-header {
    padding-top: 0.55rem;
  }

  .site-header__row {
    gap: 0.55rem;
  }

  .site-header__inner,
  .page-hero__copy,
  .page-hero__panel,
  .panel,
  .footer-card,
  .catalog-toolbar,
  .grade-banner {
    padding: 1.08rem;
  }

  body::after {
    background:
      radial-gradient(ellipse 42% 28% at 12% 18%, var(--page-blob-blue), transparent 64%),
      radial-gradient(ellipse 38% 26% at 88% 16%, var(--page-blob-lime-primary), transparent 64%),
      radial-gradient(ellipse 40% 30% at 74% 86%, var(--page-blob-lime-secondary), transparent 66%);
    filter: blur(24px);
    opacity: 0.7;
  }

  .page-hero__copy--home {
    min-height: auto;
    grid-template-rows: auto;
  }

  .page-hero__copy--home .page-hero__headline-block,
  .page-hero__copy--home .page-hero__body {
    align-content: start;
  }

  .page-hero__copy--home .page-hero__headline-block {
    grid-template-rows: auto;
    padding-bottom: 1.1rem;
  }

  .page-hero__copy--home h1 {
    align-self: start;
  }

  .section-heading__intro--balanced {
    max-width: none;
  }

  .page-hero__copy::before {
    width: 12rem;
    right: -2.2rem;
    top: -1.2rem;
  }

  .brand {
    gap: 0.55rem;
  }

  .brand__mark--header {
    width: 92px;
    height: 34px;
  }

  .site-header.is-condensed .brand__mark--header {
    width: 84px;
    height: 31px;
  }

  .brand__copy {
    display: none;
  }

  .header-tools {
    justify-content: flex-end;
    gap: 0.3rem;
  }

  .header-popover,
  .header-menu {
    top: calc(100% + 8px);
  }

  .header-popover {
    right: 0;
    left: auto;
    min-width: 180px;
  }

  .icon-button,
  .menu-trigger {
    min-height: 40px;
    min-width: 40px;
    padding: 0.55rem;
  }

  .menu-trigger__label {
    display: none;
  }

  .header-menu__grid {
    grid-template-columns: 1fr;
  }

  .media-showcase__stack {
    grid-template-columns: 1fr;
  }

  .category-card__media {
    margin: -1.08rem -1.08rem -0.08rem;
  }

  .industry-card__media {
    margin: -1.08rem -1.08rem -0.08rem;
  }

  .catalog-context__stats {
    justify-items: start;
  }

  .catalog-toolbar__count {
    min-width: 0;
  }

  .page-main {
    padding-top: 0.95rem;
  }

  .page-hero h1 {
    max-width: none;
    font-size: clamp(1.8rem, 10vw, 3rem);
  }

  .hero-actions,
  .hero-pills,
  .catalog-filter-row,
  .tag-row,
  .catalog-toolbar__main {
    width: 100%;
  }

  .button {
    width: 100%;
  }

  .panel-grid--2,
  .panel-grid--3,
  .catalog-grid,
  .footer-grid,
  .sitemap-grid {
    grid-template-columns: 1fr;
  }

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

  .page-hero__copy .hero-metrics {
    grid-template-columns: 1fr;
  }

  .bullet-list--columns {
    grid-template-columns: 1fr;
  }
}

@media (max-height: 820px) {
  body::after {
    filter: blur(24px);
    opacity: 0.74;
  }
}

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

  *,
  *::before,
  *::after {
    animation: none !important;
    transition: none !important;
  }
}

/* Spolchemie-inspired reset */
:root,
:root[data-theme="dark"] {
  color-scheme: light;
  --bg: #ffffff;
  --surface: #ffffff;
  --surface-soft: #ffffff;
  --surface-raised: #ffffff;
  --surface-muted: #f4f6f8;
  --line: #d8e0e7;
  --line-strong: #aebdcc;
  --ink: #073862;
  --muted: #5f7487;
  --text-soft: #365673;
  --navy: #073862;
  --blue: #ceff25;
  --blue-strong: #a9d900;
  --blue-soft: #f4ffd2;
  --accent-green-text: #587800;
  --link-color: #075a93;
  --lime: #ceff25;
  --lime-soft: #f4ffd2;
  --shadow: none;
  --shadow-heavy: none;
  --radius-xl: 0px;
  --radius-lg: 0px;
  --radius-md: 0px;
  --shell: min(1160px, calc(100vw - 40px));
  --heading-font: "Public Sans", "Arial Narrow", Arial, sans-serif;
  --body-font: "Public Sans", Arial, sans-serif;
}

*,
*::before,
*::after {
  border-radius: 0 !important;
}

body {
  color: var(--ink);
  background: #ffffff !important;
}

body::before,
body::after,
.page-hero__copy::before,
.page-hero__copy::after {
  content: none !important;
}

.page-shell {
  padding-bottom: 0;
}

.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}

.button,
.icon-button,
.menu-trigger,
.filter-chip,
.tag,
.badge,
.header-popover__item,
.header-menu__card,
.header-menu__subitem,
.hero-panel-list__item,
.panel,
.catalog-toolbar,
.catalog-search,
.catalog-toolbar__count,
.grade-banner,
.empty-card,
.media-frame {
  box-shadow: none !important;
}

.button,
.filter-chip,
.icon-button,
.menu-trigger {
  border-color: var(--blue-strong);
  text-transform: uppercase;
  letter-spacing: 0;
}

.button--primary,
.button--secondary {
  background: var(--blue-strong);
  color: #ffffff;
}

.site-header {
  top: 0;
  padding: 0;
  background: linear-gradient(90deg, var(--blue-strong), var(--blue)) !important;
}

.site-header__inner {
  display: grid;
  grid-template-columns: minmax(300px, 0.34fr) minmax(0, 1fr) auto;
  align-items: stretch;
  gap: 0;
  width: 100%;
  min-height: 74px;
  padding: 0;
  border: 0;
  background: linear-gradient(90deg, var(--blue-strong), var(--blue)) !important;
}

.site-header.is-condensed .site-header__inner {
  min-height: 62px;
  padding: 0;
}

.brand {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  width: 100%;
  height: 100%;
  padding: 0.65rem 4.5rem 0.65rem 1.45rem;
  background: #ffffff;
  clip-path: polygon(0 0, calc(100% - 58px) 0, 100% 100%, 0 100%);
}

.brand__mark,
.brand__mark--header,
.site-header.is-condensed .brand__mark--header {
  width: 218px;
  height: 58px;
  border: 0;
  background: transparent;
  box-shadow: none !important;
  overflow: visible;
}

.brand__mark img {
  width: 218px;
  height: 58px;
  max-width: 100%;
  object-fit: contain;
  object-position: center;
  padding: 0;
  filter: none;
  transform: none;
}

.brand__copy {
  display: none;
}

.brand__copy strong {
  color: var(--navy);
  font-size: 1.05rem;
  font-weight: 900;
  line-height: 0.95;
  text-transform: uppercase;
}

.brand__copy span {
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 700;
}

.main-nav {
  display: flex;
  align-items: center;
  gap: 0;
  min-width: 0;
  padding-left: 1.2rem;
}

.main-nav__link {
  display: inline-flex;
  align-items: center;
  height: 100%;
  padding: 0 0.65rem;
  border: 0;
  background: transparent;
  color: #ffffff;
  font-size: 0.76rem;
  font-weight: 900;
  text-transform: uppercase;
}

.main-nav__link:hover,
.main-nav__link:focus-visible,
.main-nav__link.is-active {
  background: rgba(255, 255, 255, 0.14);
  color: #ffffff;
  transform: none;
}

.header-tools {
  display: flex;
  align-items: stretch;
  gap: 0;
}

.icon-button,
.menu-trigger {
  min-width: 54px;
  min-height: 100%;
  border: 0;
  background: var(--blue);
  color: #ffffff;
  font-weight: 900;
}

.icon-button:hover,
.icon-button:focus-visible,
.menu-trigger:hover,
.menu-trigger:focus-visible,
.icon-button.is-active,
.menu-trigger.is-active {
  background: #0078ce;
  color: #ffffff;
}

.menu-trigger {
  display: none;
  padding: 0 1.1rem;
}

.menu-trigger__label {
  display: none;
}

.header-popover {
  top: calc(100% + 0px);
  right: 0;
  border: 1px solid rgba(7, 56, 98, 0.16);
  background: #ffffff !important;
  box-shadow: 0 14px 28px rgba(7, 56, 98, 0.14);
  opacity: 0;
  pointer-events: none;
  transform: translateY(6px);
  backdrop-filter: none;
}

.header-popover.is-open {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}

.header-popover__item {
  min-height: 54px;
  border-bottom: 1px solid rgba(7, 56, 98, 0.14);
  background: #ffffff;
  color: var(--navy);
}

.header-popover__item span,
.header-popover__item small {
  color: inherit;
  opacity: 1;
}

.header-popover__item:hover,
.header-popover__item:focus-visible {
  background: #eaf4fb;
  color: var(--navy);
}

.header-popover__item.is-active {
  background: var(--blue);
  color: #ffffff;
}

.header-popover__item:not(.is-active):hover,
.header-popover__item:not(.is-active):focus-visible {
  border-color: rgba(7, 56, 98, 0.18);
  background: #eaf4fb;
  color: var(--navy);
  box-shadow: none;
  transform: none;
}

.header-popover__item:not(.is-active):hover small,
.header-popover__item:not(.is-active):focus-visible small {
  color: var(--navy);
  opacity: 0.74;
}

.bullet-list {
  list-style: disc;
  padding-left: 1.15rem;
}

.bullet-list li {
  padding-left: 0.15rem;
}

.bullet-list li::before {
  content: none;
}

.bullet-list li::marker {
  color: var(--link-color);
}

.header-menu {
  display: none;
  left: auto;
  right: 0;
  top: 100%;
  width: min(460px, 100vw);
  max-height: calc(100dvh - var(--header-height, 74px));
  overflow-y: auto;
  padding: 0;
  border: 1px solid rgba(7, 56, 98, 0.16);
  background: #ffffff !important;
  box-shadow: 0 18px 40px rgba(7, 56, 98, 0.18);
  opacity: 1;
  backdrop-filter: none;
}

.header-menu.is-open {
  display: block;
  max-height: calc(100dvh - var(--header-height, 74px));
  padding: 0;
}

.header-menu__nav {
  display: grid;
}

.header-menu__link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 64px;
  padding: 0 1.2rem;
  border-top: 1px solid rgba(7, 56, 98, 0.14);
  background: #ffffff;
  color: var(--navy);
  font-weight: 900;
  text-transform: uppercase;
}

.header-menu__link:hover,
.header-menu__link:focus-visible,
.header-menu__link.is-active {
  background: #eaf4fb;
  color: var(--navy);
}

.header-menu__link.is-active {
  background: var(--blue);
  color: #ffffff;
}

.page-main {
  position: relative;
  z-index: 1;
  padding-top: 0 !important;
}

.site-header__inner,
.page-hero__copy,
.page-hero__panel,
.panel,
.catalog-toolbar,
.product-row {
  animation: none !important;
  opacity: 1 !important;
}

.page-hero {
  margin: 0;
  padding: 0 !important;
}

.page-hero > .shell {
  width: 100%;
  max-width: none;
}

.page-hero__layout,
.page-hero__layout--home,
.page-hero__layout--single,
.page-hero__layout--company,
.page-hero__layout--documents {
  display: grid;
  grid-template-columns: 1fr !important;
  gap: 0;
}

body[data-page="home"] .page-hero__copy {
  min-height: clamp(510px, calc(100svh - 194px), 680px);
}

.page-hero__copy,
.page-hero__panel {
  border: 0;
}

.page-hero__copy {
  min-height: min(560px, 58vh);
  align-content: end;
  padding: clamp(5rem, 9vw, 7rem) max(1.25rem, calc((100vw - 1160px) / 2)) 3rem;
  background:
    linear-gradient(90deg, rgba(3, 56, 98, 0.84), rgba(0, 104, 183, 0.36) 48%, rgba(3, 56, 98, 0.12)),
    url("assets/images/company/campus-courtyard.webp") center / cover;
  color: #ffffff;
}

body[data-page="home"] .page-hero__copy {
  background:
    linear-gradient(90deg, rgba(3, 56, 98, 0.9), rgba(0, 84, 148, 0.68) 52%, rgba(3, 56, 98, 0.36)),
    url("assets/images/free-stock/chemical-plant.webp") center / cover;
}

body[data-page="products"] .page-hero__copy {
  background:
    linear-gradient(90deg, rgba(3, 56, 98, 0.9), rgba(0, 84, 148, 0.74)),
    url("assets/images/generated/technical-chemicals.webp") center / cover;
}

body[data-page="industries"] .page-hero__copy {
  background:
    linear-gradient(90deg, rgba(3, 56, 98, 0.9), rgba(0, 84, 148, 0.64) 52%, rgba(3, 56, 98, 0.22)),
    url("assets/images/generated/industries-applications-hero.webp") center / cover;
}

body[data-page="transport"] .page-hero__copy,
body[data-page="service"] .page-hero__copy {
  background:
    linear-gradient(90deg, rgba(3, 56, 98, 0.9), rgba(0, 84, 148, 0.72)),
    url("assets/images/free-stock/chemical-truck.webp") center / cover;
}

body[data-page="sustainability"] .page-hero__copy,
body[data-page="quality"] .page-hero__copy {
  background:
    linear-gradient(90deg, rgba(3, 56, 98, 0.9), rgba(0, 84, 148, 0.7)),
    url("assets/images/company/solar-roof.webp") center / cover;
}

.page-hero__headline-block,
.page-hero__body {
  width: min(700px, calc(100vw - 40px));
}

.eyebrow,
.page-hero__copy .eyebrow,
.section-heading .eyebrow,
.panel__eyebrow {
  color: currentColor;
  letter-spacing: 0;
  font-size: 0.78rem;
  font-weight: 900;
}

.panel__eyebrow {
  color: var(--link-color);
}

.panel__eyebrow span,
.panel__eyebrow .icon {
  color: inherit;
}

.page-hero .panel__eyebrow,
.hero-panel-list__item .panel__eyebrow {
  color: #ffffff;
}

.page-hero h1 {
  max-width: 760px;
  color: #ffffff;
  font-size: clamp(2rem, 4.3vw, 4rem);
  line-height: 1;
  text-transform: uppercase;
}

.page-hero__intro {
  max-width: 680px;
  color: #ffffff;
  font-size: 1rem;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
}

.page-hero .hero-pills .badge {
  border-color: rgba(255, 255, 255, 0.94);
  background: rgba(255, 255, 255, 0.92);
  color: var(--navy);
  text-shadow: none;
}

.page-hero__panel {
  padding: 0;
  background: var(--blue);
  width: 100vw !important;
  max-width: none !important;
  margin-left: calc(50% - 50vw);
  overflow: visible;
}

.page-hero__panel > .hero-metrics,
.page-hero__copy .hero-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  width: 100%;
  max-width: none;
}

.page-hero__panel > .hero-metrics {
  width: 100%;
  margin-left: 0;
}

.hero-metrics-band {
  width: 100%;
  background: linear-gradient(90deg, var(--blue-strong), var(--blue));
}

.hero-metrics-band .hero-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  width: 100%;
}

.hero-metric {
  min-height: 116px;
  padding: 1.5rem 1rem;
  border: 0;
  background: var(--blue);
  color: #ffffff;
  text-align: center;
}

.hero-metric:nth-child(odd) {
  background: var(--blue-strong);
}

.hero-metric strong {
  color: #ffffff;
  font-size: clamp(2rem, 4vw, 3.1rem);
  line-height: 0.9;
}

.hero-metric span {
  max-width: 10rem;
  margin: 0.45rem auto 0;
  color: #ffffff;
  font-size: 0.78rem;
  line-height: 1.05;
}

.hero-panel-list {
  width: min(1160px, calc(100vw - 40px));
  margin: 0 auto;
  padding: 1.25rem 0 0;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.hero-panel-list__item {
  border: 1px solid rgba(255, 255, 255, 0.28);
  background: rgba(3, 56, 98, 0.72);
  color: #ffffff;
}

.page-section {
  padding: clamp(2.8rem, 6vw, 5rem) 0;
}

.page-section + .page-section {
  border-top: 1px solid var(--line);
}

.section-heading {
  margin-bottom: 2rem;
}

.section-heading h2 {
  color: var(--navy);
  font-size: clamp(1.7rem, 3.2vw, 3.2rem);
  line-height: 1;
  text-transform: uppercase;
}

.section-heading p,
.panel p,
.catalog-context__copy p {
  color: var(--text-soft);
}

.panel-grid {
  gap: 0;
}

.panel-grid--2,
.panel-grid--3,
.panel-grid--4 {
  border-left: 1px solid var(--line);
}

.panel,
.footer-card,
.catalog-toolbar,
.grade-banner,
.empty-card {
  border: 1px solid var(--line-strong);
  background: #ffffff;
}

.panel {
  padding: clamp(1.25rem, 2.5vw, 2rem);
}

.panel--lead,
.panel--accent {
  background: #ffffff;
}

.panel--link:hover,
.panel--link:focus-visible,
.panel--interactive:not(.is-active):hover,
.panel--interactive:not(.is-active):focus-visible {
  transform: none;
  background: var(--blue-soft);
  border-color: var(--line);
}

.panel h3,
.footer-card h3,
.catalog-context__copy h3 {
  color: var(--navy);
  text-transform: uppercase;
}

.media-frame,
.category-card__media,
.industry-card__media {
  overflow: hidden;
  border: 0;
  background: #e8eef3;
}

.media-frame img,
.category-card__media img,
.industry-card__media img {
  filter: saturate(0.9) contrast(1.02);
}

.catalog-toolbar {
  padding: 0;
  border: 0;
  border-top: 3px solid var(--blue);
  background: #ffffff;
}

.catalog-toolbar__main {
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 1.25rem;
  align-items: center;
  padding: 1.15rem 1.25rem;
  border: 1px solid var(--line);
  border-top: 0;
}

.catalog-search {
  min-height: 0;
  border: 0;
  background: #ffffff;
}

.catalog-search__caption {
  color: var(--muted);
  letter-spacing: 0;
}

.catalog-search input {
  color: var(--navy);
  font-size: 1.35rem;
}

.catalog-toolbar__count {
  min-width: 9.5rem;
  border-left: 1px solid var(--line);
  background: #ffffff;
  color: var(--navy);
}

.catalog-toolbar__count span,
.catalog-toolbar__count strong {
  color: inherit;
}

.catalog-filter-row {
  gap: 0.35rem;
  padding: 0.75rem 0 0;
  border-top: 0;
}

.filter-chip {
  min-height: 42px;
  border: 1px solid transparent;
  background: #ffffff;
  color: var(--navy);
}

.filter-chip.is-active {
  border-color: var(--blue);
  background: #eaf4fb;
  color: var(--link-color);
}

.catalog-list {
  display: grid;
  border-top: 1px solid var(--line);
}

.product-row {
  border-bottom: 1px solid var(--line);
  background: #ffffff;
}

.product-row__summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 0.5fr);
  gap: 1rem;
  align-items: center;
  width: 100%;
  min-height: 68px;
  padding: 1rem 1.25rem;
  border: 0;
  background: transparent;
  text-align: left;
}

.product-row__summary:hover {
  background: transparent;
}

.product-row__name {
  color: var(--navy);
  font-size: 1.05rem;
  font-weight: 900;
}

.product-row__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
  color: var(--muted);
  font-size: 0.84rem;
}

.product-row__meta span:not(:last-child)::after {
  content: "/";
  margin-left: 0.45rem;
  color: var(--line-strong);
}

.product-row__more {
  display: none;
}

.product-row__detail {
  display: grid;
  grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
  gap: 2rem;
  padding: 1.4rem 1.25rem 1.7rem;
  border-top: 1px solid var(--line);
  background: #f7f9fb;
}

.product-row__label {
  color: var(--link-color);
  font-size: 0.75rem;
  font-weight: 900;
  text-transform: uppercase;
}

.product-row__detail h3 {
  margin: 0.25rem 0 1rem;
  color: var(--navy);
  font-size: 1.65rem;
  text-transform: uppercase;
}

.product-row__detail dl {
  display: grid;
  gap: 0;
  margin: 0;
  border-top: 1px solid var(--line);
}

.product-row__detail dl > div {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr);
  gap: 1rem;
  padding: 0.7rem 0;
  border-bottom: 1px solid var(--line);
}

.product-row__detail dt {
  color: var(--muted);
  font-weight: 900;
}

.product-row__detail dd {
  margin: 0;
  color: var(--navy);
}

.tag,
.badge,
.grade-pill {
  border: 1px solid var(--line);
  background: #ffffff;
  color: var(--navy);
}

.site-footer {
  display: none;
}

@media (max-width: 940px) {
  .site-header__inner {
    grid-template-columns: auto minmax(0, 1fr) auto;
  }

  .main-nav {
    display: none;
  }

  .menu-trigger {
    display: inline-flex;
  }
}

@media (max-width: 760px) {
  :root,
  :root[data-theme="dark"] {
    --shell: min(100vw - 24px, 1160px);
  }

  .site-header__inner {
    grid-template-columns: auto minmax(0, 1fr) auto;
    min-height: 64px;
  }

  .brand {
    padding: 0.55rem 2.6rem 0.55rem 0.9rem;
  }

  .brand__mark,
  .brand__mark--header,
  .site-header.is-condensed .brand__mark--header {
    width: 174px;
    height: 46px;
  }

  .brand__mark img {
    width: 174px;
    height: 46px;
  }

  .header-menu {
    inset-inline: 0;
    top: 100%;
    width: 100%;
  }

  .header-menu__link {
    min-height: 58px;
    padding: 0 1rem;
  }

  .page-hero__copy {
    min-height: clamp(450px, calc(100svh - 252px), 620px);
    padding: clamp(3.2rem, 11vw, 5rem) 1rem 2rem;
  }

  .page-hero__panel > .hero-metrics,
  .page-hero__copy .hero-metrics,
  .hero-metrics-band .hero-metrics,
  .hero-panel-list,
  .footer-contacts__grid {
    grid-template-columns: 1fr;
  }

  .hero-metric {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: 0.75rem;
    min-height: 74px;
    padding: 1rem 1.1rem;
    border-top: 1px solid rgba(255, 255, 255, 0.22);
    text-align: left;
  }

  .hero-metric:first-child {
    border-top: 0;
  }

  .hero-metric:nth-child(1) {
    background: #00558f;
  }

  .hero-metric:nth-child(2) {
    background: #0068b7;
  }

  .hero-metric:nth-child(3) {
    background: #004b83;
  }

  .hero-metric strong {
    min-width: 7.2rem;
    font-size: clamp(2rem, 10vw, 2.8rem);
    text-align: right;
  }

  .hero-metric span {
    max-width: none;
    margin: 0;
    font-size: 0.82rem;
    line-height: 1.15;
    word-break: normal;
    overflow-wrap: normal;
  }

  .hero-panel-list {
    width: 100%;
    padding: 0;
  }

  .section-heading__split,
  .product-row__summary,
  .product-row__detail,
  .catalog-toolbar__main {
    grid-template-columns: 1fr;
  }

  .industry-row {
    grid-template-columns: 1fr;
  }

  .industry-row__media {
    min-height: 180px;
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }

  .catalog-toolbar__count,
  .catalog-search {
    border-right: 0;
    border-left: 0;
  }
}

@media (max-width: 420px) {
  .site-header__inner {
    min-height: 60px;
  }

  .brand {
    padding: 0.48rem 2.15rem 0.48rem 0.72rem;
  }

  .brand__mark,
  .brand__mark--header,
  .site-header.is-condensed .brand__mark--header {
    width: 138px;
    height: 38px;
  }

  .brand__mark img {
    width: 138px;
    height: 38px;
  }

  .icon-button,
  .menu-trigger {
    min-width: 46px;
  }

  .page-hero h1 {
    font-size: clamp(1.7rem, 10.5vw, 2.35rem);
  }

  .page-hero__intro {
    font-size: 0.95rem;
  }

  .hero-metric {
    grid-template-columns: minmax(5.4rem, auto) minmax(0, 1fr);
  }

  .hero-metric strong {
    min-width: 5.4rem;
  }
}

.site-header.is-condensed .site-header__inner {
  min-height: 74px;
  padding: 0;
}

.site-header.is-condensed .brand__mark--header {
  width: 218px;
  height: 58px;
}

.site-header.is-condensed .icon-button,
.site-header.is-condensed .menu-trigger,
.icon-button,
.menu-trigger {
  align-self: stretch;
  height: 100%;
  min-height: 0;
}

.header-tools,
.header-tool-group {
  align-self: stretch;
  display: flex;
}

@media (max-width: 760px) {
  .site-header.is-condensed .site-header__inner {
    min-height: 64px;
  }

  .site-header.is-condensed .brand__mark--header {
    width: 174px;
    height: 46px;
  }
}

@media (max-width: 420px) {
  .site-header.is-condensed .site-header__inner {
    min-height: 60px;
  }

  .site-header.is-condensed .brand__mark--header {
    width: 138px;
    height: 38px;
  }
}

/* Final unboxed layout pass */
.catalog-toolbar {
  border: 0;
  background: transparent;
}

.catalog-toolbar__main {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 1.25rem;
  align-items: end;
  padding: 0 0 1rem;
  border: 0;
  border-bottom: 2px solid var(--blue);
  background: transparent;
}

.catalog-search {
  min-height: 56px;
  padding: 0;
  border: 0;
  background: transparent;
}

.catalog-search__caption {
  color: var(--link-color);
  font-weight: 900;
}

.catalog-search input {
  min-height: 34px;
  padding: 0;
  background: transparent;
  font-size: clamp(1.25rem, 2.3vw, 2rem);
}

.catalog-toolbar__count {
  min-width: 0;
  padding: 0 0 0.25rem;
  border: 0;
  background: transparent;
  text-align: right;
}

.catalog-toolbar__count strong {
  color: var(--link-color);
  font-size: clamp(1.7rem, 3vw, 2.55rem);
}

.catalog-toolbar__count span {
  color: var(--navy);
}

.catalog-filter-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  padding: 0.9rem 0 0;
  border-bottom: 1px solid var(--line);
}

.filter-chip {
  min-height: 40px;
  padding: 0 1.1rem 0.8rem 0;
  border: 0;
  border-bottom: 3px solid transparent;
  background: transparent;
  color: var(--navy);
}

.filter-chip:hover,
.filter-chip:focus-visible {
  background: transparent;
  color: var(--link-color);
}

.filter-chip.is-active {
  border-color: var(--blue);
  background: transparent;
  color: var(--link-color);
}

.catalog-results {
  margin-top: 0.8rem;
}

.catalog-list {
  border-top: 0;
}

.product-row {
  border-bottom: 1px solid var(--line);
}

.product-row__summary {
  min-height: 58px;
  padding: 0.9rem 0;
}

.category-list,
.content-rows,
.service-summary {
  display: grid;
  border-top: 1px solid var(--line);
}

.category-row,
.content-row {
  display: grid;
  grid-template-columns: minmax(220px, 0.34fr) minmax(0, 1fr);
  min-height: 220px;
  border-bottom: 1px solid var(--line);
  background: transparent;
  color: inherit;
  text-decoration: none;
}

.category-row__media,
.content-row__media {
  min-height: 220px;
  border: 0;
  border-right: 1px solid var(--line);
  background: #e8eef3;
  box-shadow: none;
}

.category-row__media img,
.content-row__media img {
  width: 100%;
  height: 100%;
  aspect-ratio: 16 / 10;
  object-fit: cover;
}

.category-row__content,
.content-row__copy,
.content-row--text,
.service-summary__intro,
.service-summary__list {
  display: grid;
  align-content: center;
  gap: 0.7rem;
  padding: clamp(1.5rem, 3vw, 2.65rem);
}

.category-row h3,
.content-row h3,
.service-summary h3 {
  margin: 0;
  color: var(--navy);
  font-size: clamp(1.45rem, 2.7vw, 2.55rem);
  line-height: 1;
  text-transform: uppercase;
}

.category-row p,
.content-row p,
.service-summary p {
  max-width: 780px;
  margin: 0;
  color: var(--text-soft);
  line-height: 1.65;
}

.category-row .stat-inline {
  margin-top: 0.4rem;
}

.category-row:hover,
.category-row:focus-visible {
  background: #f4f8fb;
}

.content-row--text {
  grid-template-columns: 1fr;
  min-height: 0;
}

.service-summary {
  grid-template-columns: minmax(0, 0.85fr) minmax(0, 1fr);
}

.service-summary__intro {
  border-bottom: 1px solid var(--line);
}

.service-summary__list {
  border-left: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}

body[data-page="transport"] .page-hero__copy,
body[data-page="service"] .page-hero__copy {
  min-height: min(460px, 52vh);
  background:
    linear-gradient(90deg, rgba(3, 56, 98, 0.94), rgba(0, 84, 148, 0.74) 56%, rgba(3, 56, 98, 0.5)),
    url("assets/images/free-stock/chemical-truck.webp") center / cover;
}

body[data-page="service"] .page-hero__copy {
  background:
    linear-gradient(90deg, rgba(3, 56, 98, 0.94), rgba(0, 84, 148, 0.76) 56%, rgba(3, 56, 98, 0.52)),
    url("assets/images/company/warehouse.webp") center / cover;
}

body[data-page="sustainability"] .page-hero__copy {
  background:
    linear-gradient(90deg, rgba(3, 56, 98, 0.94), rgba(0, 84, 148, 0.68) 54%, rgba(3, 56, 98, 0.34)),
    url("assets/images/company/solar-roof.webp") center / cover;
}

body[data-page="quality"] .page-hero__copy {
  background:
    linear-gradient(90deg, rgba(3, 56, 98, 0.92), rgba(0, 84, 148, 0.64) 54%, rgba(3, 56, 98, 0.22)),
    url("assets/images/generated/quality-control-lab.webp") center / cover;
}

@media (max-width: 760px) {
  .catalog-toolbar__main,
  .product-row__summary,
  .category-row,
  .content-row,
  .service-summary {
    grid-template-columns: 1fr;
  }

  .catalog-toolbar__count {
    text-align: left;
  }

  .category-row__media,
  .content-row__media {
    min-height: 180px;
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }

  .service-summary__list {
    border-left: 0;
  }
}

/* Logo-green accent pass */
.site-header,
.site-header__inner {
  background: linear-gradient(90deg, var(--blue-strong), var(--blue)) !important;
}

.main-nav__link,
.icon-button,
.menu-trigger {
  color: var(--navy);
}

.main-nav__link:hover,
.main-nav__link:focus-visible,
.main-nav__link.is-active,
.icon-button:hover,
.icon-button:focus-visible,
.menu-trigger:hover,
.menu-trigger:focus-visible,
.icon-button.is-active,
.menu-trigger.is-active {
  background: rgba(7, 56, 98, 0.12);
  color: var(--navy);
}

.header-popover__item.is-active,
.header-menu__link.is-active,
.filter-chip.is-active {
  background: var(--blue-soft);
  color: var(--navy);
}

.button--primary,
.button--secondary,
.catalog-toolbar__count,
.hero-metric,
.hero-metric:nth-child(odd) {
  background: var(--blue);
  color: var(--navy);
}

.button--primary,
.button--secondary {
  border-color: var(--blue-strong);
}

.hero-metrics-band {
  background: linear-gradient(90deg, var(--blue-strong), var(--blue));
}

.hero-metric strong,
.hero-metric span,
.catalog-toolbar__count strong,
.catalog-toolbar__count span {
  color: var(--navy);
}

@media (max-width: 760px) {
  .hero-metric:nth-child(1),
  .hero-metric:nth-child(2),
  .hero-metric:nth-child(3) {
    background: var(--blue);
  }
}

/* Readability cleanup: green only as accent, not as text surface */
.site-header,
.site-header__inner {
  background: #073862 !important;
}

.brand {
  background: #ffffff;
}

.main-nav__link,
.icon-button,
.menu-trigger {
  background: transparent;
  color: #ffffff;
}

.main-nav__link:hover,
.main-nav__link:focus-visible,
.main-nav__link.is-active,
.icon-button:hover,
.icon-button:focus-visible,
.menu-trigger:hover,
.menu-trigger:focus-visible,
.icon-button.is-active,
.menu-trigger.is-active {
  background: rgba(206, 255, 37, 0.16);
  color: #ffffff;
}

.header-menu__link.is-active,
.header-popover__item.is-active {
  border-left: 4px solid var(--blue);
  background: #f7fafc;
  color: var(--navy);
}

.catalog-toolbar {
  margin-top: 0;
}

.catalog-toolbar__main {
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 1.5rem;
  align-items: center;
  padding: 0 0 0.75rem;
  border-bottom: 3px solid var(--blue);
  background: transparent;
}

.catalog-search {
  display: grid;
  grid-template-columns: 1.15rem minmax(0, 1fr);
  gap: 0.7rem;
  align-items: center;
  min-height: 48px;
  color: var(--navy);
}

.catalog-search__icon,
.catalog-search__caption {
  color: var(--navy);
}

.catalog-search__caption {
  font-size: 0.74rem;
}

.catalog-search input {
  color: var(--navy);
  font-size: 1.45rem;
}

.catalog-search input::placeholder {
  color: #6f8294;
}

.catalog-toolbar__count {
  display: grid;
  align-content: center;
  min-height: 48px;
  padding: 0 0 0 1.25rem;
  border-left: 1px solid var(--line);
  background: transparent;
  color: var(--navy);
  text-align: right;
}

.catalog-toolbar__count strong {
  color: var(--navy);
  font-size: 1.75rem;
  line-height: 0.95;
}

.catalog-toolbar__count span {
  color: var(--text-soft);
  font-size: 0.82rem;
}

.filter-chip {
  color: var(--navy);
}

.filter-chip:hover,
.filter-chip:focus-visible {
  color: var(--navy);
}

.filter-chip.is-active {
  border-color: var(--blue);
  background: transparent;
  color: var(--navy);
}

.button--primary,
.button--secondary {
  background: var(--navy);
  border-color: var(--navy);
  color: #ffffff;
}

.hero-metric,
.hero-metric:nth-child(odd) {
  background: var(--navy);
  color: #ffffff;
}

.hero-metric strong,
.hero-metric span {
  color: #ffffff;
}

@media (max-width: 760px) {
  .catalog-toolbar__main {
    grid-template-columns: 1fr;
    gap: 0.65rem;
  }

  .catalog-toolbar__count {
    justify-items: start;
    padding-left: 0;
    border-left: 0;
    text-align: left;
  }

  .hero-metric:nth-child(1),
  .hero-metric:nth-child(2),
  .hero-metric:nth-child(3) {
    background: var(--navy);
  }
}

/* Cohesive Spolchemie-style pass */
:root,
:root[data-theme="dark"] {
  --nav-active: #2e625c;
  --nav-active-hover: #25544f;
  --section-wash: #f2f3f4;
}

.site-header,
.site-header__inner {
  background: #073862 !important;
}

.main-nav {
  padding-left: 0;
}

.main-nav__link,
.icon-button,
.menu-trigger {
  color: #ffffff;
}

.main-nav__link:hover,
.main-nav__link:focus-visible,
.icon-button:hover,
.icon-button:focus-visible,
.menu-trigger:hover,
.menu-trigger:focus-visible {
  background: var(--nav-active-hover);
  color: #ffffff;
}

.main-nav__link.is-active,
.icon-button.is-active,
.menu-trigger.is-active {
  background: var(--nav-active);
  color: #ffffff;
}

.header-menu__link:hover,
.header-menu__link:focus-visible,
.header-menu__link.is-active,
.header-popover__item:hover,
.header-popover__item:focus-visible,
.header-popover__item.is-active {
  border-left: 4px solid var(--blue);
  background: #eef3f3;
  color: var(--navy);
}

.page-section {
  background: #ffffff;
}

.section-heading h2,
.page-hero h1 {
  letter-spacing: 0;
}

.category-list,
.industries-list,
.content-rows,
.service-summary {
  border-top: 0;
  gap: 0;
}

.category-row,
.industry-row,
.content-row {
  grid-template-columns: minmax(0, 0.95fr) minmax(360px, 0.85fr);
  min-height: clamp(300px, 34vw, 430px);
  margin: 0 0 1.8rem;
  border: 0;
  background: var(--section-wash);
}

.category-row__content,
.industry-row__content,
.content-row__copy,
.content-row--text,
.service-summary__intro,
.service-summary__list {
  order: 1;
  align-content: center;
  padding: clamp(2.2rem, 5vw, 4rem);
}

.category-row__media,
.industry-row__media,
.content-row__media {
  order: 2;
  min-height: inherit;
  border: 0;
  background: #dfe6eb;
  clip-path: polygon(16% 0, 100% 0, 100% 100%, 0 100%);
}

.category-row__media img,
.industry-row__media img,
.content-row__media img {
  height: 100%;
  min-height: inherit;
  aspect-ratio: auto;
}

.category-row h3,
.industry-row h3,
.content-row h3,
.service-summary h3 {
  color: var(--navy);
  font-size: clamp(1.9rem, 3vw, 3rem);
  line-height: 1.04;
}

.category-row p,
.industry-row p,
.content-row p,
.service-summary p {
  color: #214462;
  font-size: clamp(1rem, 1.35vw, 1.2rem);
  line-height: 1.55;
}

.category-row:hover,
.category-row:focus-visible {
  background: var(--section-wash);
}

.service-summary {
  grid-template-columns: minmax(0, 0.92fr) minmax(0, 1fr);
  margin-bottom: 1.8rem;
  border: 0;
  background: var(--section-wash);
}

.service-summary__intro,
.service-summary__list {
  border: 0;
}

.service-summary__list {
  border-left: 1px solid #d8e0e7;
}

.catalog-toolbar {
  padding: 0;
}

.catalog-toolbar__main {
  padding: 0 0 0.85rem;
  border-bottom: 3px solid var(--blue);
}

.catalog-search__caption {
  color: var(--navy);
  font-weight: 900;
}

.catalog-search__icon {
  color: var(--navy);
}

.catalog-toolbar__count strong,
.catalog-toolbar__count span {
  color: var(--navy);
}

.filter-chip.is-active {
  border-bottom-color: var(--blue);
}

@media (max-width: 760px) {
  .category-row,
  .industry-row,
  .content-row,
  .service-summary {
    grid-template-columns: 1fr;
    min-height: 0;
  }

  .category-row__media,
  .industry-row__media,
  .content-row__media {
    order: 1;
    min-height: 210px;
    clip-path: none;
  }

  .category-row__content,
  .industry-row__content,
  .content-row__copy,
  .content-row--text,
  .service-summary__intro,
  .service-summary__list {
    order: 2;
    padding: 1.5rem;
  }

  .service-summary__list {
    border-left: 0;
    border-top: 1px solid #d8e0e7;
  }
}

/* Direction and catalog polish */
.category-row__media,
.industry-row__media,
.content-row__media {
  clip-path: polygon(0 0, 100% 0, 100% 100%, 16% 100%);
}

.catalog-toolbar {
  max-width: 960px;
  margin: 0 auto;
  padding: 0;
}

.catalog-toolbar__main {
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 0;
  align-items: stretch;
  padding: 0;
  border: 1px solid var(--line);
  border-bottom: 3px solid var(--blue);
  background: #ffffff;
}

.catalog-search {
  min-height: 58px;
  padding: 0.6rem 1rem;
  border: 0;
}

.catalog-search__caption {
  font-size: 0.68rem;
  line-height: 1;
}

.catalog-search input {
  min-height: 28px;
  font-size: 1.15rem;
}

.catalog-toolbar__count {
  min-width: 8.5rem;
  min-height: 58px;
  padding: 0.55rem 1rem;
  border-left: 1px solid var(--line);
  justify-items: end;
}

.catalog-toolbar__count strong {
  font-size: 1.45rem;
}

.catalog-toolbar__count span {
  font-size: 0.78rem;
}

.catalog-filter-row {
  max-width: 960px;
  margin: 0 auto;
  padding-top: 0.75rem;
}

.content-rows .panel--link {
  display: grid;
  min-height: 0;
  margin: 0 0 1.1rem;
  border: 0;
  border-bottom: 1px solid var(--line);
  background: var(--section-wash);
}

@media (max-width: 760px) {
  .category-row__media,
  .industry-row__media,
  .content-row__media {
    clip-path: none;
  }

  .catalog-toolbar {
    max-width: none;
  }

  .catalog-toolbar__main {
    grid-template-columns: 1fr;
  }

  .catalog-toolbar__count {
    min-height: 0;
    border-left: 0;
    border-top: 1px solid var(--line);
    justify-items: start;
  }
}

/* Quality documents and language contrast */
.header-popover__item.is-active,
.header-popover__item.is-active span,
.header-popover__item.is-active small {
  color: var(--navy);
}

.header-popover__item.is-active small {
  opacity: 0.78;
}

.document-strip {
  display: grid;
  grid-template-columns: minmax(220px, 0.35fr) minmax(0, 1fr);
  background: var(--section-wash);
  border-top: 3px solid var(--blue);
}

.document-strip__intro {
  display: grid;
  align-content: center;
  gap: 0.55rem;
  padding: clamp(1.5rem, 3vw, 2.5rem);
  border-right: 1px solid var(--line);
}

.document-strip__intro h3 {
  margin: 0;
  color: var(--navy);
  font-size: clamp(1.5rem, 2.4vw, 2.4rem);
  line-height: 1.05;
  text-transform: uppercase;
}

.document-strip__intro p {
  max-width: 28rem;
  margin: 0;
  color: var(--text-soft);
  line-height: 1.55;
}

.document-strip__list {
  display: grid;
}

.document-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 1rem;
  align-items: center;
  min-height: 72px;
  padding: 1rem 1.25rem;
  border-bottom: 1px solid var(--line);
  color: var(--navy);
  text-decoration: none;
}

.document-row:hover,
.document-row:focus-visible {
  background: #ffffff;
}

.document-row span {
  color: var(--navy);
  font-weight: 900;
}

.document-row small {
  color: var(--text-soft);
  font-size: 0.82rem;
  text-transform: uppercase;
}

.document-row .icon {
  color: var(--navy);
}

@media (max-width: 760px) {
  .document-strip,
  .document-row {
    grid-template-columns: 1fr;
  }

  .document-strip__intro {
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }

  .document-row {
    gap: 0.35rem;
  }
}

/* Compact text rows for service, sustainability and quality */
.content-row.content-row--text {
  grid-template-columns: 1fr;
  min-height: 0;
  margin: 0;
  border-bottom: 1px solid var(--line);
  background: #ffffff;
}

.content-row.content-row--text + .content-row.content-row--text {
  margin-top: 0;
}

.content-row.content-row--text h3 {
  font-size: clamp(1.35rem, 2.2vw, 2rem);
}

.content-row.content-row--text p {
  max-width: 860px;
  font-size: 1rem;
}

.content-row.content-row--text .panel__eyebrow,
.service-summary .panel__eyebrow,
.document-strip .panel__eyebrow {
  color: var(--navy);
}

.service-summary {
  min-height: 0;
}

.service-summary__intro,
.service-summary__list {
  padding: clamp(1.5rem, 3vw, 2.4rem);
}

.service-summary__intro--compact h3 {
  font-size: clamp(1.35rem, 2.2vw, 2rem);
}

/* Final navigation, text rows and document list polish */
.site-header__inner {
  grid-template-columns: minmax(260px, 360px) minmax(0, 1fr) auto;
}

.main-nav {
  justify-content: flex-start;
  padding-left: clamp(0.8rem, 2vw, 2rem);
}

.main-nav__link {
  padding: 0 clamp(0.45rem, 0.75vw, 0.78rem);
  font-size: clamp(0.66rem, 0.72vw, 0.76rem);
  white-space: nowrap;
}

.content-rows {
  border-top: 1px solid var(--line);
}

.content-row.content-row--text {
  display: grid;
  grid-template-columns: minmax(180px, 0.28fr) minmax(0, 1fr);
  gap: clamp(1rem, 2vw, 2rem);
  align-items: start;
  min-height: 0;
  padding: clamp(1.15rem, 2vw, 1.8rem) 0;
  border-bottom: 1px solid var(--line);
}

.content-row.content-row--text .panel__eyebrow {
  margin: 0;
}

.content-row.content-row--text h3,
.content-row.content-row--text p {
  grid-column: 2;
}

.content-row.content-row--text h3 {
  margin: 0;
  font-size: clamp(1.35rem, 2vw, 2.05rem);
}

.content-row.content-row--text p {
  max-width: 780px;
  margin: 0;
  color: var(--text-soft);
  font-size: 0.98rem;
}

.service-summary {
  grid-template-columns: minmax(220px, 0.32fr) minmax(0, 1fr);
  margin-bottom: 1.25rem;
}

.service-summary__intro,
.service-summary__list {
  padding: clamp(1.25rem, 2.4vw, 2rem);
}

.document-strip {
  display: block;
  border-top: 3px solid var(--blue);
  background: #ffffff;
}

.document-strip__intro {
  display: grid;
  grid-template-columns: minmax(0, 0.35fr) minmax(0, 1fr);
  gap: clamp(1rem, 2vw, 2rem);
  align-items: end;
  padding: 0 0 1rem;
  border-right: 0;
  border-bottom: 1px solid var(--line);
  background: #ffffff;
}

.document-strip__intro .panel__eyebrow {
  grid-column: 1 / -1;
  margin-top: 1.25rem;
}

.document-strip__intro h3 {
  font-size: clamp(1.55rem, 2.5vw, 2.7rem);
}

.document-strip__intro p {
  max-width: 44rem;
}

.document-row {
  min-height: 58px;
  padding: 0.9rem 0;
}

@media (max-width: 1120px) {
  .main-nav {
    display: none;
  }

  .menu-trigger {
    display: inline-flex;
  }
}

@media (max-width: 760px) {
  .site-header__inner {
    grid-template-columns: auto minmax(0, 1fr) auto;
  }

  .content-row.content-row--text,
  .document-strip__intro {
    grid-template-columns: 1fr;
  }

  .content-row.content-row--text h3,
  .content-row.content-row--text p {
    grid-column: auto;
  }

  .document-row {
    padding: 0.9rem 0;
  }
}

/* Final visual cleanup: quieter text sections, contact directory, right-aligned nav */
.main-nav {
  justify-content: flex-end;
  padding-right: clamp(0.8rem, 2vw, 2rem);
  padding-left: 0;
}

.content-row.content-row--text {
  grid-template-columns: 1fr;
  gap: 0.35rem;
  padding: clamp(1.1rem, 1.7vw, 1.55rem) 0;
  background: #ffffff;
}

.content-row.content-row--text h3,
.content-row.content-row--text p {
  grid-column: auto;
}

.content-row.content-row--text .panel__eyebrow {
  margin-bottom: 0.1rem;
  font-size: 0.72rem;
}

.content-row.content-row--text h3 {
  font-size: clamp(1.24rem, 1.55vw, 1.65rem);
  line-height: 1.15;
}

.content-row.content-row--text p {
  max-width: 760px;
  color: var(--text-soft);
  font-size: 0.98rem;
  line-height: 1.55;
}

.service-summary {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0;
  border-top: 3px solid var(--blue);
  background: #f4f7fa;
}

.service-summary__intro,
.service-summary__list {
  padding: clamp(1.15rem, 2vw, 1.7rem);
}

.service-summary__list {
  border-top: 1px solid var(--line);
  border-left: 0;
}

.service-summary__intro--compact h3 {
  max-width: 26rem;
  font-size: clamp(1.28rem, 1.8vw, 1.9rem);
  overflow-wrap: anywhere;
}

.service-summary .bullet-list {
  gap: 0.55rem;
}

.document-strip {
  border-top: 3px solid var(--blue);
  background: #ffffff;
}

.document-strip__intro {
  grid-template-columns: 1fr;
  gap: 0.45rem;
  align-items: start;
  padding: 0 0 1rem;
}

.document-strip__intro .panel__eyebrow {
  grid-column: auto;
  margin-top: 1rem;
}

.document-strip__intro h3 {
  max-width: 40rem;
  font-size: clamp(1.45rem, 2vw, 2.25rem);
  line-height: 1.05;
}

.document-strip__intro p {
  max-width: 42rem;
}

.document-row {
  grid-template-columns: minmax(0, 1fr) 4rem auto;
}

body[data-page="contact"] .page-hero__copy {
  min-height: clamp(340px, 42vw, 470px);
}

body[data-page="contact"] .page-hero h1 {
  max-width: 15ch;
  font-size: clamp(2.25rem, 4.8vw, 4.9rem);
}

.contact-overview {
  display: grid;
  grid-template-columns: minmax(0, 0.42fr) minmax(0, 1fr);
  border-top: 3px solid var(--blue);
  background: #f4f7fa;
}

.contact-overview__intro {
  padding: clamp(1.35rem, 2.4vw, 2rem);
  border-right: 1px solid var(--line);
}

.contact-overview__intro h2 {
  max-width: 28rem;
  margin: 0.65rem 0 0;
  color: var(--navy);
  font-size: clamp(1.55rem, 2.2vw, 2.35rem);
  line-height: 1.05;
  text-transform: uppercase;
}

.contact-overview__intro p {
  max-width: 32rem;
  margin: 1rem 0 0;
  color: var(--text-soft);
  line-height: 1.6;
}

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

.contact-address {
  padding: clamp(1.35rem, 2.4vw, 2rem);
  border-left: 1px solid var(--line);
}

.contact-address:first-child {
  border-left: 0;
}

.contact-address h3,
.contact-department h3 {
  margin: 0.6rem 0 0;
  color: var(--navy);
  font-size: clamp(1.25rem, 1.55vw, 1.7rem);
  line-height: 1.15;
  text-transform: uppercase;
}

.contact-address p {
  margin: 0.45rem 0 0;
  color: var(--text-soft);
}

.contact-directory {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border-top: 1px solid var(--line);
  border-left: 1px solid var(--line);
}

.contact-department {
  padding: clamp(1.35rem, 2.4vw, 2rem);
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  background: #ffffff;
}

.contact-department__head {
  padding-bottom: 0.9rem;
  border-bottom: 1px solid var(--line);
}

.contact-department .contact-list {
  gap: 0;
}

.contact-department .contact-person {
  padding: 0.95rem 0 0;
  border-top: 0;
}

.contact-department .contact-person + .contact-person {
  margin-top: 0.95rem;
  border-top: 1px solid var(--line);
}

.contact-department .contact-person a {
  color: var(--text-soft);
}

@media (max-width: 960px) {
  .contact-overview,
  .contact-addresses,
  .contact-directory {
    grid-template-columns: 1fr;
  }

  .contact-overview__intro,
  .contact-address,
  .contact-department {
    border-right: 0;
    border-left: 0;
  }

  .contact-address + .contact-address {
    border-top: 1px solid var(--line);
  }
}

@media (max-width: 760px) {
  .document-row {
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .document-row small {
    grid-column: 1;
  }

  body[data-page="contact"] .page-hero__copy {
    min-height: 360px;
  }
}

/* Final pass: readable hover states, unified hero CTAs and compact feature lists */
.page-hero .button--primary,
.page-hero .button--secondary {
  background: rgba(255, 255, 255, 0.94);
  border-color: rgba(255, 255, 255, 0.95);
  color: var(--navy);
  box-shadow: none;
}

.page-hero .button--primary:hover,
.page-hero .button--primary:focus-visible,
.page-hero .button--secondary:hover,
.page-hero .button--secondary:focus-visible {
  background: #ffffff;
  border-color: #ffffff;
  color: var(--navy);
}

.panel--link:hover,
.panel--link:focus-visible {
  background: #ffffff;
  border-color: var(--line-strong);
  color: var(--navy);
  box-shadow: none;
  transform: none;
}

.panel--link:hover .panel__eyebrow,
.panel--link:focus-visible .panel__eyebrow,
.panel--link:hover .panel__link,
.panel--link:focus-visible .panel__link,
.panel--link:hover h3,
.panel--link:focus-visible h3 {
  color: var(--navy);
}

.panel--link:hover p,
.panel--link:focus-visible p {
  color: var(--text-soft);
}

.panel__eyebrow {
  color: var(--accent-green-text);
}

.panel__eyebrow .icon {
  color: var(--blue-strong);
}

.feature-list {
  display: grid;
  grid-template-columns: minmax(190px, 0.3fr) minmax(0, 1fr);
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}

.feature-list__head {
  display: grid;
  align-content: start;
  gap: 0.65rem;
  padding: clamp(1.15rem, 2vw, 1.8rem) clamp(1rem, 2vw, 1.7rem) clamp(1.15rem, 2vw, 1.8rem) 0;
}

.feature-list__head h2 {
  max-width: 18rem;
  margin: 0;
  color: var(--navy);
  font-size: clamp(1.35rem, 2vw, 2.05rem);
  line-height: 1.08;
  text-transform: uppercase;
}

.feature-list__items {
  display: grid;
  border-left: 1px solid var(--line);
}

.feature-list__item {
  display: grid;
  grid-template-columns: 3rem minmax(0, 1fr);
  gap: clamp(0.9rem, 1.6vw, 1.4rem);
  padding: clamp(1.05rem, 1.8vw, 1.55rem);
  border-bottom: 1px solid var(--line);
}

.feature-list__item:last-child {
  border-bottom: 0;
}

.feature-list__number {
  color: var(--navy);
  font-size: 0.78rem;
  font-weight: 900;
  line-height: 1.3;
}

.feature-list__copy h3 {
  margin: 0;
  color: var(--navy);
  font-size: clamp(1.05rem, 1.35vw, 1.35rem);
  line-height: 1.18;
  text-transform: uppercase;
}

.feature-list__copy p {
  max-width: 760px;
  margin: 0.55rem 0 0;
  color: var(--text-soft);
  font-size: 0.98rem;
  line-height: 1.55;
}

@media (max-width: 820px) {
  .feature-list {
    grid-template-columns: 1fr;
  }

  .feature-list__head {
    padding-right: 0;
  }

  .feature-list__items {
    border-left: 0;
    border-top: 1px solid var(--line);
  }
}

@media (max-width: 560px) {
  .feature-list__item {
    grid-template-columns: 1fr;
    gap: 0.35rem;
  }
}

.career-layout {
  display: grid;
  grid-template-columns: minmax(220px, 0.34fr) minmax(0, 1fr);
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}

.career-layout__head,
.career-empty,
.career-contact__intro,
.career-contact__links {
  padding: clamp(1.25rem, 2.4vw, 2rem);
}

.career-layout__head {
  border-right: 1px solid var(--line);
}

.career-layout__head h2,
.career-contact h3 {
  margin: 0.65rem 0 0;
  color: var(--navy);
  font-size: clamp(1.35rem, 2vw, 2.05rem);
  line-height: 1.08;
  text-transform: uppercase;
}

.career-layout__head p,
.career-empty p,
.career-contact p {
  max-width: 46rem;
  margin: 0.75rem 0 0;
  color: var(--text-soft);
  line-height: 1.6;
}

.career-empty {
  display: grid;
  align-content: center;
  background: #ffffff;
}

.career-empty strong {
  color: var(--navy);
  font-size: clamp(1.2rem, 1.6vw, 1.55rem);
  line-height: 1.2;
}

.career-layout__openings {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border-left: 1px solid var(--line);
}

.career-layout__openings .career-opening {
  border: 0;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  box-shadow: none;
}

.career-contact {
  display: grid;
  grid-template-columns: minmax(220px, 0.42fr) minmax(0, 1fr);
  border-top: 3px solid var(--blue);
  background: #f4f7fa;
}

.career-contact__intro {
  border-right: 1px solid var(--line);
}

.career-contact__links {
  display: grid;
  align-content: center;
  gap: 0.8rem;
}

.career-contact .contact-cta__stack {
  gap: 0.65rem;
}

.career-contact .contact-cta__link {
  border: 0;
  border-bottom: 1px solid var(--line);
  background: transparent;
  color: var(--navy);
  box-shadow: none;
}

.operations-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border-top: 1px solid var(--line);
  border-left: 1px solid var(--line);
}

.operations-list .panel--link {
  border: 0;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  border-radius: 0;
  background: #ffffff;
  box-shadow: none;
}

@media (max-width: 820px) {
  .career-layout,
  .career-contact,
  .career-layout__openings,
  .operations-list {
    grid-template-columns: 1fr;
  }

  .career-layout__head,
  .career-contact__intro {
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }

  .career-layout__openings {
    border-left: 0;
  }
}

/* Final spacing rhythm pass */
.page-section {
  padding: clamp(1.85rem, 3.4vw, 3.25rem) 0;
}

.page-section:not(:last-child) {
  padding-bottom: clamp(1.45rem, 2.55vw, 2.35rem);
}

.page-section + .page-section {
  padding-top: clamp(1.45rem, 2.55vw, 2.35rem);
}

body[data-page="products"] .page-hero__copy,
body[data-page="documents"] .page-hero__copy,
body[data-page="career"] .page-hero__copy,
body[data-page="operations"] .page-hero__copy {
  min-height: clamp(320px, 38vh, 430px);
  padding-top: clamp(3.8rem, 6.4vw, 5.4rem);
  padding-bottom: clamp(2rem, 3.8vw, 2.8rem);
}

body[data-page="industries"] .page-hero__copy,
body[data-page="transport"] .page-hero__copy,
body[data-page="service"] .page-hero__copy,
body[data-page="sustainability"] .page-hero__copy,
body[data-page="quality"] .page-hero__copy,
body[data-page="contact"] .page-hero__copy {
  min-height: clamp(360px, 44vh, 500px);
  padding-top: clamp(4rem, 7vw, 5.8rem);
  padding-bottom: clamp(2.15rem, 4vw, 3rem);
}

body[data-page="home"] .page-hero__copy {
  min-height: clamp(500px, calc(100svh - 194px), 660px);
}

.page-hero h1 {
  font-size: clamp(2rem, 3.85vw, 3.75rem);
}

body[data-page="contact"] .page-hero h1 {
  font-size: clamp(2.15rem, 4.4vw, 4.55rem);
}

.section-heading {
  margin-bottom: clamp(1rem, 1.9vw, 1.65rem);
}

.section-heading h2 {
  font-size: clamp(1.65rem, 2.95vw, 3rem);
}

.section-heading p {
  max-width: 48rem;
  font-size: clamp(0.98rem, 1.08vw, 1.06rem);
  line-height: 1.58;
}

.category-row,
.industry-row,
.content-row {
  min-height: clamp(260px, 29vw, 370px);
  margin-bottom: clamp(0.9rem, 1.7vw, 1.35rem);
}

.category-row__content,
.industry-row__content,
.content-row__copy,
.service-summary__intro,
.service-summary__list {
  padding: clamp(1.55rem, 3.35vw, 3rem);
}

.category-row__media,
.industry-row__media,
.content-row__media,
.category-row__media img,
.industry-row__media img,
.content-row__media img {
  min-height: inherit;
}

.category-row h3,
.industry-row h3,
.content-row h3,
.service-summary h3 {
  font-size: clamp(1.55rem, 2.35vw, 2.45rem);
  line-height: 1.05;
}

.category-row p,
.industry-row p,
.content-row p,
.service-summary p {
  font-size: clamp(0.98rem, 1.08vw, 1.08rem);
  line-height: 1.58;
}

.catalog-toolbar {
  margin-bottom: clamp(0.9rem, 1.8vw, 1.45rem);
}

.catalog-toolbar__main {
  min-height: 56px;
}

.catalog-search {
  min-height: 56px;
  padding: 0.55rem 0.9rem;
}

.catalog-search input {
  font-size: clamp(1.12rem, 1.6vw, 1.32rem);
}

.catalog-filter-row {
  padding-top: 0.62rem;
}

.catalog-results {
  margin-top: clamp(0.7rem, 1.5vw, 1.15rem);
}

.product-row__summary {
  min-height: 50px;
  padding: 0.7rem 0;
}

.product-row__name {
  font-size: clamp(0.98rem, 1.08vw, 1.08rem);
}

.product-row__meta {
  font-size: 0.82rem;
}

.feature-list__head {
  padding-top: clamp(1rem, 1.7vw, 1.45rem);
  padding-bottom: clamp(1rem, 1.7vw, 1.45rem);
}

.feature-list__item {
  padding: clamp(0.95rem, 1.55vw, 1.3rem);
}

.feature-list__copy p {
  margin-top: 0.45rem;
}

.document-strip__intro {
  padding-bottom: clamp(0.75rem, 1.6vw, 1rem);
}

.document-strip__intro .panel__eyebrow {
  margin-top: clamp(0.8rem, 1.5vw, 1rem);
}

.document-row {
  min-height: 54px;
  padding: 0.78rem 0;
}

.contact-overview__intro,
.contact-address,
.contact-department,
.career-layout__head,
.career-empty,
.career-contact__intro,
.career-contact__links {
  padding: clamp(1.15rem, 2.1vw, 1.75rem);
}

@media (max-width: 760px) {
  .page-section,
  .page-section:not(:last-child),
  .page-section + .page-section {
    padding-top: clamp(1.35rem, 5vw, 2.1rem);
    padding-bottom: clamp(1.35rem, 5vw, 2.1rem);
  }

  body[data-page="products"] .page-hero__copy,
  body[data-page="documents"] .page-hero__copy,
  body[data-page="career"] .page-hero__copy,
  body[data-page="operations"] .page-hero__copy,
  body[data-page="industries"] .page-hero__copy,
  body[data-page="transport"] .page-hero__copy,
  body[data-page="service"] .page-hero__copy,
  body[data-page="sustainability"] .page-hero__copy,
  body[data-page="quality"] .page-hero__copy,
  body[data-page="contact"] .page-hero__copy {
    min-height: clamp(300px, 54vh, 390px);
    padding-top: clamp(3.1rem, 12vw, 4.2rem);
    padding-bottom: clamp(1.55rem, 7vw, 2.25rem);
  }

  body[data-page="home"] .page-hero__copy {
    min-height: clamp(430px, 62vh, 560px);
  }

  .page-hero h1,
  body[data-page="contact"] .page-hero h1 {
    font-size: clamp(1.85rem, 9vw, 3rem);
    line-height: 1.03;
  }

  .category-row,
  .industry-row,
  .content-row {
    min-height: 0;
    margin-bottom: 1rem;
  }

  .category-row__media,
  .industry-row__media,
  .content-row__media {
    min-height: clamp(176px, 48vw, 230px);
  }

  .category-row__content,
  .industry-row__content,
  .content-row__copy,
  .service-summary__intro,
  .service-summary__list {
    padding: clamp(1.15rem, 5vw, 1.55rem);
  }

  .category-row h3,
  .industry-row h3,
  .content-row h3,
  .service-summary h3 {
    font-size: clamp(1.35rem, 6.2vw, 2rem);
  }

  .catalog-toolbar {
    margin-bottom: 1rem;
  }

  .catalog-search {
    min-height: 52px;
    padding: 0.55rem 0.75rem;
  }

  .catalog-toolbar__count {
    min-height: 44px;
    padding: 0.5rem 0.75rem;
  }

  .product-row__summary {
    min-height: 0;
    padding: 0.72rem 0;
  }

  .feature-list__head,
  .feature-list__item {
    padding: clamp(1rem, 4.5vw, 1.35rem) 0;
  }

  .document-row {
    min-height: 0;
    padding: 0.78rem 0;
  }
}

/* Quiet feature sections */
.feature-list {
  display: block;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}

.feature-list__head {
  display: grid;
  grid-template-columns: minmax(180px, 0.28fr) minmax(0, 1fr);
  gap: clamp(1rem, 2.2vw, 2.2rem);
  align-items: end;
  padding: 0 0 clamp(0.9rem, 1.7vw, 1.35rem);
  border-bottom: 1px solid var(--line);
}

.feature-list__head .panel__eyebrow {
  margin: 0;
}

.feature-list__head h2 {
  max-width: none;
  margin: 0;
  font-size: clamp(1.35rem, 2.2vw, 2.25rem);
  line-height: 1.06;
}

.feature-list__items {
  display: grid;
  border-left: 0;
}

.feature-list__item {
  display: block;
  padding: clamp(1rem, 1.8vw, 1.45rem) 0;
  border-bottom: 1px solid var(--line);
}

.feature-list__number {
  display: none;
}

.feature-list__copy {
  display: grid;
  grid-template-columns: minmax(180px, 0.28fr) minmax(0, 1fr);
  gap: clamp(1rem, 2.2vw, 2.2rem);
  align-items: start;
}

.feature-list__copy h3 {
  font-size: clamp(1.1rem, 1.45vw, 1.45rem);
  line-height: 1.14;
}

.feature-list__copy p {
  max-width: 760px;
  margin: 0;
  font-size: clamp(0.96rem, 1.04vw, 1.04rem);
  line-height: 1.58;
}

@media (max-width: 760px) {
  .feature-list__head,
  .feature-list__copy {
    grid-template-columns: 1fr;
    gap: 0.45rem;
  }

  .feature-list__head {
    padding-bottom: 0.95rem;
  }

  .feature-list__item {
    padding: 0.95rem 0;
  }
}

/* Plain feature notes */
.feature-simple {
  display: grid;
  gap: clamp(0.95rem, 1.8vw, 1.45rem);
  max-width: 900px;
}

.feature-simple__head {
  display: grid;
  gap: 0.45rem;
}

.feature-simple__head h2 {
  max-width: 36rem;
  margin: 0;
  color: var(--navy);
  font-size: clamp(1.45rem, 2.15vw, 2.25rem);
  line-height: 1.05;
  text-transform: uppercase;
}

.feature-simple__items {
  display: grid;
  gap: 0;
  border-top: 1px solid var(--line);
}

.feature-simple__item {
  display: grid;
  grid-template-columns: 0.7rem minmax(0, 1fr);
  gap: 0.85rem;
  padding: clamp(0.8rem, 1.35vw, 1.1rem) 0;
  border-bottom: 1px solid var(--line);
}

.feature-simple__mark {
  width: 0.42rem;
  height: 0.42rem;
  margin-top: 0.42rem;
  background: var(--blue);
}

.feature-simple__copy h3 {
  margin: 0;
  color: var(--navy);
  font-size: clamp(1.02rem, 1.22vw, 1.24rem);
  line-height: 1.18;
  text-transform: uppercase;
}

.feature-simple__copy p {
  max-width: 760px;
  margin: 0.35rem 0 0;
  color: var(--text-soft);
  font-size: clamp(0.96rem, 1.02vw, 1.02rem);
  line-height: 1.58;
}

@media (max-width: 760px) {
  .feature-simple {
    max-width: none;
  }
}

/* Final audit pass: accessible closed menus and unified text-note sections */
.header-popover[aria-hidden="true"],
.header-menu[aria-hidden="true"] {
  display: none;
}

.page-section--notes {
  padding-top: clamp(1.25rem, 2.6vw, 2.4rem);
}

.content-row--media-right {
  grid-template-columns: minmax(0, 1fr) minmax(240px, 0.36fr);
}

.content-row--media-right .content-row__media {
  border-right: 0;
  border-left: 1px solid var(--line);
}

.feature-notes {
  display: grid;
  grid-template-columns: minmax(360px, 0.42fr) minmax(0, 1fr);
  gap: 0;
  min-height: clamp(300px, 24vw, 410px);
  min-width: 0;
  padding: 0;
  border: 0;
  background: var(--section-wash);
}

.feature-notes__head {
  display: grid;
  align-content: center;
  gap: 0.6rem;
  min-width: 0;
  padding: clamp(1.75rem, 3vw, 3.25rem);
  border-right: 1px solid var(--line);
  max-width: none;
}

.feature-notes__head h2 {
  max-width: 11ch;
  margin: 0;
  color: var(--navy);
  font-size: clamp(1.8rem, 2.7vw, 3.2rem);
  line-height: 1.04;
  text-transform: uppercase;
  overflow-wrap: anywhere;
  hyphens: auto;
}

.feature-notes__items {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0;
  align-content: center;
  min-width: 0;
  padding: clamp(1.25rem, 2.4vw, 2rem) clamp(1.75rem, 3vw, 3.25rem);
}

.feature-notes__item {
  display: grid;
  grid-template-columns: 0.55rem minmax(0, 1fr);
  gap: clamp(0.8rem, 1.4vw, 1.25rem);
  align-content: center;
  min-width: 0;
  padding: clamp(0.95rem, 1.7vw, 1.55rem) 0;
  border-bottom: 1px solid var(--line);
}

.feature-notes__item:last-child {
  border-bottom: 0;
}

.feature-notes__mark {
  width: 0.42rem;
  height: 0.42rem;
  margin-top: 0.42rem;
  background: var(--lime);
}

.feature-notes__copy h3 {
  margin: 0;
  color: var(--navy);
  font-size: clamp(1.18rem, 1.75vw, 1.85rem);
  line-height: 1.08;
  text-transform: uppercase;
  overflow-wrap: anywhere;
}

.feature-notes__copy p {
  max-width: 52rem;
  margin: 0.45rem 0 0;
  color: var(--text-soft);
  font-size: clamp(1rem, 1.12vw, 1.12rem);
  line-height: 1.58;
  overflow-wrap: anywhere;
}

body[data-page="quality"] .feature-notes__copy h3 {
  text-transform: none;
}

body[data-page="quality"] .feature-notes {
  margin-bottom: 0;
}

@media (max-width: 1180px) {
  .feature-notes {
    grid-template-columns: 1fr;
    min-height: 0;
  }

  .feature-notes__head {
    padding: clamp(1.45rem, 6vw, 2.25rem) clamp(1.25rem, 5vw, 1.75rem) 0;
    border-right: 0;
  }

  .feature-notes__head h2 {
    max-width: 18ch;
    font-size: clamp(1.65rem, 5.6vw, 2.65rem);
  }

  .feature-notes__items {
    grid-template-columns: 1fr;
    gap: 0;
    padding: clamp(0.75rem, 4vw, 1.25rem) clamp(1.25rem, 5vw, 1.75rem) clamp(1.25rem, 5vw, 1.75rem);
    border-top: 0;
  }

  .feature-notes__item {
    padding: 0.9rem 0;
    border-bottom: 1px solid var(--line);
  }

  .feature-notes__item:last-child {
    border-bottom: 0;
    padding-bottom: 0;
  }
}

@media (max-width: 760px) {
  .content-row--media-right {
    grid-template-columns: 1fr;
  }

  .content-row--media-right .content-row__media {
    border-left: 0;
  }

  .feature-notes {
    padding: 0;
  }
}

/* Consistency fixes: no licensed watermark visuals, readable language hover states */
body[data-page="products"] .page-hero__copy {
  background:
    linear-gradient(90deg, rgba(7, 56, 98, 0.9), rgba(7, 56, 98, 0.64) 48%, rgba(7, 56, 98, 0.28)),
    linear-gradient(180deg, rgba(7, 56, 98, 0.18), rgba(7, 56, 98, 0.62)),
    url("assets/images/generated/technical-chemicals.webp") center / cover;
}

:root[data-theme],
:root[data-theme="dark"] {
  --language-hover-bg: #eef3f3;
  --language-active-bg: #f7fafc;
  --language-menu-text: #073862;
}

.header-popover__item,
.header-popover__item span,
.header-popover__item small {
  color: var(--language-menu-text);
}

.header-popover__item:hover,
.header-popover__item:focus-visible,
.header-popover__item:not(.is-active):hover,
.header-popover__item:not(.is-active):focus-visible {
  border-left: 4px solid var(--blue);
  background: var(--language-hover-bg);
  color: var(--language-menu-text);
  box-shadow: none;
  transform: none;
}

.header-popover__item:hover small,
.header-popover__item:focus-visible small,
.header-popover__item:not(.is-active):hover small,
.header-popover__item:not(.is-active):focus-visible small {
  color: var(--language-menu-text);
  opacity: 0.74;
}

.header-popover__item.is-active {
  border-left: 4px solid var(--blue);
  background: var(--language-active-bg);
  color: var(--language-menu-text);
}

.header-popover__item.is-active small {
  color: var(--language-menu-text);
  opacity: 0.74;
}

.header-popover .header-popover__item:not(.is-active):hover,
.header-popover .header-popover__item:not(.is-active):focus-visible {
  border-left: 4px solid var(--blue) !important;
  background: var(--language-hover-bg) !important;
  color: var(--language-menu-text) !important;
}

.header-popover .header-popover__item:not(.is-active):hover span,
.header-popover .header-popover__item:not(.is-active):hover small,
.header-popover .header-popover__item:not(.is-active):focus-visible span,
.header-popover .header-popover__item:not(.is-active):focus-visible small {
  color: var(--language-menu-text) !important;
}

@media (max-width: 760px) {
  .catalog-filter-row {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.45rem;
  }

  .filter-chip {
    width: 100%;
    justify-content: center;
    min-height: 46px;
    padding-inline: 0.58rem;
    text-align: center;
    white-space: normal;
    line-height: 1.12;
  }
}

@media (max-width: 420px) {
  .catalog-filter-row {
    grid-template-columns: 1fr;
  }
}

/* Timeline year labels need strong contrast on light cards. */
.timeline-card__year {
  background: rgba(255, 255, 255, 0.92);
  border-color: rgba(7, 56, 98, 0.26);
  color: #073862;
  box-shadow:
    inset 0 -3px 0 rgba(206, 255, 37, 0.58),
    0 1px 0 rgba(7, 56, 98, 0.06);
}

.timeline-card__rule {
  background: linear-gradient(90deg, rgba(7, 56, 98, 0.32), rgba(206, 255, 37, 0.38), transparent);
  opacity: 0.82;
}

/* Content refinements requested for the 2026 site update. */
body[data-page="home"] .page-hero__copy {
  background:
    linear-gradient(90deg, rgba(3, 56, 98, 0.9), rgba(0, 84, 148, 0.56) 52%, rgba(3, 56, 98, 0.18)),
    url("assets/images/stock/world-lake.webp") center / cover;
}

body[data-page="products"] .page-hero__copy {
  background:
    linear-gradient(90deg, rgba(7, 56, 98, 0.9), rgba(7, 56, 98, 0.5) 48%, rgba(7, 56, 98, 0.18)),
    url("assets/images/company/warehouse.webp") center 44% / cover;
}

body[data-page="transport"] .page-hero__copy {
  background:
    linear-gradient(90deg, rgba(3, 56, 98, 0.88), rgba(0, 84, 148, 0.48) 52%, rgba(3, 56, 98, 0.1)),
    url("assets/images/stock/transport-hero.webp") center / cover;
}

body[data-page="service"] .page-hero__copy {
  background:
    linear-gradient(90deg, rgba(3, 56, 98, 0.9), rgba(0, 84, 148, 0.58) 52%, rgba(3, 56, 98, 0.16)),
    url("assets/images/generated/specialty-chemicals-lab.webp") center / cover;
}

.page-hero__copy--label-only {
  min-height: clamp(180px, 24vw, 280px) !important;
  align-content: end;
}

body[data-page="home"] .page-hero__copy--home {
  min-height: clamp(260px, 34vw, 430px);
  grid-template-columns: minmax(0, 1fr);
}

body[data-page="home"] .page-hero__copy--home .page-hero__body {
  grid-column: 1;
  max-width: 62rem;
}

body[data-page="home"] .page-hero__copy--home .page-hero__intro {
  max-width: 60rem;
  font-size: clamp(1.35rem, 2.35vw, 2.35rem);
  font-weight: 650;
  line-height: 1.28;
}

.timeline-card__certificate {
  display: grid;
  gap: 0.65rem;
  margin-top: 0.9rem;
  color: var(--link-color);
  font-size: 0.78rem;
  font-weight: 750;
  text-decoration: none;
}

.timeline-card__certificate-media {
  aspect-ratio: 842 / 595;
  min-height: 0;
  border-radius: 0.55rem;
  background: #fff;
}

.timeline-card__certificate-media img {
  object-fit: contain;
}

.certificate-media-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.8rem;
  min-height: 0;
  padding: 0.8rem;
  background: #edf2f7;
}

.content-row--media-right .certificate-media-grid {
  border-left: 0;
  clip-path: none;
}

.certificate-media-grid__item {
  min-height: 0;
  aspect-ratio: 595 / 842;
  border-radius: 0.5rem;
  background: #fff;
}

.certificate-media-grid .certificate-media-grid__item img {
  height: 100%;
  object-fit: contain;
}

.quality-iso-certificate {
  display: block;
  min-width: 0;
  color: inherit;
  text-decoration: none;
}

.quality-evidence-section {
  padding-top: 0;
}

.quality-evidence {
  display: grid;
  grid-template-columns: minmax(0, 0.82fr) minmax(420px, 1fr);
  border-top: 3px solid var(--blue);
  background: #f4f6f8;
}

.quality-evidence__summary,
.quality-evidence__certificates {
  min-width: 0;
  padding: clamp(1.4rem, 2.8vw, 2.5rem);
}

.quality-evidence__summary {
  border-right: 1px solid var(--line);
}

.quality-evidence h2,
.quality-evidence h3,
.quality-evidence p {
  margin: 0;
}

.quality-evidence h2 {
  margin-top: 0.8rem;
  color: var(--navy);
  font-size: clamp(1.9rem, 3.1vw, 3.2rem);
  line-height: 0.98;
  text-transform: uppercase;
  hyphens: none;
  overflow-wrap: normal;
  word-break: normal;
}

.quality-evidence__summary > p {
  margin-top: 1rem;
  color: var(--text-soft);
  line-height: 1.55;
}

.quality-evidence__recognitions {
  display: grid;
  gap: 0;
  margin: 1.25rem 0 0;
  padding: 0;
  list-style: none;
  border-top: 1px solid var(--line);
}

.quality-evidence__recognitions li {
  display: grid;
  grid-template-columns: 0.5rem minmax(0, 1fr);
  gap: 0.8rem;
  align-items: start;
  padding: 0.9rem 0;
  border-bottom: 1px solid var(--line);
  color: var(--navy);
}

.quality-evidence__recognitions li > span {
  width: 0.42rem;
  height: 0.42rem;
  margin-top: 0.42rem;
  background: var(--blue);
}

.quality-evidence__recognitions strong {
  font-size: clamp(0.98rem, 1.18vw, 1.12rem);
  line-height: 1.35;
}

.quality-evidence__certificate-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(0.9rem, 1.8vw, 1.3rem);
  margin-top: 1.2rem;
}

.quality-evidence__certificate {
  display: grid;
  gap: 0.65rem;
  min-width: 0;
  color: var(--link-color);
  text-decoration: none;
}

.quality-evidence__certificate strong {
  font-size: 0.88rem;
  line-height: 1.4;
}

.quality-evidence__certificate-media {
  min-height: 0;
  aspect-ratio: 842 / 595;
  border: 1px solid var(--line);
  background: #fff;
}

.quality-evidence__certificate-media img {
  object-fit: contain;
}

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

  .quality-evidence__summary {
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }
}

.contact-overview--addresses {
  display: block;
}

.contact-overview--addresses .contact-addresses {
  width: 100%;
}

.contact-department__email {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  margin-top: 0.65rem;
  color: var(--link-color);
  font-weight: 700;
  text-decoration: none;
}

.contact-department__email svg {
  width: 1rem;
  height: 1rem;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
}

.operational-emails {
  padding: clamp(1.35rem, 2.4vw, 2rem);
  border-top: 3px solid var(--blue);
  background: #f4f7fa;
}

.operational-emails__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  margin-top: 1rem;
  background: var(--line);
  border: 1px solid var(--line);
}

.operational-email {
  display: grid;
  gap: 0.45rem;
  min-width: 0;
  padding: 1rem;
  background: #fff;
  color: var(--navy);
  text-decoration: none;
}

.operational-email strong {
  font-size: 0.88rem;
  line-height: 1.35;
}

.operational-email span {
  overflow-wrap: anywhere;
  color: var(--link-color);
  font-size: 0.86rem;
}

.document-row--pending {
  cursor: default;
  opacity: 0.68;
}

.document-row--pending small {
  color: var(--text-soft);
}

@media (max-width: 760px) {
  .certificate-media-grid,
  .quality-evidence__certificate-grid,
  .operational-emails__grid {
    grid-template-columns: 1fr;
  }
}

/* The homepage currently contains two headline statistics. */
body[data-page="home"] .hero-metrics-band {
  background: var(--navy);
}

body[data-page="home"] .hero-metrics-band .hero-metrics {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

/* August 2026 feedback: lighter navigation and aligned company hero. */
.site-header,
.site-header__inner {
  background: #f2f3f4 !important;
}

.main-nav__link,
.icon-button,
.menu-trigger {
  background: transparent;
  color: var(--navy);
}

.main-nav__link:hover,
.main-nav__link:focus-visible,
.icon-button:hover,
.icon-button:focus-visible,
.menu-trigger:hover,
.menu-trigger:focus-visible {
  background: #e2e7eb;
  color: var(--navy);
}

.main-nav__link.is-active,
.icon-button.is-active,
.menu-trigger.is-active {
  background: #ffffff;
  color: var(--navy);
  box-shadow: inset 0 -4px 0 var(--blue);
}

body[data-page="company"] .page-hero__copy {
  align-content: center;
  background:
    linear-gradient(90deg, rgba(3, 56, 98, 0.9), rgba(0, 84, 148, 0.52) 52%, rgba(3, 56, 98, 0.12)),
    url("assets/images/company/company-building.webp") center / cover;
  text-align: left;
}

body[data-page="company"] .page-hero__headline-block,
body[data-page="company"] .page-hero__body {
  width: min(860px, calc(100vw - 40px));
}

@media (min-width: 761px) {
  body[data-page="company"] .page-hero__copy {
    min-height: min(584px, calc(58vh + 24px));
    background-position: center, center 48%;
  }
}

.contact-person__role {
  color: var(--accent-green-text);
  font-size: 0.78rem;
  font-weight: 850;
  letter-spacing: 0.02em;
  line-height: 1.3;
  text-transform: uppercase;
}

@media (max-width: 760px) {
  body[data-page="home"] .hero-metrics-band .hero-metrics {
    grid-template-columns: 1fr;
  }
}

/* Keep the locale switch legible on its dark header tile. */
.header-tool-group > .icon-button,
.header-tool-group > .icon-button:hover,
.header-tool-group > .icon-button:focus-visible,
.header-tool-group > .icon-button.is-active {
  background: var(--navy);
  color: #ffffff;
}

/* On desktop the company collage follows the height of the adjacent copy. */
@media (min-width: 1181px) {
  .company-overview {
    align-items: stretch;
  }

  .company-overview__visuals {
    display: grid;
    align-self: start;
    min-height: 0;
  }

  .company-overview__visuals .media-showcase {
    height: clamp(600px, 38vw, 760px);
    min-height: 0;
    grid-template-columns: 1fr;
    grid-template-rows: minmax(0, 1.25fr) repeat(3, minmax(0, 1fr));
  }

  .company-overview__visuals .media-showcase__stack {
    display: contents;
  }

  .company-overview__visuals .media-frame {
    height: 100%;
    min-height: 0;
  }

  .company-overview__visuals .media-frame img {
    height: 100%;
    aspect-ratio: auto;
  }
}

/* September 2026 feedback: stronger navigation and a compact legal footer. */
.site-header,
.site-header__inner {
  background: #d7dce0 !important;
}

.main-nav__link,
.icon-button,
.menu-trigger {
  background: transparent;
  color: var(--navy);
}

.main-nav__link:hover,
.main-nav__link:focus-visible,
.icon-button:hover,
.icon-button:focus-visible,
.menu-trigger:hover,
.menu-trigger:focus-visible {
  background: #c1c8ce;
  color: var(--navy);
  box-shadow: inset 0 -3px 0 rgba(169, 217, 0, 0.78);
}

.main-nav__link.is-active,
.icon-button.is-active,
.menu-trigger.is-active {
  background: #eef1f3;
  color: var(--navy);
  box-shadow: inset 0 -4px 0 var(--lime);
}

.header-tool-group > .icon-button {
  background: #4b5863;
  color: #ffffff;
}

.header-tool-group > .icon-button:hover,
.header-tool-group > .icon-button:focus-visible {
  background: #5b6873;
  color: #ffffff;
  box-shadow: inset 0 -3px 0 var(--lime);
}

.header-tool-group > .icon-button.is-active {
  background: #3e4a54;
  color: #ffffff;
  box-shadow: inset 0 -4px 0 var(--lime);
}

.site-footer {
  display: block;
  padding: 0;
  border-top: 1px solid rgba(255, 255, 255, 0.12);
  background: #202a33;
  color: rgba(255, 255, 255, 0.8);
}

.site-footer__legal {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem 2rem;
  min-height: 58px;
  padding-block: 0.75rem;
  font-size: 0.78rem;
  line-height: 1.45;
}

.site-footer__legal span {
  flex: 0 0 auto;
  color: #ffffff;
  font-weight: 700;
}

.site-footer__legal small {
  max-width: 64rem;
  color: inherit;
  font-size: inherit;
  text-align: right;
}

@media (max-width: 760px) {
  .site-footer__legal {
    align-items: flex-start;
    flex-direction: column;
  }

  .site-footer__legal small {
    text-align: left;
  }
}

@media (max-width: 940px) {
  .header-tool-group > .icon-button,
  .header-tool-group > .icon-button:hover,
  .header-tool-group > .icon-button:focus,
  .header-tool-group > .icon-button:focus-visible,
  .header-tool-group > .icon-button:active,
  .header-tool-group > .icon-button.is-active,
  .header-tool-group > .icon-button[aria-expanded="false"],
  .header-tool-group > .icon-button[aria-expanded="true"],
  .menu-trigger,
  .menu-trigger:hover,
  .menu-trigger:focus,
  .menu-trigger:focus-visible,
  .menu-trigger:active,
  .menu-trigger.is-active,
  .menu-trigger[aria-expanded="false"],
  .menu-trigger[aria-expanded="true"] {
    background: var(--navy) !important;
    color: #ffffff;
    box-shadow: none !important;
    transform: none !important;
    -webkit-tap-highlight-color: transparent;
  }

  .menu-trigger__icon,
  .menu-trigger__icon .icon,
  .menu-trigger__icon svg {
    color: #ffffff;
  }
}

/* 9 September 2026 feedback: company identifiers, logistics roles and zoo sponsorship. */
.contact-address__details {
  display: grid;
  gap: 0.35rem;
  margin: 1rem 0 0;
  padding-top: 0.9rem;
  border-top: 1px solid var(--line);
}

.contact-address__details div {
  display: grid;
  grid-template-columns: max-content minmax(0, 1fr);
  gap: 0.55rem;
  align-items: baseline;
}

.contact-address__details dt,
.contact-address__details dd {
  margin: 0;
}

.contact-address__details dt {
  color: var(--navy);
  font-weight: 800;
}

.contact-address__details dd {
  color: var(--text-soft);
}

.page-section--sponsorship {
  padding-top: clamp(1.25rem, 2.6vw, 2.4rem);
}

.sustainability-sponsorship {
  grid-template-columns: minmax(300px, 0.72fr) minmax(0, 1fr);
  min-height: clamp(330px, 30vw, 430px);
  margin-bottom: 0;
}

.sustainability-sponsorship__media {
  order: 1;
  min-height: inherit;
  border: 0;
  border-right: 1px solid var(--line);
  clip-path: none;
}

.sustainability-sponsorship__media img {
  height: 100%;
  min-height: inherit;
  object-fit: cover;
  object-position: center;
}

.sustainability-sponsorship__copy {
  order: 2;
}

.sustainability-sponsorship__copy p + p {
  margin-top: 0.2rem;
}

@media (max-width: 760px) {
  .contact-address__details div {
    grid-template-columns: 1fr;
    gap: 0.08rem;
  }

  .sustainability-sponsorship {
    grid-template-columns: 1fr;
    min-height: 0;
  }

  .sustainability-sponsorship__media {
    min-height: clamp(220px, 64vw, 320px);
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }

  .sustainability-sponsorship__media img {
    min-height: inherit;
  }
}
