:root {
  --body-size: 17px;
  --reading-ink: #b6bfce;
  --reading-soft: #96a5bc;
  --science-blue: #a7c9ff;
  --science-mint: #8bdfc1;
  --science-amber: #e8bf87;
  --surface-panel: #0f1620;
  --surface-panel-soft: #0d131c;
  --line-subtle: #ffffff18;
  --line-strong: #ffffff2e;
  --focus-ring: #bfd8ff;
  --field-bg: #080c12;
  --field-error: #f1af98;
  --field-error-bg: #291714;
  --field-disabled: #111722;
}

body {
  font-size: var(--body-size);
}
body.page-home main p,
body.page-inner main p {
  font-size: var(--body-size);
  line-height: 1.75;
  color: var(--reading-ink);
}
body main :is(p, li) {
  overflow-wrap: break-word;
}
body main :is(h1, h2, h3) {
  text-wrap: balance;
}
body main em {
  color: #b2c6e2;
}
.container {
  width: min(1280px, calc(100% - 80px));
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}
body .button,
body .text-link {
  font-size: 14px;
  line-height: 1.5;
  min-height: 44px;
  gap: 16px;
}
body .button {
  padding: 14px 20px;
  min-height: 50px;
}
body .button:hover {
  transform: none;
}
body .text-link {
  align-items: center;
  width: fit-content;
  max-width: 100%;
  white-space: nowrap;
}
body .text-link svg {
  flex: 0 0 auto;
}
.page-home .mono,
.page-inner .mono,
.page-home .badge,
.page-inner .badge {
  font-size: 12px;
  line-height: 1.6;
}
body.page-inner main p.fine-print,
body.page-home main p.fine-print {
  font-size: 14px;
}
:focus-visible {
  outline: 2px solid #bfd8ff;
  outline-offset: 4px;
}
body .fine-print,
body .fine-print a,
body .citation {
  color: #b0bfd5;
}
body .citation {
  font-size: 12px;
}

/* Keep the familiar dark navigation without shrinking labels to fit. */
.floating-bar {
  width: min(1440px, calc(100% - 48px));
  gap: 16px;
}
.glass-nav {
  gap: 0;
  padding: 6px;
}
.nav-overview,
.nav-trigger {
  font-size: 14px;
  padding: 13px 15px;
  gap: 8px;
}
.floating-demo {
  font-size: 14px;
  padding: 13px 17px;
  gap: 12px;
  min-height: 48px;
}
.mega-bottom {
  font-size: 12px;
}
.mega-copy > p,
.mega-link small,
.mega-feature-cta,
.mega-bottom a {
  font-size: 14px;
}
.mega-link strong {
  font-size: 16px;
}
.mega-link {
  padding-block: 15px;
}
/* Short desktop windows keep a five-peer dropdown such as Industries on screen: tighter rows and
   headings, with every link still well above the 44 px target. */
@media (min-width: 1001px) and (max-height: 820px) {
  .mega-copy {
    padding-top: 24px;
  }
  .mega-copy h2 {
    margin-bottom: 8px;
  }
  .mega-copy > p {
    margin-bottom: 12px;
  }
  .mega-link {
    padding-block: 8px;
  }
  .mega-bottom {
    padding-block: 10px;
  }
}
.mega-feature > img,
.mega-feature:hover > img {
  height: 240px;
  object-fit: contain;
  transform: none;
  margin: 15px 0;
  width: 100%;
}
.mega-panel {
  width: min(900px, calc(100vw - 80px));
}
.mega-feature > .mega-workstation-render,
.mega-feature:hover > .mega-workstation-render {
  object-fit: cover;
  border-radius: 10px;
}
.mobile-nav-toggle {
  background: #111721;
  border-color: #ffffff35;
  color: #e4ecfa;
}

.pharma-hero {
  padding: 170px 0 76px;
  border-bottom: 1px solid var(--line);
  background:
    radial-gradient(ellipse at 85% 5%, #244b7836, transparent 60%),
    radial-gradient(ellipse at 0 0, #7d675c24, transparent 50%);
}
.pharma-hero-grid {
  display: grid;
  grid-template-columns: 0.93fr 1.07fr;
  align-items: start;
  gap: 52px;
}
.pharma-hero-copy {
  min-width: 0;
  padding-top: 30px;
}
.pharma-hero h1 {
  font-size: clamp(52px, 5vw, 76px);
  line-height: 1.04;
  letter-spacing: -0.055em;
  margin: 27px 0;
}
body.page-home main .pharma-lead {
  color: #e3e9f3;
  font-size: 23px;
  line-height: 1.5;
  max-width: 480px;
}
.pharma-hero-copy > p {
  max-width: 490px;
}
.pharma-hero .button-row {
  margin-top: 28px;
  gap: 12px;
}
.hero-assurances {
  display: flex;
  flex-wrap: wrap;
  gap: 14px 20px;
  color: #b0bfd2;
  font-size: 13px;
  margin-top: 27px;
}
.hero-assurances > span {
  display: flex;
  align-items: center;
  gap: 7px;
}
.hero-assurances svg {
  width: 16px;
  height: 16px;
  color: var(--science-mint);
}
.provider-promise {
  display: flex;
  align-items: flex-start;
  gap: 13px;
  padding: 19px 20px;
  margin: 25px 0 0;
  border: 1px solid #8bdfc14a;
  border-radius: 12px;
  background: #12312d45;
}
.provider-promise > svg {
  width: 21px;
  height: 21px;
  color: #ade3d3;
  margin-top: 3px;
}
.provider-promise strong {
  display: block;
  color: #d9f0e7;
  font-size: 16px;
  line-height: 1.55;
}
.provider-promise span {
  display: block;
  margin-top: 7px;
  color: #b6c8c7;
  font-size: 14px;
  line-height: 1.65;
}
.sovereign-hero {
  position: relative;
  min-height: 790px;
  padding: 145px 0 70px;
  overflow: hidden;
  background:
    radial-gradient(ellipse at 82% 42%, #17355666 0%, #0b111c40 34%, transparent 66%),
    linear-gradient(145deg, #07090d 0%, #080b10 58%, #0a1018 100%);
}
.sovereign-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, #ffffff04 1px, transparent 1px),
    linear-gradient(#ffffff03 1px, transparent 1px);
  background-size: 88px 88px;
  mask-image: linear-gradient(90deg, transparent, #000 68%, transparent);
  opacity: 0.35;
}
.sovereign-hero .matrix-hero-grid {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 0.82fr) minmax(0, 1.28fr);
  gap: clamp(24px, 3vw, 48px);
  align-items: center;
  min-height: 575px;
}
.sovereign-hero .pharma-hero-copy {
  position: relative;
  z-index: 3;
  width: auto;
  padding-top: 0;
}
.sovereign-hero h1 {
  min-width: 0;
  margin: 0 0 28px;
  font-size: clamp(55px, 4.5vw, 68px);
  letter-spacing: -0.045em;
  overflow-wrap: anywhere;
}
.sovereign-hero .pharma-hero-copy h1 {
  color: #f5f7fa;
}
.sovereign-hero .pharma-hero-copy h1 em {
  color: #a8bdd8;
  background: none;
  -webkit-text-fill-color: currentColor;
}
body.page-home main .sovereign-hero .pharma-lead {
  color: #d0dae7;
  font-size: 21px;
  max-width: 520px;
}
.matrix-product-composite {
  position: relative;
  min-width: 0;
  min-height: 600px;
  margin: 0;
  padding-block: 88px 24px;
  isolation: isolate;
}
.matrix-product-composite::before {
  content: none;
}
.matrix-product-composite::after {
  content: none;
}
.matrix-hero-hardware {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1;
  width: 100%;
  height: 640px;
  pointer-events: none;
}
.matrix-hero-hardware,
.matrix-hero-hardware img {
  display: block;
}
.matrix-hero-hardware img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: right top;
  opacity: 0.82;
  filter: brightness(0.88) saturate(0.92) drop-shadow(0 40px 52px #000b)
    drop-shadow(0 0 30px #4a8fbd28);
}
.matrix-workspace-window {
  position: relative;
  z-index: 2;
  width: 84%;
  overflow: hidden;
  border: 1px solid #9cbce348;
  border-radius: 18px;
  background: linear-gradient(145deg, #172231f0, #090d14f7 62%), #090d14;
  box-shadow: 0 24px 64px #0008;
  backdrop-filter: blur(18px);
}
.workspace-topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 56px;
  padding: 12px 16px;
  border-bottom: 1px solid #ffffff13;
  color: #aebed2;
  font: 11px/1.4 var(--mono);
  letter-spacing: 0.03em;
}
.workspace-brand,
.workspace-status,
.workspace-file {
  display: inline-flex;
  align-items: center;
}
.workspace-brand {
  gap: 8px;
  color: #eef5ff;
}
.workspace-brand > span:last-child {
  display: flex;
  flex-direction: column;
  gap: 1px;
}
.workspace-brand strong {
  color: #eef5ff;
  font-family: var(--sans);
  font-size: 13px;
  font-weight: 540;
  letter-spacing: 0;
}
.workspace-brand small {
  color: #9aadc5;
  font: 11px/1.3 var(--mono);
  letter-spacing: 0.04em;
}
.workspace-brand .brand-mark,
.workspace-response-avatar .brand-mark {
  width: 17px;
  height: 17px;
  grid-template-columns: repeat(3, 4px);
  grid-template-rows: repeat(3, 4px);
  gap: 2px;
}
.workspace-brand .brand-mark i,
.workspace-response-avatar .brand-mark i {
  width: 4px;
  height: 4px;
}
.workspace-status {
  gap: 7px;
  color: #b8dfd2;
}
.workspace-status > i {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #7bd3b6;
}
.workspace-layout {
  display: grid;
  grid-template-columns: 150px minmax(0, 1fr);
  min-height: 360px;
}
.workspace-sidebar {
  display: flex;
  flex-direction: column;
  gap: 5px;
  padding: 12px 10px 16px;
  border-right: 1px solid #ffffff10;
  background: #080c12a8;
  color: #a2b3c9;
  font-size: 11px;
}
.workspace-sidebar > :is(strong, span:not(.workspace-label):not(.workspace-new-chat)) {
  display: block;
  padding: 8px 9px;
  border-radius: 7px;
  font-weight: 500;
}
.workspace-sidebar > strong {
  color: #e8f1fd;
  background: #ffffff09;
}
.workspace-label {
  margin: 8px 8px 4px;
  color: #a0b2ca;
  font: 11px/1.5 var(--mono);
  letter-spacing: 0.04em;
}
.workspace-new-chat {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 34px;
  padding: 6px 9px;
  border: 1px solid #ffffff18;
  border-radius: 8px;
  color: #dce7f5;
  background: #ffffff05;
  font-size: 11px;
  font-weight: 520;
}
.workspace-new-chat > i {
  color: #bad6f5;
  font-style: normal;
  font-size: 15px;
  line-height: 1;
}
.workspace-sidebar small {
  margin-top: auto;
  padding: 12px 8px 0;
  border-top: 1px solid #ffffff10;
  color: #a6c4b9;
  font: 11px/1.55 var(--mono);
  text-transform: uppercase;
}
.workspace-main {
  display: flex;
  min-width: 0;
  flex-direction: column;
  background: #0a0f17e8;
}
.workspace-thread {
  display: flex;
  flex-direction: column;
  min-height: 302px;
  padding: 20px 20px 16px;
}
.workspace-thread-label {
  color: #a1b5cf;
  font: 11px/1.5 var(--mono);
  letter-spacing: 0.04em;
}
.workspace-request {
  align-self: flex-end;
  width: min(82%, 310px);
  margin-top: 14px;
  padding: 12px 14px;
  border-radius: 15px;
  background: #1c2d42;
  box-shadow: inset 0 1px 0 #ffffff09;
}
.workspace-file {
  gap: 6px;
  color: #c7dbf6;
  font: 11px/1.4 var(--mono);
}
.workspace-file svg {
  width: 13px;
  height: 13px;
}
body.page-home main .workspace-request p {
  margin: 7px 0 0;
  color: #eff5fd;
  font-size: 13px;
  line-height: 1.55;
}
.workspace-response {
  display: grid;
  grid-template-columns: 25px minmax(0, 1fr);
  gap: 10px;
  width: 100%;
  margin-top: 17px;
}
.workspace-response-avatar {
  display: grid;
  width: 25px;
  height: 25px;
  place-items: center;
  border: 1px solid #8bbaf23d;
  border-radius: 50%;
  background: #142236;
  color: #b9d4f4;
}
.workspace-response-avatar .brand-mark {
  width: 11px;
  height: 11px;
  grid-template-columns: repeat(3, 3px);
  grid-template-rows: repeat(3, 3px);
  gap: 1px;
}
.workspace-response-avatar .brand-mark i {
  width: 3px;
  height: 3px;
}
.workspace-response-copy {
  min-width: 0;
}
.workspace-response-label {
  display: block;
  color: #abc2df;
  font: 11px/1.4 var(--mono);
  letter-spacing: 0.04em;
}
body.page-home main .workspace-response-copy > p {
  margin: 5px 0 8px;
  color: #dce5f1;
  font-size: 13px;
  line-height: 1.5;
}
.workspace-response-copy > strong {
  display: block;
  color: #f1f6fd;
  font-size: 14px;
  font-weight: 590;
  line-height: 1.45;
}
.workspace-response-copy ul {
  display: grid;
  gap: 5px;
  margin: 5px 0 7px;
  padding-left: 15px;
  color: #aebccd;
  font-size: 13px;
  line-height: 1.55;
}
.workspace-response-copy li::marker {
  color: #739dcc;
}
.workspace-response-copy b {
  color: #e3edf9;
  font-weight: 560;
}
.workspace-response-copy small {
  display: block;
  color: #a2b3c8;
  font-size: 11px;
}
.workspace-composer {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 48px;
  margin: auto 15px 13px;
  padding: 7px 8px;
  border: 1px solid #ffffff20;
  border-radius: 15px;
  background: #111721;
  color: #a6b7cd;
  font-size: 12px;
  box-shadow:
    0 10px 30px #0005,
    inset 0 1px 0 #ffffff08;
}
.workspace-composer > span:nth-child(2) {
  min-width: 0;
  flex: 1;
  padding-inline: 2px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.workspace-composer-add {
  display: grid;
  width: 27px;
  height: 27px;
  flex: 0 0 auto;
  place-items: center;
  border: 1px solid #ffffff1c;
  border-radius: 50%;
  color: #c7d7e9;
  font-size: 15px;
}
.workspace-composer-file {
  display: grid;
  width: 27px;
  height: 27px;
  flex: 0 0 auto;
  place-items: center;
  color: #9aabc0;
}
.workspace-composer-file svg {
  width: 14px;
  height: 14px;
}
.workspace-composer > i {
  display: grid;
  width: 29px;
  height: 29px;
  flex: 0 0 auto;
  place-items: center;
  border-radius: 50%;
  background: #c6dcf4;
  color: #162335;
  font-style: normal;
}
.workspace-composer > i svg {
  width: 15px;
  height: 15px;
}
.sample-label {
  display: inline-flex;
  padding: 6px 10px;
  border: 1px solid #e8bf873e;
  border-radius: 6px;
  font-size: 12px;
  line-height: 1.5;
  color: #e8cfab;
  background: #e8bf8708;
}
.science-chart {
  margin: 0;
  padding: 25px;
}
.science-chart figcaption {
  font-size: 17px;
  color: #ecf2fb;
  font-weight: 600;
  line-height: 1.5;
  margin-bottom: 8px;
}
.chart-unit,
.chart-axis-title {
  font-size: 13px;
  color: #bac8dc;
}
.chart-area {
  height: 200px;
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  margin-top: 15px;
}
.chart-y {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 4px 0;
  font: 12px/1.4 var(--mono);
  color: #aebbd0;
}
.chart-area svg {
  width: 100%;
  height: 200px;
  overflow: visible;
}
.chart-grid-line {
  stroke: #ffffff1c;
  stroke-width: 1;
}
.chart-line {
  fill: none;
  stroke-width: 2.5;
  vector-effect: non-scaling-stroke;
}
.chart-point {
  stroke-width: 6;
  stroke-linecap: round;
  vector-effect: non-scaling-stroke;
}
.series-0 {
  stroke: var(--science-blue);
  fill: var(--science-blue);
}
.series-1 {
  stroke: var(--science-mint);
  fill: var(--science-mint);
  stroke-dasharray: 7 5;
}
.series-2 {
  stroke: var(--science-amber);
  fill: var(--science-amber);
  stroke-dasharray: 2 5;
}
.chart-line,
.chart-point {
  fill: none;
}
.chart-point,
.chart-bar {
  stroke-dasharray: none;
}
.chart-x {
  display: flex;
  justify-content: space-between;
  margin: 9px 0 0 34px;
  padding-inline: 4px;
  font: 12px/1.5 var(--mono);
  color: #aebbd0;
  gap: 4px;
}
.chart-x-bar {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  text-align: center;
  padding-inline: 2%;
  gap: 0;
}
.chart-axis-title {
  text-align: center;
  margin: 9px 0 0 34px;
}
.chart-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 19px;
  margin-top: 18px;
  font-size: 13px;
  color: #d0dae9;
}
.chart-legend > span {
  display: flex;
  align-items: center;
  gap: 8px;
}
.legend-line {
  display: inline-block;
  width: 19px;
  height: 0;
  border-top: 2px solid var(--science-blue);
}
.legend-line.series-1 {
  border-color: var(--science-mint);
  border-top-style: dashed;
}
.legend-line.series-2 {
  border-color: var(--science-amber);
  border-top-style: dotted;
}
.labeled-scroll {
  overflow-x: auto;
  overscroll-behavior-x: contain;
  border: 1px solid #ffffff18;
  border-radius: 8px;
}
.science-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
  line-height: 1.5;
  text-align: left;
}
.science-table caption {
  text-align: left;
  padding: 14px 12px;
  color: #bdcce1;
  font-size: 14px;
}
.science-table :is(th, td) {
  padding: 12px;
  border-top: 1px solid #ffffff14;
}
.science-table th {
  color: #c6d3e6;
  font-weight: 500;
}
.science-table td {
  font-variant-numeric: tabular-nums;
  color: #f0f4fa;
}
.science-table thead {
  background: #ffffff04;
}
.missing-value {
  color: #ebc997;
}

.offering-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 30px;
  padding-block: 30px;
  border-bottom: 1px solid var(--line);
}
.offering-strip > div {
  display: flex;
  flex-direction: column;
  gap: 9px;
}
.offering-strip > div + div {
  padding-left: 30px;
  border-left: 1px solid var(--line);
}
.offering-strip span {
  font: 12px/1.5 var(--mono);
  color: var(--reading-soft);
  letter-spacing: 0.035em;
}
.offering-strip strong {
  font-size: 17px;
  font-weight: 500;
}
.solution-section {
  padding-block: 88px;
}
.solution-heading {
  max-width: 810px;
  margin-bottom: 38px;
}
.solution-heading h2,
.solution-split h2,
.pilot-target h2,
.appliance-section h2 {
  font-size: clamp(32px, 3.3vw, 49px);
  line-height: 1.15;
}
.solution-heading > p {
  max-width: 740px;
}
.local-solution-band {
  background: #0c111a;
  border-block: 1px solid #ffffff16;
  padding-block: 80px;
}
.solution-split {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 70px;
  align-items: start;
}
.local-flow {
  border: 1px solid #91bdeb55;
  background: #101b28;
  padding: 28px;
  border-radius: 16px;
  text-align: center;
}
.flow-boundary {
  display: block;
  font: 12px/1.6 var(--mono);
  color: #b5c9e3;
  margin-bottom: 23px;
}
.local-flow > div {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
}
.local-flow strong {
  font-size: 18px;
  font-weight: 500;
}
.local-flow > div > span {
  font-size: 14px;
  color: #acbdd4;
}
.local-flow svg {
  width: 24px;
  height: 24px;
  color: #b4d1f7;
}
.flow-arrow {
  display: block;
  margin: 11px;
  color: #8bdfc1;
}
body.page-home main .local-flow > p {
  font-size: 14px;
  margin: 23px 0 0;
}
.pilot-target {
  padding-block: 90px;
  display: grid;
  grid-template-columns: 0.72fr 1.28fr;
  gap: 70px;
  align-items: center;
  border-bottom: 1px solid var(--line);
}
.pilot-number {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.pilot-number > strong {
  font-size: clamp(100px, 11vw, 156px);
  line-height: 1.08;
  letter-spacing: -0.065em;
  font-weight: 500;
  color: #bbd5f6;
}
.pilot-number > strong > span {
  font-size: 0.43em;
  margin-left: 7px;
}
.pilot-number > span:last-child {
  font-size: 18px;
  margin-top: 12px;
  color: #c8d1df;
}
body main .claim-note {
  padding-left: 18px;
  border-left: 2px solid #e8bf8770;
  font-size: 15px;
}
.claim-note strong {
  color: #ead2ad;
}
.appliance-section {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 65px;
  align-items: center;
}
.appliance-photo {
  background: transparent;
  border: 0;
  border-radius: 0;
  overflow: visible;
}
.appliance-photo img {
  width: 100%;
  height: 510px;
  object-fit: contain;
  transform: none;
}
.appliance-photo > span {
  display: block;
  padding: 18px 0;
  font-size: 13px;
  color: #afbdd1;
  text-align: center;
}
.adjacent-sectors {
  padding-top: 20px;
}
.sector-links {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 25px;
}
.sector-links a {
  font-size: 23px;
  border-top: 1px solid #ffffff30;
  padding-top: 22px;
}
.sector-links span {
  display: block;
  color: #b0bed2;
  font-size: 15px;
  margin-top: 12px;
}
.sector-links a:hover {
  border-color: #b3d3ff;
}
body .faq-list summary {
  font-size: 17px;
  min-height: 60px;
}
body .faq-list details > p {
  font-size: 16px;
}

.featured-solution {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 65px;
  border: 1px solid #ffffff24;
  border-radius: 18px;
  padding: 45px;
  background: linear-gradient(135deg, #142135, #0b1018);
}
.featured-solution h2 {
  font-size: 43px;
}
.solution-deliverables {
  align-self: center;
  padding: 28px;
  border-left: 1px solid #8bdfc147;
}
.solution-deliverables > span {
  font: 12px/1.6 var(--mono);
  color: #aed1ca;
}
.solution-deliverables ol {
  padding-left: 22px;
  margin-bottom: 0;
}
.solution-deliverables li {
  padding: 10px 0;
  color: #c8d4e5;
}
.solution-stack {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  overflow: hidden;
  border: 1px solid #9bbce33d;
  border-radius: 16px;
  background: radial-gradient(circle at 45% 0, #294d7b2b, transparent 45%), #0e1622;
}
.solution-stack article {
  min-width: 0;
  padding: 27px 24px;
}
.solution-stack article + article {
  border-left: 1px solid #ffffff16;
}
.solution-stack span {
  color: #8fa9c9;
  font: 10px/1.5 var(--mono);
}
.solution-stack h3 {
  margin: 18px 0 10px;
  font-size: 23px;
}
.solution-stack p {
  margin: 0;
  color: #aebdd0;
  font-size: 15px;
  line-height: 1.65;
}
.delivery-path {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  margin: 24px 0 0;
  padding: 0;
  list-style: none;
}
.delivery-path li {
  position: relative;
  padding: 16px 22px 0 0;
  border-top: 1px solid #7897ba66;
}
.delivery-path li:not(:last-child)::after {
  content: '';
  position: absolute;
  top: -3px;
  right: 10px;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #9dc8f2;
}
.delivery-path span {
  display: block;
  color: #789cc5;
  font: 9px/1.4 var(--mono);
}
.delivery-path strong {
  display: block;
  margin-top: 8px;
  color: #e7eff9;
  font-size: 15px;
}
.delivery-path small {
  display: block;
  margin-top: 5px;
  color: #899aaf;
  font-size: 12px;
}
.sector-cards {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 28px;
}
.sector-cards article {
  border-top: 1px solid #ffffff28;
  padding-top: 25px;
  scroll-margin-top: 135px;
}
.sector-cards h3 {
  font-size: 25px;
  line-height: 1.3;
}
.industry-intro {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(360px, 0.8fr);
  gap: 70px;
  align-items: center;
  padding-block: 35px 85px;
  border-bottom: 1px solid var(--line);
}
.industry-intro h2 {
  margin: 20px 0;
  font-size: clamp(36px, 4vw, 54px);
  line-height: 1.1;
}
.industry-intro > div > p {
  max-width: 680px;
}
.industry-responsibility {
  padding: 30px;
  border: 1px solid #8bdfc13d;
  border-radius: 14px;
  background: #0f1a20;
}
.industry-responsibility > .mono {
  color: #87b9ad;
  font-size: 10px;
}
.industry-responsibility h3 {
  margin: 18px 0 12px;
  color: #edf6f3;
  font-size: 25px;
  line-height: 1.3;
}
.industry-responsibility p {
  margin: 0;
  color: #adbfbd;
  font-size: 15px;
  line-height: 1.75;
}
.industry-workflow-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 40px;
}
.industry-workflow-grid article {
  display: grid;
  min-width: 0;
  grid-template-rows: auto 1fr auto;
  gap: 24px;
  padding: 32px 0;
  border-top: 1px solid var(--line-strong);
}
.industry-workflow-grid .industry-workflow-lead {
  grid-column: 1 / -1;
  grid-template-columns: minmax(150px, 0.45fr) minmax(220px, 0.75fr) minmax(0, 1fr);
  grid-template-rows: auto;
  align-items: start;
  gap: clamp(28px, 5vw, 64px);
  padding-block: 38px 44px;
}
.industry-workflow-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  color: #91afd2;
  font: 11px/1.5 var(--mono);
}
.industry-workflow-topic {
  display: flex;
  max-width: 170px;
  align-items: center;
  gap: 10px;
}
.industry-workflow-topic svg {
  width: 22px;
  height: 22px;
  flex: 0 0 auto;
}
.industry-workflow-topic .mono {
  color: #809bbd;
  font-size: 11px;
}
.industry-workflow-grid h3 {
  margin: 0 0 11px;
  color: #eaf2fc;
  font-size: 24px;
}
.industry-workflow-copy > p {
  margin: 0;
  color: #a5b6ca;
  font-size: 15px;
  line-height: 1.7;
}
.industry-workflow-benefit strong,
.industry-workflow-benefit span {
  display: block;
}
.industry-workflow-benefit strong {
  color: #8099b8;
  font: 11px/1.5 var(--mono);
  text-transform: uppercase;
}
.industry-workflow-benefit span {
  margin-top: 7px;
  color: #d4e0ef;
  font-size: 14px;
  line-height: 1.55;
}
.industry-operating-band {
  padding-block: 82px;
  border-block: 1px solid #ffffff14;
  background: #0b1119;
}
.industry-operating .solution-heading {
  margin-bottom: 48px;
}
.industry-boundary-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 25px;
}
.industry-boundary-grid article {
  padding-top: 23px;
  border-top: 1px solid #ffffff2e;
}
.industry-boundary-grid h3 {
  margin: 0 0 12px;
  color: #e8f0fa;
  font-size: 21px;
}
.industry-boundary-grid p {
  margin: 0;
  color: #a4b5c9;
  font-size: 15px;
  line-height: 1.7;
}
.industry-pilot {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 45px;
  align-items: center;
  margin-top: 55px;
  padding: 32px;
  border: 1px solid #8bdfc13d;
  border-radius: 12px;
  background: #0d1b20;
}
.industry-pilot .mono {
  color: #82b5a9;
  font-size: 11px;
}
.industry-pilot h3 {
  margin: 13px 0 10px;
  color: #edf5f3;
  font-size: 28px;
}
.industry-pilot p {
  max-width: 760px;
  margin: 0;
  color: #aebfbd;
  font-size: 15px;
  line-height: 1.7;
}
.industry-pilot > div:last-child {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 14px;
}

.scenario-notice {
  padding: 21px 25px;
  border-left: 2px solid #b3cbe8;
  background: #152031;
  margin-bottom: 30px;
}
.case-panel {
  position: relative;
  padding-top: 40px;
  scroll-margin-top: 130px;
}
.case-panel + .case-panel {
  margin-top: 90px;
  padding-top: 90px;
  border-top: 1px solid var(--line);
}
.case-panel::before {
  content: attr(data-workflow-index) ' / 03';
  display: block;
  margin-bottom: 18px;
  color: #829fbe;
  font: 10px/1.5 var(--mono);
}
.case-heading {
  max-width: 900px;
  margin-bottom: 34px;
}
.case-heading h2 {
  font-size: clamp(32px, 3.3vw, 46px);
}
.case-heading > p {
  max-width: 780px;
}
.case-layout {
  display: grid;
  grid-template-columns: 0.85fr 1.15fr;
  gap: 48px;
  align-items: start;
}
.case-section {
  border-block: 1px solid var(--line);
  padding: 24px 0;
}
body.page-inner main .case-section-title {
  margin: 0 0 24px;
  color: #e6eef8;
  font-size: 18px;
  font-weight: 560;
}
.case-scope {
  align-self: start;
}
.case-acceptance {
  margin-top: 28px;
}
.case-narrative h3,
.case-outcomes h3 {
  font-size: 23px;
  line-height: 1.3;
}
.case-narrative h3:not(:first-child) {
  margin-top: 30px;
}
.case-inputs {
  padding-left: 21px;
  color: #b6c4d8;
}
.case-inputs li {
  padding: 5px 0;
  font-size: 16px;
}
.case-evidence {
  min-width: 0;
  border: 1px solid #a7c9ff40;
  border-radius: 16px;
  padding: 24px;
  background: #111a27;
}
.scroll-conversation {
  overflow: hidden;
}
.walkthrough-heading {
  display: flex;
  align-items: center;
  gap: 13px;
  padding-bottom: 22px;
  border-bottom: 1px solid var(--line);
}
.chat-avatar {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  flex-shrink: 0;
  color: #d4e7ff;
  background: #2a405d;
  border: 1px solid #a7c9ff40;
  border-radius: 11px;
  font: 16px var(--mono);
}
.walkthrough-heading strong {
  font-size: 17px;
  font-weight: 550;
}
.walkthrough-heading > div > span {
  display: block;
  color: #b3c2d6;
  font-size: 13px;
  margin-top: 5px;
}
.chat-request {
  background: #25384f;
  padding: 20px;
  border-radius: 12px 12px 3px 12px;
  margin: 24px 0;
}
.chat-request > span {
  font: 12px/1.6 var(--mono);
  color: #aac5e8;
}
body.page-inner main .chat-request p {
  font-size: 16px;
  color: #e1ebf7;
  margin: 10px 0 0;
}
.scroll-demo-source {
  margin: 22px 0 0;
}
.scroll-demo-source > span {
  color: #91acd0;
  font: 10px/1.5 var(--mono);
}
.scroll-demo-source > div {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
}
.scroll-demo-source i {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 7px 9px;
  border: 1px solid #ffffff18;
  border-radius: 7px;
  background: #ffffff05;
  color: #b8c8dc;
  font-style: normal;
  font-size: 11px;
}
.scroll-demo-source svg {
  width: 13px;
  height: 13px;
}
.case-result {
  scroll-margin-top: 125px;
  border-top: 1px solid #ffffff28;
  padding-top: 24px;
  margin-top: 8px;
}
.sample-reply {
  display: flex;
  align-items: flex-start;
  gap: 13px;
  margin-bottom: 24px;
}
.sample-reply strong {
  font-size: 18px;
  font-weight: 550;
  color: #dcebf8;
}
body.page-inner main .sample-reply p {
  font-size: 15px;
  margin: 10px 0 0;
}
.case-evidence-head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}
.result-status {
  color: #86a9cf;
  font: 9px/1.5 var(--mono);
}
.case-evidence .science-chart {
  padding: 23px 0;
}
.case-evidence > .labeled-scroll {
  margin-top: 20px;
}
.case-evidence [data-case-table] {
  margin-top: 22px;
}
body.page-inner main p.sample-note {
  font-size: 14px;
  margin-top: 22px;
}
.scroll-demo-ready [data-demo-stage] {
  opacity: 0;
  transform: translateY(18px);
  transition:
    opacity 0.45s ease,
    transform 0.45s ease;
}
.scroll-demo-ready.is-revealed [data-demo-stage] {
  opacity: 1;
  transform: translateY(0);
}
.scroll-demo-ready.is-revealed .chat-request {
  transition-delay: 0.12s;
}
.scroll-demo-ready.is-revealed .sample-reply {
  transition-delay: 0.28s;
}
.scroll-demo-ready.is-revealed .case-result {
  transition-delay: 0.44s;
}
.case-outcomes {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 30px;
  margin-top: 5px;
}
.case-outcomes > div {
  border-top: 1px solid #ffffff25;
  padding-top: 23px;
}
.case-source-links {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 20px;
  margin-top: 25px;
  padding: 22px 0;
  border-block: 1px solid var(--line);
  font-size: 14px;
}
.case-source-links a {
  text-decoration: underline;
  text-underline-offset: 4px;
  color: #b9d6ff;
}
.review-boundary {
  border: 1px solid #8bdfc13d;
  padding: 25px 28px;
  background: #101b25;
  border-radius: 12px;
}
.review-boundary h3 {
  font-size: 26px;
  line-height: 1.3;
}
.research-sources {
  padding-left: 24px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 22px 45px;
}
.research-sources li {
  padding-left: 5px;
}
.research-sources a {
  font-size: 16px;
  color: #c2dcff;
  text-decoration: underline;
  text-underline-offset: 4px;
}
body.page-inner main .research-sources p {
  font-size: 14px;
  margin: 8px 0 0;
}
.security-intro {
  padding: 25px 30px;
  border: 1px solid #b1c9e438;
  border-radius: 12px;
  background: #121b27;
}
.security-intro p {
  margin: 0;
}
.security-intro p + p {
  margin-top: 18px;
}
.security-flow {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border: 1px dashed #a7c9ff70;
  border-radius: 16px;
  padding: 35px;
  gap: 35px;
  background: #101923;
}
.security-flow span {
  font: 12px/1.6 var(--mono);
  color: #b5cce8;
}
.security-flow h3 {
  font-size: 24px;
  margin: 20px 0 14px;
}
.security-flow p {
  margin: 0;
}
.boundary-callout {
  margin: 20px 0 0;
  padding: 22px 28px;
  border-left: 2px solid #e8bf8770;
  background: #e8bf8706;
}
.control-groups {
  border-top: 1px solid var(--line);
}
.control-group {
  border-bottom: 1px solid var(--line);
  padding: 34px 0 38px;
}
.control-group-heading {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-bottom: 24px;
}
.control-group-heading h3 {
  margin: 0;
  color: #eaf1fa;
  font-size: 22px;
  line-height: 1.3;
}
.control-group-heading p {
  margin: 0;
  color: #8fa0b4;
  font-size: 14px;
}
.control-group > div:last-child {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
}
.control-groups article {
  padding: 22px;
  border: 1px solid #ffffff15;
  border-radius: 10px;
  background: #0f1824;
}
.control-groups article > div {
  display: flex;
  flex-direction: column;
  gap: 7px;
}
.control-groups article h4 {
  margin: 0;
  color: #e5edf8;
  font-size: 18px;
}
.control-groups article span {
  color: #86a9cf;
  font: 10px/1.5 var(--mono);
}
.control-groups article p {
  margin: 14px 0 0;
  color: #aab9cb;
  font-size: 14px;
  line-height: 1.7;
}
.security-evidence-band {
  display: grid;
  grid-template-columns: 0.85fr 1.15fr;
  gap: 55px;
  margin-block: 25px 70px;
  padding: 38px;
  border: 1px solid #8bdfc13d;
  border-radius: 14px;
  background: radial-gradient(circle at 100% 100%, #2d6c5f2b, transparent 45%), #0d171d;
}
.security-evidence-band .mono {
  color: #8fc8b8;
  font-size: 10px;
}
.security-evidence-band h2 {
  margin: 15px 0 0;
  font-size: 38px;
}
.security-evidence-band p {
  margin: 0 0 16px;
  color: #afc0c5;
}
.research-hero {
  padding-top: 45px;
  padding-bottom: 55px;
  max-width: 1050px;
}
.research-hero h1 {
  font-size: clamp(43px, 5vw, 70px);
}
.research-hero .lead {
  max-width: 800px;
}
.research-article {
  max-width: 830px;
  padding-bottom: 85px;
}
body.page-inner main .research-article p {
  font-size: 18px;
  line-height: 1.85;
}
body.page-inner main .research-article .research-intro {
  font-size: 21px;
  color: #cbd7e7;
  border-left: 2px solid #b4d0f3;
  padding-left: 23px;
}
.research-article h2 {
  font-size: 34px;
  line-height: 1.25;
  margin-top: 55px;
}
.research-article h3 {
  font-size: 25px;
  margin-top: 32px;
  line-height: 1.4;
}
.research-article .research-sources {
  grid-template-columns: 1fr;
  gap: 22px;
}
body.page-inner main .research-article .research-sources p {
  font-size: 15px;
}
.comparison-sections {
  margin-top: 48px;
  border-top: 1px solid var(--line);
}
.comparison-section {
  scroll-margin-top: 120px;
  border-bottom: 1px solid var(--line);
  padding: 36px 0 40px;
}
body.page-inner main .comparison-section h2 {
  max-width: 650px;
  margin: 0 0 18px;
  color: #edf3fc;
  font-size: 21px;
  line-height: 1.35;
}
.comparison-section > div {
  max-width: 760px;
}
body.page-inner main .comparison-section p {
  font-size: 16px;
  line-height: 1.75;
}
.research-key-points {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  margin: 42px 0 50px;
}
.research-key-points article {
  padding: 22px;
  border: 1px solid #a8c6ec30;
  border-radius: 12px;
  background: linear-gradient(145deg, #142033, #0c121b);
}
.research-key-points article > span,
.research-role-grid article > span {
  color: #8fa9c9;
  font: 10px/1.5 var(--mono);
}
.research-key-points h2 {
  margin: 17px 0 8px;
  font-size: 24px;
}
body.page-inner main .research-key-points p {
  margin: 0;
  color: #aebed1;
  font-size: 15px;
  line-height: 1.65;
}
.research-process-map {
  margin: 50px 0 58px;
  padding: 28px;
  border: 1px solid #91bdeb4a;
  border-radius: 14px;
  background: radial-gradient(circle at 72% 30%, #294d7b2e, transparent 42%), #0d1521;
}
.research-process-map figcaption {
  margin-bottom: 25px;
  color: #dce9f9;
  font-size: 18px;
  font-weight: 560;
}
.research-process-map ol {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.research-process-map li {
  position: relative;
  min-width: 0;
  padding: 17px;
  border: 1px solid #ffffff17;
  border-radius: 9px;
  background: #ffffff05;
}
.research-process-map li:not(:last-child)::after {
  content: '→';
  position: absolute;
  top: 50%;
  right: -12px;
  z-index: 2;
  transform: translate(50%, -50%);
  color: #7fa9d4;
}
.research-process-map li > span {
  display: block;
  color: #82a7cf;
  font: 9px/1.4 var(--mono);
}
.research-process-map strong {
  display: block;
  margin-top: 10px;
  color: #edf4fc;
  font-size: 14px;
}
.research-process-map small {
  display: block;
  margin-top: 6px;
  color: #8fa0b5;
  font-size: 11px;
  line-height: 1.55;
}
.research-role-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
  margin: 30px 0 55px;
}
.research-role-grid article {
  padding-top: 20px;
  border-top: 1px solid #a8c6ec42;
}
.research-role-grid h3 {
  margin: 15px 0 10px;
  color: #e7eff9;
  font-size: 22px;
  line-height: 1.35;
}
body.page-inner main .research-role-grid p {
  margin: 0;
  color: #aab9cb;
  font-size: 15px;
  line-height: 1.7;
}
.research-principles {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
  margin: 45px 0 55px;
}
.research-principles > section {
  padding: 26px;
  border-left: 2px solid #7da8d8;
  background: #111b29;
}
.research-principles h2 {
  margin: 0 0 11px;
  font-size: 25px;
}
body.page-inner main .research-principles p {
  margin: 0;
  color: #aebdd0;
  font-size: 15px;
  line-height: 1.7;
}
.research-scope-note {
  margin: 50px 0 24px;
  padding: 23px 25px;
  border: 1px solid #e8bf8738;
  border-radius: 10px;
  background: #e8bf8708;
}
.research-scope-note > strong {
  color: #e6c99f;
  font-size: 15px;
}
body.page-inner main .research-scope-note p {
  margin: 8px 0 0;
  color: #b8b7b5;
  font-size: 14px;
  line-height: 1.65;
}

/* Readability on the retained product, comparison and preview pages. */
.page-inner .inner-hero-layout .lead,
.page-inner .page-hero .lead {
  font-size: 18px;
  line-height: 1.75;
  max-width: 760px;
}
.page-inner .inner-hero-layout {
  grid-template-columns: minmax(0, 1.35fr) minmax(0, 0.75fr);
  gap: 38px;
}
.inner-hero-layout h1 {
  font-size: clamp(43px, 4.6vw, 65px);
}
.inner-art .art-top,
.inner-art .art-bottom {
  font-size: 12px;
  line-height: 1.5;
}
.inner-art .fx-label:not(.fx-title) {
  display: none;
}
.inner-art .art-bottom {
  gap: 12px;
}
.agent-console-top .concept-label {
  font-size: 12px;
}
.platform-intro h2,
.boundary-copy h2 {
  font-size: clamp(34px, 3.8vw, 49px);
}
.platform-agents {
  gap: 42px;
}
.agent-role-grid article {
  min-width: 0;
}
.agent-role-grid h3 {
  font-size: 18px;
}
.agent-role-grid strong {
  font-size: 13px;
}
.agent-role-grid p {
  font-size: 13px;
  line-height: 1.7;
}
.boundary-overview {
  display: grid;
  gap: 44px;
}
.boundary-copy {
  max-width: 760px;
}
.boundary-copy > p {
  max-width: 680px;
  color: #aebed1;
  font-size: 16px;
  line-height: 1.75;
}
.boundary-paths {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
}
.boundary-path {
  min-width: 0;
  padding: 4px 0 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}
.boundary-path > .mono {
  color: #9ab5d5;
  font-size: 11px;
}
.boundary-path h3 {
  max-width: 460px;
  margin: 13px 0 12px;
  color: #edf3fb;
  font-size: 24px;
  line-height: 1.3;
}
.boundary-path > p {
  min-height: 84px;
  margin: 0 0 24px;
  color: #aab9ca;
  font-size: 14px;
  line-height: 1.7;
}
.boundary-path .boundary-diagram {
  min-height: 285px;
}
.faq-list {
  border-top: 1px solid var(--line);
}
.faq-item {
  padding: 25px 0 27px;
  border-bottom: 1px solid var(--line);
}
.faq-item h3 {
  margin: 0;
  color: #e8eff8;
  font-size: 19px;
  line-height: 1.4;
}
body.page-inner main .faq-item p {
  max-width: 690px;
  margin: 10px 0 0;
  color: #aab8ca;
  font-size: 15px;
  line-height: 1.75;
}
.diagram-label,
.diagram-sub,
.external-path,
.boundary-diagram > small {
  font-size: 13px;
  line-height: 1.6;
}
.diagram-row > span {
  font-size: 14px;
  min-width: 0;
}
.diagram-core {
  min-width: 70px;
}
.diagram-sub {
  gap: 8px;
}
.diagram-sub span + span::before {
  margin-right: 8px;
}
.external-path {
  align-items: flex-start;
}
.matrix-product .product-description {
  gap: 0 45px;
}
body[data-page='matrix'] .page-hero .lead {
  font-size: 18px;
}
.showroom-tag,
.showroom-detail,
.hardware-scan > span {
  font-size: 12px;
  line-height: 1.6;
}
.showroom-image {
  width: min(970px, 100%);
  height: 340px;
}
.showroom-image img {
  object-fit: contain;
}
.hardware-spec-strip strong {
  font-size: 13px;
  line-height: 1.5;
}
.showroom-detail {
  top: 70%;
  left: 8%;
  right: 8%;
}
.hardware-spec-strip {
  padding: 24px 0;
}
.hardware-scan > span {
  display: none;
}
.matrix-design-hero {
  display: grid;
  grid-template-columns: 0.85fr 1.15fr;
  align-items: center;
  gap: 42px;
  padding-block: 25px 55px;
}
.matrix-design-copy {
  min-width: 0;
}
.matrix-design-copy h1 {
  font-size: clamp(56px, 5.4vw, 78px);
  line-height: 1.03;
  margin-bottom: 27px;
  letter-spacing: -0.055em;
}
body.page-inner main .matrix-design-copy .lead {
  font-size: 27px;
  color: #d8e5f4;
  line-height: 1.45;
}
.matrix-design-copy > p {
  max-width: 520px;
}
.matrix-design-copy > .badge {
  margin: 10px 0 24px;
}
body.page-inner main .matrix-design-copy .fine-print {
  font-size: 14px;
  margin-top: 18px;
  color: #b4c2d4;
}
.hardware-showroom.matrix-concept-showroom {
  width: 100%;
  height: auto;
  min-width: 0;
  padding-top: 8px;
  border-bottom: 0;
  overflow: hidden;
}
.matrix-concept-showroom .showroom-tag {
  position: relative;
  top: auto;
  font-size: 12px;
  padding-block: 8px;
}
.matrix-concept-showroom .showroom-image {
  position: relative;
  left: auto;
  top: auto;
  width: 100%;
  height: 650px;
  transform: none;
  margin: 0;
}
.matrix-concept-showroom .showroom-image img {
  position: static;
  width: 100%;
  height: 100%;
  max-width: 100%;
  object-fit: contain;
  transform: none;
  translate: none;
}
.matrix-concept-showroom .hardware-scan,
.matrix-concept-showroom .showroom-grid,
.matrix-concept-showroom .showroom-beam {
  display: none;
}
body.page-inner main .workstation-caption {
  font-size: 13px;
  text-align: center;
  color: #adbed2;
  margin: 12px 0 0;
}
.workstation-configuration {
  padding-top: 45px;
  border-top: 1px solid var(--line);
  scroll-margin-top: 120px;
}
.matrix-sizing-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 24px;
}
/* The system in a room beside the four things that size it: the picture on the left, the four as
   ruled rows on the right; stacked, with the four back in their grid, below 1001 px. */
.matrix-machine {
  display: grid;
  gap: var(--space-xl);
}
.matrix-in-place {
  margin: 0;
}
.matrix-in-place img {
  display: block;
  width: 100%;
  height: auto;
  border: 1px solid var(--color-rule-strong);
}
body.page-inner main .matrix-in-place figcaption {
  margin-top: 14px;
  font-size: 13px;
  line-height: 1.5;
  color: var(--color-muted);
}
@media (min-width: 1001px) {
  .matrix-machine {
    grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
    align-items: start;
  }
  .matrix-machine .matrix-sizing-grid {
    grid-template-columns: 1fr;
    gap: 0;
  }
  .matrix-machine .feature {
    padding: 20px 0;
  }
  body.page-inner main .matrix-machine .feature h3 {
    margin: 0 0 8px;
  }
  body.page-inner main .matrix-machine .feature p {
    margin: 0;
  }
  .matrix-machine .feature:first-child {
    padding-top: 0;
    border-top: 0;
  }
}
.sizing-cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}
.sizing-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  min-width: 0;
  border: 1px solid #ffffff18;
  border-radius: 10px;
  background: #0e141d;
  overflow: hidden;
}
.sizing-card-signal {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 24px;
  border-bottom: 1px solid #ffffff14;
  background: #121b27;
}
.sizing-card-signal > span {
  color: #edf4ff;
  font-size: 43px;
  line-height: 1;
  letter-spacing: -0.06em;
}
.sizing-card-signal > strong {
  margin-top: 18px;
  color: #c7d7eb;
  font-size: 15px;
}
.sizing-card-signal > small {
  margin-top: 7px;
  color: #8599b2;
  font-size: 12px;
  line-height: 1.45;
}
.sizing-card > div:last-child {
  padding: 25px;
}
.sizing-card .mono {
  color: #8ca7c6;
  font-size: 11px;
}
.sizing-card h3 {
  margin: 11px 0 9px;
  color: #e5eef9;
  font-size: 21px;
}
body.page-inner main .sizing-card p {
  margin: 0;
  color: #a6b6c9;
  font-size: 14px;
  line-height: 1.7;
}
.sizing-guidance {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  margin-top: 22px;
  padding: 26px 28px;
  border: 1px solid #ffffff14;
  border-radius: 10px;
  background: #0b1119;
}
body.page-inner main .sizing-guidance p {
  max-width: 690px;
  margin: 0;
  font-size: 14px;
  line-height: 1.75;
}
.sizing-guidance > div:first-child {
  min-width: 0;
  flex: 1;
}
body.page-inner main .sizing-guidance p + p {
  margin-top: 14px;
}
.sizing-guidance > div:last-child {
  display: flex;
  flex: 0 0 auto;
  flex-direction: column;
  align-items: flex-start;
  gap: 15px;
}
.benchmark-dimensions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin-top: 30px;
}
.benchmark-dimension {
  min-width: 0;
  padding: 24px;
  border: 1px solid #ffffff15;
  border-radius: 9px;
  background: #101721;
}
.benchmark-dimension > .mono {
  color: #8ca3c1;
  font-size: 10px;
}
.benchmark-dimension h3 {
  margin: 16px 0 10px;
  color: #edf3fb;
  font-size: 23px;
}
body.page-inner main .benchmark-dimension > p {
  min-height: 46px;
  margin: 0;
  color: #a1b1c5;
  font-size: 14px;
  line-height: 1.65;
}
.benchmark-dimension ul {
  margin: 22px 0 0;
  padding: 0;
  list-style: none;
  border-top: 1px solid #ffffff12;
}
.benchmark-dimension li {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  padding: 15px 0;
  border-bottom: 1px solid #ffffff12;
  color: #c9d7e8;
  font-size: 13px;
  line-height: 1.5;
}
.benchmark-dimension li strong {
  flex: 0 0 auto;
  color: #8195ae;
  font: 10px/1.5 var(--mono);
}
.workflow-library {
  display: grid;
  gap: 34px;
}
.workflow-story {
  scroll-margin-top: 120px;
  padding: 34px;
  border: 1px solid #ffffff1a;
  border-radius: 12px;
  background: linear-gradient(140deg, #12161e, #0b0d12);
  box-shadow: inset 0 1px 0 #ffffff06;
}
.workflow-story-heading {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 28px;
  align-items: start;
}
.workflow-story-heading .mono {
  color: #8c9eb7;
  font-size: 11px;
}
.workflow-story-heading h2 {
  margin: 15px 0 8px;
  color: #eef4fc;
  font-size: clamp(28px, 3vw, 38px);
}
.workflow-story-headline {
  margin: 0 0 12px;
  color: #c9d9ee;
  font-size: 20px;
  font-weight: 600;
}
body.page-inner main .workflow-story-heading p:not(.workflow-story-headline) {
  max-width: 680px;
  margin: 0;
  color: #9eafc3;
  font-size: 15px;
  line-height: 1.7;
}
.workflow-story-icon {
  display: grid;
  width: 70px;
  height: 70px;
  place-items: center;
  border: 1px solid #8fb2df55;
  border-radius: 16px;
  background: #172235;
  color: #b9d3f4;
}
.workflow-story-icon svg {
  width: 31px;
  height: 31px;
}
.workflow-story-steps {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
  margin: 0 0 24px;
  padding: 0;
  list-style: none;
}
.workflow-story-steps li {
  min-width: 0;
  padding: 18px;
  border: 1px solid #ffffff14;
  border-radius: 8px;
  background: #101720;
}
.workflow-step-role {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #9eb9dc;
}
.workflow-step-role > span {
  color: #778da8;
  font: 10px/1.5 var(--mono);
}
.workflow-step-role svg {
  width: 18px;
  height: 18px;
}
.workflow-step-role strong {
  font-size: 12px;
}
.workflow-story-steps h3 {
  margin: 18px 0 9px;
  color: #dce8f7;
  font-size: 16px;
  line-height: 1.35;
}
body.page-inner main .workflow-story-steps p {
  margin: 0;
  color: #94a6bb;
  font-size: 13px;
  line-height: 1.65;
}
.workstation-viewer {
  width: 100%;
  min-width: 0;
}
.workstation-stage {
  position: relative;
  width: 100%;
  height: 610px;
  background: transparent;
  isolation: isolate;
}
.appliance-photo .workstation-stage {
  height: 500px;
}
.workstation-viewer .workstation-poster,
.workstation-canvas {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
  background: transparent;
}
.workstation-canvas {
  cursor: grab;
  touch-action: pan-y pinch-zoom;
  border-radius: 12px;
}
.workstation-canvas:focus-visible {
  outline-offset: -3px;
}
.workstation-stage.is-dragging .workstation-canvas {
  cursor: grabbing;
}
.viewer-launch {
  position: absolute;
  bottom: 15px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
  white-space: nowrap;
}
body .viewer-launch:hover {
  transform: translateX(-50%);
}
.viewer-controls {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr)) 44px 44px;
  gap: 6px;
  max-width: 450px;
  margin: 14px auto 0;
}
.viewer-controls button {
  min-width: 0;
  min-height: 44px;
  border: 1px solid #ffffff30;
  border-radius: 7px;
  background: #111a26;
  color: #c8d8ed;
  font-size: 14px;
  padding: 9px 8px;
}
.viewer-controls button:hover,
.viewer-controls button[aria-pressed='true'] {
  color: #f0f6ff;
  border-color: #adcffb88;
  background: #233650;
}
.viewer-controls [data-model-zoom] {
  font-size: 21px;
  line-height: 1;
}
body.page-home main .viewer-instructions,
body.page-inner main .viewer-instructions {
  font-size: 14px;
  line-height: 1.6;
  text-align: center;
  margin: 16px 0 7px;
  color: #bbcce1;
}
body.page-home main .viewer-status,
body.page-inner main .viewer-status {
  font-size: 13px;
  line-height: 1.6;
  text-align: center;
  margin: 0 0 13px;
  color: #a8b9ce;
}
.workstation-viewer[data-model-state='error'] .viewer-status {
  color: #efc5ac;
}
.viewer-static-rear {
  border-top: 1px solid #ffffff18;
  margin-top: 14px;
}
.viewer-static-rear summary {
  cursor: pointer;
  padding: 14px 4px;
  font-size: 14px;
  color: #b6cce8;
  min-height: 44px;
}
.workstation-viewer .viewer-static-rear img {
  position: static;
  width: 100%;
  height: auto;
  max-height: 620px;
  object-fit: contain;
}
.rear-io-summary {
  display: grid;
  grid-template-columns: 0.9fr 1.1fr;
  gap: 64px;
  padding-block: 55px 65px;
  border-top: 1px solid var(--line);
}
.rear-io-summary h2 {
  font-size: 42px;
}
.rear-io-summary > div > p {
  max-width: 560px;
}
.rear-io-list {
  margin: 0 0 23px;
}
.rear-io-list > div {
  display: grid;
  grid-template-columns: 110px minmax(0, 1fr);
  gap: 20px;
  padding: 14px 0;
  border-bottom: 1px solid #ffffff1c;
}
.rear-io-list dt {
  color: #e0eafa;
  font-size: 16px;
}
.rear-io-list dd {
  margin: 0;
  color: #b4c5db;
  font-size: 16px;
}
.rear-io-summary .io-reference {
  color: #c3dbfc;
  text-decoration: underline;
  text-underline-offset: 4px;
}
.matrix-hardware-specs {
  scroll-margin-top: 110px;
}
.matrix-hardware-specs dd strong {
  display: block;
  font-size: 16px;
  font-weight: 500;
  overflow-wrap: anywhere;
}
.matrix-hardware-specs dd small {
  display: block;
  margin-top: 6px;
  color: #94a8bf;
  font-size: 12px;
  line-height: 1.7;
}
.matrix-hardware-specs .badge {
  margin-top: 18px;
}
@media (max-width: 600px) {
  .matrix-hardware-specs .rear-io-list > div {
    grid-template-columns: 100px minmax(0, 1fr);
    gap: 14px;
  }
}
.spec-list > div {
  font-size: 16px;
}
.size-picker button > small {
  font-size: 13px;
}
.size-picker button > strong {
  font-size: 17px;
}
.size-picker button {
  padding: 24px 20px;
}
.size-picker button > span {
  font-size: 44px;
}
.sizing-detail {
  align-items: flex-start;
}
.benchmark-table,
.compare-table {
  font-size: 15px;
  line-height: 1.65;
}
.benchmark-table th,
.benchmark-table td:last-child,
.benchmark-table caption {
  font-size: 13px;
}
.benchmark-tabs button {
  font-size: 15px;
  min-height: 48px;
}
.benchmark-note {
  font-size: 14px;
  align-items: flex-start;
}
.workflow-options button {
  font-size: 16px;
}
.workflow-options small {
  font-size: 12px;
}
.workflow-steps button {
  font-size: 13px;
  min-width: 0;
}
.workflow-steps button > span,
.workflow-stage-head .mono,
.sample-files > span,
.workflow-output > .mono {
  font-size: 12px;
}
.workflow-circuit {
  font-size: 12px;
}
.workflow-output strong {
  font-size: 17px;
  line-height: 1.6;
}
.walkthrough-player button {
  font-size: 14px;
  min-height: 44px;
}
.walkthrough-player > span {
  font-size: 12px;
}
.sample-files {
  flex-wrap: wrap;
}
.sample-files > span {
  overflow-wrap: anywhere;
}
.case-studies {
  align-items: start;
}
.article-layout {
  grid-template-columns: 235px minmax(0, 1fr);
  gap: 55px;
}
.article-content {
  max-width: 800px;
}
.article-meta,
.back-link,
.article-sidebar > a {
  font-size: 14px;
  line-height: 1.65;
}
.article-content h2 {
  font-size: 31px;
  line-height: 1.3;
}
.compare-table {
  min-width: 650px;
}
.compare-table th {
  font-size: 14px;
}
.article-sources li,
.article-next .text-link {
  font-size: 15px;
}
.editorial-note {
  align-items: start;
}
.person-info > a,
.person-info p {
  font-size: 16px;
}
body.page-inner main .mission p:not(.lead-small) {
  font-size: var(--body-size);
}
.person-number {
  display: none;
}
.person-link svg {
  width: 22px;
  height: 22px;
}
body.page-inner main .demo-copy .lead {
  max-width: 620px;
  font-size: 18px;
}
body[data-page='request-demo'] .demo-page {
  padding-top: 36px;
}
body[data-page='request-demo'] .demo-copy h1 {
  margin-block: 20px 22px;
  font-size: clamp(56px, 5.3vw, 72px);
}
.contact-quick-action {
  display: flex;
  max-width: 590px;
  align-items: center;
  gap: 18px;
  margin-top: 24px;
  padding-bottom: 28px;
  border-bottom: 1px solid var(--line-subtle);
}
.contact-quick-action > span {
  max-width: 270px;
  color: #9eacc0;
  font-size: 13px;
  line-height: 1.55;
}
.demo-copy > .inner-art {
  display: none;
}
.demo-agenda h3 {
  font-size: 22px;
}
.demo-agenda > div > span {
  font-size: 14px;
}
.sales-contact {
  padding: 25px;
  margin: 28px 0;
  border: 1px solid #8bdfc153;
  background: #101e24;
  border-radius: 12px;
}
.sales-contact h2 {
  font-size: 25px;
  margin-bottom: 14px;
}
.sales-contact > a:not(.button) {
  color: #c3e9df;
  overflow-wrap: anywhere;
  text-decoration: underline;
  text-underline-offset: 4px;
}
.sales-contact .button {
  margin-top: 10px;
}
body.page-inner main .sales-contact p {
  font-size: 15px;
}
.demo-form-card {
  padding: 30px;
}
.field label,
.checkbox,
.local-notice p,
.form-message {
  font-size: 15px;
}
body.page-inner main .local-notice p {
  font-size: 15px;
}
.local-notice strong {
  font-size: inherit;
}
input:not([type='checkbox']),
select,
textarea {
  background: var(--field-bg);
  font-size: 16px;
  min-height: 48px;
  padding: 12px;
}
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  border-color: #9ec6ff;
  outline: 2px solid var(--focus-ring);
  outline-offset: 2px;
}
input:not([type='checkbox']):user-invalid,
select:user-invalid,
textarea:user-invalid,
input:not([type='checkbox'])[aria-invalid='true'],
select[aria-invalid='true'],
textarea[aria-invalid='true'] {
  border-color: var(--field-error);
  background: var(--field-error-bg);
  box-shadow: 0 0 0 1px var(--field-error);
}
.checkbox:has(input:user-invalid),
.checkbox:has(input[aria-invalid='true']) {
  color: #ffc0ac;
}
input:disabled,
select:disabled,
textarea:disabled {
  border-color: #ffffff16;
  background: var(--field-disabled);
  color: #8190a5;
  cursor: not-allowed;
  opacity: 1;
}
input::placeholder,
textarea::placeholder {
  color: #95a6be;
  opacity: 1;
}
.field {
  min-width: 0;
}
.checkbox {
  align-items: flex-start;
  line-height: 1.6;
}
.checkbox input {
  width: 20px;
  height: 20px;
  margin-top: 3px;
  flex-shrink: 0;
}
.form-success {
  scroll-margin-top: 120px;
}
.form-success .button-row {
  margin-top: 22px;
}
.form-message {
  display: block;
  min-height: 1.6em;
  color: #aebdd1;
}
.form-message:empty {
  display: block;
}
.form-message[data-state='error'] {
  color: var(--field-error);
}
.form-message[data-state='notice'] {
  color: #c5d8f2;
}
#demo-form[aria-busy='true'] {
  cursor: progress;
}
.demo-form-card form > .button:disabled {
  border-color: #8fa7c7;
  background: #8fa7c7;
  color: #172333;
  cursor: progress;
  opacity: 1;
}
.privacy-copy {
  max-width: 830px;
  padding-bottom: 80px;
}
.regulated-requirements {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin: 24px 0;
  padding: 0;
  list-style: none;
}
.regulated-requirements li {
  padding: 18px;
  border: 1px solid #9bbce32f;
  border-radius: 10px;
  background: #101925;
}
.regulated-requirements a {
  display: inline-flex;
  color: #c8def8;
  font-size: 16px;
  font-weight: 560;
  text-decoration: underline;
  text-underline-offset: 4px;
}
.regulated-requirements span {
  display: block;
  margin-top: 8px;
  color: #96a8bd;
  font-size: 14px;
  line-height: 1.6;
}
.cta-section {
  margin-top: 25px;
  padding: 48px;
  gap: 48px;
}
.cta-section h2 {
  font-size: clamp(34px, 3.6vw, 49px);
}
.cta-section > div:nth-child(2) {
  max-width: 500px;
}
.footer-main {
  display: grid;
  grid-template-columns: minmax(210px, 0.7fr) minmax(0, 2.3fr);
  gap: 40px;
}
.footer-main p {
  font-size: 16px;
  max-width: 300px;
}
.footer-links {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 22px;
}
.footer-links > div {
  gap: 4px;
}
.footer-links a {
  min-height: 44px;
  font-size: 14px;
  padding-block: 10px;
  line-height: 1.6;
}
.footer-links > div > span:first-child,
.footer-status {
  font-size: 12px;
}
.footer-bottom {
  font-size: 12px;
  line-height: 1.6;
  gap: 22px;
}
.footer-main .mono {
  font-size: 12px;
}

@media (max-width: 1100px) {
  .sovereign-hero {
    min-height: 0;
    padding: 135px 0 58px;
  }
  .sovereign-hero .matrix-hero-grid {
    grid-template-columns: 1fr;
    gap: 32px;
    min-height: 0;
  }
  .sovereign-hero .pharma-hero-copy {
    width: 100%;
    max-width: 750px;
    padding-top: 0;
  }
  .matrix-product-composite {
    width: min(820px, 100%);
    min-height: 560px;
    margin-inline: auto;
    padding-top: 72px;
  }
  .matrix-hero-hardware {
    right: 0;
    width: 82%;
    height: 560px;
  }
  .matrix-workspace-window {
    width: 84%;
  }
  .sector-links,
  .sector-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  /* Five industries in two columns: the last one takes the whole row, as on the homepage. */
  .sector-links > a:last-child:nth-child(odd) {
    grid-column: 1 / -1;
  }
  .matrix-sizing-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .pharma-hero-grid {
    gap: 30px;
  }
  .pharma-hero h1 {
    font-size: 59px;
  }
  .science-chart {
    padding: 20px;
  }
  .case-layout {
    gap: 30px;
  }
  .case-evidence {
    padding: 20px;
  }
  .solution-split,
  .appliance-section {
    gap: 40px;
  }
  .workflow-steps {
    flex-wrap: wrap;
  }
}
@media (max-width: 1000px) {
  .container {
    width: calc(100% - 48px);
  }
  .workflow-story-steps {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .floating-header {
    top: 14px;
  }
  .floating-bar {
    width: calc(100% - 32px);
    gap: 14px;
    position: relative;
  }
  .floating-header .brand {
    margin-right: auto;
  }
  .floating-header.scrolled .floating-bar {
    padding: 9px 13px 9px 16px;
  }
  .glass-nav {
    display: none;
    position: absolute;
    left: 0;
    right: 0;
    top: calc(100% + 13px);
    flex-direction: column;
    align-items: stretch;
    padding: 14px 20px;
    border-radius: 18px;
    max-height: calc(100dvh - 115px);
    overflow-y: auto;
    background: #111925fa;
    overscroll-behavior: contain;
  }
  .glass-nav.open {
    display: flex;
  }
  .nav-overview,
  .nav-trigger {
    width: 100%;
    justify-content: space-between;
    font-size: 16px;
    padding: 15px 10px;
    border-radius: 8px;
    min-height: 50px;
  }
  .nav-group {
    border-top: 1px solid #ffffff16;
  }
  .mega-panel {
    position: static;
    transform: none;
    width: 100%;
    max-height: none;
    border: 0;
    border-radius: 0;
    display: block;
    background: #ffffff03;
    box-shadow: none;
    backdrop-filter: none;
    animation: none;
    overflow: visible;
  }
  .mega-copy {
    padding: 4px 10px 15px;
  }
  .mega-copy h2,
  .mega-copy > p,
  .mega-bottom {
    display: none;
  }
  .mega-feature {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 5px 16px;
    min-height: 0;
    margin: 8px 10px 14px;
    padding: 15px 16px;
    border-radius: 10px;
  }
  .mega-feature > strong {
    margin: 0;
    max-width: none;
    font-size: 15px;
  }
  .mega-feature-cta {
    align-self: center;
    margin: 0;
    font-size: 12px;
  }
  .mega-feature > img,
  .mega-feature-art {
    display: none;
  }
  .mega-link {
    padding: 13px 7px;
    margin: 0;
    gap: 12px;
  }
  .mega-link strong {
    font-size: 15px;
  }
  .mega-link small {
    font-size: 13px;
  }
  .mega-link > svg {
    opacity: 1;
  }
  .mobile-nav-demo {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 14px 10px;
    margin-top: 10px;
    background: #293b54;
    border-radius: 7px;
    font-size: 16px;
    min-height: 48px;
  }
  .mobile-nav-toggle {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 5px;
    width: 44px;
    height: 44px;
    border: 1px solid #ffffff35;
    border-radius: 50%;
    padding: 10px;
    flex-shrink: 0;
  }
  .mobile-nav-toggle span {
    width: 18px;
    height: 1px;
    background: currentColor;
  }
  .mobile-nav-toggle[aria-expanded='true'] span:first-child {
    transform: translateY(3px) rotate(45deg);
  }
  .mobile-nav-toggle[aria-expanded='true'] span:last-child {
    transform: translateY(-3px) rotate(-45deg);
  }
  .pharma-hero {
    padding-top: 140px;
  }
  .pharma-hero-grid {
    grid-template-columns: 1fr;
    gap: 40px;
  }
  .pharma-hero-copy {
    max-width: 750px;
    padding-top: 0;
  }
  .pharma-hero-copy > p {
    max-width: 650px;
  }
  .pharma-hero h1 {
    font-size: 67px;
  }
  .solution-split {
    gap: 35px;
  }
  .featured-solution {
    padding: 30px;
    gap: 30px;
  }
  .solution-stack,
  .delivery-path {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .solution-stack article:nth-child(3) {
    border-left: 0;
    border-top: 1px solid #ffffff16;
  }
  .solution-stack article:nth-child(4) {
    border-top: 1px solid #ffffff16;
  }
  .case-layout {
    grid-template-columns: 1fr;
  }
  .case-evidence {
    order: -1;
  }
  .case-narrative {
    max-width: 740px;
  }
  .case-evidence {
    max-width: 740px;
    width: 100%;
  }
  .case-outcomes {
    grid-template-columns: 1fr;
    gap: 15px;
  }
  .case-outcomes p {
    max-width: 740px;
  }
  .page-inner .inner-hero-layout {
    grid-template-columns: minmax(0, 1.3fr) minmax(0, 0.7fr);
    gap: 20px;
  }
  .inner-art .art-bottom {
    display: none;
  }
  .inner-art .art-top {
    font-size: 12px;
  }
  .article-layout {
    grid-template-columns: 1fr;
    gap: 30px;
  }
  .article-content {
    max-width: 820px;
  }
  .article-sidebar {
    position: static;
  }
  .matrix-design-hero {
    grid-template-columns: 0.9fr 1.1fr;
    gap: 25px;
  }
  .matrix-concept-showroom .showroom-image {
    height: 550px;
  }
  .workstation-stage {
    height: 530px;
  }
  .rear-io-summary {
    gap: 35px;
  }
}
@media (max-width: 800px) {
  .solution-section {
    padding-block: 60px;
  }
  .industry-intro {
    grid-template-columns: 1fr;
    gap: 38px;
    padding-block: 72px;
  }
  .industry-workflow-grid,
  .industry-boundary-grid {
    grid-template-columns: 1fr;
  }
  .industry-workflow-grid .industry-workflow-lead {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .industry-pilot {
    grid-template-columns: 1fr;
  }
  .sizing-cards,
  .benchmark-dimensions {
    grid-template-columns: 1fr;
  }
  .sizing-guidance {
    align-items: flex-start;
    flex-direction: column;
  }
  body.page-inner main .benchmark-dimension > p {
    min-height: 0;
  }
  .workflow-story-steps {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .solution-split,
  .appliance-section,
  .featured-solution {
    grid-template-columns: 1fr;
  }
  .pilot-target {
    grid-template-columns: 0.7fr 1.3fr;
    gap: 30px;
    padding-block: 65px;
  }
  .pilot-number > strong {
    font-size: 110px;
  }
  .sector-links,
  .sector-cards {
    grid-template-columns: 1fr;
  }
  .sector-links {
    gap: 25px;
  }
  .offering-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
  }
  .offering-strip > div + div {
    padding-left: 20px;
  }
  .offering-strip > div:nth-child(3) {
    padding-top: 20px;
    padding-left: 0;
    border-top: 1px solid var(--line);
    border-left: 0;
  }
  .offering-strip > div:nth-child(4) {
    padding-top: 20px;
    border-top: 1px solid var(--line);
  }
  .offering-strip strong {
    font-size: 16px;
  }
  .security-flow {
    grid-template-columns: 1fr;
    gap: 28px;
    padding: 28px;
  }
  .security-flow > div + div {
    border-top: 1px solid var(--line);
    padding-top: 25px;
  }
  .research-sources {
    grid-template-columns: 1fr;
  }
  .control-group > div:last-child,
  .security-evidence-band {
    grid-template-columns: 1fr;
  }
  .page-inner .inner-hero-layout,
  .page-inner .article-hero.inner-hero-layout {
    grid-template-columns: 1fr;
  }
  .inner-art {
    display: none;
  }
  .page-inner .inner-hero-layout {
    min-height: 0;
  }
  .page-inner .page-hero {
    padding-bottom: 42px;
  }
  .page-inner .inner-hero-layout .lead {
    font-size: 18px;
  }
  .page-inner .inner-hero-layout h1 {
    font-size: 53px;
  }
  .boundary-paths,
  .platform-agents {
    grid-template-columns: 1fr;
  }
  .platform-intro > p {
    max-width: 680px;
  }
  .spec-list > div {
    font-size: 16px;
  }
  .sizing-detail {
    flex-direction: column;
  }
  .workflow-explorer {
    grid-template-columns: 1fr;
  }
  .workflow-options button {
    font-size: 14px;
  }
  .workflow-options small {
    font-size: 12px;
    letter-spacing: 0;
  }
  .workflow-steps button {
    min-height: 80px;
  }
  .showroom-image {
    width: 100%;
    height: 280px;
  }
  .hardware-showroom {
    height: 450px;
  }
  .showroom-detail {
    top: 68%;
  }
  .showroom-tag {
    font-size: 12px;
  }
  .hardware-spec-strip strong {
    font-size: 12px;
    max-width: none;
  }
  .matrix-design-hero {
    grid-template-columns: 1fr;
    gap: 24px;
    padding-top: 30px;
  }
  .matrix-design-copy h1 {
    font-size: 65px;
  }
  .matrix-design-copy > p {
    max-width: 650px;
  }
  .matrix-concept-showroom .showroom-image {
    height: 610px;
  }
  .workstation-stage {
    height: 560px;
  }
  .rear-io-summary {
    grid-template-columns: 1fr;
  }
  .research-key-points,
  .research-role-grid,
  .research-principles {
    grid-template-columns: 1fr;
  }
  .research-process-map ol {
    grid-template-columns: 1fr 1fr;
  }
  .research-process-map li:nth-child(2)::after {
    content: none;
  }
  body.page-inner main .comparison-section h2 {
    font-size: 18px;
  }
  .cta-section {
    padding: 32px;
    grid-template-columns: 1fr;
    gap: 27px;
  }
  .cta-section > div:nth-child(2) {
    max-width: 620px;
  }
  .footer-main {
    grid-template-columns: 1fr;
    gap: 35px;
  }
  .footer-links {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
  }
}
@media (max-width: 600px) {
  .matrix-sizing-grid {
    grid-template-columns: 1fr;
  }
  .sizing-card {
    grid-template-columns: 1fr;
  }
  .sizing-card-signal {
    border-right: 0;
    border-bottom: 1px solid #ffffff14;
  }
  .sizing-guidance {
    padding: 22px;
  }
  .sizing-guidance > div,
  .sizing-guidance .button {
    width: 100%;
  }
  .workflow-story {
    padding: 22px;
  }
  .workflow-story-heading {
    grid-template-columns: 1fr;
  }
  .workflow-story-steps {
    grid-template-columns: 1fr;
  }
  .industry-intro {
    padding-block: 25px 62px;
  }
  .industry-responsibility,
  .industry-workflow-grid article,
  .industry-pilot {
    padding: 22px;
  }
  .boundary-path {
    padding: 0;
  }
  .boundary-path > p {
    min-height: 0;
  }
  .regulated-requirements {
    grid-template-columns: 1fr;
  }
  .solution-stack,
  .delivery-path {
    grid-template-columns: 1fr;
  }
  .solution-stack article + article {
    border-top: 1px solid #ffffff16;
    border-left: 0;
  }
  .delivery-path li {
    padding-bottom: 16px;
  }
  .delivery-path li:not(:last-child)::after {
    content: none;
  }
  .research-process-map {
    padding: 20px 16px;
  }
  .research-process-map ol {
    grid-template-columns: 1fr;
  }
  .research-process-map li::after {
    content: none !important;
  }
  body.page-inner main .comparison-section h2 {
    font-size: 17px;
  }
  .container {
    width: calc(100% - 40px);
  }
  .floating-demo {
    display: none;
  }
  .floating-bar {
    width: calc(100% - 32px);
  }
  .floating-header .brand > span:last-child {
    font-size: 24px;
  }
  .pharma-hero {
    padding: 130px 0 45px;
  }
  .pharma-hero h1 {
    font-size: clamp(45px, 10.3vw, 58px);
    margin: 22px 0;
  }
  .sovereign-hero h1 {
    font-size: clamp(42px, 11.2vw, 54px);
  }
  .provider-promise {
    padding: 16px;
    gap: 10px;
  }
  .provider-promise strong {
    font-size: 16px;
  }
  .sovereign-hero {
    min-height: 0;
    padding: 126px 0 44px;
  }
  .sovereign-hero .matrix-hero-grid {
    min-height: 0;
    gap: 18px;
  }
  body.page-home main .sovereign-hero .pharma-lead {
    font-size: 19px;
    line-height: 1.62;
  }
  .matrix-product-composite {
    min-height: 0;
    margin-top: 8px;
    padding-block: 128px 20px;
  }
  .matrix-hero-hardware {
    right: 0;
    width: 100%;
    height: 100%;
  }
  .matrix-hero-hardware img {
    object-position: center top;
  }
  .matrix-workspace-window {
    width: 100%;
    border-radius: 14px;
  }
  .workspace-layout {
    grid-template-columns: 1fr;
    min-height: 292px;
  }
  .workspace-sidebar {
    display: none;
  }
  .workspace-main {
    padding: 0;
  }
  .workspace-topbar {
    padding-inline: 12px;
  }
  .workspace-thread {
    min-height: 0;
    padding: 20px 16px 16px;
  }
  .workspace-request {
    width: 88%;
    margin-top: 12px;
  }
  .workspace-response {
    margin-top: 14px;
  }
  .workspace-composer {
    margin: auto 12px 12px;
  }
  body.page-home main .pharma-lead {
    font-size: 21px;
  }
  .pharma-hero .button-row {
    display: grid;
    grid-template-columns: 1fr;
  }
  .pharma-hero .button-row .button {
    justify-content: space-between;
  }
  .hero-assurances {
    gap: 12px 16px;
    font-size: 13px;
  }
  .science-chart {
    padding: 19px 16px;
  }
  .science-table {
    font-size: 13px;
  }
  .science-table :is(th, td) {
    padding: 11px 8px;
  }
  .science-table caption {
    padding: 12px 8px;
  }
  .science-chart figcaption {
    font-size: 16px;
  }
  .chart-x,
  .chart-y {
    font-size: 12px;
  }
  .chart-legend {
    gap: 11px 15px;
    font-size: 13px;
  }
  .chart-area {
    height: 180px;
  }
  .chart-area svg {
    height: 180px;
  }
  .offering-strip {
    grid-template-columns: 1fr;
    gap: 20px;
    padding-block: 27px;
  }
  .offering-strip > div + div {
    padding: 20px 0 0;
    border-left: 0;
    border-top: 1px solid var(--line);
  }
  .offering-strip strong {
    font-size: 18px;
  }
  .solution-heading h2,
  .solution-split h2,
  .appliance-section h2,
  .pilot-target h2 {
    font-size: 35px;
  }
  .solution-heading {
    margin-bottom: 28px;
  }
  .local-solution-band {
    padding-block: 55px;
  }
  .local-flow {
    padding: 24px 18px;
  }
  .pilot-target {
    grid-template-columns: 1fr;
    gap: 28px;
  }
  .pilot-number > strong {
    font-size: 115px;
  }
  .appliance-photo img {
    height: 420px;
  }
  .featured-solution {
    padding: 26px;
    gap: 20px;
  }
  .featured-solution h2 {
    font-size: 35px;
  }
  .solution-deliverables {
    padding: 18px 0 0;
    border: 0;
    border-top: 1px solid #8bdfc147;
  }
  .case-heading h2 {
    font-size: 33px;
  }
  .case-panel {
    padding-top: 30px;
  }
  .case-panel + .case-panel {
    margin-top: 60px;
    padding-top: 60px;
  }
  .scenario-notice {
    padding: 20px;
  }
  .case-evidence {
    padding: 18px;
    border-radius: 12px;
  }
  .walkthrough-heading {
    align-items: flex-start;
  }
  .walkthrough-heading strong {
    font-size: 16px;
  }
  .case-evidence-head {
    align-items: flex-start;
  }
  .case-source-links {
    flex-direction: column;
  }
  .security-intro {
    padding: 22px;
  }
  .boundary-callout {
    padding: 20px;
  }
  .research-hero {
    padding-top: 30px;
  }
  .research-hero h1 {
    font-size: 43px;
  }
  body.page-inner main .research-article p {
    font-size: 17px;
  }
  .research-article h2 {
    font-size: 29px;
  }
  .page-inner {
    padding-top: 110px;
  }
  .page-inner .inner-hero-layout h1,
  .page-inner .article-hero.inner-hero-layout h1 {
    font-size: 43px;
  }
  .page-inner .page-hero h1 {
    font-size: 43px;
  }
  .page-inner .page-hero .badge {
    font-size: 12px;
    white-space: normal;
  }
  .agent-console-top {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }
  .agent-console-top .concept-label {
    align-self: flex-start;
  }
  .agent-console-top .mono {
    font-size: 12px;
  }
  .agent-role-grid {
    grid-template-columns: 1fr;
  }
  .agent-role-grid article:last-child {
    grid-column: auto;
  }
  .boundary-diagram {
    padding: 25px 16px;
  }
  .diagram-row {
    gap: 7px;
  }
  .diagram-row > span {
    font-size: 13px;
  }
  .diagram-row > i {
    min-width: 8px;
  }
  .diagram-sub {
    flex-direction: column;
    gap: 7px;
  }
  .diagram-sub span + span::before {
    content: none;
  }
  .showroom-image {
    height: 250px;
  }
  .hardware-showroom {
    width: calc(100% - 40px);
    height: 390px;
  }
  .showroom-tag {
    top: 12px;
    font-size: 12px;
    padding-inline: 12px;
    text-align: center;
  }
  .showroom-detail {
    top: 64%;
    font-size: 12px;
    left: 0;
    right: 0;
    gap: 12px;
  }
  .hardware-spec-strip {
    padding: 21px 0;
  }
  .hardware-spec-strip span {
    font-size: 19px;
  }
  .hardware-spec-strip strong {
    font-size: 12px;
  }
  .matrix-design-hero {
    padding-top: 22px;
  }
  .matrix-design-copy h1 {
    font-size: 51px;
  }
  body.page-inner main .matrix-design-copy .lead {
    font-size: 24px;
  }
  .matrix-concept-showroom .showroom-image {
    height: 460px;
  }
  .workstation-stage,
  .appliance-photo .workstation-stage {
    height: 400px;
  }
  .viewer-launch {
    bottom: 5px;
  }
  .rear-io-summary {
    padding-block: 35px 45px;
    gap: 25px;
  }
  .rear-io-summary h2 {
    font-size: 33px;
  }
  .rear-io-list > div {
    grid-template-columns: 86px minmax(0, 1fr);
    gap: 14px;
  }
  .rear-io-list dd {
    font-size: 15px;
  }
  .matrix-concept-showroom .showroom-tag {
    font-size: 12px;
  }
  .spec-list > div {
    display: block;
  }
  .spec-list dd {
    text-align: left;
    margin-top: 6px;
  }
  .size-picker {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }
  .size-picker button {
    padding: 19px 14px;
  }
  .size-picker button > strong {
    font-size: 16px;
  }
  .size-picker button > span {
    font-size: 37px;
    margin-bottom: 24px;
  }
  .size-picker button > svg {
    right: 12px;
    width: 15px;
  }
  .sizing-detail {
    padding: 23px;
  }
  .sizing-detail .button {
    width: 100%;
    white-space: normal;
  }
  .benchmark-panel {
    padding: 22px;
  }
  .benchmark-heading {
    gap: 20px;
  }
  .benchmark-tabs {
    flex-wrap: wrap;
    gap: 12px 20px;
  }
  .benchmark-tabs button {
    font-size: 14px;
    padding: 12px 0;
  }
  .workflow-options {
    display: flex;
    flex-direction: column;
    gap: 10px;
  }
  .workflow-options button {
    padding: 17px;
    font-size: 16px;
  }
  .workflow-options small {
    font-size: 12px;
  }
  .workflow-stage {
    padding: 22px;
  }
  .workflow-stage-head {
    flex-direction: column;
    align-items: flex-start;
  }
  .workflow-steps {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
  }
  .workflow-steps button {
    font-size: 12px;
    padding: 12px 6px;
    min-height: 90px;
  }
  .step-detail {
    grid-template-columns: 1fr;
    display: flex;
    flex-direction: column;
    gap: 14px;
    min-height: 0;
    padding-block: 25px;
  }
  .step-number {
    font-size: 30px;
  }
  .workflow-output {
    padding: 19px;
  }
  .sample-files > span {
    font-size: 12px;
  }
  .walkthrough-player button {
    font-size: 14px;
  }
  .article-content h2 {
    font-size: 28px;
  }
  .article-sidebar {
    grid-template-columns: 1fr;
  }
  .comparison-card {
    padding: 25px;
  }
  .comparison-card > .mono,
  .article-summary .mono,
  .article-sidebar > .mono {
    font-size: 12px;
  }
  .demo-form-card {
    padding: 23px;
  }
  .contact-quick-action {
    align-items: flex-start;
    flex-direction: column;
  }
  .sales-contact {
    padding: 23px;
  }
  .demo-agenda > .mono,
  .demo-agenda > div > span {
    font-size: 12px;
  }
  .form-row {
    grid-template-columns: 1fr;
  }
  .field label,
  .checkbox {
    font-size: 15px;
  }
  input:not([type='checkbox']),
  select,
  textarea {
    font-size: 16px;
  }
  .form-success h2 {
    font-size: 36px;
  }
  .cta-section {
    padding: 28px;
    margin-bottom: 55px;
  }
  .footer-links {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 27px 20px;
  }
  .footer-bottom {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .scroll-demo-ready [data-demo-stage] {
    opacity: 1;
    transform: none;
    transition: none;
  }
}

/* The industries overview: one card per page, in the order the menu and footer use. */
.ind-overview {
  padding-bottom: clamp(48px, 5vw, 72px);
}
body main .ind-overview-lead {
  margin: 0 0 40px;
  max-width: 66ch;
  font-size: 17px;
  line-height: 1.6;
  color: var(--lp-sub);
}
/* Five in one row on desktop; two columns with the fifth across on tablets; one on phones. */
.ind-overview-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 16px;
}
@media (max-width: 1100px) {
  .ind-overview-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .ind-overview-card:last-child {
    grid-column: 1 / -1;
  }
}
@media (max-width: 760px) {
  .ind-overview-grid {
    grid-template-columns: 1fr;
  }
}
.ind-overview-card {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: var(--space-md);
  border: 1px solid var(--color-rule);
  background: var(--color-surface);
  text-decoration: none;
  transition:
    border-color var(--dur-feedback) var(--ease-out),
    background var(--dur-feedback) var(--ease-out);
}
.ind-overview-card:hover {
  border-color: var(--color-rule-strong);
  background: var(--color-surface-raised);
}
.ind-overview-card strong {
  font-family: var(--font-display);
  font-size: 24px;
  line-height: 1.2;
  font-weight: 600;
  letter-spacing: -0.025em;
  color: var(--color-ink);
}
.ind-overview-proof {
  font-size: 15px;
  line-height: 1.55;
  color: var(--color-muted);
}
.ind-overview-go {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: auto;
  padding-top: 8px;
  font-size: 14px;
  color: var(--color-accent);
}
