:root {
  --font-ui: "Microsoft YaHei UI", "Microsoft YaHei", "Noto Sans SC", system-ui, -apple-system, BlinkMacSystemFont,
    "Segoe UI", sans-serif;
  --font-cn: var(--font-ui);
  --font-latin: var(--font-ui);
  --font-mono: "Holly Mono", "JetBrains Mono", Consolas, "Microsoft YaHei UI", "Microsoft YaHei",
    monospace;
  --font-number: var(--font-mono);
  --banner-kicker-color: #21e269;
  --english-banner-body-line-height: 26px;
  --english-body-line-height: 26px;
  --english-compact-body-line-height: 22px;
  --button-radius: 12px;
  --site-header-height: 80px;
  --product-filter-height: 68px;
  --product-detail-nav-height: 80px;
  --product-detail-row-padding-block: 22px;
  --home-hero-height: max(640px, calc(100svh - var(--site-header-height)));
  --content-section-padding-top: 40px;
  --content-section-padding-bottom: 40px;
  --content-section-edge-padding-top: 60px;
  --content-section-edge-padding-bottom: 60px;
  --content-heading-description-gap: 16px;
  --content-heading-content-gap: 40px;
  font-family: var(--font-ui);
  color: #0c1a12;
  background: #ffffff;
  font-synthesis: none;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

@font-face {
  font-family: "Holly Mono";
  src: url("/assets/jetbrains-mono-latin-400-normal-V6pRDFza.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Holly Mono";
  src: url("/assets/jetbrains-mono-latin-700-normal-BYuf6tUa.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: auto;
  overflow-x: hidden;
  scrollbar-gutter: stable;
}

html.navigation-overlay-open,
html.navigation-overlay-open body {
  overflow: hidden;
}

body {
  min-width: 320px;
  min-height: 100vh;
  margin: 0;
  background: #ffffff;
  overflow-x: hidden;
}

body,
button,
input,
textarea,
select {
  font: inherit;
}

button,
a {
  color: inherit;
}

button {
  border-radius: var(--button-radius);
  cursor: pointer;
}

a {
  text-decoration: none;
}

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

@property --tilt-glow-border-angle {
  syntax: '<angle>';
  inherits: false;
  initial-value: 0deg;
}

@media (hover: hover) and (pointer: fine) {
  .tilt-glow-card {
    perspective: 900px;
  }

  .tilt-glow-card > .tilt-glow-card__surface,
  .tilt-glow-card.tilt-glow-card__surface {
    transform:
      perspective(900px)
      rotateX(var(--tilt-glow-rotate-x, 0deg))
      rotateY(var(--tilt-glow-rotate-y, 0deg))
      translateY(0)
      scale(1);
    transform-style: preserve-3d;
    transition:
      transform 180ms cubic-bezier(0.22, 1, 0.36, 1),
      box-shadow 220ms ease;
    will-change: transform;
  }

  .tilt-glow-card:hover > .tilt-glow-card__surface,
  .tilt-glow-card.tilt-glow-card__surface:hover {
    border-color: transparent;
    background:
      linear-gradient(#ffffff, #ffffff) padding-box,
      conic-gradient(
        from var(--tilt-glow-border-angle),
        #ff0000 0deg,
        #ffa500 52deg,
        #ffff00 103deg,
        #008000 154deg,
        #0000ff 206deg,
        #4b0082 257deg,
        #ee82ee 309deg,
        #ff0000 360deg
      ) border-box;
    box-shadow: 0 10px 28px rgba(0, 0, 0, 0.06);
    animation: tilt-glow-border-flow 1800ms linear infinite;
    transform:
      perspective(900px)
      rotateX(var(--tilt-glow-rotate-x, 0deg))
      rotateY(var(--tilt-glow-rotate-y, 0deg))
      translateY(-5px)
      scale(1.015);
  }

  .tilt-glow-card .tilt-glow-card__icon,
  .tilt-glow-card .tilt-glow-card__title,
  .tilt-glow-card .tilt-glow-card__body {
    transition: transform 180ms cubic-bezier(0.22, 1, 0.36, 1);
  }

  .tilt-glow-card:hover .tilt-glow-card__icon {
    transform: translateZ(18px);
  }

  .tilt-glow-card:hover .tilt-glow-card__title {
    transform: translateZ(10px);
  }

  .tilt-glow-card:hover .tilt-glow-card__body {
    transform: translateZ(6px);
  }
}

@keyframes tilt-glow-border-flow {
  to {
    --tilt-glow-border-angle: 360deg;
  }
}

@media (prefers-reduced-motion: reduce) {
  .tilt-glow-card > .tilt-glow-card__surface,
  .tilt-glow-card.tilt-glow-card__surface,
  .tilt-glow-card:hover > .tilt-glow-card__surface,
  .tilt-glow-card.tilt-glow-card__surface:hover,
  .tilt-glow-card .tilt-glow-card__icon,
  .tilt-glow-card .tilt-glow-card__title,
  .tilt-glow-card .tilt-glow-card__body {
    transform: none;
    transition: none;
    animation: none;
  }
}

#app,
.site {
  min-height: 100vh;
  background: #ffffff;
}

.site {
  width: 100vw;
  display: flex;
  flex-direction: column;
  padding-top: var(--site-header-height);
  overflow-x: clip;
}

.site > main {
  flex: 1 0 auto;
}

.site-header-shell {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 90;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  background: rgba(255, 255, 255, 0.78);
  box-shadow: none;
  backdrop-filter: blur(18px) saturate(160%);
  -webkit-backdrop-filter: blur(18px) saturate(160%);
  transform: translateY(0);
  transition:
    border-color 180ms ease,
    background-color 180ms ease,
    transform 260ms cubic-bezier(0.22, 1, 0.36, 1);
  will-change: transform;
}

@media (min-width: 981px) {
  .site--desktop-menu-open .site-header-shell {
    border-bottom-color: transparent;
    background: #ffffff;
  }

  .site--desktop-menu-open .site-header-shell::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    height: var(--site-header-height);
    z-index: 90;
    background: #ffffff;
    pointer-events: none;
  }
}

.site-header {
  position: relative;
  z-index: 100;
  width: calc(100% - 120px);
  height: var(--site-header-height);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 140px 92px minmax(0, 1fr) auto;
  align-items: center;
  column-gap: 0;
  background: transparent;
}

.brand {
  display: block;
  width: 140px;
  height: 50px;
}

.brand__asset {
  display: block;
  width: 140px;
  height: 50px;
}

.brand__logo {
  width: 140px;
  height: 50px;
  object-fit: contain;
}

.stock-code {
  display: grid;
  align-content: center;
  justify-self: end;
  width: 72px;
  height: 36px;
  color: #000000;
  font-size: 12px;
  font-weight: 700;
  line-height: 18px;
  letter-spacing: 0;
  white-space: nowrap;
  transform: translateY(5px);
}

.stock-code strong {
  font-size: inherit;
  font-family: var(--font-mono);
  font-weight: 700;
  line-height: inherit;
  letter-spacing: 1.08px;
}

.primary-nav {
  position: relative;
  width: auto;
  max-width: 100%;
  min-width: 0;
  display: flex;
  align-items: center;
  justify-self: stretch;
  justify-content: flex-start;
  gap: 20px;
  margin-left: 60px;
  isolation: isolate;
  overflow: visible;
}

.language-switcher {
  min-width: 70px;
  height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  color: #000000;
  font-size: 14px;
  font-weight: 700;
  line-height: 20px;
  white-space: nowrap;
}

.language-switcher a {
  color: inherit;
  font-weight: 700;
  text-decoration: none;
}

.language-switcher a:hover,
.language-switcher a:focus-visible,
.language-switcher__option--active {
  color: #008d47;
}

.language-switcher a:focus-visible {
  border-radius: 2px;
  outline: 2px solid #008d47;
  outline-offset: 3px;
}

.language-switcher--desktop {
  justify-self: end;
  margin-left: 16px;
}

.language-switcher.language-switcher--desktop {
  min-width: 34px;
  width: 34px;
  height: 34px;
  gap: 0;
}

.language-switcher__trigger {
  width: 34px;
  height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 2px solid transparent;
  border-radius: 20px;
  background: transparent;
  cursor: pointer;
}

.language-switcher__trigger:hover,
.language-switcher__trigger:focus-visible,
.language-switcher__trigger--open {
  border-color: #008d47;
  background: #f3fff9;
  outline: 0;
}

.language-switcher__icon {
  width: 20px;
  height: 20px;
  display: block;
}

.language-popover {
  position: fixed;
  z-index: 101;
  top: calc(var(--site-header-height) - 5px);
  width: 120px;
  display: grid;
  border-top: 2px solid #008d47;
  border-radius: 0 0 12px 12px;
  padding: 10px 12px;
  gap: 10px;
  box-sizing: border-box;
  background: #ffffff;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
}

.language-popover__option {
  width: 96px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 2px solid transparent;
  border-radius: 12px;
  box-sizing: border-box;
  background: #ffffff;
  color: #000000;
  font-size: 16px;
  font-weight: 700;
  line-height: 22px;
  text-decoration: none;
  transition: border-color 160ms ease;
}

.language-popover__option--active {
  border-color: #008d47;
  background: #008d47;
  color: #ffffff;
  outline: 0;
}

.language-popover__option:not(.language-popover__option--active):hover,
.language-popover__option:not(.language-popover__option--active):focus-visible {
  border-color: #008d47;
  color: #000000;
  outline: 0;
}

.primary-nav .ai-agent-nav-entry,
.primary-nav .nav-pill[data-nav-id="cloud-platform"] {
  margin-left: auto;
}

.primary-nav .ai-agent-nav-entry + .nav-pill[data-nav-id="cloud-platform"] {
  margin-left: 0;
}

.primary-nav .nav-pill[data-nav-id="cloud-platform"] {
  font-weight: 400;
}

.nav-dock-indicator {
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  width: 80px;
  height: 40px;
  border-radius: var(--button-radius);
  background: #008d47;
  opacity: 0;
  pointer-events: none;
  transform: translate3d(0, 0, 0);
  will-change: transform, width, height, opacity;
}

.nav-pill {
  position: relative;
  z-index: 1;
  appearance: none;
  -webkit-appearance: none;
  height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  border: 2px solid transparent;
  border-radius: var(--button-radius);
  background: transparent;
  background-color: transparent;
  background-image: none;
  padding: 0 20px;
  color: #000000;
  font-size: 16px;
  font-weight: 700;
  line-height: 20px;
  letter-spacing: 0;
  white-space: nowrap;
  transform: translate3d(0, 0, 0);
  transition: border-color 120ms ease, color 45ms linear;
}

.nav-pill__text {
  display: inline-flex;
  line-height: inherit;
}

.primary-nav:not(.primary-nav--indicator-ready) .nav-pill {
  transition: none;
}

.primary-nav--hover-enabled .nav-pill:not(.nav-pill--active):hover,
.nav-pill:not(.nav-pill--active):focus-visible {
  border-color: #008d47;
  background: transparent;
  background-color: transparent;
  background-image: none;
  color: #000000;
  transform: translate3d(0, 0, 0);
  box-shadow: none;
  outline: 0;
}

@media (min-width: 981px) {
  .nav-pill--utility-fui {
    box-sizing: border-box;
    height: 40px;
    border: 2px solid #303030;
    border-radius: 8px;
    background: #ffffff;
    padding: 0 18px;
    color: #171717;
    box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .06);
    transition:
      border-color 160ms ease,
      background-color 160ms ease,
      box-shadow 160ms ease,
      transform 120ms ease;
  }

  .primary-nav .nav-pill--utility-fui:active {
    transform: translateY(1px);
  }
}

@media (min-width: 981px) and (hover: hover) and (pointer: fine) {
  .primary-nav--hover-enabled .nav-pill--utility-fui:not(.nav-pill--active):hover,
  .primary-nav .nav-pill--utility-fui:not(.nav-pill--active):focus-visible {
    border-color: transparent;
    background:
      linear-gradient(#ffffff, #ffffff) padding-box,
      conic-gradient(
        from var(--tilt-glow-border-angle),
        #ff0000 0deg,
        #ffa500 52deg,
        #ffff00 103deg,
        #008000 154deg,
        #0000ff 206deg,
        #4b0082 257deg,
        #ee82ee 309deg,
        #ff0000 360deg
      ) border-box;
    color: #171717;
    animation: tilt-glow-border-flow 1800ms linear infinite;
    outline: 0;
  }
}

@media (min-width: 981px) and (prefers-reduced-motion: reduce) {
  .primary-nav--hover-enabled .nav-pill--utility-fui:not(.nav-pill--active):hover,
  .primary-nav .nav-pill--utility-fui:not(.nav-pill--active):focus-visible {
    animation: none;
  }
}

.nav-pill--route-active:not(.nav-pill--active):hover,
.nav-pill--route-active:not(.nav-pill--active):focus-visible,
.nav-pill--route-active.nav-pill--open,
.nav-pill--route-active.nav-pill--open:hover,
.nav-pill--route-active.nav-pill--open:focus-visible {
  border-color: transparent;
  background: transparent;
  background-color: transparent;
  background-image: none;
  color: #000000;
  box-shadow: none;
  outline: 0;
}

.primary-nav--switching .nav-pill:not(.nav-pill--active):hover,
.primary-nav--switching .nav-pill:not(.nav-pill--active):focus-visible,
.primary-nav--switching .nav-pill--open:not(.nav-pill--active),
.primary-nav--switching .nav-pill--open:not(.nav-pill--active):hover,
.primary-nav--switching .nav-pill--open:not(.nav-pill--active):focus-visible {
  border-color: transparent;
  background: transparent;
  background-color: transparent;
  background-image: none;
  color: #000000;
  box-shadow: none;
  outline: 0;
}

.primary-nav--switching .nav-pill {
  transition: border-color 80ms ease, color 40ms linear;
}

/* The visual active nav item sits on the green indicator, so its text must stay white outside hover. */
.nav-pill--active,
.nav-pill--active:hover,
.nav-pill--active:focus-visible {
  border-color: transparent;
  background: transparent;
  background-color: transparent;
  background-image: none;
  color: #ffffff;
  font-weight: 700;
  transform: translate3d(0, 0, 0);
  box-shadow: none;
}

.nav-pill--open,
.nav-pill--open:hover,
.nav-pill--open:focus-visible {
  border-color: #008d47;
  background: transparent;
  background-color: transparent;
  background-image: none;
  color: #000000;
  transform: translate3d(0, 0, 0);
  box-shadow: none;
  outline: 0;
}

.nav-pill--active.nav-pill--open,
.nav-pill--active.nav-pill--open:hover,
.nav-pill--active.nav-pill--open:focus-visible {
  border-color: transparent;
  background: transparent;
  background-color: transparent;
  background-image: none;
  color: #ffffff;
  transform: translate3d(0, 0, 0);
  box-shadow: none;
}

.nav-pill__arrow {
  width: 10px;
  height: 10px;
  background: currentColor;
  transform: rotate(0deg);
  transition: transform 180ms ease;
  mask: url("data:image/svg+xml,%3csvg%20width='10'%20height='10'%20viewBox='0%200%2010%2010'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M9%202.82471L5%207.01184L1%202.82471'%20stroke='currentColor'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/svg%3e") center / contain no-repeat;
  -webkit-mask: url("data:image/svg+xml,%3csvg%20width='10'%20height='10'%20viewBox='0%200%2010%2010'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M9%202.82471L5%207.01184L1%202.82471'%20stroke='currentColor'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/svg%3e") center / contain no-repeat;
}

.nav-pill--open .nav-pill__arrow {
  transform: rotate(180deg);
}

.icon-arrow {
  width: 14px;
  height: 14px;
  flex: 0 0 auto;
  background: currentColor;
  mask: url("data:image/svg+xml,%3csvg%20width='10'%20height='10'%20viewBox='0%200%2010%2010'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M9%202.82471L5%207.01184L1%202.82471'%20stroke='currentColor'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/svg%3e") center / contain no-repeat;
  -webkit-mask: url("data:image/svg+xml,%3csvg%20width='10'%20height='10'%20viewBox='0%200%2010%2010'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M9%202.82471L5%207.01184L1%202.82471'%20stroke='currentColor'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/svg%3e") center / contain no-repeat;
}

.icon-arrow--right {
  width: 14px;
  height: 12px;
  transform: none;
  transition: transform 360ms cubic-bezier(0.22, 1, 0.36, 1);
  mask-image: url("data:image/svg+xml,%3csvg%20width='14'%20height='12'%20viewBox='0%200%2014%2012'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M13.3747%205.3747C13.7199%205.3747%2014%205.65482%2014%205.99999C14%206.34516%2013.7199%206.62528%2013.3747%206.62528H0.625286C0.280119%206.62528%200%206.34516%200%205.99999C0%205.65482%200.280119%205.3747%200.625286%205.3747H13.3747Z'%20fill='white'/%3e%3cg%20transform='translate(4%201)'%3e%3cpath%20d='M4.55788%200.183054C4.80195%20-0.0610181%205.19818%20-0.0610181%205.44225%200.183054L9.81651%204.55827C10.0606%204.80234%2010.0606%205.19766%209.81651%205.44173L5.44225%209.81695C5.19818%2010.061%204.80195%2010.061%204.55788%209.81695C4.31406%209.57296%204.31417%209.17753%204.55788%208.93348L8.49087%204.99954L4.55788%201.06744C4.31381%200.823363%204.31381%200.427127%204.55788%200.183054Z'%20fill='white'/%3e%3c/g%3e%3c/svg%3e");
  -webkit-mask-image: url("data:image/svg+xml,%3csvg%20width='14'%20height='12'%20viewBox='0%200%2014%2012'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M13.3747%205.3747C13.7199%205.3747%2014%205.65482%2014%205.99999C14%206.34516%2013.7199%206.62528%2013.3747%206.62528H0.625286C0.280119%206.62528%200%206.34516%200%205.99999C0%205.65482%200.280119%205.3747%200.625286%205.3747H13.3747Z'%20fill='white'/%3e%3cg%20transform='translate(4%201)'%3e%3cpath%20d='M4.55788%200.183054C4.80195%20-0.0610181%205.19818%20-0.0610181%205.44225%200.183054L9.81651%204.55827C10.0606%204.80234%2010.0606%205.19766%209.81651%205.44173L5.44225%209.81695C5.19818%2010.061%204.80195%2010.061%204.55788%209.81695C4.31406%209.57296%204.31417%209.17753%204.55788%208.93348L8.49087%204.99954L4.55788%201.06744C4.31381%200.823363%204.31381%200.427127%204.55788%200.183054Z'%20fill='white'/%3e%3c/g%3e%3c/svg%3e");
}

a:hover .icon-arrow--right,
a:focus-visible .icon-arrow--right,
button:hover .icon-arrow--right,
button:focus-visible .icon-arrow--right {
  transform: translateX(4px);
}

.menu-toggle {
  position: relative;
  display: none;
  width: 44px;
  height: 44px;
  align-items: center;
  justify-content: center;
  border: 1px solid #d8e3dc;
  border-radius: var(--button-radius);
  background: #ffffff;
}

.menu-toggle span {
  position: absolute;
  width: 18px;
  height: 2px;
  background: #0c1a12;
  transition:
    transform 220ms cubic-bezier(0.22, 1, 0.36, 1),
    opacity 140ms ease;
}

.menu-toggle span:nth-child(1) {
  transform: translateY(-6px);
}

.menu-toggle span:nth-child(3) {
  transform: translateY(6px);
}

.menu-toggle--open span:nth-child(1) {
  transform: rotate(45deg);
}

.menu-toggle--open span:nth-child(2) {
  opacity: 0;
}

.menu-toggle--open span:nth-child(3) {
  transform: rotate(-45deg);
}

.page-scrim {
  position: fixed;
  z-index: 45;
  top: 494px;
  right: 0;
  bottom: 0;
  left: 0;
  border: 0;
  border-radius: 0;
  background: rgba(0, 0, 0, 0.4);
}

.site--products-open .product-intro-breadcrumb-shell {
  z-index: 40;
}

.about-popover {
  position: fixed;
  z-index: 101;
  top: calc(var(--site-header-height) - 5px);
  width: 160px;
  border-top: 2px solid #008d47;
  border-radius: 0 0 12px 12px;
  box-sizing: border-box;
  background: #ffffff;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
  overflow: hidden;
}

.about-popover__list {
  width: 136px;
  display: grid;
  align-content: start;
  gap: 10px;
  margin: 0 auto;
  padding: 10px 0;
  box-sizing: border-box;
}

.about-popover__item {
  width: 136px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 12px;
  border: 2px solid transparent;
  border-radius: 12px;
  box-sizing: border-box;
  background: #ffffff;
  color: #000000;
  font-size: 16px;
  font-weight: 700;
  line-height: 22px;
  text-align: center;
  text-decoration: none;
  transition: border-color 160ms ease;
}

.about-popover__item--active {
  border-color: #008d47;
  background: #008d47;
  color: #ffffff;
  outline: 0;
}

.about-popover__item:not(.about-popover__item--active):hover,
.about-popover__item:not(.about-popover__item--active):focus-visible {
  border-color: #008d47;
  color: #000000;
  outline: 0;
}

.about-popover__item-label {
  white-space: nowrap;
}

.mega-menu {
  position: fixed;
  z-index: 80;
  top: 80px;
  right: 0;
  left: 0;
  min-height: 414px;
  max-height: calc(100svh - 80px);
  border-radius: 0 0 var(--button-radius) var(--button-radius);
  background: #ffffff;
  box-shadow: none;
  overflow: hidden;
  overscroll-behavior: none;
}

.mega-menu__inner {
  position: relative;
  width: min(1400px, calc(100% - 48px));
  min-height: 414px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 260px minmax(0, 1fr);
  gap: 80px;
  padding-top: 30px;
  box-sizing: border-box;
}

.mega-menu__tabs {
  position: relative;
  display: grid;
  align-content: start;
  gap: 4px;
  padding-top: 0;
  isolation: isolate;
}

.mega-menu__tabs::after {
  position: absolute;
  top: 0;
  right: -40px;
  width: 1px;
  height: 344px;
  content: "";
  background: rgba(1, 25, 13, 0.15);
}

.mega-menu__tabs--measurement::after {
  height: auto;
  bottom: 30px;
}

.mega-menu__tab {
  position: relative;
  width: 260px;
  height: 70px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 20px;
  border: 0;
  border-radius: var(--button-radius);
  background: #ffffff;
  color: #000000;
  text-align: left;
  transform: translateX(0);
  transition:
    background 220ms ease,
    color 220ms ease,
    font-weight 220ms ease;
}

.mega-menu__tab--active {
  background: #f5f5f5;
  color: #008d47;
  transform: none;
}

.mega-menu__tab:not(.mega-menu__tab--active):hover,
.mega-menu__tab:not(.mega-menu__tab--active):focus-visible {
  background: #f8faf9;
}

.mega-menu__tab:focus-visible {
  outline: 0;
}

.mega-menu__tab-copy {
  min-width: 0;
  display: grid;
  gap: 4px;
}

.mega-menu__tab-title {
  font-size: 16px;
  font-weight: 700;
  line-height: 22px;
}

.mega-menu__tab-english {
  color: #a1a1a1;
  font-size: 12px;
  font-weight: 400;
  line-height: 18px;
  letter-spacing: 1px;
}

.mega-menu__tab-arrow {
  width: 14px;
  height: 12px;
  opacity: 0;
  transition: opacity 180ms ease, transform 360ms cubic-bezier(0.22, 1, 0.36, 1);
}

.mega-menu__tab--active .mega-menu__tab-arrow {
  opacity: 1;
}

.mega-menu__content {
  position: relative;
  grid-row: 1;
  grid-column: 2;
  align-self: start;
  max-height: calc(100svh - 110px);
  display: grid;
  align-content: start;
  gap: 22px;
  min-width: 0;
  overflow-y: auto;
  overscroll-behavior: contain;
  padding: 10px 0 80px;
}

.mega-menu--height-transitioning .mega-menu__content {
  overflow-y: hidden;
}

.mega-menu__content--measurement {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  column-gap: 32px;
  padding: 0 0 30px;
}

.mega-menu__subcategories {
  --mega-subcategory-indicator-x: 0px;
  --mega-subcategory-indicator-width: 0px;
  position: relative;
  grid-column: 1 / -1;
  height: 40px;
  display: flex;
  align-items: flex-start;
  gap: 32px;
  isolation: isolate;
  border-bottom: 1px solid rgba(1, 25, 13, 0.15);
}

.mega-menu__subcategory {
  position: relative;
  z-index: 1;
  height: 40px;
  padding: 0 0 14px;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #a1a1a1;
  font-size: 14px;
  font-weight: 700;
  line-height: 18px;
  transition: color 160ms ease;
}

.mega-menu__subcategory-indicator {
  position: absolute;
  right: auto;
  bottom: 0;
  left: 0;
  z-index: 0;
  width: var(--mega-subcategory-indicator-width);
  height: 2px;
  border-radius: var(--button-radius);
  background: #008d47;
  pointer-events: none;
  transform: translateX(var(--mega-subcategory-indicator-x));
  transition: none;
  will-change: transform, width;
}

.mega-menu__subcategories--animate .mega-menu__subcategory-indicator {
  transition:
    transform 240ms cubic-bezier(0.22, 1, 0.36, 1),
    width 240ms cubic-bezier(0.22, 1, 0.36, 1);
}

.mega-menu__subcategory--active {
  color: #008d47;
}

.mega-menu__subcategory:not(.mega-menu__subcategory--active):hover,
.mega-menu__subcategory:not(.mega-menu__subcategory--active):focus-visible {
  color: #000000;
  outline: 0;
}

.mega-menu__content--measurement .mega-menu__group--span-4 {
  grid-column: span 4;
}

.mega-menu__content--measurement .mega-menu__group--span-3 {
  grid-column: span 3;
}

.mega-menu__content--measurement .mega-menu__group--span-1 {
  grid-column: span 1;
}

.mega-menu__content--measurement .mega-menu__group--span-3 .mega-menu__grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.mega-menu__content--measurement .mega-menu__group--span-1 .mega-menu__grid {
  grid-template-columns: minmax(0, 1fr);
}

.mega-menu__group h2 {
  margin: 0 0 14px;
  color: #000000;
  font-size: 14px;
  font-weight: 700;
  line-height: 18px;
  letter-spacing: 0;
}

.mega-menu__grid {
  min-width: 0;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  align-content: start;
  gap: 8px 32px;
}

.mega-card {
  min-width: 0;
  min-height: 24px;
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 0;
  align-items: center;
  background: #ffffff;
}

.mega-card:hover strong,
.mega-card:hover .mega-card__index,
.mega-card:focus-visible strong,
.mega-card:focus-visible .mega-card__index {
  color: #008d47;
}

.mega-card:focus-visible {
  outline: 2px solid rgba(0, 141, 71, 0.28);
  outline-offset: 5px;
}

.mega-card__index {
  font-family: var(--font-number);
  color: #a6aeba;
  font-size: 14px;
  font-weight: 400;
  line-height: 22px;
  letter-spacing: 0;
  transition: color 180ms ease;
}

.mega-card__body {
  min-width: 0;
  display: block;
}

.mega-card strong {
  overflow: hidden;
  display: -webkit-box;
  color: #444444;
  font-size: 14px;
  font-weight: 400;
  line-height: 22px;
  letter-spacing: 0;
  white-space: normal;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  transition: color 160ms ease;
}

.mega-consultation {
  width: 260px;
  height: 44px;
  margin-top: 4px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  border-radius: var(--button-radius);
  border: 0;
  background: #000000;
  color: #ffffff;
  font-size: 14px;
  font-weight: 700;
  line-height: 20px;
  letter-spacing: 0;
  transition:
    background 160ms ease,
    color 160ms ease;
}

.mega-consultation:hover,
.mega-consultation:focus-visible {
  background: #008d47;
  color: #ffffff;
  outline: 0;
}

.mega-content-enter-active,
.mega-content-leave-active {
  transition:
    opacity 180ms ease,
    filter 180ms ease,
    transform 260ms cubic-bezier(0.22, 1, 0.36, 1);
}

.mega-content-enter-active {
  z-index: 2;
}

.mega-content-leave-active {
  z-index: 1;
  pointer-events: none;
}

.mega-content-enter-from {
  opacity: 0;
  filter: blur(1.5px);
  transform: translate3d(8px, 0, 0);
}

.mega-content-leave-to {
  opacity: 0;
  filter: blur(0.5px);
  transform: translate3d(-6px, 0, 0);
}

.mega-enter-active,
.mega-leave-active {
  transition: opacity 160ms ease, transform 160ms ease;
}

.mega-enter-from,
.mega-leave-to {
  opacity: 0;
  transform: translateY(-6px);
}

.hero {
  position: relative;
  overflow: hidden;
  height: var(--home-hero-height);
  min-height: var(--home-hero-height);
  display: block;
  background: #020712;
}

.hero__stage {
  position: relative;
  top: auto;
  width: 100%;
  height: var(--home-hero-height);
  min-height: var(--home-hero-height);
  display: grid;
  place-items: center;
  overflow: hidden;
  isolation: isolate;
  background: #020712;
}

.banner-copy-motion {
  animation: banner-fade-in-down 1200ms ease both;
  will-change: opacity, transform;
}

.inner-page-hero {
  height: clamp(360px, 33.33svh, 720px);
}

.inner-page-hero__inner {
  width: min(1400px, calc(100% - 48px));
  margin: 0 auto;
  padding-top: clamp(78px, 8.61svh, 186px);
}

.banner-hero--english.placeholder-hero {
  height: clamp(360px, 33.33svh, 720px);
  min-height: 0;
}

.banner-hero--english.inner-page-hero .banner-copy-motion h1,
.banner-hero--english.placeholder-hero .banner-copy-motion h1 {
  max-width: min(940px, 100%);
  white-space: normal;
  word-break: normal;
  overflow-wrap: break-word;
  line-height: 2;
  letter-spacing: 0;
}

.banner-hero--english.inner-page-hero .banner-copy-motion > p:last-child,
.banner-hero--english.placeholder-hero .banner-copy-motion > p:last-child {
  white-space: normal;
  word-break: normal;
  overflow-wrap: break-word;
  line-height: var(--english-banner-body-line-height);
  letter-spacing: 1px;
}

.products-page .banner-hero--english .banner-copy-motion > p:last-child {
  letter-spacing: 0;
}

.array-product-detail--english :is(p, li, td, th, dt, dd) {
  white-space: normal;
  word-break: normal;
  overflow-wrap: break-word;
}

.motion-session-played {
  animation: none !important;
  opacity: 1 !important;
  transform: none !important;
}

.section-reveal {
  opacity: 0;
  transform: translate3d(0, var(--section-reveal-distance, 38px), 0);
  transition:
    opacity var(--section-reveal-duration, 800ms) ease var(--section-reveal-delay, 0ms),
    transform var(--section-reveal-duration, 800ms) ease var(--section-reveal-delay, 0ms);
  will-change: opacity, transform;
}

.section-reveal[data-reveal-direction='left'] {
  transform: translate3d(-80px, 0, 0);
}

.section-reveal[data-reveal-direction='right'] {
  transform: translate3d(80px, 0, 0);
}

.section-reveal[data-reveal-direction='down'] {
  transform: translate3d(0, calc(-1 * var(--section-reveal-distance, 38px)), 0);
}

.section-reveal.section-reveal--in-view {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}

.home-news-featured.section-reveal[data-reveal-direction='left']:not(.section-reveal--in-view):not(.motion-session-played) {
  transform: translate3d(calc(-1 * var(--section-reveal-distance, 36px)), 0, 0);
}

.home-news-compact.section-reveal[data-reveal-direction='right']:not(.section-reveal--in-view):not(.motion-session-played) {
  transform: translate3d(var(--section-reveal-distance, 36px), 0, 0);
}

@keyframes banner-fade-in-down {
  from {
    opacity: 0;
    transform: translate3d(0, -42px, 0);
  }

  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

.section {
  background: #ffffff;
}

.section__inner {
  width: min(1400px, calc(100% - 48px));
  margin: 0 auto;
  padding: var(--content-section-padding-top) 0 var(--content-section-padding-bottom);
}

.home-section-title {
  margin: 0;
  text-align: center;
}

.home-section-title h2 {
  margin: 0;
  color: #0c1a12;
  font-size: 40px;
  font-weight: 700;
  line-height: 40px;
  letter-spacing: 0;
}

.home-section-title p {
  margin: var(--content-heading-description-gap) 0 0;
  color: #a6aeba;
  font-size: 16px;
  font-weight: 400;
  line-height: 25px;
}

.section--products {
  background: #ffffff;
}

.section--products .section__inner {
  padding-top: var(--content-section-edge-padding-top);
}

.section--news .section__inner {
  padding-bottom: var(--content-section-edge-padding-bottom);
}

.home-product-presentation {
  margin-top: var(--content-heading-content-gap);
}

.home-product-presentation--showcase .product-grid {
  margin-top: 0;
}

.product-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
  margin-top: 60px;
}

.product-card-reveal {
  min-width: 0;
  display: flex;
}

.product-card-reveal > .product-card {
  width: 100%;
}

.product-card {
  overflow: hidden;
  min-height: 495px;
  display: flex;
  flex-direction: column;
  border: 1px solid #dfe7e2;
  border-radius: var(--button-radius);
  background: #ffffff;
  box-shadow: 0 12px 36px rgba(1, 25, 13, 0.04);
  transition:
    border-color 220ms ease,
    box-shadow 220ms ease,
    transform 220ms cubic-bezier(0.22, 1, 0.36, 1);
}

.product-card__media {
  position: relative;
  height: 230px;
  flex: 0 0 auto;
  display: block;
  overflow: hidden;
  margin: 8px 8px 0;
  border-radius: 8px;
  background: #eef3f0;
}

.product-card__media picture,
.product-card__media img {
  width: 100%;
  height: 100%;
  display: block;
}

.product-card__media img {
  object-fit: cover;
}

.product-card__content {
  min-height: 254px;
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  padding: 28px 30px 30px;
}

.product-card h3 {
  margin: 0;
  display: flex;
  align-items: baseline;
  gap: 16px;
  color: #0c1a12;
  font-size: 26px;
  font-weight: 700;
  line-height: 36px;
  letter-spacing: 0;
}

.product-card h3 a {
  flex: 0 0 auto;
  transition: color 180ms ease;
}

.product-card__content > p {
  margin: 18px 0 0;
  color: #333333;
  font-size: 16px;
  font-weight: 400;
  line-height: 28px;
}

.product-card__link {
  width: 148px;
  height: 44px;
  flex: 0 0 44px;
  align-self: flex-start;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  margin-top: 26px;
  border-radius: var(--button-radius);
  background: #000000;
  padding: 0 16px;
  color: #ffffff;
  font-size: 14px;
  font-weight: 700;
  line-height: 20px;
  transition:
    background 180ms ease,
    color 180ms ease;
}

@media (min-width: 981px) {
  .home-page--english .product-card__content > p {
    margin-bottom: 26px;
  }

  .home-page--english .product-card__link {
    margin-top: auto;
  }
}

@media (hover: hover) and (pointer: fine) {
  .product-card:hover,
  .product-card:focus-within {
    border-color: rgba(0, 141, 71, 0.42);
    box-shadow: 0 20px 48px rgba(1, 25, 13, 0.09);
    transform: translateY(-4px);
  }

  .product-card:hover h3 a,
  .product-card:focus-within h3 a {
    color: #008d47;
  }

  .product-card__link:hover,
  .product-card__link:focus-visible {
    background: #008d47;
    color: #ffffff;
    outline: 0;
  }

  .product-card__link:hover .icon-arrow,
  .product-card__link:focus-visible .icon-arrow {
    transform: translateX(4px);
  }
}

.text-link {
  width: fit-content;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 32px auto 0;
  color: #1a5c38;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
}

.home-news-state {
  min-height: 240px;
  display: grid;
  place-items: center;
  margin-top: var(--content-heading-content-gap);
  border-top: 1px solid rgba(1, 25, 13, 0.12);
  border-bottom: 1px solid rgba(1, 25, 13, 0.12);
  color: #7f8a84;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
}

.home-news-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(380px, 0.92fr);
  gap: 32px;
  margin-top: var(--content-heading-content-gap);
}

.home-news-featured {
  padding: 0;
}

.home-news-featured__media {
  height: 300px;
  display: block;
  overflow: hidden;
  border-radius: var(--button-radius);
  background: #f4f6f5;
}

.home-news-featured__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.home-news-featured__content {
  padding: 24px 10px 0;
}

.home-news-featured time,
.home-news-compact time {
  color: #7f8a84;
  font-family: var(--font-number);
  font-size: 14px;
  font-weight: 400;
  line-height: 22px;
}

.home-news-featured h3,
.home-news-compact h3 {
  margin: 12px 0 0;
  color: #0c1a12;
  font-weight: 700;
}

.home-news-featured h3 {
  font-size: 24px;
  line-height: 34px;
}

.home-news-compact h3 {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: 18px;
  font-weight: 700;
  line-height: 26px;
}

.home-news-featured h3 a,
.home-news-compact h3 a {
  transition: color 180ms ease;
}

.home-news-featured__content > p {
  display: -webkit-box;
  overflow: hidden;
  margin: 12px 0 0;
  color: #333333;
  font-size: 14px;
  font-weight: 400;
  line-height: 24px;
  white-space: pre-line;
  -webkit-box-orient: vertical;
}

.home-news-featured__content > p {
  -webkit-line-clamp: 3;
}

.home-news-featured__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin-top: 20px;
}

.home-news-compact__content > p {
  display: -webkit-box;
  overflow: hidden;
  margin: 8px 0 0;
  color: #333333;
  font-size: 14px;
  font-weight: 400;
  line-height: 24px;
  white-space: normal;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.home-news-compact-list {
  display: grid;
  grid-template-rows: repeat(3, minmax(0, 1fr));
  align-content: stretch;
}

.home-news-compact {
  min-height: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 120px;
  align-items: center;
  gap: 24px;
  border-top: 1px solid rgba(26, 92, 56, 0.12);
  padding: 24px 0;
}

.home-news-compact:last-child {
  border-bottom: 1px solid rgba(26, 92, 56, 0.12);
}

.home-news-compact__content {
  min-width: 0;
}

.home-news-compact__more {
  margin: 0;
  justify-self: end;
}

@media (min-width: 981px) {
  .home-news-layout {
    grid-template-columns: minmax(0, calc(54% - 77.28px)) minmax(380px, 1fr);
  }

  .home-news-compact {
    gap: 64px;
  }

  .home-page--english .section--news .news-more {
    width: 148px;
  }

  .home-page--english .home-news-compact {
    grid-template-columns: minmax(0, 1fr) 148px;
  }

  html[lang='en'] .home-page--english .home-news-compact__content > p {
    -webkit-line-clamp: 3;
  }
}

@media (hover: hover) and (pointer: fine) and (min-width: 761px) {
  .home-news-featured__content,
  .home-news-compact__content {
    transition: transform 260ms cubic-bezier(0.22, 1, 0.36, 1);
  }

  .home-news-featured:hover .home-news-featured__content,
  .home-news-featured:focus-within .home-news-featured__content,
  .home-news-compact:hover .home-news-compact__content,
  .home-news-compact:focus-within .home-news-compact__content {
    transform: translateX(20px);
  }

  .home-news-featured:hover h3 a,
  .home-news-featured:focus-within h3 a,
  .home-news-compact:hover h3 a,
  .home-news-compact:focus-within h3 a {
    color: #008d47;
  }
}

@media (prefers-reduced-motion: reduce) {
  .product-card,
  .home-news-featured__content,
  .home-news-compact__content,
  .home-contact-cta__action > span {
    transition: none;
    transform: none;
  }
}

.home-contact-cta {
  height: 300px;
  position: relative;
  overflow: hidden;
  isolation: isolate;
  background-color: #17a54e;
}

.home-contact-cta__background {
  position: absolute;
  z-index: 0;
  inset: 0;
  display: block;
  pointer-events: none;
}

.home-contact-cta__background img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.home-contact-cta__inner {
  position: relative;
  z-index: 1;
  width: min(1400px, calc(100% - 48px));
  height: 100%;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 80px;
  margin: 0 auto;
}

.home-contact-cta__copy {
  max-width: 820px;
}

.home-contact-cta__copy h2 {
  margin: 0;
  color: #ffffff;
  font-size: 48px;
  font-weight: 700;
  line-height: 62px;
  letter-spacing: 0;
}

.home-contact-cta__copy > p {
  max-width: 760px;
  margin: 24px 0 0;
  color: #ffffff;
  font-size: 18px;
  font-weight: 400;
  line-height: 32px;
}

.home-contact-cta__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 16px;
}

.home-contact-cta__action {
  width: 148px;
  height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border-radius: var(--button-radius);
  background: #ffffff;
  color: #000000;
  font-size: 16px;
  font-weight: 700;
  line-height: 24px;
  transition: background 160ms ease, color 160ms ease;
}

.home-contact-cta__action:hover,
.home-contact-cta__action:focus-visible {
  background: #000000;
  color: #ffffff;
  outline: 0;
}

.privacy-policy-page {
  background: #ffffff;
}

.privacy-policy-hero {
  background-color: #071a2a;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.privacy-policy-content {
  background: #ffffff;
}

.privacy-policy-content__inner {
  width: min(1400px, calc(100% - 48px));
  margin: 0 auto;
  padding: 88px 0 120px;
}

.privacy-policy-document-header,
.privacy-policy-document {
  width: min(1040px, 100%);
  margin-inline: auto;
}

.privacy-policy-document-header {
  padding-bottom: 42px;
  border-bottom: 1px solid #dddddd;
  text-align: center;
}

.privacy-policy-document-header h2 {
  margin: 0;
  color: #111111;
  font-size: 36px;
  font-weight: 700;
  line-height: 48px;
}

.privacy-policy-document-header__meta {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px 28px;
  margin: 16px 0 0;
  color: #777777;
  font-family: var(--font-mono);
  font-size: 14px;
  font-weight: 400;
  line-height: 24px;
}

.privacy-policy-document {
  padding-top: 48px;
  color: #333333;
  font-size: 16px;
  font-weight: 400;
  line-height: 30px;
}

.privacy-policy-document p,
.privacy-policy-document ol {
  margin: 18px 0 0;
}

.privacy-policy-document strong {
  color: #111111;
  font-weight: 700;
}

.privacy-policy-document a {
  color: #333333;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

.privacy-policy-introduction > :first-child,
.privacy-policy-section > :first-child {
  margin-top: 0;
}

.privacy-policy-notice {
  padding: 22px 24px;
  border-left: 3px solid #666666;
  border-radius: 0 8px 8px 0;
  background: #f5f5f5;
  color: #111111;
  font-weight: 700;
}

.privacy-policy-index {
  margin-top: 40px;
  padding: 30px 32px;
  border: 1px solid #dddddd;
  border-radius: 12px;
  background: #f7f7f7;
}

.privacy-policy-index h2 {
  margin: 0;
  color: #111111;
  font-size: 22px;
  font-weight: 700;
  line-height: 32px;
}

.privacy-policy-index ol {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 28px;
  padding: 0;
  list-style: none;
}

.privacy-policy-index a {
  color: #666666;
  text-decoration: none;
  transition: color 160ms ease;
}

.privacy-policy-index a:hover,
.privacy-policy-index a:focus-visible {
  color: #000000;
  outline: none;
}

.privacy-policy-section {
  scroll-margin-top: 112px;
  margin-top: 64px;
}

.privacy-policy-section h2 {
  margin: 0;
  padding-bottom: 18px;
  border-bottom: 1px solid #dddddd;
  color: #111111;
  font-size: 26px;
  font-weight: 700;
  line-height: 38px;
}

.privacy-policy-section h3 {
  margin: 30px 0 0;
  color: #111111;
  font-size: 18px;
  font-weight: 700;
  line-height: 30px;
}

.privacy-policy-section > ol,
.privacy-policy-sublist {
  padding-left: 28px;
}

.privacy-policy-section li + li {
  margin-top: 10px;
}

.privacy-policy-sublist {
  list-style: none;
  counter-reset: privacy-sublist;
}

.privacy-policy-sublist > li {
  counter-increment: privacy-sublist;
}

.privacy-policy-sublist > li::before {
  content: '(' counter(privacy-sublist) ') ';
  margin-left: -28px;
}

.privacy-policy-table-wrap {
  max-width: 100%;
  margin-top: 24px;
  overflow: hidden;
  border: 1px solid #dddddd;
  border-radius: 8px;
  background: #ffffff;
}

.privacy-policy-table-wrap:focus-visible {
  outline: 2px solid #666666;
  outline-offset: 3px;
}

.privacy-policy-table-wrap table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}

.privacy-policy-table-wrap th,
.privacy-policy-table-wrap td {
  padding: 16px 18px;
  border-right: 1px solid #dddddd;
  border-bottom: 1px solid #dddddd;
  text-align: left;
  vertical-align: top;
}

.privacy-policy-table-wrap th:last-child,
.privacy-policy-table-wrap td:last-child {
  border-right: 0;
}

.privacy-policy-table-wrap tbody tr:last-child td {
  border-bottom: 0;
}

.privacy-policy-table-wrap th {
  background: #f2f2f2;
  color: #111111;
  font-weight: 700;
}

.privacy-policy-table-wrap td a {
  overflow-wrap: anywhere;
  word-break: break-word;
}

.privacy-policy-table-wrap th:nth-child(1) {
  width: 14%;
}

.privacy-policy-table-wrap th:nth-child(2) {
  width: 20%;
}

.privacy-policy-table-wrap th:nth-child(3) {
  width: 28%;
}

.privacy-policy-table-wrap th:nth-child(4) {
  width: 14%;
}

.privacy-policy-table-wrap th:nth-child(5) {
  width: 24%;
}

@media (max-width: 720px) {
  .home-page .home-page-reveal.section-reveal:not(.section-reveal--in-view):not(.motion-session-played) {
    transform: translate3d(0, 18px, 0);
  }

  .privacy-policy-content__inner {
    width: min(100% - 40px, 1400px);
    padding: 56px 0 80px;
  }

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

  .privacy-policy-table-wrap table {
    min-width: 680px;
  }

  .privacy-policy-document-header {
    padding-bottom: 32px;
  }

  .privacy-policy-document-header h2 {
    font-size: 30px;
    line-height: 40px;
  }

  .privacy-policy-document {
    padding-top: 36px;
    font-size: 15px;
    line-height: 28px;
  }

  .privacy-policy-notice,
  .privacy-policy-index {
    padding: 20px;
  }

  .privacy-policy-index ol {
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .privacy-policy-section {
    margin-top: 48px;
  }

  .privacy-policy-section h2 {
    font-size: 22px;
    line-height: 34px;
  }
}

.news-page {
  background: #ffffff;
}

.news-hero {
  background: #0c1a12;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.news-kicker {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  color: var(--banner-kicker-color);
  font-family: var(--font-mono);
  font-size: 14px;
  font-weight: 700;
  line-height: 18px;
  letter-spacing: 0;
}

.news-kicker span {
  width: 22px;
  height: 1px;
  background: currentColor;
}

.news-hero h1 {
  margin: 12px 0 0;
  color: #ffffff;
  font-size: 40px;
  font-weight: 700;
  line-height: 51px;
  letter-spacing: 4px;
}

.news-hero__inner > p:last-child {
  width: 544px;
  max-width: 100%;
  margin: 20px 0 0;
  color: rgba(255, 255, 255, 0.5);
  font-size: 16px;
  font-weight: 400;
  line-height: 26px;
  letter-spacing: 0;
}

.news-content {
  background: #ffffff;
}

.news-content__inner {
  width: min(1400px, calc(100% - 48px));
  margin: 0 auto;
  padding: var(--content-section-padding-top) 0 var(--content-section-padding-bottom);
  padding-top: var(--content-section-edge-padding-top);
  padding-bottom: var(--content-section-edge-padding-bottom);
}

.news-empty {
  min-height: 240px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-bottom: 1px solid #d9d9d9;
  color: #5f6f7b;
  font-size: 18px;
  font-weight: 400;
  line-height: 28px;
  text-align: center;
}

.news-featured {
  min-height: 235px;
  display: grid;
  grid-template-columns: 375px minmax(0, 1fr);
  gap: 30px;
  border-bottom: 1px solid #d9d9d9;
  padding-bottom: 24px;
}

.news-featured__media,
.news-list-item__media {
  overflow: hidden;
  border-radius: var(--button-radius);
  background: rgba(1, 25, 13, 0.08);
}

.news-featured__media {
  width: 375px;
  height: 210px;
}

.news-featured__media img,
.news-list-item__media img {
  width: var(--news-cover-width, 100%);
  height: var(--news-cover-height, 100%);
  display: block;
  object-fit: cover;
  object-position: var(--news-cover-position, center center);
  transform: translate3d(var(--news-cover-offset-x, 0), var(--news-cover-offset-y, 0), 0) scale(1);
}

.news-cover--trim-top-edge {
  --news-cover-width: calc(100% + 2px);
  --news-cover-height: calc(100% + 2px);
  --news-cover-offset-x: -1px;
  --news-cover-offset-y: -1px;
}

.news-cover--focus-top {
  --news-cover-position: center -20px;
}

.news-cover--shift-up-20 {
  --news-cover-height: calc(100% + 40px);
  --news-cover-offset-y: -20px;
}

.news-cover--shift-down-100 {
  --news-cover-position: center calc(50% + 100px);
}

.news-cover--align-top {
  --news-cover-position: center top;
}

.news-cover--shift-down-150 {
  --news-cover-position: center calc(50% + 150px);
}

.news-cover--shift-down-130 {
  --news-cover-position: center calc(50% + 130px);
}

.news-featured__body {
  min-width: 0;
  padding-top: 3px;
}

.news-meta {
  min-height: 26px;
  display: flex;
  align-items: center;
  gap: 12px;
}

.news-meta time,
.news-list-item__body time {
  color: #a6aeba;
  font-family: var(--font-mono);
  font-size: 18px;
  font-weight: 700;
  line-height: 26px;
  letter-spacing: 0;
}

.news-meta span {
  width: 68px;
  height: 26px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 13px;
  background: rgba(0, 141, 71, 0.1);
  color: #008d47;
  font-size: 14px;
  font-weight: 700;
  line-height: 18px;
}

.news-featured h2,
.news-list-item__body h2 {
  margin: 12px 0 0;
  color: #000000;
  font-size: 20px;
  font-weight: 700;
  line-height: 28px;
  letter-spacing: 0;
}

.news-featured h2 a,
.news-list-item__body h2 a {
  color: inherit;
  transition: color 160ms ease;
}

.news-featured h2 a:hover,
.news-featured h2 a:focus-visible,
.news-list-item__body h2 a:hover,
.news-list-item__body h2 a:focus-visible {
  color: #008d47;
  outline: 0;
}

.news-featured:hover h2 a,
.news-featured:focus-within h2 a,
.news-list-item:hover h2 a,
.news-list-item:focus-within h2 a {
  color: #008d47;
}

.news-featured__body > p,
.news-list-item__body > p {
  margin: 12px 0 0;
  color: #a6aeba;
  font-size: 16px;
  font-weight: 400;
  line-height: 26px;
  letter-spacing: 0;
  white-space: pre-line;
}

.news-featured__body > p {
  max-width: 850px;
}

html[lang='en'] .news-featured__body > p {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  white-space: normal;
}

.news-more {
  width: 130px;
  height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  border-radius: var(--button-radius);
  background: #000000;
  color: #ffffff;
  font-size: 16px;
  font-weight: 700;
  line-height: 20px;
  letter-spacing: 0;
  transition: background 160ms ease;
}

.news-more:hover,
.news-more:focus-visible {
  background: #008d47;
  color: #ffffff;
  outline: 0;
}

.news-featured .news-more {
  margin-top: 22px;
}

.news-reveal {
  opacity: 0;
  transform: translate3d(0, 38px, 0);
  transition:
    opacity 800ms ease var(--news-reveal-delay, 0ms),
    transform 800ms ease var(--news-reveal-delay, 0ms);
  will-change: opacity, transform;
}

.news-reveal--in-view {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}

.news-page-list {
  display: grid;
}

.news-page-list--flush .news-list-item:first-child {
  padding-top: 0;
}

.news-list-item {
  min-height: 217px;
  display: grid;
  grid-template-columns: 300px minmax(0, 1fr) 120px;
  align-items: start;
  gap: 30px;
  border-bottom: 1px solid #d9d9d9;
  padding: 24px 10px;
}

.news-list-item__media {
  width: 300px;
  height: 168px;
}

.news-list-item__body {
  min-width: 0;
  height: 168px;
  padding: 6px 0;
}

.news-list-item__body time {
  display: block;
}

.news-list-item__body h2 {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.news-list-item__body > p {
  max-width: 770px;
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

.news-list-item__more {
  justify-self: end;
  margin-top: 64px;
}

@media (hover: hover) and (pointer: fine) and (min-width: 761px) {
  .news-featured > .news-featured__media,
  .news-featured > .news-featured__body,
  .news-list-item > .news-list-item__media,
  .news-list-item > .news-list-item__body,
  .news-list-item > .news-list-item__more {
    transition: transform 260ms cubic-bezier(0.22, 1, 0.36, 1);
  }

  .news-featured:hover > .news-featured__media,
  .news-featured:hover > .news-featured__body,
  .news-list-item:hover > .news-list-item__media,
  .news-list-item:hover > .news-list-item__body,
  .news-list-item:hover > .news-list-item__more {
    transform: translateX(20px);
  }
}

.news-pagination {
  min-height: 36px;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 24px;
  margin-top: 30px;
  color: #a6aeba;
  font-size: 16px;
  font-weight: 400;
  line-height: 20px;
}

.news-pagination p {
  margin: 0;
}

.news-pagination p:last-child {
  justify-self: end;
}

.news-pagination nav {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.news-pagination button {
  width: 36px;
  height: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 1px solid #d9d9d9;
  border-radius: var(--button-radius);
  background: #ffffff;
  color: #000000;
  font-family: var(--font-mono);
  font-size: 16px;
  font-weight: 400;
  line-height: 20px;
  transition: border-color 160ms ease, color 160ms ease, background 160ms ease;
}

.news-pagination__number {
  font-family: var(--font-number);
}

.news-pagination .news-pagination__arrow {
  font-size: 0;
  line-height: 1;
}

.news-pagination__arrow-symbol {
  position: relative;
  top: -2px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: inherit;
  font-size: 20px;
  font-weight: 400;
  line-height: 1;
}

.news-pagination button:hover,
.news-pagination button:focus-visible {
  border-color: #008d47;
  color: #008d47;
  outline: 0;
}

.news-pagination button:disabled {
  cursor: not-allowed;
  border-color: #e8e8e8;
  color: rgba(1, 25, 13, 0.24);
}

.news-pagination button.news-pagination__page--active,
.news-pagination button.news-pagination__page--active:hover,
.news-pagination button.news-pagination__page--active:focus-visible {
  border-color: #008d47;
  background: #008d47;
  color: #ffffff;
}

.news-detail-page {
  background: #ffffff;
}

.news-detail-breadcrumb {
  height: 68px;
  margin-top: 20px;
  background: #ffffff;
}

.news-detail-breadcrumb__inner {
  width: min(1400px, calc(100% - 48px));
  height: 68px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  gap: 10px;
  overflow: hidden;
  white-space: nowrap;
}

.news-detail-breadcrumb__inner a,
.news-detail-breadcrumb__inner button,
.news-detail-breadcrumb__inner span {
  flex: 0 0 auto;
  color: #b3b3b3;
  font-size: 16px;
  font-weight: 400;
  line-height: 20px;
  letter-spacing: 0;
}

.news-detail-breadcrumb__inner a,
.news-detail-breadcrumb__inner button {
  appearance: none;
  -webkit-appearance: none;
  border: 0;
  background: transparent;
  padding: 0;
  font-family: inherit;
  cursor: pointer;
  transition: color 160ms ease;
}

.news-detail-breadcrumb__inner a:hover,
.news-detail-breadcrumb__inner a:focus-visible,
.news-detail-breadcrumb__inner button:hover,
.news-detail-breadcrumb__inner button:focus-visible {
  color: #008d47;
  outline: 0;
}

.news-detail-breadcrumb__inner span[aria-current="page"] {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  color: #000000;
  font-weight: 700;
  text-overflow: ellipsis;
}

.news-detail-breadcrumb__separator {
  position: relative;
  width: 10px;
  height: 10px;
}

.news-detail-breadcrumb__separator::before {
  position: absolute;
  top: 2px;
  left: 1px;
  width: 6px;
  height: 6px;
  content: "";
  border-top: 1.5px solid currentColor;
  border-right: 1.5px solid currentColor;
  transform: rotate(45deg);
}

.news-detail-content {
  background: #ffffff;
}

.news-detail-content__inner {
  width: min(766px, calc(100% - 80px));
  margin: 0 auto;
  padding: 0;
}

.news-detail-article {
  display: block;
}

.news-detail-article:not(.news-detail-article--with-pager) {
  padding-bottom: 80px;
}

.news-detail-article__header {
  display: block;
  margin-top: 20px;
}

.news-detail-article__header h1,
.news-detail-article--empty h2 {
  margin: 0;
  color: #000000;
  font-size: 24px;
  font-weight: 700;
  line-height: 30px;
  letter-spacing: 0;
}

.news-detail-article__meta {
  display: flex;
  align-items: flex-start;
  gap: 20px;
  margin: 12px 0 0;
}

.news-detail-article__meta time {
  color: #a6aeba;
  font-family: var(--font-number);
  font-size: 18px;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: 0;
}

.news-detail-article__meta span {
  color: #a6aeba;
  font-size: 18px;
  font-weight: 400;
  line-height: 23px;
  letter-spacing: 0;
}

.news-detail-figure {
  overflow: hidden;
  margin: 0;
  border-radius: 10px;
  background: rgba(1, 25, 13, 0.08);
}

.news-detail-figure img {
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}

.news-detail-article__body {
  display: block;
  width: min(700px, 100%);
  margin: 29px auto 0;
}

.news-detail-article__body p,
.news-detail-article--empty p {
  margin: 0;
  color: #000000;
  font-size: 16px;
  font-weight: 400;
  line-height: 32px;
  letter-spacing: 1px;
}

.news-detail-article__body p,
.news-detail-rich-list li {
  hyphens: none;
  line-break: strict;
  overflow-wrap: break-word;
  text-align: justify;
  text-align-last: left;
  text-justify: inter-character;
  word-break: normal;
}

.news-detail-figure + p,
.news-detail-article__body > p + p {
  margin-top: 18px;
}

.news-detail-article-image {
  overflow: hidden;
  margin: 0;
  border-radius: 8px;
  background: transparent;
}

.news-detail-article-image img {
  display: block;
  width: 100%;
  height: auto;
}

.news-detail-feature-title {
  width: max-content;
  max-width: 100%;
  display: grid;
  grid-template-columns: 23px max-content 23px;
  grid-template-rows: max-content;
  column-gap: 20px;
  align-items: center;
  justify-content: center;
  margin: 30px auto 0;
}

.news-detail-feature-title strong {
  grid-column: 2;
  grid-row: 1;
  width: max-content;
  max-width: none;
  align-self: center;
  color: #000000;
  font-size: 20px;
  font-weight: 700;
  line-height: 28px;
  letter-spacing: 0;
  text-align: center;
  overflow-wrap: normal;
  white-space: pre;
  word-break: keep-all;
}

.news-detail-feature-title__icon {
  grid-row: 1;
  width: 23px;
  height: 23px;
  align-self: center;
  display: block;
}

.news-detail-feature-title__icon--left {
  grid-column: 1;
}

.news-detail-feature-title__icon--right {
  grid-column: 3;
}

.news-detail-section-block {
  margin-top: 14px;
}

.news-detail-feature-title + .news-detail-section-block {
  margin-top: 16px;
}

.news-detail-section-block + .news-detail-section-block {
  margin-top: 28px;
}

.news-detail-section-block:has(.news-detail-block-media) + .news-detail-section-block {
  margin-top: 28px;
}

.news-detail-feature-group + .news-detail-feature-group,
.news-detail-feature-group + .news-detail-feature-title,
.news-detail-feature-title + .news-detail-feature-title,
.news-detail-section-block + .news-detail-feature-title,
.news-detail-placeholder-media + .news-detail-feature-title,
.news-detail-block-media + .news-detail-feature-title {
  margin-top: 30px;
}

.news-detail-section-block h2 {
  margin: 0 0 4px;
  color: #3ac947;
  font-size: 18px;
  font-weight: 700;
  line-height: 28px;
  letter-spacing: 1.5px;
}

.news-detail-section-block p {
  font-size: 16px;
  line-height: 32px;
  letter-spacing: 1px;
  white-space: pre-line;
}

.news-detail-section-block p + p {
  margin-top: 18px;
}

.news-detail-chapter-divider {
  width: min(700px, 100%);
  height: 17px;
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 22px auto 0;
}

.news-detail-chapter-divider::before {
  content: "";
  min-width: 0;
  height: 1px;
  flex: 1 1 auto;
  background: repeating-linear-gradient(
    to right,
    #3ac947 0 6px,
    transparent 6px 12px
  );
}

.news-detail-chapter-divider img {
  display: block;
  width: 42px;
  height: 17px;
  flex: 0 0 42px;
}

.news-detail-chapter-divider + .news-detail-feature-group,
.news-detail-chapter-divider + .news-detail-feature-title {
  margin-top: 30px;
}

.news-detail-section-block strong,
.news-detail-article__body > p strong,
.news-detail-rich-list strong {
  font-weight: 700;
}

.news-detail-rich-list {
  margin: 0;
  padding-left: 0;
  color: #000000;
  font-size: 16px;
  font-weight: 400;
  line-height: 32px;
  letter-spacing: 1px;
  list-style: none;
}

.news-detail-rich-list li {
  position: relative;
  padding-left: 14px;
}

.news-detail-rich-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 14px;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: #000000;
}

.news-detail-rich-list + .news-detail-rich-list,
.news-detail-rich-list + p,
.news-detail-article__body > p + .news-detail-rich-list,
.news-detail-section-block p + .news-detail-rich-list {
  margin-top: 18px;
}

.news-detail-placeholder-media {
  width: 660px;
  max-width: 100%;
  margin: 20px auto 0;
}

.news-detail-placeholder-media span {
  display: block;
  height: 265px;
  border-radius: 8px;
  background: #d9d9d9;
}

.news-detail-placeholder-media figcaption {
  margin-top: 10px;
  color: #aea9a9;
  font-size: 14px;
  font-weight: 400;
  line-height: 18px;
  letter-spacing: 0;
  text-align: center;
}

.news-detail-end-mark {
  min-height: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 30px;
  margin-top: 30px;
}

.news-detail-end-mark img {
  width: 23px;
  height: 23px;
  flex: 0 0 23px;
}

.news-detail-end-mark strong {
  color: #000000;
  font-size: 20px;
  font-weight: 700;
  line-height: 28px;
  letter-spacing: 0;
}

.news-detail-end-mark + .news-detail-article-image {
  margin-top: 20px;
}

.news-detail-article__body--html {
  display: block;
  width: 100%;
}

.news-detail-article__body--html img {
  max-width: 100%;
  height: auto;
}

.news-detail-article__body--html p {
  margin: revert;
}

.wechat-article-body {
  width: 100%;
  color: #1f1f1f;
  font-size: 14px;
  line-height: 2;
  letter-spacing: 1.5px;
}

.wechat-article-body * {
  max-width: 100%;
  box-sizing: border-box;
}

.wechat-article-body p,
.wechat-article-body section,
.wechat-article-body div {
  margin-top: 0;
  margin-bottom: 10px;
}

.wechat-article-body img {
  display: block;
  width: auto;
  max-width: 100%;
  height: auto;
  margin: 18px auto;
  border-radius: 8px;
}

.wechat-article-body a {
  color: #008d47;
  text-decoration: none;
}

.wechat-article-body blockquote {
  margin: 18px 0;
  padding: 12px 16px;
  border-left: 3px solid #008d47;
  background: #f4f4f4;
}

.wechat-article-body .news-detail-feature-title {
  margin: 30px auto 20px;
}

.wechat-article-body .news-detail-feature-title__icon {
  width: 23px;
  height: 23px;
  margin: 0;
  border-radius: 0;
}

.wechat-article-body .news-detail-feature-title strong {
  margin: 0;
}

.news-detail-block-media {
  width: var(--news-detail-media-width, 660px);
  max-width: 100%;
  display: grid;
  gap: 10px;
  margin: 20px auto 0;
  overflow: hidden;
  border-radius: 8px;
}

.news-detail-block-media img,
.news-detail-block-media video {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 8px;
  background: transparent;
  object-position: var(--news-detail-media-position, center center);
}

.news-detail-block-media--ratio-16-9 img {
  aspect-ratio: 16 / 9;
  object-fit: cover;
}

.news-detail-block-media--ratio-4-3 img {
  aspect-ratio: 4 / 3;
  object-fit: cover;
}

.news-detail-block-media--ratio-1-1 img {
  aspect-ratio: 1 / 1;
  object-fit: cover;
}

.news-detail-block-media--shift-up-20 {
  --news-detail-media-position: center -20px;
}

.news-detail-block-media figcaption {
  color: #7f8d87;
  font-size: 14px;
  line-height: 22px;
  text-align: center;
}

.news-detail-block-media + p {
  margin-top: 28px;
}

.news-detail-pager {
  width: 1000px;
  max-width: calc(100vw - 48px);
  min-height: 76px;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  margin: 50px 0 80px 50%;
  border-top: 1px solid #d9d9d9;
  padding-top: 30px;
  transform: translateX(-50%);
}

.news-detail-pager__item {
  width: 250px;
  min-height: 76px;
  display: inline-flex;
  align-items: center;
  gap: 18px;
  color: #999999;
}

.news-detail-pager__item--next {
  justify-content: flex-end;
  text-align: right;
}

.news-detail-pager__icon {
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 1px solid #d9d9d9;
  border-radius: var(--button-radius);
  background: #ffffff;
  color: #000000;
  font-family: var(--font-mono);
  font-size: 0;
  line-height: 1;
  transition: border-color 160ms ease, color 160ms ease, background 160ms ease;
}

.news-detail-pager__arrow-symbol {
  position: relative;
  top: -2px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: inherit;
  font-size: 20px;
  font-weight: 400;
  line-height: 1;
}

.news-detail-pager__text {
  display: block;
  width: 196px;
}

.news-detail-pager__text small,
.news-detail-pager__text strong {
  display: block;
  font-weight: 400;
  letter-spacing: 0;
}

.news-detail-pager__text small {
  font-size: 16px;
  line-height: 20px;
}

.news-detail-pager__text strong {
  overflow: hidden;
  margin-top: 8px;
  font-size: 14px;
  line-height: 24px;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.news-detail-pager__item:hover,
.news-detail-pager__item:focus-visible {
  color: #008d47;
  outline: 0;
}

.news-detail-pager__item:hover .news-detail-pager__icon,
.news-detail-pager__item:focus-visible .news-detail-pager__icon {
  border-color: #008d47;
  color: #008d47;
}

.news-detail-article--empty {
  width: min(700px, 100%);
  margin: 0 auto;
  padding: 80px 0;
}

.news-detail-motion--out-view {
  opacity: 0;
  transform: translate3d(0, 24px, 0) scale(0.985);
}

.news-detail-end-mark.news-detail-motion--out-view,
.news-detail-feature-group.news-detail-motion--out-view,
.news-detail-article-image[data-motion-key="article-summary"].news-detail-motion--out-view {
  opacity: 1;
  transform: translate3d(0, 0, 0) scale(1);
}

.news-detail-motion--in-view {
  opacity: 1;
  transform: translate3d(0, 0, 0) scale(1);
  transition:
    opacity 760ms cubic-bezier(0.22, 1, 0.36, 1) var(--news-detail-motion-delay, 0ms),
    transform 820ms cubic-bezier(0.16, 1, 0.3, 1) var(--news-detail-motion-delay, 0ms);
  will-change: opacity, transform;
}

.news-detail-motion--instant {
  transition: none;
}

.placeholder-page {
  background: #ffffff;
}

.placeholder-hero {
  min-height: clamp(300px, 33.33svh, 720px);
  background: #0c1a12;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.placeholder-hero__inner {
  width: min(1400px, calc(100% - 48px));
  margin: 0 auto;
  padding-top: clamp(78px, 8.61svh, 186px);
}

.placeholder-kicker {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  color: var(--banner-kicker-color);
  font-family: var(--font-mono);
  font-size: 14px;
  font-weight: 700;
  line-height: 18px;
}

.placeholder-kicker span {
  width: 22px;
  height: 1px;
  background: currentColor;
}

.placeholder-hero h1 {
  margin: 12px 0 0;
  color: #ffffff;
  font-size: 40px;
  font-weight: 700;
  line-height: 51px;
  letter-spacing: 0;
}

.placeholder-hero__inner > p:last-child {
  width: 544px;
  max-width: 100%;
  margin: 20px 0 0;
  color: rgba(255, 255, 255, 0.72);
  font-size: 16px;
  font-weight: 400;
  line-height: 26px;
}

.placeholder-content {
  background: #ffffff;
  padding: 80px 0;
}

.placeholder-content__inner {
  width: min(1400px, calc(100% - 48px));
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}

.placeholder-card {
  min-height: 180px;
  border: 1px solid rgba(1, 25, 13, 0.12);
  border-radius: var(--button-radius);
  background: #ffffff;
  padding: 28px 30px;
}

.placeholder-card p {
  margin: 0;
  color: #008d47;
  font-family: var(--font-number);
  font-size: 16px;
  font-weight: 700;
  line-height: 20px;
}

.placeholder-card h2 {
  margin: 28px 0 0;
  color: #000000;
  font-size: 20px;
  font-weight: 700;
  line-height: 25px;
}

.placeholder-card span {
  display: block;
  margin-top: 14px;
  color: rgba(1, 25, 13, 0.58);
  font-size: 14px;
  font-weight: 400;
  line-height: 24px;
}

.products-page {
  scroll-margin-top: 80px;
  background: #ffffff;
}

.products-hero {
  background: #0c1a12;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.products-kicker {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  color: var(--banner-kicker-color);
  font-family: var(--font-mono);
  font-size: 14px;
  font-weight: 700;
  line-height: 18px;
  letter-spacing: 0;
}

.products-kicker span {
  width: 22px;
  height: 1px;
  background: currentColor;
}

.products-page .products-kicker {
  color: var(--banner-kicker-color);
}

.products-hero h1 {
  margin: 12px 0 0;
  color: #ffffff;
  font-size: 40px;
  font-weight: 700;
  line-height: 51px;
  letter-spacing: 4px;
}

@media (min-width: 981px) {
  .banner-hero--english.products-hero .products-hero__inner h1 {
    max-width: none;
    white-space: nowrap;
    line-height: 51px;
  }

  .banner-hero--english.products-hero .products-hero__inner > p:last-child {
    width: 760px;
    line-height: 26px;
  }
}

.products-hero__inner > p:last-child {
  width: 544px;
  max-width: 100%;
  margin: 20px 0 0;
  color: rgba(255, 255, 255, 0.5);
  font-size: 16px;
  font-weight: 400;
  line-height: 26px;
  letter-spacing: 0;
}

@media (min-width: 981px) {
  .product-intro-hero[data-product-slug='testing-service']
    .products-hero__inner > p:last-child {
    width: 840px;
  }
}

.product-filter {
  height: var(--product-filter-height);
  overflow: visible;
}

.product-filter__bar {
  width: 100%;
  height: var(--product-filter-height);
  background: #f5f5f5;
  border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}

.product-filter--fixed .product-filter__bar {
  position: fixed;
  top: var(--site-header-height);
  right: 0;
  left: 0;
  z-index: 80;
}

.product-filter__scroller {
  width: min(1400px, calc(100% - 48px));
  height: var(--product-filter-height);
  margin: 0 auto;
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}

.product-filter__scroller::-webkit-scrollbar {
  display: none;
}

.product-filter__inner {
  position: relative;
  width: 100%;
  height: var(--product-filter-height);
  display: flex;
  align-items: center;
  gap: 10px;
  isolation: isolate;
}

.product-filter__indicator {
  position: absolute;
  top: 50%;
  left: 0;
  z-index: 0;
  width: 104px;
  height: 40px;
  border-radius: var(--button-radius);
  background: #008d47;
  opacity: 0;
  pointer-events: none;
  transform: translate3d(0, -50%, 0);
  transition: none;
  will-change: transform, width, height, opacity;
}

.product-filter__item {
  position: relative;
  z-index: 1;
  height: 40px;
  border: 2px solid transparent;
  border-radius: var(--button-radius);
  background: transparent;
  width: auto;
  padding: 0 20px;
  color: #000000;
  font-size: 16px;
  font-weight: 700;
  line-height: 20px;
  letter-spacing: 0;
  white-space: nowrap;
  transition: border-color 120ms ease, color 45ms linear;
}

.product-filter__item:not(.product-filter__item--active):focus-visible {
  border-color: #008d47;
  background: transparent;
  color: #000000;
  outline: 0;
}

.product-filter__item--active,
.product-filter__item--active:focus-visible {
  border-color: transparent;
  background: transparent;
  color: #ffffff;
  outline: 0;
}

.product-filter__icon {
  width: 18px;
  height: 18px;
  object-fit: contain;
}

.product-filter__search {
  position: relative;
  z-index: 1;
  width: 40px;
  height: 40px;
  margin-left: auto;
  border: 2px solid transparent;
  border-radius: var(--button-radius);
  background: transparent;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: border-color 160ms ease;
}

.product-filter__search:focus-visible {
  border-color: #008d47;
  outline: 0;
}

.product-search {
  width: 100%;
  height: 40px;
  display: flex;
  align-items: center;
  gap: 14px;
  border: 2px solid #008d47;
  border-radius: var(--button-radius);
  background: #ffffff;
  padding: 0 16px;
  animation: product-search-open 280ms cubic-bezier(0.22, 1, 0.36, 1) both;
}

.product-search__icon {
  width: 18px;
  height: 18px;
  flex: 0 0 auto;
}

.product-search__input {
  min-width: 0;
  flex: 1;
  border: 0;
  outline: 0;
  background: transparent;
  color: #000000;
  font-family: inherit;
  font-size: 16px;
  font-weight: 400;
  line-height: 20px;
}

.product-search__input::placeholder {
  color: rgba(1, 25, 13, 0.35);
}

.product-search__input::-webkit-search-cancel-button {
  appearance: none;
}

.product-search__close {
  width: 28px;
  height: 28px;
  border: 0;
  border-radius: var(--button-radius);
  background: transparent;
  color: #000000;
  font-size: 28px;
  font-weight: 400;
  line-height: 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transform: translateY(-1px);
  transition: color 160ms ease;
}

.product-search__close:focus-visible {
  color: #008d47;
  outline: 0;
}

@keyframes product-search-open {
  from {
    opacity: 0;
    transform: scaleX(0.96);
  }

  to {
    opacity: 1;
    transform: scaleX(1);
  }
}

.investor-page {
  background: #ffffff;
}

.investor-hero {
  background: #0c1a12;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.investor-kicker {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  color: var(--banner-kicker-color);
  font-family: var(--font-mono);
  font-size: 14px;
  font-weight: 700;
  line-height: 18px;
  letter-spacing: 0;
}

.investor-kicker span {
  width: 22px;
  height: 1px;
  background: currentColor;
}

.investor-hero h1 {
  margin: 12px 0 0;
  color: #ffffff;
  font-size: 40px;
  font-weight: 700;
  line-height: 51px;
  letter-spacing: 4px;
}

.investor-hero__inner > p:last-child {
  width: 620px;
  max-width: 100%;
  margin: 20px 0 0;
  color: rgba(255, 255, 255, 0.5);
  font-size: 16px;
  font-weight: 400;
  line-height: 26px;
  letter-spacing: 0;
}

@media (min-width: 981px) {
  .banner-hero--english.investor-hero .investor-hero__inner > p:last-child {
    width: 760px;
  }
}

.investor-content {
  background: #ffffff;
}

.investor-content__inner {
  width: min(1400px, calc(100% - 48px));
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 820px) minmax(360px, 1fr);
  gap: 32px;
  align-items: start;
  padding: var(--content-section-padding-top) 0 var(--content-section-padding-bottom);
  padding-top: var(--content-section-edge-padding-top);
  padding-bottom: var(--content-section-edge-padding-bottom);
}

.investor-side {
  display: grid;
  gap: 32px;
}

.investor-panel {
  overflow: hidden;
  border: 1px solid rgba(1, 25, 13, 0.18);
  border-radius: 4px;
  background: #ffffff;
}

.investor-panel__header {
  height: 72px;
  display: flex;
  align-items: center;
  gap: 14px;
  border-bottom: 1px solid rgba(1, 25, 13, 0.12);
  padding: 0 24px;
}

.investor-panel__header h2 {
  margin: 0;
  color: #000000;
  font-size: 20px;
  font-weight: 700;
  line-height: 25px;
  letter-spacing: 0;
}

.investor-panel__header span {
  color: rgba(1, 25, 13, 0.3);
  font-family: var(--font-mono);
  font-size: 16px;
  font-weight: 700;
  line-height: 21px;
  white-space: nowrap;
}

.investor-frame {
  display: block;
  width: 100%;
  border: 0;
  background: #ffffff;
}

.investor-frame--announcements {
  height: 505px;
}

.investor-frame--quotes {
  height: 198px;
}

.investor-frame--contact {
  height: 240px;
}

.investor-mock {
  background: #ffffff;
}

.investor-mock--announcements {
  min-height: 505px;
  display: grid;
  grid-template-rows: auto 1fr auto;
  border-top: 0;
}

.investor-mock-tabs {
  display: flex;
  border-bottom: 1px solid #dcdcdc;
}

.investor-mock-tab {
  min-width: 158px;
  height: 54px;
  border: 0;
  border-right: 1px solid #dddddd;
  background: #ffffff;
  color: #9ba1a6;
  font-size: 17px;
  font-weight: 700;
  line-height: 54px;
  cursor: default;
}

.investor-mock-tab--active {
  border-bottom: 2px solid #f3422e;
  color: #9ba1a6;
}

.investor-mock-list {
  padding: 36px 34px 10px;
}

.investor-mock-announcement {
  min-height: 38px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 110px;
  align-items: center;
  gap: 20px;
  border-bottom: 1px solid #d0d0d0;
  color: #4a4a4a;
  transition: color 160ms ease;
}

.investor-mock-announcement:hover,
.investor-mock-announcement:focus-visible {
  color: #d40000;
  outline: 0;
}

.investor-mock-announcement span {
  position: relative;
  overflow: hidden;
  padding-left: 20px;
  font-size: 15px;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: 0;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.investor-mock-announcement span::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 8px;
  height: 8px;
  background: #d40000;
  transform: translateY(-50%);
}

.investor-mock-announcement time {
  color: #9b9b9b;
  font-family: var(--font-mono);
  font-size: 15px;
  font-weight: 400;
  line-height: 20px;
  text-align: right;
}

.investor-mock-pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0;
  min-height: 58px;
  color: #9b9b9b;
  font-size: 13px;
}

.investor-mock-page {
  min-width: 32px;
  height: 32px;
  border: 1px solid #d0d0d0;
  border-left: 0;
  background: #ffffff;
  color: #6d6d6d;
  font-family: var(--font-mono);
  font-size: 13px;
  font-weight: 400;
  line-height: 30px;
}

.investor-mock-page:first-child {
  border-left: 1px solid #d0d0d0;
}

.investor-mock-page--active {
  background: #b6b6b6;
  color: #ffffff;
}

.investor-mock-page--wide {
  min-width: 58px;
  margin-left: 12px;
  font-family: inherit;
}

.investor-mock-page--wide + .investor-mock-page--wide {
  margin-left: 0;
}

.investor-mock--quotes {
  display: grid;
  grid-template-columns: 1.15fr 0.95fr;
  min-height: 198px;
  padding: 0;
  color: #ffffff;
}

.investor-mock-price {
  display: grid;
  align-content: center;
  gap: 12px;
  min-height: 198px;
  padding: 22px 28px;
  background: #a93243;
}

.investor-mock-price span {
  color: #ffffff;
  font-size: 18px;
  font-weight: 400;
  line-height: 24px;
}

.investor-mock-price strong {
  color: #ffffff;
  font-family: var(--font-mono);
  font-size: 30px;
  font-weight: 400;
  line-height: 36px;
}

.investor-mock-price em {
  color: #ffffff;
  font-family: var(--font-mono);
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
}

.investor-mock-volume {
  display: grid;
  align-content: center;
  gap: 24px;
  min-height: 198px;
  padding: 22px 28px;
  background: #ff3e2f;
}

.investor-mock-volume p {
  margin: 0;
}

.investor-mock-volume span {
  display: block;
  margin: 0;
  color: #ffffff;
  font-size: 18px;
  font-weight: 400;
  line-height: 24px;
}

.investor-mock-volume strong {
  display: block;
  margin-top: 18px;
  color: #ffffff;
  font-family: var(--font-mono);
  font-size: 20px;
  font-weight: 400;
  line-height: 26px;
}

.investor-mock--contact {
  min-height: 240px;
  border: 1px solid #d0d0d0;
  border-top: 0;
}

.investor-mock--contact h3 {
  height: 60px;
  margin: 0;
  padding: 0 28px;
  background: #7cc8d7;
  color: #ffffff;
  font-size: 20px;
  font-weight: 700;
  line-height: 60px;
}

.investor-mock-contact-body {
  display: grid;
  gap: 16px;
  padding: 28px;
}

.investor-mock--contact p {
  display: grid;
  grid-template-columns: 76px minmax(0, 1fr);
  gap: 12px;
  margin: 0;
}

.investor-mock--contact span {
  color: #333333;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
}

.investor-mock--contact strong {
  color: #333333;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
}

.product-detail-content {
  background: #ffffff;
}

.product-detail-content__inner {
  width: min(1400px, calc(100% - 48px));
  margin: 0 auto;
  padding: var(--content-section-padding-top) 0 var(--content-section-padding-bottom);
  padding-top: var(--content-section-edge-padding-top);
  padding-bottom: var(--content-section-edge-padding-bottom);
}

.product-detail-content__inner--search-idle {
  min-height: 280px;
}

.product-search-idle {
  min-height: 160px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 14px;
  color: rgba(1, 25, 13, 0.36);
  text-align: center;
}

.product-search-idle__icon {
  width: 40px;
  height: 40px;
  border: 1px solid rgba(1, 25, 13, 0.12);
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #ffffff;
}

.product-search-idle__icon img {
  width: 18px;
  height: 18px;
  opacity: 0.36;
}

.product-search-idle p {
  margin: 0;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  letter-spacing: 0;
}

.product-detail-section {
  scroll-margin-top: 110px;
  margin: 0 0 40px;
}

.product-detail-section:last-child {
  margin-bottom: 0;
}

.product-detail-heading {
  height: 25px;
  display: flex;
  align-items: flex-start;
  margin: 0 0 28px;
}

.product-detail-heading h2 {
  margin: 0;
  color: #0d1117;
  font-size: 20px;
  font-weight: 700;
  line-height: 25px;
  letter-spacing: 0;
}

.product-detail-heading span {
  margin: 2px 0 0 14px;
  color: rgba(1, 25, 13, 0.3);
  font-family: var(--font-mono);
  font-size: 18px;
  font-weight: 700;
  line-height: 23px;
  letter-spacing: 0;
  white-space: nowrap;
}

.product-search-empty {
  margin: 0;
  color: #a6aeba;
  font-size: 16px;
  font-weight: 400;
  line-height: 22px;
}

.product-detail-grid {
  display: grid;
  grid-template-columns: repeat(4, 329px);
  gap: 28px;
}

.product-detail-card {
  width: 329px;
  height: 336px;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 4px;
  background: #ffffff;
  box-shadow: 0 0 0 rgba(1, 25, 13, 0);
  padding: 4px;
  transform-origin: center bottom;
  transition:
    transform 620ms cubic-bezier(0.16, 1, 0.3, 1),
    border-color 220ms ease,
    box-shadow 360ms ease;
  will-change: transform, box-shadow;
}

.product-detail-card--revealing {
  transition:
    border-color 220ms ease,
    box-shadow 360ms ease;
}

.product-detail-card__media {
  position: relative;
  width: min(319px, 100%);
  height: auto;
  aspect-ratio: 319 / 150;
  overflow: visible;
  border-radius: 4px;
  background: transparent;
  margin: 0 auto;
}

.product-detail-card__media img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: 100%;
  object-fit: contain;
}

.product-detail-card h3 {
  overflow: hidden;
  margin: 12px 10px 0;
  color: #000000;
  font-size: 18px;
  font-weight: 700;
  line-height: 23px;
  letter-spacing: 0;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.product-detail-card p {
  display: -webkit-box;
  overflow: hidden;
  width: 299px;
  height: 66px;
  margin: 6px 10px 0;
  color: #a6aeba;
  font-size: 14px;
  font-weight: 400;
  line-height: 22px;
  letter-spacing: 0;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

.product-detail-card__link {
  width: 130px;
  height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 16px 10px 0;
  border-radius: var(--button-radius);
  background: #000000;
  color: #ffffff;
  font-size: 14px;
  font-weight: 700;
  line-height: 18px;
  letter-spacing: 0;
  transition: background 160ms ease;
}

.product-detail-card__link:focus-visible {
  background: #008d47;
  outline: 0;
}

@media (min-width: 981px) and (hover: hover) and (pointer: fine) {
  .product-detail-card:hover,
  .product-detail-card:focus-within {
    border-color: #cccccc;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.14);
    transform: translate3d(0, -8px, 0) scale(1.006);
  }

  .product-detail-card__link:hover {
    background: #008d47;
  }

  .product-filter__item:not(.product-filter__item--active):hover {
    border-color: #008d47;
    background: transparent;
    color: #000000;
  }

  .product-filter__search:hover {
    border-color: #008d47;
  }

  .product-search__close:hover {
    color: #008d47;
  }
}

.products-page--english .product-detail-card {
  display: flex;
  flex-direction: column;
  height: auto;
  min-height: 384px;
}

.products-page--english .product-detail-card p {
  display: block;
  overflow: visible;
  height: auto;
  margin-bottom: 16px;
}

.products-page--english .product-detail-card__link {
  margin-top: auto;
  margin-bottom: 16px;
}

.products-page--english .product-detail-section--phased-array .product-detail-card {
  min-height: 0;
}

.product-intro-page {
  background: #ffffff;
}

.product-intro-content {
  background: #ffffff;
}

.product-intro-content__inner {
  width: min(1400px, calc(100% - 48px));
  margin: 0 auto;
  padding: 56px 0 88px;
}

.product-intro-back {
  appearance: none;
  -webkit-appearance: none;
  display: inline-flex;
  align-items: center;
  margin: 0 0 32px;
  border: 0;
  background: transparent;
  padding: 0;
  color: #000000;
  font-size: 16px;
  font-weight: 700;
  line-height: 22px;
  transition: color 160ms ease;
}

.product-intro-back:hover,
.product-intro-back:focus-visible {
  color: #008d47;
  outline: 0;
}

.product-intro-panel {
  border: 1px solid rgba(1, 25, 13, 0.18);
  border-radius: var(--button-radius);
  padding: 46px 48px 52px;
  background: #ffffff;
}

.product-intro-panel__eyebrow {
  display: flex;
  align-items: baseline;
  gap: 14px;
  margin: 0 0 22px;
  color: #008d47;
  font-size: 16px;
  font-weight: 700;
  line-height: 22px;
}

.product-intro-panel__eyebrow span {
  color: rgba(1, 25, 13, 0.3);
  font-family: var(--font-mono);
  font-size: 14px;
  font-weight: 700;
  line-height: 18px;
}

.product-intro-panel h2 {
  margin: 0;
  color: #000000;
  font-size: 34px;
  font-weight: 700;
  line-height: 44px;
  letter-spacing: 0;
}

.product-intro-panel > p:not(.product-intro-panel__eyebrow) {
  max-width: 820px;
  margin: 22px 0 0;
  color: #7f8a84;
  font-size: 18px;
  font-weight: 400;
  line-height: 32px;
  letter-spacing: 0;
}

.product-intro-placeholder {
  margin: 42px 0 0;
  padding: 30px 32px;
  background: #f5f6f5;
  border-radius: var(--button-radius);
}

.product-intro-placeholder h3 {
  margin: 0;
  color: #000000;
  font-size: 20px;
  font-weight: 700;
  line-height: 28px;
}

.product-intro-placeholder p {
  margin: 12px 0 0;
  color: #7f8a84;
  font-size: 16px;
  font-weight: 400;
  line-height: 28px;
}

.product-intro-related {
  margin: 56px 0 0;
}

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

.product-intro-related__item {
  min-height: 132px;
  border: 1px solid rgba(1, 25, 13, 0.18);
  border-radius: var(--button-radius);
  padding: 22px 24px;
  color: #000000;
  transition: border-color 160ms ease, color 160ms ease;
}

.product-intro-related__item strong {
  display: block;
  color: inherit;
  font-size: 18px;
  font-weight: 700;
  line-height: 24px;
}

.product-intro-related__item span {
  overflow: hidden;
  display: -webkit-box;
  margin: 10px 0 0;
  color: #a6aeba;
  font-size: 14px;
  font-weight: 400;
  line-height: 22px;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.product-intro-related__item:hover,
.product-intro-related__item:focus-visible {
  border-color: #008d47;
  color: #008d47;
  outline: 0;
}

.product-intro-hero--measurement .products-kicker {
  color: #1966c5;
}

.product-intro-hero--measurement .products-kicker span {
  background: currentColor;
}

.product-intro-hero--cae .products-kicker {
  color: var(--banner-kicker-color);
}

.product-intro-hero--cae .products-kicker span {
  background: currentColor;
}

.product-intro-hero--cae .products-hero__inner > p:last-child {
  color: rgba(255, 255, 255, 0.8);
}

.product-intro-hero--measurement .products-hero__inner > p:last-child {
  letter-spacing: 1px;
}

.product-intro-hero--calibration-sample {
  position: relative;
  min-height: 320px;
  height: auto;
  overflow: hidden;
  background: #fbfeff;
  border-bottom: 0;
}

.product-intro-hero--calibration-sample::after {
  position: absolute;
  right: auto;
  bottom: 0;
  left: 50%;
  width: 100%;
  height: 0.5px;
  content: "";
  background: #d9dddb;
  pointer-events: none;
  transform: translateX(-50%);
}

.product-intro-calibration-hero {
  width: min(1400px, calc(100% - 48px));
  min-height: 320px;
  height: auto;
  padding-top: 0;
  display: grid;
  grid-template-columns: minmax(0, 678px) minmax(0, 1fr);
  align-items: center;
  gap: clamp(40px, 5vw, 88px);
}

.product-intro-calibration-hero__copy {
  min-width: 0;
  padding-block: 48px;
}

.product-intro-calibration-hero .products-kicker {
  color: var(--banner-kicker-color);
}

.product-intro-calibration-hero .products-kicker span {
  background: currentColor;
}

.product-intro-hero--measurement .product-intro-calibration-hero .products-kicker {
  color: #1966c5;
}

.product-intro-calibration-hero h1 {
  margin: 12px 0 0;
  color: #000000;
  font-size: var(--measurement-hero-title-font-size, 40px);
  font-weight: 700;
  line-height: 1.275;
  letter-spacing: 0;
  white-space: nowrap;
}

.product-intro-calibration-hero__overview {
  margin-top: 16px;
  color: #333333;
  font-size: 16px;
  font-weight: 400;
  line-height: 30px;
  letter-spacing: 1px;
}

.product-intro-calibration-hero__overview p {
  margin: 0;
}

html[lang='en'] .product-intro-calibration-hero__overview {
  line-height: 26px;
}

.product-intro-calibration-hero__media {
  width: 100%;
  max-width: 720px;
  margin: 0;
  justify-self: center;
}

.product-intro-calibration-hero__media img {
  display: block;
  width: 74%;
  height: auto;
  margin: 0 auto;
  object-fit: contain;
}

.product-intro-hero[data-product-slug='5g-communication-ota-test-system']
  .product-intro-calibration-hero__media img {
  display: block;
  width: 42%;
}

.product-intro-hero[data-product-slug='rf-standalone-instrument']
  .product-intro-calibration-hero__media img {
  display: block;
  width: 100%;
}

.product-intro-hero[data-product-slug='radome-test-system']
  .product-intro-calibration-hero__media img {
  width: 58%;
}

.product-intro-hero[data-product-slug='far-field-rcs-scattering-test-system']
  .product-intro-calibration-hero__media img {
  width: 58%;
}

.product-intro-hero[data-product-slug='antenna-test-data-processing-software']
  .product-intro-calibration-hero__media img {
  width: 70%;
}

.product-intro-hero[data-product-slug='rcs-test-data-processing-software']
  .product-intro-calibration-hero__media img {
  width: 72%;
}

.product-intro-hero[data-product-slug='far-field-test-system']
  .product-intro-calibration-hero__media img {
  width: 48%;
}

.product-intro-hero[data-product-slug='production-line-test-chamber']
  .product-intro-calibration-hero__media img {
  width: 100%;
}

.product-intro-hero[data-product-slug='satellite-payload-general-measurement-system']
  .product-intro-calibration-hero__media img {
  width: 38%;
}

.product-intro-hero[data-product-slug='full-scale-stealth-rapid-diagnosis-system']
  .product-intro-calibration-hero__media img {
  width: 100%;
}

.product-intro-hero[data-product-slug='field-rcs-scattering-test-system']
  .product-intro-calibration-hero__media img {
  width: 66%;
}

.product-intro-hero[data-product-slug='vehicle-ota-test-system']
  .product-intro-calibration-hero__media img {
  width: 66%;
}

.product-intro-hero[data-product-slug='vehicle-millimeter-wave-radar-component-test-system']
  .product-intro-calibration-hero__media img {
  width: 90%;
}

.product-intro-hero[data-product-slug='emc-test-system']
  .product-intro-calibration-hero__media img {
  width: 84%;
  transform: translateY(20px);
}

.product-intro-hero[data-product-slug='compact-range-test-chamber']
  .product-intro-calibration-hero__media img {
  width: 100%;
}

.product-intro-hero[data-product-slug='tr-module-automation-test-system']
  .product-intro-calibration-hero__media img {
  width: 100%;
  transform: translateY(40px);
}

.product-intro-hero[data-product-slug='active-vswr-test-system']
  .product-intro-calibration-hero__media img {
  width: 86%;
}

.product-intro-hero[data-product-slug='standard-gain-antenna']
  .product-intro-calibration-hero__media img {
  width: 64%;
}

.product-intro-hero[data-product-slug='test-positioner']
  .product-intro-calibration-hero__media img {
  width: 90%;
  transform: translateY(-14px);
}

.product-intro-hero[data-product-slug='linear-slide-rail']
  .product-intro-calibration-hero__media img {
  width: 90%;
}

.product-intro-hero[data-product-slug='vacuum-multipactor-detection-system']
  .product-intro-calibration-hero__media img {
  width: 66%;
}

.product-intro-hero[data-product-slug='module-screening-temperature-aging-auto-measurement-system']
  .product-intro-calibration-hero__media img {
  width: 42%;
}

.product-intro-hero[data-product-slug='planar-near-field-production-test-chamber']
  .product-intro-calibration-hero__media img {
  transform: translateY(10px);
}

.product-intro-hero[data-product-slug='spherical-near-field-test-system']
  .product-intro-calibration-hero__media img {
  width: 34%;
}

.product-intro-hero[data-product-slug='communication-navigation-antenna-phase-center-test-system']
  .product-intro-calibration-hero__media img {
  width: 58%;
}

.product-intro-hero[data-product-slug='shielded-microwave-anechoic-chamber']
  .product-intro-calibration-hero__media img {
  width: 62%;
}

@media (max-width: 980px) {
  .product-intro-hero--calibration-sample {
    min-height: 0;
  }

  .product-intro-calibration-hero {
    min-height: 0;
    padding: 60px 0 40px;
    grid-template-columns: 1fr;
    gap: 32px;
  }

  .product-intro-calibration-hero__copy {
    padding-block: 0;
  }

}

@media (max-width: 620px) {
  .product-intro-calibration-hero h1 {
    font-size: 32px;
    white-space: normal;
  }

  html[lang='en'] .product-intro-calibration-hero__overview {
    line-height: 24px;
  }
}

.product-intro-hero--array {
  background-color: #cecc76;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.product-intro-hero--array .products-kicker {
  color: #2d332f;
}

.product-intro-hero--array .products-kicker span {
  background: currentColor;
}

.product-intro-hero--array .products-hero__inner h1 {
  color: #000000;
}

.product-intro-hero--array .products-hero__inner > p:last-child {
  width: 528px;
  color: rgba(0, 0, 0, 0.5);
  line-height: 26px;
}

.product-intro-breadcrumb-shell {
  position: relative;
  z-index: 80;
  height: var(--product-detail-nav-height);
  margin-top: 0;
}

.product-intro-breadcrumb {
  position: relative;
  height: var(--product-detail-nav-height);
  background: #ffffff;
}

.product-intro-breadcrumb-shell--fixed .product-intro-breadcrumb {
  position: fixed;
  top: var(--site-header-height);
  right: 0;
  left: 0;
  z-index: 80;
  transition: top 260ms cubic-bezier(0.22, 1, 0.36, 1);
}

.product-intro-breadcrumb::after {
  position: absolute;
  right: auto;
  bottom: 0;
  left: 50%;
  width: min(1400px, calc(100% - 48px));
  height: 0.5px;
  content: "";
  background: #d9dddb;
  pointer-events: none;
  transform: translateX(-50%);
}

.product-intro-breadcrumb-shell--calibration-sample .product-intro-breadcrumb::after {
  width: 100%;
  height: 1px;
  background: #d9dddb;
}

.product-intro-breadcrumb-shell--array .product-intro-breadcrumb::after {
  background: rgba(217, 221, 219, 0.5);
}

.product-intro-breadcrumb__inner {
  width: min(1400px, calc(100% - 48px));
  height: 100%;
  display: flex;
  align-items: center;
  gap: 32px;
  margin: 0 auto;
  white-space: nowrap;
}

.product-intro-breadcrumb__trail {
  flex: 1 1 auto;
  min-width: 260px;
  display: flex;
  align-items: center;
  gap: 10px;
  overflow: hidden;
}

.product-intro-breadcrumb__trail a,
.product-intro-breadcrumb__trail > span {
  flex: 0 0 auto;
  color: #b3b3b3;
  font-size: 16px;
  font-weight: 400;
  line-height: 20px;
  letter-spacing: 0;
}

.product-intro-breadcrumb__trail a {
  transition: color 160ms ease;
}

.product-intro-breadcrumb__trail a:hover,
.product-intro-breadcrumb__trail a:focus-visible {
  color: #008d47;
  outline: 0;
}

.product-intro-breadcrumb__trail span[aria-current="page"] {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  color: #000000;
  font-weight: 700;
  text-overflow: ellipsis;
}

.product-intro-breadcrumb__separator {
  position: relative;
  width: 10px;
  height: 10px;
}

.product-intro-breadcrumb__separator::before {
  position: absolute;
  top: 2px;
  left: 1px;
  width: 6px;
  height: 6px;
  content: "";
  border-top: 1.5px solid currentColor;
  border-right: 1.5px solid currentColor;
  transform: rotate(45deg);
}

.product-intro-section-nav {
  --section-indicator-x: 0px;
  --section-indicator-width: 0px;
  position: relative;
  flex: 0 1 auto;
  min-width: 0;
  height: 100%;
  display: flex;
  align-items: stretch;
  gap: 2px;
  isolation: isolate;
}

.product-intro-section-nav > button {
  position: relative;
  z-index: 1;
  min-width: 0;
  height: 100%;
  padding: 0 12px;
  border: 0;
  background: transparent;
  color: #69716d;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  white-space: nowrap;
  transition: color 180ms ease;
}

.product-intro-section-nav > button:hover,
.product-intro-section-nav > button:focus-visible,
.product-intro-section-nav > button[aria-current="location"] {
  color: #008d47;
  outline: 0;
}

.product-intro-section-nav > button[aria-current="location"] {
  font-weight: 700;
}

.product-intro-section-nav__indicator {
  position: absolute;
  right: auto;
  bottom: 0.5px;
  left: 0;
  z-index: 0;
  width: var(--section-indicator-width);
  height: 2px;
  border-radius: var(--button-radius);
  background: #008d47;
  pointer-events: none;
  transform: translateX(var(--section-indicator-x));
  transition: none;
  will-change: transform, width;
}

.product-intro-section-nav--animate .product-intro-section-nav__indicator {
  transition:
    transform 240ms cubic-bezier(0.22, 1, 0.36, 1),
    width 240ms cubic-bezier(0.22, 1, 0.36, 1);
}

.product-intro-section-nav__compact {
  position: relative;
  z-index: 2;
  display: none;
}

.product-intro-section-nav__compact summary {
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  color: #8d9691;
  cursor: pointer;
  list-style: none;
}

.product-intro-section-nav__compact summary::-webkit-details-marker {
  display: none;
}

.product-intro-section-nav__compact summary > span {
  font-size: 13px;
  font-weight: 400;
  line-height: 20px;
}

.product-intro-section-nav__compact summary > strong {
  max-width: 112px;
  overflow: hidden;
  color: #008d47;
  font-size: 14px;
  font-weight: 700;
  line-height: 20px;
  text-overflow: ellipsis;
}

.product-intro-section-nav__compact .icon-arrow {
  width: 10px;
  height: 10px;
  color: #008d47;
  transition: transform 180ms ease;
}

.product-intro-section-nav__compact[open] .icon-arrow {
  transform: rotate(180deg);
}

.product-intro-section-nav__menu {
  position: absolute;
  top: calc(100% + 1px);
  right: 0;
  width: 420px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0;
  padding: 10px;
  border: 1px solid rgba(1, 25, 13, 0.14);
  border-radius: var(--button-radius);
  background: #ffffff;
}

.product-intro-section-nav__menu button {
  min-width: 0;
  min-height: 44px;
  height: auto;
  padding: 10px 12px;
  border: 0;
  border-radius: var(--button-radius);
  background: transparent;
  color: #4f5753;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  text-align: left;
  white-space: normal;
}

.product-intro-section-nav__menu button:hover,
.product-intro-section-nav__menu button:focus-visible,
.product-intro-section-nav__menu button[aria-current="location"] {
  background: rgba(0, 141, 71, 0.08);
  color: #008d47;
  font-weight: 700;
  outline: 0;
}

.array-product-detail {
  background: #ffffff;
}

.array-product-detail--measurement {
  --content-section-edge-padding-top: 40px;
  --content-section-edge-padding-bottom: 40px;
}

.array-product-detail--antenna {
  display: flex;
  flex-direction: column;
}

.calibration-measurement-advantages,
.calibration-typical-specifications {
  width: min(1600px, calc(100% - 48px));
  margin: 0 auto;
}

.array-product-detail--antenna .array-product-overview {
  order: 1;
}

.array-product-detail--antenna .array-product-functions {
  order: 2;
  width: 100%;
  margin: 0;
  overflow: visible;
  border-radius: 0;
  background: #ffffff;
}

.array-product-detail--antenna .array-product-features {
  order: 3;
  background: #ffffff;
}

.array-product-detail--antenna .array-product-specifications {
  order: 4;
  width: 100%;
  margin: 0;
  overflow: visible;
  border-radius: 0;
  background: #ffffff;
}

.array-product-detail--antenna .array-product-applications {
  order: 5;
}

.array-product-section {
  scroll-margin-top: calc(var(--site-header-height) + var(--product-detail-nav-height) + 16px);
}

.array-product-section__inner {
  width: min(1400px, calc(100% - 48px));
  margin: 0 auto;
  padding: var(--content-section-padding-top) 0 var(--content-section-padding-bottom);
}

.array-product-overview {
  background: #ffffff;
}

.array-product-features {
  background: #fcfcfd;
}

.array-product-functions {
  background: #ffffff;
}

.array-product-functions--table {
  background: linear-gradient(90deg, #19201c 0%, #111e1d 100%);
}

.array-product-detail--complex-software .array-product-functions {
  width: min(1600px, calc(100% - 48px));
  margin: 0 auto;
  overflow: hidden;
  border-radius: var(--button-radius);
  background: #131e28;
}

.array-product-specifications {
  background: linear-gradient(90deg, #19201c 0%, #111e1d 100%);
}

.array-product-applications {
  background: #ffffff;
}

.array-product-section__heading {
  display: flex;
  align-items: baseline;
  gap: 20px;
  margin-bottom: var(--content-heading-content-gap);
}

.array-product-section__heading h2 {
  margin: 0;
  color: #0a0a0a;
  font-size: 30px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0;
  white-space: nowrap;
}

.array-product-detail .array-product-section__heading > p {
  position: relative;
  top: 2px;
  margin: 0;
  color: rgba(181, 179, 186, 0.5);
  font-family: var(--font-mono);
  font-size: 26px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0;
}

.array-product-section__heading--light h2 {
  color: #ffffff;
}

.array-product-detail .array-product-section__heading--light > p {
  color: rgba(181, 179, 186, 0.5);
}

.array-product-overview__copy {
  min-width: 0;
}

.array-product-overview__copy p {
  margin: 0;
  color: #000000;
  font-size: 18px;
  font-weight: 400;
  line-height: 34px;
  letter-spacing: 0;
  text-align: left;
  line-break: strict;
  word-break: normal;
  overflow-wrap: break-word;
}

.array-product-overview__copy p + p {
  margin-top: 18px;
}

.array-product-detail--multi-channel-signal .array-product-media {
  width: min(814px, 100%);
  margin: 50px auto 0;
  opacity: 1;
}

.array-product-detail--multi-channel-signal .array-product-media img {
  display: block;
  width: 100%;
  height: auto;
  opacity: 1;
}

.array-product-detail--complex-software
  .array-product-overview
  .array-product-media {
  width: max-content;
  max-width: 100%;
  margin: 50px auto 0;
}

.array-product-detail--complex-software
  .array-product-overview
  .array-product-media img {
  display: block;
  width: auto;
  max-width: 100%;
  height: auto;
}

.complex-software-application-audience {
  margin-top: 28px;
  color: #000000;
  font-size: 18px;
  font-weight: 400;
  line-height: 34px;
  letter-spacing: 2px;
}

.complex-software-application-audience > p {
  margin: 0 0 8px;
}

.complex-software-application-audience ul {
  display: grid;
  gap: 8px;
  margin: 0;
  padding-left: 18px;
  list-style: none;
}

.complex-software-application-audience li {
  position: relative;
  padding-left: 2px;
  text-align: justify;
  text-align-last: left;
  text-justify: inter-character;
  line-break: strict;
  word-break: normal;
  overflow-wrap: break-word;
}

.complex-software-application-audience li::before {
  content: '';
  width: 6px;
  height: 6px;
  position: absolute;
  top: 14px;
  left: -18px;
  border-radius: 2px;
  background: #000000;
}

.array-product-feature-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 28px;
}

.array-product-feature-motion-card {
  min-width: 0;
}

.array-product-feature-motion-card > article {
  box-sizing: border-box;
  height: 100%;
}

.array-product-feature-grid article {
  min-height: 200px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  border: 1px solid rgba(1, 25, 13, 0.3);
  border-radius: var(--button-radius);
  background: #ffffff;
  padding: 28px 22px;
  text-align: center;
}

.array-product-feature-grid article > span {
  width: 64px;
  height: 64px;
  display: grid;
  place-items: center;
  flex: 0 0 64px;
  border-radius: var(--button-radius);
  background: rgba(3, 2, 19, 0.1);
  color: #000000;
  font-family: var(--font-number);
  font-size: 20px;
  font-weight: 700;
  line-height: 34px;
}

.array-product-feature__text {
  width: 100%;
  margin: 13px 0 0;
  color: #0a0a0a;
  font-size: 18px;
  font-weight: 400;
  line-height: 28px;
}

.array-product-detail--antenna .array-product-feature-grid article {
  border-color: rgba(1, 25, 13, 0.16);
}

.array-product-detail--antenna .array-product-feature-grid article > span {
  background: linear-gradient(180deg, #e9e7ad 0%, #dbd972 100%);
  color: #000000;
}

.array-product-detail--antenna .array-product-feature__text {
  font-weight: 400;
}

.complex-software-features {
  background: #ffffff;
}

.complex-software-feature-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-auto-rows: 1fr;
  gap: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}

.complex-software-feature-list li {
  min-height: 0;
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  align-items: center;
  border-bottom: 1px solid #ccd1cf;
  padding: var(--product-detail-row-padding-block) 20px;
}

.complex-software-feature-list li:nth-child(-n + 2) {
  border-top: 1px solid #ccd1cf;
}

.complex-software-feature-list span {
  color: #008d47;
  font-family: var(--font-number);
  font-size: 18px;
  font-weight: 700;
  line-height: 28px;
}

.complex-software-feature-list p {
  margin: 0;
  color: #000000;
  font-size: 18px;
  font-weight: 400;
  line-height: 28px;
  letter-spacing: 2px;
  line-break: strict;
  word-break: normal;
  overflow-wrap: break-word;
}

@media (min-width: 961px) {
  .complex-software-feature-list__row--nowrap p {
    white-space: nowrap;
    letter-spacing: 0;
  }
}

.array-product-detail--phased-array-calibration {
  background: #ffffff;
}

.array-product-detail--phased-array-calibration .array-product-section__inner {
  padding: var(--content-section-padding-top) 0 var(--content-section-padding-bottom);
}

.array-product-detail--phased-array-calibration .array-product-section__heading > p {
  font-size: 26px;
}

.array-product-detail--phased-array-calibration .array-product-overview__copy {
  max-width: 1400px;
}

.array-product-detail--phased-array-calibration
  .array-product-overview
  .array-product-section__inner {
  padding-bottom: var(--content-section-padding-bottom);
}

.array-product-detail--phased-array-calibration .array-product-media {
  width: max-content;
  max-width: calc(
    100% - var(--measurement-overview-frame-padding-left, 0px) -
      var(--measurement-overview-frame-padding-right, 0px)
  );
  margin: var(--measurement-overview-image-top-gap, 50px) auto 0;
  padding: var(--measurement-overview-frame-padding-top, 0px)
    var(--measurement-overview-frame-padding-right, 0px)
    var(--measurement-overview-frame-padding-bottom, 0px)
    var(--measurement-overview-frame-padding-left, 0px);
  box-sizing: content-box;
}

.array-product-detail--phased-array-calibration .array-product-media img {
  display: block;
  width: auto;
  max-width: 100%;
  height: auto;
}

.calibration-measurement-advantages {
  --calibration-advantage-background: #131e28;
  --calibration-advantage-border: #45515a;
  --calibration-advantage-index: #36bfff;
  --calibration-advantage-text: #ffffff;
  overflow: hidden;
  border-radius: var(--button-radius);
  background: var(--calibration-advantage-background);
}

.array-product-detail--calibration-unified .calibration-measurement-advantages {
  --calibration-advantage-background: #ffffff;
  --calibration-advantage-border: #d4dee7;
  --calibration-advantage-index: #008d47;
  --calibration-advantage-text: #0a0a0a;
}

.calibration-reference-combined {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 80px;
  margin: 0;
}

.calibration-reference-group {
  min-width: 0;
}

.calibration-reference-group__heading {
  border-bottom: 1px solid #d4dee7;
  padding-bottom: 18px;
}

.calibration-reference-group__heading h2 {
  margin: 0;
  display: flex;
  align-items: center;
  gap: 14px;
  color: #0a0a0a;
  font-size: 30px;
  font-weight: 700;
  line-height: 1;
}

.calibration-reference-group__heading h2::before {
  width: 8px;
  height: 8px;
  flex: 0 0 8px;
  border-radius: 50%;
  background: #008d47;
  box-shadow: 0 0 0 5px rgba(0, 141, 71, 0.12);
  content: '';
}

.calibration-reference-group__heading p {
  margin: 4px 0 0 22px;
  color: #87918c;
  font-family: var(--font-mono);
  font-size: 14px;
  font-weight: 400;
  line-height: 1;
}

.calibration-reference-list {
  margin: 24px 0 0;
  padding: 0;
  list-style: none;
}

.calibration-reference-list li {
  position: relative;
  min-width: 0;
  padding-left: 24px;
  color: #0a0a0a;
}

.calibration-reference-list li + li {
  margin-top: 10px;
}

.calibration-reference-list li::before {
  position: absolute;
  top: 11px;
  left: 5px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #008d47;
  box-shadow: 0 0 0 5px rgba(0, 141, 71, 0.12);
  content: '';
}

.calibration-reference-list span {
  display: block;
  font-size: 18px;
  font-weight: 400;
  line-height: 30px;
  letter-spacing: 1px;
  line-break: strict;
  word-break: normal;
  overflow-wrap: break-word;
}

.array-product-detail--calibration-unified .calibration-measurement-advantages {
  width: 100%;
  border-radius: 0;
  --calibration-advantage-background: #ffffff;
  --calibration-advantage-border: #d4dee7;
  --calibration-advantage-index: #1966c5;
  --calibration-advantage-text: #000000;
}

.array-product-detail--calibration-unified .calibration-measurement-advantages .array-product-section__heading {
  margin-bottom: 34px;
}

.array-product-detail--calibration-unified .calibration-reference-combined {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 28px;
  row-gap: var(--content-heading-content-gap);
}

.array-product-detail--calibration-unified
  .calibration-measurement-advantages
  .array-product-section__inner {
  padding-bottom: 0;
}

.array-product-detail--calibration-unified
  .calibration-measurement-advantages
  + .calibration-typical-specifications
  .array-product-section__inner {
  padding-top: var(--content-heading-content-gap);
}

.array-product-detail--calibration-unified .calibration-reference-group--system-types {
  grid-column: 1 / -1;
}

.array-product-detail--calibration-unified .calibration-reference-group__heading {
  display: flex;
  align-items: baseline;
  gap: 20px;
  padding-bottom: 20px;
}

.array-product-detail--calibration-unified .calibration-reference-group__heading h2 {
  font-size: 30px;
  line-height: 1;
}

.array-product-detail--calibration-unified .calibration-reference-group__heading h2::before {
  display: none;
}

.array-product-detail--calibration-unified .calibration-reference-group__heading p {
  position: relative;
  top: 2px;
  margin: 0;
  color: rgba(181, 179, 186, 0.5);
  font-size: 26px;
  font-weight: 700;
  line-height: 1;
}

.array-product-detail--calibration-unified .calibration-reference-list {
  margin-top: 16px;
}

.array-product-detail--calibration-unified .calibration-reference-list li {
  padding-left: 18px;
}

.array-product-detail--calibration-unified .calibration-reference-list li + li {
  margin-top: 18px;
}

.array-product-detail--calibration-unified .calibration-reference-list li::before {
  top: 12px;
  left: 0;
  width: 4px;
  height: 4px;
  border-radius: 2px;
  background: #000000;
  box-shadow: none;
}

.array-product-detail--calibration-unified .calibration-reference-list span {
  font-size: 16px;
  line-height: 30px;
  letter-spacing: 2px;
}

.array-product-detail--calibration-unified
  .calibration-reference-group--measurement-advantages
  .calibration-reference-list span,
.array-product-detail--calibration-unified
  #functional-characteristics.calibration-reference-group
  .calibration-reference-list span {
  line-height: 20px;
}

.array-product-detail--calibration-unified
  .calibration-reference-group--measurement-advantages
  .calibration-reference-list li::before,
.array-product-detail--calibration-unified
  #functional-characteristics.calibration-reference-group
  .calibration-reference-list li::before {
  top: 8px;
}

.array-product-detail--calibration-unified
  .calibration-reference-group--antenna-software-columns
  .calibration-reference-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-rows: repeat(7, auto);
  grid-auto-flow: column;
  column-gap: 24px;
  row-gap: 18px;
}

.array-product-detail--calibration-unified
  .calibration-reference-group--antenna-software-columns
  .calibration-reference-list li + li {
  margin-top: 0;
}

.array-product-detail--calibration-unified
  .calibration-reference-group--antenna-software-columns
  .calibration-reference-list li:last-child {
  grid-column: 1;
  grid-row: 7;
}

.array-product-detail--calibration-unified
  .calibration-reference-group--system-types
  .calibration-reference-list {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  column-gap: 24px;
  row-gap: 18px;
}

.array-product-detail--calibration-unified
  .calibration-reference-group--system-types
  .calibration-reference-list li {
  flex: 0 0 auto;
  width: max-content;
  max-width: 100%;
}

.array-product-detail--calibration-unified
  .calibration-reference-group--system-types
  .calibration-reference-list li + li {
  margin-top: 0;
}

.array-product-detail--calibration-unified
  .calibration-reference-group--system-types
  .calibration-reference-list span {
  line-height: 20px;
  white-space: nowrap;
}

.array-product-detail--calibration-unified
  .calibration-reference-group--system-types
  .calibration-reference-list li::before {
  top: 8px;
}

@media (max-width: 980px) {
  .array-product-detail--calibration-unified .calibration-reference-combined {
    grid-template-columns: 1fr;
  }

  .array-product-detail--calibration-unified .calibration-reference-combined {
    gap: var(--content-heading-content-gap);
  }

  .array-product-detail--calibration-unified .calibration-reference-group--system-types {
    grid-column: 1;
  }

  .array-product-detail--calibration-unified .calibration-reference-group__heading {
    flex-wrap: wrap;
    row-gap: 8px;
  }

  .array-product-detail--calibration-unified
    .calibration-reference-group--antenna-software-columns
    .calibration-reference-list {
    display: block;
  }

  .array-product-detail--calibration-unified
    .calibration-reference-group--antenna-software-columns
    .calibration-reference-list li + li {
    margin-top: 18px;
  }

}

@media (max-width: 760px) {
  .array-product-detail--calibration-unified .calibration-reference-combined {
    gap: var(--content-heading-content-gap);
  }

  .array-product-detail--calibration-unified .calibration-reference-group__heading h2 {
    font-size: 26px;
    line-height: 1;
  }

  .array-product-detail--calibration-unified .calibration-reference-group__heading p {
    font-size: 18px;
    line-height: 1;
  }

  .array-product-detail--calibration-unified .calibration-reference-list span {
    font-size: 16px;
    line-height: 30px;
    letter-spacing: 1px;
  }

  .array-product-detail--calibration-unified .calibration-reference-list li::before {
    top: 14px;
  }
}

.calibration-typical-specifications {
  overflow: hidden;
  border-radius: var(--button-radius);
  background: #131e28;
}

.calibration-typical-specifications .array-product-section__heading {
  margin-bottom: 16px;
}

.array-product-detail--calibration-unified .calibration-typical-specifications {
  width: 100%;
  border-radius: 0;
  background: #ffffff;
}

.calibration-table-wrap {
  overflow-x: auto;
  overflow-y: hidden;
}

.calibration-table {
  width: 100%;
  min-width: 960px;
  table-layout: fixed;
  border-collapse: collapse;
}

.calibration-table th,
.calibration-table td {
  border-bottom: 1px solid #ccd1cf;
  padding: 0 30px;
  text-align: left;
  vertical-align: middle;
}

.calibration-table--light th,
.calibration-table--light td {
  border-bottom-color: #d4dee7;
}

.calibration-table thead tr {
  height: 60px;
}

.calibration-table--light thead {
  background: transparent;
}

.calibration-table thead th {
  font-size: 18px;
  font-weight: 700;
  line-height: 28px;
  letter-spacing: 2px;
}

.calibration-table thead th:first-child,
.calibration-table tbody td:first-child {
  width: 140px;
}

.calibration-table thead th:nth-child(2),
.calibration-table tbody th {
  width: 300px;
}

.calibration-table tbody tr {
  height: 81px;
}

.calibration-typical-specifications .calibration-table tbody tr {
  height: 68px;
}

.calibration-typical-specifications .calibration-table__value-list {
  min-height: 68px;
}

.calibration-table tbody tr:nth-child(even) {
  background: rgba(255, 255, 255, 0.02);
}

.calibration-table--light tbody tr:nth-child(even) {
  background: rgba(193, 210, 218, 0.03);
}

.calibration-table tbody td,
.calibration-table tbody th {
  font-family: var(--font-mono);
  font-size: 18px;
  font-weight: 400;
  line-height: 28px;
  letter-spacing: 2px;
}

.array-product-detail--calibration-unified .calibration-table tbody td,
.array-product-detail--calibration-unified .calibration-table tbody th {
  font-size: 16px;
  line-height: 30px;
}

.calibration-table tbody td:first-child {
  font-family: var(--font-number);
}

.calibration-table--light thead th,
.calibration-table--light tbody td:first-child {
  color: #1966c5;
}

.calibration-table__value-list {
  min-height: 80px;
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  padding: 10px 0;
  row-gap: 8px;
}

.calibration-table__value-item {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
}

.calibration-table__value-divider {
  margin: 0 clamp(16px, 2vw, 36px);
  color: rgba(149, 168, 180, 0.7);
  font-style: normal;
}

.calibration-table__value-list--stacked {
  align-items: flex-start;
  flex-direction: column;
  padding-block: 10px;
}

.calibration-table__value-list--stacked .calibration-table__value-divider {
  display: none;
}

.calibration-table--light {
  color: #000000;
}

.array-product-function-list,
.array-product-application-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}

.array-product-functions--wide .array-product-function-list {
  grid-template-columns: minmax(0, 1fr);
  gap: 0;
}

.array-product-function-list li,
.array-product-application-list li {
  min-height: 0;
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  align-items: center;
  gap: 0;
  border-top: 0;
  border-bottom: 1px solid #ccd1cf;
  padding: var(--product-detail-row-padding-block) 20px;
}

.array-product-function-list li:nth-child(-n + 2),
.array-product-application-list li:nth-child(-n + 2) {
  border-top: 1px solid #ccd1cf;
}

.array-product-function-list li > span,
.array-product-application-list li > span {
  color: #008d47;
  font-family: var(--font-number);
  font-size: 18px;
  font-weight: 700;
  line-height: 28px;
}

.array-product-function-list p,
.array-product-application-list strong {
  margin: 0;
  color: #000000;
  font-size: 18px;
  font-weight: 400;
  line-height: 28px;
  letter-spacing: 2px;
  text-align: left;
  line-break: strict;
  word-break: normal;
  overflow-wrap: break-word;
}

.array-product-detail--antenna .array-product-function-list {
  column-gap: 40px;
}

.array-product-detail--antenna .array-product-function-list li {
  border-bottom: 1px solid #d4dee7;
}

.array-product-detail--antenna .array-product-function-list li:nth-child(-n + 2) {
  border-top: 1px solid #d4dee7;
}

.array-product-detail--antenna .array-product-function-list li > span {
  color: #008d47;
}

.array-product-detail--antenna .array-product-function-list p {
  color: #000000;
}

.array-product-application-list strong {
  font-weight: 700;
}

.array-product-spec-table-wrap {
  overflow-x: auto;
  overflow-y: hidden;
  border-top: 1px solid #ccd1cf;
  scrollbar-color: rgba(255, 255, 255, 0.35) transparent;
}

.array-product-spec-table {
  width: 100%;
  min-width: 720px;
  table-layout: fixed;
  border-collapse: collapse;
  color: #ffffff;
}

.array-product-spec-table th,
.array-product-spec-table td {
  border-bottom: 1px solid #ccd1cf;
  padding: 0 30px;
  text-align: left;
  vertical-align: middle;
}

.array-product-spec-table thead tr {
  height: 61px;
  background: rgba(255, 255, 255, 0.1);
}

.array-product-spec-table thead th {
  font-size: 18px;
  font-weight: 700;
  line-height: 28px;
  letter-spacing: 2px;
}

.array-product-spec-table thead th:first-child,
.array-product-spec-table tbody td:first-child {
  width: 200px;
}

.array-product-spec-table thead th:nth-child(2),
.array-product-spec-table tbody th {
  width: 500px;
}

.array-product-spec-table tbody tr {
  height: 81px;
}

.array-product-spec-table tbody tr:nth-child(even) {
  background: rgba(255, 255, 255, 0.02);
}

.array-product-spec-table tbody td,
.array-product-spec-table tbody th {
  color: #ffffff;
  font-family: var(--font-mono);
  font-size: 18px;
  font-weight: 400;
  line-height: 28px;
  letter-spacing: 2px;
}

.array-product-spec-table tbody td:first-child {
  font-family: var(--font-number);
}

.array-product-function-table {
  min-width: 860px;
}

.array-product-function-table thead th:nth-child(2),
.array-product-function-table tbody th {
  width: 400px;
}

.array-product-function-table tbody tr {
  height: auto;
}

.array-product-function-table tbody td,
.array-product-function-table tbody th {
  padding-top: var(--product-detail-row-padding-block);
  padding-bottom: var(--product-detail-row-padding-block);
  line-height: 30px;
  text-align: justify;
  text-align-last: left;
  text-justify: inter-character;
  line-break: strict;
  word-break: normal;
  overflow-wrap: break-word;
}

html[lang='en']
  .array-product-detail--english
  .array-product-function-table
  tbody
  :is(th, td) {
  text-align: left;
  text-align-last: left;
  text-justify: auto;
}

.array-product-detail--complex-software .array-product-spec-table-wrap {
  border-top: 0;
}

.array-product-detail--complex-software .array-product-spec-table th,
.array-product-detail--complex-software .array-product-spec-table td {
  border-bottom-color: rgba(149, 168, 180, 0.4);
}

.array-product-detail--complex-software .array-product-spec-table thead tr {
  height: 60px;
  background: transparent;
}

.array-product-detail--complex-software .array-product-spec-table thead th,
.array-product-detail--complex-software .array-product-spec-table tbody td:first-child {
  color: #07cf6b;
}

.array-product-detail--complex-software .array-product-spec-table thead th:first-child,
.array-product-detail--complex-software .array-product-spec-table tbody td:first-child {
  width: 140px;
}

.array-product-detail--complex-software .array-product-function-table thead th:nth-child(2),
.array-product-detail--complex-software .array-product-function-table tbody th {
  width: 300px;
}

.array-product-detail--antenna .array-product-spec-table-wrap {
  border-top: 0;
  scrollbar-color: rgba(45, 51, 47, 0.35) transparent;
}

.array-product-detail--antenna .array-product-spec-table {
  color: #000000;
}

.array-product-detail--antenna .array-product-spec-table th,
.array-product-detail--antenna .array-product-spec-table td {
  border-bottom: 1px solid #d4dee7;
}

.array-product-detail--antenna .array-product-spec-table thead tr {
  height: 60px;
  background: transparent;
}

.array-product-detail--antenna .array-product-spec-table thead th,
.array-product-detail--antenna .array-product-spec-table tbody td:first-child {
  color: #008d47;
}

.array-product-detail--antenna .array-product-spec-table tbody td,
.array-product-detail--antenna .array-product-spec-table tbody th {
  color: #000000;
}

.array-product-detail--antenna .array-product-spec-table tbody tr:nth-child(even) {
  background: rgba(193, 210, 218, 0.03);
}

.array-product-detail--antenna .array-product-spec-table tbody tr {
  height: 80px;
}

.array-product-detail > .array-product-section:first-child .array-product-section__inner {
  padding-top: var(--content-section-edge-padding-top);
}

.array-product-detail > .array-product-section:last-child .array-product-section__inner {
  padding-bottom: var(--content-section-edge-padding-bottom);
}

.product-detail-hover-row {
  cursor: default;
}

span.product-detail-hover-row__content {
  display: inline-block;
}

@media (hover: hover) and (pointer: fine) and (min-width: 761px) {
  .product-detail-hover-row__content {
    transition: transform 260ms cubic-bezier(0.22, 1, 0.36, 1);
  }

  .product-detail-hover-row:hover .product-detail-hover-row__content {
    transform: translateX(20px);
  }
}

@media (max-width: 1180px) {
  .product-intro-breadcrumb__trail {
    flex: 1 1 auto;
  }

  .product-intro-section-nav--desktop {
    display: none;
  }

  .product-intro-section-nav__compact {
    display: block;
    flex: 0 0 240px;
    margin-left: auto;
  }
}

@media (prefers-reduced-motion: reduce) {
  .site-header-shell,
  .product-intro-breadcrumb-shell--fixed .product-intro-breadcrumb,
  .mega-menu__subcategory-indicator,
  .product-intro-section-nav__indicator,
  .product-intro-section-nav--animate .product-intro-section-nav__indicator,
  .product-intro-section-nav > button {
    transition: none;
  }
}

@media (max-width: 980px) {
  .array-product-feature-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .calibration-reference-combined {
    grid-template-columns: 1fr;
    gap: 56px;
  }

  .array-product-function-list,
  .array-product-application-list {
    grid-template-columns: 1fr;
  }

  .array-product-detail--antenna .array-product-function-list {
    column-gap: 0;
  }

  .array-product-function-list li:nth-child(-n + 2),
  .array-product-application-list li:nth-child(-n + 2) {
    border-top: 0;
  }

  .array-product-function-list li:first-child,
  .array-product-application-list li:first-child {
    border-top: 1px solid #ccd1cf;
  }
}

@media (max-width: 760px) {
  .home-contact-cta {
    height: auto;
    min-height: 300px;
  }

  .home-contact-cta__inner {
    min-height: 300px;
    grid-template-columns: 1fr;
    align-content: center;
    justify-items: start;
    gap: 36px;
    padding: 56px 0;
  }

  .home-contact-cta__actions {
    justify-content: flex-start;
  }

  .home-contact-cta__copy h2 {
    font-size: 36px;
    line-height: 48px;
  }

  .home-contact-cta__copy > p {
    margin-top: 18px;
    font-size: 16px;
    line-height: 28px;
  }
}

@media (max-width: 620px) {
  :root {
    --product-detail-nav-height: 104px;
  }

  .array-product-section__inner {
    width: min(100% - 32px, 1400px);
  }

  .product-intro-breadcrumb-shell,
  .product-intro-breadcrumb {
    height: 104px;
    margin-top: 0;
  }

  .product-intro-breadcrumb__inner {
    width: min(100% - 32px, 1400px);
    height: 100%;
    display: grid;
    grid-template-rows: 56px 48px;
    gap: 0;
  }

  .product-intro-breadcrumb::after {
    width: min(100% - 32px, 1400px);
  }

  .product-intro-breadcrumb__trail {
    width: 100%;
    min-width: 0;
    height: 56px;
  }

  .product-intro-breadcrumb__trail > :nth-child(1),
  .product-intro-breadcrumb__trail > :nth-child(2),
  .product-intro-breadcrumb__trail > :nth-child(5),
  .product-intro-breadcrumb__trail > :nth-child(6) {
    display: none;
  }

  .product-intro-breadcrumb__trail a,
  .product-intro-breadcrumb__trail > span {
    font-size: 14px;
    line-height: 20px;
  }

  .product-intro-section-nav__compact {
    width: 100%;
    min-width: 0;
    margin: 0;
    border-top: 1px solid rgba(217, 221, 219, 0.5);
  }

  .product-intro-section-nav__compact summary {
    height: 47px;
    justify-content: space-between;
  }

  .product-intro-section-nav__compact summary > strong {
    max-width: none;
    margin-left: auto;
  }

  .product-intro-section-nav__menu {
    right: 0;
    left: 0;
    width: 100%;
    grid-template-columns: 1fr;
  }

  .array-product-section__heading {
    display: grid;
    gap: 4px;
    margin-bottom: var(--content-heading-content-gap);
  }

  .array-product-section__heading h2 {
    font-size: 28px;
    line-height: 1;
  }

  .array-product-section__heading > p {
    font-size: 18px;
    line-height: 1;
  }

  .array-product-overview__copy p {
    font-size: 16px;
    line-height: 30px;
    letter-spacing: 1px;
  }

  .array-product-feature-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .array-product-feature-grid article {
    min-height: 176px;
    padding: 24px 20px;
  }

  .array-product-detail--phased-array-calibration .array-product-section__heading > p {
    font-size: 18px;
    line-height: 1;
  }

  .array-product-detail--phased-array-calibration .array-product-media {
    margin-top: 36px;
  }

  .array-product-detail--phased-array-calibration
    .array-product-overview
    .array-product-section__inner {
    padding-bottom: var(--content-section-padding-bottom);
  }

  .complex-software-feature-list {
    grid-template-columns: 1fr;
  }

  .complex-software-feature-list li {
    min-height: 78px;
    grid-template-columns: 44px minmax(0, 1fr);
    padding: 12px 0;
  }

  .complex-software-feature-list li:nth-child(-n + 2) {
    border-top: 0;
  }

  .complex-software-feature-list li:first-child {
    border-top: 1px solid #ccd1cf;
  }

  .complex-software-feature-list p {
    font-size: 16px;
    line-height: 28px;
    letter-spacing: 1px;
  }

  .complex-software-application-audience {
    margin-top: 22px;
    font-size: 16px;
    line-height: 30px;
    letter-spacing: 1px;
  }

  .complex-software-application-audience ul {
    gap: 6px;
    padding-left: 18px;
  }

  .complex-software-application-audience li::before {
    top: 12px;
  }

  .calibration-reference-combined {
    gap: 40px;
  }

  .calibration-reference-list {
    padding: 0;
  }

  .calibration-reference-group__heading h2 {
    font-size: 26px;
    line-height: 1;
  }

  .calibration-reference-list span {
    font-size: 16px;
    line-height: 28px;
  }

  .calibration-table {
    min-width: 720px;
  }

  .calibration-table th,
  .calibration-table td {
    padding-right: 22px;
    padding-left: 22px;
  }

  .calibration-table thead th,
  .calibration-table tbody td,
  .calibration-table tbody th {
    font-size: 16px;
    letter-spacing: 1px;
  }

  .array-product-function-list li,
  .array-product-application-list li {
    grid-template-columns: 32px minmax(0, 1fr);
    padding: 12px 0;
  }

  .array-product-function-list p,
  .array-product-application-list strong {
    font-size: 16px;
    line-height: 28px;
    letter-spacing: 1px;
  }

  .array-product-spec-table th,
  .array-product-spec-table td {
    padding: 0 22px;
  }

  .array-product-spec-table thead th,
  .array-product-spec-table tbody td,
  .array-product-spec-table tbody th {
    font-size: 16px;
    letter-spacing: 1px;
  }

}

.contact-page {
  scroll-margin-top: 80px;
  background: #ffffff;
}

.contact-hero {
  background: #0c1a12;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.contact-kicker {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  color: var(--banner-kicker-color);
  font-family: var(--font-mono);
  font-size: 14px;
  font-weight: 700;
  line-height: 18px;
}

.contact-kicker span {
  width: 22px;
  height: 1px;
  background: currentColor;
}

.contact-hero h1 {
  margin: 12px 0 0;
  color: #ffffff;
  font-size: 40px;
  font-weight: 700;
  line-height: 51px;
  letter-spacing: 0;
}

.contact-hero__inner > p:last-child {
  width: 544px;
  max-width: 100%;
  margin: 20px 0 0;
  color: rgba(255, 255, 255, 0.72);
  font-size: 16px;
  font-weight: 400;
  line-height: 26px;
}

.contact-content {
  background: #ffffff;
  padding: var(--content-section-padding-top) 0 var(--content-section-padding-bottom);
  padding-top: var(--content-section-edge-padding-top);
  padding-bottom: var(--content-section-edge-padding-bottom);
}

.contact-content__inner {
  width: min(1400px, calc(100% - 48px));
  margin: 0 auto;
  display: grid;
  grid-template-columns: 762px 508px;
  gap: 130px;
  align-items: start;
}

.contact-form h2,
.contact-info h2 {
  margin: 0 0 var(--content-heading-content-gap);
  display: flex;
  align-items: flex-start;
  color: #0d1117;
  font-size: 20px;
  font-weight: 700;
  line-height: 25px;
  letter-spacing: 0;
}

.contact-section-title span {
  margin: 4px 0 0 14px;
  color: rgba(1, 25, 13, 0.3);
  font-family: var(--font-mono);
  font-size: 16px;
  font-weight: 700;
  line-height: 21px;
  white-space: nowrap;
}

.contact-form {
  animation: contact-slide-in-left 1200ms ease both;
  will-change: opacity, transform;
}

.contact-info {
  animation: contact-slide-in-right 1200ms ease both;
  will-change: opacity, transform;
}

@keyframes contact-slide-in-left {
  from {
    opacity: 0;
    transform: translate3d(-120px, 0, 0);
  }

  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

@keyframes contact-slide-in-right {
  from {
    opacity: 0;
    transform: translate3d(120px, 0, 0);
  }

  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

@media (prefers-reduced-motion: reduce) {
  .banner-copy-motion,
  .product-search,
  .contact-form,
  .contact-info {
    animation: none;
  }

  .section-reveal,
  .news-reveal,
  .news-reveal--in-view,
  .news-detail-motion--in-view,
  .news-detail-motion--instant,
  .nav-dock-indicator {
    animation: none;
    transition: none;
  }

  .news-reveal,
  .section-reveal,
  .news-detail-motion--out-view {
    opacity: 1;
    transform: none;
  }

  .product-detail-hover-row__content,
  .product-detail-hover-row:hover .product-detail-hover-row__content {
    transition: none;
    transform: none;
  }

  .news-featured > .news-featured__media,
  .news-featured > .news-featured__body,
  .news-list-item > .news-list-item__media,
  .news-list-item > .news-list-item__body,
  .news-list-item > .news-list-item__more {
    transition: none;
    transform: none;
  }

}

.contact-form__grid {
  display: grid;
  grid-template-columns: repeat(2, 366px);
  gap: 30px;
}

.contact-form label,
.contact-message {
  display: grid;
  gap: 12px;
  min-width: 0;
}

.contact-label {
  display: inline-flex;
  align-items: center;
  gap: 14px;
}

.contact-label__required {
  display: inline;
}

.contact-form label > span,
.contact-message > span,
.contact-type__title {
  color: #000000;
  font-size: 16px;
  font-weight: 400;
  line-height: 20px;
  letter-spacing: 0;
}

.contact-form em,
.contact-message em {
  color: #f00f08;
  font-style: normal;
}

.contact-form input,
.contact-message textarea {
  width: 100%;
  border: 1px solid rgba(1, 25, 13, 0.3);
  border-radius: var(--button-radius);
  background: #ffffff;
  color: #0d1117;
  font-size: 16px;
  font-weight: 400;
  line-height: 20px;
  letter-spacing: 0;
  outline: 0;
  transition: border-color 160ms ease, box-shadow 160ms ease;
}

.contact-form input {
  height: 46px;
  padding: 0 12px;
}

.contact-message textarea {
  height: 188px;
  resize: vertical;
  padding: 12px;
  line-height: 20px;
}

.contact-form input::placeholder,
.contact-message textarea::placeholder {
  color: rgba(1, 25, 13, 0.3);
  letter-spacing: 1px;
}

.contact-form input:hover,
.contact-message textarea:hover,
.contact-form input:focus,
.contact-message textarea:focus {
  border-color: #008d47;
  box-shadow: 0 0 0 2px rgba(0, 141, 71, 0.08);
}

.contact-form input[aria-invalid="true"],
.contact-message textarea[aria-invalid="true"] {
  border-color: #f00f08;
}

.contact-field-error {
  color: #f00f08;
  font-size: 12px;
  font-weight: 400;
  line-height: 18px;
  letter-spacing: 0;
}

.contact-type {
  display: grid;
  gap: 12px;
  margin: 30px 0;
  padding: 0;
}

.contact-type__title {
  margin: 0;
}

.contact-type__options {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}

.contact-type__option {
  width: 108px;
  height: 38px;
  border: 1px solid rgba(1, 25, 13, 0.3);
  border-radius: var(--button-radius);
  background: #ffffff;
  padding: 0;
  color: rgba(1, 25, 13, 0.3);
  font-size: 16px;
  font-weight: 400;
  line-height: 20px;
  letter-spacing: 1px;
  transition: border-color 160ms ease, color 160ms ease, background 160ms ease;
}

.contact-page--english .contact-type__option {
  height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 4px 8px;
  line-height: 18px;
}

.contact-type__option:nth-child(1),
.contact-type__option:nth-child(2) {
  width: 142px;
}

.contact-type__option:nth-child(6) {
  width: 74px;
}

.contact-type__option:hover {
  border-color: #008d47;
}

.contact-type__option:focus-visible {
  border-color: #008d47;
  box-shadow: 0 0 0 2px rgba(0, 141, 71, 0.08);
  outline: 0;
}

.contact-type__option--active,
.contact-type__option--active:hover,
.contact-type__option--active:focus-visible {
  border-color: #008d47;
  background: #008d47;
  color: #ffffff;
  box-shadow: none;
}

.contact-submit-row {
  min-height: 40px;
  display: flex;
  align-items: center;
  gap: 16px;
  margin-top: 30px;
}

.contact-submit {
  width: 130px;
  height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  border: 0;
  border-radius: var(--button-radius);
  background: #000000;
  padding: 0 20px;
  color: #ffffff;
  font-size: 16px;
  font-weight: 700;
  line-height: 20px;
  transition: background 160ms ease;
}

.contact-submit__icon {
  width: 14px;
  height: 14px;
  flex: 0 0 auto;
}

@media (min-width: 1201px) {
  .contact-page--english .contact-content__inner {
    grid-template-columns: 900px 470px;
    gap: 30px;
  }

  .contact-page--english .contact-form__grid {
    grid-template-columns: repeat(2, 435px);
  }

  .contact-page--english .contact-type__options {
    display: grid;
    grid-template-columns: 130px 174px 154px 198px 130px 74px;
    gap: 8px;
  }

  .contact-page--english .contact-type__options .contact-type__option {
    width: 100%;
    height: 48px;
    padding: 0 10px;
    line-height: 20px;
    letter-spacing: 0;
    white-space: nowrap;
  }

  .contact-page--english .contact-submit {
    width: 154px;
    white-space: nowrap;
  }
}

.contact-submit:hover,
.contact-submit:focus-visible {
  background: #008d47;
  outline: 0;
}

.contact-submit:disabled {
  cursor: not-allowed;
  background: rgba(0, 0, 0, 0.35);
}

.contact-card-list {
  display: grid;
  gap: 20px;
}

.contact-toast {
  position: fixed;
  z-index: 220;
  top: 50%;
  left: 50%;
  min-width: 160px;
  height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: 1px solid #e1f3d8;
  border-radius: var(--button-radius);
  background: #f0f9eb;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.1);
  color: #67c23a;
  padding: 0 18px;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  transform: translate(-50%, -50%);
}

.contact-toast::before {
  width: 16px;
  height: 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #67c23a;
  color: #ffffff;
  content: "✓";
  font-size: 11px;
  font-weight: 700;
  line-height: 16px;
}

.contact-toast--error {
  border-color: #fde2e2;
  background: #fef0f0;
  color: #f56c6c;
}

.contact-toast--error::before {
  background: #f56c6c;
  content: "!";
}

.contact-toast-enter-active,
.contact-toast-leave-active {
  transition: opacity 220ms ease, transform 220ms ease;
}

.contact-toast-enter-from,
.contact-toast-leave-to {
  opacity: 0;
  transform: translate(-50%, calc(-50% - 10px));
}

.contact-card {
  min-height: 152px;
  border: 1px solid rgba(1, 25, 13, 0.3);
  border-radius: var(--button-radius);
  background: #ffffff;
  padding: 22px 0 15px;
}

.contact-card:first-child {
  min-height: 192px;
}

.contact-card h3 {
  margin: 0 30px 14px;
  color: #000000;
  font-size: 20px;
  font-weight: 700;
  line-height: 25px;
  letter-spacing: 0;
}

.contact-card__rows {
  display: grid;
  gap: 6px;
}

.contact-card__rows p {
  min-height: 34px;
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  background: #ffffff;
  border-radius: var(--button-radius);
  padding: 0 30px;
  color: rgba(1, 25, 13, 0.5);
  font-family: var(--font-mono);
  font-size: 16px;
  font-weight: 400;
  line-height: 20px;
  letter-spacing: 1px;
}

.contact-card__icon {
  width: 14px;
  min-height: 16px;
  display: inline-grid;
  place-items: center;
  flex: 0 0 14px;
}

.contact-card__icon img {
  width: auto;
  max-width: 14px;
  max-height: 16px;
  opacity: 0.55;
}

.contact-card__link {
  border-radius: var(--button-radius);
  color: inherit;
  text-decoration: none;
  text-underline-offset: 4px;
  transition: color 180ms ease;
}

.contact-card__link:hover {
  color: #008d47;
  text-decoration: underline;
}

.contact-card__link:focus-visible {
  color: #008d47;
  outline: 2px solid rgba(0, 141, 71, 0.4);
  outline-offset: 3px;
}

.site-footer {
  background: #0c1a12;
  color: #ffffff;
  font-size: 14px;
  line-height: 24px;
}

.site-footer__inner {
  width: min(1400px, calc(100% - 48px));
  margin: 0 auto;
}

.site-footer__top {
  display: grid;
  grid-template-columns: minmax(280px, 1fr) minmax(0, 2fr);
  column-gap: clamp(64px, 7vw, 120px);
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  padding: 64px 0 48px;
}

.site-footer__brand {
  max-width: 400px;
}

@media (min-width: 1201px) {
  html[lang='en'] .site-footer__top {
    grid-template-columns: minmax(500px, 1.15fr) minmax(0, 1.85fr);
  }

  html[lang='en'] .site-footer__brand {
    max-width: 500px;
  }
}

.footer-logo {
  width: 140px;
  height: 50px;
  display: block;
}

.footer-logo__image {
  width: 140px;
  height: 50px;
  object-fit: contain;
  filter: brightness(0) invert(1);
}

.site-footer__brand p {
  margin: 24px 0 0;
  color: rgba(255, 255, 255, 0.56);
  font-size: inherit;
  font-weight: 400;
  line-height: 26px;
}

.footer-links {
  display: grid;
  grid-template-columns: max-content max-content max-content 116px;
  align-items: start;
  justify-content: end;
  column-gap: clamp(48px, 5vw, 80px);
}

.footer-column h2 {
  margin: 0 0 20px;
  color: rgba(255, 255, 255, 0.5);
  font-size: inherit;
  font-weight: 700;
  line-height: 24px;
}

.footer-column a {
  display: block;
  margin-top: 12px;
  color: rgba(255, 255, 255, 0.66);
  font-size: inherit;
  font-weight: 400;
  line-height: 24px;
  transition: color 160ms ease;
}

.footer-column a:hover,
.footer-column a:focus-visible,
.site-footer__bottom a:hover,
.site-footer__bottom a:focus-visible {
  color: #21e269;
  outline: 0;
}

.footer-follow {
  justify-self: end;
  text-align: center;
}

.footer-follow__content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
}

.footer-follow__qr {
  width: 116px;
  height: 116px;
  flex: 0 0 116px;
  border-radius: var(--button-radius);
  background: #ffffff;
}

.footer-follow__content p {
  margin: 0;
  color: rgba(255, 255, 255, 0.56);
  font-size: inherit;
  font-weight: 400;
  line-height: 24px;
}

.site-footer__bottom {
  min-height: 72px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.site-footer__bottom p {
  margin: 0;
  color: rgba(255, 255, 255, 0.36);
  font-family: var(--font-number);
  font-size: inherit;
  font-weight: 400;
  line-height: 24px;
}

.site-footer__bottom nav {
  display: flex;
  align-items: center;
  gap: 14px;
}

.site-footer__bottom a {
  color: rgba(255, 255, 255, 0.4);
  font-size: inherit;
  font-weight: 400;
  line-height: 24px;
  transition: color 160ms ease;
}

.site-footer__record-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.site-footer__record-link img {
  width: 20px;
  height: 20px;
  flex: 0 0 20px;
  object-fit: contain;
}

.site-footer__record-divider {
  color: rgba(255, 255, 255, 0.24);
}

.mobile-navigation__panels,
.mobile-navigation__panel--primary,
.mobile-navigation__content--primary {
  display: contents;
}

.mobile-navigation__panel--products,
.mobile-navigation__panel--about,
.mobile-navigation__panel--language,
.mobile-language-trigger,
.mobile-navigation__chevron {
  display: none;
}

@media (min-width: 981px) and (max-width: 1600px) {
  .primary-nav {
    gap: 8px;
  }

  .primary-nav .ai-agent-nav-entry + .nav-pill[data-nav-id="cloud-platform"] {
    margin-left: 0;
  }

  .nav-pill {
    padding: 0 9px;
    font-size: 14px;
  }

  .nav-pill--utility-fui {
    padding: 0 13px;
  }

  .site .primary-nav .ai-agent-nav-entry {
    min-width: 92px;
    padding: 0 12px;
    font-size: 12px;
  }

  .language-switcher {
    min-width: 62px;
    gap: 6px;
    font-size: 13px;
  }
}

@media (min-width: 981px) and (max-width: 1400px) {
  .site-header {
    width: calc(100% - 48px);
  }

  .primary-nav {
    margin-left: 24px;
  }

  .language-switcher--desktop {
    margin-left: 8px;
  }
}

@media (min-width: 981px) and (max-width: 1200px) {
  .site-header {
    width: calc(100% - 32px);
  }

  .primary-nav {
    gap: 4px;
    margin-left: 12px;
  }

  .nav-pill {
    padding: 0 4px;
    font-size: 13px;
  }

  .site .primary-nav .ai-agent-nav-entry {
    min-width: 80px;
    padding: 0 4px;
    font-size: 11px;
  }

  .language-switcher {
    min-width: 56px;
    gap: 4px;
    font-size: 12px;
  }

  .language-switcher--desktop {
    margin-left: 4px;
  }
}

@media (max-width: 1480px) {
  .product-detail-grid {
    grid-template-columns: repeat(3, 329px);
  }
}

@media (max-width: 1200px) {
  .primary-nav {
    width: auto;
    gap: 4px;
    transform: none;
  }

  .nav-pill {
    padding: 0 4px;
    font-size: 13px;
  }

  .language-switcher {
    min-width: 56px;
    gap: 4px;
    font-size: 12px;
  }

  .mega-menu__inner {
    width: min(1120px, calc(100% - 48px));
  }

  .contact-content__inner {
    grid-template-columns: 1fr;
    gap: 56px;
  }

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

  .investor-content__inner {
    grid-template-columns: 1fr;
  }

  .news-featured {
    grid-template-columns: 375px minmax(0, 1fr);
  }

  .news-featured__media {
    width: 375px;
    height: 210px;
  }

  .news-list-item {
    grid-template-columns: 300px minmax(0, 1fr);
  }

  .news-list-item__media {
    width: 300px;
    height: 168px;
  }

  .news-list-item__more {
    grid-column: 2;
    justify-self: start;
    margin-top: 12px;
  }

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

  .product-detail-card {
    width: 100%;
    min-width: 0;
  }

  .product-detail-card p {
    width: auto;
  }

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

@media (max-width: 980px) {
  :root {
    --site-header-height: 72px;
    --product-filter-height: 56px;
  }

  .site-header {
    width: calc(100% - 48px);
    height: var(--site-header-height);
    grid-template-columns: 140px 92px 1fr 44px;
  }

  .inner-page-hero {
    height: auto;
  }

  .inner-page-hero__inner {
    padding: 72px 0;
  }

  .menu-toggle {
    display: inline-flex;
    grid-column: 4;
    justify-self: end;
  }

  .language-switcher--desktop {
    display: none;
  }

  .primary-nav {
    position: fixed;
    z-index: 95;
    top: var(--site-header-height);
    right: 0;
    left: 0;
    width: 100%;
    height: calc(100svh - var(--site-header-height));
    height: calc(100dvh - var(--site-header-height));
    display: none;
    max-height: none;
    overflow: hidden;
    border-top: 1px solid rgba(1, 25, 13, 0.08);
    background: #ffffff;
    margin-left: 0;
    padding: 0;
    box-shadow: none;
    transform: none;
  }

  .primary-nav .ai-agent-nav-entry,
  .primary-nav .nav-pill[data-nav-id="cloud-platform"] {
    margin-left: 0;
  }

  .primary-nav .nav-pill[data-nav-id="cloud-platform"] {
    font-weight: 700;
  }

  .nav-dock-indicator {
    display: none;
  }

  .primary-nav--open {
    display: block;
    animation: mobile-navigation-enter 240ms cubic-bezier(0.22, 1, 0.36, 1) both;
  }

  .mobile-navigation__panels {
    width: 400%;
    height: 100%;
    display: flex;
    transform: translateX(0);
    transition: transform 260ms cubic-bezier(0.22, 1, 0.36, 1);
    will-change: transform;
  }

  .mobile-navigation__panels--products {
    transform: translateX(-25%);
  }

  .mobile-navigation__panels--about {
    transform: translateX(-50%);
  }

  .mobile-navigation__panels--language {
    transform: translateX(-75%);
  }

  .mobile-navigation__panel {
    width: 25%;
    height: 100%;
    flex: 0 0 25%;
    display: flex;
    flex-direction: column;
    overflow-y: auto;
    padding: 24px 28px calc(28px + env(safe-area-inset-bottom));
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
  }

  .mobile-navigation__content {
    width: min(100%, 720px);
    display: flex;
    flex-direction: column;
    margin: 0 auto;
  }

  .nav-pill {
    width: 100%;
    min-height: 72px;
    height: auto;
    justify-content: space-between;
    border: 0;
    border-bottom: 1px solid #dfe7e2;
    border-radius: 0;
    background: transparent;
    padding: 0 26px;
    color: #0c1a12;
    font-size: 20px;
    font-weight: 700;
    line-height: 28px;
    transition: background-color 160ms ease, color 160ms ease;
  }

  .mobile-language-trigger {
    display: flex;
  }

  .mobile-navigation__content--primary > .nav-pill:first-child {
    border-top: 1px solid #dfe7e2;
  }

  .primary-nav--hover-enabled .nav-pill:not(.nav-pill--active):hover,
  .primary-nav .nav-pill:not(.nav-pill--active):focus-visible {
    border: 0;
    border-bottom: 1px solid #dfe7e2;
    background: transparent;
    padding: 0 26px;
    color: #008d47;
    outline: 0;
  }

  .primary-nav .nav-pill:not(.nav-pill--active):focus-visible {
    box-shadow: inset 0 0 0 2px #008d47;
  }

  .nav-pill__arrow {
    display: none;
  }

  .mobile-navigation__chevron {
    width: 12px;
    height: 12px;
    flex: 0 0 auto;
    display: block;
    background: currentColor;
    transform: rotate(-90deg);
    mask: url("data:image/svg+xml,%3csvg%20width='10'%20height='10'%20viewBox='0%200%2010%2010'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M9%202.82471L5%207.01184L1%202.82471'%20stroke='currentColor'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/svg%3e") center / contain no-repeat;
    -webkit-mask: url("data:image/svg+xml,%3csvg%20width='10'%20height='10'%20viewBox='0%200%2010%2010'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M9%202.82471L5%207.01184L1%202.82471'%20stroke='currentColor'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/svg%3e") center / contain no-repeat;
  }

  .primary-nav .nav-pill--active,
  .primary-nav .nav-pill--active:hover,
  .primary-nav .nav-pill--active:focus-visible,
  .primary-nav .nav-pill--active.nav-pill--open,
  .primary-nav .nav-pill--active.nav-pill--open:hover,
  .primary-nav .nav-pill--active.nav-pill--open:focus-visible {
    min-height: 64px;
    margin: 4px 0;
    border: 0;
    border-radius: 12px;
    background: #008d47;
    padding: 0 26px;
    color: #ffffff;
  }

  .mega-menu,
  .about-popover,
  .language-popover {
    display: none;
  }

  .mobile-navigation__heading {
    display: grid;
    gap: 22px;
    padding-bottom: 18px;
  }

  .mobile-navigation__heading h2 {
    margin: 0;
    color: #0c1a12;
    font-size: 28px;
    font-weight: 700;
    line-height: 38px;
  }

  .mobile-navigation__back {
    width: fit-content;
    min-height: 40px;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    border: 0;
    background: transparent;
    padding: 0;
    color: #526159;
    font-size: 16px;
    font-weight: 700;
  }

  .mobile-navigation__back:hover,
  .mobile-navigation__back:focus-visible {
    color: #008d47;
    outline: 0;
  }

  .mobile-navigation__back:focus-visible {
    box-shadow: 0 2px 0 #008d47;
  }

  .mobile-navigation__back-icon {
    width: 12px;
    height: 12px;
    transform: rotate(90deg);
  }

  .mobile-products__item {
    width: 100%;
    min-height: 72px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    border: 0;
    border-bottom: 1px solid #dfe7e2;
    border-radius: 0;
    background: transparent;
    padding: 0 26px;
    color: #0c1a12;
    font-size: 18px;
    font-weight: 700;
    line-height: 26px;
    text-align: left;
  }

  .mobile-products {
    display: block;
  }

  .mobile-about-menu {
    display: block;
  }

  .mobile-language-menu {
    display: block;
  }

  .mobile-products__item:not(.mobile-products__item--active):hover,
  .mobile-products__item:not(.mobile-products__item--active):focus-visible {
    background: transparent;
    color: #008d47;
    outline: 0;
  }

  .mobile-products__item:not(.mobile-products__item--active):focus-visible {
    box-shadow: inset 0 0 0 2px #008d47;
  }

  .mobile-products__item--active {
    min-height: 64px;
    margin: 4px 0;
    border: 0;
    border-radius: 12px;
    background: #008d47;
    padding: 0 26px;
    color: #ffffff;
  }

  .mobile-products__item--active:focus-visible {
    box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.8);
    outline: 0;
  }

  .mobile-navigation__consultation {
    width: fit-content;
    min-width: 148px;
    min-height: 52px;
    margin-top: 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    border-radius: var(--button-radius);
    background: #008d47;
    padding: 0 18px;
    color: #ffffff;
    font-size: 16px;
    font-weight: 700;
  }

  .mobile-navigation__consultation:hover,
  .mobile-navigation__consultation:focus-visible {
    background: #006f38;
    outline: 0;
  }

  .mobile-navigation__consultation:focus-visible {
    box-shadow: 0 0 0 3px rgba(0, 141, 71, 0.24);
  }

  .page-scrim {
    z-index: 89;
    top: 72px;
    background: rgba(6, 11, 20, 0.46);
  }

  .page-scrim--mobile-navigation {
    display: none;
  }

  .hero {
    height: var(--home-hero-height);
    min-height: var(--home-hero-height);
  }

  .home-news-layout,
  .site-footer__top {
    grid-template-columns: 1fr;
  }

  .product-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .product-card {
    min-height: 0;
    display: grid;
    grid-template-columns: minmax(300px, 0.92fr) minmax(0, 1.08fr);
  }

  .product-card__media {
    height: auto;
    align-self: stretch;
    aspect-ratio: auto;
    margin: 8px 0 8px 8px;
  }

  .product-card__content {
    min-height: 0;
  }

  .product-card__content > p {
    min-height: 0;
  }

  .site-footer__top {
    gap: 40px;
  }

  .site-footer__inner {
    min-height: 0;
  }

  .site-footer__top {
    padding: 56px 0 40px;
  }

  .site-footer__brand {
    width: auto;
  }

  .footer-links {
    grid-column: auto;
  }

  .site-footer__bottom {
    align-items: flex-start;
    flex-direction: column;
    gap: 16px;
    padding: 24px 0;
  }

  .contact-page {
    scroll-margin-top: 72px;
  }

  .placeholder-hero {
    min-height: auto;
  }

  .placeholder-hero__inner {
    padding: 72px 0;
  }

  .placeholder-content {
    padding: 64px 0;
  }

  .placeholder-content__inner {
    grid-template-columns: 1fr;
  }

  .products-page {
    scroll-margin-top: 72px;
  }

  .news-content__inner {
    width: min(100% - 48px, 1400px);
  }

  .news-detail-content__inner {
    padding: 20px 0 0;
  }

  .news-featured,
  .news-list-item {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .news-featured__media,
  .news-list-item__media {
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
  }

  .news-list-item {
    min-height: auto;
  }

  .news-list-item__body {
    height: auto;
    padding: 14px 0 0;
  }

  .news-list-item__more {
    grid-column: auto;
    margin-top: 0;
  }

  .news-list-item__body h2 {
    white-space: normal;
  }

  .news-pagination {
    grid-template-columns: 1fr;
    justify-items: center;
  }

  .news-pagination p:last-child {
    justify-self: center;
  }

  .product-filter {
    height: var(--product-filter-height);
    overflow: visible;
  }

  .product-filter__bar {
    width: 100%;
    height: var(--product-filter-height);
    background: #f5f5f5;
  }

  .product-filter__scroller {
    width: 100%;
    height: var(--product-filter-height);
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
  }

  .product-filter__inner {
    width: max-content;
    min-width: 100%;
    height: var(--product-filter-height);
    padding: 0 16px;
    gap: 8px;
    flex-wrap: nowrap;
  }

  .product-filter__item,
  .product-filter__item:nth-child(1),
  .product-filter__item:nth-child(2),
  .product-filter__item:nth-child(3),
  .product-filter__item:nth-child(4),
  .product-filter__item:nth-child(5) {
    flex: 0 0 auto;
    width: auto;
    height: 36px;
    padding: 0 14px;
    font-size: 14px;
    font-weight: 700;
    line-height: 20px;
  }

  .product-filter__search {
    flex: 0 0 40px;
    width: 40px;
    height: 40px;
    margin-left: 0;
    background: #ffffff;
    border-color: rgba(1, 25, 13, 0.12);
  }

  .product-detail-grid,
  .mobile-product-browser__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
    align-items: start;
  }

  .product-detail-card,
  .products-page--english .product-detail-card {
    width: 100%;
    min-width: 0;
    height: auto;
    min-height: 0;
    display: grid;
    grid-template-columns: min(34%, 180px) minmax(0, 1fr);
    gap: 8px 12px;
    align-items: start;
    padding: 12px;
    border-color: rgba(0, 0, 0, 0.12);
    transition: none;
    will-change: auto;
  }

  .product-detail-card__media {
    width: 100%;
    grid-column: 1;
    grid-row: 1 / span 2;
    align-self: stretch;
    min-height: 0;
    aspect-ratio: auto;
    overflow: hidden;
    margin: 0;
  }

  .product-detail-card__media img {
    position: absolute;
    inset: 0;
    object-fit: cover;
  }

  .mobile-product-browser__card--image-bleed .product-detail-card__media img {
    inset: -2px;
    width: calc(100% + 4px);
    height: calc(100% + 4px);
    max-width: none;
  }

  .product-detail-card h3 {
    grid-column: 2;
    min-width: 0;
    display: block;
    overflow: visible;
    margin: 0;
    font-size: 16px;
    font-weight: 700;
    line-height: 22px;
    text-overflow: clip;
    white-space: normal;
    line-break: strict;
    word-break: normal;
    overflow-wrap: break-word;
    -webkit-line-clamp: unset;
  }

  .product-detail-card p,
  .products-page--english .product-detail-card p {
    grid-column: 2;
    min-width: 0;
    width: auto;
    height: auto;
    min-height: 0;
    margin: 0;
    display: -webkit-box;
    overflow: hidden;
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    line-break: strict;
    word-break: normal;
    overflow-wrap: break-word;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
  }

  .mobile-product-browser {
    min-width: 0;
  }

  .product-detail-content__inner {
    padding-top: 20px;
  }

  .product-detail-content__inner--measurement {
    padding-top: 0;
  }

  .mobile-product-browser__measurement {
    position: sticky;
    top: calc(var(--site-header-height) + var(--product-filter-height));
    z-index: 70;
    width: 100%;
    min-height: 44px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin: 0 0 20px;
    background: #ffffff;
    border-bottom: 1px solid rgba(1, 25, 13, 0.12);
  }

  .mobile-product-browser__measurement-tab {
    position: relative;
    z-index: 1;
    min-width: 0;
    min-height: 44px;
    border: 0;
    background: transparent;
    padding: 0 12px;
    color: #000000;
    font-size: 14px;
    font-weight: 700;
    line-height: 20px;
  }

  .mobile-product-browser__measurement-tab--active {
    color: #008d47;
  }

  .mobile-product-browser__measurement-tab:focus-visible {
    box-shadow: inset 0 0 0 2px #008d47;
    outline: 0;
  }

  .mobile-product-browser__measurement-indicator {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 50%;
    height: 2px;
    background: #008d47;
    pointer-events: none;
    transform: translateX(0);
    transition: transform 220ms ease;
  }

  .mobile-product-browser--measurement-products .mobile-product-browser__measurement-indicator {
    transform: translateX(100%);
  }

  .mobile-product-browser__content {
    min-width: 0;
    overflow: hidden;
  }

  .mobile-product-browser__directory {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }

  .mobile-product-browser__module {
    width: 100%;
    min-height: 44px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto 14px;
    align-items: center;
    gap: 12px;
    border: 0;
    border-bottom: 1px solid rgba(1, 25, 13, 0.12);
    border-radius: 0;
    background: transparent;
    padding: 10px 4px;
    color: #000000;
    text-align: left;
  }

  .mobile-product-browser__module-copy {
    min-width: 0;
    display: grid;
    gap: 4px;
  }

  .mobile-product-browser__module:first-child {
    padding-top: 0;
  }

  .mobile-product-browser__module-title {
    min-width: 0;
    font-size: 16px;
    font-weight: 700;
    line-height: 22px;
    line-break: strict;
    word-break: normal;
    overflow-wrap: break-word;
  }

  .mobile-product-browser__module-summary {
    min-width: 0;
    color: #a6aeba;
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    line-break: strict;
    word-break: normal;
    overflow-wrap: break-word;
  }

  .mobile-product-browser__module-count {
    color: #a6aeba;
    font-size: 12px;
    font-weight: 400;
    line-height: 18px;
    white-space: nowrap;
  }

  .mobile-product-browser .mobile-product-browser__module .icon-arrow--right {
    color: #008d47;
    transform: none;
    transition: none;
  }

  .mobile-product-browser__module:focus-visible {
    outline: 2px solid #008d47;
    outline-offset: -2px;
  }

  .mobile-product-browser__detail-heading {
    display: grid;
    gap: 8px;
    margin: 0 0 20px;
  }

  .mobile-product-browser__detail-copy {
    display: grid;
    gap: 4px;
  }

  .mobile-product-browser__detail-heading h2 {
    margin: 0;
    color: #000000;
    font-size: 16px;
    font-weight: 700;
    line-height: 22px;
  }

  .mobile-product-browser__back {
    width: fit-content;
    min-height: 44px;
    border: 0;
    background: transparent;
    padding: 0;
    color: #008d47;
    font-size: 14px;
    font-weight: 700;
    line-height: 20px;
  }

  .mobile-product-browser__back:focus-visible {
    outline: 2px solid #008d47;
    outline-offset: -2px;
  }

  .mobile-product-browser__card:focus-visible {
    outline: 2px solid #008d47;
    outline-offset: -2px;
  }

  .mobile-product-browser-enter-active,
  .mobile-product-browser-leave-active {
    transition: transform 220ms ease, opacity 220ms ease;
  }

  .mobile-product-browser-enter-from {
    opacity: 0;
    transform: translateX(20px);
  }

  .mobile-product-browser-leave-to {
    opacity: 0;
    transform: translateX(-20px);
  }

  .mobile-product-browser--backward .mobile-product-browser-enter-from {
    transform: translateX(-20px);
  }

  .mobile-product-browser--backward .mobile-product-browser-leave-to {
    transform: translateX(20px);
  }
}

@media (max-width: 620px) {
  .site-header {
    width: min(100% - 40px, 1400px);
    grid-template-columns: 126px 1fr 44px;
  }

  .brand,
  .brand__asset {
    width: 126px;
    height: 45px;
  }

  .brand__logo {
    width: 126px;
    height: 45px;
  }

  .stock-code {
    display: none;
  }

  .menu-toggle {
    grid-column: 3;
  }

  .primary-nav {
    width: 100%;
  }

  .mobile-navigation__panel {
    padding: 18px 20px calc(24px + env(safe-area-inset-bottom));
  }

  .nav-pill,
  .mobile-products__item {
    min-height: 58px;
    font-size: 18px;
    line-height: 26px;
  }

  .mobile-navigation__heading {
    gap: 16px;
    padding-bottom: 14px;
  }

  .mobile-navigation__heading h2 {
    font-size: 24px;
    line-height: 34px;
  }

  .section__inner {
    width: min(100% - 40px, 1280px);
  }

  .hero {
    margin-bottom: 24px;
  }

  .inner-page-hero__inner,
  .placeholder-hero__inner,
  .placeholder-content__inner,
  .product-detail-content__inner,
  .product-intro-content__inner,
  .investor-content__inner,
  .contact-content__inner {
    width: min(100% - 40px, 1400px);
  }

  .news-detail-breadcrumb {
    height: 56px;
    margin-top: 16px;
  }

  .news-detail-breadcrumb__inner {
    width: min(100% - 48px, 1400px);
    height: 56px;
    gap: 10px;
  }

  .news-detail-content__inner {
    width: min(100% - 48px, 766px);
    padding: 0;
  }

  .news-detail-article__header {
    margin-top: 20px;
    padding-bottom: 0;
  }

  .news-detail-article:not(.news-detail-article--with-pager) {
    padding-bottom: 64px;
  }

  .news-detail-article__meta {
    flex-wrap: wrap;
    gap: 10px 14px;
    margin-top: 14px;
  }

  .news-detail-article__body {
    margin-top: 29px;
  }

  .news-detail-placeholder-media span {
    height: auto;
    aspect-ratio: 560 / 265;
  }

  .news-detail-pager {
    width: calc(100vw - 48px);
    max-width: calc(100vw - 48px);
    align-items: flex-start;
    flex-direction: row;
    justify-content: space-between;
    gap: 20px;
    margin-top: 40px;
    margin-bottom: 56px;
    padding-top: 24px;
  }

  .news-detail-pager__item {
    width: calc((100% - 20px) / 2);
    min-width: 0;
    gap: 10px;
  }

  .news-detail-pager__item--next {
    align-self: auto;
  }

  .news-detail-pager__icon {
    flex: 0 0 36px;
  }

  .news-detail-pager__text {
    width: auto;
    min-width: 0;
    flex: 1 1 auto;
  }

  .news-detail-pager__text small {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .news-detail-pager__text strong {
    word-break: break-all;
  }

  .news-detail-article__body p,
  .news-detail-article--empty p {
    font-size: 16px;
    line-height: 30px;
  }

  .product-detail-heading {
    height: auto;
    display: grid;
    gap: 6px;
  }

  .product-detail-heading span {
    margin: 0;
    white-space: normal;
  }

  .product-detail-card {
    width: 100%;
  }

  .product-detail-card__media {
    width: 100%;
  }

  .product-intro-content__inner {
    padding: 42px 0 64px;
  }

  .product-intro-panel {
    padding: 28px 24px 32px;
  }

  .product-intro-panel__eyebrow {
    display: grid;
    gap: 6px;
  }

  .product-intro-panel h2 {
    font-size: 28px;
    line-height: 36px;
  }

  .product-intro-panel > p:not(.product-intro-panel__eyebrow) {
    font-size: 16px;
    line-height: 28px;
  }

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

  .contact-form__grid {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .contact-type {
    margin: 24px 0;
  }

  .contact-type__options {
    gap: 10px;
  }

  .contact-type__option {
    flex: 1 1 calc(50% - 10px);
    min-width: 130px;
  }

  .home-section-title h2 {
    font-size: 32px;
    line-height: 40px;
  }

  .home-section-title p {
    margin-top: var(--content-heading-description-gap);
    font-size: 16px;
    line-height: 26px;
  }

  .product-grid {
    grid-template-columns: 1fr;
    margin-top: 40px;
  }

  .product-card {
    min-height: 0;
    display: flex;
    grid-template-columns: none;
  }

  .product-card__media {
    height: auto;
    aspect-ratio: 436 / 230;
    margin: 6px 6px 0;
  }

  .product-card__content {
    min-height: 254px;
    padding: 24px;
  }

  .home-news-layout {
    gap: 24px;
    margin-top: var(--content-heading-content-gap);
  }

  .home-news-featured {
    padding-top: 0;
  }

  .home-news-featured__media {
    height: 240px;
  }

  .home-news-featured__content {
    padding-top: 20px;
  }

  .home-news-compact {
    gap: 16px;
    padding: 20px 0;
  }

  .home-news-compact__more {
    margin-right: 0;
  }

  .site-footer__inner {
    width: min(100% - 40px, 1400px);
  }

  .footer-links {
    grid-template-columns: 1fr;
    gap: 32px;
  }

  .site-footer__bottom nav {
    flex-wrap: wrap;
  }
}

@media (max-width: 520px) {
  .home-news-compact {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .home-news-compact__more {
    justify-self: start;
  }
}

@keyframes mobile-navigation-enter {
  from {
    opacity: 0;
    transform: translateX(24px);
  }

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

@media (prefers-reduced-motion: reduce) {
  .primary-nav--open {
    animation: none;
  }

  .menu-toggle span {
    transition: none;
  }

  .mobile-navigation__panels {
    transition: none;
  }
}
.product-analytics-marker {
  display: block;
  width: 1px;
  height: 1px;
  pointer-events: none;
}

html[lang='en'] :is(
  .home-section-title > p,
  .product-card__content > p,
  .home-contact-cta__copy > p,
  .about-section-title > p,
  .about-overview__copy--english > p,
  .about-value-card p,
  .about-history__events li,
  .news-featured__body > p,
  .news-list-item__body > p,
  .news-detail-article__body p,
  .news-detail-section-block p,
  .news-detail-rich-list li,
  .privacy-policy-document p,
  .privacy-policy-document li,
  .career-section-heading > p,
  .career-talent-pool > p,
  .product-intro-placeholder > p,
  .placeholder-card > span
) {
  line-height: var(--english-body-line-height);
}

html[lang='en'] .products-page--english .product-detail-card > p {
  font-size: 14px;
  line-height: 22px;
}

@media (max-width: 980px) {
  html[lang='en'] .products-page--english .product-detail-card > p {
    font-size: 14px;
    line-height: 20px;
  }

  .product-intro-page,
  .product-intro-page .array-product-detail {
    --content-section-padding-top: 32px;
    --content-section-padding-bottom: 32px;
    --content-section-edge-padding-top: 32px;
    --content-section-edge-padding-bottom: 32px;
    --content-heading-content-gap: 16px;
  }

  .product-intro-page .array-product-detail .array-product-section__heading {
    margin-bottom: 16px;
  }

  .product-intro-page .array-product-detail .array-product-section__heading h2 {
    font-size: 18px;
    line-height: 26px;
  }

  .product-intro-page .array-product-detail .array-product-section__heading > p {
    font-size: 12px;
    line-height: 18px;
  }

  .product-intro-page .product-intro-hero {
    height: auto;
    min-height: 0;
  }

  .product-intro-page .product-intro-hero .inner-page-hero__inner {
    min-height: 0;
    padding: 28px 0;
    gap: 16px;
  }

  .product-intro-page .product-intro-hero .banner-copy-motion h1 {
    margin-top: 8px;
    font-size: 24px;
    line-height: 32px;
    letter-spacing: 0;
    white-space: normal;
    line-break: strict;
    word-break: normal;
    overflow-wrap: break-word;
  }

  .product-intro-page .product-intro-hero .products-kicker {
    font-size: 12px;
    line-height: 18px;
  }

  .product-intro-page .product-intro-hero .products-hero__inner > p:last-child,
  .product-intro-page .product-intro-hero .product-intro-calibration-hero__overview {
    margin-top: 12px;
    font-size: 14px;
    line-height: 22px;
    letter-spacing: 0;
  }

  .product-intro-page .product-intro-hero .product-intro-calibration-hero__media img {
    height: auto;
    max-height: 160px;
    object-fit: contain;
    transform: none;
  }
}

@media (max-width: 360px) {
  .product-detail-card__media {
    grid-row: 1;
    align-self: start;
    aspect-ratio: 4 / 3;
  }

  .product-detail-card h3 {
    align-self: center;
  }

  .product-detail-card p,
  .products-page--english .product-detail-card p {
    grid-column: 1 / -1;
  }
}

@media (prefers-reduced-motion: reduce) {
  .mobile-product-browser__measurement-indicator,
  .mobile-product-browser-enter-active,
  .mobile-product-browser-leave-active {
    transition: none;
  }

  .mobile-product-browser-enter-from,
  .mobile-product-browser-leave-to,
  .mobile-product-browser--backward .mobile-product-browser-enter-from,
  .mobile-product-browser--backward .mobile-product-browser-leave-to {
    opacity: 1;
    transform: none;
  }
}

html[lang='en'] .products-page--english :is(h1, h2, h3, p, a, button, label, input, span:not([aria-hidden='true'])) {
  letter-spacing: 1px;
}

html[lang='en'] :is(
  .home-news-featured__content > p,
  .home-news-compact__content > p
) {
  line-height: var(--english-compact-body-line-height);
}

html[lang='en'] .array-product-detail--english :is(p, li, td, th, dt, dd) {
  line-height: 24px;
}

html[lang='en'] .array-product-detail--english :is(
  .array-product-overview__copy p,
  .complex-software-application-audience p,
  .complex-software-application-audience li,
  .array-product-feature__text,
  .complex-software-feature-list p,
  .calibration-reference-list span,
  .calibration-table th,
  .calibration-table td,
  .array-product-function-list p,
  .array-product-application-list strong,
  .array-product-spec-table th,
  .array-product-spec-table td
) {
  line-height: 26px;
  letter-spacing: 1px;
}

html[lang='en']
  .array-product-detail--english.array-product-detail--calibration-unified
  :is(.calibration-reference-list span, .calibration-table th, .calibration-table td) {
  line-height: 24px;
}

html[lang='en']
  .array-product-detail--english.array-product-detail--calibration-unified
  .calibration-reference-list li::before {
  top: 10px;
}

@media (max-width: 620px) {
  html[lang='en'] .array-product-detail--english :is(
    .array-product-overview__copy p,
    .complex-software-application-audience p,
    .complex-software-application-audience li,
    .complex-software-feature-list p,
    .calibration-reference-list span,
    .calibration-table th,
    .calibration-table td,
    .array-product-function-list p,
    .array-product-application-list strong,
    .array-product-spec-table th,
    .array-product-spec-table td
  ) {
    line-height: 24px;
  }
}

/* Shared mobile type and spacing standard. Desktop declarations remain above. */
@media (max-width: 980px) {
  :root {
    --home-hero-height: max(590px, calc(95svh - var(--site-header-height)));
    --content-section-padding-top: 32px;
    --content-section-padding-bottom: 32px;
    --content-section-edge-padding-top: 32px;
    --content-section-edge-padding-bottom: 32px;
    --content-heading-description-gap: 12px;
    --content-heading-content-gap: 16px;
  }

  .home-page,
  .about-page,
  .career-page,
  .contact-page,
  .news-page,
  .products-page,
  .product-intro-page,
  .placeholder-page,
  .investor-page,
  .home-contact-cta {
    --english-body-line-height: 22px;
    --english-banner-body-line-height: 22px;
  }

  .inner-page-hero,
  .placeholder-hero,
  .banner-hero--english.placeholder-hero {
    height: auto;
    min-height: 0;
  }

  .inner-page-hero__inner,
  .placeholder-hero__inner {
    min-height: 0;
    padding: 28px 0;
  }

  .inner-page-hero h1,
  .placeholder-hero h1,
  .products-hero h1,
  .news-hero h1,
  .investor-hero h1,
  .contact-hero h1,
  .banner-hero--english.inner-page-hero .banner-copy-motion h1,
  .banner-hero--english.placeholder-hero .banner-copy-motion h1 {
    margin-top: 8px;
    font-size: 24px;
    line-height: 32px;
    letter-spacing: 0;
    white-space: normal;
    line-break: strict;
    overflow-wrap: break-word;
  }

  .products-kicker,
  .news-kicker,
  .investor-kicker,
  .contact-kicker,
  .placeholder-kicker {
    font-size: 12px;
    line-height: 18px;
  }

  .products-hero__inner > p:last-child,
  .news-hero__inner > p:last-child,
  .investor-hero__inner > p:last-child,
  .contact-hero__inner > p:last-child,
  .placeholder-hero__inner > p:last-child,
  .banner-hero--english.inner-page-hero .banner-copy-motion > p:last-child,
  .banner-hero--english.placeholder-hero .banner-copy-motion > p:last-child {
    margin-top: 12px;
    font-size: 14px;
    line-height: 22px;
    letter-spacing: 0;
  }

  .home-section-title h2,
  .home-contact-cta__copy h2,
  .contact-form h2,
  .contact-info h2,
  .investor-panel__header h2,
  .mobile-navigation__heading h2,
  .product-intro-panel h2,
  .product-intro-related h2,
  .news-detail-article--empty h2 {
    font-size: 18px;
    line-height: 26px;
    letter-spacing: 0;
  }

  .product-card h3,
  .home-news-featured h3,
  .home-news-compact h3,
  .news-featured h2,
  .news-list-item__body h2,
  .contact-card h3,
  .placeholder-card h2,
  .footer-column h2,
  .product-intro-placeholder h3,
  .product-intro-related__item strong,
  .nav-pill,
  .mobile-products__item {
    font-size: 16px;
    line-height: 22px;
    letter-spacing: 0;
  }

  .home-section-title p,
  .product-card__content > p,
  .home-contact-cta__copy > p,
  .home-news-featured__content > p,
  .home-news-compact__content > p,
  .news-featured__body > p,
  .news-list-item__body > p,
  .contact-card__rows p,
  .placeholder-card > span,
  .footer-column a,
  .site-footer__brand p,
  .product-intro-panel > p:not(.product-intro-panel__eyebrow),
  .product-intro-placeholder > p,
  .product-intro-related__item span {
    font-size: 14px;
    line-height: 22px;
    letter-spacing: 0;
  }

  .news-meta time,
  .news-meta span,
  .news-list-item__body time,
  .home-news-featured time,
  .home-news-compact time,
  .contact-section-title span,
  .placeholder-card > p,
  .footer-follow__content p,
  .site-footer__bottom p,
  .site-footer__bottom a {
    font-size: 12px;
    line-height: 18px;
  }

  .home-contact-cta,
  .home-contact-cta__inner {
    height: auto;
    min-height: 0;
  }

  .home-contact-cta__inner {
    padding: 32px 0;
    gap: 16px;
  }

  .home-contact-cta__copy > p {
    margin-top: 12px;
  }

  .product-intro-panel > p:not(.product-intro-panel__eyebrow) {
    margin-top: 12px;
  }

  .product-card__content,
  .placeholder-card,
  .product-intro-panel,
  .product-intro-placeholder {
    min-height: 0;
    padding: 16px;
  }

  .product-card__content > p {
    min-height: 0;
  }

  .product-grid,
  .product-intro-placeholder {
    margin-top: 16px;
  }

  .home-news-layout,
  .placeholder-content__inner,
  .contact-form__grid,
  .contact-card-list,
  .investor-content__inner,
  .investor-side,
  .product-intro-related__list {
    gap: 16px;
  }

  .home-news-featured__content {
    padding-top: 16px;
  }

  .home-news-compact {
    padding-block: 16px;
  }

  .news-featured,
  .news-list-item {
    gap: 16px;
  }

  .news-list-item {
    padding-block: 16px;
  }

  .news-list-item__body {
    padding-top: 0;
  }

  .contact-content__inner {
    gap: 32px;
  }

  .contact-form label,
  .contact-form label > span {
    font-size: 14px;
    line-height: 22px;
  }

  .contact-form input,
  .contact-form textarea,
  .product-search__input {
    font-size: 16px;
    line-height: 24px;
  }

  .contact-card {
    padding-block: 16px;
  }

  .contact-card h3,
  .contact-card__rows {
    padding-inline: 16px;
  }

  .contact-card h3 {
    margin-inline: 0;
    margin-bottom: 12px;
  }

  .contact-card__rows p {
    padding-inline: 0;
  }

  .investor-panel__header {
    height: auto;
    min-height: 56px;
    padding: 16px;
  }

  .placeholder-content,
  .product-intro-content__inner {
    padding: 32px 0;
  }

  .product-intro-related {
    margin-top: 32px;
  }

  .product-intro-related__item {
    min-height: 0;
    padding: 16px;
  }

  .site-footer__top {
    padding: 32px 0;
    gap: 24px;
  }

  .footer-links {
    gap: 16px;
  }

  .footer-column h2 {
    margin-bottom: 12px;
  }

  .product-intro-page .array-product-detail :is(.array-product-overview__copy p, .array-product-feature__text, .complex-software-feature-list p, .complex-software-application-audience, .complex-software-application-audience p, .complex-software-application-audience li, .array-product-function-list p, .array-product-application-list strong, .calibration-reference-list span) {
    font-size: 14px;
    line-height: 22px;
    letter-spacing: 0;
  }

  .product-intro-page .calibration-reference-group__heading h2 {
    font-size: 18px;
    line-height: 26px;
  }

  .product-intro-page .array-product-detail .calibration-reference-group__heading p {
    font-size: 12px;
    line-height: 18px;
  }

  .product-intro-page .array-product-feature-grid article {
    min-height: 0;
    padding: 16px;
  }

  .product-intro-page .calibration-reference-combined {
    gap: 16px;
  }

  .product-intro-page .array-product-detail :is(.calibration-table th, .calibration-table td, .array-product-spec-table th, .array-product-spec-table td) {
    padding-inline: 12px;
    font-size: 14px;
    line-height: 22px;
  }

  html[lang='en'] .product-intro-page .array-product-detail--english :is(.array-product-overview__copy p, .array-product-feature__text, .complex-software-feature-list p, .complex-software-application-audience, .complex-software-application-audience p, .complex-software-application-audience li, .array-product-function-list p, .array-product-application-list strong, .calibration-reference-list span, .calibration-table th, .calibration-table td, .array-product-spec-table th, .array-product-spec-table td) {
    font-size: 14px;
    line-height: 22px;
    letter-spacing: 0;
  }

  html[lang='en'] .product-intro-page .array-product-detail--english.array-product-detail--calibration-unified :is(.calibration-reference-list span, .calibration-table th, .calibration-table td) {
    font-size: 14px;
    line-height: 22px;
    letter-spacing: 0;
  }

  .product-intro-page .array-product-detail--calibration-unified #functional-characteristics.calibration-reference-group .calibration-reference-list span {
    font-size: 14px;
    line-height: 22px;
  }

  html[lang='en'] .products-page--english :is(h1, h2, h3, p, a, button, label, input, span:not([aria-hidden='true'])) {
    letter-spacing: 0;
  }

  /* Long-form reading keeps its own body scale and existing media rhythm. */
  .news-detail-article__header h1,
  .privacy-policy-document-header h2 {
    font-size: 24px;
    line-height: 32px;
  }

  .news-detail-article__meta time,
  .news-detail-article__meta span,
  .news-detail-breadcrumb__inner a,
  .news-detail-breadcrumb__inner button,
  .news-detail-breadcrumb__inner span,
  .privacy-policy-document-header__meta {
    font-size: 12px;
    line-height: 18px;
  }

  .news-detail-page,
  .privacy-policy-page {
    --english-body-line-height: 28px;
  }

  .news-detail-page .news-detail-feature-title {
    width: fit-content;
    max-width: 100%;
    grid-template-columns: 23px minmax(0, 1fr) 23px;
    column-gap: 12px;
  }

  .news-detail-page .news-detail-feature-title strong {
    width: auto;
    min-width: 0;
    max-width: 100%;
    font-size: 18px;
    line-height: 26px;
    white-space: pre-line;
    line-break: strict;
    word-break: normal;
    overflow-wrap: break-word;
    text-align: center;
  }

  .news-detail-article__body p,
  .news-detail-section-block p,
  .news-detail-rich-list,
  .news-detail-rich-list li,
  .privacy-policy-document {
    font-size: 16px;
    line-height: 28px;
  }

  .privacy-policy-content__inner {
    padding: 32px 0;
  }

  .privacy-policy-document-header {
    padding-bottom: 16px;
  }

  .privacy-policy-document {
    padding-top: 24px;
  }

  .privacy-policy-index h2,
  .privacy-policy-section h2 {
    font-size: 18px;
    line-height: 26px;
  }

  .privacy-policy-section h3 {
    font-size: 16px;
    line-height: 22px;
  }

  .privacy-policy-index,
  .privacy-policy-notice {
    padding: 16px;
  }

  .privacy-policy-section {
    margin-top: 32px;
  }
}

.ai-agent-nav-entry[data-v-990fddfb] {
  min-width: 112px;
  padding: 0 18px;
  gap: 8px;
  color: #171717;
  font-family: var(--font-mono);
  font-size: 13px;
  letter-spacing: .04em;
}
.ai-agent-nav-entry__mark[data-v-990fddfb] {
  width: 16px;
  height: 18px;
  flex: 0 0 16px;
  object-fit: contain;
}
.ai-agent-layer[data-v-990fddfb] {
  --ai-agent-ink: #171717;
  --ai-agent-text: #303030;
  --ai-agent-muted: #767676;
  --ai-agent-border: #dedede;
  --ai-agent-surface: #f5f5f5;
  --ai-agent-surface-hover: #eeeeee;
  --ai-agent-backdrop: rgba(0, 0, 0, .36);
  --ai-agent-focus-ring: rgba(0, 0, 0, .12);
  --ai-agent-shadow: 0 24px 70px rgba(0, 0, 0, .16);
  position: fixed;
  z-index: 220;
  inset: 0;
  pointer-events: none;
}
.ai-agent-scrim[data-v-990fddfb] {
  position: absolute;
  inset: 0;
  display: none;
  border: 0;
  border-radius: 0;
  background: var(--ai-agent-backdrop);
  pointer-events: auto;
}
.ai-agent-panel[data-v-990fddfb] {
  position: fixed;
  right: 24px;
  bottom: 24px;
  width: min(440px, calc(100vw - 32px));
  height: min(720px, calc(100dvh - 96px));
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  overflow: hidden;
  border: 1px solid var(--ai-agent-border);
  border-radius: 18px;
  background: #ffffff;
  box-shadow: var(--ai-agent-shadow);
  pointer-events: auto;
  transition:
    width 220ms cubic-bezier(.22, 1, .36, 1),
    height 220ms cubic-bezier(.22, 1, .36, 1);
  animation: ai-agent-panel-enter-990fddfb 200ms cubic-bezier(.22, 1, .36, 1) both;
}
.ai-agent-panel--expanded[data-v-990fddfb] {
  width: min(600px, calc(100vw - 48px));
  height: min(860px, calc(100dvh - 32px));
}
.ai-agent-panel__header[data-v-990fddfb] {
  min-height: 64px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  border-bottom: 1px solid var(--ai-agent-border);
  background: #ffffff;
  padding: 0 16px;
  color: var(--ai-agent-ink);
}
.ai-agent-panel__header--history[data-v-990fddfb] {
  min-height: 72px;
}
.ai-agent-panel__header--history .ai-agent-panel__tools[data-v-990fddfb] {
  margin-left: auto;
}
.ai-agent-panel__heading[data-v-990fddfb],
.ai-agent-panel__tools[data-v-990fddfb] {
  display: flex;
  align-items: center;
}
.ai-agent-panel__heading[data-v-990fddfb] {
  min-width: 0;
  gap: 8px;
}
.ai-agent-panel__heading h2[data-v-990fddfb] {
  overflow: hidden;
  margin: 0;
  font-size: 18px;
  font-weight: 700;
  line-height: 24px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.ai-agent-panel__tools[data-v-990fddfb] {
  gap: 2px;
}
.ai-agent-panel__clear[data-v-990fddfb] {
  min-height: 30px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  padding: 0 8px;
  color: var(--ai-agent-muted);
  font-size: 12px;
  line-height: 18px;
}
.ai-agent-panel__clear[data-v-990fddfb]:hover,
.ai-agent-panel__clear[data-v-990fddfb]:focus-visible {
  background: var(--ai-agent-surface);
  color: var(--ai-agent-ink);
  outline: 0;
}
.ai-agent-icon-button[data-v-990fddfb] {
  width: 34px;
  height: 34px;
  display: inline-grid;
  flex: 0 0 34px;
  place-items: center;
  border: 0;
  border-radius: 50%;
  background: transparent;
  padding: 0;
  color: var(--ai-agent-muted);
}
.ai-agent-icon-button[data-v-990fddfb]:hover,
.ai-agent-icon-button[data-v-990fddfb]:focus-visible {
  background: var(--ai-agent-surface);
  color: var(--ai-agent-ink);
  outline: 0;
}
.ai-agent-panel__stream[data-v-990fddfb] {
  overflow-y: auto;
  overflow-anchor: none;
  padding: 22px 18px 28px;
  scrollbar-gutter: stable both-edges;
  overscroll-behavior: contain;
}
.ai-agent-intro[data-v-990fddfb] {
  margin-bottom: 20px;
  color: var(--ai-agent-text);
}
.ai-agent-intro p[data-v-990fddfb] {
  margin: 0;
  font-size: 15px;
  line-height: 26px;
}
.ai-agent-message[data-v-990fddfb] {
  width: fit-content;
  max-width: 90%;
  margin: 0 0 12px;
  border-radius: 14px 14px 14px 4px;
  background: var(--ai-agent-surface);
  padding: 11px 13px;
  color: var(--ai-agent-text);
}
.ai-agent-message--user[data-v-990fddfb] {
  margin-left: auto;
  border-radius: 14px 14px 4px 14px;
  background: #333333;
  color: #ffffff;
}
.ai-agent-message p[data-v-990fddfb] {
  margin: 0;
  font-size: 14px;
  line-height: 24px;
  white-space: pre-wrap;
}
.ai-agent-quick[data-v-990fddfb] {
  margin: 0 0 18px;
}
.ai-agent-quick > p[data-v-990fddfb] {
  margin: 0 0 10px;
  color: var(--ai-agent-muted);
  font-size: 12px;
}
.ai-agent-quick > div[data-v-990fddfb],
.ai-agent-message__suggestions[data-v-990fddfb],
.ai-agent-message__links[data-v-990fddfb],
.ai-agent-feedback > div[data-v-990fddfb] {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.ai-agent-quick button[data-v-990fddfb],
.ai-agent-message__suggestions button[data-v-990fddfb],
.ai-agent-message__links button[data-v-990fddfb],
.ai-agent-feedback button[data-v-990fddfb] {
  min-height: 34px;
  border: 2px solid var(--ai-agent-border);
  border-radius: 12px;
  background: #ffffff;
  padding: 6px 10px;
  color: var(--ai-agent-text);
  font-size: 12px;
  line-height: 18px;
  text-align: left;
}
.ai-agent-quick button[data-v-990fddfb]:hover,
.ai-agent-message__suggestions button[data-v-990fddfb]:hover,
.ai-agent-message__links button[data-v-990fddfb]:hover,
.ai-agent-feedback button[data-v-990fddfb]:hover {
  border-color: var(--ai-agent-ink);
}
.ai-agent-quick button[data-v-990fddfb]:focus-visible,
.ai-agent-message__suggestions button[data-v-990fddfb]:focus-visible,
.ai-agent-message__links button[data-v-990fddfb]:focus-visible,
.ai-agent-feedback button[data-v-990fddfb]:focus-visible {
  border-color: var(--ai-agent-ink);
  outline: 0;
}
.ai-agent-message__links[data-v-990fddfb],
.ai-agent-message__suggestions[data-v-990fddfb],
.ai-agent-feedback[data-v-990fddfb],
.ai-agent-contact[data-v-990fddfb] {
  margin-top: 10px;
}
.ai-agent-feedback > p[data-v-990fddfb] {
  margin-bottom: 7px;
  color: var(--ai-agent-muted);
  font-size: 12px;
  line-height: 18px;
}
.ai-agent-contact[data-v-990fddfb] {
  min-height: 34px;
  border: 0;
  border-radius: 999px;
  background: var(--ai-agent-ink);
  padding: 7px 12px;
  color: #ffffff;
  font-size: 12px;
  font-weight: 700;
}
.ai-agent-loading[data-v-990fddfb] {
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--ai-agent-muted);
  font-size: 13px;
}
.ai-agent-loading > span[data-v-990fddfb] {
  display: flex;
  gap: 3px;
}
.ai-agent-loading i[data-v-990fddfb] {
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: var(--ai-agent-ink);
  animation: ai-agent-dot-990fddfb 900ms ease-in-out infinite alternate;
}
.ai-agent-loading i[data-v-990fddfb]:nth-child(2) {
  animation-delay: 120ms;
}
.ai-agent-loading i[data-v-990fddfb]:nth-child(3) {
  animation-delay: 240ms;
}
.ai-agent-loading p[data-v-990fddfb],
.ai-agent-error[data-v-990fddfb] {
  margin: 0;
}
.ai-agent-error[data-v-990fddfb] {
  margin-top: 12px;
  border-radius: 10px;
  background: #fff3f3;
  padding: 10px 12px;
  color: #963d45;
  font-size: 12px;
  line-height: 20px;
}
.ai-agent-error > div[data-v-990fddfb] {
  display: flex;
  gap: 14px;
  margin-top: 6px;
}
.ai-agent-error button[data-v-990fddfb] {
  border: 0;
  border-bottom: 1px solid currentColor;
  background: transparent;
  padding: 0;
  color: inherit;
  font: inherit;
  font-weight: 700;
}
.ai-agent-panel__composer[data-v-990fddfb] {
  border-top: 1px solid var(--ai-agent-border);
  background: #ffffff;
  padding: 12px 14px 10px;
}
.ai-agent-panel__input[data-v-990fddfb] {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 38px;
  align-items: center;
  gap: 8px;
  border: 1px solid var(--ai-agent-border);
  border-radius: 16px;
  background: #ffffff;
  padding: 8px;
}
.ai-agent-panel__input[data-v-990fddfb]:focus-within {
  border-color: var(--ai-agent-ink);
  box-shadow: 0 0 0 3px var(--ai-agent-focus-ring);
}
.ai-agent-panel__input textarea[data-v-990fddfb] {
  min-height: 52px;
  max-height: 96px;
  resize: none;
  border: 0;
  outline: 0;
  padding: 3px;
  color: var(--ai-agent-text);
  font-family: var(--font-ui);
  font-size: 14px;
  line-height: 21px;
}
.ai-agent-panel__input textarea[data-v-990fddfb]::placeholder {
  color: var(--ai-agent-muted);
}
.ai-agent-panel__input > button[data-v-990fddfb] {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border: 0;
  border-radius: 12px;
  background: var(--ai-agent-ink);
  padding: 0;
  color: #ffffff;
}
.ai-agent-panel__input > button[data-v-990fddfb]:disabled {
  cursor: not-allowed;
  opacity: .3;
}
.ai-agent-panel__input > button[data-v-990fddfb]:hover,
.ai-agent-panel__input > button[data-v-990fddfb]:focus-visible {
  background: var(--ai-agent-ink);
}
.ai-agent-panel__composer > p[data-v-990fddfb] {
  margin: 13px 2px 6px 10px;
  color: var(--ai-agent-muted);
  font-size: 13px;
  line-height: 20px;
}
.ai-agent-history[data-v-990fddfb] {
  min-height: 0;
  overflow-y: auto;
  padding: 0 0 24px;
  scrollbar-gutter: stable both-edges;
  overscroll-behavior: contain;
}
.ai-agent-history__list[data-v-990fddfb] {
  margin: 0;
  padding: 0;
  list-style: none;
}
.ai-agent-history__list li[data-v-990fddfb] {
  position: relative;
  border-bottom: 1px solid var(--ai-agent-border);
  padding: 0;
}
.ai-agent-history__item[data-v-990fddfb] {
  width: 100%;
  min-height: 72px;
  display: grid;
  grid-template-columns: 26px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  border: 0;
  border-radius: 0;
  background: transparent;
  padding: 8px 10px;
  text-align: left;
}
.ai-agent-history__item[data-v-990fddfb]:hover,
.ai-agent-history__item[data-v-990fddfb]:focus-visible {
  background: var(--ai-agent-surface);
  outline: 0;
}
.ai-agent-history__avatar[data-v-990fddfb] {
  width: 26px;
  height: 26px;
  display: block;
  object-fit: contain;
}
.ai-agent-history__content[data-v-990fddfb] {
  min-width: 0;
  display: grid;
  gap: 0;
}
.ai-agent-history__title[data-v-990fddfb],
.ai-agent-history__preview[data-v-990fddfb] {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.ai-agent-history__title[data-v-990fddfb] {
  color: var(--ai-agent-text);
  font-size: 14px;
  font-weight: 700;
  line-height: 20px;
}
.ai-agent-history__preview[data-v-990fddfb] {
  color: var(--ai-agent-muted);
  font-size: 14px;
  line-height: 22px;
}
.ai-agent-history__time[data-v-990fddfb] {
  align-self: start;
  justify-self: end;
  margin: 0;
  color: var(--ai-agent-muted);
  font-size: 13px;
  line-height: 20px;
  white-space: nowrap;
}
.ai-agent-history__delete[data-v-990fddfb] {
  position: absolute;
  right: 10px;
  bottom: 10px;
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  border: 0;
  border-radius: 12px;
  background: transparent;
  color: var(--ai-agent-muted);
  opacity: 0;
}
.ai-agent-history__list li:hover .ai-agent-history__delete[data-v-990fddfb],
.ai-agent-history__delete[data-v-990fddfb]:focus-visible {
  opacity: 1;
}
.ai-agent-history__delete[data-v-990fddfb]:hover {
  background: #fff0f0;
  color: #a83e46;
}
.ai-agent-history__state[data-v-990fddfb] {
  margin: 80px 0 0;
  color: var(--ai-agent-muted);
  font-size: 13px;
  text-align: center;
}
.ai-agent-history__state--error[data-v-990fddfb] {
  color: #963d45;
}
.ai-agent-history__footer[data-v-990fddfb] {
  display: grid;
  place-items: center;
  border-top: 1px solid var(--ai-agent-border);
  padding: 16px;
}
.ai-agent-history__footer button[data-v-990fddfb] {
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  border: 1px solid var(--ai-agent-border);
  border-radius: 999px;
  background: #ffffff;
  padding: 8px 18px;
  color: var(--ai-agent-ink);
  font-size: 13px;
  font-weight: 700;
  box-shadow: 0 8px 24px rgba(0, 0, 0, .08);
}
@keyframes ai-agent-panel-enter-990fddfb {
from {
    opacity: 0;
    transform: translateY(12px) scale(.99);
}
to {
    opacity: 1;
    transform: translateY(0) scale(1);
}
}
@keyframes ai-agent-dot-990fddfb {
to {
    opacity: .28;
    transform: translateY(-2px);
}
}
@media (max-width: 1200px) and (min-width: 981px) {
.ai-agent-nav-entry[data-v-990fddfb] {
    min-width: 92px;
    padding: 0 12px;
    font-size: 12px;
}
}
@media (max-width: 980px) {
.ai-agent-nav-entry[data-v-990fddfb] {
    width: 100%;
    min-width: 0;
    min-height: 72px;
    justify-content: flex-start;
    gap: 12px;
    border: 0;
    border-bottom: 1px solid #dfe7e2;
    border-radius: 0;
    background: transparent;
    padding: 0 26px;
    color: #171717;
    font-family: var(--font-ui);
    font-size: 16px;
    font-weight: 700;
    line-height: 22px;
    letter-spacing: 0;
}
.ai-agent-nav-entry__mark[data-v-990fddfb] {
    display: block;
}
.ai-agent-nav-entry .mobile-navigation__chevron[data-v-990fddfb] {
    margin-left: auto;
}
.ai-agent-panel__heading h2[data-v-990fddfb],
  .ai-agent-history__title[data-v-990fddfb] {
    font-size: 16px;
    line-height: 22px;
}
.ai-agent-intro p[data-v-990fddfb],
  .ai-agent-message > p[data-v-990fddfb] {
    font-size: 14px;
    line-height: 22px;
}
.ai-agent-panel__input textarea[data-v-990fddfb] {
    font-size: 16px;
    line-height: 24px;
}
.ai-agent-history__time[data-v-990fddfb],
  .ai-agent-panel__composer > p[data-v-990fddfb] {
    font-size: 12px;
    line-height: 18px;
}
.ai-agent-panel__header[data-v-990fddfb] {
    padding: 0 12px;
}
.ai-agent-panel__stream[data-v-990fddfb] {
    padding: 16px 12px;
}
.ai-agent-panel__composer[data-v-990fddfb] {
    padding-right: 12px;
    padding-left: 12px;
}
}
@media (max-width: 640px) {
.ai-agent-scrim[data-v-990fddfb] {
    display: block;
}
.ai-agent-panel[data-v-990fddfb] {
    inset: 8px;
    width: auto;
    height: auto;
    max-height: none;
    border-radius: 16px;
}
.ai-agent-panel--expanded[data-v-990fddfb] {
    width: auto;
    height: auto;
}
.ai-agent-panel__header[data-v-990fddfb] {
    min-height: 60px;
}
.ai-agent-panel__composer[data-v-990fddfb] {
    padding-bottom: max(10px, env(safe-area-inset-bottom));
}
.ai-agent-history[data-v-990fddfb] {
    padding-right: 0;
    padding-left: 0;
}
.ai-agent-history__delete[data-v-990fddfb] {
    opacity: 1;
}
}
@media (prefers-reduced-motion: reduce) {
.ai-agent-panel[data-v-990fddfb],
  .ai-agent-loading i[data-v-990fddfb] {
    transition: none;
    animation: none;
}
}
