:root {
  --blue: #0b71e6;
  --blue-deep: #0557b7;
  --blue-pale: #a8ddff;
  --blue-mist: #eef7ff;
  --ink: #0a1018;
  --muted: #65707d;
  --line: #dfe5eb;
  --paper: #ffffff;
  --night: #07111d;
  --night-soft: #0c1927;
  --footer: #e8eef1;
  --wrap: min(1180px, calc(100vw - 64px));
  --header-height: 78px;
  --ease: cubic-bezier(.22, .61, .36, 1);
}

* { box-sizing: border-box; }

html {
  scroll-behavior: smooth;
  background: var(--paper);
}

body {
  margin: 0;
  color: var(--ink);
  background: var(--paper);
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  font-size: 15px;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

body.menu-open { overflow: hidden; }

img { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
button, input, textarea, select { font: inherit; }
button { color: inherit; }

.skip-link {
  position: fixed;
  z-index: 1000;
  top: 12px;
  left: 12px;
  transform: translateY(-150%);
  padding: 10px 14px;
  background: #fff;
  border: 1px solid var(--blue);
  color: var(--ink);
}

.skip-link:focus { transform: none; }
.wrap { width: var(--wrap); margin-inline: auto; }

.site-header {
  position: fixed;
  z-index: 100;
  transform: translate3d(0, 0, 0);
  inset: 0 0 auto;
  height: var(--header-height);
  color: var(--ink);
  background: rgba(255, 255, 255, .92);
  border-bottom: 1px solid rgba(10, 16, 24, .08);
  backdrop-filter: blur(18px);
  transition: background .35s ease, border-color .35s ease, color .35s ease, height .35s ease;
}

body.is-home:not(.scrolled) .site-header {
  color: #fff;
  background: linear-gradient(to bottom, rgba(2, 9, 17, .68), rgba(2, 9, 17, 0));
  border-bottom-color: rgba(255, 255, 255, .15);
  backdrop-filter: none;
}

.header-row {
  height: 100%;
  display: flex;
  align-items: center;
  gap: 36px;
}

.brand {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  min-width: 168px;
}

.brand img {
  width: 106px;
  height: 46px;
  object-fit: contain;
}

.brand small {
  padding-left: 12px;
  border-left: 1px solid currentColor;
  font-size: 9px;
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: .16em;
  text-transform: uppercase;
  opacity: .72;
}

.desktop-nav {
  margin-left: auto;
  height: 100%;
  display: flex;
  align-items: center;
  gap: 28px;
}

.nav-link,
.nav-summary {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  height: 100%;
  border: 0;
  background: none;
  padding: 0;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .02em;
  cursor: pointer;
}

.nav-link::after,
.nav-summary::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 17px;
  left: 0;
  height: 1px;
  background: currentColor;
  transform: scaleX(0);
  transform-origin: right;
  transition: transform .25s ease;
}

.nav-link:hover::after,
.nav-link.active::after,
.nav-summary:hover::after { transform: scaleX(1); transform-origin: left; }

.nav-chevron {
  width: 12px;
  height: 12px;
  transition: transform .2s ease;
}

.nav-group { height: 100%; display: flex; align-items: center; }
.nav-group.open .nav-chevron { transform: rotate(180deg); }

.nav-dropdown {
  position: absolute;
  top: calc(var(--header-height) - 1px);
  left: 50%;
  width: min(760px, calc(100vw - 64px));
  padding: 28px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0;
  color: var(--ink);
  background: rgba(255, 255, 255, .98);
  border: 1px solid var(--line);
  box-shadow: 0 24px 70px rgba(14, 35, 57, .12);
  opacity: 0;
  pointer-events: none;
  transform: translate(-50%, -8px);
  transition: opacity .2s ease, transform .2s ease;
}

.nav-group.open .nav-dropdown { opacity: 1; pointer-events: auto; transform: translate(-50%, 0); }

.nav-dropdown a {
  display: grid;
  grid-template-columns: 52px 1fr;
  gap: 14px;
  padding: 15px;
  border-bottom: 1px solid var(--line);
  transition: background .2s ease, color .2s ease;
}

.nav-dropdown a:nth-last-child(-n+2) { border-bottom: 0; }
.nav-dropdown a:hover { color: var(--blue); background: var(--blue-mist); }
.nav-dropdown strong { font-size: 12px; font-weight: 700; }
.nav-dropdown span { font-size: 11px; color: var(--muted); }
.nav-code { color: var(--blue); font-size: 10px; font-weight: 800; letter-spacing: .1em; }

.header-actions { display: flex; align-items: center; gap: 14px; }
.lang { font-size: 10px; font-weight: 700; letter-spacing: .12em; }

.button {
  min-height: 44px;
  padding: 0 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  border: 1px solid var(--blue);
  border-radius: 0;
  background: var(--blue);
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .02em;
  line-height: 1;
  transition: color .25s ease, background .25s ease, border-color .25s ease, transform .25s ease;
}

.button:hover { background: var(--blue-deep); border-color: var(--blue-deep); transform: translateY(-2px); }
.button svg { width: 16px; height: 16px; transition: transform .25s ease; }
.button:hover svg { transform: translateX(3px); }

.button.ghost {
  color: var(--ink);
  background: transparent;
  border-color: rgba(10, 16, 24, .24);
}

.button.ghost:hover { color: #fff; background: var(--ink); border-color: var(--ink); }
.button.light { color: var(--ink); background: #fff; border-color: #fff; }
.button.light:hover { color: #fff; background: var(--blue); border-color: var(--blue); }

body.is-home:not(.scrolled) .header-button {
  color: #fff;
  background: rgba(11, 113, 230, .9);
  border-color: rgba(145, 212, 255, .72);
}

.mobile-toggle {
  display: none;
  width: 44px;
  height: 44px;
  padding: 0;
  place-items: center;
  border: 1px solid currentColor;
  background: transparent;
}

.mobile-toggle svg { width: 20px; height: 20px; }

.mobile-menu {
  position: fixed;
  z-index: 90;
  inset: 0;
  padding: calc(var(--header-height) + 24px) 24px 40px;
  overflow: auto;
  color: #fff;
  background: var(--night);
  opacity: 0;
  visibility: hidden;
  transform: translateY(-12px);
  transition: opacity .25s ease, transform .25s ease, visibility .25s;
}

.mobile-menu.open { opacity: 1; visibility: visible; transform: none; }
.mobile-menu a { display: flex; align-items: center; justify-content: space-between; padding: 17px 0; border-bottom: 1px solid rgba(255,255,255,.13); font-size: 22px; font-weight: 500; }
.mobile-menu a span { color: var(--blue-pale); font-size: 10px; letter-spacing: .12em; }

main { min-height: 70vh; }

.home-hero {
  position: relative;
  height: 100vh;
  min-height: 660px;
  overflow: hidden;
  isolation: isolate;
  color: #fff;
  background:
    radial-gradient(circle at 78% 24%, rgba(34, 125, 225, .28), transparent 36%),
    radial-gradient(circle at 86% 72%, rgba(126, 205, 255, .14), transparent 30%),
    linear-gradient(118deg, #02070d 0%, #06111e 45%, #092f59 100%);
}

.hero-color {
  position: absolute;
  z-index: -3;
  inset: 0;
  background:
    linear-gradient(rgba(150, 214, 255, .025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(150, 214, 255, .025) 1px, transparent 1px);
  background-size: 64px 64px;
  mask-image: linear-gradient(90deg, transparent 0%, #000 44%, #000 100%);
}

.hero-shade {
  position: absolute;
  z-index: 1;
  inset: 0;
  pointer-events: none;
  transform: translate3d(0, 0, 0);
  background: linear-gradient(90deg, rgba(2, 7, 13, .97) 0%, rgba(2, 8, 15, .86) 35%, rgba(3, 15, 29, .34) 50%, rgba(3, 15, 29, .08) 63%, rgba(3, 15, 29, .02) 100%);
}

.particle-canvas {
  position: absolute;
  z-index: 0;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: .995;
  filter: saturate(1.12);
  will-change: transform;
}

.hero-content {
  position: relative;
  z-index: 2;
  transform: translate3d(0, 0, 0);
  width: min(1640px, calc(100vw - 80px));
  height: 100%;
  display: flex;
  align-items: center;
  padding-top: var(--header-height);
}

.hero-copy { width: min(920px, 63vw); }

.kicker,
.eyebrow {
  display: flex;
  align-items: center;
  gap: 12px;
  color: var(--blue);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.kicker { color: var(--blue-pale); }
.kicker::before,
.eyebrow::before { content: ""; width: 26px; height: 1px; background: currentColor; }

.hero-copy h1 {
  margin: 20px 0 22px;
  font-size: clamp(40px, 3.6vw, 64px);
  font-weight: 560;
  line-height: 1;
  letter-spacing: -.055em;
  white-space: nowrap;
}

.hero-copy p { max-width: 530px; margin: 0; color: rgba(255,255,255,.72); font-size: clamp(15px, 1.4vw, 18px); }
.hero-actions { margin-top: 34px; display: flex; flex-wrap: wrap; gap: 12px; }
.hero-actions .button.ghost { color: #fff; border-color: rgba(255,255,255,.45); }
.hero-actions .button.ghost:hover { color: var(--ink); background: #fff; border-color: #fff; }

.hero-state {
  position: absolute;
  z-index: 3;
  transform: translate3d(0, 0, 0);
  right: max(32px, calc((100vw - min(1180px, calc(100vw - 64px))) / 2));
  bottom: 42px;
  display: flex;
  align-items: center;
  gap: 12px;
  color: rgba(255,255,255,.55);
  font-size: 10px;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.hero-state i { width: 68px; height: 1px; background: linear-gradient(90deg, var(--blue-pale), rgba(255,255,255,.18)); }
.hero-state strong { min-width: 300px; color: rgba(255,255,255,.72); font-weight: 650; transition: opacity .25s ease; }

.scroll-cue {
  position: absolute;
  z-index: 3;
  transform: translate3d(0, 0, 0);
  bottom: 32px;
  left: max(32px, calc((100vw - min(1180px, calc(100vw - 64px))) / 2));
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(255,255,255,.35);
  border-radius: 50%;
  color: #fff;
  background: transparent;
  cursor: pointer;
  animation: cue 2s ease-in-out infinite;
}

.scroll-cue svg { width: 15px; height: 15px; }
@keyframes cue { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(6px); } }

.section { padding: 132px 0; }
.section.compact { padding: 90px 0; }
.section.gray { background: #f5f7f9; }
.section.night { color: #fff; background: var(--night); }

.section-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 440px);
  gap: 80px;
  align-items: end;
  margin-bottom: 70px;
}

.section-head h2,
.split-copy h2,
.band-copy h2,
.page-title h1,
.product-copy h1 {
  margin: 16px 0 0;
  font-size: clamp(38px, 4.2vw, 66px);
  font-weight: 520;
  line-height: 1.04;
  letter-spacing: -.045em;
}

.section-head p { margin: 0; color: var(--muted); font-size: 16px; }
.section.night .section-head p { color: rgba(255,255,255,.62); }

.text-link {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin-top: 25px;
  color: var(--blue);
  font-size: 12px;
  font-weight: 750;
}

.text-link svg { width: 16px; height: 16px; transition: transform .25s ease; }
.text-link:hover svg { transform: translateX(4px); }

.feature-split {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(320px, .92fr);
  gap: clamp(60px, 8vw, 130px);
  align-items: center;
}

.feature-split.reverse { grid-template-columns: minmax(320px, .92fr) minmax(0, 1.08fr); }
.feature-split.reverse .media-stack { order: 2; }
.feature-split.reverse .split-copy { order: 1; }

.split-copy .intro { margin: 24px 0 0; color: var(--muted); font-size: 16px; }
.split-copy .fine { margin: 18px 0 0; color: var(--muted); font-size: 13px; }

.media-stack {
  position: relative;
  min-height: 500px;
}

.media-stack .main-visual {
  width: 84%;
  height: 460px;
  margin-left: auto;
  border-radius: 34px;
}

.media-stack .small-visual {
  position: absolute;
  left: 0;
  bottom: -12px;
  width: 44%;
  aspect-ratio: 1;
  border: 10px solid #fff;
  border-radius: 28px;
  box-shadow: 0 24px 60px rgba(15, 39, 66, .12);
}

.feature-split.reverse .media-stack .main-visual { margin-right: auto; margin-left: 0; }
.feature-split.reverse .media-stack .small-visual { right: 0; left: auto; }

.science-visual {
  position: relative;
  min-height: 100%;
  overflow: hidden;
  color: #fff;
  background:
    radial-gradient(circle at 72% 28%, rgba(61, 152, 255, .25), transparent 34%),
    linear-gradient(145deg, #06101b, #0a2443 68%, #0b3b72);
}

.science-visual::after {
  content: "";
  position: absolute;
  inset: 0;
  border: 1px solid rgba(140, 208, 255, .16);
  border-radius: inherit;
  pointer-events: none;
}

.science-canvas { display: block; width: 100%; height: 100%; }

.visual-caption {
  position: absolute;
  right: 22px;
  bottom: 20px;
  left: 22px;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 18px;
  pointer-events: none;
}

.visual-caption span { color: rgba(255,255,255,.42); font-size: 9px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.visual-caption strong {
  min-width: 0;
  max-width: 58%;
  overflow-wrap: anywhere;
  color: rgba(255,255,255,.85);
  font-size: 11px;
  font-weight: 650;
  text-align: right;
}

.capability-band {
  position: relative;
  overflow: hidden;
  padding: 130px 0 115px;
  color: #fff;
  background: #050b13;
}

.capability-band::before {
  content: "";
  position: absolute;
  top: -35%;
  right: -4%;
  width: 58vw;
  height: 58vw;
  border-radius: 50%;
  background:
    repeating-radial-gradient(circle at 50% 50%, rgba(143, 210, 255, .18) 0 1px, transparent 1px 7px),
    radial-gradient(circle at 47% 52%, rgba(58, 150, 255, .92), rgba(15, 78, 181, .45) 35%, transparent 68%);
  filter: blur(.2px);
  opacity: .85;
  animation: orbit 12s ease-in-out infinite alternate;
}

@keyframes orbit { to { transform: translate3d(-4%, 5%, 0) rotate(8deg) scale(1.06); } }

.capability-band .wrap { position: relative; z-index: 1; }
.capability-band h2 { margin: 15px 0 70px; font-size: clamp(38px, 4vw, 60px); font-weight: 520; letter-spacing: -.04em; }

.capability-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 28px; }
.capability-item { padding-top: 24px; border-top: 1px solid rgba(255,255,255,.22); }
.capability-item .cap-icon { width: 42px; height: 42px; margin-bottom: 23px; color: var(--blue-pale); }
.capability-item h3 { margin: 0 0 13px; font-size: 18px; line-height: 1.25; }
.capability-item p { margin: 0; color: rgba(255,255,255,.57); font-size: 12px; }

.blue-banner {
  position: relative;
  min-height: 390px;
  display: flex;
  align-items: center;
  overflow: hidden;
  color: var(--ink);
  background: #e4edf0;
}

.blue-banner::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 18% 50%, rgba(255, 255, 255, .72), transparent 30%),
    radial-gradient(circle at 78% 42%, rgba(123, 166, 184, .18), transparent 38%),
    linear-gradient(110deg, #dce8ec, #edf3f5);
}

.banner-canvas { position: absolute; z-index: 1; inset: 0; opacity: .46; }
.blue-banner .wrap { position: relative; z-index: 2; text-align: center; }
.blue-banner h2 { max-width: 830px; margin: 0 auto 28px; font-size: clamp(34px, 4vw, 58px); font-weight: 520; line-height: 1.08; letter-spacing: -.04em; }
.blue-banner p { max-width: 660px; margin: 0 auto 30px; color: #52636d; }
.blue-banner .button.light { color: #fff; background: var(--blue); border-color: var(--blue); }
.blue-banner .button.light:hover { background: var(--blue-deep); border-color: var(--blue-deep); }

.page-hero {
  padding: calc(var(--header-height) + 80px) 0 92px;
  background: #fff;
}

.page-hero.dark {
  position: relative;
  overflow: hidden;
  color: #fff;
  background: var(--night);
}

.page-hero.dark::after {
  content: "";
  position: absolute;
  right: -12vw;
  bottom: -32vw;
  width: 70vw;
  height: 70vw;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(80, 171, 255, .28), transparent 65%);
  pointer-events: none;
}

.breadcrumb { display: flex; flex-wrap: wrap; gap: 9px; margin-bottom: 45px; color: var(--muted); font-size: 10px; }
.page-hero.dark .breadcrumb { color: rgba(255,255,255,.55); }
.breadcrumb svg { width: 12px; height: 12px; align-self: center; }
.breadcrumb a:hover { color: var(--blue); }

.page-hero-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(360px, .82fr);
  gap: 90px;
  align-items: center;
}

.page-title p { max-width: 650px; margin: 26px 0 0; color: var(--muted); font-size: 17px; }
.page-hero.dark .page-title p { color: rgba(255,255,255,.62); }
.hero-side-image { position: relative; height: 430px; }
.hero-side-image .science-visual { height: 100%; border-radius: 38px; }
.hero-side-image::before { content: ""; position: absolute; z-index: -1; inset: 35px -28px -28px 35px; border: 1px solid rgba(11,113,230,.3); border-radius: 38px; }

.index-list { border-top: 1px solid var(--line); }
.index-row {
  display: grid;
  grid-template-columns: 86px minmax(240px, .62fr) 1fr 32px;
  gap: 28px;
  align-items: center;
  padding: 30px 0;
  border-bottom: 1px solid var(--line);
  transition: color .2s ease, padding .25s ease;
}
.index-row:hover { color: var(--blue); padding-inline: 12px; }
.index-row .row-number { color: var(--blue); font-size: 10px; font-weight: 800; letter-spacing: .12em; }
.index-row h3 { margin: 0; font-size: 23px; font-weight: 540; letter-spacing: -.025em; }
.index-row p { margin: 0; color: var(--muted); font-size: 13px; }
.index-row svg { width: 20px; height: 20px; }

.product-hero {
  padding: calc(var(--header-height) + 65px) 0 105px;
  background: #fff;
}

.product-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(380px, .95fr);
  gap: clamp(60px, 8vw, 120px);
  align-items: center;
}

.product-media {
  position: relative;
  min-height: 560px;
  display: grid;
  place-items: center;
  background: #071522;
  overflow: hidden;
}

.product-media::before {
  content: "";
  position: absolute;
  width: 72%;
  aspect-ratio: 1;
  border: 1px solid rgba(11,113,230,.16);
  z-index: 2;
  border-radius: 50%;
  pointer-events: none;
}

.product-media .science-visual { position: absolute; inset: 0; width: 100%; height: 100%; }

.product-copy .breadcrumb { margin-bottom: 32px; }
.product-code { margin-bottom: 16px; color: var(--blue); font-size: 10px; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }
.product-copy h1 { font-size: clamp(38px, 4.2vw, 64px); }
.product-copy .summary { margin: 25px 0 0; color: var(--muted); font-size: 16px; }
.product-copy .overview { margin: 22px 0 0; font-size: 14px; }
.product-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 34px; }

.technical-section { padding: 105px 0; background: #f5f7f9; }
.technical-head { display: grid; grid-template-columns: 1fr 1fr; gap: 80px; margin-bottom: 48px; align-items: end; }
.technical-head h2 { margin: 14px 0 0; font-size: clamp(34px, 3.7vw, 54px); font-weight: 520; letter-spacing: -.04em; }
.technical-head p { margin: 0; color: var(--muted); }
.technical-table { border-top: 1px solid #cfd7df; }
.technical-row { display: grid; grid-template-columns: 28% 37% 35%; border-bottom: 1px solid #cfd7df; }
.technical-row > div { padding: 22px 28px 22px 0; }
.technical-row > div + div { padding-left: 28px; border-left: 1px solid #cfd7df; }
.technical-label { color: var(--blue); font-size: 11px; font-weight: 750; letter-spacing: .03em; }
.technical-value { font-size: 15px; font-weight: 600; }
.technical-note { color: var(--muted); font-size: 12px; }

.detail-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 100px; }
.plain-list { margin: 25px 0 0; padding: 0; list-style: none; border-top: 1px solid var(--line); }
.plain-list li { position: relative; padding: 18px 0 18px 28px; border-bottom: 1px solid var(--line); }
.plain-list li::before { content: ""; position: absolute; top: 27px; left: 1px; width: 8px; height: 8px; border: 1px solid var(--blue); border-radius: 50%; }

.faq-list { border-top: 1px solid var(--line); }
.faq-item { border-bottom: 1px solid var(--line); }
.faq-question { width: 100%; padding: 24px 0; display: flex; justify-content: space-between; gap: 24px; border: 0; background: transparent; text-align: left; font-size: 16px; font-weight: 650; cursor: pointer; }
.faq-question span:last-child { color: var(--blue); font-size: 24px; font-weight: 300; transition: transform .2s ease; }
.faq-answer { max-height: 0; overflow: hidden; color: var(--muted); transition: max-height .35s var(--ease); }
.faq-answer p { margin: 0; padding: 0 48px 24px 0; }
.faq-item.open .faq-answer { max-height: 240px; }
.faq-item.open .faq-question span:last-child { transform: rotate(45deg); }

.article-body { max-width: 780px; margin: 0 auto; }
.article-body h2 { margin: 58px 0 18px; font-size: 30px; font-weight: 540; letter-spacing: -.03em; }
.article-body p { color: #36414d; font-size: 16px; }
.article-note { margin: 45px 0; padding: 30px 34px; border-left: 3px solid var(--blue); background: var(--blue-mist); }

.application-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 90px; }
.application-columns h2 { margin: 14px 0 0; font-size: 42px; font-weight: 520; letter-spacing: -.04em; }

.contact-grid { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 100px; }
.contact-grid h2 { margin: 16px 0 20px; font-size: 48px; font-weight: 520; line-height: 1.05; letter-spacing: -.04em; }
.contact-grid p { color: var(--muted); }
.contact-form { display: grid; grid-template-columns: 1fr 1fr; gap: 26px 22px; }
.field { display: grid; gap: 8px; }
.field.full { grid-column: 1 / -1; }
.field label { color: var(--blue); font-size: 10px; font-weight: 750; letter-spacing: .12em; text-transform: uppercase; }
.field input, .field textarea, .field select { width: 100%; padding: 14px 0; border: 0; border-bottom: 1px solid #bfc8d1; border-radius: 0; outline: 0; background: transparent; color: var(--ink); }
.field textarea { min-height: 120px; resize: vertical; }
.field input:focus, .field textarea:focus, .field select:focus { border-bottom-color: var(--blue); }

.timeline-band { position: relative; overflow: hidden; padding: 120px 0; color: #fff; background: #050b13; }
.wave-lines { position: absolute; inset: 0; opacity: .48; }
.timeline-grid { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(3, 1fr); gap: 65px; }
.timeline-item { padding-top: 25px; border-top: 1px solid rgba(255,255,255,.24); }
.timeline-item strong { display: block; margin-bottom: 12px; color: var(--blue-pale); font-size: 14px; }
.timeline-item h3 { margin: 0 0 12px; font-size: 21px; }
.timeline-item p { margin: 0; color: rgba(255,255,255,.58); font-size: 13px; }

.all-pages-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 0 45px; border-top: 1px solid var(--line); }
.all-pages-grid a { padding: 18px 0; display: flex; justify-content: space-between; gap: 20px; border-bottom: 1px solid var(--line); }
.all-pages-grid a:hover { color: var(--blue); }
.all-pages-grid span { color: var(--muted); font-size: 10px; text-transform: uppercase; }

.site-footer { padding: 78px 0 28px; color: var(--ink); background: var(--footer); }
.footer-grid { display: grid; grid-template-columns: 1.45fr .8fr .9fr .8fr; gap: 70px; }
.footer-brand img { width: 116px; height: 54px; object-fit: contain; }
.footer-brand p { max-width: 330px; margin: 20px 0 0; color: #52636d; font-size: 12px; }
.footer-col h2 { margin: 0 0 18px; color: #5b6b75; font-size: 9px; letter-spacing: .14em; text-transform: uppercase; }
.footer-col a { display: block; margin: 10px 0; color: #344650; font-size: 12px; }
.footer-col a:hover { color: var(--blue-deep); }
.footer-bottom { margin-top: 65px; padding-top: 22px; display: flex; justify-content: space-between; gap: 20px; border-top: 1px solid rgba(37,59,72,.15); color: #596a74; font-size: 10px; }
.footer-bottom a { color: inherit; text-decoration: underline; text-underline-offset: 2px; }

.reveal { opacity: 0; transform: translateY(34px); transition: opacity .85s var(--ease), transform .85s var(--ease); }
.reveal.visible { opacity: 1; transform: none; }

.toast {
  position: fixed;
  z-index: 300;
  right: 24px;
  bottom: 24px;
  max-width: min(400px, calc(100vw - 48px));
  padding: 16px 20px;
  color: #fff;
  background: var(--night);
  box-shadow: 0 18px 60px rgba(0,0,0,.2);
  opacity: 0;
  pointer-events: none;
  transform: translateY(16px);
  transition: opacity .25s ease, transform .25s ease;
}
.toast.show { opacity: 1; transform: none; }

@media (max-width: 980px) {
  :root { --wrap: min(100% - 40px, 760px); }
  .desktop-nav, .lang, .header-button { display: none; }
  .header-actions { margin-left: auto; }
  .mobile-toggle { display: grid; }
  body.is-home:not(.scrolled) .mobile-toggle { border-color: rgba(255,255,255,.55); }
  .hero-content { width: var(--wrap); }
  .hero-copy { width: min(640px, 82vw); }
  .hero-copy h1 { white-space: normal; text-wrap: balance; }
  .page-hero-grid, .product-layout, .feature-split, .feature-split.reverse { grid-template-columns: 1fr; gap: 60px; }
  .feature-split.reverse .media-stack, .feature-split.reverse .split-copy { order: initial; }
  .page-hero-grid { gap: 55px; }
  .hero-side-image { height: 390px; }
  .product-media { min-height: 500px; }
  .section-head, .technical-head { grid-template-columns: 1fr; gap: 24px; }
  .capability-grid { grid-template-columns: repeat(2, 1fr); gap: 45px 30px; }
  .capability-band::before { width: 90vw; height: 90vw; top: -15%; right: -25%; }
  .detail-grid, .application-columns, .contact-grid { grid-template-columns: 1fr; gap: 60px; }
  .footer-grid { grid-template-columns: 1.4fr 1fr 1fr; }
  .footer-col:last-child { display: none; }
}

@media (max-width: 680px) {
  :root { --wrap: calc(100vw - 32px); --header-height: 68px; }
  body { font-size: 14px; }
  .brand { min-width: 0; }
  .brand img { width: 94px; height: 40px; }
  .brand small { display: none; }
  .home-hero { min-height: 600px; }
  .hero-copy { width: 100%; padding-bottom: 36px; }
  .hero-copy h1 { font-size: clamp(36px, 10vw, 42px); line-height: .98; }
  .hero-copy p { max-width: 92%; font-size: 14px; }
  .hero-actions .button { flex: 1 1 160px; }
  .hero-state { right: 16px; bottom: 20px; }
  .hero-state i { width: 28px; }
  .hero-state strong { min-width: 0; max-width: 190px; line-height: 1.25; }
  .scroll-cue { left: 16px; bottom: 16px; }
  .particle-canvas { opacity: .9; }
  .section { padding: 86px 0; }
  .section.compact { padding: 70px 0; }
  .section-head { margin-bottom: 42px; }
  .section-head h2, .split-copy h2, .band-copy h2, .page-title h1, .product-copy h1 { font-size: 38px; }
  .media-stack { min-height: 380px; }
  .media-stack .main-visual { width: 89%; height: 340px; border-radius: 24px; }
  .media-stack .small-visual { width: 47%; border-width: 7px; border-radius: 20px; }
  .media-stack .small-visual .visual-caption { gap: 0; overflow: hidden; }
  .media-stack .small-visual .visual-caption span { display: none; }
  .media-stack .small-visual .visual-caption strong { flex: 1 1 auto; width: 100%; max-width: none; }
  .capability-band { padding: 86px 0; }
  .capability-band h2 { margin-bottom: 48px; }
  .capability-grid { grid-template-columns: 1fr; gap: 35px; }
  .capability-item { display: grid; grid-template-columns: 48px 1fr; column-gap: 18px; }
  .capability-item .cap-icon { grid-row: 1 / span 2; }
  .capability-item h3, .capability-item p { grid-column: 2; }
  .blue-banner { min-height: 430px; }
  .page-hero { padding: calc(var(--header-height) + 45px) 0 72px; }
  .page-hero-grid { gap: 45px; }
  .breadcrumb { margin-bottom: 32px; }
  .hero-side-image { height: 310px; }
  .hero-side-image img, .hero-side-image::before { border-radius: 24px; }
  .hero-side-image::before { inset: 24px 0 -16px 24px; }
  .index-row { grid-template-columns: 50px 1fr 22px; gap: 14px; padding: 24px 0; }
  .index-row p { grid-column: 2 / 4; }
  .product-hero { padding: calc(var(--header-height) + 36px) 0 70px; }
  .product-layout { gap: 40px; }
  .product-media { min-height: 370px; margin-inline: -16px; }
  .product-media img { width: 82%; height: 300px; }
  .product-actions .button { flex: 1 1 160px; }
  .technical-section { padding: 76px 0; }
  .technical-row { grid-template-columns: 1fr; padding: 20px 0; }
  .technical-row > div { padding: 3px 0; }
  .technical-row > div + div { padding: 5px 0 0; border-left: 0; }
  .technical-label { font-size: 10px; opacity: .76; }
  .technical-value { font-size: 16px; }
  .technical-note { margin-top: 5px; }
  .contact-form { grid-template-columns: 1fr; }
  .field.full { grid-column: auto; }
  .timeline-grid, .all-pages-grid { grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 48px 26px; }
  .footer-brand { grid-column: 1 / -1; }
  .footer-bottom { flex-direction: column; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  .reveal { opacity: 1; transform: none; }
}

.about-equipment{background:#f5f7fa}
.about-equipment .equipment-lead{max-width:780px;color:#63718a;line-height:1.7}
.equipment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:36px}
.equipment-grid figure,.xrd-figure{margin:0;background:#fff}
.equipment-grid img{display:block;width:100%;height:250px;object-fit:cover}
.equipment-grid figcaption{padding:17px 18px;color:#233758;font-size:13px}
.xrd-section{background:#fff}
.xrd-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(250px,.75fr);gap:48px;align-items:center}
.xrd-figure{border:1px solid #dbe2ed;padding:20px}
.xrd-figure img{display:block;width:100%;height:auto}
.xrd-figure figcaption{margin-top:14px;color:#657187;font-size:12px;line-height:1.6}
.xrd-copy h2{margin:16px 0 20px;font-size:clamp(28px,3vw,42px);font-weight:520;letter-spacing:-.035em}
.xrd-copy p{color:#63718a;line-height:1.7}
@media(max-width:700px){.equipment-grid,.xrd-layout{grid-template-columns:1fr}.equipment-grid img{height:220px}.xrd-layout{gap:24px}.xrd-figure{padding:12px}}

/* About: editorial long-form layout */
.about-editorial{background:#fff;color:#16274b}
.about-editorial *{box-sizing:border-box}
.about-cover{background:#071541;color:#fff;padding:170px 0 86px;min-height:590px;display:flex;align-items:center}
.about-cover-inner{width:100%}
.about-kicker,.about-rail,.about-action-lines span,.about-country-list,.about-figure-caption{font-size:12px;font-weight:600;letter-spacing:.13em;line-height:1.5}
.about-cover .about-kicker{display:flex;justify-content:space-between;border-bottom:1px solid #52618a;padding-bottom:20px;color:#b7c5e4;max-width:100%}
.about-cover h1{font-size:clamp(49px,6vw,92px);line-height:1.06;letter-spacing:-.055em;font-weight:400;margin:55px 0 27px;max-width:950px}
.about-cover-inner>p:not(.about-kicker){color:#cbd5e9;font-size:clamp(19px,2vw,25px);line-height:1.48;max-width:690px;margin:0}
.about-jump{display:flex;gap:32px;flex-wrap:wrap;border-top:1px solid #46557d;margin-top:85px;padding-top:22px}
.about-jump a{color:#bac9e6;font-size:13px;text-decoration:none}.about-jump a:hover{color:#fff}
.about-chapter{padding:110px 0}.about-chapter h2,.about-geography h2{font-size:clamp(35px,4vw,61px);font-weight:500;line-height:1.12;letter-spacing:-.045em;margin:0 0 35px;max-width:850px;color:inherit}
.about-chapter p{font-size:17px;line-height:1.8;margin:0 0 22px;color:#586980}.about-chapter .about-lead{font-size:clamp(20px,2vw,27px);line-height:1.5;color:#243c62;margin-bottom:27px}
.about-rail{display:flex;align-items:center;gap:15px;color:#55719a;margin-bottom:58px}
.about-rail:after{content:"";height:1px;background:#cfd8e5;flex:1;margin-left:16px}.about-number{color:#1c4d9b;font-size:13px}
.about-split{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.25fr);gap:8vw;align-items:start}.about-split>.about-rail{grid-column:1/-1;margin-bottom:0}.about-split>.about-body{grid-column:2}
.about-white{background:#fff;color:#152749}.about-pale{background:#f2f5f9;color:#152749}
.about-text-link{display:inline-flex;align-items:center;gap:32px;color:#244d86;text-decoration:none;border-bottom:1px solid #a7b7cb;padding:12px 0;margin-top:12px;font-weight:600}.about-text-link:hover{color:#071541}
.about-dark{background:#101a32;color:#fff}.about-dark .about-rail{color:#b5c8e6}.about-dark .about-rail:after{background:#344565}.about-dark .about-number{color:#a3bbdf}
.about-dark-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:8vw}.about-dark-copy p{color:#c5d0e3}.about-action-lines{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #63718b;margin-top:80px}.about-action-lines>div{padding:27px 35px 0 0}.about-action-lines>div+div{border-left:1px solid #53617b;padding-left:35px}.about-action-lines span{color:#9cb8df}.about-action-lines p{color:#fff;font-size:16px;line-height:1.6;margin:18px 0 0}
.about-proof{border-top:1px solid #cbd5e3;margin-top:53px}.about-proof>div{display:grid;grid-template-columns:190px 1fr;gap:35px;border-bottom:1px solid #cbd5e3;padding:25px 0}.about-proof strong{font-size:17px;font-weight:600}.about-proof p{font-size:15px;margin:0;line-height:1.65}
.about-experience{display:grid;grid-template-columns:.85fr 1.2fr;gap:9vw;align-items:center}.about-figure{font-size:clamp(104px,13vw,190px)!important;line-height:.9!important;font-weight:300;color:#173d7c!important;letter-spacing:-.09em;margin:0 0 24px!important}.about-figure span{font-size:.42em;vertical-align:top;letter-spacing:0}.about-figure-caption{max-width:250px;color:#596e8f!important;text-transform:uppercase}
.about-geography{background:#071541;color:#fff;padding:95px 0 80px}.about-map-head{display:grid;grid-template-columns:1fr .7fr;gap:8vw;align-items:end}.about-map-head .about-kicker{color:#a7bce1;margin:0 0 25px}.about-map-head>p{color:#b8c7e3;font-size:15px;line-height:1.7;margin:0 0 35px}.about-geography h2{margin-bottom:35px}
.about-map{background:#0a1e53;border:1px solid #243d74;overflow:hidden;margin:32px 0 25px}.about-map svg{width:100%;height:auto;display:block}.map-grid path{fill:none;stroke:#263d71;stroke-width:.8}.map-land path{fill:#1c417e;stroke:#4d70a4;stroke-width:1.3;stroke-linejoin:round}.pin-halo{fill:#e95e5e;opacity:.18}.pin-core{fill:#ee6868;stroke:#ffd9d9;stroke-width:1}.about-country-list{color:#aebfe0;letter-spacing:.03em;font-weight:400;line-height:2}.about-country-list i{display:inline-block;width:3px;height:3px;border-radius:50%;background:#e46666;vertical-align:middle;margin:0 11px}
.about-equipment-row{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:70px}.about-equipment-row figure{margin:0}.about-equipment-row img{width:100%;aspect-ratio:1.58;object-fit:cover;display:block}.about-equipment-row figcaption{display:flex;gap:18px;border-bottom:1px solid #cbd5e3;padding:14px 0;color:#536886;font-size:13px}.about-equipment-row figcaption span{color:#244d86}
.about-team-layout{display:grid;grid-template-columns:1fr 1fr;gap:10vw}.about-team-layout blockquote{margin:0;border-left:2px solid #6c8dbd;padding:16px 0 0 35px;color:#244477;font-size:clamp(25px,2.4vw,37px);line-height:1.35;letter-spacing:-.03em}.about-team-layout cite{display:block;font-size:11px;letter-spacing:.15em;font-style:normal;margin-top:44px;color:#6e84a1}
.about-next{background:#173d7a;color:#fff;padding:105px 0 120px}.about-next .about-rail{color:#b5cbee}.about-next .about-rail:after{background:#6c84a8}.about-next .about-number{color:#d5e4ff}.about-next-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:8vw}.about-next h2{font-size:clamp(39px,4.5vw,66px);line-height:1.1;letter-spacing:-.045em;font-weight:500;margin:0}.about-next p{color:#d2def1;font-size:17px;line-height:1.75;margin:0 0 32px}.about-cta{display:flex;justify-content:space-between;align-items:center;padding:19px 22px;background:#fff;color:#173d7a;text-decoration:none;max-width:300px;font-weight:600}.about-cta:hover{background:#e8f0ff}
.about-chapter[id],.about-geography[id],.about-next[id]{scroll-margin-top:85px}
@media(max-width:760px){.about-cover{padding:130px 0 55px;min-height:0}.about-cover h1{margin:40px 0 23px}.about-jump{margin-top:65px;gap:13px 22px}.about-jump a{font-size:12px}.about-chapter{padding:72px 0}.about-rail{margin-bottom:35px!important;gap:10px}.about-split,.about-dark-layout,.about-experience,.about-map-head,.about-team-layout,.about-next-layout{display:block}.about-split>.about-rail,.about-split>.about-body{grid-column:auto}.about-split>h2{margin-bottom:23px}.about-chapter h2,.about-geography h2{margin-bottom:25px}.about-chapter p{font-size:15px}.about-chapter .about-lead{font-size:19px}.about-action-lines{display:block;margin-top:50px}.about-action-lines>div,.about-action-lines>div+div{padding:17px 0;border-left:0;border-bottom:1px solid #53617b}.about-action-lines p{margin:7px 0 0}.about-proof>div{display:block}.about-proof p{margin-top:8px}.about-figure{margin-top:0!important}.about-figure-caption{margin-bottom:40px!important}.about-geography{padding:70px 0}.about-map-head>p{margin-bottom:10px}.about-map{margin:22px -18px 19px}.about-country-list{font-size:11px}.about-equipment-row{grid-template-columns:1fr;gap:28px;margin-top:40px}.about-team-layout blockquote{margin-top:35px;font-size:26px}.about-next{padding:72px 0 85px}.about-next p{margin-top:28px}.about-cta{max-width:none}}


:root{--blue:#b9c9ff;--blue-deep:#e5eaff;--blue-pale:#ccd7ff;--blue-mist:#142452;--ink:#f3f4fa;--muted:#b8c1da;--line:#344365;--paper:#06133f;--night:#06133f;--night-soft:#0d1c49;--footer:#06133f;--wrap:min(85.8vw,1544px)}
body{background:#06133f;color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px}button,input,select,textarea{font:inherit}button{color:inherit}.site-header,body.is-home:not(.scrolled) .site-header{background:rgba(6,19,63,.95);border-bottom:1px solid rgba(255,255,255,.08);color:#fff}.brand{min-width:145px}.brand img,.footer-brand img{filter:brightness(0) invert(1);width:130px;height:58px;object-fit:contain}.brand small,.lang{display:none}.desktop-nav{gap:27px}.nav-link,.nav-summary{color:#ced4e7;font-size:13px}.nav-dropdown{background:#101f4c;border:1px solid #354469;box-shadow:0 20px 60px #02092380}.nav-dropdown a{border-color:var(--line)}.nav-dropdown strong{font-size:14px;color:white}.nav-dropdown span{font-size:12px}.mobile-menu{background:#06133f;color:white}.mobile-toggle{color:white}.button,body.is-home:not(.scrolled) .header-button{background:#273b7c;color:white;border:1px solid #53679f;border-radius:0;font-size:13px}.button.ghost{background:transparent;color:#fff}.button.light{background:#f0f3ff;color:#101e4a}.button:hover{background:#3a5196;color:#fff}.section{padding:100px 0}.section.gray,.technical-section{background:#0b1946}.section-head h2{font-size:clamp(32px,3.4vw,49px);line-height:1.16}.section-head p,.index-row p,.product-copy .overview{font-size:16px}.eyebrow{font-size:12px;color:#bac7ed;letter-spacing:.1em}.eyebrow:before{display:none}.index-row{padding:30px 0}.index-row h3{font-size:23px;line-height:1.3}.index-row:hover{background:#11214d}.text-link{color:#d8e1ff;margin-top:28px;display:inline-block}.capability-band{background:#111f4b}.capability-band:before{display:none}.capability-band p{font-size:15px;color:#bac4df}.blue-banner{background:linear-gradient(120deg,#172656,#30447f);padding:96px 0;color:#fff}.blue-banner:before{display:none}.blue-banner h2{font-size:clamp(32px,4vw,54px);max-width:800px}.blue-banner p{color:#cbd3e9;max-width:570px;font-size:17px}.page-hero{background:#06133f;padding:160px 0 76px}.page-title{max-width:950px}.page-title h1{font-size:clamp(40px,5.1vw,72px);font-weight:400;line-height:1.08}.page-title p{max-width:740px;font-size:18px;color:#b8c1da}.breadcrumb,.breadcrumb a{color:#aab8da}.product-hero{background:#06133f}.product-media{min-height:0;margin:0;background:transparent;overflow:hidden;border:1px solid #344365}.product-media:before,.product-media:after{display:none}.actual-product{display:block;width:100%;height:440px;object-fit:contain;background:#fff}.product-media figcaption{padding:18px 22px;font-size:13px;color:#bac5e1;background:#11204b}.product-code{font-size:12px}.technical-table{border:1px solid #435373}.technical-row{border-bottom:1px solid #435373}.technical-row:last-child{border-bottom:0}.technical-row>div{padding:22px}.technical-row>div+div{border-left:1px solid #435373}.technical-label{font-size:13px}.technical-note{font-size:14px}.plain-list li{padding-left:0}.plain-list li:before{display:none}.article-body p{color:#bec8e1}.article-note{background:#142452}.timeline-band{background:#101f4b}.timeline-item p{font-size:15px;color:#bdc7df}.field label{font-size:12px}.field input,.field textarea,.field select{color:white;border-color:#6c7b9e}.field select option{background:#142452}.form-note,.document-note{font-size:14px;color:#b8c1da}.download-actions{display:flex;flex-wrap:wrap;gap:16px;margin:0 0 50px}.site-footer{border-top:1px solid #344365}.footer-col h2{color:#96a8d6;font-size:12px}.footer-col a,.footer-brand p{color:#c1cbe2;font-size:14px}.footer-bottom{color:#96a6cb;border-color:#344365;font-size:12px}.reveal{opacity:1;transform:none}.material-type{padding:55px 35px;background:#152551;min-height:280px;display:flex;flex-direction:column;justify-content:center;gap:20px}.material-type span{color:#aabce7;font-size:12px;text-transform:uppercase;letter-spacing:.12em}.material-type strong{font-size:36px;font-weight:400;line-height:1.2}.about-statement{background:linear-gradient(140deg,#172958,#304780);padding:45px}.about-statement h2{font-size:32px;font-weight:400}.about-statement span,.about-statement a{font-size:14px;color:#c5d1ef}.sem-hero{height:100svh;min-height:710px;max-height:1050px;position:relative;overflow:hidden;background:#06133f}.sem-grid{height:100%;display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:center;padding-top:72px;padding-bottom:82px}.sem-copy{position:relative;z-index:2;margin-top:-18px}.sem-copy h1{font-size:clamp(25px,2.25vw,38px);line-height:1.65;font-weight:400;color:#c8cde4;max-width:650px;letter-spacing:-.025em;margin:0}.sem-copy em{font-weight:600;color:white}.stage{width:115%;height:610px;max-height:72vh;margin-left:-5%;position:relative}.stage canvas{display:block;width:100%;height:100%}.motionbar{position:absolute;right:7.1vw;bottom:39px;display:flex;gap:22px;align-items:center;color:#a7b4d4;font-size:11px;letter-spacing:.02em}.pause{width:38px;height:38px;border:1px solid #344365;border-radius:50%;background:transparent;color:#cad5f4;cursor:pointer}.scroll{position:absolute;left:7.1vw;bottom:54px;width:87px;height:87px;border:1px solid #344365;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;font-size:10px;color:#cad2e8;letter-spacing:.08em;text-align:center}.scroll span{display:block}.scroll b{font-size:27px;font-weight:400}.home-introduction{background:linear-gradient(155deg,#0c1a4a,#273b7f 70%,#324894)}.intro-title{font-size:clamp(30px,3.1vw,47px);line-height:1.25;font-weight:400;margin:0 0 75px;letter-spacing:-.025em}.intro-columns{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center}.intro-columns p{font-size:18px;color:#d0d7eb;line-height:1.8}.sem-document{margin:0;max-width:470px;justify-self:end}.sem-document img{width:100%;display:block}.sem-document figcaption{font-size:12px;color:#c3cce3;margin-top:15px}.contact-grid a{overflow-wrap:anywhere}a:focus-visible,button:focus-visible{outline:2px solid white;outline-offset:5px}
@media(max-width:1100px){.desktop-nav{gap:18px}.header-button{padding:12px}.brand{min-width:130px}.sem-copy h1{font-size:27px}}
@media(max-width:760px){:root{--wrap:calc(100vw - 40px)}.section{padding:70px 0}.intro-columns{grid-template-columns:1fr;gap:38px}.intro-title{margin-bottom:40px}.sem-document{max-width:100%;justify-self:stretch}.actual-product{height:340px}.technical-row>div{padding:14px}.technical-row>div+div{padding-left:14px}.product-copy h1{font-size:38px}.page-title h1{font-size:42px}.page-title p{font-size:16px}.article-body{padding:0 20px}.footer-grid{gap:35px}.sem-hero{min-height:820px;max-height:1020px}.sem-grid{display:flex;flex-direction:column;align-items:flex-start;padding-top:145px;padding-bottom:105px;gap:0}.sem-copy{margin:0}.sem-copy h1{font-size:24px;line-height:1.6}.stage{width:118%;height:410px;min-height:310px;max-height:none;flex:1;margin:0 -9%}.scroll{width:65px;height:65px;bottom:28px;left:20px;font-size:9px}.motionbar{bottom:40px;right:20px;font-size:10px;gap:12px}.brand img{width:115px;height:51px}.page-hero{padding:128px 0 52px}.technical-head{gap:25px}.about-statement{padding:30px}.about-statement h2{font-size:27px}.blue-banner{padding:65px 0}.index-row h3{font-size:21px}.index-row p{font-size:15px}.intro-columns p{font-size:16px}}
.hero-particles{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,19,63,.65),rgba(6,19,63,.28) 33%,transparent 57%)}.sem-grid{position:relative;z-index:1}.sem-copy{width:640px;max-width:54vw}.sem-copy h1{font-size:clamp(25px,2.1vw,34px)}.sem-hero .scroll{z-index:2}.sem-hero .scroll b{margin-top:5px}
@media(max-width:760px){.hero-particles{top:260px;height:calc(100% - 260px);object-position:66% center}.hero-shade{background:linear-gradient(#06133f 0%,#06133f 27%,transparent 55%,#06133f 100%)}.sem-copy{max-width:100%;width:100%}.sem-copy h1{font-size:23px;line-height:1.65}.sem-grid{padding-top:140px}.sem-hero{min-height:820px}}

/* Smaller, contained homepage illustration */
.sem-hero .hero-particles{inset:auto;left:auto;right:2%;top:50%;width:min(73vw,1100px);height:auto;max-height:76%;object-fit:contain;transform:translateY(-50%);mask-image:linear-gradient(to right,transparent 0%,#000 20%,#000 94%,transparent 100%);-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 20%,#000 94%,transparent 100%)}
.sem-hero .hero-shade{background:linear-gradient(90deg,#06133f 0%,rgba(6,19,63,.9) 27%,transparent 49%),linear-gradient(180deg,#06133f 0%,transparent 24%,transparent 77%,#06133f 100%)}
@media(max-width:760px){.sem-hero .hero-particles{right:-9%;top:58%;width:132%;max-width:none;max-height:54%;transform:translateY(-25%);object-fit:contain}.sem-hero .hero-shade{background:linear-gradient(180deg,#06133f 0%,#06133f 32%,transparent 50%,transparent 78%,#06133f 100%)} }

@media(max-width:760px){.sem-hero .hero-particles{filter:url(#particle-blue-key)}.sem-hero,.sem-hero .sem-grid{background-color:#06133f}.sem-hero .sem-grid{background:none}}

@media(max-width:760px){
.sem-hero{height:100svh;min-height:620px;max-height:880px}
.sem-hero .sem-grid{padding-top:clamp(105px,15svh,135px);padding-bottom:80px}
.sem-hero .sem-copy h1{font-size:clamp(20px,5.6vw,24px);line-height:1.55}
.sem-hero .hero-particles{width:108%;right:0;top:37%;max-height:42%;transform:none;mask-image:linear-gradient(to right,transparent,#000 18%,#000 96%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,#000 18%,#000 96%,transparent)}
.sem-hero .hero-shade{background:none}
.sem-hero .scroll{bottom:20px;width:55px;height:55px;font-size:8px}
}
@media(max-width:760px) and (max-height:680px){.sem-hero .sem-grid{padding-top:94px}.sem-hero .sem-copy h1{font-size:20px}.sem-hero .hero-particles{top:40%;max-height:40%}}


.brand img{width:110px;height:49px}.brand{min-width:125px}.mobile-toggle{border-color:rgba(255,255,255,.18)}
.sem-copy h1{font-size:clamp(32px,3.1vw,48px);line-height:1.2;font-weight:400;color:#f5f6fb;letter-spacing:-.035em}.hero-kicker{font-size:11px;letter-spacing:.13em;color:#b6c2df;margin:0 0 22px}.hero-description{font-size:20px;color:#b9c3dc;margin:25px 0 16px}.hero-materials{font-size:12px;color:#a4b4d6;line-height:1.8;max-width:410px;margin:0}
main>.section,main>.technical-section,main>.product-hero{--ink:#152544;--muted:#5b677a;--line:#dce2e9;--blue:#3d5f93;background:#fff;color:var(--ink)}
main>.section.gray,main>.technical-section{background:#f5f7fa}
main>.home-introduction{background:#fff;color:#152544}
.home-introduction .intro-columns p,.home-introduction .sem-document figcaption{color:#5b677a}
main>.section .eyebrow,main>.technical-section .eyebrow{color:#526d94}
main>.section .text-link{color:#254b83}.index-row:hover{background:#eef2f7}
main>.section .button,main>.product-hero .button{background:#163562;color:white;border-color:#163562}
main>.section .button.ghost,main>.product-hero .button.ghost{background:transparent;color:#254b83;border-color:#bcc9da}
.product-hero .breadcrumb,.product-hero .breadcrumb a{color:#60718a}.product-hero .product-code{color:#3d5f93}
.technical-table,.technical-row,.technical-row>div+div{border-color:#ccd5e1}.technical-label{color:#45658d}
.article-body p,.contact-grid p{color:#5b677a}.article-note{background:#eef2f8}.field input,.field textarea,.field select{color:#152544;border-color:#b5c2d4}.field select option{background:white;color:#152544}.form-note,.document-note{color:#5b677a}.faq-question{color:inherit}
@media(max-width:760px){
.brand img{width:98px;height:44px}.header-row{padding:0 4px}
.sem-hero{height:90svh;min-height:590px;max-height:780px}
.sem-hero .sem-grid{padding-top:clamp(102px,14svh,120px)}
.sem-hero .sem-copy h1{font-size:clamp(31px,8.1vw,40px);line-height:1.16;letter-spacing:-.035em}
.hero-kicker{font-size:9px;letter-spacing:.12em;margin-bottom:17px}
.hero-description{font-size:17px;margin:18px 0 10px}.hero-materials{font-size:10px;max-width:320px;line-height:1.75}
.sem-hero .hero-particles{width:108%;right:7%;top:43%;max-height:43%}
.sem-hero .scroll{bottom:18px;width:48px;height:48px;font-size:7px}.sem-hero .scroll b{font-size:23px}
.intro-title{font-size:29px}.home-introduction{padding-top:55px}
}
@media(max-width:760px) and (max-height:700px){.sem-hero .sem-copy h1{font-size:30px}.sem-hero .sem-grid{padding-top:95px}.hero-description{margin-top:12px}.hero-kicker{margin-bottom:12px}.sem-hero .hero-particles{top:47%;max-height:38%}}

@media(max-width:760px){.sem-hero .hero-particles{mask-image:none;-webkit-mask-image:none}}

.about-statement{background:#fff;border:1px solid #dce2e9;color:#152544;padding:36px}.about-statement span,.about-statement a{color:#45658d}.about-statement h2{color:#152544;font-size:30px;line-height:1.45;font-weight:400}
a>svg{width:20px;height:20px;display:inline-block;vertical-align:middle;flex-shrink:0}.text-link svg,.about-statement a svg{margin-left:10px}
.contact-grid h2{font-size:36px;line-height:1.23;font-weight:400;letter-spacing:-.025em}
.product-media{display:block;padding:0;border:0;background:none;overflow:visible;min-height:0}.product-media .actual-product{display:block;width:100%;height:auto;max-height:none;object-fit:contain;margin:0;border:1px solid #dce2e9;box-sizing:border-box}.product-media figcaption{display:block;position:static;width:100%;padding:13px 0 0;margin:0;background:none;color:#5b677a;font-size:14px;text-align:left;line-height:1.5}
.spec-items{display:grid;gap:0;font-weight:400}.spec-item{display:grid;grid-template-columns:minmax(85px,.8fr) minmax(0,1.5fr);gap:14px;padding:10px 0;border-bottom:1px solid #dce2e9;line-height:1.6;font-size:14px}.spec-item:first-child{padding-top:0}.spec-item:last-child{border:0;padding-bottom:0}.spec-name{color:#526d94;font-weight:500}.technical-value{font-weight:500}
.sem-hero .scroll{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:0;width:76px;height:76px;line-height:1;text-align:center}.sem-hero .scroll span{position:static;display:block;transform:none;margin:0;font-size:9px;line-height:1}.sem-hero .scroll b{position:static;display:block;transform:none;margin:0;font-size:25px;line-height:1}
@media(max-width:760px){.about-statement{padding:24px}.about-statement h2{font-size:25px;line-height:1.4}.contact-grid h2{font-size:29px;line-height:1.25}.detail-grid h2{font-size:28px!important;line-height:1.25}.product-media{padding:0!important;min-height:0}.product-media .actual-product{height:auto;max-height:none}.technical-row{grid-template-columns:1fr;padding:20px}.technical-row>div,.technical-row>div+div{padding:0;border-left:0}.technical-label{margin-bottom:13px}.technical-value{margin-bottom:12px;font-size:15px}.technical-note{font-size:13px;line-height:1.65}.spec-item{font-size:14px;grid-template-columns:minmax(80px,.75fr) minmax(0,1.5fr);gap:12px}.sem-hero .scroll{width:60px;height:60px;bottom:18px}.sem-hero .scroll span{font-size:8px}.sem-hero .scroll b{font-size:22px}}

sub{font-size:.7em;line-height:0;vertical-align:baseline;position:relative;top:.14em;bottom:auto;letter-spacing:0;font-weight:inherit}

/* News and service notices follow the established white content system. */
.updates-section{background:#fff;color:#172745;border-top:1px solid #e5e9f0}
.updates-section .eyebrow{color:#54709b}
.updates-section .section-head p{color:#657184}
.updates-list{border-top:1px solid #d9e0e9}
.update-entry{display:grid;grid-template-columns:150px minmax(0,1fr) 36px;gap:28px;align-items:start;padding:27px 0;border-bottom:1px solid #d9e0e9;color:#172745}
.update-entry:hover{color:#28518d}
.update-meta{font-size:12px;letter-spacing:.06em;color:#647b9b;text-transform:uppercase;line-height:1.6}
.update-entry h3{font-size:clamp(18px,2vw,26px);line-height:1.3;font-weight:500;margin:0 0 8px}
.update-entry p{font-size:14px;line-height:1.6;color:#647184;margin:0}
.update-arrow{font-size:25px;font-weight:300;line-height:1}
.updates-empty{padding:24px 0;border-top:1px solid #d9e0e9;color:#657184}
.updates-section .text-link{color:#294e86}
@media(max-width:650px){.update-entry{grid-template-columns:1fr 26px;gap:8px 14px;padding:22px 0}.update-meta{grid-column:1/-1}.update-entry h3{font-size:20px}}
.home-introduction .intro-columns p+p{margin-top:18px}
.about-strengths{background:#fff;color:#172745}
.about-strengths .section-head p{color:#657184}
.strength-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:55px}
.strength-item{border-top:1px solid #bcc9da;padding-top:21px}
.strength-item span{font-size:12px;letter-spacing:.12em;color:#53719a}
.strength-item h3{font-size:clamp(20px,2vw,27px);font-weight:500;line-height:1.25;margin:28px 0 18px}
.strength-item p{font-size:15px;line-height:1.75;color:#657184;margin:0}
.about-purpose .wrap{display:grid;grid-template-columns:1fr 2fr;gap:50px;align-items:start}
.about-purpose p{font-size:clamp(20px,2.2vw,29px);line-height:1.5;font-weight:400;margin:0;max-width:900px}
@media(max-width:700px){.strength-grid{grid-template-columns:1fr;gap:34px;margin-top:36px}.strength-item h3{margin:14px 0 10px}.about-purpose .wrap{grid-template-columns:1fr;gap:22px}.about-purpose p{font-size:21px}}

.about-doc-section{background:#fff;color:#172745}
.about-doc-section.gray{background:#f5f7fa}
.about-doc-wrap{max-width:1120px}
.about-doc-wrap h2{font-size:clamp(29px,3.2vw,46px);line-height:1.2;font-weight:500;letter-spacing:-.03em;margin:0 0 28px}
.about-doc-wrap h2:not(:first-child){margin-top:68px}
.about-doc-wrap h3{font-size:clamp(19px,2vw,25px);font-weight:520;margin:32px 0 10px;color:#17335d}
.about-doc-wrap p{max-width:900px;font-size:16px;line-height:1.8;color:#526176;margin:0 0 15px}
.about-doc-wrap .about-doc-kicker{font-size:13px;letter-spacing:.035em;color:#52709c;margin:-10px 0 32px}
.about-doc-section:first-of-type .about-doc-wrap>p:first-of-type{font-size:19px;color:#263a59}
@media(max-width:700px){.about-doc-wrap h2:not(:first-child){margin-top:48px}.about-doc-wrap p{font-size:15px}.about-doc-section{padding-block:72px}}


.about-panel{background:#fff}.about-panel.about-soft{background:#f5f7fa}
.about-panel h2,.about-equipment h2{color:#152544;font-size:clamp(32px,3.5vw,50px);font-weight:500;letter-spacing:-.04em;line-height:1.17;margin:18px 0 32px;max-width:800px}
.about-panel p{font-size:16px;line-height:1.8;color:#58677d;max-width:830px}
.about-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:42px 0}
.about-card{background:#fff;border:1px solid #dbe2eb;padding:27px;min-height:155px}
.about-card h3{font-weight:550;font-size:18px;line-height:1.35;color:#17335d;margin:0 0 14px}
.about-card p{font-size:15px;line-height:1.65;margin:0}.about-card p:empty{display:none}main>.about-panel:nth-of-type(2) .about-card-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.about-link-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#dbe2eb;border:1px solid #dbe2eb}
.about-link{display:block;position:relative;background:#fff;padding:34px 40px 50px;min-height:205px}
.about-link:hover{background:#eef2f8}.about-link small{color:#6480aa}.about-link h3{font-size:27px;font-weight:520;color:#152544;margin:20px 0 8px}
.about-link p{margin:0;font-size:15px}.about-link span{position:absolute;right:35px;top:30px;color:#45658d;font-size:22px}
.about-two-col{display:grid;grid-template-columns:1fr 1fr;gap:7vw}.about-two-col h3{color:#17335d;font-size:23px;font-weight:520}

@media(max-width:760px){.about-card-grid,.about-link-grid,.about-two-col,main>.about-panel:nth-of-type(2) .about-card-grid{grid-template-columns:1fr}.about-panel h2{font-size:34px}.about-card{min-height:0}.about-link{min-height:165px;padding:25px}.about-link span{right:24px;top:24px}}


/* Editorial pages follow the restrained white reference; the established navy homepage remains intact. */
.article-body{max-width:940px}
.article-lead{font-size:21px!important;line-height:1.55;color:#1c2d4d!important;margin:20px 0 34px}
.article-note{background:#fff;border-left:0;border-top:1px solid #c8d1de;border-bottom:1px solid #c8d1de;padding:18px 0;margin:28px 0 16px;color:#617089;font-size:13px}
.article-section{display:grid;grid-template-columns:54px minmax(0,1fr);gap:22px;padding:26px 0 30px;border-bottom:1px solid #dce2e9}
.article-section h2{font-size:24px;font-weight:500;line-height:1.3;margin:0 0 12px;color:#152544}
.article-section p{font-size:16px;line-height:1.72;margin:0;max-width:720px}
.article-index{font-size:12px;letter-spacing:.12em;color:#60769b;padding-top:8px}
.article-end{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-top:36px;color:#617089;font-size:13px}
.article-references{display:grid;gap:8px;margin-top:28px;padding:22px 0;border-bottom:1px solid #dce2e9;font-size:13px}.article-references strong{font-weight:600;color:#152544}.article-references a{color:#254b83;text-decoration:underline;text-underline-offset:3px}
.updates-caption{margin:24px 0 0;color:#64718a;font-size:12px}
.page-hero.dark::after,.capability-band::before{display:none}
.capability-band{background:#081944}
.blue-banner{background:#e9eef5;color:#152544}.blue-banner::before{background:none}.banner-canvas{display:none}
.blue-banner h2{color:#152544}.blue-banner p{color:#4c5c74}.blue-banner .button.light{background:#163562;border-color:#163562;color:#fff}.blue-banner .button.light:hover{background:#254b83;border-color:#254b83;color:#fff}
.science-visual{background:#102751}.science-visual::after{border-color:rgba(255,255,255,.13)}
@media(max-width:760px){.article-section{grid-template-columns:32px 1fr;gap:10px}.article-section h2{font-size:21px}.article-lead{font-size:18px!important}.article-end{display:block}.article-end .button{margin-top:20px}}


.resource-download-link{margin:35px 0 0}
.article-download{display:inline-flex;margin:0 0 16px}
.download-guide-list{border-top:1px solid #cdd6e2;margin:34px 0 72px}
.download-guide{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:25px;padding:25px 0;border-bottom:1px solid #cdd6e2}
.download-number{align-self:start;color:#60769b;font-size:12px;padding-top:6px;letter-spacing:.1em}
.download-guide h3{margin:0 0 6px;color:#152544;font-size:19px;font-weight:550;line-height:1.35}
.download-guide p{margin:0;color:#5b677a;font-size:13px;line-height:1.6}
.download-action{display:inline-flex;align-items:center;gap:10px;color:#254b83;font-weight:600;font-size:13px;white-space:nowrap}
.download-action svg{width:17px;height:17px}
.document-request{display:flex;justify-content:space-between;align-items:center;gap:35px;padding:35px 0;border-top:1px solid #cdd6e2}
.document-request h2{font-size:28px;font-weight:500;margin:10px 0}.document-request p{margin:0;color:#5b677a;max-width:620px}
@media(max-width:760px){.download-guide{grid-template-columns:32px minmax(0,1fr);gap:12px}.download-action{grid-column:2;padding-top:7px}.download-guide h3{font-size:17px}.document-request{display:block}.document-request .button{margin-top:24px}.document-request h2{font-size:23px}}


/* About refinements: measured type, space and accurate visual map */
.about-cover{min-height:480px;padding:146px 0 62px}
.about-cover h1{font-size:clamp(38px,4.2vw,60px);letter-spacing:-.04em;margin:38px 0 18px;max-width:750px}
.about-cover-inner>p:not(.about-kicker){font-size:clamp(17px,1.5vw,20px);max-width:610px}
.about-jump{margin-top:60px;padding-top:18px;gap:24px}
.about-chapter{padding:128px 0}
.about-chapter h2,.about-geography h2{font-size:clamp(29px,2.8vw,42px);letter-spacing:-.035em;line-height:1.2;margin-bottom:30px}
.about-chapter p{font-size:16px;line-height:1.78}
.about-chapter .about-lead{font-size:20px;line-height:1.55}
.about-rail{margin-bottom:62px}
.about-intro-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:10vw;align-items:start}
.about-intro-grid .about-body{max-width:570px}
.about-intro-figure{margin:4px 0 0;min-width:0}
.about-intro-figure img{width:100%;display:block;aspect-ratio:1.22;object-fit:cover}
.about-intro-figure figcaption{color:#60728d;font-size:12px;letter-spacing:.04em;border-bottom:1px solid #d1d9e5;padding:13px 0}
.about-dark{background:#101a32;padding:105px 0 112px}
.about-dark .about-rail{margin-bottom:46px}
.about-action-lines{margin-top:55px}
.about-pale{background:#f5f7fa}
.about-geography{background:#fff;color:#172849;padding:120px 0 125px}
.about-map-head .about-kicker{color:#55719a}
.about-map-head>p{color:#586980}
.about-map{position:relative;background:#081947;border:0;margin:42px 0 26px}
.about-map img{width:100%;height:auto;aspect-ratio:2;display:block;object-fit:cover}
.about-map-pin{position:absolute;display:block;width:10px;height:10px;border-radius:50%;background:#e75256;border:2px solid #ffe9e5;box-shadow:0 0 0 5px rgba(231,82,86,.2);transform:translate(-50%,-50%)}
.about-map-pin .sr-only{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden}
.about-country-list{color:#536886}
.about-next{padding:90px 0 100px}
.about-next h2{font-size:clamp(32px,3.4vw,49px)}
@media(max-width:760px){
 .about-cover{padding:118px 0 50px;min-height:0}
 .about-cover h1{font-size:39px;margin:35px 0 20px}
 .about-jump{margin-top:46px}
 .about-chapter{padding:86px 0}
 .about-dark{padding:83px 0 88px}
 .about-rail{margin-bottom:36px}
 .about-chapter h2,.about-geography h2{font-size:30px;line-height:1.2;margin-bottom:25px}
 .about-chapter .about-lead{font-size:18px}
 .about-intro-grid{display:block}
 .about-intro-figure{margin:55px 0 0}
 .about-geography{padding:85px 0 92px}
 .about-map{margin:30px -18px 24px}
 .about-map-pin{width:7px;height:7px;border-width:1px;box-shadow:0 0 0 3px rgba(231,82,86,.2)}
 .about-next{padding:85px 0 90px}
 .about-next h2{font-size:34px}
}


/* About mobile spacing and hierarchy correction */
.about-cover .wrap.about-cover-inner{width:var(--wrap);max-width:1180px;margin-inline:auto}
.about-cover h1{font-size:clamp(35px,3.8vw,55px);line-height:1.13}
.about-cover-inner>p:not(.about-kicker){max-width:580px}
.about-geography .about-map-head>p{max-width:380px}
.about-geography{padding-bottom:96px}
@media(max-width:760px){
 .about-editorial .wrap{width:calc(100% - 48px);margin-inline:auto}
 .about-cover .wrap.about-cover-inner{width:calc(100% - 48px)}
 .about-cover{padding:78px 0 85px}
 .about-cover h1{font-size:32px;line-height:1.18;letter-spacing:-.025em;margin:40px 0 23px}
 .about-cover-inner>p:not(.about-kicker){font-size:15px;line-height:1.65}
 .about-cover .about-kicker{font-size:10px;padding-bottom:17px}
 .about-chapter{padding:83px 0}
 .about-chapter h2,.about-geography h2{font-size:28px;line-height:1.25}
 .about-rail{font-size:10px;letter-spacing:.10em;gap:9px}
 .about-map-head>p{font-size:14px;line-height:1.65;margin-top:0}
 .about-geography{padding:80px 0 78px}
 .about-map{margin:32px -24px 0}
 .about-next h2{font-size:31px}
}


.about-map svg{display:block;width:100%;height:auto;aspect-ratio:2}
.about-map .about-pin-halo{fill:#e75256;fill-opacity:.24}
.about-map .about-pin-core{fill:#e75256;stroke:#fff;stroke-width:2.8}


/* 12138: editorial hierarchy, restrained motion and full-bleed map */
@media(min-width:761px){
 .about-cover .wrap.about-cover-inner{width:calc(100% - 112px);max-width:1520px;margin-inline:auto}
 .about-cover h1{font-size:clamp(36px,3.1vw,52px);margin-top:42px}
 .about-chapter h2,.about-geography h2{font-size:clamp(27px,2.35vw,38px)}
 .about-next h2{font-size:clamp(30px,2.7vw,43px)}
 .sem-hero{height:100svh;min-height:650px;max-height:none}
 .sem-hero .sem-copy{max-width:none;width:min(66vw,970px)}
 .sem-hero .sem-copy h1{font-size:clamp(32px,2.75vw,46px);white-space:nowrap;letter-spacing:-.035em}
 .sem-hero .sem-copy h1 br{display:none}
 .sem-hero .sem-copy h1 br:after{content:' '}
}
.about-dark{background:#06133f}
.about-map{width:100%;margin:45px 0 0;border:0;background:#071a41;overflow:hidden}
.about-map svg{display:block;width:100%;height:auto}
.about-geography{padding:95px 0 0;background:#fff}
.about-geography .about-map-head>p{max-width:380px}
.about-pin-core{fill:#ec6265;stroke:#fff;stroke-width:2}
.about-pin-halo{fill:#f16b70;opacity:.25}
.about-proof-figure{margin:0;grid-column:3;grid-row:2;align-self:stretch}
.about-proof-figure img{display:block;width:100%;height:100%;max-height:560px;object-fit:cover}
.about-proof-figure figcaption{font-size:12px;color:#667996;border-bottom:1px solid #d1d9e5;padding:13px 0}
@media(min-width:761px){
 #why-choose-us .about-split{grid-template-columns:minmax(0,0.52fr) minmax(0,1.15fr) minmax(270px,.9fr);gap:4vw}
 #why-choose-us .about-split>.about-rail{grid-column:1/-1}
 #why-choose-us .about-split>.about-body{grid-column:1/3;grid-row:2}
 #why-choose-us .about-split>.about-proof-figure{grid-column:3;grid-row:2}
}
.about-cover,.about-chapter,.about-next,.about-geography{overflow:clip}
.about-map.visible .map-marker{animation:marker-arrive .8s ease-out both;animation-delay:calc(.13s * var(--marker-index) + .3s)}
.about-map.visible .about-pin-halo{transform-box:fill-box;transform-origin:center;animation:marker-breathe 3.6s ease-in-out infinite;animation-delay:calc(.18s * var(--marker-index))}
@keyframes marker-arrive{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes marker-breathe{50%{opacity:.42;transform:scale(1.4)}}
.reveal{transform:translateY(16px);transition:opacity .72s ease,transform .72s cubic-bezier(.2,.7,.2,1)}
.reveal.visible{transform:none}
.about-chapter .about-rail,.about-chapter .about-body,.about-chapter h2,.about-chapter figure,.about-chapter .about-action-lines,.about-chapter .about-proof,.about-chapter .about-experience,.about-chapter .about-team-layout,.about-next .about-rail,.about-next .about-next-layout,.about-geography .about-map-head{transition-delay:.08s}
.product-copy h1{font-size:clamp(29px,3vw,44px);line-height:1.14}
.section-head h2,.split-copy h2,.band-copy h2,.page-title h1,.technical-head h2,.contact-grid h2,.intro-title{font-size:clamp(29px,3vw,42px)}
.detail-grid h2[style]{font-size:32px!important}
@media(max-width:760px){
 .about-geography{padding:80px 0 0}
 .about-map{margin:32px 0 0;width:100%}
 .about-proof-figure{margin-top:35px}
 .about-proof-figure img{height:auto;aspect-ratio:1.45}
 .about-chapter h2,.about-geography h2{font-size:26px}
 .about-next h2{font-size:29px}
 .product-copy h1{font-size:30px}
 .section-head h2,.split-copy h2,.band-copy h2,.page-title h1,.technical-head h2,.contact-grid h2,.intro-title{font-size:29px}
 .detail-grid h2[style]{font-size:27px!important}
}
@media(prefers-reduced-motion:reduce){
 .reveal,.reveal.visible,.map-marker,.about-pin-halo{animation:none!important;transition:none!important;transform:none!important;opacity:1!important}
}


/* Keep the particle image integrated with the solid homepage navy. */
@media(min-width:761px){
 .sem-hero .hero-particles{
   mask-image:radial-gradient(ellipse 79% 75% at 62% 51%,#000 57%,transparent 100%);
   -webkit-mask-image:radial-gradient(ellipse 79% 75% at 62% 51%,#000 57%,transparent 100%);
 }
 .sem-hero .hero-shade{background:none}
}
/* The base map and marker layer use one identical 1774:887 coordinate plane. */
.about-map{position:relative;width:100%;height:clamp(350px,33vw,520px);margin:42px 0 0;overflow:hidden;background:#071a41}
.about-map-image,.about-map-markers{position:absolute;left:0;top:50%;display:block;width:100%;height:auto;aspect-ratio:1774 / 887;transform:translateY(-50%)}
.about-map-image{object-fit:fill}
.about-map-markers{pointer-events:none}
@media(max-width:760px){
 .about-map{height:auto;aspect-ratio:1774 / 887;margin:30px 0 0}
 .about-map-image,.about-map-markers{top:0;transform:none}
}


/* About 04: compact evidence led experience layout */
#our-experience{padding:104px 0 112px;background:#f5f7fa}
#our-experience .about-rail{margin-bottom:50px}
#our-experience .about-experience{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:6vw;align-items:start}
#our-experience .experience-metric{display:flex;align-items:center;gap:24px;padding:8px 34px 8px 0;border-right:1px solid #c9d4e4;min-height:170px}
#our-experience .about-figure{flex:none;font-size:clamp(76px,7.3vw,112px)!important;line-height:1!important;letter-spacing:-.075em;margin:0!important;color:#1b427f!important}
#our-experience .about-figure span{font-size:.38em;position:relative;top:.05em;vertical-align:top;letter-spacing:0}
#our-experience .about-figure-caption{max-width:230px;margin:0!important;font-size:15px!important;font-weight:400;line-height:1.55!important;letter-spacing:0!important;text-transform:none!important;color:#596b85!important}
#our-experience .experience-copy h2{font-size:clamp(27px,2.4vw,36px);margin:0 0 20px;line-height:1.2}
#our-experience .experience-copy p{font-size:16px;line-height:1.7;margin-bottom:17px}
@media(max-width:760px){
 #our-experience{padding:62px 0 68px}
 #our-experience .about-rail{margin-bottom:30px!important}
 #our-experience .about-experience{display:block}
 #our-experience .experience-metric{min-height:0;gap:20px;padding:0 0 25px;margin-bottom:31px;border-right:0;border-bottom:1px solid #c9d4e4;align-items:center}
 #our-experience .about-figure{font-size:74px!important;min-width:123px}
 #our-experience .about-figure-caption{font-size:14px!important;line-height:1.45!important;max-width:195px}
 #our-experience .experience-copy h2{font-size:27px;margin-bottom:16px}
 #our-experience .experience-copy p{font-size:15px;line-height:1.7;margin-bottom:16px}
}
@media(max-width:380px){#our-experience .about-figure{font-size:66px!important;min-width:109px}#our-experience .experience-metric{gap:15px}}


/* Unified About palette and uncropped panoramic map. */
.about-editorial{--about-navy:#06133f;--about-ink:#152749;background:#fff;color:var(--about-ink)}
.about-editorial .about-cover,.about-editorial .about-dark,.about-editorial .about-next{background:var(--about-navy);color:#fff}
.about-editorial .about-white,.about-editorial .about-pale,.about-editorial #our-experience,.about-editorial .about-geography{background:#fff;color:var(--about-ink)}
.about-editorial .about-pale .wrap{border-top:1px solid #dce3ed;padding-top:45px}
.about-editorial .about-next .about-cta{background:#fff;color:var(--about-navy)}
.about-editorial .about-map{height:auto;aspect-ratio:auto;width:100%;padding:12px 0;margin:36px 0 0;background:var(--about-navy);overflow:visible}
.about-editorial .about-map-plane{position:relative;width:min(100%,960px);aspect-ratio:1774 / 887;margin:0 auto;overflow:hidden}
.about-editorial .about-map-image,.about-editorial .about-map-markers{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:1774 / 887;transform:none;object-fit:contain}
.about-editorial .about-map img{object-fit:contain}
@media(max-width:760px){
 .about-editorial .about-map{padding:12px 0;margin-top:28px}
 .about-editorial .about-pale .wrap{padding-top:30px}
}


/* White content chapters, consistent with chapters 01, 04 and 05. */
.about-editorial #what-we-do,.about-editorial #next-step{background:#fff;color:#152749}
.about-editorial #what-we-do h2,.about-editorial #next-step h2{color:#152749}
.about-editorial #what-we-do .about-dark-copy p,.about-editorial #next-step p{color:#586980}
.about-editorial #what-we-do .about-rail,.about-editorial #next-step .about-rail{color:#55719a}
.about-editorial #what-we-do .about-number,.about-editorial #next-step .about-number{color:#1c4d9b}
.about-editorial #what-we-do .about-rail:after,.about-editorial #next-step .about-rail:after{background:#cfd8e5}
.about-editorial #what-we-do .about-action-lines,.about-editorial #what-we-do .about-action-lines>div{border-color:#cfd8e5}
.about-editorial #what-we-do .about-action-lines span{color:#55719a}
.about-editorial #what-we-do .about-action-lines p{color:#152749}
.about-editorial #next-step .about-cta{background:#173d7a;color:#fff}
.about-editorial #next-step .about-cta:hover{background:#06133f}
/* Key out source-image backgrounds rather than feather a mismatched rectangle. */
.sem-hero{background:#06133f}
.sem-hero .hero-particles{filter:url(#particle-blue-key);mask-image:none;-webkit-mask-image:none}
.sem-hero .hero-shade{background:none}
.about-editorial .about-geography{background:#fff;padding-bottom:72px}
.about-editorial .about-map{background:transparent;padding:0;margin-top:36px}
.about-editorial .about-map-plane{width:min(calc(100% - 48px),960px);background:transparent}
.about-editorial .about-map-image{filter:url(#map-ocean-key)}
.about-editorial .about-next{margin-top:0}
@media(max-width:760px){
.about-editorial .about-geography{padding-bottom:42px}
.about-editorial .about-map{margin-top:24px;padding:0}
.about-editorial .about-map-plane{width:calc(100% - 32px)}
}


@media (min-width:761px){.sem-hero .hero-particles{width:min(61vw,920px);max-height:64%}}
@media (max-width:760px){.sem-hero .hero-particles{width:90%;max-height:36%}}
@media (max-width:760px) and (max-height:700px){.sem-hero .hero-particles{max-height:32%}}


.guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.guide-card{border:1px solid #bcc9da;background:#fff;padding:26px;display:flex;flex-direction:column;gap:15px;color:#152544}.guide-card h3{font-size:21px;line-height:1.35;font-weight:500;margin:0}.guide-card p{font-size:14px;line-height:1.7;color:#5b677a;margin:0}.guide-card small,.guide-meta{font-size:12px;color:#526d94}.guide-card .text-link{margin-top:auto;padding-top:12px}.guide-jump{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:36px}.guide-jump a{border:1px solid #bcc9da;padding:10px 15px;color:#254b83;font-size:13px}.guide-category{margin-top:60px;scroll-margin-top:100px}.guide-category h2{font-size:29px;font-weight:500;color:#152544}.guide-list-row{display:grid;grid-template-columns:92px 1fr 116px;gap:24px;align-items:center;border-bottom:1px solid #bcc9da;padding:22px 0}.guide-list-row:first-child{border-top:1px solid #bcc9da}.guide-list-row h3{font-size:19px;margin:0 0 7px;font-weight:500}.guide-list-row p{font-size:14px;color:#5b677a;margin:0}.guide-list-row>a{color:#254b83;font-size:13px}.guide-article{max-width:900px;margin:auto;padding-inline:20px;color:#152544}.guide-article h2{font-size:27px;line-height:1.35;margin:40px 0 18px;font-weight:500}.guide-article p{font-size:16px;line-height:1.85}.guide-article table{width:100%;border-collapse:collapse;margin:25px 0;font-size:14px}.guide-article td,.guide-article th{border:0;padding:14px;vertical-align:top;text-align:left}.guide-article table{border-top:2px solid #152544;border-bottom:2px solid #152544}.guide-article thead{border-bottom:1px solid #9cacbf}.guide-article th{background:transparent;font-weight:500}.guide-article .article-note{margin:28px 0;color:#334a68;font-size:15px}.guide-article .guide-ref{font-size:13px;overflow-wrap:anywhere}.guide-ref a{text-decoration:underline;color:#254b83}.guide-bylines{font-size:13px!important;color:#526d94;line-height:1.8!important}.guide-table-wrap{overflow-x:auto}.guide-downloads{margin-top:48px}@media(max-width:980px){.guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.guide-grid{grid-template-columns:1fr}.guide-card{padding:22px}.guide-list-row{grid-template-columns:1fr;gap:10px}.guide-category h2{font-size:25px}.guide-article h2{font-size:23px}.guide-article p{font-size:15px}.guide-article td,.guide-article th{padding:9px;font-size:12px}.guide-article .article-note{padding:20px}}

.contact-online{width:100%;min-height:920px;border:0;background:white} .faq-question:focus-visible,.button:focus-visible,a:focus-visible{outline:3px solid #78a8df;outline-offset:4px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}.reveal{opacity:1!important;transform:none!important;transition:none!important}}

.contact-online{display:block;height:940px;min-height:0;overflow:hidden}

/* Keep the restored chat launcher away from left-aligned enquiry controls. */
.chatway--trigger-container,.chatway--frame-container{left:auto!important;right:20px!important}
@media(max-width:600px){.chatway--trigger-container,.chatway--frame-container{right:12px!important}}

/* Keep resources and restored social contacts visible on tablets and phones. */
.footer-col:last-child{display:block}
