@import url("https://fonts.googleapis.com/css2?family=Fragment+Mono&family=Instrument+Sans:wght@400;500;600;700&display=swap");

:root {
  color-scheme: light;
  --legacy-blue-950: #0D0F2E;
  --legacy-blue-900: #17243E;
  --legacy-blue-800: #24335A;
  --legacy-blue-700: #415278;
  --legacy-blue-500: #728EBA;
  --legacy-blue-200: #BDD1E7;
  --legacy-blue-100: #E3EBF8;
  --legacy-blue-50: #E9F1FD;
  --navy: #09213f;
  --navy-deep: #061a34;
  --navy-soft: #27415d;
  --ink: #102843;
  --muted: #596878;
  --ivory: #faf7ef;
  --ivory-deep: #f3eee3;
  --paper: #fffdf8;
  --gold: #b4893d;
  --gold-light: #d1b273;
  --cta-gold: #dfbc66;
  --header-gold: #b58c31;
  --header-gold-deep: #b58c31;
  --line: #ded6c8;
  --line-navy: rgba(9, 33, 63, 0.16);
  --white: #ffffff;
  --max: 1240px;
  --text: 760px;
  --font-heading: "Instrument Sans", "Helvetica Neue", Arial, sans-serif;
  --font-body: "Instrument Sans", "Helvetica Neue", Arial, sans-serif;
  --font-ui: "Instrument Sans", "Helvetica Neue", Arial, sans-serif;
  --font-label: "Fragment Mono", "SFMono-Regular", Consolas, monospace;
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  color: var(--ink);
  background: var(--ivory);
  font-family: var(--font-body);
  font-size: 16px;
  line-height: 1.68;
  text-rendering: optimizeLegibility;
}

body.nav-open {
  overflow: hidden;
}

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

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

img,
svg {
  max-width: 100%;
}

#trust-canvas {
  display: none;
}

h1,
h2,
h3,
p {
  margin-top: 0;
}

h1,
h2 {
  font-family: var(--font-heading);
  font-weight: 500;
  letter-spacing: -0.025em;
}

h1 {
  margin-bottom: 26px;
  font-size: clamp(3rem, 5.5vw, 5.8rem);
  line-height: 0.98;
}

h2 {
  margin-bottom: 20px;
  font-size: clamp(2.25rem, 4vw, 4.4rem);
  line-height: 1.02;
}

h3 {
  margin-bottom: 10px;
  font-size: 1rem;
  line-height: 1.35;
}

p {
  margin-bottom: 18px;
}

.eyebrow,
.service-label,
.site-footer h3,
.building-columns article > span,
.gap-points article > span,
.verification-themes article > span,
.route-blocks a > span,
.support-list article > span {
  font-family: var(--font-label);
  font-size: 0.67rem;
  font-weight: 600;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

.eyebrow {
  margin-bottom: 16px;
  color: var(--gold);
}

/* Shared header ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â Option 5: deep navy, icon-led navigation, gold CTA */
:root {
  --hd-navy: #071731;
  --hd-gold: #dfbc66;
  --hd-gold-dim: rgba(223, 188, 102, 0.68);
  --hd-gold-border: rgba(223, 188, 102, 0.32);
  --hd-silver: rgba(180, 205, 230, 0.75);
  --hd-max: 1560px;
  --hd-height: 106px;
  --hd-height-scroll: 88px;
  --hd-height-tablet: 80px;
  --hd-height-mobile: 68px;
}

.site-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  width: 100%;
  min-height: var(--hd-height);
  height: var(--hd-height);
  padding: 0;
  background: var(--hd-navy);
  border-bottom: 1px solid var(--hd-gold-border);
  box-shadow: none;
  transition: min-height 220ms ease, height 220ms ease, box-shadow 220ms ease;
  overflow: visible;
}

.site-header.is-scrolled {
  min-height: var(--hd-height-scroll);
  height: var(--hd-height-scroll);
  box-shadow: 0 4px 32px rgba(4, 12, 30, 0.55);
}

.site-header + .reading-progress {
  position: fixed;
  top: var(--hd-height);
  right: 0;
  left: 0;
  z-index: 1001;
  width: 100%;
  max-width: none;
  height: 2px;
  overflow: hidden;
  pointer-events: none;
  background: rgba(223, 188, 102, 0.18);
  transition: top 220ms ease;
}

.site-header + .reading-progress span {
  display: block;
  width: 100%;
  height: 100%;
  background: var(--hd-gold);
  box-shadow: 0 0 8px rgba(223, 188, 102, 0.38);
  transform: scaleX(var(--reading-progress, 0));
  transform-origin: left;
  will-change: transform;
}

.site-header.is-scrolled + .reading-progress {
  top: var(--hd-height-scroll);
}

@media (max-width: 1100px) {
  .site-header + .reading-progress { top: var(--hd-height-tablet); }
  .site-header.is-scrolled + .reading-progress { top: 72px; }
}

@media (max-width: 680px) {
  .site-header + .reading-progress { top: var(--hd-height-mobile); }
  .site-header.is-scrolled + .reading-progress { top: 62px; }
}
.hd-shell {
  position: relative;
  display: grid;
  grid-template-columns: minmax(292px, 312px) minmax(0, 1fr) minmax(180px, 208px);
  align-items: stretch;
  grid-template-rows: minmax(0, 1fr);
  width: min(calc(100% - 32px), var(--hd-max));
  height: 100%;
  min-width: 0;
  margin-inline: auto;
  background: var(--hd-navy);
  overflow: visible;
}

/* Brand column */
.hd-brand {
  display: flex;
  align-items: center;
  min-width: 0;
  padding: 0 18px 0 12px;
  border-right: 1px solid var(--hd-gold-border);
}

.brand.global-brand {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  text-decoration: none;
  outline-offset: 4px;
}

.brand.global-brand:focus-visible {
  outline: 2px solid var(--hd-gold);
}

.brand-logo-frame {
  position: relative;
  display: block;
  width: clamp(142px, 11vw, 172px);
  aspect-ratio: 5.28 / 1;
  overflow: hidden;
}

.brand-logo {
  position: absolute;
  top: -309%;
  left: -16.45%;
  display: block;
  width: 132.9%;
  max-width: none;
  height: auto;
}

.brand-slogan {
  display: block;
  color: var(--hd-gold);
  font-family: var(--font-label);
  font-size: 0.55rem;
  font-weight: 500;
  letter-spacing: 0.13em;
  text-transform: uppercase;
  line-height: 1.3;
  white-space: nowrap;
  opacity: 0.88;
}

/* Centre navigation column */
.hd-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  padding: 0 4px;
  gap: 0;
}

.hd-nav a {
  position: relative;
  display: flex;
  flex: 1 1 0;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-width: 0;
  min-height: 44px;
  padding: 18px 5px;
  color: var(--hd-silver);
  font-family: var(--font-ui);
  font-size: 0.59rem;
  font-weight: 600;
  letter-spacing: 0.055em;
  text-transform: uppercase;
  white-space: nowrap;
  text-decoration: none;
  background: transparent;
  transition: color 200ms ease;
}

.hd-nav a::after {
  content: "";
  position: absolute;
  left: 22%;
  right: 22%;
  bottom: 12px;
  height: 2px;
  background: transparent;
  transition: background 200ms ease;
}

.hd-nav-icon {
  display: block;
  width: 20px;
  height: 20px;
  stroke: var(--hd-gold-dim);
  stroke-width: 1.5;
  stroke-linecap: round;
  stroke-linejoin: round;
  fill: none;
  flex-shrink: 0;
  transition: stroke 200ms ease, transform 200ms ease;
}

/* Active nav item */
.hd-nav a[aria-current="page"] {
  color: var(--ivory);
}

.hd-nav a[aria-current="page"]::after {
  background: var(--hd-gold);
}

.hd-nav a[aria-current="page"] .hd-nav-icon {
  stroke: var(--hd-gold);
}

/* Hover / focus */
.hd-nav a:hover,
.hd-nav a:focus-visible {
  color: var(--ivory);
  outline: none;
}

.hd-nav a:hover::after,
.hd-nav a:focus-visible::after {
  background: var(--hd-gold-dim);
}

.hd-nav a:hover .hd-nav-icon,
.hd-nav a:focus-visible .hd-nav-icon {
  stroke: var(--hd-gold);
  transform: translateY(-1px);
}

.hd-nav a:focus-visible {
  outline: 2px solid var(--hd-gold);
  outline-offset: 1px;
  border-radius: 2px;
}

/* Actions column (Contact + hamburger) */
.hd-actions {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  gap: 12px;
  padding: 0 16px;
  border-left: 1px solid var(--hd-gold-border);
}

/* Contact Us CTA button */
.hd-cta {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 44px;
  padding: 10px 18px;
  background: var(--hd-gold);
  border: 1px solid var(--hd-gold);
  border-radius: 2px;
  color: var(--hd-navy);
  font-family: var(--font-ui);
  font-size: 0.69rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
  transition: background 180ms ease, color 180ms ease, border-color 180ms ease;
}

.hd-cta:hover,
.hd-cta:focus-visible {
  background: #f5e9c8;
  border-color: #f5e9c8;
  color: var(--hd-navy);
  outline: none;
}

.hd-cta:focus-visible {
  outline: 2px solid var(--hd-gold);
  outline-offset: 3px;
}

/* Hamburger toggle ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â hidden on desktop */
.nav-toggle {
  display: none;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border: 1px solid var(--hd-gold-dim);
  border-radius: 2px;
  background: transparent;
  cursor: pointer;
  flex-shrink: 0;
  transition: border-color 180ms ease, background 180ms ease;
}

.nav-toggle:hover,
.nav-toggle:focus-visible {
  background: rgba(180, 137, 61, 0.12);
  border-color: var(--hd-gold);
  outline: none;
}

.nav-toggle:focus-visible {
  outline: 2px solid var(--hd-gold);
  outline-offset: 2px;
}

.hd-hamburger {
  display: flex;
  flex-direction: column;
  gap: 5px;
  width: 18px;
  pointer-events: none;
}

.hd-hamburger span {
  display: block;
  width: 100%;
  height: 1.5px;
  background: var(--hd-gold);
  border-radius: 1px;
  transition: transform 260ms ease, opacity 200ms ease;
}

/* Open-state hamburger animation */
.nav-open .nav-toggle .hd-hamburger span:nth-child(1) {
  transform: translateY(6.5px) rotate(45deg);
}
.nav-open .nav-toggle .hd-hamburger span:nth-child(2) {
  opacity: 0;
  transform: scaleX(0);
}
.nav-open .nav-toggle .hd-hamburger span:nth-child(3) {
  transform: translateY(-6.5px) rotate(-45deg);
}

/* Body scroll lock when mobile nav is open */
body.nav-open { overflow: hidden; }

/* Legacy classes ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â safely neutralised */
.mobile-nav-icon { display: none !important; }
.menu-icon { display: none; }
.brand-mark { display: none; }
.nav-cta { display: none; }

/* ================================================================
   TABLET ÃƒÂ¢Ã¢â‚¬Â°Ã‚Â¤ 1160px ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â nav collapses, hamburger appears
   ================================================================ */
@media (max-width: 1100px) {
  .site-header {
    min-height: var(--hd-height-tablet);
    height: var(--hd-height-tablet);
  }

  .site-header.is-scrolled {
    min-height: 72px;
    height: 72px;
  }

  .hd-shell {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
  }

  .hd-brand {
    padding: 0 16px;
    border-right: none;
  }

  .brand-slogan { display: block; }

  /* Navigation: hidden by default, drops absolutely from the header */
  .hd-nav {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    padding: 8px 0 20px;
    gap: 0;
    background: var(--hd-navy);
    border-bottom: 1px solid var(--hd-gold-border);
    box-shadow: 0 16px 40px rgba(4, 12, 30, 0.65);
    z-index: 999;
    max-height: calc(100vh - var(--hd-height-tablet));
    overflow-y: auto;
    overscroll-behavior: contain;
  }

  /* Show nav when body has nav-open class */
  .nav-open .hd-nav {
    display: flex;
  }

  .hd-nav a {
    flex: 0 0 auto;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    padding: 12px 24px;
    font-size: 0.78rem;
    letter-spacing: 0.05em;
    border-bottom: none;
    border-left: 3px solid transparent;
    gap: 14px;
    min-height: 48px;
  }

  .hd-nav a[aria-current="page"] {
    border-left-color: var(--hd-gold);
    border-bottom-color: transparent;
    background: rgba(180, 137, 61, 0.07);
  }

  .hd-nav-icon {
    width: 20px;
    height: 20px;
    flex-shrink: 0;
  }

  .hd-actions {
    padding: 0 0 0 12px;
    border-left: none;
    gap: 10px;
  }

  .nav-toggle {
    display: inline-flex;
  }

  .hd-cta {
    padding: 9px 15px;
    font-size: 0.65rem;
  }
}

/* ================================================================
   MOBILE ÃƒÂ¢Ã¢â‚¬Â°Ã‚Â¤ 680px ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â compact brand, tighter spacing
   ================================================================ */
@media (max-width: 680px) {
  .site-header {
    min-height: var(--hd-height-mobile);
    height: var(--hd-height-mobile);
  }

  .site-header.is-scrolled {
    min-height: 62px;
    height: 62px;
  }

  .brand-logo-frame { width: clamp(118px, 36vw, 150px); }
  .brand-slogan { display: none; }

  .hd-nav { max-height: calc(100vh - var(--hd-height-mobile)); }

  .hd-cta {
    padding: 8px 12px;
    font-size: 0.62rem;
    letter-spacing: 0.06em;
  }

  /* Hide arrow glyph on very small screens */
  .hd-cta span[aria-hidden="true"] { display: none; }
}

/* ================================================================
   REDUCED MOTION
   ================================================================ */
@media (prefers-reduced-motion: reduce) {
  .site-header,
  .hd-nav a,
  .hd-nav-icon,
  .hd-cta,
  .nav-toggle,
  .hd-hamburger span {
    transition: none !important;
  }
}

/* Shared actions */
.hero-actions,
.section-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 20px;
  margin-top: 30px;
}

.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  border: 1px solid var(--navy);
  border-radius: 0;
  padding: 0 22px;
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  transition: color 160ms ease, background 160ms ease, border-color 160ms ease;
}

.button.primary {
  color: var(--white);
  background: var(--navy);
}

.button.primary:hover,
.button.primary:focus-visible {
  color: var(--navy);
  background: transparent;
  outline: none;
}

.button.secondary {
  color: var(--navy);
  background: transparent;
}

.button.secondary:hover,
.button.secondary:focus-visible {
  color: var(--white);
  background: var(--navy);
  outline: none;
}

.button.text-button {
  position: relative;
  min-height: auto;
  border: 0;
  border-bottom: 1px solid var(--gold);
  padding: 11px 28px 9px 0;
  color: var(--navy);
}

.button.text-button::after,
.inline-link::after {
  content: "\2192";
  position: absolute;
  right: 0;
}

.button.text-button:hover,
.button.text-button:focus-visible {
  color: var(--gold);
  background: transparent;
  outline: none;
}

/* Homepage hero */
.home-hero {
  display: grid;
  grid-template-columns: minmax(0, 0.94fr) minmax(440px, 0.86fr);
  align-items: center;
  gap: clamp(42px, 6vw, 90px);
  width: min(var(--max), calc(100% - 48px));
  min-height: 720px;
  margin: 0 auto;
  padding: 80px 0 92px;
}

.home-hero-copy {
  position: relative;
  z-index: 2;
  max-width: 690px;
}

.home-hero h1 {
  max-width: 720px;
  font-size: clamp(3.35rem, 5.1vw, 5.35rem);
}

.home-hero-copy > p:not(.eyebrow) {
  max-width: 660px;
  color: var(--navy-soft);
  font-size: 1rem;
  line-height: 1.75;
}

.hero-blueprint {
  position: relative;
  min-height: 530px;
  isolation: isolate;
}

.hero-blueprint::before,
.hero-blueprint::after {
  content: "";
  position: absolute;
  z-index: -2;
  border: 1px solid rgba(9, 33, 63, 0.08);
  border-radius: 50%;
}

.hero-blueprint::before {
  inset: 72px 24px 88px;
}

.hero-blueprint::after {
  inset: 114px 58px 126px;
}

.blueprint-orbit {
  position: absolute;
  z-index: -1;
  top: 50%;
  left: 50%;
  border: 1px solid rgba(180, 137, 61, 0.45);
  border-radius: 50%;
  transform: translate(-50%, -50%) rotate(-8deg);
}

.orbit-one {
  width: 94%;
  height: 44%;
}

.orbit-two {
  width: 78%;
  height: 66%;
  border-color: rgba(9, 33, 63, 0.18);
  transform: translate(-50%, -50%) rotate(12deg);
}

.blueprint-axis {
  position: absolute;
  z-index: -1;
  background: rgba(180, 137, 61, 0.38);
}

.axis-horizontal {
  top: 50%;
  right: 5%;
  left: 5%;
  height: 1px;
}

.axis-vertical {
  top: 8%;
  bottom: 8%;
  left: 50%;
  width: 1px;
}

.blueprint-label {
  position: absolute;
  z-index: 3;
  max-width: 135px;
  color: var(--navy);
  font-family: var(--font-label);
  font-size: 0.59rem;
  font-weight: 600;
  letter-spacing: 0.07em;
  line-height: 1.35;
  text-transform: uppercase;
}

.blueprint-label::before {
  content: "";
  display: inline-block;
  width: 5px;
  height: 5px;
  margin-right: 6px;
  border-radius: 50%;
  background: var(--gold);
  vertical-align: middle;
}

.label-governance { top: 18px; left: 50%; transform: translateX(-50%); text-align: center; }
.label-model { top: 106px; left: 0; text-align: right; }
.label-infrastructure { top: 106px; right: 0; }
.label-data { bottom: 112px; left: 0; text-align: right; }
.label-ecosystem { right: 0; bottom: 112px; }
.label-monitoring { bottom: 18px; left: 50%; transform: translateX(-50%); text-align: center; }

.blueprint-temple {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 68%;
  transform: translate(-50%, -46%);
  color: var(--navy);
}

.temple-roof {
  position: relative;
  height: 82px;
  border-bottom: 7px double rgba(9, 33, 63, 0.52);
  clip-path: polygon(50% 0, 100% 78%, 100% 100%, 0 100%, 0 78%);
  background: repeating-linear-gradient(165deg, transparent 0 14px, rgba(9, 33, 63, 0.12) 15px 16px);
}

.temple-roof::before {
  content: "";
  position: absolute;
  inset: 15px 36px 10px;
  border: 1px solid rgba(9, 33, 63, 0.42);
  clip-path: polygon(50% 0, 100% 100%, 0 100%);
}

.temple-roof span {
  position: absolute;
  right: 18%;
  bottom: 12px;
  left: 18%;
  height: 1px;
  background: rgba(180, 137, 61, 0.72);
}

.temple-body {
  position: relative;
  display: flex;
  justify-content: space-around;
  height: 176px;
  border-inline: 1px solid rgba(9, 33, 63, 0.35);
  padding: 10px 16px 0;
}

.temple-body::before,
.temple-body::after {
  content: "";
  position: absolute;
  right: 0;
  left: 0;
  height: 4px;
  border-block: 1px solid rgba(9, 33, 63, 0.42);
}

.temple-body::before { top: 0; }
.temple-body::after { bottom: 0; }

.temple-body i {
  display: block;
  width: 22px;
  border-inline: 1px solid rgba(9, 33, 63, 0.4);
  background: repeating-linear-gradient(90deg, transparent 0 4px, rgba(9, 33, 63, 0.08) 5px 6px);
}

.temple-body strong {
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 142px;
  padding: 15px 12px;
  border: 1px solid rgba(180, 137, 61, 0.7);
  background: var(--hd-navy, #071731);
  font-family: var(--font-label);
  font-size: 0.63rem;
  letter-spacing: 0.07em;
  line-height: 1.45;
  text-align: center;
  text-transform: uppercase;
  transform: translate(-50%, -50%);
}

.temple-base {
  display: grid;
  gap: 5px;
  padding-top: 6px;
}

.temple-base span {
  display: block;
  height: 5px;
  border: 1px solid rgba(9, 33, 63, 0.4);
}

.temple-base span:nth-child(2) { margin-inline: -5%; }
.temple-base span:nth-child(3) { margin-inline: -10%; }

/* Homepage bands */
.home-band {
  border-top: 1px solid var(--line);
}

.home-band:nth-of-type(even) {
  background: rgba(255, 253, 248, 0.62);
}

.band-inner,
.home-cta {
  width: min(var(--max), calc(100% - 48px));
  margin: 0 auto;
  padding: 86px 0;
}

.mission-layout {
  display: grid;
  grid-template-columns: minmax(0, 0.95fr) minmax(250px, 0.55fr) minmax(360px, 0.9fr);
  align-items: start;
  gap: clamp(34px, 5vw, 72px);
}

.mission-layout h2 {
  max-width: 560px;
  font-size: clamp(2.4rem, 3.5vw, 3.8rem);
}

.mission-thesis {
  border-left: 1px solid var(--gold-light);
  padding-left: 28px;
  color: var(--navy-soft);
}

.capability-blocks {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border-left: 1px solid var(--line);
}

.capability-blocks article {
  min-height: 178px;
  border-right: 1px solid var(--line);
  padding: 8px 20px 16px;
}

.capability-blocks span {
  color: var(--gold);
  font-family: var(--font-label);
  font-size: 0.65rem;
}

.capability-blocks h3 {
  margin-top: 42px;
  color: var(--navy);
  font-size: 0.98rem;
}

.capability-blocks p {
  margin-bottom: 0;
  color: var(--muted);
  font-size: 0.83rem;
  line-height: 1.55;
}

.editorial-heading {
  display: grid;
  grid-template-columns: minmax(280px, 0.8fr) minmax(460px, 1.2fr);
  column-gap: clamp(48px, 8vw, 120px);
  align-items: end;
  max-width: 1080px;
}

.editorial-heading .eyebrow {
  grid-column: 1 / -1;
}

.editorial-heading h2 {
  max-width: 700px;
}

.editorial-heading > p:last-child {
  margin-bottom: 26px;
  color: var(--navy-soft);
}

.compact-heading {
  display: block;
}

.compact-heading h2 {
  max-width: 760px;
}

.gap-points {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  margin-top: 54px;
  border-block: 1px solid var(--line);
}

.gap-points article {
  min-height: 230px;
  border-right: 1px solid var(--line);
  padding: 30px 28px 28px 0;
}

.gap-points article + article {
  padding-left: 28px;
}

.gap-points article:last-child {
  border-right: 0;
}

.gap-points article > span,
.verification-themes article > span,
.route-blocks a > span,
.support-list article > span {
  color: var(--gold);
}

.gap-points h3 {
  margin-top: 44px;
  font-size: 1.05rem;
}

.gap-points p {
  margin-bottom: 0;
  color: var(--muted);
  font-size: 0.88rem;
}

.verification-path {
  display: grid;
  grid-template-columns: auto 1fr auto 1fr auto 1fr auto;
  align-items: center;
  gap: 18px;
  max-width: 860px;
  margin: 38px auto 0;
  color: var(--navy);
  font-family: var(--font-label);
  font-size: 0.65rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.verification-path i {
  height: 1px;
  background: var(--gold-light);
}

.architecture-layout {
  display: grid;
  grid-template-columns: minmax(260px, 0.58fr) minmax(600px, 1.42fr);
  align-items: center;
  gap: clamp(50px, 7vw, 100px);
}

.architecture-copy h2 {
  font-size: clamp(2.35rem, 3.4vw, 3.7rem);
}

.architecture-copy p:last-child {
  max-width: 380px;
  color: var(--navy-soft);
}

.trust-building {
  position: relative;
  padding-top: 60px;
}

.building-roof {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  display: grid;
  place-items: center;
  height: 90px;
  border: 1px solid rgba(9, 33, 63, 0.34);
  clip-path: polygon(50% 0, 100% 76%, 100% 100%, 0 100%, 0 76%);
  background: var(--ivory);
  text-align: center;
}

.building-roof strong,
.building-roof span {
  position: relative;
  top: 17px;
  display: block;
}

.building-roof strong {
  font-family: var(--font-label);
  font-size: 0.66rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.building-roof span {
  color: var(--muted);
  font-size: 0.68rem;
}

.building-columns {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border: 1px solid rgba(9, 33, 63, 0.34);
  padding: 42px 10px 10px;
}

.building-columns article {
  min-height: 205px;
  border-right: 1px solid var(--line);
  padding: 30px 24px;
  text-align: center;
}

.building-columns article:last-child {
  border-right: 0;
}

.building-columns article > span {
  color: var(--gold);
}

.building-columns h3 {
  margin-top: 40px;
  font-family: var(--font-heading);
  font-size: 1.45rem;
  font-weight: 500;
}

.building-columns p {
  margin-bottom: 0;
  color: var(--muted);
  font-size: 0.78rem;
}

.building-core {
  background: rgba(180, 137, 61, 0.07);
}

.building-data-layer {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border: 1px solid rgba(9, 33, 63, 0.34);
  border-top: 0;
}

.building-data-layer span {
  border-right: 1px solid var(--line);
  padding: 11px 8px;
  font-family: var(--font-label);
  font-size: 0.57rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-align: center;
  text-transform: uppercase;
}

.building-data-layer span:last-child {
  border-right: 0;
}

.building-foundation {
  padding: 13px 20px;
  color: var(--white);
  background: var(--navy);
  font-family: var(--font-label);
  font-size: 0.59rem;
  letter-spacing: 0.06em;
  text-align: center;
  text-transform: uppercase;
}

.verification-themes {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  margin-top: 54px;
  border-block: 1px solid var(--line);
}

.verification-themes article {
  min-height: 240px;
  border-right: 1px solid var(--line);
  padding: 28px 20px;
}

.verification-themes article:first-child {
  padding-left: 0;
}

.verification-themes article:last-child {
  border-right: 0;
  padding-right: 0;
}

.verification-themes h3 {
  margin-top: 58px;
}

.verification-themes p {
  margin-bottom: 0;
  color: var(--muted);
  font-size: 0.82rem;
}

.routes-layout {
  display: grid;
  grid-template-columns: minmax(250px, 0.55fr) minmax(680px, 1.45fr);
  gap: clamp(48px, 7vw, 100px);
}

.routes-layout > div:first-child {
  border-right: 1px solid var(--line);
  padding-right: 42px;
}

.routes-layout h2 {
  font-size: clamp(2.3rem, 3.4vw, 3.7rem);
}

.route-blocks {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}

.route-blocks a {
  position: relative;
  min-height: 240px;
  border-right: 1px solid var(--line);
  padding: 8px 26px 22px;
}

.route-blocks a:last-child {
  border-right: 0;
}

.route-blocks a::after {
  content: "\2192";
  position: absolute;
  right: 24px;
  bottom: 18px;
  color: var(--gold);
}

.route-blocks h3 {
  margin-top: 36px;
  color: var(--navy);
}

.route-blocks p {
  margin-bottom: 0;
  color: var(--muted);
  font-size: 0.82rem;
}

.route-blocks a:hover h3,
.route-blocks a:focus-visible h3 {
  color: var(--gold);
}

.infrastructure-band {
  padding: 0;
  border-top: 0;
  background: var(--navy-deep) !important;
}

.infrastructure-panel {
  position: relative;
  display: grid;
  grid-template-columns: minmax(300px, 0.75fr) minmax(480px, 1.25fr);
  align-items: end;
  gap: 56px;
  min-height: 520px;
  color: var(--white);
  overflow: hidden;
}

.infrastructure-panel::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: 0.2;
  background-image: linear-gradient(rgba(255,255,255,0.13) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.13) 1px, transparent 1px);
  background-size: 48px 48px;
  mask-image: linear-gradient(to right, transparent 36%, black 70%);
}

.infrastructure-copy {
  position: relative;
  z-index: 2;
  align-self: center;
  max-width: 490px;
}

.infrastructure-copy h2 {
  font-size: clamp(2.6rem, 4vw, 4.2rem);
}

.infrastructure-copy p:not(.eyebrow) {
  color: rgba(255,255,255,0.72);
}

.inline-link {
  position: relative;
  display: inline-block;
  margin-top: 18px;
  border-bottom: 1px solid var(--gold);
  padding: 8px 28px 8px 0;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.infrastructure-blueprint {
  position: relative;
  align-self: end;
  height: 300px;
  border-bottom: 1px solid rgba(209,178,115,0.72);
}

.infra-tower {
  position: absolute;
  bottom: 0;
  display: block;
  border: 1px solid rgba(255,255,255,0.42);
  background-image: repeating-linear-gradient(0deg, transparent 0 14px, rgba(255,255,255,0.16) 15px 16px), repeating-linear-gradient(90deg, transparent 0 18px, rgba(255,255,255,0.12) 19px 20px);
}

.tower-one { left: 4%; width: 18%; height: 42%; }
.tower-two { left: 27%; width: 20%; height: 74%; }
.tower-three { left: 52%; width: 17%; height: 56%; }
.tower-four { right: 2%; width: 24%; height: 88%; }

.infra-line {
  position: absolute;
  height: 1px;
  background: rgba(180,137,61,0.5);
  transform-origin: left;
}

.line-a { top: 20%; left: 0; width: 95%; transform: rotate(11deg); }
.line-b { top: 55%; left: 4%; width: 88%; transform: rotate(-8deg); }
.line-c { top: 38%; left: 20%; width: 72%; }

.infrastructure-items {
  position: relative;
  z-index: 2;
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  border-top: 1px solid rgba(255,255,255,0.18);
}

.infrastructure-items span {
  border-right: 1px solid rgba(255,255,255,0.14);
  padding: 15px 12px;
  color: rgba(255,255,255,0.72);
  font-family: var(--font-label);
  font-size: 0.58rem;
  letter-spacing: 0.05em;
  text-align: center;
  text-transform: uppercase;
}

.infrastructure-items span:last-child { border-right: 0; }

.support-layout {
  display: grid;
  grid-template-columns: minmax(280px, 0.62fr) minmax(640px, 1.38fr);
  gap: clamp(50px, 7vw, 100px);
  align-items: center;
}

.support-layout h2 {
  font-size: clamp(2.4rem, 3.4vw, 3.7rem);
}

.support-list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border-left: 1px solid var(--line);
}

.support-list article {
  min-height: 152px;
  border-right: 1px solid var(--line);
  padding: 18px 22px;
}

.support-list h3 {
  margin-top: 42px;
  margin-bottom: 0;
  font-family: var(--font-heading);
  font-size: 1.2rem;
  font-weight: 500;
}

.home-cta {
  display: grid;
  grid-template-columns: minmax(420px, 1fr) auto;
  align-items: center;
  gap: 60px;
  padding-block: 64px;
}

.home-cta h2 {
  max-width: 760px;
  margin-bottom: 0;
  font-size: clamp(2.3rem, 3.5vw, 3.9rem);
}

.home-cta .hero-actions {
  margin-top: 0;
}

/* Inner page shared system */
.inner-page {
  background: var(--ivory);
}

.section,
.newsletter {
  width: min(var(--max), calc(100% - 48px));
  margin: 0 auto;
  padding: 82px 0;
}

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

.inner-hero {
  max-width: var(--max);
  min-height: 530px;
  padding-top: 112px;
}

.inner-hero::after {
  content: "";
  display: block;
  width: 150px;
  height: 1px;
  margin-top: 48px;
  background: var(--gold);
}

.inner-hero h1 {
  max-width: 920px;
}

.inner-hero > p:not(.eyebrow) {
  max-width: 740px;
  color: var(--navy-soft);
  font-size: 1.08rem;
}

.section-heading {
  margin-bottom: 44px;
}

.section-heading.narrow {
  max-width: 850px;
}

.section-heading.split {
  display: grid;
  grid-template-columns: 1fr 0.7fr;
  gap: 70px;
  max-width: none;
}

.section-heading > p:last-child,
.section-heading.split > p {
  color: var(--muted);
}

.intro-grid,
.founder-strip,
.two-column,
.service-layout,
.roundtable-panel,
.lab-focus-panel,
.lab-card,
.contact,
.wide-form,
.credibility-panel,
.infrastructure-trust-panel {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 42px;
}

.mission-vision,
.standards-grid,
.structure-grid,
.service-grid,
.service-extension-grid,
.output-grid,
.flow-grid,
.roundtable-list,
.audience-grid,
.partner-grid,
.route-grid,
.lab-focus-grid,
.lab-grid,
.credibility-signals,
.contact-option-groups {
  display: grid;
  gap: 1px;
  border: 1px solid var(--line);
  background: var(--line);
}

.mission-vision,
.service-grid,
.roundtable-list,
.credibility-signals,
.contact-option-groups {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

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

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

.service-extension-grid,
.output-grid,
.audience-grid,
.partner-grid,
.route-grid,
.lab-focus-grid,
.flow-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

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

.mission-vision article,
.standards-grid article,
.service-grid article,
.service-extension-grid article,
.output-grid article,
.roundtable-list article,
.audience-grid article,
.partner-grid article,
.route-grid article,
.lab-focus-grid article,
.lab-grid article,
.credibility-signals article,
.contact-option-groups article,
.flow-grid article {
  padding: 28px;
  background: var(--paper);
}

.standards-grid article > span,
.flow-grid article > span {
  color: var(--gold);
  font-family: var(--font-label);
  font-size: 0.65rem;
}

.standards-grid h3,
.flow-grid h3 {
  margin-top: 34px;
}

.founder-strip,
.credibility-panel,
.roundtable-panel,
.lab-focus-panel,
.lab-card,
.research-pipeline,
.contributors,
.infrastructure-map,
.process,
.featured-service,
.contact-form,
.wide-form {
  margin-top: 52px;
  border: 1px solid var(--line);
  padding: 38px;
  background: var(--paper);
}

.founder-strip {
  align-items: center;
}

.structure-grid span {
  padding: 18px 12px;
  background: var(--ivory);
  font-family: var(--font-label);
  font-size: 0.66rem;
  text-align: center;
  text-transform: uppercase;
}

.featured-service {
  margin-top: 0;
  border-color: var(--navy);
  background: var(--navy);
  color: var(--white);
}

.featured-service p {
  color: rgba(255,255,255,0.74);
}

.service-label {
  display: inline-block;
  margin-bottom: 26px;
  color: var(--gold);
}

.service-context,
.best-for,
.section-note,
.form-note {
  color: var(--muted);
  font-size: 0.84rem;
}

.service-grid article strong,
.service-extension-grid article strong,
.featured-service strong {
  display: block;
  margin-top: 22px;
  border-top: 1px solid currentColor;
  padding-top: 14px;
  font-size: 0.82rem;
}

.process ol,
.pipeline-steps {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  margin: 28px 0 0;
  padding: 0;
  list-style: none;
  counter-reset: process;
}

.process li {
  min-height: 150px;
  border-left: 1px solid var(--line);
  padding: 10px 24px;
  counter-increment: process;
}

.process li::before {
  content: "0" counter(process);
  display: block;
  margin-bottom: 34px;
  color: var(--gold);
  font-family: var(--font-label);
  font-size: 0.66rem;
}

.process li strong,
.process li span {
  display: block;
}

.process li span {
  margin-top: 8px;
  color: var(--muted);
  font-size: 0.84rem;
}

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

.focus-list {
  border-top: 1px solid var(--gold);
  padding-top: 24px;
}

.focus-list ul {
  padding-left: 20px;
}

.focus-list li {
  margin-bottom: 10px;
  color: var(--navy-soft);
}

.signal-pill-grid,
.infra-pill-grid,
.contact-options {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.signal-pill-grid span,
.infra-pill-grid span,
.contact-options span {
  border: 1px solid var(--line);
  padding: 9px 12px;
  background: var(--paper);
  color: var(--navy-soft);
  font-size: 0.78rem;
}

.contributors h2 {
  max-width: 720px;
}

.infrastructure-trust-panel {
  align-items: center;
  margin-top: 0;
  border-color: var(--navy);
  padding: 48px;
  background: var(--navy);
  color: var(--white);
}

.infrastructure-trust-panel h3 {
  font-family: var(--font-heading);
  font-size: clamp(2.1rem, 3vw, 3.4rem);
  font-weight: 500;
}

.infrastructure-trust-panel p {
  color: rgba(255,255,255,0.72);
}

.infrastructure-trust-panel .infra-pill-grid span {
  border-color: rgba(255,255,255,0.22);
  background: transparent;
  color: rgba(255,255,255,0.78);
}

.infrastructure-map article {
  display: grid;
  grid-template-columns: 100px 1fr 1.3fr;
  gap: 24px;
  align-items: center;
  border-bottom: 1px solid var(--line);
  padding: 24px 0;
}

.infrastructure-map article:last-child {
  border-bottom: 0;
}

.infrastructure-map article > span {
  color: var(--gold);
  font-family: var(--font-label);
  font-size: 0.66rem;
}

.partner-group {
  margin-top: 52px;
}

.partner-group > h3 {
  margin-bottom: 20px;
  color: var(--gold);
  font-family: var(--font-label);
  font-size: 0.68rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.research-pipeline,
.connection-map {
  text-align: center;
}

.pipeline-steps span {
  border-left: 1px solid var(--line);
  padding: 18px;
  font-size: 0.82rem;
}

.connection-map {
  margin-top: 30px;
}

.contact {
  align-items: start;
  padding-top: 100px;
}

.contact-copy h1 {
  font-size: clamp(3rem, 5vw, 5rem);
}

.contact-form,
.wide-form {
  display: grid;
  gap: 18px;
  margin-top: 0;
}

.contact-form label,
.wide-form label {
  display: grid;
  gap: 7px;
  color: var(--navy);
  font-size: 0.78rem;
  font-weight: 600;
}

input,
select,
textarea {
  width: 100%;
  border: 0;
  border-bottom: 1px solid var(--line-navy);
  border-radius: 0;
  padding: 12px 2px;
  color: var(--ink);
  background: transparent;
  outline: none;
}

input:focus,
select:focus,
textarea:focus {
  border-color: var(--gold);
}

.checkbox {
  grid-template-columns: auto 1fr !important;
  align-items: start;
}

.checkbox input {
  width: auto;
  margin-top: 4px;
}

.checkbox a,
.form-note a {
  text-decoration: underline;
  text-underline-offset: 3px;
}

.newsletter,
.page-cta {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 60px;
}

.newsletter h2 {
  max-width: 760px;
  margin-bottom: 0;
  font-size: clamp(2.2rem, 3.3vw, 3.7rem);
}

.newsletter form {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) auto;
  gap: 10px;
  min-width: 420px;
}

.newsletter .form-note {
  grid-column: 1 / -1;
}

/* Shared footer */
.site-footer {
  display: grid;
  grid-template-columns: minmax(260px, 1.35fr) repeat(3, minmax(140px, 0.65fr));
  gap: clamp(32px, 5vw, 76px);
  padding: 64px max(24px, calc((100% - var(--max)) / 2)) 34px;
  color: rgba(255,255,255,0.76);
  background: var(--navy-deep);
}

.footer-statement {
  grid-column: 1 / -1;
  max-width: 960px;
  border-bottom: 1px solid rgba(255,255,255,0.18);
  padding-bottom: 42px;
}

.footer-statement p {
  margin-bottom: 0;
  color: var(--white);
  font-family: var(--font-heading);
  font-size: clamp(2rem, 3.8vw, 4rem);
  font-weight: 400;
  line-height: 1.04;
}

.site-footer .brand {
  margin-bottom: 24px;
}

.site-footer .brand strong {
  color: var(--white);
}

.site-footer .brand small {
  color: rgba(255,255,255,0.55);
}

.site-footer h3 {
  margin-bottom: 18px;
  color: var(--gold-light);
}

.site-footer a {
  display: block;
  margin-bottom: 8px;
  font-size: 0.82rem;
}

.site-footer a:hover,
.site-footer a:focus-visible {
  color: var(--gold-light);
  outline: none;
}

.site-footer p {
  font-size: 0.82rem;
}

.copyright {
  grid-column: 1 / -1;
  margin: 12px 0 0;
  border-top: 1px solid rgba(255,255,255,0.14);
  padding-top: 24px;
  color: rgba(255,255,255,0.48);
}

@media (max-width: 1080px) {






  .home-hero {
    grid-template-columns: 1fr;
    padding-top: 72px;
  }

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

  .hero-blueprint {
    width: min(700px, 100%);
    justify-self: center;
  }

  .mission-layout,
  .architecture-layout,
  .routes-layout,
  .support-layout,
  .infrastructure-panel {
    grid-template-columns: 1fr;
  }

  .mission-thesis,
  .routes-layout > div:first-child {
    border-left: 0;
    border-right: 0;
    border-top: 1px solid var(--gold-light);
    padding: 24px 0 0;
  }

  .architecture-copy p:last-child {
    max-width: 700px;
  }

  .verification-themes {
    grid-template-columns: repeat(3, 1fr);
  }

  .verification-themes article:nth-child(3) {
    border-right: 0;
  }

  .verification-themes article:nth-child(-n+3) {
    border-bottom: 1px solid var(--line);
  }

  .infrastructure-blueprint {
    min-height: 300px;
  }

  .site-footer {
    grid-template-columns: 1.2fr repeat(3, 0.8fr);
  }

  .standards-grid,
  .service-extension-grid,
  .output-grid,
  .audience-grid,
  .partner-grid,
  .route-grid,
  .lab-focus-grid,
  .flow-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {


  .brand {
    min-width: 0;
  }

  .brand strong {
    font-size: 0.8rem;
  }

  .brand small {
    display: none;
  }

  h1 {
    font-size: clamp(2.8rem, 14vw, 4.1rem);
  }

  h2 {
    font-size: clamp(2.2rem, 11vw, 3.3rem);
  }

  .home-hero,
  .band-inner,
  .home-cta,
  .section,
  .newsletter {
    width: min(100% - 30px, var(--max));
  }

  .home-hero {
    gap: 26px;
    min-height: 0;
    padding: 58px 0 66px;
  }

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

  .home-hero-copy > p:not(.eyebrow) {
    font-size: 0.94rem;
  }

  .hero-actions,
  .section-actions {
    align-items: stretch;
    flex-direction: column;
    gap: 10px;
  }

  .button {
    width: 100%;
  }

  .button.text-button {
    width: auto;
    align-self: flex-start;
  }

  .hero-blueprint {
    min-height: 450px;
    transform: scale(0.94);
  }

  .blueprint-label {
    max-width: 100px;
    font-size: 0.5rem;
  }

  .blueprint-temple {
    width: 72%;
  }

  .band-inner,
  .section {
    padding: 64px 0;
  }

  .editorial-heading,
  .home-cta,
  .section-heading.split,
  .intro-grid,
  .founder-strip,
  .two-column,
  .service-layout,
  .roundtable-panel,
  .lab-focus-panel,
  .lab-card,
  .contact,
  .wide-form,
  .credibility-panel,
  .infrastructure-trust-panel,
  .newsletter,
  .page-cta {
    grid-template-columns: 1fr;
  }

  .capability-blocks,
  .gap-points,
  .verification-themes,
  .route-blocks,
  .support-list,
  .infrastructure-items,
  .mission-vision,
  .standards-grid,
  .structure-grid,
  .service-grid,
  .service-extension-grid,
  .output-grid,
  .flow-grid,
  .roundtable-list,
  .audience-grid,
  .partner-grid,
  .route-grid,
  .lab-focus-grid,
  .lab-grid,
  .credibility-signals,
  .contact-option-groups,
  .process ol,
  .process .three-step,
  .pipeline-steps {
    grid-template-columns: 1fr;
  }

  .capability-blocks,
  .support-list {
    border-top: 1px solid var(--line);
    border-left: 0;
  }

  .capability-blocks article,
  .gap-points article,
  .gap-points article + article,
  .verification-themes article,
  .verification-themes article:first-child,
  .verification-themes article:last-child,
  .route-blocks a,
  .support-list article {
    min-height: 0;
    border-right: 0;
    border-bottom: 1px solid var(--line);
    padding: 26px 0;
  }

  .gap-points h3,
  .verification-themes h3,
  .route-blocks h3,
  .support-list h3,
  .capability-blocks h3 {
    margin-top: 22px;
  }

  .verification-path {
    grid-template-columns: 1fr;
    justify-items: start;
  }

  .verification-path i {
    width: 1px;
    height: 18px;
    margin-left: 8px;
  }

  .trust-building {
    padding-top: 0;
  }

  .building-roof {
    position: relative;
    height: auto;
    clip-path: none;
    padding: 24px 14px;
  }

  .building-roof strong,
  .building-roof span {
    top: auto;
  }

  .building-columns,
  .building-data-layer {
    grid-template-columns: 1fr;
    padding: 0;
  }

  .building-columns article {
    min-height: 0;
    border-right: 0;
    border-bottom: 1px solid var(--line);
    padding: 28px 18px;
  }

  .building-columns h3 {
    margin-top: 18px;
  }

  .building-data-layer span {
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }

  .routes-layout > div:first-child {
    padding-right: 0;
  }

  .infrastructure-panel {
    min-height: 0;
    padding-block: 70px;
  }

  .infrastructure-blueprint {
    height: 230px;
    min-height: 0;
  }

  .infrastructure-items span {
    border-right: 0;
    border-bottom: 1px solid rgba(255,255,255,0.14);
  }

  .home-cta {
    padding-block: 58px;
  }

  .inner-hero {
    min-height: 0;
    padding-top: 72px;
  }

  .founder-strip,
  .credibility-panel,
  .roundtable-panel,
  .lab-focus-panel,
  .lab-card,
  .research-pipeline,
  .contributors,
  .infrastructure-map,
  .process,
  .featured-service,
  .contact-form,
  .wide-form,
  .infrastructure-trust-panel {
    padding: 24px;
  }

  .process li {
    min-height: 0;
    border-bottom: 1px solid var(--line);
    padding: 22px 0;
  }

  .process li::before {
    margin-bottom: 14px;
  }

  .infrastructure-map article {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .contact {
    padding-top: 70px;
  }

  .newsletter form {
    grid-template-columns: 1fr;
    min-width: 0;
  }

  .site-footer {
    grid-template-columns: 1fr 1fr;
    gap: 34px;
    padding: 52px 20px 28px;
  }

  .footer-statement,
  .footer-brand-block,
  .copyright {
    grid-column: 1 / -1;
  }
}

@media (min-width: 761px) and (max-width: 1100px) {
  .home-hero-copy::before {
    top: -40px;
    right: 0;
    bottom: -40px;
    left: 0;
  }
}



/* Final surface rhythm and narrow-screen composition. */
body.page-about .inner-editorial-section { background: linear-gradient(105deg, rgba(247, 248, 247, 0.9), rgba(233, 238, 242, 0.42)); }
body.page-about .mission-vision-section { background: rgba(255, 253, 248, 0.72); }
body.page-about .inner-concept-section { background: linear-gradient(105deg, rgba(233, 238, 242, 0.58), rgba(247, 248, 247, 0.88)); }
body.page-about .inner-principles-section { background: rgba(233, 238, 242, 0.5); }

body.page-initiative .inner-priorities-section { background: linear-gradient(105deg, rgba(233, 238, 242, 0.78), rgba(247, 248, 247, 0.65)); }
body.page-initiative .inner-activity-section { background: rgba(255, 253, 248, 0.7); }
body.page-initiative .inner-audience-section { background: rgba(247, 248, 247, 0.9); }

body.page-alliance .inner-editorial-section { background: rgba(241, 237, 228, 0.78); }
body.page-alliance .inner-activity-section { background: rgba(255, 253, 248, 0.72); }
body.page-alliance .contributor-framework-section { background: rgba(247, 248, 247, 0.94); }
body.page-alliance .alliance-form-section { background: rgba(241, 237, 228, 0.62); }

body.page-services .service-areas-section { background: rgba(255, 253, 248, 0.76); }
body.page-services .service-audience-section { background: rgba(247, 248, 247, 0.9); }
body.page-services .service-boundaries-section { background: rgba(255, 253, 248, 0.72); }

body.page-trust-lab .inner-editorial-section { background: rgba(255, 253, 248, 0.72); }
body.page-trust-lab .inner-audience-section { background: rgba(247, 248, 247, 0.9); }

body.page-partners .inner-editorial-section { background: rgba(255, 253, 248, 0.72); }
body.page-partners .inner-audience-section { background: rgba(233, 238, 242, 0.64); }
body.page-partners .participation-terms-section { background: rgba(241, 237, 228, 0.72); }

body.page-contact .direct-contact-section { background: linear-gradient(105deg, rgba(255, 253, 248, 0.96), rgba(247, 248, 247, 0.88)); }

@media (max-width: 620px) {
  body.inner-page .inner-page-main > .section { padding-block: 48px; }
  body.inner-page .inner-page-hero { padding-block: 60px; }
  body.inner-page .inner-page-hero h1 {
    max-width: 13ch;
    font-size: clamp(2.35rem, 10.2vw, 3.4rem);
    letter-spacing: -0.046em;
    line-height: 1.01;
  }
  body.inner-page .inner-page-hero > p:not(.eyebrow) { font-size: 0.98rem; line-height: 1.62; }
  body.inner-page .section-heading { margin-bottom: 25px; }
  body.inner-page .inner-route-grid > *,
  body.inner-page .inner-principles-grid > article,
  body.inner-page .inner-activity-grid > article,
  body.inner-page .decision-family-grid > article,
  body.inner-page .research-domain-grid > article,
  body.inner-page .partnership-route-grid > article,
  body.inner-page .contact-route-grid > a,
  body.inner-page .emerging-environment-grid > article { padding: 21px 18px; }
  body.inner-page .inner-definition-strip > span,
  body.inner-page .inner-audience-grid > span { min-height: 62px; padding: 14px 15px; }
}
@media (min-width: 421px) and (max-width: 620px) {
  body.inner-page .inner-audience-grid,
  body.inner-page .inner-definition-strip,
  body.page-services .outcomes-grid,
  body.page-contact .contact-route-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.page-about .inner-principles-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.page-about .inner-principles-grid > article,
  body.page-about .inner-principles-grid > article:nth-child(1),
  body.page-about .inner-principles-grid > article:nth-child(2),
  body.page-about .inner-principles-grid > article:nth-child(n + 3) { grid-column: auto; }
  body.page-contact .contact-route-grid > a:nth-child(even) { border-left: 1px solid var(--inner-line); }
}
@media (max-width: 420px) {
  body.page-services .outcomes-grid,
  body.page-contact .contact-route-grid { grid-template-columns: 1fr; }
  body.page-contact .contact-route-grid > a:nth-child(even) { border-left: 0; }
}
/* About hero correction: composed copy and architecture. */
body.inner-page .inner-hero-visual,
body.inner-page .inner-secondary-visual {
  background: rgba(255, 253, 248, 0.68);
  background-size: auto;
}
body.page-trust-lab .inner-hero-visual,
body.page-trust-lab .inner-secondary-visual {
  background: rgba(5, 25, 54, 0.58);
}
body.page-about .inner-page-hero.inner-hero-with-visual {
  grid-template-columns: minmax(0, 0.98fr) minmax(380px, 0.86fr);
  align-items: center;
  column-gap: clamp(42px, 7vw, 118px);
}
body.page-about .inner-page-hero.inner-hero-with-visual::before,
body.page-about .inner-page-hero.inner-hero-with-visual::after { display: none; }
body.page-about .inner-hero-copy {
  grid-column: 1;
  grid-row: 1;
  align-self: center;
}
body.page-about .inner-hero-copy h1 { max-width: 13.5ch; }
body.page-about .inner-hero-visual {
  border: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
}
body.page-about .inner-hero-visual::before { display: none; }
body.page-about .inner-hero-visual img { width: min(100%, 570px); margin-inline: auto; }
@media (min-width: 901px) {
  body.page-about .inner-hero-visual { grid-column: 2; grid-row: 1; align-self: center; }
}
@media (max-width: 900px) {
  body.page-about .inner-hero-copy { grid-column: 1; grid-row: auto; }
  body.page-about .inner-hero-visual { width: min(100%, 620px); }
}/* Inner-page hero weight and About AI sentinel. */
body.inner-page .inner-page-hero h1 { font-weight: 400; }@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
}

/* Approved design visual-fidelity pass */
.icon-library {
  position: absolute;
  width: 0;
  height: 0;
  overflow: hidden;
}

svg.brand-mark {
  flex: 0 0 auto;
  width: 31px;
  height: 37px;
  overflow: visible;
  color: inherit;
}

.brand-mark .mark-navy,
.brand-mark .mark-gold,
.brand-mark .mark-axis {
  fill: none;
  stroke-linecap: square;
  stroke-linejoin: miter;
}

.brand-mark .mark-navy {
  stroke: var(--navy);
  stroke-width: 1.55;
}

.brand-mark .mark-gold {
  stroke: var(--gold);
  stroke-width: 1.7;
}

.brand-mark .mark-axis {
  stroke: var(--gold-light);
  stroke-width: 1;
}


.brand {
  gap: 12px;
}

.brand strong {
  font-size: 0.91rem;
  letter-spacing: 0.22em;
}

.brand small {
  margin-top: 1px;
  font-size: 0.57rem;
}




.line-icon {
  width: 38px;
  height: 38px;
  fill: none;
  stroke: var(--navy);
  stroke-width: 1.35;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.home-hero {
  grid-template-columns: minmax(0, 0.91fr) minmax(510px, 1.09fr);
  gap: clamp(28px, 3vw, 48px);
  min-height: auto;
  padding: 72px 0 76px;
}

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

.home-hero h1 {
  max-width: 650px;
  margin-bottom: 22px;
  font-size: clamp(3.15rem, 4.05vw, 4rem);
  line-height: 1.005;
}

.home-hero-copy > p:not(.eyebrow) {
  max-width: 585px;
  margin-bottom: 0;
  font-size: 0.96rem;
  line-height: 1.72;
}

.home-hero .hero-actions {
  margin-top: 27px;
}

.hero-architecture {
  width: 100%;
  max-width: 660px;
  justify-self: end;
}

.hero-architecture svg,
.trust-architecture-svg svg,
.infrastructure-svg svg {
  display: block;
  width: 100%;
  height: auto;
}

.hero-architecture .diagram-grid {
  fill: none;
  stroke: rgba(9, 33, 63, 0.13);
  stroke-width: 1;
}

.hero-architecture .diagram-gold {
  fill: none;
  stroke: rgba(180, 137, 61, 0.68);
  stroke-width: 1.2;
}

.hero-architecture .diagram-dots {
  fill: var(--gold);
}

.hero-architecture .architecture-building {
  fill: rgba(255, 253, 248, 0.3);
  stroke: rgba(9, 33, 63, 0.62);
  stroke-width: 1.3;
}

.hero-architecture .diagram-core rect {
  fill: rgba(250, 247, 239, 0.96);
  stroke: var(--gold);
  stroke-width: 1.2;
}

.hero-architecture text,
.trust-architecture-svg text,
.infrastructure-svg text {
  fill: var(--navy);
  font-family: var(--font-label);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-anchor: middle;
}

.hero-architecture .diagram-core text {
  font-size: 9px;
}

.hero-architecture .diagram-labels text {
  font-size: 9px;
}

.band-inner {
  padding-block: 92px;
}

.fidelity-mission {
  grid-template-columns: minmax(0, 1.18fr) minmax(240px, 0.74fr) minmax(390px, 1fr);
  gap: clamp(34px, 4vw, 60px);
}

.fidelity-mission h2 {
  max-width: 520px;
  margin-bottom: 0;
  font-size: clamp(2.35rem, 3.1vw, 3.45rem);
}

.fidelity-mission .mission-thesis {
  border-left: 1px solid var(--gold-light);
  border-top: 0;
  padding: 4px 0 0 26px;
}

.fidelity-mission .mission-thesis p {
  margin: 0;
  color: var(--navy-soft);
  font-size: 0.91rem;
  line-height: 1.68;
}

.icon-capabilities {
  gap: 0;
  border-left: 1px solid var(--line);
}

.icon-capabilities article {
  min-height: 176px;
  padding: 6px 17px 12px;
}

.icon-capabilities .line-icon {
  width: 31px;
  height: 31px;
  stroke: var(--gold);
}

.icon-capabilities h3 {
  margin-top: 26px;
}

.icon-capabilities p {
  font-size: 0.78rem;
}

.gap-heading {
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) minmax(300px, 0.58fr);
  align-items: end;
  gap: clamp(42px, 7vw, 96px);
  max-width: none;
}

.gap-heading h2 {
  max-width: 760px;
  margin-bottom: 0;
}

.gap-heading > p {
  margin-bottom: 8px;
  color: var(--navy-soft);
}

.icon-points {
  margin-top: 48px;
  border-block: 0;
}

.icon-points article,
.icon-points article + article {
  min-height: 205px;
  padding: 20px 28px 16px;
}

.icon-points article:first-child {
  padding-left: 0;
}

.icon-points article:last-child {
  padding-right: 0;
}

.icon-points .line-icon {
  width: 36px;
  height: 36px;
  stroke: var(--gold);
}

.icon-points h3 {
  margin-top: 28px;
  font-size: 1.05rem;
}

.verification-path {
  gap: 10px;
  max-width: 790px;
  margin-top: 30px;
  border-block: 1px solid var(--line);
  padding-block: 13px;
}

.verification-path i {
  position: relative;
  height: 1px;
  background: var(--gold-light);
}

.verification-path i::after {
  content: "";
  position: absolute;
  top: -3px;
  right: 0;
  width: 6px;
  height: 6px;
  border-top: 1px solid var(--gold);
  border-right: 1px solid var(--gold);
  transform: rotate(45deg);
}

.fidelity-architecture {
  grid-template-columns: minmax(260px, 0.52fr) minmax(640px, 1.48fr);
  gap: clamp(46px, 6vw, 86px);
}

.fidelity-architecture .architecture-copy h2 {
  font-size: clamp(2.35rem, 3.25vw, 3.55rem);
}

.trust-architecture-svg {
  width: 100%;
}

.trust-architecture-svg .map-outline,
.trust-architecture-svg .map-panels {
  fill: rgba(255, 253, 248, 0.28);
  stroke: rgba(9, 33, 63, 0.46);
  stroke-width: 1.15;
}

.trust-architecture-svg .map-core-panel {
  fill: rgba(180, 137, 61, 0.08);
  stroke: var(--gold);
}

.trust-architecture-svg .map-connectors {
  fill: none;
  stroke: var(--gold);
  stroke-width: 1.5;
}

.trust-architecture-svg .map-small {
  fill: var(--muted);
  font-size: 9px;
  letter-spacing: 0;
}

.trust-architecture-svg .map-core-text {
  font-size: 12px;
}

.trust-architecture-svg .map-capabilities rect,
.trust-architecture-svg .map-capabilities path {
  fill: rgba(180, 137, 61, 0.06);
  stroke: rgba(9, 33, 63, 0.38);
}

.trust-architecture-svg .map-capabilities text,
.trust-architecture-svg .map-foundations text {
  font-size: 8px;
}

.trust-architecture-svg .map-foundations rect {
  fill: rgba(255, 253, 248, 0.5);
  stroke: rgba(9, 33, 63, 0.42);
}

.trust-architecture-svg .map-foundations .map-foundation-dark {
  fill: var(--navy);
  stroke: var(--navy);
}

.trust-architecture-svg .map-foundations .map-foundation-text {
  fill: var(--white);
}

.verify-band .compact-heading h2 {
  max-width: 720px;
  margin-bottom: 0;
}

.icon-themes {
  margin-top: 44px;
  border-block: 0;
}

.icon-themes article {
  min-height: 218px;
  padding: 20px 22px 14px;
}

.icon-themes .line-icon {
  width: 36px;
  height: 36px;
  stroke: var(--gold);
}

.icon-themes h3 {
  margin-top: 34px;
}

.routes-layout {
  gap: clamp(42px, 5vw, 74px);
}

.fidelity-infrastructure {
  grid-template-columns: minmax(300px, 0.68fr) minmax(580px, 1.32fr);
  gap: 44px;
  min-height: 495px;
  padding-block: 72px;
}

.infrastructure-svg {
  position: relative;
  z-index: 2;
  align-self: end;
}

.infrastructure-svg .infra-grid {
  fill: none;
  stroke: rgba(255, 255, 255, 0.08);
  stroke-width: 1;
}

.infrastructure-svg .infra-gold {
  fill: none;
  stroke: rgba(209, 178, 115, 0.72);
  stroke-width: 1.25;
}

.infrastructure-svg .infra-gold circle {
  fill: var(--gold-light);
}

.infrastructure-svg .infra-buildings {
  fill: rgba(255, 255, 255, 0.02);
  stroke: rgba(255, 255, 255, 0.55);
  stroke-width: 1.15;
}

.infrastructure-svg .infra-labels text {
  fill: rgba(255, 255, 255, 0.76);
  font-size: 8px;
}

.fidelity-infrastructure .infrastructure-items {
  margin-top: -4px;
}

.fidelity-support {
  grid-template-columns: minmax(270px, 0.5fr) minmax(700px, 1.5fr);
  gap: clamp(46px, 6vw, 88px);
}

.icon-support article {
  min-height: 195px;
  padding: 15px 22px 12px;
}

.icon-support .line-icon {
  width: 35px;
  height: 35px;
  stroke: var(--gold);
}

.icon-support h3 {
  margin-top: 28px;
  font-size: 1.12rem;
}

.icon-support p {
  margin-bottom: 0;
  color: var(--muted);
  font-size: 0.78rem;
  line-height: 1.5;
}

.stakeholder-line {
  grid-column: 1 / -1;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 0;
  margin-top: -20px;
  border-top: 1px solid var(--line);
  padding-top: 16px;
}

.stakeholder-line span {
  border-right: 1px solid var(--gold-light);
  padding: 0 16px;
  color: var(--muted);
  font-family: var(--font-label);
  font-size: 0.58rem;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.stakeholder-line span:last-child {
  border-right: 0;
  padding-right: 0;
}

.home-cta {
  position: relative;
  grid-template-columns: 44px minmax(420px, 1fr) auto;
  gap: 36px;
  padding-block: 58px;
}

.home-cta h2 {
  max-width: 690px;
  font-size: clamp(2.15rem, 3.1vw, 3.45rem);
}

.cta-motif {
  display: grid;
  align-content: center;
  gap: 5px;
  height: 86px;
}

.cta-motif span {
  display: block;
  height: 1px;
  background: var(--gold);
}

.cta-motif span:nth-child(1) { width: 22px; }
.cta-motif span:nth-child(2) { width: 34px; }
.cta-motif span:nth-child(3) { width: 44px; }

.site-footer {
  gap: clamp(36px, 5.5vw, 82px);
  padding-top: 58px;
}

.footer-statement {
  max-width: 1060px;
  padding-bottom: 38px;
}

.footer-statement p {
  font-size: clamp(2.4rem, 4.15vw, 4.55rem);
}

.site-footer h3 {
  margin-bottom: 15px;
  font-size: 0.64rem;
}

.site-footer a {
  margin-bottom: 7px;
}

.site-footer .brand-mark .mark-navy {
  stroke: rgba(255, 255, 255, 0.9);
}

@media (max-width: 1100px) {
  .home-hero {
    grid-template-columns: 1fr;
    gap: 24px;
  }

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

  .hero-architecture {
    max-width: 720px;
    justify-self: center;
  }

  .fidelity-mission,
  .fidelity-architecture,
  .fidelity-infrastructure,
  .fidelity-support {
    grid-template-columns: 1fr;
  }

  .fidelity-mission .mission-thesis {
    border-top: 1px solid var(--gold-light);
    border-left: 0;
    padding: 24px 0 0;
  }

  .stakeholder-line {
    margin-top: 0;
    justify-content: flex-start;
  }
}

@media (max-width: 760px) {

  svg.brand-mark {
    width: 27px;
    height: 33px;
  }

  .home-hero {
    padding: 52px 0 50px;
  }

  .home-hero h1 {
    font-size: clamp(2.8rem, 12vw, 3.75rem);
  }

  .hero-architecture {
    margin-top: 8px;
  }

  .hero-architecture .diagram-labels text {
    font-size: 8px;
  }

  .band-inner {
    padding-block: 68px;
  }

  .icon-capabilities {
    grid-template-columns: repeat(3, 1fr);
    border-top: 1px solid var(--line);
  }

  .icon-capabilities article {
    border-right: 1px solid var(--line);
    border-bottom: 0;
    padding: 20px 12px;
  }

  .gap-heading {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .icon-points article,
  .icon-points article + article,
  .icon-themes article,
  .icon-themes article:first-child,
  .icon-themes article:last-child,
  .icon-support article{
    padding: 24px 0;
  }

  .icon-themes article,
  .icon-support article {
    min-height: 0;
  }

  .trust-architecture-svg {
    width: 100%;
    margin-left: 0;
  }

  .fidelity-infrastructure {
    padding-block: 64px;
  }

  .infrastructure-svg {
    width: 100%;
    margin-left: 0;
  }

  .stakeholder-line {
    gap: 10px 0;
  }

  .stakeholder-line span {
    padding: 0 10px;
  }

  .stakeholder-line span:first-child {
    padding-left: 0;
  }

  .home-cta {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .cta-motif {
    display: flex;
    align-items: center;
    height: auto;
  }

  .cta-motif span {
    width: 1px !important;
    height: 26px;
  }
}

/* Legacy blue and animated hero pass */
.home-hero {
  position: relative;
  isolation: isolate;
}

.home-hero::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  right: calc((100vw - 100%) / -2 + 8px);
  bottom: 0;
  left: 48.5%;
  background:
    radial-gradient(circle at 52% 42%, rgba(114, 142, 186, 0.2), transparent 36%),
    linear-gradient(145deg, var(--legacy-blue-900) 0%, var(--legacy-blue-950) 100%);
  transform-origin: center;
  animation: hero-field-breathe 16s ease-in-out 2s infinite alternate;
}

.hero-architecture {
  --parallax-x: 0px;
  --parallax-y: 0px;
  --scroll-shift: 0px;
  --detail-opacity: 1;
  position: relative;
  z-index: 2;
  padding: 28px 0 28px 32px;
  transform: translate3d(var(--parallax-x), calc(var(--parallax-y) + var(--scroll-shift)), 0);
  transition: transform 700ms cubic-bezier(0.22, 1, 0.36, 1);
  will-change: transform;
}

.hero-architecture::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 9% 4% 8% 10%;
  border: 1px solid rgba(189, 209, 231, 0.08);
  border-radius: 50%;
  box-shadow: 0 0 80px rgba(114, 142, 186, 0.08);
}

.hero-architecture .diagram-grid,
.hero-architecture .diagram-gold,
.hero-architecture .diagram-dots,
.hero-architecture .diagram-labels {
  filter: opacity(var(--detail-opacity));
}

.hero-architecture .diagram-grid {
  stroke: rgba(189, 209, 231, 0.24);
}

.hero-architecture .diagram-grid path,
.hero-architecture .diagram-grid ellipse,
.hero-architecture .diagram-gold path,
.hero-architecture .diagram-gold ellipse {
  stroke-dasharray: 2200;
  stroke-dashoffset: 2200;
  animation: hero-line-draw 900ms cubic-bezier(0.65, 0, 0.35, 1) forwards;
}

.hero-architecture .diagram-grid ellipse:nth-of-type(2) {
  transform-box: view-box;
  transform-origin: 380px 305px;
  animation:
    hero-line-draw 1.05s cubic-bezier(0.65, 0, 0.35, 1) forwards,
    hero-ring-rotate 80s linear 2s infinite;
}

.hero-architecture .diagram-grid ellipse:nth-of-type(3) {
  transform-box: view-box;
  transform-origin: 380px 305px;
  animation:
    hero-line-draw 1.05s cubic-bezier(0.65, 0, 0.35, 1) forwards,
    hero-ring-rotate-reverse 96s linear 2s infinite;
}

.hero-architecture .diagram-gold {
  stroke: rgba(209, 178, 115, 0.82);
}

.hero-architecture .diagram-gold path,
.hero-architecture .diagram-gold ellipse {
  animation-delay: 180ms;
}

.hero-architecture .architecture-building {
  fill: rgba(36, 51, 90, 0.2);
  stroke: rgba(227, 235, 248, 0.68);
  opacity: 0;
  transform: translateY(10px);
  animation: hero-architecture-rise 620ms cubic-bezier(0.22, 1, 0.36, 1) 340ms forwards;
}

.hero-architecture .diagram-dots {
  fill: var(--gold-light);
}

.hero-architecture .diagram-dots circle {
  opacity: 0;
  transform-box: fill-box;
  transform-origin: center;
  animation:
    hero-node-reveal 360ms ease-out forwards,
    hero-node-pulse 6s ease-in-out 2.1s infinite;
}

.hero-architecture .diagram-dots circle:nth-child(1) { animation-delay: 720ms, 2.1s; }
.hero-architecture .diagram-dots circle:nth-child(2) { animation-delay: 800ms, 2.6s; }
.hero-architecture .diagram-dots circle:nth-child(3) { animation-delay: 880ms, 3.1s; }
.hero-architecture .diagram-dots circle:nth-child(4) { animation-delay: 960ms, 3.6s; }
.hero-architecture .diagram-dots circle:nth-child(5) { animation-delay: 1040ms, 4.1s; }
.hero-architecture .diagram-dots circle:nth-child(6) { animation-delay: 1120ms, 4.6s; }

.hero-architecture .diagram-core {
  opacity: 0;
  transform-box: fill-box;
  transform-origin: center;
  animation:
    hero-core-activate 520ms cubic-bezier(0.22, 1, 0.36, 1) 1.15s forwards,
    hero-core-breathe 7s ease-in-out 2s infinite;
}

.hero-architecture .diagram-core rect {
  fill: rgba(23, 36, 62, 0.96);
  stroke: var(--gold-light);
  stroke-width: 1.3;
  filter: drop-shadow(0 0 12px rgba(114, 142, 186, 0.18));
}

.hero-architecture .diagram-core text,
.hero-architecture .diagram-labels text {
  fill: var(--legacy-blue-100);
}

.hero-architecture .diagram-labels text {
  opacity: 0;
  transform: translateY(5px);
  animation: hero-label-reveal 380ms ease-out forwards;
}

.hero-architecture .diagram-labels text:nth-child(1) { animation-delay: 760ms; }
.hero-architecture .diagram-labels text:nth-child(2) { animation-delay: 820ms; }
.hero-architecture .diagram-labels text:nth-child(3) { animation-delay: 860ms; }
.hero-architecture .diagram-labels text:nth-child(4) { animation-delay: 920ms; }
.hero-architecture .diagram-labels text:nth-child(5) { animation-delay: 960ms; }
.hero-architecture .diagram-labels text:nth-child(6) { animation-delay: 1020ms; }
.hero-architecture .diagram-labels text:nth-child(7) { animation-delay: 1060ms; }
.hero-architecture .diagram-labels text:nth-child(8) { animation-delay: 1120ms; }
.hero-architecture .diagram-labels text:nth-child(9) { animation-delay: 1160ms; }
.hero-architecture .diagram-labels text:nth-child(10) { animation-delay: 1220ms; }
.hero-architecture .diagram-labels text:nth-child(11) { animation-delay: 1280ms; }

.hero-architecture .signal-point {
  fill: var(--gold-light);
  opacity: 0;
  offset-path: path("M380 80 L380 180 L253 265 L145 423 L261 351 L380 319 L499 351 L615 423");
  offset-rotate: 0deg;
  filter: drop-shadow(0 0 5px rgba(209, 178, 115, 0.5));
  animation: hero-signal-travel 6.4s ease-in-out 1.65s infinite;
}

.infrastructure-band {
  background:
    radial-gradient(circle at 72% 38%, rgba(114, 142, 186, 0.16), transparent 35%),
    linear-gradient(145deg, var(--legacy-blue-900), var(--legacy-blue-950)) !important;
}

.infrastructure-panel::before {
  opacity: 0.28;
  background-image:
    linear-gradient(rgba(65, 82, 120, 0.24) 1px, transparent 1px),
    linear-gradient(90deg, rgba(65, 82, 120, 0.24) 1px, transparent 1px);
}

.infrastructure-svg .infra-grid {
  stroke: rgba(114, 142, 186, 0.17);
}

.infrastructure-svg .infra-gold {
  stroke: rgba(209, 178, 115, 0.86);
}

.infrastructure-svg .infra-buildings {
  fill: rgba(36, 51, 90, 0.16);
  stroke: rgba(189, 209, 231, 0.66);
}

.inner-page .lab-focus-panel,
.inner-page .infrastructure-trust-panel {
  border-color: rgba(114, 142, 186, 0.28);
  color: var(--white);
  background:
    radial-gradient(circle at 80% 20%, rgba(114, 142, 186, 0.14), transparent 32%),
    linear-gradient(145deg, var(--legacy-blue-900), var(--legacy-blue-950));
}

.inner-page .lab-focus-panel p,
.inner-page .infrastructure-trust-panel p {
  color: rgba(227, 235, 248, 0.75);
}

.site-footer {
  background-color: var(--legacy-blue-950);
  background-image:
    linear-gradient(rgba(65, 82, 120, 0.11) 1px, transparent 1px),
    linear-gradient(90deg, rgba(65, 82, 120, 0.11) 1px, transparent 1px),
    radial-gradient(circle at 84% 12%, rgba(114, 142, 186, 0.1), transparent 28rem),
    linear-gradient(150deg, var(--legacy-blue-900), var(--legacy-blue-950) 58%);
  background-size: 58px 58px, 58px 58px, auto, auto;
}

.footer-statement {
  border-bottom-color: rgba(114, 142, 186, 0.28);
}

@keyframes hero-field-breathe {
  from { transform: translate3d(0, 0, 0) scale(1); }
  to { transform: translate3d(-5px, 3px, 0) scale(1.015); }
}

@keyframes hero-line-draw {
  to { stroke-dashoffset: 0; }
}

@keyframes hero-architecture-rise {
  to { opacity: 1; transform: translateY(0); }
}

@keyframes hero-label-reveal {
  to { opacity: 1; transform: translateY(0); }
}

@keyframes hero-node-reveal {
  to { opacity: 1; }
}

@keyframes hero-core-activate {
  0% { opacity: 0; transform: scale(0.94); }
  100% { opacity: 1; transform: scale(1); }
}

@keyframes hero-ring-rotate {
  to { transform: rotate(360deg); }
}

@keyframes hero-ring-rotate-reverse {
  to { transform: rotate(-360deg); }
}

@keyframes hero-node-pulse {
  0%, 88%, 100% { opacity: 0.75; transform: scale(1); }
  92% { opacity: 1; transform: scale(1.55); }
}

@keyframes hero-core-breathe {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.018); }
}

@keyframes hero-signal-travel {
  0%, 8% { opacity: 0; offset-distance: 0%; }
  14% { opacity: 1; }
  78% { opacity: 0.9; }
  88%, 100% { opacity: 0; offset-distance: 100%; }
}

@media (max-width: 1100px) {
  .home-hero::after {
    display: none;
  }

  .hero-architecture {
    width: 100%;
    max-width: 720px;
    margin-right: auto;
    margin-left: auto;
    padding: 24px;
    background:
      radial-gradient(circle at 52% 42%, rgba(114, 142, 186, 0.2), transparent 36%),
      linear-gradient(145deg, var(--legacy-blue-900), var(--legacy-blue-950));
  }
}

@media (max-width: 760px) {
  .hero-architecture {
    width: calc(100% + 30px);
    margin-right: -15px;
    margin-left: -15px;
    padding: 18px 4px;
  }

  .hero-architecture .diagram-labels text {
    font-size: 7px;
  }

  .hero-architecture .diagram-grid ellipse:nth-of-type(2),
  .hero-architecture .diagram-grid ellipse:nth-of-type(3) {
    animation-duration: 1.05s, 120s;
  }
}

/* Final surface rhythm and narrow-screen composition. */
body.page-about .inner-editorial-section { background: linear-gradient(105deg, rgba(247, 248, 247, 0.9), rgba(233, 238, 242, 0.42)); }
body.page-about .mission-vision-section { background: rgba(255, 253, 248, 0.72); }
body.page-about .inner-concept-section { background: linear-gradient(105deg, rgba(233, 238, 242, 0.58), rgba(247, 248, 247, 0.88)); }
body.page-about .inner-principles-section { background: rgba(233, 238, 242, 0.5); }

body.page-initiative .inner-priorities-section { background: linear-gradient(105deg, rgba(233, 238, 242, 0.78), rgba(247, 248, 247, 0.65)); }
body.page-initiative .inner-activity-section { background: rgba(255, 253, 248, 0.7); }
body.page-initiative .inner-audience-section { background: rgba(247, 248, 247, 0.9); }

body.page-alliance .inner-editorial-section { background: rgba(241, 237, 228, 0.78); }
body.page-alliance .inner-activity-section { background: rgba(255, 253, 248, 0.72); }
body.page-alliance .contributor-framework-section { background: rgba(247, 248, 247, 0.94); }
body.page-alliance .alliance-form-section { background: rgba(241, 237, 228, 0.62); }

body.page-services .service-areas-section { background: rgba(255, 253, 248, 0.76); }
body.page-services .service-audience-section { background: rgba(247, 248, 247, 0.9); }
body.page-services .service-boundaries-section { background: rgba(255, 253, 248, 0.72); }

body.page-trust-lab .inner-editorial-section { background: rgba(255, 253, 248, 0.72); }
body.page-trust-lab .inner-audience-section { background: rgba(247, 248, 247, 0.9); }

body.page-partners .inner-editorial-section { background: rgba(255, 253, 248, 0.72); }
body.page-partners .inner-audience-section { background: rgba(233, 238, 242, 0.64); }
body.page-partners .participation-terms-section { background: rgba(241, 237, 228, 0.72); }

body.page-contact .direct-contact-section { background: linear-gradient(105deg, rgba(255, 253, 248, 0.96), rgba(247, 248, 247, 0.88)); }

@media (max-width: 620px) {
  body.inner-page .inner-page-main > .section { padding-block: 48px; }
  body.inner-page .inner-page-hero { padding-block: 60px; }
  body.inner-page .inner-page-hero h1 {
    max-width: 13ch;
    font-size: clamp(2.35rem, 10.2vw, 3.4rem);
    letter-spacing: -0.046em;
    line-height: 1.01;
  }
  body.inner-page .inner-page-hero > p:not(.eyebrow) { font-size: 0.98rem; line-height: 1.62; }
  body.inner-page .section-heading { margin-bottom: 25px; }
  body.inner-page .inner-route-grid > *,
  body.inner-page .inner-principles-grid > article,
  body.inner-page .inner-activity-grid > article,
  body.inner-page .decision-family-grid > article,
  body.inner-page .research-domain-grid > article,
  body.inner-page .partnership-route-grid > article,
  body.inner-page .contact-route-grid > a,
  body.inner-page .emerging-environment-grid > article { padding: 21px 18px; }
  body.inner-page .inner-definition-strip > span,
  body.inner-page .inner-audience-grid > span { min-height: 62px; padding: 14px 15px; }
}
@media (min-width: 421px) and (max-width: 620px) {
  body.inner-page .inner-audience-grid,
  body.inner-page .inner-definition-strip,
  body.page-services .outcomes-grid,
  body.page-contact .contact-route-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.page-about .inner-principles-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.page-about .inner-principles-grid > article,
  body.page-about .inner-principles-grid > article:nth-child(1),
  body.page-about .inner-principles-grid > article:nth-child(2),
  body.page-about .inner-principles-grid > article:nth-child(n + 3) { grid-column: auto; }
  body.page-contact .contact-route-grid > a:nth-child(even) { border-left: 1px solid var(--inner-line); }
}
@media (max-width: 420px) {
  body.page-services .outcomes-grid,
  body.page-contact .contact-route-grid { grid-template-columns: 1fr; }
  body.page-contact .contact-route-grid > a:nth-child(even) { border-left: 0; }
}
/* About hero correction: composed copy and architecture. */
body.inner-page .inner-hero-visual,
body.inner-page .inner-secondary-visual {
  background: rgba(255, 253, 248, 0.68);
  background-size: auto;
}
body.page-trust-lab .inner-hero-visual,
body.page-trust-lab .inner-secondary-visual {
  background: rgba(5, 25, 54, 0.58);
}
body.page-about .inner-page-hero.inner-hero-with-visual {
  grid-template-columns: minmax(0, 0.98fr) minmax(380px, 0.86fr);
  align-items: center;
  column-gap: clamp(42px, 7vw, 118px);
}
body.page-about .inner-page-hero.inner-hero-with-visual::before,
body.page-about .inner-page-hero.inner-hero-with-visual::after { display: none; }
body.page-about .inner-hero-copy {
  grid-column: 1;
  grid-row: 1;
  align-self: center;
}
body.page-about .inner-hero-copy h1 { max-width: 13.5ch; }
body.page-about .inner-hero-visual {
  border: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
}
body.page-about .inner-hero-visual::before { display: none; }
body.page-about .inner-hero-visual img { width: min(100%, 570px); margin-inline: auto; }
@media (min-width: 901px) {
  body.page-about .inner-hero-visual { grid-column: 2; grid-row: 1; align-self: center; }
}
@media (max-width: 900px) {
  body.page-about .inner-hero-copy { grid-column: 1; grid-row: auto; }
  body.page-about .inner-hero-visual { width: min(100%, 620px); }
}/* Inner-page hero weight and About AI sentinel. */
body.inner-page .inner-page-hero h1 { font-weight: 400; }@media (prefers-reduced-motion: reduce) {
  .home-hero::after,
  .hero-architecture,
  .hero-architecture *,
  .hero-architecture *::before,
  .hero-architecture *::after {
    animation: none !important;
    transition: none !important;
  }

  .hero-architecture {
    --parallax-x: 0px !important;
    --parallax-y: 0px !important;
    --scroll-shift: 0px !important;
    --detail-opacity: 1 !important;
    transform: none !important;
  }

  .hero-architecture .diagram-grid path,
  .hero-architecture .diagram-grid ellipse,
  .hero-architecture .diagram-gold path,
  .hero-architecture .diagram-gold ellipse {
    stroke-dashoffset: 0 !important;
  }

  .hero-architecture .architecture-building,
  .hero-architecture .diagram-dots circle,
  .hero-architecture .diagram-core,
  .hero-architecture .diagram-labels text {
    opacity: 1 !important;
    transform: none !important;
  }

  .hero-architecture .signal-point {
    display: none;
  }
}

/* Final homepage proportion and art-direction polish */
main [id] {
  scroll-margin-top: 88px;
}

.home-hero {
  grid-template-columns: minmax(0, 1.1fr) minmax(460px, 0.9fr);
  gap: clamp(20px, 2.4vw, 38px);
  padding-block: 64px 68px;
}

.home-hero::after {
  left: 55%;
}

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

.home-hero .eyebrow {
  margin-bottom: 19px;
}

.home-hero h1 {
  max-width: 655px;
  margin-bottom: 25px;
  font-size: clamp(3rem, 3.78vw, 3.72rem);
  line-height: 1.045;
}

.home-hero-copy > p:not(.eyebrow) {
  max-width: 600px;
}

.home-hero .hero-actions {
  margin-top: 31px;
}

.hero-architecture {
  width: 100%;
  max-width: 100%;
  margin-left: 0;
  padding: 14px 8px 14px 14px;
}

.hero-architecture > svg {
  width: 100%;
  margin-left: 0;
}

.hero-architecture .diagram-grid {
  stroke: rgba(189, 209, 231, 0.32);
}

.hero-architecture .diagram-gold {
  stroke: rgba(209, 178, 115, 0.94);
  stroke-width: 1.35;
}

.hero-architecture .architecture-building {
  stroke: rgba(227, 235, 248, 0.79);
  stroke-width: 1.45;
}

.hero-architecture .diagram-core rect {
  stroke-width: 1.6;
  filter: drop-shadow(0 0 16px rgba(114, 142, 186, 0.26));
}

.hero-architecture .diagram-core text {
  font-size: 9.5px;
}

.hero-architecture .diagram-labels text {
  fill: #f4f6fb;
  font-size: 9.5px;
}

.home-page .home-band h2,
.home-page .home-cta h2 {
  font-size: clamp(2.8rem, 3.55vw, 3.95rem);
  line-height: 1.035;
}

.mission-band .band-inner {
  padding-block: 72px;
}

.fidelity-mission {
  align-items: start;
}

.fidelity-mission h2 {
  font-size: clamp(2.55rem, 3.1vw, 3.4rem);
}

.fidelity-mission .mission-thesis {
  padding-top: 0;
}

.icon-capabilities article {
  min-height: 148px;
  padding-top: 0;
}

.icon-capabilities h3 {
  margin-top: 20px;
  margin-bottom: 6px;
}

.icon-capabilities p {
  max-width: 125px;
  line-height: 1.43;
}

.gap-band .band-inner {
  padding-block: 74px 68px;
}

.gap-heading {
  align-items: center;
}

.gap-heading h2 {
  font-size: clamp(2.9rem, 3.65vw, 4.05rem);
}

.gap-heading > p {
  max-width: 390px;
  margin-bottom: 0;
}

.icon-points {
  margin-top: 35px;
}

.icon-points article,
.icon-points article + article {
  min-height: 176px;
  padding-top: 10px;
  padding-bottom: 8px;
}

.icon-points h3 {
  margin-top: 20px;
  margin-bottom: 7px;
}

.verification-path {
  margin-top: 17px;
  padding-block: 11px;
}

.architecture-band .band-inner {
  padding-block: 80px;
}

.fidelity-architecture {
  grid-template-columns: minmax(260px, 0.51fr) minmax(650px, 1.49fr);
  gap: clamp(35px, 4vw, 58px);
}

.fidelity-architecture .architecture-copy h2 {
  font-size: clamp(2.45rem, 2.9vw, 3.2rem);
}

.trust-architecture-svg {
  width: 105%;
  margin-left: -2%;
}

.trust-architecture-svg text {
  font-size: 10.5px;
}

.trust-architecture-svg .map-small {
  font-size: 9.5px;
}

.trust-architecture-svg .map-capabilities text,
.trust-architecture-svg .map-foundations text {
  font-size: 8.6px;
}

.verify-band .band-inner {
  padding-block: 72px;
}

.verify-band .compact-heading h2 {
  max-width: 690px;
  font-size: clamp(2.75rem, 3.3vw, 3.65rem);
}

.icon-themes {
  align-items: stretch;
  margin-top: 31px;
}

.icon-themes article {
  min-height: 194px;
  padding-top: 12px;
  padding-bottom: 10px;
}

.icon-themes .line-icon {
  stroke: #9b7330;
  stroke-width: 1.55;
}

.icon-themes h3 {
  margin-top: 25px;
}

.icon-themes p {
  max-width: 155px;
}

.routes-layout {
  grid-template-columns: minmax(215px, 0.42fr) minmax(750px, 1.58fr);
  gap: clamp(30px, 3.5vw, 50px);
}

.routes-layout > div:first-child {
  padding-right: 30px;
}

.routes-layout > div:first-child h2 {
  font-size: clamp(2.4rem, 2.8vw, 3.05rem);
}

.fidelity-infrastructure {
  min-height: 450px;
  padding-block: 60px 48px;
}

.infrastructure-svg .infra-grid {
  stroke: rgba(189, 209, 231, 0.22);
}

.infrastructure-svg .infra-gold {
  stroke: rgba(209, 178, 115, 0.98);
  stroke-width: 1.5;
}

.infrastructure-svg .infra-buildings {
  stroke: rgba(227, 235, 248, 0.76);
  stroke-width: 1.25;
}

.infrastructure-svg .infra-labels text {
  fill: rgba(244, 246, 251, 0.88);
  font-size: 8.8px;
}

.infra-signal-point {
  fill: var(--gold-light);
  opacity: 0;
  offset-path: path("M40 328 L180 240 L310 300 L455 165 L590 250 L745 190 L880 300");
  offset-rotate: 0deg;
  filter: drop-shadow(0 0 4px rgba(209, 178, 115, 0.5));
  animation: infra-signal-travel 9s ease-in-out 2.5s infinite;
}

.fidelity-infrastructure .infrastructure-items {
  margin-top: -14px;
}

@keyframes infra-signal-travel {
  0%, 10% { opacity: 0; offset-distance: 0%; }
  16% { opacity: 1; }
  72% { opacity: 0.85; }
  84%, 100% { opacity: 0; offset-distance: 100%; }
}

.support-band .band-inner {
  padding-block: 66px 58px;
}

.fidelity-support {
  gap: clamp(35px, 4vw, 58px);
}

.fidelity-support > div:first-child h2 {
  font-size: clamp(2.45rem, 2.95vw, 3.2rem);
}

.icon-support article {
  display: flex;
  min-height: 174px;
  flex-direction: column;
  padding-top: 9px;
}

.icon-support h3 {
  min-height: 3em;
  margin-top: 20px;
}

.stakeholder-line {
  margin-top: -31px;
  padding-top: 12px;
}

.home-cta {
  gap: 28px;
  padding-block: 46px;
}

.home-cta h2 {
  max-width: 650px;
  font-size: clamp(2.35rem, 2.95vw, 3.2rem);
}

.home-cta .hero-actions {
  gap: 15px;
}

.site-footer {
  align-items: start;
  gap: clamp(32px, 4.5vw, 68px);
  padding-top: 50px;
}

.footer-statement {
  max-width: 920px;
  padding-bottom: 30px;
}

.footer-statement p {
  font-size: clamp(2.15rem, 3.35vw, 3.65rem);
  line-height: 1.075;
}

.site-footer .footer-brand,
.site-footer h3 {
  margin-top: 0;
}

.site-footer > div:not(.footer-statement) > p,
.site-footer a {
  color: rgba(227, 235, 248, 0.73);
}

.site-footer a {
  margin-bottom: 6px;
}

@media (max-width: 1100px) {
  .home-hero {
    grid-template-columns: 1fr;
  }

  .hero-architecture {
    width: 100%;
    margin-right: auto;
    margin-left: auto;
  }

  .hero-architecture > svg {
    width: 100%;
    margin-left: 0;
  }

  .routes-layout {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  main [id] {
    scroll-margin-top: 74px;
  }

  .home-hero {
    padding-block: 43px 44px;
  }

  .home-hero h1 {
    font-size: clamp(2.45rem, 11vw, 2.72rem);
    line-height: 1.04;
  }

  .home-hero .eyebrow {
    margin-bottom: 14px;
  }

  .home-hero-copy > p:not(.eyebrow) {
    font-size: 0.9rem;
    line-height: 1.62;
  }

  .home-hero .hero-actions {
    margin-top: 24px;
  }

  .hero-architecture {
    width: calc(100% + 30px);
    margin-right: -15px;
    margin-left: -15px;
    padding-block: 12px;
  }

  .hero-architecture .diagram-labels,
  .trust-architecture-svg .map-small,
  .infrastructure-svg .infra-labels {
    display: none;
  }

  .home-page .home-band h2,
  .home-page .home-cta h2,
  .fidelity-mission h2,
  .gap-heading h2,
  .fidelity-architecture .architecture-copy h2,
  .verify-band .compact-heading h2,
  .routes-layout > div:first-child h2,
  .fidelity-support > div:first-child h2 {
    font-size: clamp(2.15rem, 9.5vw, 2.55rem);
  }

  .mission-band .band-inner,
  .gap-band .band-inner,
  .architecture-band .band-inner,
  .verify-band .band-inner,
  .support-band .band-inner {
    padding-block: 56px;
  }

  .fidelity-infrastructure {
    padding-block: 54px 42px;
  }

  .infra-signal-point {
    display: none;
  }

  .icon-support h3 {
    min-height: 0;
  }

  .stakeholder-line {
    margin-top: 0;
  }

  .home-cta {
    gap: 15px;
    padding-block: 40px;
  }

  .home-cta .hero-actions {
    gap: 8px;
  }

  .footer-statement p {
    font-size: clamp(2rem, 9vw, 2.55rem);
  }
}

/* Final surface rhythm and narrow-screen composition. */
body.page-about .inner-editorial-section { background: linear-gradient(105deg, rgba(247, 248, 247, 0.9), rgba(233, 238, 242, 0.42)); }
body.page-about .mission-vision-section { background: rgba(255, 253, 248, 0.72); }
body.page-about .inner-concept-section { background: linear-gradient(105deg, rgba(233, 238, 242, 0.58), rgba(247, 248, 247, 0.88)); }
body.page-about .inner-principles-section { background: rgba(233, 238, 242, 0.5); }

body.page-initiative .inner-priorities-section { background: linear-gradient(105deg, rgba(233, 238, 242, 0.78), rgba(247, 248, 247, 0.65)); }
body.page-initiative .inner-activity-section { background: rgba(255, 253, 248, 0.7); }
body.page-initiative .inner-audience-section { background: rgba(247, 248, 247, 0.9); }

body.page-alliance .inner-editorial-section { background: rgba(241, 237, 228, 0.78); }
body.page-alliance .inner-activity-section { background: rgba(255, 253, 248, 0.72); }
body.page-alliance .contributor-framework-section { background: rgba(247, 248, 247, 0.94); }
body.page-alliance .alliance-form-section { background: rgba(241, 237, 228, 0.62); }

body.page-services .service-areas-section { background: rgba(255, 253, 248, 0.76); }
body.page-services .service-audience-section { background: rgba(247, 248, 247, 0.9); }
body.page-services .service-boundaries-section { background: rgba(255, 253, 248, 0.72); }

body.page-trust-lab .inner-editorial-section { background: rgba(255, 253, 248, 0.72); }
body.page-trust-lab .inner-audience-section { background: rgba(247, 248, 247, 0.9); }

body.page-partners .inner-editorial-section { background: rgba(255, 253, 248, 0.72); }
body.page-partners .inner-audience-section { background: rgba(233, 238, 242, 0.64); }
body.page-partners .participation-terms-section { background: rgba(241, 237, 228, 0.72); }

body.page-contact .direct-contact-section { background: linear-gradient(105deg, rgba(255, 253, 248, 0.96), rgba(247, 248, 247, 0.88)); }

@media (max-width: 620px) {
  body.inner-page .inner-page-main > .section { padding-block: 48px; }
  body.inner-page .inner-page-hero { padding-block: 60px; }
  body.inner-page .inner-page-hero h1 {
    max-width: 13ch;
    font-size: clamp(2.35rem, 10.2vw, 3.4rem);
    letter-spacing: -0.046em;
    line-height: 1.01;
  }
  body.inner-page .inner-page-hero > p:not(.eyebrow) { font-size: 0.98rem; line-height: 1.62; }
  body.inner-page .section-heading { margin-bottom: 25px; }
  body.inner-page .inner-route-grid > *,
  body.inner-page .inner-principles-grid > article,
  body.inner-page .inner-activity-grid > article,
  body.inner-page .decision-family-grid > article,
  body.inner-page .research-domain-grid > article,
  body.inner-page .partnership-route-grid > article,
  body.inner-page .contact-route-grid > a,
  body.inner-page .emerging-environment-grid > article { padding: 21px 18px; }
  body.inner-page .inner-definition-strip > span,
  body.inner-page .inner-audience-grid > span { min-height: 62px; padding: 14px 15px; }
}
@media (min-width: 421px) and (max-width: 620px) {
  body.inner-page .inner-audience-grid,
  body.inner-page .inner-definition-strip,
  body.page-services .outcomes-grid,
  body.page-contact .contact-route-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.page-about .inner-principles-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.page-about .inner-principles-grid > article,
  body.page-about .inner-principles-grid > article:nth-child(1),
  body.page-about .inner-principles-grid > article:nth-child(2),
  body.page-about .inner-principles-grid > article:nth-child(n + 3) { grid-column: auto; }
  body.page-contact .contact-route-grid > a:nth-child(even) { border-left: 1px solid var(--inner-line); }
}
@media (max-width: 420px) {
  body.page-services .outcomes-grid,
  body.page-contact .contact-route-grid { grid-template-columns: 1fr; }
  body.page-contact .contact-route-grid > a:nth-child(even) { border-left: 0; }
}
/* About hero correction: composed copy and architecture. */
body.inner-page .inner-hero-visual,
body.inner-page .inner-secondary-visual {
  background: rgba(255, 253, 248, 0.68);
  background-size: auto;
}
body.page-trust-lab .inner-hero-visual,
body.page-trust-lab .inner-secondary-visual {
  background: rgba(5, 25, 54, 0.58);
}
body.page-about .inner-page-hero.inner-hero-with-visual {
  grid-template-columns: minmax(0, 0.98fr) minmax(380px, 0.86fr);
  align-items: center;
  column-gap: clamp(42px, 7vw, 118px);
}
body.page-about .inner-page-hero.inner-hero-with-visual::before,
body.page-about .inner-page-hero.inner-hero-with-visual::after { display: none; }
body.page-about .inner-hero-copy {
  grid-column: 1;
  grid-row: 1;
  align-self: center;
}
body.page-about .inner-hero-copy h1 { max-width: 13.5ch; }
body.page-about .inner-hero-visual {
  border: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
}
body.page-about .inner-hero-visual::before { display: none; }
body.page-about .inner-hero-visual img { width: min(100%, 570px); margin-inline: auto; }
@media (min-width: 901px) {
  body.page-about .inner-hero-visual { grid-column: 2; grid-row: 1; align-self: center; }
}
@media (max-width: 900px) {
  body.page-about .inner-hero-copy { grid-column: 1; grid-row: auto; }
  body.page-about .inner-hero-visual { width: min(100%, 620px); }
}/* Inner-page hero weight and About AI sentinel. */
body.inner-page .inner-page-hero h1 { font-weight: 400; }@media (prefers-reduced-motion: reduce) {
  .infra-signal-point {
    display: none;
    animation: none !important;
  }
}

/* Responsive overflow and mobile art-direction correction */
html,
body {
  max-width: 100%;
}

/* Full homepage dimensional motion and interaction pass */
:root {
  --motion-fast: 180ms;
  --motion-base: 520ms;
  --motion-slow: 900ms;
  --motion-ease: cubic-bezier(0.22, 1, 0.36, 1);
  --scene-blue: #071a36;
  --scene-line: rgba(189, 209, 231, 0.35);
  --scene-gold: #d1b273;
}

.reading-progress {
  position: fixed;
  z-index: 100;
  inset: 0 0 auto;
  height: 2px;
  pointer-events: none;
}

.reading-progress span {
  display: block;
  width: 100%;
  height: 100%;
  background: var(--gold-light);
  transform: scaleX(var(--reading-progress, 0));
  transform-origin: left;
  will-change: transform;
}

.scene-shell {
  position: relative;
  isolation: isolate;
}

.scene-canvas,
.scene-fallback {
  width: 100%;
  height: 100%;
}

.scene-canvas {
  position: absolute;
  z-index: 1;
  inset: 0;
  display: block;
  opacity: 0;
  transition: opacity var(--motion-base) ease;
}

.scene-fallback {
  position: relative;
  z-index: 0;
  display: block;
  opacity: 0;
  transition: opacity var(--motion-base) ease;
}

.scene-shell.webgl-ready .scene-canvas {
  opacity: 1;
}

.scene-shell.webgl-ready .scene-fallback {
  opacity: 0;
}

.scene-shell.webgl-failed .scene-fallback {
  opacity: 1;
}

.scene-shell.webgl-failed .scene-canvas {
  display: none;
}

.hero-architecture.scene-shell {
  min-height: 580px;
  aspect-ratio: 760 / 610;
  padding: 0;
  transform-style: preserve-3d;
}

.scene-domain-controls {
  position: absolute;
  z-index: 3;
  inset: 0;
  visibility: hidden;
  opacity: 0;
  transition: opacity var(--motion-base) ease 180ms;
}

.webgl-ready .scene-domain-controls {
  visibility: visible;
  opacity: 1;
}

.scene-domain-controls button {
  position: absolute;
  left: var(--x);
  top: var(--y);
  max-width: 145px;
  padding: 7px 10px;
  color: var(--legacy-blue-100);
  border: 1px solid rgba(209, 178, 115, 0.35);
  border-radius: 2px;
  background: rgba(7, 26, 54, 0.72);
  font-family: var(--font-label);
  font-size: 0.59rem;
  line-height: 1.35;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  transform: translate(-50%, -50%);
  cursor: pointer;
  backdrop-filter: blur(5px);
}

.scene-domain-controls button span {
  display: block;
}

.scene-domain-controls button:hover,
.scene-domain-controls button:focus-visible,
.scene-domain-controls button[aria-pressed="true"] {
  color: var(--white);
  border-color: var(--gold-light);
  background: rgba(9, 33, 63, 0.94);
  box-shadow: 0 0 0 2px rgba(209, 178, 115, 0.12), 0 0 24px rgba(209, 178, 115, 0.12);
  outline: none;
}

.scene-detail,
.architecture-detail {
  position: absolute;
  z-index: 4;
  right: 20px;
  bottom: 14px;
  left: 20px;
  margin: 0;
  color: rgba(227, 235, 248, 0.78);
  font-family: var(--font-label);
  font-size: 0.61rem;
  line-height: 1.45;
  letter-spacing: 0.035em;
  text-align: center;
  pointer-events: none;
}

.hero-architecture .scene-detail {
  opacity: 0;
  transform: translateY(5px);
  transition: opacity var(--motion-fast) ease, transform var(--motion-base) var(--motion-ease);
}

.hero-architecture.has-selection .scene-detail {
  opacity: 1;
  transform: translateY(0);
}

.architecture-detail {
  position: static;
  min-height: 1.5em;
  margin-top: 8px;
  color: var(--muted);
}

.motion-ready [data-motion="section"] .eyebrow,
.motion-ready [data-motion="section"] h2,
.motion-ready [data-motion="section"] .mission-thesis,
.motion-ready [data-motion="architecture"] .architecture-copy,
.motion-ready [data-motion="architecture"] .trust-architecture-svg,
.motion-ready [data-motion="routes"] > .band-inner > div,
.motion-ready [data-motion="infrastructure"] .infrastructure-copy,
.motion-ready [data-motion="infrastructure"] .infrastructure-svg,
.motion-ready [data-motion="infrastructure"] .infrastructure-items,
.motion-ready [data-motion="cta"] > * {
  opacity: 0;
  transform: translateY(22px);
  transition: opacity var(--motion-base) ease, transform var(--motion-slow) var(--motion-ease);
}

.motion-ready [data-motion].is-visible .eyebrow,
.motion-ready [data-motion].is-visible h2,
.motion-ready [data-motion].is-visible .mission-thesis,
.motion-ready [data-motion].is-visible .architecture-copy,
.motion-ready [data-motion].is-visible .trust-architecture-svg,
.motion-ready [data-motion].is-visible .routes-layout > div,
.motion-ready [data-motion].is-visible .infrastructure-copy,
.motion-ready [data-motion].is-visible .infrastructure-svg,
.motion-ready [data-motion].is-visible .infrastructure-items,
.motion-ready [data-motion].is-visible > * {
  opacity: 1;
  transform: translateY(0);
}

.motion-ready [data-motion].is-visible h2 { transition-delay: 80ms; }
.motion-ready [data-motion].is-visible .mission-thesis,
.motion-ready [data-motion].is-visible .trust-architecture-svg,
.motion-ready [data-motion].is-visible .infrastructure-svg { transition-delay: 150ms; }
.motion-ready [data-motion].is-visible .infrastructure-items { transition-delay: 260ms; }

.icon-capabilities article,
.gap-points article,
.verification-themes article,
.support-list article {
  transform-style: preserve-3d;
  transition: border-color var(--motion-fast) ease, background var(--motion-fast) ease, transform var(--motion-base) var(--motion-ease), box-shadow var(--motion-base) ease;
}

.icon-capabilities article:hover,
.gap-points article:hover,
.verification-themes article:hover,
.verification-themes article:focus-visible {
  z-index: 2;
  border-color: rgba(180, 137, 61, 0.48);
  background: rgba(255, 253, 248, 0.58);
  transform: translateY(-5px) rotateX(1.5deg);
  box-shadow: 0 14px 30px rgba(9, 33, 63, 0.06);
  outline: none;
}

.gap-points {
  perspective: 1000px;
}

.verification-path {
  position: relative;
}

.verification-path::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--gold), transparent);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 1.2s var(--motion-ease) 300ms;
}

.gap-band.is-visible .verification-path::after {
  transform: scaleX(1);
}

.trust-architecture-svg svg {
  overflow: visible;
}

.trust-architecture-svg [data-layer] {
  transform-box: fill-box;
  transform-origin: center;
  transition: filter var(--motion-base) ease, opacity var(--motion-base) ease, transform var(--motion-base) var(--motion-ease);
  cursor: pointer;
}

.trust-architecture-svg [data-layer]:hover,
.trust-architecture-svg [data-layer]:focus-visible,
.trust-architecture-svg [data-layer].is-active {
  filter: drop-shadow(0 12px 10px rgba(9, 33, 63, 0.13));
  transform: translateY(-5px);
  outline: none;
}

.trust-architecture-svg.has-active [data-layer]:not(.is-active) {
  opacity: 0.48;
}

.infrastructure-svg.scene-shell {
  min-height: 410px;
  aspect-ratio: 920 / 430;
  overflow: clip;
}

.infrastructure-items button {
  min-width: 0;
  padding: 12px 10px;
  color: rgba(227, 235, 248, 0.84);
  border: 1px solid rgba(189, 209, 231, 0.2);
  border-radius: 2px;
  background: rgba(23, 36, 62, 0.54);
  font-family: var(--font-label);
  font-size: 0.59rem;
  line-height: 1.35;
  letter-spacing: 0.05em;
  cursor: pointer;
  transition: border-color var(--motion-fast) ease, color var(--motion-fast) ease, background var(--motion-fast) ease;
}

.infrastructure-items button:hover,
.infrastructure-items button:focus-visible,
.infrastructure-items button[aria-pressed="true"] {
  color: var(--white);
  border-color: var(--gold-light);
  background: rgba(65, 82, 120, 0.42);
  outline: none;
}

.infra-detail {
  position: static;
  grid-column: 1 / -1;
  min-height: 1.4em;
  margin-top: -6px;
}

.home-cta.is-visible .cta-motif span {
  animation: cta-converge 1.2s var(--motion-ease) both;
}

.home-cta.is-visible .cta-motif span:nth-child(2) { animation-delay: 90ms; }
.home-cta.is-visible .cta-motif span:nth-child(3) { animation-delay: 180ms; }

@keyframes cta-converge {
  from { opacity: 0; transform: translateX(-18px) scaleY(0.25); }
  to { opacity: 1; transform: translateX(0) scaleY(1); }
}

@media (max-width: 1100px) {
  .hero-architecture.scene-shell {
    min-height: 0;
  }

  .infrastructure-svg.scene-shell {
    min-height: 360px;
  }
}

@media (max-width: 760px) {
  .scene-domain-controls button {
    width: 13px;
    height: 13px;
    padding: 0;
    overflow: hidden;
    color: transparent;
    border-color: var(--gold-light);
    border-radius: 50%;
    background: var(--gold);
    white-space: nowrap;
  }

  .scene-domain-controls button span {
    display: none;
  }

  .scene-domain-controls button:focus-visible {
    width: auto;
    height: auto;
    max-width: 120px;
    padding: 6px 8px;
    overflow: visible;
    color: var(--white);
    border-radius: 2px;
    background: var(--navy-deep);
    white-space: normal;
  }

  .scene-detail {
    right: 12px;
    bottom: 8px;
    left: 12px;
    font-size: 0.52rem;
  }

  .infrastructure-svg.scene-shell {
    min-height: 260px;
    aspect-ratio: 4 / 3;
  }

  .infrastructure-items button {
    min-height: 48px;
  }

  .icon-capabilities article:hover,
  .gap-points article:hover,
  .verification-themes article:hover,
  .verification-themes article:focus-visible{
    transform: none;
  }
}

/* Final surface rhythm and narrow-screen composition. */
body.page-about .inner-editorial-section { background: linear-gradient(105deg, rgba(247, 248, 247, 0.9), rgba(233, 238, 242, 0.42)); }
body.page-about .mission-vision-section { background: rgba(255, 253, 248, 0.72); }
body.page-about .inner-concept-section { background: linear-gradient(105deg, rgba(233, 238, 242, 0.58), rgba(247, 248, 247, 0.88)); }
body.page-about .inner-principles-section { background: rgba(233, 238, 242, 0.5); }

body.page-initiative .inner-priorities-section { background: linear-gradient(105deg, rgba(233, 238, 242, 0.78), rgba(247, 248, 247, 0.65)); }
body.page-initiative .inner-activity-section { background: rgba(255, 253, 248, 0.7); }
body.page-initiative .inner-audience-section { background: rgba(247, 248, 247, 0.9); }

body.page-alliance .inner-editorial-section { background: rgba(241, 237, 228, 0.78); }
body.page-alliance .inner-activity-section { background: rgba(255, 253, 248, 0.72); }
body.page-alliance .contributor-framework-section { background: rgba(247, 248, 247, 0.94); }
body.page-alliance .alliance-form-section { background: rgba(241, 237, 228, 0.62); }

body.page-services .service-areas-section { background: rgba(255, 253, 248, 0.76); }
body.page-services .service-audience-section { background: rgba(247, 248, 247, 0.9); }
body.page-services .service-boundaries-section { background: rgba(255, 253, 248, 0.72); }

body.page-trust-lab .inner-editorial-section { background: rgba(255, 253, 248, 0.72); }
body.page-trust-lab .inner-audience-section { background: rgba(247, 248, 247, 0.9); }

body.page-partners .inner-editorial-section { background: rgba(255, 253, 248, 0.72); }
body.page-partners .inner-audience-section { background: rgba(233, 238, 242, 0.64); }
body.page-partners .participation-terms-section { background: rgba(241, 237, 228, 0.72); }

body.page-contact .direct-contact-section { background: linear-gradient(105deg, rgba(255, 253, 248, 0.96), rgba(247, 248, 247, 0.88)); }

@media (max-width: 620px) {
  body.inner-page .inner-page-main > .section { padding-block: 48px; }
  body.inner-page .inner-page-hero { padding-block: 60px; }
  body.inner-page .inner-page-hero h1 {
    max-width: 13ch;
    font-size: clamp(2.35rem, 10.2vw, 3.4rem);
    letter-spacing: -0.046em;
    line-height: 1.01;
  }
  body.inner-page .inner-page-hero > p:not(.eyebrow) { font-size: 0.98rem; line-height: 1.62; }
  body.inner-page .section-heading { margin-bottom: 25px; }
  body.inner-page .inner-route-grid > *,
  body.inner-page .inner-principles-grid > article,
  body.inner-page .inner-activity-grid > article,
  body.inner-page .decision-family-grid > article,
  body.inner-page .research-domain-grid > article,
  body.inner-page .partnership-route-grid > article,
  body.inner-page .contact-route-grid > a,
  body.inner-page .emerging-environment-grid > article { padding: 21px 18px; }
  body.inner-page .inner-definition-strip > span,
  body.inner-page .inner-audience-grid > span { min-height: 62px; padding: 14px 15px; }
}
@media (min-width: 421px) and (max-width: 620px) {
  body.inner-page .inner-audience-grid,
  body.inner-page .inner-definition-strip,
  body.page-services .outcomes-grid,
  body.page-contact .contact-route-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.page-about .inner-principles-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.page-about .inner-principles-grid > article,
  body.page-about .inner-principles-grid > article:nth-child(1),
  body.page-about .inner-principles-grid > article:nth-child(2),
  body.page-about .inner-principles-grid > article:nth-child(n + 3) { grid-column: auto; }
  body.page-contact .contact-route-grid > a:nth-child(even) { border-left: 1px solid var(--inner-line); }
}
@media (max-width: 420px) {
  body.page-services .outcomes-grid,
  body.page-contact .contact-route-grid { grid-template-columns: 1fr; }
  body.page-contact .contact-route-grid > a:nth-child(even) { border-left: 0; }
}
/* About hero correction: composed copy and architecture. */
body.inner-page .inner-hero-visual,
body.inner-page .inner-secondary-visual {
  background: rgba(255, 253, 248, 0.68);
  background-size: auto;
}
body.page-trust-lab .inner-hero-visual,
body.page-trust-lab .inner-secondary-visual {
  background: rgba(5, 25, 54, 0.58);
}
body.page-about .inner-page-hero.inner-hero-with-visual {
  grid-template-columns: minmax(0, 0.98fr) minmax(380px, 0.86fr);
  align-items: center;
  column-gap: clamp(42px, 7vw, 118px);
}
body.page-about .inner-page-hero.inner-hero-with-visual::before,
body.page-about .inner-page-hero.inner-hero-with-visual::after { display: none; }
body.page-about .inner-hero-copy {
  grid-column: 1;
  grid-row: 1;
  align-self: center;
}
body.page-about .inner-hero-copy h1 { max-width: 13.5ch; }
body.page-about .inner-hero-visual {
  border: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
}
body.page-about .inner-hero-visual::before { display: none; }
body.page-about .inner-hero-visual img { width: min(100%, 570px); margin-inline: auto; }
@media (min-width: 901px) {
  body.page-about .inner-hero-visual { grid-column: 2; grid-row: 1; align-self: center; }
}
@media (max-width: 900px) {
  body.page-about .inner-hero-copy { grid-column: 1; grid-row: auto; }
  body.page-about .inner-hero-visual { width: min(100%, 620px); }
}/* Inner-page hero weight and About AI sentinel. */
body.inner-page .inner-page-hero h1 { font-weight: 400; }@media (prefers-reduced-motion: reduce) {
  .reading-progress,
  .scene-canvas {
    display: none !important;
  }

  .scene-fallback {
    opacity: 1 !important;
  }

  .scene-domain-controls {
    display: none !important;
  }

  .motion-ready [data-motion] *,
  .motion-ready [data-motion] {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
    animation: none !important;
  }

  .verification-path::after{
    transform: none !important;
    transition: none !important;
  }
}

.home-hero,
.home-hero > *,
.mission-layout > *,
.gap-heading > *,
.architecture-layout,
.architecture-layout > *,
.routes-layout,
.routes-layout > *,
.infrastructure-panel,
.infrastructure-panel > *,
.support-layout,
.support-layout > *,
.site-footer > * {
  min-width: 0;
}

.hero-architecture,
.hero-architecture > svg,
.trust-architecture-svg,
.trust-architecture-svg > svg,
.infrastructure-svg,
.infrastructure-svg > svg {
  width: 100%;
  max-width: 100%;
  margin-right: 0;
  margin-left: 0;
}

.hero-architecture {
  justify-self: stretch;
  padding: 14px 8px 14px 14px;
  overflow: clip;
}

.hero-architecture > svg {
  display: block;
}

.home-hero::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  bottom: 0;
  left: 55%;
  width: 14px;
  pointer-events: none;
  background: linear-gradient(90deg, rgba(250, 247, 239, 0.92), rgba(180, 137, 61, 0.16), transparent);
  transform: translateX(-50%);
}

.hero-architecture .diagram-grid {
  opacity: 0.82;
}

.hero-architecture .architecture-building {
  transform-box: fill-box;
  transform-origin: center;
}

.hero-architecture .diagram-core {
  transform-box: fill-box;
  transform-origin: center;
}

@keyframes hero-architecture-rise {
  from { opacity: 0; transform: translateY(10px) scale(1.02); }
  to { opacity: 1; transform: translateY(0) scale(1.09); }
}

@keyframes hero-core-activate {
  0% { opacity: 0; transform: scale(1); }
  100% { opacity: 1; transform: scale(1.09); }
}

@keyframes hero-core-breathe {
  0%, 100% { transform: scale(1.09); }
  50% { transform: scale(1.105); }
}

.button,
.site-nav,

@media (min-width: 761px) and (max-width: 1100px) {
  .home-hero {
    grid-template-columns: minmax(0, 1fr);
    gap: 32px;
    padding-block: 52px;
  }

  .home-hero::before,
  .home-hero::after {
    display: none;
  }

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

  .hero-architecture {
    width: 100%;
    max-width: 720px;
    margin: 0 auto;
    padding: 24px;
    background:
      radial-gradient(circle at 52% 42%, rgba(114, 142, 186, 0.2), transparent 36%),
      linear-gradient(145deg, var(--legacy-blue-900), var(--legacy-blue-950));
  }

  .hero-architecture .diagram-labels text {
    font-size: 8.5px;
  }

  .fidelity-architecture,
  .fidelity-infrastructure,
  .fidelity-support,
  .routes-layout {
    grid-template-columns: minmax(0, 1fr);
  }

  .trust-architecture-svg,
  .infrastructure-svg {
    justify-self: center;
  }

}

@media (max-width: 760px) {
  .home-hero {
    grid-template-columns: minmax(0, 1fr);
    gap: 28px;
    padding-block: 44px 48px;
  }

  .home-hero::before,
  .home-hero::after {
    display: none;
  }

  .home-hero-copy,
  .home-hero h1,
  .home-hero-copy > p:not(.eyebrow) {
    width: 100%;
    max-width: 100%;
  }

  .home-hero h1 {
    font-size: clamp(2.55rem, 10.5vw, 3.2rem);
    line-height: 1.04;
    overflow-wrap: normal;
  }

  .home-hero .hero-actions {
    gap: 14px;
  }

  .home-hero .button.primary {
    width: 100%;
    padding-inline: 12px;
    white-space: normal;
    text-align: center;
  }

  .home-hero .button.text-button {
    width: auto;
    max-width: 100%;
    align-self: flex-start;
  }

  .hero-architecture {
    width: 100%;
    max-width: 100%;
    aspect-ratio: 4 / 3;
    margin: 0;
    padding: 10px;
    background:
      radial-gradient(circle at 52% 42%, rgba(114, 142, 186, 0.2), transparent 36%),
      linear-gradient(145deg, var(--legacy-blue-900), var(--legacy-blue-950));
    overflow: clip;
    transform: none;
  }

  .hero-architecture > svg {
    width: 100%;
    height: 100%;
    object-fit: contain;
  }

  .hero-architecture .diagram-labels {
    display: none;
  }

  .hero-architecture .diagram-grid ellipse:nth-of-type(2),
  .hero-architecture .diagram-grid ellipse:nth-of-type(3) {
    animation: hero-line-draw 1.05s cubic-bezier(0.65, 0, 0.35, 1) forwards;
  }

  .fidelity-architecture,
  .fidelity-infrastructure,
  .fidelity-support,
  .routes-layout {
    grid-template-columns: minmax(0, 1fr);
  }

  .trust-architecture-svg,
  .infrastructure-svg {
    width: 100%;
    max-width: 100%;
    margin: 0;
    overflow: clip;
  }

  .trust-architecture-svg > svg,
  .infrastructure-svg > svg {
    width: 100%;
    max-width: 100%;
  }

  .trust-architecture-svg .map-small,
  .trust-architecture-svg .map-capabilities text,
  .infrastructure-svg .infra-labels {
    display: none;
  }

}

@media (max-width: 560px) {

  .brand {
    min-width: 0;
  }

  .brand strong {
    font-size: 0.76rem;
    letter-spacing: 0.17em;
  }


  .site-footer {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 18px 22px;
    padding: 38px 18px 24px;
  }

  .footer-statement,
  .footer-brand-block,
  .site-footer > div:nth-of-type(5),
  .copyright {
    grid-column: 1 / -1;
  }

  .footer-statement {
    padding-bottom: 24px;
  }

  .footer-statement p {
    max-width: 100%;
    font-size: clamp(1.45rem, 7vw, 1.78rem);
    line-height: 1.08;
  }

  .site-footer .brand {
    margin-bottom: 16px;
  }

  .site-footer h3 {
    margin-bottom: 8px;
  }

  .site-footer a {
    display: flex;
    min-height: 40px;
    align-items: center;
    margin: 0;
    line-height: 1.3;
  }

  .site-footer > div:nth-of-type(5) {
    border-top: 1px solid rgba(114, 142, 186, 0.2);
    padding-top: 18px;
  }

  .copyright {
    margin-top: 4px;
    padding-top: 18px;
  }
}

@media (max-width: 360px) {
  .brand small {
    display: none;
  }

  .brand strong {
    font-size: 0.72rem;
    letter-spacing: 0.14em;
  }

  .home-hero h1 {
    font-size: clamp(2.35rem, 12.2vw, 2.7rem);
  }

  .button {
    font-size: 0.69rem;
  }
}

/* Deterministic reduced-motion QA mode mirrors the system preference. */
.force-reduced-motion .reading-progress,
.force-reduced-motion .scene-canvas {
  display: none !important;
}

.force-reduced-motion .scene-fallback {
  opacity: 1 !important;
}

.force-reduced-motion .scene-domain-controls {
  display: none !important;
}

.force-reduced-motion .motion-ready [data-motion],
.force-reduced-motion .motion-ready [data-motion] * {
  opacity: 1 !important;
  transform: none !important;
  transition: none !important;
  animation: none !important;
}

.force-reduced-motion .verification-path::after{
  transform: none !important;
  transition: none !important;
}

/* Signature visual-fidelity correction */
:root { --header-progress-offset: 72px; }

.reading-progress {
  top: var(--header-progress-offset);
  bottom: auto;
}

.gap-band{
  isolation: isolate;
}

.verification-path {
  isolation: isolate;
  overflow: clip;
}

/* The original <i> elements are the intentional, contained gap connectors. */
.verification-path::after {
  display: none;
}

.verification-path span,
.verification-path i {
  position: relative;
  z-index: 1;
}

.scene-domain-controls button {
  padding: 5px 0;
  color: rgba(227, 235, 248, 0.92);
  border: 0;
  border-bottom: 1px solid rgba(209, 178, 115, 0.48);
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
}

.scene-domain-controls button:hover,
.scene-domain-controls button:focus-visible,
.scene-domain-controls button[aria-pressed="true"] {
  color: var(--white);
  border-color: var(--gold-light);
  background: transparent;
  box-shadow: none;
  text-shadow: 0 0 16px rgba(209, 178, 115, 0.25);
}

.scene-core-label {
  position: absolute;
  z-index: 3;
  top: 51%;
  left: 50%;
  display: flex;
  visibility: hidden;
  flex-direction: column;
  align-items: center;
  color: var(--navy-deep);
  font-family: var(--font-label);
  font-size: 0.52rem;
  line-height: 1.22;
  letter-spacing: 0.06em;
  text-align: center;
  text-transform: uppercase;
  opacity: 0;
  transform: translate(-50%, -50%);
  transition: opacity var(--motion-base) ease 350ms;
  pointer-events: none;
}

.scene-core-label strong {
  font-size: 0.6rem;
  font-weight: 600;
}

.webgl-ready .scene-core-label {
  visibility: visible;
  opacity: 0.94;
}

.trust-architecture-25d {
  position: relative;
  min-height: 590px;
  padding: 20px 5px 0;
  perspective: 1200px;
  overflow: clip;
}

.architecture-stage {
  position: relative;
  display: grid;
  grid-template-rows: 105px 205px 70px 52px 72px;
  gap: 10px;
  min-height: 540px;
  padding: 0 18px 14px;
  transform-style: preserve-3d;
}

.architecture-layer {
  position: relative;
  transition: opacity var(--motion-base) ease, filter var(--motion-base) ease, transform var(--motion-slow) var(--motion-ease), box-shadow var(--motion-base) ease;
  cursor: pointer;
}

.architecture-layer:focus-visible {
  outline: 1px solid var(--gold);
  outline-offset: 4px;
}

.architecture-canopy {
  z-index: 6;
  display: grid;
  place-content: center;
  width: 92%;
  margin: 0 auto;
  border: 1px solid rgba(65, 82, 120, 0.52);
  border-bottom-color: var(--gold-light);
  background: linear-gradient(160deg, rgba(255, 253, 248, 0.96), rgba(189, 209, 231, 0.42));
  box-shadow: 0 19px 28px rgba(9, 33, 63, 0.12), inset 0 -2px rgba(180, 137, 61, 0.4);
  clip-path: polygon(50% 0, 100% 58%, 96% 100%, 4% 100%, 0 58%);
  text-align: center;
  transform: rotateX(-3deg) translateZ(34px);
}

.architecture-canopy::after {
  content: "";
  position: absolute;
  right: 8%;
  bottom: 10px;
  left: 8%;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--gold), transparent);
}

.architecture-canopy strong { color: var(--navy-deep); }

.architecture-canopy strong,
.architecture-volume > span,
.trust-data-plane,
.sovereignty-foundation span,
.capability-plates span {
  font-family: var(--font-label);
  font-size: 0.64rem;
  font-weight: 600;
  letter-spacing: 0.055em;
  text-transform: uppercase;
}

.architecture-canopy span {
  margin-top: 4px;
  color: var(--muted);
  font-size: 0.66rem;
}

.architecture-system {
  position: relative;
  z-index: 5;
  display: grid;
  grid-template-columns: 1fr 1.18fr 1fr;
  align-items: center;
  gap: 24px;
  padding: 4px 22px 12px;
  transform-style: preserve-3d;
}

.architecture-connectors {
  position: absolute;
  z-index: 0;
  inset: 16px 0 0;
  width: 100%;
  height: 150px;
  overflow: clip;
  fill: none;
  stroke: var(--gold);
  stroke-width: 1.3;
  stroke-dasharray: 420;
  stroke-dashoffset: 420;
  pointer-events: none;
}

.architecture-volume {
  z-index: 1;
  display: grid;
  place-content: center;
  min-height: 158px;
  border: 1px solid rgba(65, 82, 120, 0.48);
  background: linear-gradient(145deg, rgba(255, 253, 248, 0.88), rgba(189, 209, 231, 0.28));
  box-shadow: 0 18px 25px rgba(9, 33, 63, 0.1), inset 0 0 28px rgba(255, 255, 255, 0.45);
  text-align: center;
  transform: rotateX(2deg) translateZ(12px);
  transform-style: preserve-3d;
}

.architecture-volume::before,
.architecture-volume::after {
  content: "";
  position: absolute;
  pointer-events: none;
}

.architecture-volume::before {
  right: -8px;
  bottom: -8px;
  left: 7px;
  height: 8px;
  border: 1px solid rgba(65, 82, 120, 0.26);
  border-top: 0;
  background: rgba(65, 82, 120, 0.1);
  transform: skewX(42deg);
}

.architecture-volume::after {
  top: 7px;
  right: -8px;
  bottom: -7px;
  width: 8px;
  border: 1px solid rgba(65, 82, 120, 0.24);
  border-left: 0;
  background: rgba(65, 82, 120, 0.12);
  transform: skewY(42deg);
}

.architecture-volume small {
  display: block;
  margin-top: 11px;
  color: var(--muted);
  font-size: 0.7rem;
  line-height: 1.5;
}

.trust-volume {
  min-height: 184px;
  border-color: rgba(180, 137, 61, 0.68);
  background: linear-gradient(145deg, rgba(255, 253, 248, 0.92), rgba(209, 178, 115, 0.27));
  box-shadow: 0 22px 35px rgba(9, 33, 63, 0.13), 0 0 36px rgba(209, 178, 115, 0.12), inset 0 0 34px rgba(255, 255, 255, 0.6);
  transform: translateZ(36px) translateY(-4px);
}

.trust-volume > span {
  color: #8c6422;
  font-size: 0.7rem;
}

.capability-plates {
  z-index: 4;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 9px;
  padding: 5px 34px 10px;
  transform: translateZ(18px);
}

.capability-plates span {
  display: grid;
  place-items: center;
  min-height: 52px;
  border: 1px solid rgba(65, 82, 120, 0.28);
  border-bottom: 4px solid rgba(65, 82, 120, 0.16);
  background: linear-gradient(150deg, rgba(255, 253, 248, 0.82), rgba(189, 209, 231, 0.2));
  box-shadow: 0 9px 14px rgba(9, 33, 63, 0.07);
  font-size: 0.55rem;
  text-align: center;
}

.trust-data-plane {
  z-index: 3;
  display: grid;
  place-items: center;
  width: 93%;
  margin: 0 auto;
  border: 1px solid rgba(65, 82, 120, 0.3);
  border-bottom: 5px solid rgba(65, 82, 120, 0.16);
  background: linear-gradient(90deg, rgba(189, 209, 231, 0.2), rgba(255, 253, 248, 0.76), rgba(189, 209, 231, 0.2));
  box-shadow: 0 10px 17px rgba(9, 33, 63, 0.08);
  transform: translateZ(8px);
}

.sovereignty-foundation {
  z-index: 2;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  align-items: center;
  width: 100%;
  border-top: 2px solid var(--gold);
  background: linear-gradient(120deg, #071a36, #17243e);
  box-shadow: 0 14px 22px rgba(9, 33, 63, 0.18);
  color: var(--legacy-blue-100);
}

.sovereignty-foundation span {
  display: grid;
  min-height: 42px;
  place-items: center;
  border-right: 1px solid rgba(189, 209, 231, 0.18);
  font-size: 0.54rem;
  text-align: center;
}

.sovereignty-foundation span:last-child { border-right: 0; }

.motion-ready .architecture-band:not(.is-visible) .sovereignty-foundation { opacity: 0; transform: translateY(30px); }
.motion-ready .architecture-band:not(.is-visible) .trust-data-plane { opacity: 0; transform: translateY(28px); }
.motion-ready .architecture-band:not(.is-visible) .capability-plates { opacity: 0; transform: translateY(24px); }
.motion-ready .architecture-band:not(.is-visible) .organisation-volume { opacity: 0; transform: translateX(-44px); }
.motion-ready .architecture-band:not(.is-visible) .ecosystem-volume { opacity: 0; transform: translateX(44px); }
.motion-ready .architecture-band:not(.is-visible) .trust-volume { opacity: 0; transform: translateY(34px) scale(0.96); }
.motion-ready .architecture-band:not(.is-visible) .architecture-canopy { opacity: 0; transform: translateY(-32px); }

.architecture-band.is-visible .sovereignty-foundation { transition-delay: 120ms; }
.architecture-band.is-visible .trust-data-plane { transition-delay: 260ms; }
.architecture-band.is-visible .capability-plates { transition-delay: 390ms; }
.architecture-band.is-visible .organisation-volume,
.architecture-band.is-visible .ecosystem-volume { transition-delay: 530ms; }
.architecture-band.is-visible .trust-volume { transition-delay: 680ms; }
.architecture-band.is-visible .architecture-connectors { animation: architecture-path-draw 850ms var(--motion-ease) 820ms forwards; }
.architecture-band.is-visible .architecture-canopy { transition-delay: 920ms; }

@keyframes architecture-path-draw { to { stroke-dashoffset: 0; } }

.trust-architecture-25d [data-layer]:hover,
.trust-architecture-25d [data-layer]:focus-visible,
.trust-architecture-25d [data-layer].is-active {
  filter: drop-shadow(0 14px 12px rgba(9, 33, 63, 0.12));
  transform: translate3d(0, -8px, 42px);
}

.infrastructure-svg.scene-shell {
  min-height: 460px;
}

@media (max-width: 760px) {
  :root { --header-progress-offset: 68px; }

  .scene-domain-controls button {
    border: 1px solid var(--gold-light);
    background: var(--gold);
  }

  .scene-core-label {
    top: 52%;
    font-size: 0.42rem;
  }

  .trust-architecture-25d {
    min-height: 700px;
    padding-inline: 0;
    perspective: none;
  }

  .architecture-stage {
    grid-template-rows: 82px auto 156px 54px 112px;
    min-height: 660px;
    padding-inline: 0;
  }

  .architecture-canopy,
  .architecture-volume,
  .trust-volume,
  .capability-plates,
  .trust-data-plane {
    width: 100%;
    transform: none;
  }

  .architecture-canopy {
    clip-path: none;
  }

  .architecture-canopy span {
    display: none;
  }

  .architecture-system {
    grid-template-columns: 1fr;
    gap: 9px;
    padding: 0;
  }

  .architecture-volume,
  .trust-volume {
    min-height: 88px;
  }

  .architecture-volume small {
    margin-top: 5px;
    line-height: 1.3;
  }

  .architecture-connectors {
    display: none;
  }

  .capability-plates {
    grid-template-columns: 1fr 1fr;
    gap: 6px;
    padding: 0;
  }

  .capability-plates span {
    min-height: 66px;
  }

  .sovereignty-foundation {
    grid-template-columns: 1fr 1fr;
  }

  .sovereignty-foundation span {
    min-height: 52px;
    border-bottom: 1px solid rgba(189, 209, 231, 0.18);
  }

  .trust-architecture-25d [data-layer]:hover,
  .trust-architecture-25d [data-layer]:focus-visible,
  .trust-architecture-25d [data-layer].is-active {
    transform: translateY(-3px);
  }

  .infrastructure-svg.scene-shell {
    min-height: 300px;
  }
}

/* Decisive homepage art-direction upgrade */
.home-page .home-band {
  position: relative;
}

.home-page .home-band::after {
  content: "";
  position: absolute;
  right: max(24px, calc((100% - var(--max)) / 2));
  bottom: -1px;
  left: max(24px, calc((100% - var(--max)) / 2));
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(180, 137, 61, 0.26), transparent);
  pointer-events: none;
}

.home-hero::before {
  left: 54%;
  width: 84px;
  background: linear-gradient(90deg, rgba(250, 247, 239, 0.98), rgba(250, 247, 239, 0.72) 24%, rgba(180, 137, 61, 0.12) 58%, transparent);
}

.home-hero-copy {
  position: relative;
  z-index: 3;
}

.home-hero-copy::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: -75px;
  right: -80px;
  bottom: -70px;
  left: -80px;
  background: radial-gradient(circle at 38% 44%, rgba(255, 253, 248, 0.82), transparent 68%);
  pointer-events: none;
}

.scene-shell::after {
  content: "";
  position: absolute;
  z-index: 2;
  top: -35%;
  bottom: -35%;
  left: -28%;
  width: 24%;
  background: linear-gradient(90deg, transparent, rgba(227, 235, 248, 0.07), rgba(209, 178, 115, 0.1), transparent);
  opacity: 0;
  transform: skewX(-12deg);
  pointer-events: none;
  animation: scene-highlight-sweep 14s ease-in-out 4s infinite;
}

.hero-architecture.webgl-ready .scene-canvas,
.infrastructure-svg.webgl-ready .scene-canvas {
  animation: scene-enter 1.15s var(--motion-ease) both;
}

@keyframes scene-enter {
  from { opacity: 0; transform: scale(0.975); filter: saturate(0.75); }
  to { opacity: 1; transform: scale(1); filter: saturate(1); }
}

@keyframes scene-highlight-sweep {
  0%, 72% { left: -28%; opacity: 0; }
  78% { opacity: 0.65; }
  92% { opacity: 0.18; }
  100% { left: 118%; opacity: 0; }
}

.scene-domain-controls button::after {
  content: "";
  position: absolute;
  right: 18%;
  bottom: -1px;
  left: 18%;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--gold-light), transparent);
  transform: scaleX(0.45);
  transition: transform var(--motion-base) var(--motion-ease), opacity var(--motion-fast) ease;
  opacity: 0.55;
}

.scene-domain-controls button:hover::after,
.scene-domain-controls button:focus-visible::after,
.scene-domain-controls button[aria-pressed="true"]::after {
  transform: scaleX(1);
  opacity: 1;
}

.architecture-band {
  background:
    radial-gradient(circle at 73% 48%, rgba(189, 209, 231, 0.16), transparent 38%),
    linear-gradient(180deg, rgba(255, 253, 248, 0.42), rgba(250, 247, 239, 0.2));
}

.architecture-stage::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 6% 3% 2%;
  background:
    linear-gradient(rgba(65, 82, 120, 0.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(65, 82, 120, 0.055) 1px, transparent 1px);
  background-size: 32px 32px;
  mask-image: radial-gradient(ellipse at center, black, transparent 74%);
  pointer-events: none;
}

.architecture-stage::after {
  content: "";
  position: absolute;
  z-index: 8;
  top: 8%;
  bottom: 3%;
  left: -18%;
  width: 15%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.58), rgba(209, 178, 115, 0.1), transparent);
  opacity: 0;
  transform: skewX(-9deg);
  pointer-events: none;
}

.architecture-band.is-visible .architecture-stage::after {
  animation: architecture-sweep 8.5s ease-in-out 1.7s infinite;
}

@keyframes architecture-sweep {
  0%, 62% { left: -18%; opacity: 0; }
  70% { opacity: 0.5; }
  88%, 100% { left: 105%; opacity: 0; }
}

.architecture-volume {
  backdrop-filter: blur(7px);
}

.organisation-volume,
.ecosystem-volume {
  border-color: rgba(65, 82, 120, 0.56);
}

.trust-volume {
  border-width: 1.5px;
  background:
    radial-gradient(circle at 50% 42%, rgba(255, 248, 226, 0.95), rgba(209, 178, 115, 0.2) 62%, rgba(255, 253, 248, 0.8)),
    linear-gradient(145deg, rgba(255, 253, 248, 0.96), rgba(209, 178, 115, 0.3));
  box-shadow: 0 28px 42px rgba(9, 33, 63, 0.16), 0 0 46px rgba(209, 178, 115, 0.16), inset 0 0 42px rgba(255, 255, 255, 0.72);
}

.capability-plates span {
  transition: color var(--motion-fast) ease, border-color var(--motion-fast) ease, transform var(--motion-base) var(--motion-ease), box-shadow var(--motion-base) ease;
}

.capability-plates span:hover {
  color: #8c6422;
  border-color: rgba(180, 137, 61, 0.5);
  transform: translateY(-3px);
  box-shadow: 0 12px 20px rgba(9, 33, 63, 0.1);
}

.infrastructure-band {
  background:
    radial-gradient(circle at 73% 42%, rgba(65, 82, 120, 0.3), transparent 36%),
    radial-gradient(circle at 55% 95%, rgba(180, 137, 61, 0.1), transparent 28%),
    linear-gradient(145deg, #071a36, #0d0f2e 72%) !important;
}

.infrastructure-panel::before {
  opacity: 0.28;
  background-size: 44px 44px;
  mask-image: linear-gradient(to right, transparent 25%, black 62%, rgba(0, 0, 0, 0.82));
}

.infrastructure-items {
  gap: 1px;
  border-top: 0;
  background: rgba(189, 209, 231, 0.12);
}

.infrastructure-items button {
  position: relative;
  min-height: 54px;
  border: 0;
  background: rgba(7, 26, 54, 0.82);
  text-transform: uppercase;
}

.infrastructure-items button::before {
  content: "";
  display: inline-block;
  width: 5px;
  height: 5px;
  margin-right: 8px;
  border: 1px solid var(--gold-light);
  border-radius: 50%;
  vertical-align: 1px;
  transition: background var(--motion-fast) ease, box-shadow var(--motion-fast) ease, transform var(--motion-fast) ease;
}

.infrastructure-items button:hover,
.infrastructure-items button:focus-visible,
.infrastructure-items button[aria-pressed="true"] {
  background: linear-gradient(180deg, rgba(65, 82, 120, 0.62), rgba(23, 36, 62, 0.92));
}

.infrastructure-items button:hover::before,
.infrastructure-items button:focus-visible::before,
.infrastructure-items button[aria-pressed="true"]::before {
  background: var(--gold-light);
  box-shadow: 0 0 10px rgba(209, 178, 115, 0.55);
  transform: scale(1.2);
}

.motion-ready .mission-band:not(.is-visible) .icon-capabilities article,
.motion-ready .gap-band:not(.is-visible) .gap-points article,
.motion-ready .verify-band:not(.is-visible) .verification-themes article,
.motion-ready .support-band:not(.is-visible) .support-list article{
  opacity: 0;
  transform: translateY(18px);
}

.motion-ready .mission-band.is-visible .icon-capabilities article,
.motion-ready .gap-band.is-visible .gap-points article,
.motion-ready .verify-band.is-visible .verification-themes article,
.motion-ready .support-band.is-visible .support-list article{
  opacity: 1;
  transform: translateY(0);
  transition: opacity var(--motion-base) ease, transform var(--motion-slow) var(--motion-ease), border-color var(--motion-fast) ease, box-shadow var(--motion-base) ease;
}

.motion-ready [data-motion].is-visible article:nth-child(1){ transition-delay: 100ms; }
.motion-ready [data-motion].is-visible article:nth-child(2){ transition-delay: 180ms; }
.motion-ready [data-motion].is-visible article:nth-child(3){ transition-delay: 260ms; }
.motion-ready [data-motion].is-visible article:nth-child(4){ transition-delay: 340ms; }
.motion-ready [data-motion].is-visible article:nth-child(5) { transition-delay: 420ms; }
.motion-ready [data-motion].is-visible article:nth-child(6) { transition-delay: 500ms; }

.line-icon {
  transition: color var(--motion-fast) ease, stroke var(--motion-fast) ease, transform var(--motion-base) var(--motion-ease), filter var(--motion-base) ease;
}

article:hover .line-icon,
article:focus-visible .line-icon{
  stroke: var(--gold);
  filter: drop-shadow(0 5px 8px rgba(180, 137, 61, 0.16));
  transform: translateY(-2px) scale(1.04);
}

.button {
  position: relative;
  isolation: isolate;
  overflow: clip;
  transition: color var(--motion-fast) ease, border-color var(--motion-fast) ease, background var(--motion-fast) ease, transform var(--motion-base) var(--motion-ease), box-shadow var(--motion-base) ease;
}

.button::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: -40%;
  bottom: -40%;
  left: -38%;
  width: 24%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
  transform: skewX(-14deg);
  transition: left 700ms var(--motion-ease);
}

.button:hover,
.button:focus-visible {
  transform: translateY(-2px);
  box-shadow: 0 12px 24px rgba(9, 33, 63, 0.12);
}

.button:hover::before,
.button:focus-visible::before {
  left: 118%;
}

.home-cta {
  background:
    radial-gradient(circle at 70% 50%, rgba(189, 209, 231, 0.1), transparent 28%),
    linear-gradient(90deg, rgba(255, 253, 248, 0.6), rgba(243, 238, 227, 0.72));
}

.premium-footer {
  position: relative;
  background:
    linear-gradient(rgba(65, 82, 120, 0.07) 1px, transparent 1px),
    linear-gradient(90deg, rgba(65, 82, 120, 0.07) 1px, transparent 1px),
    radial-gradient(circle at 18% 15%, rgba(65, 82, 120, 0.23), transparent 34%),
    var(--navy-deep);
  background-size: 56px 56px, 56px 56px, auto, auto;
}

.premium-footer::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, var(--gold-light), transparent);
}

.premium-footer a {
  transition: color var(--motion-fast) ease, transform var(--motion-fast) ease;
}

.premium-footer a:hover,
.premium-footer a:focus-visible {
  color: var(--white);
  transform: translateX(2px);
}

@media (max-width: 760px) {
  .home-page .home-band::after { right: 16px; left: 16px; }
  .home-hero-copy::before,
  .home-hero::before,
  .scene-shell::after,
  .architecture-stage::after { display: none; }
  .architecture-stage::before { inset: 0; opacity: 0.65; }
  .infrastructure-items { gap: 1px; }
  .infrastructure-items button { min-height: 52px; padding-inline: 8px; }
}

/* Final surface rhythm and narrow-screen composition. */
body.page-about .inner-editorial-section { background: linear-gradient(105deg, rgba(247, 248, 247, 0.9), rgba(233, 238, 242, 0.42)); }
body.page-about .mission-vision-section { background: rgba(255, 253, 248, 0.72); }
body.page-about .inner-concept-section { background: linear-gradient(105deg, rgba(233, 238, 242, 0.58), rgba(247, 248, 247, 0.88)); }
body.page-about .inner-principles-section { background: rgba(233, 238, 242, 0.5); }

body.page-initiative .inner-priorities-section { background: linear-gradient(105deg, rgba(233, 238, 242, 0.78), rgba(247, 248, 247, 0.65)); }
body.page-initiative .inner-activity-section { background: rgba(255, 253, 248, 0.7); }
body.page-initiative .inner-audience-section { background: rgba(247, 248, 247, 0.9); }

body.page-alliance .inner-editorial-section { background: rgba(241, 237, 228, 0.78); }
body.page-alliance .inner-activity-section { background: rgba(255, 253, 248, 0.72); }
body.page-alliance .contributor-framework-section { background: rgba(247, 248, 247, 0.94); }
body.page-alliance .alliance-form-section { background: rgba(241, 237, 228, 0.62); }

body.page-services .service-areas-section { background: rgba(255, 253, 248, 0.76); }
body.page-services .service-audience-section { background: rgba(247, 248, 247, 0.9); }
body.page-services .service-boundaries-section { background: rgba(255, 253, 248, 0.72); }

body.page-trust-lab .inner-editorial-section { background: rgba(255, 253, 248, 0.72); }
body.page-trust-lab .inner-audience-section { background: rgba(247, 248, 247, 0.9); }

body.page-partners .inner-editorial-section { background: rgba(255, 253, 248, 0.72); }
body.page-partners .inner-audience-section { background: rgba(233, 238, 242, 0.64); }
body.page-partners .participation-terms-section { background: rgba(241, 237, 228, 0.72); }

body.page-contact .direct-contact-section { background: linear-gradient(105deg, rgba(255, 253, 248, 0.96), rgba(247, 248, 247, 0.88)); }

@media (max-width: 620px) {
  body.inner-page .inner-page-main > .section { padding-block: 48px; }
  body.inner-page .inner-page-hero { padding-block: 60px; }
  body.inner-page .inner-page-hero h1 {
    max-width: 13ch;
    font-size: clamp(2.35rem, 10.2vw, 3.4rem);
    letter-spacing: -0.046em;
    line-height: 1.01;
  }
  body.inner-page .inner-page-hero > p:not(.eyebrow) { font-size: 0.98rem; line-height: 1.62; }
  body.inner-page .section-heading { margin-bottom: 25px; }
  body.inner-page .inner-route-grid > *,
  body.inner-page .inner-principles-grid > article,
  body.inner-page .inner-activity-grid > article,
  body.inner-page .decision-family-grid > article,
  body.inner-page .research-domain-grid > article,
  body.inner-page .partnership-route-grid > article,
  body.inner-page .contact-route-grid > a,
  body.inner-page .emerging-environment-grid > article { padding: 21px 18px; }
  body.inner-page .inner-definition-strip > span,
  body.inner-page .inner-audience-grid > span { min-height: 62px; padding: 14px 15px; }
}
@media (min-width: 421px) and (max-width: 620px) {
  body.inner-page .inner-audience-grid,
  body.inner-page .inner-definition-strip,
  body.page-services .outcomes-grid,
  body.page-contact .contact-route-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.page-about .inner-principles-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.page-about .inner-principles-grid > article,
  body.page-about .inner-principles-grid > article:nth-child(1),
  body.page-about .inner-principles-grid > article:nth-child(2),
  body.page-about .inner-principles-grid > article:nth-child(n + 3) { grid-column: auto; }
  body.page-contact .contact-route-grid > a:nth-child(even) { border-left: 1px solid var(--inner-line); }
}
@media (max-width: 420px) {
  body.page-services .outcomes-grid,
  body.page-contact .contact-route-grid { grid-template-columns: 1fr; }
  body.page-contact .contact-route-grid > a:nth-child(even) { border-left: 0; }
}
/* About hero correction: composed copy and architecture. */
body.inner-page .inner-hero-visual,
body.inner-page .inner-secondary-visual {
  background: rgba(255, 253, 248, 0.68);
  background-size: auto;
}
body.page-trust-lab .inner-hero-visual,
body.page-trust-lab .inner-secondary-visual {
  background: rgba(5, 25, 54, 0.58);
}
body.page-about .inner-page-hero.inner-hero-with-visual {
  grid-template-columns: minmax(0, 0.98fr) minmax(380px, 0.86fr);
  align-items: center;
  column-gap: clamp(42px, 7vw, 118px);
}
body.page-about .inner-page-hero.inner-hero-with-visual::before,
body.page-about .inner-page-hero.inner-hero-with-visual::after { display: none; }
body.page-about .inner-hero-copy {
  grid-column: 1;
  grid-row: 1;
  align-self: center;
}
body.page-about .inner-hero-copy h1 { max-width: 13.5ch; }
body.page-about .inner-hero-visual {
  border: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
}
body.page-about .inner-hero-visual::before { display: none; }
body.page-about .inner-hero-visual img { width: min(100%, 570px); margin-inline: auto; }
@media (min-width: 901px) {
  body.page-about .inner-hero-visual { grid-column: 2; grid-row: 1; align-self: center; }
}
@media (max-width: 900px) {
  body.page-about .inner-hero-copy { grid-column: 1; grid-row: auto; }
  body.page-about .inner-hero-visual { width: min(100%, 620px); }
}/* Inner-page hero weight and About AI sentinel. */
body.inner-page .inner-page-hero h1 { font-weight: 400; }@media (prefers-reduced-motion: reduce) {
  .scene-shell::after,
  .architecture-stage::after,
  .button::before { display: none !important; }
  .hero-architecture.webgl-ready .scene-canvas,
  .infrastructure-svg.webgl-ready .scene-canvas { animation: none !important; }
}

.force-reduced-motion .scene-shell::after,
.force-reduced-motion .architecture-stage::after,
.force-reduced-motion .button::before { display: none !important; }

.architecture-volume {
  border-color: rgba(65, 82, 120, 0.64);
  background: linear-gradient(145deg, rgba(255, 253, 248, 0.98), rgba(189, 209, 231, 0.44));
  box-shadow: 0 20px 28px rgba(9, 33, 63, 0.14), inset 0 0 30px rgba(255, 255, 255, 0.62);
}

.architecture-volume > .line-icon {
  width: 29px;
  height: 29px;
  margin: 0 auto 12px;
  stroke: var(--navy-soft);
}

.trust-volume {
  background:
    radial-gradient(circle at 50% 42%, rgba(255, 248, 226, 0.98), rgba(209, 178, 115, 0.28) 62%, rgba(255, 253, 248, 0.9)),
    linear-gradient(145deg, rgba(255, 253, 248, 0.98), rgba(209, 178, 115, 0.42));
  box-shadow: 0 30px 44px rgba(9, 33, 63, 0.18), 0 0 48px rgba(209, 178, 115, 0.2), inset 0 0 44px rgba(255, 255, 255, 0.76);
}

.trust-volume > .line-icon {
  stroke: var(--gold);
  filter: drop-shadow(0 4px 7px rgba(180, 137, 61, 0.18));
}

@media (min-width: 761px) and (max-width: 1100px) {
  .home-hero-copy::before {
    top: -40px;
    right: 0;
    bottom: -40px;
    left: 0;
  }
}

/* Final homepage fidelity, motion and premium-execution pass */
.home-page {
  --signature-shadow: 0 28px 70px rgba(9, 33, 63, 0.14);
  --architectural-line: rgba(65, 82, 120, 0.34);
}


.reading-progress {
  z-index: 20;
  height: 2px;
  background: rgba(65, 82, 120, 0.07);
}

.reading-progress span {
  background: linear-gradient(90deg, #8f6b2f, var(--gold-light));
  box-shadow: 0 0 10px rgba(209, 178, 115, 0.25);
}

.home-hero {
  grid-template-columns: minmax(0, 1.05fr) minmax(520px, 0.95fr);
  gap: clamp(18px, 2.2vw, 34px);
  min-height: 760px;
  padding-block: 68px 72px;
}

.home-hero::after {
  right: calc((100vw - 100%) / -2 + 8px);
  left: 53.4%;
  background:
    radial-gradient(circle at 53% 47%, rgba(114, 142, 186, 0.28), transparent 29%),
    radial-gradient(circle at 73% 25%, rgba(209, 178, 115, 0.08), transparent 18%),
    linear-gradient(145deg, #09254a 0%, var(--legacy-blue-900) 45%, var(--legacy-blue-950) 100%);
}

.home-hero::before {
  left: 53.4%;
  width: 124px;
  background: linear-gradient(90deg, rgba(250, 247, 239, 0.99), rgba(250, 247, 239, 0.78) 22%, rgba(189, 209, 231, 0.13) 64%, transparent);
}

.home-hero-copy {
  max-width: 690px;
  padding-right: clamp(10px, 2vw, 32px);
}

.home-hero h1 {
  max-width: 680px;
  font-size: clamp(3.2rem, 4.08vw, 4.08rem);
  line-height: 1.015;
}

.hero-architecture.scene-shell {
  min-height: 640px;
  aspect-ratio: 0.98 / 1;
  margin: -18px -8px -18px 0;
  overflow: visible;
}

.hero-architecture::before {
  inset: 4% -2% 4% 1%;
  border-color: rgba(189, 209, 231, 0.12);
  box-shadow: inset 0 0 90px rgba(114, 142, 186, 0.06), 0 0 100px rgba(114, 142, 186, 0.1);
}

.hero-architecture::after {
  content: "";
  position: absolute;
  z-index: 0;
  inset: 15% 5% 11% 4%;
  border: 1px solid rgba(189, 209, 231, 0.08);
  border-radius: 50%;
  transform: rotate(-8deg);
  pointer-events: none;
}

.hero-architecture .scene-canvas {
  z-index: 1;
  filter: saturate(1.08) contrast(1.05);
}

.scene-domain-controls button {
  max-width: 152px;
  padding: 7px 0 8px;
  border-bottom-color: rgba(209, 178, 115, 0.62);
  font-size: 0.57rem;
  line-height: 1.42;
  text-shadow: 0 2px 12px rgba(7, 26, 54, 0.78);
}

.scene-domain-controls button::before {
  content: "";
  position: absolute;
  bottom: -3px;
  left: 50%;
  width: 5px;
  height: 5px;
  border: 1px solid var(--gold-light);
  border-radius: 50%;
  background: var(--legacy-blue-950);
  box-shadow: 0 0 9px rgba(209, 178, 115, 0.32);
  transform: translateX(-50%);
}

.scene-core-label {
  top: 50.7%;
  padding: 8px 10px;
  color: #0a2344;
  background: radial-gradient(circle, rgba(255, 248, 226, 0.84), rgba(255, 248, 226, 0.2) 66%, transparent 72%);
  font-size: 0.48rem;
  text-shadow: 0 1px 8px rgba(255, 253, 248, 0.8);
}

.scene-core-label strong { font-size: 0.58rem; }

.scene-canvas-snapshot {
  position: absolute;
  z-index: 1;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: fill;
}

.mission-band .band-inner,
.gap-band .band-inner,
.verify-band .band-inner,
.support-band .band-inner {
  padding-block: 74px;
}

.fidelity-mission {
  position: relative;
  grid-template-columns: minmax(0, 1.12fr) minmax(250px, 0.72fr) minmax(390px, 1.04fr);
  align-items: start;
}

.fidelity-mission::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 15px;
  width: 31%;
  height: 1px;
  background: linear-gradient(90deg, var(--gold), transparent);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 900ms var(--motion-ease) 620ms;
}

.mission-band.is-visible .fidelity-mission::after { transform: scaleX(1); }

.icon-capabilities {
  position: relative;
  border-left-color: rgba(65, 82, 120, 0.24);
}

.icon-capabilities::before {
  content: "";
  position: absolute;
  z-index: 0;
  top: 17px;
  right: 13%;
  left: 13%;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(180, 137, 61, 0.48), transparent);
}

.icon-capabilities article { position: relative; z-index: 1; }
.icon-capabilities .line-icon { background: var(--ivory); }

.gap-band {
  background:
    linear-gradient(rgba(65, 82, 120, 0.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(65, 82, 120, 0.035) 1px, transparent 1px),
    rgba(243, 238, 227, 0.38);
  background-size: 44px 44px;
}

.gap-points { gap: 12px; }

.gap-points article,
.gap-points article + article {
  min-height: 184px;
  border: 1px solid rgba(65, 82, 120, 0.16);
  border-bottom: 4px solid rgba(65, 82, 120, 0.12);
  padding: 22px 23px 18px;
  background: linear-gradient(155deg, rgba(255, 253, 248, 0.8), rgba(189, 209, 231, 0.12));
  box-shadow: 0 14px 24px rgba(9, 33, 63, 0.045);
}

.gap-points article:first-child { padding-left: 23px; }
.gap-points article:last-child { padding-right: 23px; }
.gap-points .line-icon { width: 33px; height: 33px; }
.gap-points h3 { margin-top: 22px; }

.verification-path {
  max-width: 850px;
  margin-top: 23px;
  background: rgba(255, 253, 248, 0.46);
}

.architecture-band .band-inner { padding-block: 82px 88px; }

.fidelity-architecture {
  grid-template-columns: minmax(270px, 0.46fr) minmax(690px, 1.54fr);
  gap: clamp(34px, 4vw, 60px);
  align-items: center;
}

.trust-architecture-25d {
  min-height: 650px;
  padding: 12px 0 0;
  perspective: 1450px;
}

.architecture-stage {
  grid-template-rows: 116px 226px 78px 60px 94px;
  gap: 12px;
  min-height: 610px;
  padding: 0 10px 18px;
}

.architecture-stage::before {
  inset: 1% 0 0;
  opacity: 0.82;
  background-size: 28px 28px;
}

.architecture-canopy {
  width: 96%;
  border: 1.5px solid rgba(65, 82, 120, 0.62);
  border-bottom: 3px solid rgba(180, 137, 61, 0.62);
  background:
    linear-gradient(165deg, rgba(255, 253, 248, 0.99), rgba(189, 209, 231, 0.52)),
    var(--warm-white);
  box-shadow: 0 24px 28px rgba(9, 33, 63, 0.13), 0 8px 0 rgba(65, 82, 120, 0.09), inset 0 -14px 24px rgba(114, 142, 186, 0.08);
  transform: rotateX(-4deg) translateZ(44px);
}

.architecture-canopy::before {
  content: "";
  position: absolute;
  right: 6%;
  bottom: -10px;
  left: 6%;
  height: 9px;
  border: 1px solid rgba(65, 82, 120, 0.24);
  border-top: 0;
  background: linear-gradient(180deg, rgba(189, 209, 231, 0.32), rgba(65, 82, 120, 0.08));
}

.architecture-canopy strong { font-size: 0.71rem; letter-spacing: 0.075em; }
.architecture-canopy span { font-size: 0.68rem; }

.architecture-system {
  grid-template-columns: 1fr 1.22fr 1fr;
  gap: 18px;
  padding: 5px 16px 14px;
}

.architecture-volume {
  min-height: 176px;
  border-width: 1.5px;
  border-color: rgba(65, 82, 120, 0.7);
  background:
    linear-gradient(145deg, rgba(255, 253, 248, 0.99), rgba(189, 209, 231, 0.66));
  box-shadow: 0 26px 36px rgba(9, 33, 63, 0.18), inset 0 0 38px rgba(255, 255, 255, 0.66);
  transform: rotateX(2deg) translateZ(18px);
}

.architecture-volume::before { right: -11px; bottom: -11px; left: 9px; height: 11px; }
.architecture-volume::after { top: 9px; right: -11px; bottom: -10px; width: 11px; }
.architecture-volume > span { font-size: 0.69rem; letter-spacing: 0.075em; }
.architecture-volume small { color: #40516c; font-size: 0.72rem; }

.trust-volume {
  min-height: 210px;
  border: 2px solid rgba(180, 137, 61, 0.78);
  background:
    radial-gradient(circle at 50% 43%, rgba(255, 251, 238, 1), rgba(209, 178, 115, 0.34) 64%, rgba(255, 253, 248, 0.94)),
    var(--warm-white);
  box-shadow: 0 34px 48px rgba(9, 33, 63, 0.2), 0 0 54px rgba(209, 178, 115, 0.2), inset 0 0 52px rgba(255, 255, 255, 0.8);
  transform: translate3d(0, -7px, 52px);
}

.trust-volume > .line-icon {
  width: 38px;
  height: 38px;
  padding: 6px;
  border: 1px solid rgba(180, 137, 61, 0.42);
  border-radius: 50%;
  background: rgba(255, 253, 248, 0.72);
}

.trust-volume > span { font-size: 0.76rem; }

.architecture-connectors {
  inset: 22px 0 0;
  height: 170px;
  stroke-width: 1.6;
  filter: drop-shadow(0 0 4px rgba(209, 178, 115, 0.18));
}

.capability-plates {
  gap: 10px;
  padding: 2px 26px 10px;
  transform: translateZ(24px);
}

.capability-plates span {
  position: relative;
  min-height: 66px;
  border-color: rgba(65, 82, 120, 0.4);
  border-bottom-width: 6px;
  background: linear-gradient(155deg, rgba(255, 253, 248, 0.98), rgba(189, 209, 231, 0.47));
  box-shadow: 0 13px 20px rgba(9, 33, 63, 0.1);
  font-size: 0.59rem;
}

.capability-plates span::before {
  content: "";
  width: 7px;
  height: 7px;
  margin-bottom: 7px;
  border: 1px solid var(--gold);
  border-radius: 50%;
  background: rgba(209, 178, 115, 0.18);
}

.trust-data-plane {
  width: 96%;
  border-color: rgba(65, 82, 120, 0.45);
  border-bottom-width: 7px;
  background: linear-gradient(90deg, rgba(189, 209, 231, 0.52), rgba(255, 253, 248, 0.98), rgba(189, 209, 231, 0.52));
  box-shadow: 0 14px 21px rgba(9, 33, 63, 0.11);
  color: #24365a;
  font-size: 0.66rem;
}

.sovereignty-foundation {
  border-top-width: 3px;
  background:
    linear-gradient(rgba(114, 142, 186, 0.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(114, 142, 186, 0.08) 1px, transparent 1px),
    linear-gradient(120deg, #071a36, #172f57);
  background-size: 22px 22px, 22px 22px, auto;
  box-shadow: 0 22px 32px rgba(9, 33, 63, 0.26);
}

.sovereignty-foundation span {
  min-height: 88px;
  padding-inline: 10px;
  color: rgba(233, 241, 253, 0.94);
  font-size: 0.59rem;
  line-height: 1.5;
}

.trust-architecture-svg.has-active [data-layer]:not(.is-active) { opacity: 0.68; }

.verify-band { background: rgba(255, 253, 248, 0.45); }

.verification-themes {
  position: relative;
  gap: 0;
}

.verification-themes::before {
  content: "";
  position: absolute;
  z-index: 0;
  top: 33px;
  right: 7%;
  left: 7%;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(180, 137, 61, 0.58), transparent);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 1.1s var(--motion-ease) 260ms;
}

.verify-band.is-visible .verification-themes::before { transform: scaleX(1); }

.verification-themes article {
  position: relative;
  z-index: 1;
  min-height: 202px;
  background: linear-gradient(180deg, transparent, rgba(243, 238, 227, 0.22));
}

.verification-themes .line-icon {
  padding: 5px;
  background: var(--warm-white);
}

.infrastructure-panel {
  grid-template-columns: minmax(310px, 0.66fr) minmax(560px, 1.34fr);
  align-items: center;
  gap: clamp(34px, 4vw, 62px);
  min-height: 650px;
  padding-block: 66px 48px;
}

.infrastructure-panel::before {
  opacity: 0.4;
  background-size: 38px 38px;
  mask-image: radial-gradient(ellipse at 70% 48%, black 0 45%, transparent 78%);
}

.infrastructure-panel::after {
  content: "";
  position: absolute;
  z-index: 0;
  top: 8%;
  right: -4%;
  width: 68%;
  height: 76%;
  border: 1px solid rgba(189, 209, 231, 0.1);
  border-radius: 50%;
  box-shadow: 0 0 90px rgba(49, 91, 139, 0.13);
  transform: rotate(-8deg);
  pointer-events: none;
}

.infrastructure-copy { align-self: center; }
.infrastructure-copy h2 { font-size: clamp(3.15rem, 4.3vw, 4.65rem); line-height: 1.01; }
.infrastructure-copy p:not(.eyebrow) { max-width: 450px; color: rgba(233, 241, 253, 0.78); line-height: 1.72; }

.infrastructure-svg.scene-shell {
  z-index: 1;
  min-height: 520px;
  margin: -20px -42px -10px -22px;
  aspect-ratio: 1.45 / 1;
}

.infrastructure-svg .scene-canvas { filter: saturate(1.1) contrast(1.07); }

.infra-scene-labels {
  position: absolute;
  z-index: 3;
  inset: 0;
  visibility: hidden;
  pointer-events: none;
  opacity: 0;
  transition: opacity var(--motion-base) ease 500ms;
}

.webgl-ready .infra-scene-labels { visibility: visible; opacity: 1; }

.infra-scene-labels span {
  position: absolute;
  padding: 5px 8px 6px 12px;
  border-bottom: 1px solid rgba(209, 178, 115, 0.6);
  color: rgba(244, 246, 251, 0.9);
  background: linear-gradient(90deg, rgba(7, 26, 54, 0.68), transparent);
  font-family: var(--font-label);
  font-size: 0.5rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-shadow: 0 2px 10px #071a36;
}

.infra-scene-labels span::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 5px;
  height: 5px;
  border: 1px solid var(--gold-light);
  border-radius: 50%;
  background: #071a36;
  transform: translate(-50%, -50%);
}

.infrastructure-svg[data-active-zone] .infra-scene-labels span { opacity: 0.42; }
.infrastructure-svg[data-active-zone="sovereign"] [data-zone-label="sovereign"],
.infrastructure-svg[data-active-zone="centres"] [data-zone-label="centres"],
.infrastructure-svg[data-active-zone="edge"] [data-zone-label="edge"],
.infrastructure-svg[data-active-zone="private"] [data-zone-label="private"],
.infrastructure-svg[data-active-zone="projects"] [data-zone-label="projects"],
.infrastructure-svg[data-active-zone="ecosystems"] [data-zone-label="ecosystems"] {
  color: var(--white);
  opacity: 1;
  text-shadow: 0 0 14px rgba(209, 178, 115, 0.32);
}

.infra-scene-labels [data-zone-label="sovereign"] { top: 7%; left: 14%; }
.infra-scene-labels [data-zone-label="centres"] { top: 10%; right: 5%; }
.infra-scene-labels [data-zone-label="edge"] { top: 51%; left: 2%; }
.infra-scene-labels [data-zone-label="private"] { top: 45%; right: 2%; }
.infra-scene-labels [data-zone-label="projects"] { bottom: 18%; left: 34%; }
.infra-scene-labels [data-zone-label="ecosystems"] { right: 1%; bottom: 12%; }

.infrastructure-items {
  border: 1px solid rgba(189, 209, 231, 0.18);
  background: rgba(189, 209, 231, 0.1);
}

.infrastructure-items button {
  min-height: 62px;
  padding-block: 14px;
  background: rgba(7, 26, 54, 0.88);
}

.infrastructure-items button + button { border-left: 1px solid rgba(189, 209, 231, 0.14); }
.infra-detail { margin-top: 1px; }

.support-band { background: linear-gradient(180deg, rgba(243, 238, 227, 0.22), rgba(255, 253, 248, 0.3)); }
.support-list { border-left-color: rgba(65, 82, 120, 0.24); }

.support-list article {
  min-height: 176px;
  border-right-color: rgba(65, 82, 120, 0.24);
  transition: color var(--motion-fast) ease, background var(--motion-fast) ease, transform var(--motion-base) var(--motion-ease);
}

.support-list article:hover {
  background: rgba(255, 253, 248, 0.66);
  transform: translateY(-4px);
}

.home-cta {
  position: relative;
  overflow: clip;
  padding-block: 58px;
  background:
    linear-gradient(90deg, rgba(255, 253, 248, 0.86), rgba(243, 238, 227, 0.74)),
    var(--ivory);
}

.home-cta::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 50%;
  right: 4%;
  width: 220px;
  height: 220px;
  border: 1px solid rgba(180, 137, 61, 0.18);
  border-radius: 50%;
  box-shadow: 0 0 0 36px rgba(65, 82, 120, 0.025), 0 0 0 72px rgba(180, 137, 61, 0.025);
  transform: translateY(-50%);
}

.premium-footer {
  background-size: 44px 44px, 44px 44px, auto, auto;
}

.footer-statement {
  position: relative;
  padding-top: 8px;
}

.footer-statement::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: -1px;
  width: 38%;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(209, 178, 115, 0.68));
}

@media (hover: none), (pointer: coarse) {
  .verification-themes article:hover,
  .support-list article:hover,
  .gap-points article:hover,
  .icon-capabilities article:hover { transform: none; }
}

@media (min-width: 761px) and (max-width: 1100px) {
  .home-hero {
    grid-template-columns: 1fr;
    min-height: 0;
    padding-block: 62px 66px;
  }

  .home-hero::before,
  .home-hero::after { display: none; }

  .hero-architecture.scene-shell {
    min-height: 600px;
    max-width: 820px;
    margin: 22px auto 0;
    aspect-ratio: 1.22 / 1;
    background:
      radial-gradient(circle at 52% 43%, rgba(114, 142, 186, 0.25), transparent 34%),
      linear-gradient(145deg, #09254a, var(--legacy-blue-950));
  }

  .fidelity-mission,
  .fidelity-architecture,
  .infrastructure-panel {
    grid-template-columns: 1fr;
  }

  .fidelity-mission::after { display: none; }
  .fidelity-architecture { gap: 36px; }
  .trust-architecture-25d { max-width: 900px; margin-inline: auto; }

  .infrastructure-panel { gap: 16px; min-height: 0; padding-block: 66px 48px; }
  .infrastructure-copy { max-width: 690px; }
  .infrastructure-svg.scene-shell { min-height: 480px; margin: 0; aspect-ratio: 1.65 / 1; }
}

@media (max-width: 760px) {
  .home-hero {
    grid-template-columns: minmax(0, 1fr);
    min-height: 0;
    padding-block: 45px 48px;
  }

  .fidelity-mission,
  .fidelity-architecture,
  .infrastructure-panel {
    grid-template-columns: minmax(0, 1fr);
  }

  .home-hero-copy { padding-right: 0; }
  .home-hero h1 { font-size: clamp(2.52rem, 11.2vw, 3.02rem); }

  .hero-architecture.scene-shell {
    width: calc(100% + 30px);
    min-height: 410px;
    margin: 18px -15px -16px;
    aspect-ratio: 0.96 / 1;
    background:
      radial-gradient(circle at 52% 44%, rgba(114, 142, 186, 0.28), transparent 35%),
      linear-gradient(145deg, #09254a, var(--legacy-blue-950));
  }

  .hero-architecture::before { inset: 8% 2%; }
  .hero-architecture::after { display: block; inset: 18% 8% 14%; }
  .scene-core-label { top: 50.4%; font-size: 0.39rem; }
  .scene-core-label strong { font-size: 0.46rem; }

  .scene-domain-controls button::before,
  .scene-domain-controls button::after { display: none; }

  .fidelity-mission { gap: 30px; }
  .fidelity-mission .mission-thesis { padding-left: 18px; }
  .icon-capabilities::before { display: none; }

  .gap-points { gap: 8px; }
  .gap-points article,
  .gap-points article + article { min-height: 0; padding: 22px 18px; }

  .verification-path { background: transparent; }

  .trust-architecture-25d { min-height: 850px; }
  .architecture-stage { grid-template-rows: 86px auto 150px 58px 126px; min-height: 815px; gap: 9px; }
  .architecture-canopy { width: 100%; border-bottom-width: 3px; }
  .architecture-canopy::before { display: none; }
  .architecture-canopy strong { font-size: 0.62rem; }

  .architecture-system {
    grid-template-columns: minmax(0, 1fr);
    gap: 9px;
    padding: 0 10px;
  }

  .architecture-volume,
  .trust-volume { min-height: 96px; border-width: 1.5px; }
  .trust-volume { min-height: 112px; border-width: 2px; }
  .architecture-volume::before,
  .architecture-volume::after { display: none; }
  .architecture-volume > .line-icon { width: 25px; height: 25px; margin-bottom: 6px; }
  .architecture-volume small { font-size: 0.65rem; }
  .capability-plates span { min-height: 68px; }
  .sovereignty-foundation span { min-height: 60px; padding: 6px; font-size: 0.53rem; }

  .verification-themes::before { display: none; }
  .verification-themes article { min-height: 0; background: transparent; }

  .infrastructure-panel { gap: 22px; min-height: 0; padding-block: 58px 46px; }
  .infrastructure-copy h2 { font-size: clamp(2.55rem, 11vw, 3rem); }
  .infrastructure-svg.scene-shell {
    width: calc(100% + 22px);
    min-height: 330px;
    margin: 0 -11px;
    aspect-ratio: 1.05 / 1;
  }

  .infra-scene-labels { display: none; }
  .infrastructure-items { grid-template-columns: 1fr 1fr; }
  .infrastructure-items button { min-height: 58px; }
  .infrastructure-items button + button { border-left: 0; }

  .support-list article { min-height: 150px; }
  .home-cta::after { right: -120px; opacity: 0.7; }
  .footer-statement::after { width: 64%; }
}

@media (max-width: 360px) {
  .hero-architecture.scene-shell { min-height: 380px; }
  .trust-architecture-25d { min-height: 870px; }
  .architecture-stage { min-height: 835px; }
  .infrastructure-svg.scene-shell { min-height: 300px; }
}

/* Final surface rhythm and narrow-screen composition. */
body.page-about .inner-editorial-section { background: linear-gradient(105deg, rgba(247, 248, 247, 0.9), rgba(233, 238, 242, 0.42)); }
body.page-about .mission-vision-section { background: rgba(255, 253, 248, 0.72); }
body.page-about .inner-concept-section { background: linear-gradient(105deg, rgba(233, 238, 242, 0.58), rgba(247, 248, 247, 0.88)); }
body.page-about .inner-principles-section { background: rgba(233, 238, 242, 0.5); }

body.page-initiative .inner-priorities-section { background: linear-gradient(105deg, rgba(233, 238, 242, 0.78), rgba(247, 248, 247, 0.65)); }
body.page-initiative .inner-activity-section { background: rgba(255, 253, 248, 0.7); }
body.page-initiative .inner-audience-section { background: rgba(247, 248, 247, 0.9); }

body.page-alliance .inner-editorial-section { background: rgba(241, 237, 228, 0.78); }
body.page-alliance .inner-activity-section { background: rgba(255, 253, 248, 0.72); }
body.page-alliance .contributor-framework-section { background: rgba(247, 248, 247, 0.94); }
body.page-alliance .alliance-form-section { background: rgba(241, 237, 228, 0.62); }

body.page-services .service-areas-section { background: rgba(255, 253, 248, 0.76); }
body.page-services .service-audience-section { background: rgba(247, 248, 247, 0.9); }
body.page-services .service-boundaries-section { background: rgba(255, 253, 248, 0.72); }

body.page-trust-lab .inner-editorial-section { background: rgba(255, 253, 248, 0.72); }
body.page-trust-lab .inner-audience-section { background: rgba(247, 248, 247, 0.9); }

body.page-partners .inner-editorial-section { background: rgba(255, 253, 248, 0.72); }
body.page-partners .inner-audience-section { background: rgba(233, 238, 242, 0.64); }
body.page-partners .participation-terms-section { background: rgba(241, 237, 228, 0.72); }

body.page-contact .direct-contact-section { background: linear-gradient(105deg, rgba(255, 253, 248, 0.96), rgba(247, 248, 247, 0.88)); }

@media (max-width: 620px) {
  body.inner-page .inner-page-main > .section { padding-block: 48px; }
  body.inner-page .inner-page-hero { padding-block: 60px; }
  body.inner-page .inner-page-hero h1 {
    max-width: 13ch;
    font-size: clamp(2.35rem, 10.2vw, 3.4rem);
    letter-spacing: -0.046em;
    line-height: 1.01;
  }
  body.inner-page .inner-page-hero > p:not(.eyebrow) { font-size: 0.98rem; line-height: 1.62; }
  body.inner-page .section-heading { margin-bottom: 25px; }
  body.inner-page .inner-route-grid > *,
  body.inner-page .inner-principles-grid > article,
  body.inner-page .inner-activity-grid > article,
  body.inner-page .decision-family-grid > article,
  body.inner-page .research-domain-grid > article,
  body.inner-page .partnership-route-grid > article,
  body.inner-page .contact-route-grid > a,
  body.inner-page .emerging-environment-grid > article { padding: 21px 18px; }
  body.inner-page .inner-definition-strip > span,
  body.inner-page .inner-audience-grid > span { min-height: 62px; padding: 14px 15px; }
}
@media (min-width: 421px) and (max-width: 620px) {
  body.inner-page .inner-audience-grid,
  body.inner-page .inner-definition-strip,
  body.page-services .outcomes-grid,
  body.page-contact .contact-route-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.page-about .inner-principles-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.page-about .inner-principles-grid > article,
  body.page-about .inner-principles-grid > article:nth-child(1),
  body.page-about .inner-principles-grid > article:nth-child(2),
  body.page-about .inner-principles-grid > article:nth-child(n + 3) { grid-column: auto; }
  body.page-contact .contact-route-grid > a:nth-child(even) { border-left: 1px solid var(--inner-line); }
}
@media (max-width: 420px) {
  body.page-services .outcomes-grid,
  body.page-contact .contact-route-grid { grid-template-columns: 1fr; }
  body.page-contact .contact-route-grid > a:nth-child(even) { border-left: 0; }
}
/* About hero correction: composed copy and architecture. */
body.inner-page .inner-hero-visual,
body.inner-page .inner-secondary-visual {
  background: rgba(255, 253, 248, 0.68);
  background-size: auto;
}
body.page-trust-lab .inner-hero-visual,
body.page-trust-lab .inner-secondary-visual {
  background: rgba(5, 25, 54, 0.58);
}
body.page-about .inner-page-hero.inner-hero-with-visual {
  grid-template-columns: minmax(0, 0.98fr) minmax(380px, 0.86fr);
  align-items: center;
  column-gap: clamp(42px, 7vw, 118px);
}
body.page-about .inner-page-hero.inner-hero-with-visual::before,
body.page-about .inner-page-hero.inner-hero-with-visual::after { display: none; }
body.page-about .inner-hero-copy {
  grid-column: 1;
  grid-row: 1;
  align-self: center;
}
body.page-about .inner-hero-copy h1 { max-width: 13.5ch; }
body.page-about .inner-hero-visual {
  border: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
}
body.page-about .inner-hero-visual::before { display: none; }
body.page-about .inner-hero-visual img { width: min(100%, 570px); margin-inline: auto; }
@media (min-width: 901px) {
  body.page-about .inner-hero-visual { grid-column: 2; grid-row: 1; align-self: center; }
}
@media (max-width: 900px) {
  body.page-about .inner-hero-copy { grid-column: 1; grid-row: auto; }
  body.page-about .inner-hero-visual { width: min(100%, 620px); }
}/* Inner-page hero weight and About AI sentinel. */
body.inner-page .inner-page-hero h1 { font-weight: 400; }@media (prefers-reduced-motion: reduce) {
  .site-header,
  .fidelity-mission::after,
  .verification-themes::before,
  .support-list article { transition: none !important; }

  .fidelity-mission::after,
  .verification-themes::before { transform: none !important; }

  .infra-scene-labels { display: none !important; }
}

.force-reduced-motion .fidelity-mission::after,
.force-reduced-motion .verification-themes::before { transform: none !important; }
.force-reduced-motion .infra-scene-labels { display: none !important; }

.qa-full-capture { scroll-behavior: auto !important; }
.qa-full-capture .reading-progress { display: none; }

/* Final responsive scene-framing correction */
.hero-architecture.scene-shell {
  box-sizing: border-box;
  width: 100%;
  height: clamp(660px, 48vw, 740px);
  min-height: 0;
  margin: 0;
  aspect-ratio: auto;
  overflow: visible;
}

.hero-architecture .scene-canvas,
.hero-architecture .scene-fallback,
.hero-architecture .scene-domain-controls {
  inset: 0;
}

.scene-domain-controls button {
  max-width: min(152px, 28%);
}

.trust-architecture-25d {
  box-sizing: border-box;
  min-height: 720px;
  padding: 20px 0 8px;
  overflow: visible;
}

.architecture-stage {
  box-sizing: border-box;
  grid-template-rows:
    minmax(126px, auto)
    minmax(236px, auto)
    minmax(78px, auto)
    minmax(60px, auto)
    minmax(96px, auto);
  min-height: 680px;
  padding: 18px 12px 28px;
}

.architecture-canopy {
  transform-origin: center bottom;
}

.architecture-volume::before {
  right: 0;
  left: 8px;
  transform: none;
}

.architecture-volume::after {
  right: 0;
  bottom: 0;
  transform: none;
}

.infrastructure-svg.scene-shell {
  box-sizing: border-box;
  width: 100%;
  height: clamp(500px, 38vw, 610px);
  min-height: 0;
  margin: 0 0 28px;
  aspect-ratio: auto;
  overflow: visible;
}

.infrastructure-svg .scene-canvas,
.infrastructure-svg .scene-fallback,
.infrastructure-svg .infra-scene-labels {
  inset: 0;
}

.infra-scene-labels {
  overflow: visible;
}

.infra-scene-labels span {
  max-width: 150px;
  transform: translate(-50%, -50%);
}

@media (min-width: 1600px) {
  .hero-architecture.scene-shell { height: 740px; }
  .infrastructure-svg.scene-shell { height: 600px; }
}

@media (min-width: 1101px) and (max-width: 1280px) {
  .hero-architecture.scene-shell { height: clamp(620px, 51vw, 680px); }
  .trust-architecture-25d { min-height: 700px; }
  .architecture-stage { min-height: 660px; }
  .infrastructure-svg.scene-shell { height: clamp(500px, 42vw, 560px); }
}

@media (min-width: 761px) and (max-width: 1100px) {
  .hero-architecture.scene-shell {
    width: min(100%, 900px);
    height: clamp(540px, 68vw, 620px);
    min-height: 0;
    margin: 24px auto 0;
    aspect-ratio: auto;
  }

  .trust-architecture-25d {
    width: min(100%, 920px);
    min-height: 700px;
    margin-inline: auto;
  }

  .architecture-stage { min-height: 660px; }
  .architecture-volume::after { right: 0; }

  .infrastructure-svg.scene-shell {
    width: 100%;
    height: clamp(480px, 58vw, 560px);
    min-height: 0;
    margin: 8px 0 30px;
    aspect-ratio: auto;
  }
}

@media (max-width: 760px) {
  .hero-architecture.scene-shell {
    width: 100%;
    height: clamp(430px, 120vw, 520px);
    min-height: 0;
    margin: 24px 0 0;
    aspect-ratio: auto;
  }

  .scene-domain-controls button {
    width: max-content;
    min-width: 54px;
    height: auto;
    max-width: 30%;
    padding: 5px 2px;
    overflow: visible;
    border: 0;
    border-bottom: 1px solid rgba(209, 178, 115, 0.62);
    background: transparent;
    font-size: 0.48rem;
    line-height: 1.3;
    white-space: normal;
  }

  .scene-domain-controls button span { display: block; }

  .trust-architecture-25d {
    min-height: 0;
    padding: 18px 0 8px;
    perspective: none;
    overflow: visible;
  }

  .architecture-stage {
    grid-template-rows: auto;
    min-height: 0;
    padding: 18px 0 24px;
    gap: 10px;
  }

  .architecture-canopy {
    min-height: 104px;
    transform: none;
  }

  .architecture-system {
    grid-template-columns: minmax(0, 1fr);
    gap: 10px;
    padding: 0;
  }

  .architecture-connectors { display: none; }

  .architecture-volume,
  .trust-volume {
    width: 100%;
    min-height: 108px;
    transform: none;
  }

  .trust-volume { min-height: 122px; }

  .capability-plates {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    padding: 0;
    transform: none;
  }

  .capability-plates span { min-height: 64px; }

  .trust-data-plane {
    min-height: 64px;
    transform: none;
  }

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

  .sovereignty-foundation span {
    min-height: 62px;
    border-bottom: 1px solid rgba(189, 209, 231, 0.18);
  }

  .trust-architecture-25d [data-layer]:hover,
  .trust-architecture-25d [data-layer]:focus-visible,
  .trust-architecture-25d [data-layer].is-active {
    transform: none;
  }

  .motion-ready .architecture-band:not(.is-visible) .organisation-volume,
  .motion-ready .architecture-band:not(.is-visible) .ecosystem-volume {
    transform: translateY(24px);
  }

  .infrastructure-svg.scene-shell {
    width: 100%;
    height: clamp(350px, 102vw, 430px);
    min-height: 0;
    margin: 4px 0 26px;
    aspect-ratio: auto;
  }
}

@media (max-width: 430px) {
  .hero-architecture.scene-shell {
    height: clamp(430px, 126vw, 500px);
  }

  .scene-domain-controls button {
    max-width: 31%;
    font-size: 0.45rem;
    letter-spacing: 0.055em;
  }

  .architecture-stage {
    padding-inline: 2px;
  }

  .infrastructure-svg.scene-shell {
    height: clamp(350px, 104vw, 420px);
  }
}

@media (max-width: 360px) {
  .hero-architecture.scene-shell { height: 430px; min-height: 0; }
  .trust-architecture-25d,
  .architecture-stage { min-height: 0; }
  .infrastructure-svg.scene-shell { height: 350px; min-height: 0; }
}

/* Final large-screen composition and collision-prevention pass */
.home-page {
  --content-max: 1240px;
  --visual-max: 1480px;
  --page-gutter: clamp(20px, 3vw, 48px);
  --section-space: clamp(60px, 4.8vw, 74px);
  --warm-white: var(--paper);
}

.home-hero {
  width: min(var(--visual-max), calc(100% - (var(--page-gutter) * 2)));
  grid-template-columns: minmax(0, 1fr) minmax(520px, 1fr);
  gap: clamp(28px, 3vw, 52px);
  min-height: 0;
  padding-block: clamp(58px, 4.8vw, 78px);
}

.home-hero-copy { max-width: 680px; min-width: 0; }
.home-hero h1 { max-width: 660px; font-size: clamp(3.2rem, 4vw, 4rem); line-height: 1.02; }
.home-hero-copy > p:not(.eyebrow) { max-width: 625px; }

.hero-architecture.scene-shell {
  height: clamp(660px, 44vw, 720px);
  min-width: 0;
  overflow: clip;
}

.scene-leaders {
  position: absolute;
  z-index: 2;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: visible;
  visibility: hidden;
  pointer-events: none;
  opacity: 0;
  transition: opacity var(--motion-base) ease 180ms;
}

.webgl-ready .scene-leaders { visibility: visible; opacity: 1; }
.scene-leaders line { stroke: rgba(209, 178, 115, 0.55); stroke-width: 1; vector-effect: non-scaling-stroke; }
.scene-domain-controls { z-index: 3; }
.scene-domain-controls button {
  left: var(--label-x, var(--x));
  top: var(--label-y, var(--y));
  width: max-content;
  max-width: min(158px, 28%);
  padding-inline: 8px;
  background: rgba(7, 26, 54, 0.88);
  backdrop-filter: blur(7px);
}
.scene-detail { bottom: 12px; }

.mission-band .band-inner { padding-block: clamp(58px, 4vw, 66px); }
.fidelity-mission {
  grid-template-columns: minmax(430px, 1.22fr) minmax(230px, 0.68fr) minmax(360px, 1.1fr);
  gap: clamp(30px, 3vw, 48px);
  align-items: start;
}
.fidelity-mission h2 { max-width: 540px; font-size: clamp(2.4rem, 2.45vw, 2.78rem); line-height: 1.04; }
.fidelity-mission::after { display: none; }
.icon-capabilities { min-width: 0; }
.icon-capabilities article { min-width: 0; min-height: 150px; }

.gap-band .band-inner { padding-block: var(--section-space) clamp(56px, 4vw, 64px); }
.gap-points { align-items: stretch; }
.gap-points article { height: 100%; }
.verification-path { width: min(850px, 100%); margin-inline: auto; }

.architecture-band .band-inner { padding-block: clamp(72px, 5vw, 82px); }
.fidelity-architecture {
  grid-template-columns: minmax(315px, 0.56fr) minmax(0, 1.44fr);
  gap: clamp(38px, 4vw, 60px);
}
.fidelity-architecture .architecture-copy { min-width: 0; }
.trust-architecture-25d { min-height: 700px; padding-top: 26px; overflow: visible; }
.architecture-stage { min-height: 660px; padding: 26px 12px 24px; }
.architecture-canopy {
  width: 97%;
  min-height: 126px;
  border: 1.5px solid rgba(36, 51, 90, 0.76);
  border-bottom: 4px solid rgba(180, 137, 61, 0.82);
  background: linear-gradient(165deg, rgba(255, 253, 248, 1), rgba(189, 209, 231, 0.68));
  box-shadow: 0 28px 34px rgba(9, 33, 63, 0.17), 0 10px 0 rgba(65, 82, 120, 0.1), inset 0 -18px 28px rgba(114, 142, 186, 0.12);
}
.architecture-canopy::before {
  bottom: -14px;
  height: 13px;
  border-color: rgba(65, 82, 120, 0.34);
  background: linear-gradient(180deg, rgba(209, 178, 115, 0.26), rgba(65, 82, 120, 0.14));
}
.architecture-canopy::after { bottom: 12px; height: 2px; }
.architecture-canopy strong { font-size: 0.73rem; }
.architecture-canopy span { color: #40516c; }

.verify-band .band-inner { padding-block: clamp(62px, 4.5vw, 70px); }
.verification-themes { margin-top: 28px; grid-template-columns: repeat(6, minmax(0, 1fr)); }
.verification-themes article { min-width: 0; min-height: 194px; padding-inline: 18px; }
.verification-themes h3 { min-height: 2.7em; margin-top: 22px; }
.verification-themes p { margin-top: auto; }
.routes-layout { grid-template-columns: minmax(260px, 0.48fr) minmax(0, 1.52fr); gap: clamp(34px, 3.6vw, 52px); }
.routes-layout > div:first-child { min-width: 0; padding-right: 30px; }

.infrastructure-panel { min-width: 0; }
.infrastructure-copy h2 { max-width: 500px; }
.infrastructure-svg.scene-shell { max-width: 100%; }
.infrastructure-items { max-width: 100%; grid-template-columns: repeat(6, minmax(0, 1fr)); }
.infrastructure-items button { min-width: 0; overflow-wrap: anywhere; }

.support-band .band-inner { padding-block: clamp(60px, 4.2vw, 68px); }
.fidelity-support { grid-template-columns: minmax(270px, 0.52fr) minmax(0, 1.48fr); gap: clamp(36px, 4vw, 58px); }
.fidelity-support > *, .support-list, .support-list article { min-width: 0; max-width: 100%; }
.support-list { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.support-list article { min-height: 168px; padding-inline: 18px; overflow-wrap: anywhere; }
.stakeholder-line { width: 100%; max-width: 100%; margin-top: -22px; justify-content: flex-end; row-gap: 9px; }
.stakeholder-line span { min-width: 0; white-space: normal; }

.home-cta {
  width: min(var(--content-max), calc(100% - (var(--page-gutter) * 2)));
  grid-template-columns: 44px minmax(0, 1fr) auto;
  gap: clamp(24px, 3vw, 44px);
  min-width: 0;
  padding-block: clamp(48px, 4vw, 58px);
}
.home-cta > * { min-width: 0; max-width: 100%; }
.home-cta h2 { max-width: 670px; font-size: clamp(2.35rem, 2.8vw, 3.1rem); }
.home-cta .hero-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; max-width: 100%; gap: 14px; }
.home-cta .button { max-width: 100%; white-space: nowrap; }

.site-footer { grid-template-columns: minmax(260px, 1.35fr) repeat(3, minmax(0, 0.65fr)); max-width: 100%; }
.site-footer > * { min-width: 0; max-width: 100%; }
.footer-statement { max-width: 900px; padding-top: 14px; }
.footer-statement p { max-width: 900px; font-size: clamp(2.15rem, 3.1vw, 3.45rem); overflow-wrap: anywhere; }
.reading-progress { width: 100%; max-width: 100%; overflow: clip; }

@media (min-width: 1600px) {
  .hero-architecture.scene-shell { height: 720px; }
}

@media (min-width: 761px) and (max-width: 1180px) {
  .verification-themes { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .verification-themes::before { display: none; }
  .verification-themes article { min-height: 180px; border-bottom: 1px solid var(--line); }
  .verification-themes article:nth-child(3n) { border-right: 0; }
  .routes-layout, .fidelity-support { grid-template-columns: minmax(0, 1fr); }
  .routes-layout > div:first-child { max-width: 560px; border-right: 0; padding-right: 0; }
  .stakeholder-line { margin-top: 0; justify-content: flex-start; }
  .home-cta { grid-template-columns: minmax(0, 1fr); }
  .home-cta .hero-actions { justify-content: flex-start; }
  .home-cta .cta-motif { display: flex; align-items: center; height: auto; }
  .home-cta .cta-motif span { width: 1px !important; height: 26px; }
}

@media (min-width: 761px) and (max-width: 1100px) {
  .home-hero { grid-template-columns: minmax(0, 1fr); width: min(900px, calc(100% - (var(--page-gutter) * 2))); }
  .hero-architecture.scene-shell { width: 100%; height: clamp(540px, 68vw, 620px); margin-top: 24px; }
  .fidelity-mission { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 760px) {
  .home-hero { grid-template-columns: minmax(0, 1fr); width: calc(100% - (var(--page-gutter) * 2)); gap: 24px; }
  .home-hero h1 { font-size: clamp(2.52rem, 11.2vw, 3.02rem); }
  .hero-architecture.scene-shell { height: clamp(470px, 126vw, 540px); margin-top: 22px; }
  .scene-leaders { display: none; }
  .compact-domain-legend .scene-domain-controls {
    inset: auto 8px 42px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1px 10px;
    padding: 8px 10px;
    border-top: 1px solid rgba(209, 178, 115, 0.34);
    background: linear-gradient(180deg, rgba(7, 26, 54, 0.9), rgba(7, 26, 54, 0.98));
    backdrop-filter: blur(8px);
  }
  .compact-domain-legend .scene-domain-controls button {
    position: relative;
    left: auto !important;
    top: auto !important;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    min-height: 28px;
    padding: 4px 2px;
    transform: none;
    border: 0;
    border-bottom: 1px solid rgba(209, 178, 115, 0.24);
    background: transparent;
    text-align: left;
  }
  .compact-domain-legend .scene-core-label { top: 40%; }
  .fidelity-mission { grid-template-columns: minmax(0, 1fr); }
  .mission-band .band-inner, .gap-band .band-inner, .verify-band .band-inner, .support-band .band-inner { padding-block: 54px; }
  .verification-themes { grid-template-columns: minmax(0, 1fr); }
  .support-list { grid-template-columns: minmax(0, 1fr); }
  .home-cta { grid-template-columns: minmax(0, 1fr); }
  .home-cta .hero-actions { justify-content: flex-start; }
  .home-cta .button { white-space: normal; }
  .site-footer { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .footer-statement p { font-size: clamp(1.45rem, 7vw, 1.78rem); }
}

@media (max-width: 360px) {
  .hero-architecture.scene-shell { height: 470px; }
}

/* Final surface rhythm and narrow-screen composition. */
body.page-about .inner-editorial-section { background: linear-gradient(105deg, rgba(247, 248, 247, 0.9), rgba(233, 238, 242, 0.42)); }
body.page-about .mission-vision-section { background: rgba(255, 253, 248, 0.72); }
body.page-about .inner-concept-section { background: linear-gradient(105deg, rgba(233, 238, 242, 0.58), rgba(247, 248, 247, 0.88)); }
body.page-about .inner-principles-section { background: rgba(233, 238, 242, 0.5); }

body.page-initiative .inner-priorities-section { background: linear-gradient(105deg, rgba(233, 238, 242, 0.78), rgba(247, 248, 247, 0.65)); }
body.page-initiative .inner-activity-section { background: rgba(255, 253, 248, 0.7); }
body.page-initiative .inner-audience-section { background: rgba(247, 248, 247, 0.9); }

body.page-alliance .inner-editorial-section { background: rgba(241, 237, 228, 0.78); }
body.page-alliance .inner-activity-section { background: rgba(255, 253, 248, 0.72); }
body.page-alliance .contributor-framework-section { background: rgba(247, 248, 247, 0.94); }
body.page-alliance .alliance-form-section { background: rgba(241, 237, 228, 0.62); }

body.page-services .service-areas-section { background: rgba(255, 253, 248, 0.76); }
body.page-services .service-audience-section { background: rgba(247, 248, 247, 0.9); }
body.page-services .service-boundaries-section { background: rgba(255, 253, 248, 0.72); }

body.page-trust-lab .inner-editorial-section { background: rgba(255, 253, 248, 0.72); }
body.page-trust-lab .inner-audience-section { background: rgba(247, 248, 247, 0.9); }

body.page-partners .inner-editorial-section { background: rgba(255, 253, 248, 0.72); }
body.page-partners .inner-audience-section { background: rgba(233, 238, 242, 0.64); }
body.page-partners .participation-terms-section { background: rgba(241, 237, 228, 0.72); }

body.page-contact .direct-contact-section { background: linear-gradient(105deg, rgba(255, 253, 248, 0.96), rgba(247, 248, 247, 0.88)); }

@media (max-width: 620px) {
  body.inner-page .inner-page-main > .section { padding-block: 48px; }
  body.inner-page .inner-page-hero { padding-block: 60px; }
  body.inner-page .inner-page-hero h1 {
    max-width: 13ch;
    font-size: clamp(2.35rem, 10.2vw, 3.4rem);
    letter-spacing: -0.046em;
    line-height: 1.01;
  }
  body.inner-page .inner-page-hero > p:not(.eyebrow) { font-size: 0.98rem; line-height: 1.62; }
  body.inner-page .section-heading { margin-bottom: 25px; }
  body.inner-page .inner-route-grid > *,
  body.inner-page .inner-principles-grid > article,
  body.inner-page .inner-activity-grid > article,
  body.inner-page .decision-family-grid > article,
  body.inner-page .research-domain-grid > article,
  body.inner-page .partnership-route-grid > article,
  body.inner-page .contact-route-grid > a,
  body.inner-page .emerging-environment-grid > article { padding: 21px 18px; }
  body.inner-page .inner-definition-strip > span,
  body.inner-page .inner-audience-grid > span { min-height: 62px; padding: 14px 15px; }
}
@media (min-width: 421px) and (max-width: 620px) {
  body.inner-page .inner-audience-grid,
  body.inner-page .inner-definition-strip,
  body.page-services .outcomes-grid,
  body.page-contact .contact-route-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.page-about .inner-principles-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.page-about .inner-principles-grid > article,
  body.page-about .inner-principles-grid > article:nth-child(1),
  body.page-about .inner-principles-grid > article:nth-child(2),
  body.page-about .inner-principles-grid > article:nth-child(n + 3) { grid-column: auto; }
  body.page-contact .contact-route-grid > a:nth-child(even) { border-left: 1px solid var(--inner-line); }
}
@media (max-width: 420px) {
  body.page-services .outcomes-grid,
  body.page-contact .contact-route-grid { grid-template-columns: 1fr; }
  body.page-contact .contact-route-grid > a:nth-child(even) { border-left: 0; }
}
/* About hero correction: composed copy and architecture. */
body.inner-page .inner-hero-visual,
body.inner-page .inner-secondary-visual {
  background: rgba(255, 253, 248, 0.68);
  background-size: auto;
}
body.page-trust-lab .inner-hero-visual,
body.page-trust-lab .inner-secondary-visual {
  background: rgba(5, 25, 54, 0.58);
}
body.page-about .inner-page-hero.inner-hero-with-visual {
  grid-template-columns: minmax(0, 0.98fr) minmax(380px, 0.86fr);
  align-items: center;
  column-gap: clamp(42px, 7vw, 118px);
}
body.page-about .inner-page-hero.inner-hero-with-visual::before,
body.page-about .inner-page-hero.inner-hero-with-visual::after { display: none; }
body.page-about .inner-hero-copy {
  grid-column: 1;
  grid-row: 1;
  align-self: center;
}
body.page-about .inner-hero-copy h1 { max-width: 13.5ch; }
body.page-about .inner-hero-visual {
  border: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
}
body.page-about .inner-hero-visual::before { display: none; }
body.page-about .inner-hero-visual img { width: min(100%, 570px); margin-inline: auto; }
@media (min-width: 901px) {
  body.page-about .inner-hero-visual { grid-column: 2; grid-row: 1; align-self: center; }
}
@media (max-width: 900px) {
  body.page-about .inner-hero-copy { grid-column: 1; grid-row: auto; }
  body.page-about .inner-hero-visual { width: min(100%, 620px); }
}/* Inner-page hero weight and About AI sentinel. */
body.inner-page .inner-page-hero h1 { font-weight: 400; }@media (prefers-reduced-motion: reduce) {
  .scene-leaders { transition: none; }
}
.force-reduced-motion .scene-leaders { transition: none; }

/* Homepage micro-cleanup: align the hero scene with its full-bleed panel. */
@media (min-width: 1101px) {
  .home-page .home-hero {
    --hero-panel-bleed: max(
      calc(var(--page-gutter) - 8px),
      calc((100vw - var(--visual-max)) / 2 - 8px)
    );
  }

  .home-page .home-hero::after {
    right: calc(var(--hero-panel-bleed) * -1);
    animation: none;
    transform: none;
  }

  .home-page .hero-architecture.scene-shell {
    width: calc(100% + var(--hero-panel-bleed) - 24px);
    max-width: none;
    margin-left: 24px;
    padding-inline: 8px;
    background: transparent;
  }
}

/* The verification themes are discrete items; the old animated connector read as a stray rule. */
.home-page .verify-band .verification-themes::before {
  content: none;
  display: none;
}
/* Large-screen pass mobile architecture containment correction */
@media (min-width: 761px) and (max-width: 1100px) {
  .fidelity-architecture, .infrastructure-panel { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 760px) {
  .fidelity-architecture, .infrastructure-panel { grid-template-columns: minmax(0, 1fr); }
  .trust-architecture-25d { width: 100%; min-height: 0; padding: 18px 0 8px; perspective: none; overflow: visible; }
  .architecture-stage { grid-template-rows: auto; width: 100%; min-height: 0; padding: 18px 0 24px; gap: 10px; }
  .architecture-canopy { width: 100%; min-height: 104px; }
}
/* Narrow mobile editorial-grid containment */
@media (max-width: 760px) {
  .routes-layout, .fidelity-support { grid-template-columns: minmax(0, 1fr); }
  .routes-layout > div:first-child { max-width: 100%; border-right: 0; padding-right: 0; }
  .stakeholder-line { margin-top: 0; justify-content: flex-start; }
}
/* Final homepage CTA and footer composition pass */
.home-page .home-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(340px, 0.85fr);
  align-items: center;
  gap: clamp(48px, 5vw, 76px);
  width: min(var(--content-max), calc(100% - (var(--page-gutter) * 2)));
  min-height: 0;
  padding-block: clamp(54px, 4.2vw, 66px);
  overflow: visible;
  background: transparent;
}

.home-page .home-cta::after { display: none; }

.home-page .home-cta > * {
  min-width: 0;
  max-width: 100%;
}

.home-page .home-cta .cta-copy {
  grid-column: 1;
  padding-left: 68px;
}

.home-page .home-cta .eyebrow { margin-bottom: 12px; }

.home-page .home-cta h2 {
  max-width: 760px;
  margin-bottom: 0;
  font-size: clamp(2.3rem, 2.7vw, 2.8rem);
  line-height: 1.05;
}

.home-page .home-cta .cta-motif {
  position: absolute;
  top: 50%;
  left: 0;
  display: grid;
  align-content: center;
  gap: 5px;
  width: 44px;
  height: 86px;
  transform: translateY(-50%);
}

.home-page .home-cta .hero-actions {
  grid-column: 2;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-self: end;
  width: min(100%, 360px);
  margin-top: 0;
  gap: 14px;
}

.home-page .home-cta .button.primary { width: 100%; }
.home-page .home-cta .button.text-button { width: fit-content; max-width: 100%; }

.home-page .site-footer.premium-footer {
  grid-template-columns: minmax(280px, 1.35fr) repeat(3, minmax(0, 1fr));
  align-items: start;
  column-gap: clamp(34px, 4.2vw, 72px);
  row-gap: 0;
  max-width: 100%;
  min-height: 0;
  padding: clamp(48px, 4vw, 62px) max(24px, calc((100% - var(--content-max)) / 2)) 28px;
  background:
    linear-gradient(rgba(65, 82, 120, 0.07) 1px, transparent 1px),
    linear-gradient(90deg, rgba(65, 82, 120, 0.07) 1px, transparent 1px),
    radial-gradient(circle at 18% 15%, rgba(65, 82, 120, 0.2), transparent 34%),
    var(--navy-deep);
  background-size: 44px 44px, 44px 44px, auto, auto;
}

.home-page .site-footer.premium-footer > * {
  min-width: 0;
  max-width: 100%;
}

.home-page .footer-statement {
  grid-column: 1 / -1;
  width: 100%;
  max-width: none;
  margin: 0 0 34px;
  padding: 0 0 30px;
}

.home-page .footer-statement p {
  width: min(100%, 1020px);
  max-width: 1020px;
  margin: 0;
  font-size: clamp(2rem, 2.2vw, 2.75rem);
  line-height: 1.08;
  overflow-wrap: normal;
}

.home-page .footer-statement::after { width: min(38%, 360px); }

.home-page .footer-brand-block,
.home-page .site-footer > div:not(.footer-statement) {
  align-self: start;
}

.home-page .site-footer .footer-brand { margin: 0 0 18px; }

.home-page .footer-brand-block > p {
  margin: 0 0 6px;
  line-height: 1.5;
}

.home-page .site-footer h3 {
  margin: 2px 0 14px;
  font-size: 0.64rem;
}

.home-page .site-footer a {
  width: fit-content;
  max-width: 100%;
  margin-bottom: 7px;
  line-height: 1.45;
  overflow-wrap: anywhere;
  text-decoration: underline;
  text-decoration-color: transparent;
  text-underline-offset: 4px;
  transition: color var(--motion-fast) ease, text-decoration-color var(--motion-fast) ease;
}

.home-page .site-footer a:hover,
.home-page .site-footer a:focus-visible {
  color: var(--gold-light);
  text-decoration-color: currentColor;
}

.home-page .site-footer a:focus-visible {
  outline: 1px solid var(--gold-light);
  outline-offset: 3px;
}

.home-page .copyright {
  grid-column: 1 / -1;
  margin: 34px 0 0;
  padding-top: 20px;
}

.home-page .premium-footer::before { height: 1px; }

@media (max-width: 1280px) {
  .home-page .home-cta {
    grid-template-columns: minmax(0, 1fr);
    gap: 28px;
  }

  .home-page .home-cta .cta-copy,
  .home-page .home-cta .hero-actions { grid-column: 1; }
  .home-page .home-cta .hero-actions { justify-self: start; }
}

@media (max-width: 1180px) {
  .home-page .site-footer.premium-footer {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: clamp(36px, 7vw, 68px);
  }

  .home-page .footer-brand-block,
  .home-page .site-footer > div:not(.footer-statement) {
    padding-block: 4px 28px;
  }

  .home-page .copyright { margin-top: 8px; }
}

@media (max-width: 760px) {
  .home-page .home-cta {
    gap: 20px;
    padding-block: 48px;
  }

  .home-page .home-cta .cta-motif {
    position: static;
    display: flex;
    align-items: center;
    width: 44px;
    height: auto;
    margin-bottom: -4px;
    transform: none;
  }

  .home-page .home-cta .cta-copy { padding-left: 0; }
  .home-page .home-cta h2 { font-size: clamp(2.05rem, 9vw, 2.45rem); }
  .home-page .home-cta .hero-actions { width: 100%; }
  .home-page .home-cta .button.primary { width: 100%; }

  .home-page .site-footer.premium-footer {
    grid-template-columns: minmax(0, 1fr);
    padding-top: 42px;
    padding-bottom: 24px;
  }

  .home-page .footer-statement {
    margin-bottom: 6px;
    padding-bottom: 26px;
  }

  .home-page .footer-statement p {
    font-size: clamp(1.65rem, 7vw, 2.05rem);
    line-height: 1.1;
  }

  .home-page .footer-brand-block,
  .home-page .site-footer > div:not(.footer-statement) {
    border-bottom: 1px solid rgba(255, 255, 255, 0.12);
    padding: 20px 0;
  }

  .home-page .footer-brand-block { padding-top: 22px; }
  .home-page .site-footer h3 { margin-top: 0; }
  .home-page .copyright { margin-top: 22px; padding-top: 18px; }
}

/* Hybrid current-market and future-ready homepage structure */
.home-page .hero-scope-line {
  max-width: 620px;
  margin-top: 22px;
  padding-top: 14px;
  border-top: 1px solid rgba(180, 137, 61, 0.34);
  color: var(--navy);
  font-family: var(--font-label);
  font-size: 0.66rem;
  font-weight: 500;
  letter-spacing: 0.09em;
  line-height: 1.55;
  text-transform: uppercase;
}

@media (min-width: 761px) {
  .home-page .scene-domain-controls button {
    max-width: min(194px, 31%);
    font-size: 0.58rem;
  }
}

.home-page .section-intro {
  max-width: 1080px;
  margin-bottom: clamp(34px, 4vw, 54px);
}

.home-page .section-intro h2 {
  max-width: 840px;
  margin-bottom: 0;
  font-size: clamp(2.7rem, 3.8vw, 4.35rem);
  line-height: 1.02;
}

.home-page .split-intro {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(300px, 0.72fr);
  gap: clamp(48px, 7vw, 104px);
  max-width: none;
  align-items: end;
}

.home-page .split-intro > * { min-width: 0; }
.home-page .split-intro > p,
.home-page .split-intro > div:last-child p {
  max-width: 580px;
  color: var(--ink-soft);
  font-size: 1.03rem;
  line-height: 1.75;
}

.home-page .split-intro > div:last-child p + p { margin-top: 16px; }
.home-page .lead-line {
  color: var(--navy) !important;
  font-family: var(--font-heading);
  font-size: clamp(1.45rem, 1.9vw, 2rem) !important;
  line-height: 1.15 !important;
}

.home-page .intro-columns {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(28px, 4vw, 58px);
  margin-top: 34px;
}

.home-page .intro-columns p {
  position: relative;
  margin: 0;
  padding-top: 20px;
  border-top: 1px solid var(--line);
  color: var(--ink-soft);
  line-height: 1.72;
}

.home-page .intro-columns p:first-child {
  color: var(--navy);
  font-weight: 500;
}

.home-page .gap-landscape-band {
  background:
    linear-gradient(90deg, rgba(65, 82, 120, 0.035) 1px, transparent 1px),
    var(--paper);
  background-size: 72px 72px, auto;
}

.home-page .gap-landscape-band .band-inner,
.home-page .connected-stack-band .band-inner,
.home-page .lifecycle-band .band-inner,
.home-page .expanded-support-band .band-inner{
  padding-block: clamp(68px, 5.5vw, 92px);
}

.home-page .landscape-intro { max-width: none; }

.home-page .gap-domain-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border-top: 1px solid var(--navy);
  border-left: 1px solid var(--line);
}

.home-page .gap-domain {
  min-width: 0;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  background: rgba(255, 253, 248, 0.72);
  transition: background-color var(--motion-base) ease;
}

.home-page .gap-domain:hover,
.home-page .gap-domain:focus-within,
.home-page .gap-domain[open] { background: rgba(233, 241, 253, 0.68); }

.home-page .gap-domain summary,
.home-page .lifecycle-path summary {
  list-style: none;
  cursor: pointer;
}

.home-page .gap-domain summary::-webkit-details-marker,
.home-page .lifecycle-path summary::-webkit-details-marker { display: none; }

.home-page .gap-domain summary {
  position: relative;
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr) 28px;
  gap: 10px 18px;
  min-height: 216px;
  padding: 30px 32px;
}

.home-page .gap-domain summary::after{
  content: "+";
  grid-column: 3;
  grid-row: 1;
  justify-self: end;
  color: var(--gold);
  font-family: var(--font-label);
  font-size: 1.2rem;
  line-height: 1;
}

.home-page details[open] > summary::after { content: "ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã¢â‚¬Â ÃƒÂ¢Ã¢â€šÂ¬Ã¢â€žÂ¢ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â‚¬Å¾Ã‚Â¢ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬Ãƒâ€šÃ‚Â ÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡Ãƒâ€šÃ‚Â¬ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¾Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã¢â‚¬Â ÃƒÂ¢Ã¢â€šÂ¬Ã¢â€žÂ¢ÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡Ãƒâ€šÃ‚Â¬ÃƒÆ’Ã¢â‚¬Â¦Ãƒâ€šÃ‚Â¡ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬Ãƒâ€¦Ã‚Â¡ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã¢â‚¬Â ÃƒÂ¢Ã¢â€šÂ¬Ã¢â€žÂ¢ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â‚¬Å¾Ã‚Â¢ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬Ãƒâ€¦Ã‚Â¡ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¬ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¹ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã¢â‚¬Â ÃƒÂ¢Ã¢â€šÂ¬Ã¢â€žÂ¢ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡Ãƒâ€šÃ‚Â¬ÃƒÆ’Ã¢â‚¬Â¦Ãƒâ€šÃ‚Â¡ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¬ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬Ãƒâ€¦Ã‚Â¡ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã¢â‚¬Â ÃƒÂ¢Ã¢â€šÂ¬Ã¢â€žÂ¢ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â‚¬Å¾Ã‚Â¢ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬Ãƒâ€¦Ã‚Â¡ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã¢â‚¬Â ÃƒÂ¢Ã¢â€šÂ¬Ã¢â€žÂ¢ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬Ãƒâ€¦Ã‚Â¡ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¬ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â¦ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¡ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬Ãƒâ€¦Ã‚Â¡ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¬ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã¢â‚¬Â ÃƒÂ¢Ã¢â€šÂ¬Ã¢â€žÂ¢ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬Ãƒâ€¦Ã‚Â¡ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¬ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â¦ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¾ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬Ãƒâ€¦Ã‚Â¡ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¢"; }

.home-page .gap-domain summary > span {
  color: var(--gold-dark);
  font-family: var(--font-label);
  font-size: 0.67rem;
  letter-spacing: 0.08em;
}

.home-page .gap-domain summary strong {
  color: var(--navy);
  font-family: var(--font-heading);
  font-size: clamp(1.55rem, 2vw, 2rem);
  font-weight: 500;
  line-height: 1.08;
}

.home-page .gap-domain summary small {
  grid-column: 2 / -1;
  max-width: 560px;
  color: var(--ink-soft);
  font-size: 0.94rem;
  line-height: 1.62;
}

.home-page .gap-domain ul {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px 28px;
  margin: 0 32px 30px 88px;
  padding: 22px 0 0;
  border-top: 1px solid rgba(65, 82, 120, 0.18);
  color: var(--ink-soft);
  font-size: 0.84rem;
  line-height: 1.5;
}

.home-page .gap-domain li { padding-left: 4px; }

.home-page .verification-path-extended {
  width: min(1050px, 100%);
  margin-top: 42px;
}

.home-page .verification-path-extended span { white-space: normal; text-align: center; }

.home-page .pathway-note {
  max-width: 820px;
  margin: 20px auto 0;
  color: var(--ink-soft);
  font-size: 0.9rem;
  line-height: 1.65;
  text-align: center;
}

.home-page .connected-stack-band {
  color: var(--paper);
  background:
    linear-gradient(rgba(65, 82, 120, 0.11) 1px, transparent 1px),
    linear-gradient(90deg, rgba(65, 82, 120, 0.11) 1px, transparent 1px),
    radial-gradient(circle at 74% 20%, rgba(65, 82, 120, 0.34), transparent 34%),
    var(--navy-deep);
  background-size: 54px 54px, 54px 54px, auto, auto;
}

.home-page .connected-stack-band .eyebrow { color: var(--gold-light); }
.home-page .connected-stack-band h2,
.home-page .connected-stack-band .lead-line { color: var(--paper) !important; }
.home-page .connected-stack-band .split-intro > div:last-child p { color: rgba(239, 244, 251, 0.74); }

.home-page .stack-architecture {
  position: relative;
  border: 1px solid rgba(189, 209, 231, 0.25);
  background: rgba(7, 26, 54, 0.52);
  box-shadow: 0 32px 80px rgba(0, 0, 0, 0.2);
}

.home-page .stack-trust-rail {
  display: grid;
  grid-template-columns: minmax(220px, 0.45fr) minmax(0, 1fr);
  gap: 24px;
  align-items: center;
  min-height: 76px;
  padding: 18px 24px;
  border-bottom: 1px solid rgba(209, 178, 115, 0.5);
  background: linear-gradient(90deg, rgba(180, 137, 61, 0.2), rgba(65, 82, 120, 0.12));
}

.home-page .stack-trust-rail span {
  color: var(--gold-light);
  font-family: var(--font-label);
  font-size: 0.7rem;
  font-weight: 600;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.home-page .stack-trust-rail small {
  color: rgba(239, 244, 251, 0.68);
  font-size: 0.82rem;
  line-height: 1.55;
}

.home-page .stack-tabs {
  display: grid;
  grid-template-columns: repeat(8, minmax(0, 1fr));
  align-items: stretch;
}

.home-page .stack-tabs button {
  position: relative;
  min-width: 0;
  min-height: 142px;
  padding: 22px 13px 20px;
  border: 0;
  border-right: 1px solid rgba(189, 209, 231, 0.18);
  border-bottom: 1px solid rgba(189, 209, 231, 0.18);
  color: rgba(239, 244, 251, 0.72);
  background: linear-gradient(180deg, rgba(189, 209, 231, 0.055), transparent);
  font-family: var(--font-body);
  font-size: 0.72rem;
  line-height: 1.4;
  text-align: left;
  transition: color var(--motion-fast) ease, background-color var(--motion-fast) ease, transform var(--motion-fast) ease;
}

.home-page .stack-tabs button:last-child { border-right: 0; }
.home-page .stack-tabs button span {
  display: block;
  margin-bottom: 30px;
  color: var(--gold);
  font-family: var(--font-label);
  font-size: 0.6rem;
  letter-spacing: 0.08em;
}

.home-page .stack-tabs button::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: -1px;
  left: 0;
  height: 2px;
  background: var(--gold-light);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform var(--motion-base) ease;
}

.home-page .stack-tabs button:hover,
.home-page .stack-tabs button[aria-selected="true"] {
  color: var(--paper);
  background: rgba(65, 82, 120, 0.2);
}

.home-page .stack-tabs button[aria-selected="true"]::after { transform: scaleX(1); }

.home-page .stack-panels { min-height: 178px; }
.home-page .stack-panel {
  position: relative;
  display: grid;
  grid-template-columns: 48px minmax(220px, 0.55fr) minmax(0, 1fr);
  gap: 24px;
  align-items: center;
  min-height: 178px;
  padding: 30px 38px;
}

.home-page .stack-panel > span {
  color: var(--gold-light);
  font-family: var(--font-label);
  font-size: 0.72rem;
}

.home-page .stack-panel h3 {
  margin: 0;
  color: var(--paper);
  font-family: var(--font-heading);
  font-size: clamp(1.8rem, 2.4vw, 2.65rem);
  font-weight: 500;
}

.home-page .stack-panel p {
  max-width: 700px;
  margin: 0;
  color: rgba(239, 244, 251, 0.76);
  line-height: 1.72;
}

.home-page .section-closing {
  max-width: 880px;
  margin: 30px 0 0 auto;
  padding-left: 26px;
  border-left: 1px solid var(--gold);
  color: rgba(239, 244, 251, 0.78);
  font-family: var(--font-heading);
  font-size: clamp(1.35rem, 1.7vw, 1.7rem);
  line-height: 1.35;
}

.home-page .lifecycle-path {
  position: relative;
  display: grid;
  grid-template-columns: repeat(10, minmax(0, 1fr));
  margin: 0;
  padding: 0;
  list-style: none;
}

.home-page .lifecycle-path::before {
  content: "";
  position: absolute;
  top: 30px;
  right: 4%;
  left: 4%;
  height: 1px;
  background: linear-gradient(90deg, var(--gold), var(--legacy-blue-400), var(--gold));
}

.home-page .lifecycle-path li { position: relative; min-width: 0; }
.home-page .lifecycle-path details { position: relative; }
.home-page .lifecycle-path summary {
  position: relative;
  display: grid;
  justify-items: center;
  gap: 16px;
  min-height: 100px;
  padding: 16px 5px;
  color: var(--navy);
  text-align: center;
}

.home-page .lifecycle-path summary span {
  z-index: 1;
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border: 1px solid var(--gold);
  border-radius: 50%;
  color: var(--gold-dark);
  background: var(--warm-white);
  font-family: var(--font-label);
  font-size: 0.56rem;
}

.home-page .lifecycle-path summary strong {
  font-size: 0.77rem;
  font-weight: 600;
}

.home-page .lifecycle-path details[open] summary span {
  color: var(--navy-deep);
  background: var(--gold-light);
}

.home-page .lifecycle-path details p {
  position: absolute;
  z-index: 4;
  top: 96px;
  left: 50%;
  width: min(260px, 82vw);
  margin: 0;
  padding: 18px;
  border: 1px solid rgba(65, 82, 120, 0.22);
  color: var(--ink-soft);
  background: var(--paper);
  box-shadow: 0 18px 42px rgba(9, 33, 63, 0.13);
  font-size: 0.82rem;
  line-height: 1.55;
  transform: translateX(-50%);
}

.home-page .lifecycle-path li:first-child details p { left: 0; transform: none; }
.home-page .lifecycle-path li:last-child details p { right: 0; left: auto; transform: none; }

.home-page .architecture-layout { align-items: center; }
.home-page .architecture-copy p + p { margin-top: 18px; }
.home-page .architecture-closing {
  grid-column: 1 / -1;
  width: min(760px, 100%);
  margin: -18px 0 0 auto;
  padding-top: 22px;
  border-top: 1px solid var(--line);
  color: var(--navy);
  font-family: var(--font-heading);
  font-size: clamp(1.35rem, 1.8vw, 1.8rem);
  line-height: 1.35;
}

.home-page .capability-plates { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.home-page .capability-plates span { padding-inline: 7px; font-size: 0.55rem; }
.home-page .sovereignty-foundation span { padding-inline: 8px; font-size: 0.5rem; }

.home-page .evidence-output-strip {
  display: grid;
  grid-template-columns: minmax(220px, 0.48fr) minmax(0, 1.2fr) auto;
  gap: clamp(28px, 4vw, 54px);
  align-items: start;
  margin-top: 38px;
  padding: 30px 32px;
  border: 1px solid rgba(65, 82, 120, 0.22);
  background: rgba(255, 253, 248, 0.74);
}

.home-page .evidence-output-strip h3 {
  margin: 0;
  color: var(--navy);
  font-family: var(--font-heading);
  font-size: clamp(1.4rem, 1.8vw, 1.8rem);
  font-weight: 500;
  line-height: 1.18;
}

.home-page .evidence-output-strip ul {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px 28px;
  margin: 0;
  padding-left: 18px;
  color: var(--ink-soft);
  font-size: 0.8rem;
  line-height: 1.45;
}

.home-page .evidence-output-strip .inline-link { align-self: center; white-space: nowrap; }

.home-page .infrastructure-copy p:not(.eyebrow) + p { margin-top: 14px; }
.home-page .environment-index {
  grid-column: 1;
  grid-row: 1;
  color: var(--gold-dark);
  font-family: var(--font-label);
  font-size: 0.62rem;
  letter-spacing: 0.08em;
}

.home-page .environment-glyph {
  position: relative;
  grid-column: 1 / -1;
  display: block;
  width: 84px;
  height: 72px;
  margin: 28px auto 32px;
  border: 1px solid rgba(65, 82, 120, 0.28);
  transform: rotateX(62deg) rotateZ(-40deg);
}

.home-page .environment-glyph::before,
.home-page .environment-glyph::after,
.home-page .environment-glyph i {
  content: "";
  position: absolute;
  border: 1px solid rgba(180, 137, 61, 0.72);
}

.home-page .environment-glyph::before { inset: 12px; }
.home-page .environment-glyph::after { inset: 26px; background: rgba(65, 82, 120, 0.14); }
.home-page .environment-glyph i:nth-child(1) { top: -11px; left: 17px; width: 1px; height: 90px; }
.home-page .environment-glyph i:nth-child(2) { top: 33px; left: -12px; width: 108px; height: 1px; }
.home-page .environment-glyph i:nth-child(3) { inset: 20px; border-radius: 50%; }
.home-page .spatial-glyph { border-radius: 50%; }
.home-page .network-glyph::before { transform: rotate(45deg); }
.home-page .machine-glyph::after { border-radius: 50%; }

.home-page .expanded-support-band {
  background:
    linear-gradient(90deg, rgba(65, 82, 120, 0.045) 1px, transparent 1px),
    var(--legacy-blue-050);
  background-size: 70px 70px, auto;
}

.home-page .audience-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-top: 1px solid var(--navy);
  border-left: 1px solid rgba(65, 82, 120, 0.2);
}

.home-page .audience-grid article {
  min-width: 0;
  min-height: 220px;
  padding: 28px;
  border-right: 1px solid rgba(65, 82, 120, 0.2);
  border-bottom: 1px solid rgba(65, 82, 120, 0.2);
  background: rgba(255, 253, 248, 0.56);
}

.home-page .audience-grid article:last-child { grid-column: 2 / 3; }
.home-page .audience-grid article > span{
  display: block;
  margin-bottom: 42px;
  color: var(--gold-dark);
  font-family: var(--font-label);
  font-size: 0.62rem;
}

.home-page .audience-grid h3{
  margin: 0 0 12px;
  color: var(--navy);
  font-family: var(--font-heading);
  font-size: clamp(1.25rem, 1.55vw, 1.6rem);
  font-weight: 500;
  line-height: 1.16;
}

.home-page .audience-grid p{ color: var(--ink-soft); font-size: 0.84rem; line-height: 1.58; }

.home-page .home-cta .cta-copy > p:not(.eyebrow) {
  max-width: 760px;
  margin: 18px 0 0;
  color: var(--ink-soft);
  font-size: 0.94rem;
  line-height: 1.65;
}

.home-page .home-cta { align-items: end; }

.home-page summary:focus-visible,
.home-page .stack-tabs button:focus-visible{
  outline: 2px solid var(--gold);
  outline-offset: -3px;
}

@media (max-width: 1280px) {
  .home-page .stack-tabs { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .home-page .stack-tabs button:nth-child(4n) { border-right: 0; }
  .home-page .stack-tabs button { min-height: 116px; }
  .home-page .stack-tabs button span { margin-bottom: 18px; }
  .home-page .lifecycle-path { grid-template-columns: repeat(5, minmax(0, 1fr)); row-gap: 22px; }
  .home-page .lifecycle-path::before { display: none; }
  .home-page .lifecycle-path li { border-top: 1px solid var(--line); }
  .home-page .lifecycle-path details p { top: 90px; }
  .home-page .audience-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-page .audience-grid article:last-child { grid-column: 1 / -1; max-width: 50%; justify-self: center; }
}

@media (max-width: 1024px) {
  .home-page .split-intro{
    grid-template-columns: minmax(0, 1fr);
    gap: 28px;
  }

  .home-page .split-intro > p,
  .home-page .split-intro > div:last-child p { max-width: 740px; }
  .home-page .intro-columns { grid-template-columns: minmax(0, 1fr); gap: 18px; }
  .home-page .gap-domain summary { min-height: 235px; }
  .home-page .stack-trust-rail { grid-template-columns: minmax(0, 1fr); gap: 7px; }
  .home-page .stack-panel { grid-template-columns: 40px minmax(0, 0.7fr) minmax(0, 1fr); }
  .home-page .evidence-output-strip { grid-template-columns: minmax(0, 1fr); }
  .home-page .evidence-output-strip .inline-link { justify-self: start; }
}

@media (max-width: 760px) {
  .home-page .hero-scope-line { margin-top: 18px; font-size: 0.58rem; }
  .home-page .section-intro h2 { font-size: clamp(2.3rem, 10vw, 3rem); }
  .home-page .gap-landscape-band .band-inner,
  .home-page .connected-stack-band .band-inner,
  .home-page .lifecycle-band .band-inner,
  .home-page .expanded-support-band .band-inner{ padding-block: 56px; }

  .home-page .gap-domain-grid,
  .home-page .audience-grid { grid-template-columns: minmax(0, 1fr); }

  .home-page .gap-domain summary { min-height: 0; padding: 24px 20px; grid-template-columns: 28px minmax(0, 1fr) 20px; }
  .home-page .gap-domain summary small { grid-column: 1 / -1; }
  .home-page .gap-domain ul { grid-template-columns: minmax(0, 1fr); margin: 0 20px 24px 48px; }
  .home-page .verification-path-extended {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
    width: min(260px, 100%);
  }
  .home-page .verification-path-extended i { width: 1px; height: 22px; margin: 0 auto; }
  .home-page .verification-path-extended span { width: 100%; padding: 10px; border: 1px solid var(--line); }
  .home-page .pathway-note { text-align: left; }

  .home-page .stack-tabs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-page .stack-tabs button { min-height: 96px; padding: 16px 12px; }
  .home-page .stack-tabs button:nth-child(2n) { border-right: 0; }
  .home-page .stack-tabs button span { margin-bottom: 10px; }
  .home-page .stack-panel { grid-template-columns: 28px minmax(0, 1fr); gap: 10px 14px; min-height: 0; padding: 24px 18px; }
  .home-page .stack-panel p { grid-column: 1 / -1; }
  .home-page .section-closing { margin-top: 24px; }

  .home-page .lifecycle-path { display: block; }
  .home-page .lifecycle-path li { border-top: 1px solid var(--line); }
  .home-page .lifecycle-path summary {
    grid-template-columns: 32px minmax(0, 1fr);
    justify-items: start;
    min-height: 0;
    padding: 14px 4px;
    text-align: left;
  }
  .home-page .lifecycle-path summary span { grid-row: 1; }
  .home-page .lifecycle-path details p,
  .home-page .lifecycle-path li:first-child details p,
  .home-page .lifecycle-path li:last-child details p {
    position: static;
    width: auto;
    margin: 0 0 16px 46px;
    padding: 0 12px 0 0;
    border: 0;
    background: transparent;
    box-shadow: none;
    transform: none;
  }

  .home-page .capability-plates { grid-template-columns: minmax(0, 1fr); }
  .home-page .capability-plates span { min-height: 38px; }
  .home-page .architecture-closing { margin-top: 0; }
  .home-page .evidence-output-strip { padding: 24px 20px; }
  .home-page .evidence-output-strip ul { grid-template-columns: minmax(0, 1fr); }

  .home-page .audience-grid article,
  .home-page .audience-grid article:last-child { grid-column: auto; max-width: none; min-height: 0; }
  .home-page .audience-grid article > span { margin-bottom: 26px; }
}

@media (max-width: 390px) {
  .home-page .stack-tabs { grid-template-columns: minmax(0, 1fr); }
  .home-page .stack-tabs button { min-height: 70px; border-right: 0; }
  .home-page .stack-tabs button span { display: inline; margin: 0 12px 0 0; }
  .home-page .gap-domain summary strong { font-size: 1.38rem; }
}

/* Final surface rhythm and narrow-screen composition. */
body.page-about .inner-editorial-section { background: linear-gradient(105deg, rgba(247, 248, 247, 0.9), rgba(233, 238, 242, 0.42)); }
body.page-about .mission-vision-section { background: rgba(255, 253, 248, 0.72); }
body.page-about .inner-concept-section { background: linear-gradient(105deg, rgba(233, 238, 242, 0.58), rgba(247, 248, 247, 0.88)); }
body.page-about .inner-principles-section { background: rgba(233, 238, 242, 0.5); }

body.page-initiative .inner-priorities-section { background: linear-gradient(105deg, rgba(233, 238, 242, 0.78), rgba(247, 248, 247, 0.65)); }
body.page-initiative .inner-activity-section { background: rgba(255, 253, 248, 0.7); }
body.page-initiative .inner-audience-section { background: rgba(247, 248, 247, 0.9); }

body.page-alliance .inner-editorial-section { background: rgba(241, 237, 228, 0.78); }
body.page-alliance .inner-activity-section { background: rgba(255, 253, 248, 0.72); }
body.page-alliance .contributor-framework-section { background: rgba(247, 248, 247, 0.94); }
body.page-alliance .alliance-form-section { background: rgba(241, 237, 228, 0.62); }

body.page-services .service-areas-section { background: rgba(255, 253, 248, 0.76); }
body.page-services .service-audience-section { background: rgba(247, 248, 247, 0.9); }
body.page-services .service-boundaries-section { background: rgba(255, 253, 248, 0.72); }

body.page-trust-lab .inner-editorial-section { background: rgba(255, 253, 248, 0.72); }
body.page-trust-lab .inner-audience-section { background: rgba(247, 248, 247, 0.9); }

body.page-partners .inner-editorial-section { background: rgba(255, 253, 248, 0.72); }
body.page-partners .inner-audience-section { background: rgba(233, 238, 242, 0.64); }
body.page-partners .participation-terms-section { background: rgba(241, 237, 228, 0.72); }

body.page-contact .direct-contact-section { background: linear-gradient(105deg, rgba(255, 253, 248, 0.96), rgba(247, 248, 247, 0.88)); }

@media (max-width: 620px) {
  body.inner-page .inner-page-main > .section { padding-block: 48px; }
  body.inner-page .inner-page-hero { padding-block: 60px; }
  body.inner-page .inner-page-hero h1 {
    max-width: 13ch;
    font-size: clamp(2.35rem, 10.2vw, 3.4rem);
    letter-spacing: -0.046em;
    line-height: 1.01;
  }
  body.inner-page .inner-page-hero > p:not(.eyebrow) { font-size: 0.98rem; line-height: 1.62; }
  body.inner-page .section-heading { margin-bottom: 25px; }
  body.inner-page .inner-route-grid > *,
  body.inner-page .inner-principles-grid > article,
  body.inner-page .inner-activity-grid > article,
  body.inner-page .decision-family-grid > article,
  body.inner-page .research-domain-grid > article,
  body.inner-page .partnership-route-grid > article,
  body.inner-page .contact-route-grid > a,
  body.inner-page .emerging-environment-grid > article { padding: 21px 18px; }
  body.inner-page .inner-definition-strip > span,
  body.inner-page .inner-audience-grid > span { min-height: 62px; padding: 14px 15px; }
}
@media (min-width: 421px) and (max-width: 620px) {
  body.inner-page .inner-audience-grid,
  body.inner-page .inner-definition-strip,
  body.page-services .outcomes-grid,
  body.page-contact .contact-route-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.page-about .inner-principles-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.page-about .inner-principles-grid > article,
  body.page-about .inner-principles-grid > article:nth-child(1),
  body.page-about .inner-principles-grid > article:nth-child(2),
  body.page-about .inner-principles-grid > article:nth-child(n + 3) { grid-column: auto; }
  body.page-contact .contact-route-grid > a:nth-child(even) { border-left: 1px solid var(--inner-line); }
}
@media (max-width: 420px) {
  body.page-services .outcomes-grid,
  body.page-contact .contact-route-grid { grid-template-columns: 1fr; }
  body.page-contact .contact-route-grid > a:nth-child(even) { border-left: 0; }
}
/* About hero correction: composed copy and architecture. */
body.inner-page .inner-hero-visual,
body.inner-page .inner-secondary-visual {
  background: rgba(255, 253, 248, 0.68);
  background-size: auto;
}
body.page-trust-lab .inner-hero-visual,
body.page-trust-lab .inner-secondary-visual {
  background: rgba(5, 25, 54, 0.58);
}
body.page-about .inner-page-hero.inner-hero-with-visual {
  grid-template-columns: minmax(0, 0.98fr) minmax(380px, 0.86fr);
  align-items: center;
  column-gap: clamp(42px, 7vw, 118px);
}
body.page-about .inner-page-hero.inner-hero-with-visual::before,
body.page-about .inner-page-hero.inner-hero-with-visual::after { display: none; }
body.page-about .inner-hero-copy {
  grid-column: 1;
  grid-row: 1;
  align-self: center;
}
body.page-about .inner-hero-copy h1 { max-width: 13.5ch; }
body.page-about .inner-hero-visual {
  border: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
}
body.page-about .inner-hero-visual::before { display: none; }
body.page-about .inner-hero-visual img { width: min(100%, 570px); margin-inline: auto; }
@media (min-width: 901px) {
  body.page-about .inner-hero-visual { grid-column: 2; grid-row: 1; align-self: center; }
}
@media (max-width: 900px) {
  body.page-about .inner-hero-copy { grid-column: 1; grid-row: auto; }
  body.page-about .inner-hero-visual { width: min(100%, 620px); }
}/* Inner-page hero weight and About AI sentinel. */
body.inner-page .inner-page-hero h1 { font-weight: 400; }@media (prefers-reduced-motion: reduce) {
  .home-page .gap-domain,
  .home-page .stack-tabs button{ transition: none; }
}

.force-reduced-motion .gap-domain,
.force-reduced-motion .stack-tabs button{ transition: none; }
/* Hybrid route reveal compatibility */
.motion-ready [data-motion="routes"].is-visible > .band-inner > div {
  opacity: 1;
  transform: translateY(0);
}
/* Homepage consolidation and progressive disclosure pass */
.home-page [hidden]{display:none!important}
.home-page main>section[id]{scroll-margin-top:92px}
.home-page{--con-space:clamp(54px,4.4vw,72px);--chapter-heading:clamp(2.45rem,3.2vw,3.55rem);--support-heading:clamp(2.2rem,2.75vw,3.05rem)}
.home-page .gap-landscape-band .band-inner,.home-page .connected-stack-band .band-inner,.home-page .lifecycle-band .band-inner,.home-page .expanded-support-band .band-inner{padding-block:var(--con-space)}
.home-page .section-intro{margin-bottom:clamp(28px,3vw,40px)}
.home-page .section-intro h2{max-width:820px;font-size:var(--chapter-heading);line-height:1.04}
.home-page .compact-intro{margin-bottom:32px}
.home-page .compact-intro h2,.home-page .expanded-support-band h2{font-size:var(--support-heading)}
.home-page .section-summary{max-width:900px;margin:24px 0 0;color:var(--ink-soft);font-size:.98rem;line-height:1.72}
.home-page .split-intro{grid-template-columns:minmax(0,1fr) minmax(300px,.66fr);gap:clamp(38px,5vw,76px)}
.home-page .split-intro>p,.home-page .split-intro>div:last-child p{font-size:.94rem;line-height:1.66}
.home-page .lead-line{font-size:clamp(1.3rem,1.65vw,1.7rem)!important}
.home-page [data-disclosure-button]{appearance:none;width:100%;border:0;border-radius:0;color:inherit;background:transparent;font:inherit;text-align:left;cursor:pointer}
.home-page [data-disclosure-button]:focus-visible{outline:2px solid var(--gold);outline-offset:-3px}
.home-page .expand-indicator{position:relative;display:block;width:20px;height:20px;border:1px solid rgba(180,137,61,.62);border-radius:50%}
.home-page .expand-indicator:before,.home-page .expand-indicator:after{content:"";position:absolute;top:50%;left:50%;width:8px;height:1px;background:currentColor;transform:translate(-50%,-50%)}
.home-page .expand-indicator:after{transform:translate(-50%,-50%) rotate(90deg)}
.home-page [aria-expanded=true] .expand-indicator:after{transform:translate(-50%,-50%)}
.home-page .landscape-intro{max-width:1040px}
.home-page .gap-domain-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:1px;border:1px solid var(--line);background:var(--line)}
.home-page .gap-domain-item{position:relative;min-width:0;min-height:332px;color:var(--navy);background:rgba(255,253,248,.94);overflow:clip;transition:background-color var(--motion-fast) ease,box-shadow var(--motion-base) ease}
.home-page .gap-domain-item.is-active{background:linear-gradient(150deg,rgba(233,241,253,.96),rgba(255,253,248,.94));box-shadow:inset 0 3px 0 var(--gold)}
.home-page .gap-domain-item>button{display:grid;grid-template-columns:34px 58px minmax(0,1fr) 24px;grid-template-rows:auto auto;gap:10px 16px;min-height:228px;padding:25px 26px}
.home-page .gap-domain-item.is-active>button{padding-bottom:120px}
.home-page .domain-number,.home-page .tile-number{color:var(--gold-dark);font-family: var(--font-label);font-size:.62rem;letter-spacing:.08em}
.home-page .domain-icon{position:relative;grid-row:1/3;width:48px;height:48px;border:1px solid rgba(65,82,120,.34);background:rgba(255,253,248,.58)}
.home-page .domain-icon:before,.home-page .domain-icon:after{content:"";position:absolute}
.home-page .gap-icon-evidence:before{inset:10px;border:1px solid var(--legacy-blue-700);transform:rotate(45deg)}
.home-page .gap-icon-evidence:after{top:23px;left:7px;width:34px;border-top:1px solid var(--gold)}
.home-page .gap-icon-control:before{top:8px;left:22px;height:32px;border-left:1px solid var(--legacy-blue-700)}
.home-page .gap-icon-control:after{top:23px;left:7px;width:34px;border-top:1px solid var(--gold)}
.home-page .gap-icon-dependency:before{top:10px;left:7px;width:30px;height:25px;border:1px solid var(--legacy-blue-700)}
.home-page .gap-icon-dependency:after{top:17px;left:14px;width:27px;height:22px;border:1px solid var(--gold)}
.home-page .gap-icon-accountability{border-radius:50%}
.home-page .gap-icon-accountability:before{inset:8px;border:1px solid var(--legacy-blue-700);border-radius:50%}
.home-page .gap-icon-accountability:after{top:12px;left:23px;height:17px;border-left:1px solid var(--gold);transform:rotate(35deg);transform-origin:bottom}
.home-page .gap-domain-item button strong{color:var(--navy);font-family: var(--font-heading);font-size:clamp(1.42rem,1.8vw,1.82rem);font-weight:500;line-height:1.12}
.home-page .gap-domain-item button small{grid-column:3/5;max-width:520px;color:var(--ink-soft);font-size:.83rem;line-height:1.55}
.home-page .gap-domain-item .expand-indicator{grid-column:4;grid-row:1;justify-self:end}
.home-page .domain-detail{position:absolute;right:26px;bottom:22px;left:134px;padding-top:14px;border-top:1px solid rgba(65,82,120,.2)}
.home-page .domain-detail ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 22px;margin:0;padding-left:16px;color:var(--ink-soft);font-size:.72rem;line-height:1.4}
.home-page .verification-pathway-system{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.55fr);gap:34px;align-items:center;margin-top:30px}
.home-page .verification-path-extended{margin:0}
.home-page .verification-path-extended .continuous-state{position:relative;border-color:var(--gold);color:var(--navy);background:rgba(209,178,115,.16)}
.home-page .verification-path-extended .continuous-state:after{content:"";position:absolute;top:50%;right:-11px;width:16px;height:16px;border:1px solid var(--gold);border-left-color:transparent;border-radius:50%;transform:translateY(-50%)}
.home-page .pathway-note{margin:0;text-align:left;font-size:.78rem;line-height:1.55}
.home-page .connected-stack-band{position:relative;border-bottom:0}
.home-page .stack-trust-rail{min-height:64px;padding:14px 22px}
.home-page .stack-tabs button{min-height:106px;padding:17px 11px;font-size:.68rem}
.home-page .stack-tabs button span{margin-bottom:16px}
.home-page .stack-panels{min-height:188px}
.home-page .stack-panel{grid-template-columns:42px minmax(240px,.72fr) minmax(300px,.9fr);min-height:188px;padding:26px 34px}
.home-page .stack-panel>div{min-width:0}
.home-page .stack-panel h3{font-size:clamp(1.65rem,2.05vw,2.25rem)}
.home-page .stack-panel p{margin-top:7px;font-size:.86rem;line-height:1.55}
.home-page .stack-panel ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 24px;margin:0;padding-left:18px;color:rgba(239,244,251,.75);font-size:.76rem;line-height:1.42}
.home-page .stack-panel-controls{display:flex;justify-content:flex-end;gap:1px;border-top:1px solid rgba(189,209,231,.18)}
.home-page .stack-panel-controls button{min-width:118px;padding:10px 14px;border:0;border-left:1px solid rgba(189,209,231,.18);color:rgba(239,244,251,.76);background:rgba(65,82,120,.13);font-family: var(--font-label);font-size:.58rem;letter-spacing:.05em;text-transform:uppercase}
.home-page .stack-panel-controls button:hover,.home-page .stack-panel-controls button:focus-visible{color:var(--gold-light);background:rgba(65,82,120,.28)}
.home-page .section-closing{margin-top:22px;font-size:clamp(1.18rem,1.45vw,1.45rem)}

/* Consolidated public architecture and decision systems */
.home-page .architecture-band .band-inner{padding-block:clamp(58px,4.6vw,72px)}
.home-page .fidelity-architecture{grid-template-columns:minmax(310px,.62fr) minmax(0,1.38fr);gap:clamp(34px,4vw,58px)}
.home-page .concept-label{width:fit-content;margin:-2px 0 17px!important;padding:5px 8px;border:1px solid rgba(180,137,61,.46);color:var(--gold-dark)!important;font-family: var(--font-label);font-size:.56rem!important;letter-spacing:.07em;line-height:1.2!important;text-transform:uppercase}
.home-page .architecture-copy h2{font-size:var(--support-heading)}
.home-page .architecture-closing-inline{margin-top:22px!important;padding-top:18px;border-top:1px solid var(--line);color:var(--navy)!important;font-family: var(--font-heading);font-size:clamp(1.12rem,1.35vw,1.35rem)!important;line-height:1.34!important}
.home-page .trust-architecture-25d{min-height:610px;padding-top:10px}
.home-page .architecture-stage{min-height:580px;padding-top:16px}
.home-page .architecture-volume small{font-size:.57rem}
.home-page .architecture-detail{margin-top:5px}
.home-page .infrastructure-panel{row-gap:30px}
.home-page .infrastructure-items button[aria-pressed=true]{color:var(--navy-deep);background:var(--gold-light);box-shadow:inset 0 0 0 1px rgba(255,253,248,.55)}
.home-page .infra-detail{min-height:2.8em}
.home-page .infrastructure-band,.home-page .infrastructure-chapter{border-bottom:0;border-top:0}
.home-page .maturity-label{grid-column:1;color:var(--gold-dark);font-family: var(--font-label);font-size:.55rem;letter-spacing:.07em;text-transform:uppercase}

/* Consolidated routes, audience families, credibility{padding-block:clamp(54px,4.2vw,68px)}
.home-page .expanded-support-band{background:var(--legacy-blue-050)}
.home-page .audience-family-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:1px;border:1px solid rgba(65,82,120,.2);background:rgba(65,82,120,.2)}
.home-page .audience-family{position:relative;min-width:0;min-height:286px;background:rgba(255,253,248,.76);overflow:clip}
.home-page .audience-family.is-active{background:linear-gradient(150deg,rgba(255,253,248,.94),rgba(233,241,253,.9));box-shadow:inset 0 3px 0 var(--gold)}
.home-page .audience-family>button{display:grid;grid-template-columns:28px 42px minmax(0,1fr) 22px;grid-template-rows:auto auto;gap:10px 13px;min-height:212px;padding:24px}
.home-page .audience-family.is-active>button{padding-bottom:82px}
.home-page .audience-family button>span:first-child{color:var(--gold-dark);font-family: var(--font-label);font-size:.6rem}
.home-page .audience-family .line-icon{grid-row:1/3;width:36px;height:36px;color:var(--legacy-blue-700)}
.home-page .audience-family button strong{color:var(--navy);font-family: var(--font-heading);font-size:clamp(1.28rem,1.6vw,1.62rem);font-weight:500;line-height:1.14}
.home-page .audience-family button small{grid-column:3/5;color:var(--ink-soft);font-size:.79rem;line-height:1.5}
.home-page .audience-family .expand-indicator{grid-column:4;grid-row:1;justify-self:end}
.home-page .audience-detail{position:absolute;right:24px;bottom:19px;left:107px;padding-top:11px;border-top:1px solid rgba(65,82,120,.2)}
.home-page .audience-detail p{margin:0;color:var(--legacy-blue-700);font-family: var(--font-label);font-size:.62rem;line-height:1.5}
.home-page .home-cta{padding-block:clamp(42px,3.5vw,52px)}.home-page .home-cta h2{font-size:clamp(2.08rem,2.45vw,2.55rem)}.home-page .home-cta .cta-copy>p:not(.eyebrow){font-size:.87rem;line-height:1.58}
.home-page .footer-statement{margin-bottom:26px;padding-bottom:24px}.home-page .footer-statement p{max-width:920px;font-size:clamp(1.8rem,2vw,2.45rem)}.home-page .site-footer.premium-footer{padding-top:clamp(42px,3.5vw,54px)}
@media(max-width:1180px){
.home-page .gap-domain-item>button{grid-template-columns:28px 48px minmax(0,1fr) 22px}.home-page .domain-detail{left:117px}
.home-page .stack-tabs{grid-template-columns:repeat(4,minmax(0,1fr))}.home-page .stack-panel{grid-template-columns:36px minmax(220px,.72fr) minmax(260px,1fr)}
.home-page .fidelity-architecture{grid-template-columns:minmax(0,1fr)}.home-page .architecture-copy{max-width:720px}.home-page .trust-architecture-25d{width:100%}
}
@media(max-width:900px){
.home-page .split-intro{grid-template-columns:minmax(0,1fr);gap:22px}.home-page .verification-pathway-system{grid-template-columns:minmax(0,1fr);gap:16px}.home-page .stack-panel{grid-template-columns:34px minmax(0,1fr)}.home-page .stack-panel ul{grid-column:1/-1}
.home-page .audience-family-grid{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:760px){
.home-page{--con-space:48px}.home-page main>section[id]{scroll-margin-top:78px}.home-page .section-intro h2,.home-page .compact-intro h2,.home-page .expanded-support-band h2{font-size:clamp(2.08rem,9vw,2.55rem)}.home-page .section-summary{font-size:.88rem;line-height:1.62}
.home-page .gap-domain-grid,.home-page .audience-family-grid{grid-template-columns:minmax(0,1fr)}
.home-page .gap-domain-item,.home-page .audience-family{min-height:0}
.home-page .gap-domain-item>button,.home-page .gap-domain-item.is-active>button{grid-template-columns:26px 42px minmax(0,1fr) 22px;min-height:0;padding:20px 18px}.home-page .domain-icon{width:40px;height:40px}.home-page .gap-domain-item button small{grid-column:1/-1;margin-top:5px}
.home-page .domain-detail,.home-page .decision-detail,.home-page .emerging-detail,.home-page .audience-detail{position:static;margin:0 18px 20px;padding-top:14px}.home-page .domain-detail ul{grid-template-columns:minmax(0,1fr)}
.home-page .verification-pathway-system{margin-top:24px}.home-page .verification-path-extended{width:min(280px,100%)}.home-page .verification-path-extended .continuous-state:after{right:-8px}
.home-page .stack-trust-rail{padding:13px 16px}.home-page .stack-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.home-page .stack-tabs button{min-height:82px;padding:13px 10px}.home-page .stack-panel{grid-template-columns:28px minmax(0,1fr);min-height:0;padding:21px 17px}.home-page .stack-panel ul{grid-template-columns:minmax(0,1fr)}.home-page .stack-panel-controls button{min-width:50%}
.home-page .trust-architecture-25d,.home-page .architecture-stage{min-height:0}.home-page .architecture-closing-inline{font-size:1.08rem!important}
.home-page .audience-family>button,.home-page .audience-family.is-active>button{grid-template-columns:25px 38px minmax(0,1fr) 20px;min-height:0;padding:20px 18px}.home-page .audience-family button small{grid-column:1/-1}.home-page .audience-detail{margin-left:18px}
.home-page .home-cta{padding-block:40px}.home-page .home-cta h2{font-size:clamp(1.95rem,8.2vw,2.3rem)}.home-page .footer-statement p{font-size:clamp(1.55rem,6.5vw,1.9rem)}
}
@media(max-width:390px){.home-page .stack-tabs{grid-template-columns:minmax(0,1fr)}.home-page .stack-tabs button{min-height:58px}.home-page .gap-domain-item button strong,.home-page .audience-family button strong{font-size:1.26rem}}
@media(prefers-reduced-motion:reduce){.home-page .gap-domain-item,.home-page .lifecycle-stage button span,.home-page .audience-family{transition:none}}
.force-reduced-motion .gap-domain-item,.force-reduced-motion .lifecycle-stage button span,.force-reduced-motion .audience-family{transition:none}

/* Consolidation density refinement after rendered height audit */
.home-page{--con-space:clamp(46px,3.7vw,60px);--chapter-heading:clamp(2.35rem,2.9vw,3.25rem);--support-heading:clamp(2.08rem,2.5vw,2.8rem)}
.home-page .section-intro{margin-bottom:26px}.home-page .section-summary{margin-top:18px;font-size:.91rem;line-height:1.62}
.home-page .gap-domain-item{min-height:278px}.home-page .gap-domain-item>button{min-height:190px;padding:21px 23px}.home-page .gap-domain-item.is-active>button{padding-bottom:96px}.home-page .domain-icon{width:43px;height:43px}.home-page .gap-domain-item button strong{font-size:clamp(1.32rem,1.6vw,1.62rem)}.home-page .gap-domain-item button small{font-size:.77rem;line-height:1.45}.home-page .domain-detail{right:23px;bottom:17px;left:125px;padding-top:10px}.home-page .domain-detail ul{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px 18px;font-size:.66rem;line-height:1.35}.home-page .verification-pathway-system{margin-top:23px}.home-page .pathway-note{font-size:.72rem}
.home-page .stack-tabs button{min-height:94px}.home-page .stack-panels,.home-page .stack-panel{min-height:170px}.home-page .stack-panel{padding-block:22px}.home-page .section-closing{margin-top:16px}.home-page .compact-intro{margin-bottom:25px}
.home-page .architecture-band .band-inner{padding-block:50px}.home-page .trust-architecture-25d{min-height:570px}.home-page .architecture-stage{min-height:540px}.home-page .architecture-closing-inline{margin-top:16px!important;padding-top:14px}
.home-page .infrastructure-panel{row-gap:24px}
.home-page .audience-family{min-height:240px}.home-page .audience-family>button{min-height:175px;padding:20px}.home-page .audience-family.is-active>button{padding-bottom:70px}.home-page .audience-family button strong{font-size:clamp(1.18rem,1.45vw,1.45rem)}.home-page .audience-family button small{font-size:.72rem;line-height:1.42}.home-page .audience-detail{right:20px;bottom:15px;left:98px;padding-top:8px}.home-page .audience-detail p{font-size:.56rem;line-height:1.4}
.home-page .home-cta{padding-block:36px}.home-page .site-footer.premium-footer{padding-top:38px}
@media(max-width:1180px){}
@media(max-width:900px){}
@media(max-width:760px){
.home-page{--con-space:40px}.home-page .section-intro{margin-bottom:20px}.home-page .section-intro h2,.home-page .compact-intro h2,.home-page .expanded-support-band h2{font-size:clamp(1.9rem,8vw,2.25rem)}.home-page .section-summary{font-size:.8rem;line-height:1.52}
.home-page .gap-domain-item>button,.home-page .gap-domain-item.is-active>button{grid-template-columns:22px 36px minmax(0,1fr) 20px;padding:15px 14px;gap:8px 10px}.home-page .domain-icon{width:34px;height:34px}.home-page .gap-domain-item button strong{font-size:1.16rem}.home-page .gap-domain-item button small{font-size:.69rem;line-height:1.42}.home-page .domain-detail{margin:0 14px 15px;padding-top:10px}.home-page .domain-detail ul{font-size:.64rem}.home-page .verification-path-extended span{padding:8px;font-size:.62rem}.home-page .verification-path-extended i{height:16px}
.home-page .stack-tabs{grid-template-columns:repeat(2,minmax(0,1fr))!important}.home-page .stack-tabs button{min-height:68px;padding:9px;font-size:.62rem}.home-page .stack-tabs button span{margin-bottom:5px}.home-page .stack-panel{padding:17px 14px}.home-page .stack-panel h3{font-size:1.45rem}.home-page .stack-panel p,.home-page .stack-panel ul{font-size:.69rem}
.home-page .architecture-band .band-inner{padding-block:42px}.home-page .architecture-copy h2{font-size:2rem}.home-page .architecture-copy>p:not(.eyebrow):not(.concept-label){font-size:.82rem;line-height:1.52}.home-page .architecture-canopy{min-height:86px}.home-page .architecture-volume{min-height:128px}.home-page .capability-plates span{min-height:30px}.home-page .sovereignty-foundation span{min-height:36px}
.home-page .audience-family>button,.home-page .audience-family.is-active>button{grid-template-columns:22px 34px minmax(0,1fr) 19px;padding:15px 14px;gap:8px 9px}.home-page .audience-family .line-icon{width:30px;height:30px}.home-page .audience-family button strong{font-size:1.12rem}.home-page .audience-family button small{font-size:.67rem}.home-page .audience-detail{margin:0 14px 14px;padding-top:8px}
.home-page .home-cta{padding-block:34px}.home-page .site-footer.premium-footer{padding-top:34px}
}

/* Final consolidation density: keep the overview complete without repeating full summaries. */
@media (min-width: 1200px) {
  .home-page .gap-domain-grid,
  .home-page .audience-family-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .home-page .gap-domain-item {
    min-height: 318px;
  }

  .home-page .gap-domain-item > button {
    grid-template-columns: 26px 42px minmax(0, 1fr) 20px;
    gap: 9px 10px;
    min-height: 206px;
    padding: 20px 17px;
  }

  .home-page .gap-domain-item.is-active > button {
    padding-bottom: 142px;
  }

  .home-page .domain-icon {
    width: 38px;
    height: 38px;
  }

  .home-page .gap-domain-item button strong {
    font-size: 1.26rem;
  }

  .home-page .gap-domain-item button small {
    grid-column: 1 / -1;
    margin-top: 5px;
  }

  .home-page .domain-detail {
    right: 17px;
    bottom: 17px;
    left: 17px;
  }

  .home-page .domain-detail ul {
    grid-template-columns: minmax(0, 1fr);
  }

  .home-page .emerging-detail {
    right: 18px;
    left: 18px;
  }

  .home-page .audience-family {
    min-height: 278px;
  }

  .home-page .audience-family > button {
    grid-template-columns: 22px 34px minmax(0, 1fr) 20px;
    gap: 8px 9px;
    min-height: 188px;
    padding: 19px 16px;
  }

  .home-page .audience-family.is-active > button {
    padding-bottom: 94px;
  }

  .home-page .audience-family .line-icon {
    width: 30px;
    height: 30px;
  }

  .home-page .audience-family button strong {
    font-size: 1.18rem;
  }

  .home-page .audience-family button small {
    grid-column: 1 / -1;
  }

  .home-page .audience-detail {
    right: 16px;
    left: 16px;
  }
}


/* Compact selectors for small screens: selected context remains visible. */
@media (max-width: 760px) {
  .home-page .gap-domain-item > button,
  .home-page .gap-domain-item.is-active > button,
  .home-page .audience-family > button,
  .home-page .audience-family.is-active > button {
    grid-template-columns: 22px minmax(0, 1fr) 20px;
    min-height: 62px;
    padding: 12px 14px;
  }

  .home-page .gap-domain-item .domain-icon,
  .home-page .audience-family .line-icon,
  .home-page .gap-domain-item button small,
  .home-page .audience-family button small {
    display: none;
  }

  .home-page .gap-domain-item button strong,
  .home-page .audience-family button strong {
    grid-column: 2;
    align-self: center;
    font-size: 1.02rem;
  }

  .home-page .gap-domain-item .expand-indicator,
  .home-page .audience-family .expand-indicator {
    grid-column: 3;
  }

  .home-page .domain-detail,
  .home-page .decision-detail,
  .home-page .audience-detail {
    margin: 0 14px 14px 48px;
  }

  .home-page .domain-detail ul {
    margin: 0;
  }

  .home-page .lifecycle-phases {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1px;
    background: var(--line);
  }

  .home-page .lifecycle-phases::before {
    display: none;
  }

  .home-page .lifecycle-phase {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-content: start;
    gap: 2px 6px;
    padding: 12px 10px;
    border: 0;
    background: var(--warm-white);
  }

  .home-page .lifecycle-phase:last-child {
    grid-column: 1 / -1;
  }

  .home-page .lifecycle-phase h3 {
    grid-column: 1 / -1;
    margin-bottom: 4px;
  }

  .home-page .lifecycle-stage > button {
    grid-template-columns: 24px minmax(0, 1fr);
    gap: 5px;
    padding: 5px 0;
  }

  .home-page .lifecycle-stage button span {
    width: 22px;
    height: 22px;
  }

  .home-page .lifecycle-stage button strong {
    font-size: 0.65rem;
  }

  .home-page .stage-detail {
    margin: 4px 0;
  }

  .home-page .emerging-detail {
    margin: 0 12px 12px;
    padding-top: 8px;
  }
}

@media (max-width: 760px) {
  .home-page .gap-domain-item,
  .home-page .audience-family {
    min-height: 0;
  }
}


/* Preserve the editorial finish while meeting the consolidation target. */
@media (min-width: 761px) {
  .home-page .home-cta {
    padding-block: 26px;
  }
}


/* Required desktop 2x2 systems use one shared detail zone. */
@media (min-width: 1200px) {
  .home-page .gap-domain-grid,
  .home-page .audience-family-grid {
    position: relative;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .home-page .gap-domain-grid {
    padding-bottom: 112px;
  }

  .home-page .gap-domain-item {
    position: static;
    min-height: 138px;
    overflow: visible;
  }

  .home-page .gap-domain-item > button,
  .home-page .gap-domain-item.is-active > button {
    min-height: 138px;
    padding: 17px 19px;
  }

  .home-page .gap-domain-item button small {
    grid-column: 3 / 5;
    margin-top: 0;
  }

  .home-page .domain-detail {
    right: 20px;
    bottom: 16px;
    left: 20px;
    min-height: 78px;
  }

  .home-page .domain-detail ul {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .home-page .emerging-detail {
    right: 20px;
    bottom: 14px;
    left: 20px;
  }

  .home-page .audience-family-grid {
    padding-bottom: 74px;
  }

  .home-page .audience-family {
    position: static;
    min-height: 144px;
    overflow: visible;
  }

  .home-page .audience-family > button,
  .home-page .audience-family.is-active > button {
    min-height: 144px;
    padding: 16px 18px;
  }

  .home-page .audience-family button small {
    grid-column: 3 / 5;
  }

  .home-page .audience-detail {
    right: 18px;
    bottom: 13px;
    left: 18px;
  }
}


/* Desktop chapter rhythm and shared decision detail zone. */
@media (min-width: 1200px) {
  .home-page .gap-landscape-band .band-inner,
  .home-page .connected-stack-band .band-inner,
  .home-page .expanded-support-band .band-inner{
    padding-block: 48px;
  }

  .home-page .decision-detail {
    right: 18px;
    bottom: 14px;
    left: 18px;
  }
}


/* Final desktop chapter padding after 2x2 restoration. */
@media (min-width: 1200px) {
  .home-page .gap-landscape-band .band-inner,
  .home-page .connected-stack-band .band-inner,
  .home-page .expanded-support-band .band-inner{
    padding-block: 41px;
  }
}


/* Lifecycle detail belongs to the whole route, not an individual phase. */
@media (min-width: 761px) {
  .home-page .lifecycle-phases,
  .home-page .lifecycle-phase {
    position: static;
  }
}


/* Mobile lifecycle is a vertical five-phase timeline. */
@media (max-width: 760px) {
  .home-page .lifecycle-phases {
    display: block;
    padding-left: 24px;
    background: transparent;
  }

  .home-page .lifecycle-phases::before {
    display: block;
    top: 18px;
    bottom: 18px;
    left: 12px;
    width: 1px;
    height: auto;
    background: linear-gradient(180deg, var(--gold), var(--legacy-blue-400), var(--gold));
  }

  .home-page .lifecycle-phase {
    display: flex;
    flex-wrap: wrap;
    gap: 3px 8px;
    padding: 11px 0 12px 16px;
    border-bottom: 1px solid var(--line);
    background: transparent;
  }

  .home-page .lifecycle-phase:last-child {
    grid-column: auto;
  }

  .home-page .lifecycle-phase h3 {
    flex: 0 0 100%;
    margin-bottom: 3px;
  }

  .home-page .lifecycle-stage {
    flex: 1 1 72px;
    min-width: 0;
  }

  .home-page .lifecycle-stage.is-active {
    flex-basis: 100%;
  }

  .home-page .lifecycle-stage > button {
    width: auto;
  }

  .home-page .stage-detail {
    margin: 4px 0 2px 29px;
  }
}

/* Final premium visual-system and interaction pass */
.home-page{--motion-fast:180ms;--motion-standard:420ms;--motion-slow:850ms;--ease-premium:cubic-bezier(.22,1,.36,1);--active-surface:#edf3f8;--active-warm:#fffaf0}
.home-page main{background:var(--ivory)}.home-page .home-band{position:relative;isolation:isolate}.home-page .home-band+.home-band:before{content:"";position:absolute;z-index:2;top:0;left:max(24px,calc((100% - 1320px)/2));right:max(24px,calc((100% - 1320px)/2));height:1px;background:linear-gradient(90deg,transparent,rgba(25,49,86,.18) 12%,rgba(184,132,48,.34) 50%,rgba(25,49,86,.18) 88%,transparent)}.home-page .connected-stack-band:before,.home-page .infrastructure-band:before{display:none}.home-page .gap-landscape-band,.home-page .lifecycle-band,.home-page .support-band{background:#fbf8f1}.home-page .section-intro h2,.home-page .compact-intro h2,.home-page .expanded-support-band h2{max-width:19ch;text-wrap:balance;line-height:1.04}.home-page .section-summary,.home-page .split-intro>p,.home-page .split-intro>div:last-child{max-width:68ch;font-size:clamp(.91rem,.82vw,1.02rem);line-height:1.68}.home-page :where(button,a,[role=button]):focus-visible{outline:2px solid var(--gold);outline-offset:4px}.home-page .line-icon{fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;overflow:visible}.home-page [data-disclosure-panel]:not([hidden]){animation:evidence-detail-in var(--motion-standard) var(--ease-premium) both}@keyframes evidence-detail-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
/* Evidence domains */
.home-page .gap-domain-grid{gap:18px;border:0;background:transparent}.home-page .gap-domain-item{display:flex;flex-direction:column;min-height:330px;overflow:hidden;border:1px solid rgba(31,58,94,.15);border-radius:2px;background:rgba(255,253,248,.74);box-shadow:0 16px 42px rgba(17,39,74,.035);transition:all var(--motion-standard) var(--ease-premium)}.home-page .gap-domain-item:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--gold);opacity:0;transform:scaleY(.25);transform-origin:50% 0;transition:all var(--motion-standard) var(--ease-premium)}.home-page .gap-domain-item.is-active{border-color:rgba(64,92,130,.28);background:linear-gradient(145deg,rgba(237,243,248,.96),rgba(255,251,241,.9));box-shadow:0 20px 55px rgba(20,45,78,.09);transform:translateY(-2px)}.home-page .gap-domain-item.is-active:before{opacity:1;transform:scaleY(1)}.home-page .gap-domain-item>button,.home-page .gap-domain-item.is-active>button{flex:0 0 auto;grid-template-columns:34px 54px minmax(0,1fr) 24px;grid-template-rows:auto auto;min-height:0;padding:28px 28px 20px;gap:11px 16px}.home-page .gap-domain-item button strong{align-self:center;font-size:clamp(1.35rem,1.6vw,1.72rem);line-height:1.08}.home-page .gap-domain-item button small{grid-column:3/5;font-size:.82rem;line-height:1.56}.home-page .domain-icon{display:block;width:48px;height:48px;padding:8px;color:var(--legacy-blue-700);border:1px solid rgba(65,82,120,.18);border-radius:50%;background:#ffffff80;transition:all var(--motion-standard) var(--ease-premium)}.home-page .gap-domain-item.is-active .domain-icon{color:var(--gold-dark);border-color:#b8843075;background:#fffaf0;transform:scale(1.04)}.home-page .domain-detail{position:static;flex:1;margin:0 28px 24px 126px;padding:16px 0 0;border-top:1px solid rgba(65,82,120,.17);background:transparent}.home-page .domain-detail:before{content:"Evidence in view";display:block;margin-bottom:10px;color:var(--gold-dark);font:600 .6rem/1.2 var(--font-label);letter-spacing:.12em;text-transform:uppercase}.home-page .domain-detail ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px;font-size:.75rem;line-height:1.48}.home-page .domain-detail li{position:relative;padding-left:14px}.home-page .domain-detail li:before{content:"";position:absolute;top:.62em;left:0;width:6px;height:1px;background:var(--gold)}.home-page .verification-pathway-system{margin-top:34px;padding:22px 24px;border:0;background:#fffdf8b8;box-shadow:inset 0 1px rgba(65,82,120,.15),inset 0 -1px rgba(65,82,120,.12)}
/* Architectural connected stack */
.home-page .connected-stack-band{overflow:hidden;background:radial-gradient(circle at 73% 52%,#5a84bb2e,transparent 32%),linear-gradient(145deg,#061a38,#0a2852 58%,#071a36)}.home-page .connected-stack-band .band-inner:after{content:"";position:absolute;z-index:-1;inset:18% -8% -8% 35%;opacity:.28;background-image:linear-gradient(#b4ccec17 1px,transparent 1px),linear-gradient(90deg,#b4ccec17 1px,transparent 1px);background-size:42px 42px;mask-image:radial-gradient(circle at 55% 50%,black,transparent 72%)}.home-page .stack-architecture{padding:1px;border:1px solid #b4ccec33;background:#03112761;box-shadow:0 30px 80px #0008193d}.home-page .stack-trust-rail{display:grid;grid-template-columns:minmax(180px,.35fr) minmax(0,1fr);align-items:center;gap:26px;padding:18px 24px;border:0;border-bottom:1px solid #b4ccec2e;background:linear-gradient(90deg,#b884302e,#ffffff09 48%,transparent)}.home-page .stack-trust-rail span{color:#f1d39b}.home-page .stack-trust-rail small{font-size:.78rem;line-height:1.55}.home-page .stack-tabs{position:relative;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;padding:18px;border:0;background:#9dbce51f}.home-page .stack-tabs:before{content:"";position:absolute;top:50%;right:38px;left:38px;height:1px;background:linear-gradient(90deg,transparent,var(--gold),#abc8ec80,var(--gold),transparent);opacity:.48}.home-page .stack-tabs button{position:relative;z-index:1;min-height:92px;padding:15px 16px;border:0;background:#051934e0;color:#e3ecf8b8;font-size:.72rem;line-height:1.35;transition:all var(--motion-standard) var(--ease-premium)}.home-page .stack-tabs button:hover{color:#fff;background:#143860e6}.home-page .stack-tabs button[aria-selected=true]{color:#fffdf7;background:linear-gradient(145deg,#2d4e74fa,#0e2b4ffa);box-shadow:inset 0 3px var(--gold),0 12px 28px #00071442;transform:translateY(-3px)}.home-page .stack-tabs button[aria-selected=true]:after{content:"";position:absolute;right:50%;bottom:-19px;width:1px;height:19px;background:var(--gold)}.home-page .stack-tabs button span{color:#d7b36b}.home-page .stack-panels{min-height:208px;border:0;border-top:1px solid #b4ccec29;background:radial-gradient(circle at 18% 35%,#4a75ab29,transparent 34%),#031228a8}.home-page .stack-panel{grid-template-columns:48px minmax(230px,.72fr) minmax(300px,1fr);min-height:208px;padding:30px 32px;background:transparent}.home-page .stack-panel h3{font-size:clamp(1.8rem,2.2vw,2.45rem)}.home-page .stack-panel p,.home-page .stack-panel ul{font-size:.81rem;line-height:1.58}.home-page .stack-panel-controls{justify-content:flex-end;border-top:1px solid #b4ccec29;background:#031024b8}.home-page .stack-panel-controls button{min-width:170px;padding:14px 18px;border:0;border-left:1px solid #b4ccec24;color:#e8eff9c7}.home-page .trust-architecture-25d .architecture-stage{filter:saturate(.9) contrast(1.07)}.home-page .architecture-canopy{border-color:#2a43635c;background:linear-gradient(#fff,#e6edf5eb);box-shadow:0 14px 24px #1229491c,inset 0 1px #fff}.home-page .architecture-volume{border-color:#24406561;background:linear-gradient(145deg,#fafcff,#dae6f2e6);box-shadow:0 16px 28px #1228461f,inset 0 1px #fff}.home-page .architecture-volume.trust-volume{border-color:#b88430bd;background:linear-gradient(145deg,#fffdf7,#f1e5c9 58%,#fff9ea);box-shadow:0 22px 44px #4b340c2e,0 0 0 4px #b8843014}.home-page .capability-plates{border-color:#2440654d;background:#fafcffef;box-shadow:0 12px 24px #12284617}.home-page .trust-data-plane{background:#17365f;color:#fff}.home-page .sovereignty-foundation{background:linear-gradient(90deg,#061a38,#0d315e,#061a38)}
/* Infrastructure and exploratory environments */
.home-page .infrastructure-items{gap:7px}.home-page .infrastructure-items button{position:relative;min-height:58px;border-color:#aecaed38;color:#e7eff9b8;background:#051936b3;transition:all var(--motion-standard) var(--ease-premium)}.home-page .infrastructure-items button:hover{color:#fff;border-color:#c6daf36b;background:#14345bdb}.home-page .infrastructure-items button[aria-pressed=true]{color:#fffdf7;border-color:#d6a9559e;background:linear-gradient(145deg,#2d4869f5,#0f2b4ff5);box-shadow:inset 0 3px var(--gold),0 9px 24px #0008183d;transform:translateY(-2px)}.home-page .infrastructure-items button[aria-pressed=true]:after{content:"";position:absolute;right:18px;bottom:-8px;left:18px;height:1px;background:var(--gold);box-shadow:0 0 12px #d6a955b3}.home-page .infra-detail{min-height:56px;font-size:.82rem;line-height:1.55}.home-page .maturity-label{color:var(--gold-dark);font-size:.58rem}
/* Connected routes{position:relative;gap:18px}
.home-page .audience-family-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px;border:0;background:transparent}.home-page .audience-family{display:flex;min-height:278px;border:0;border-block:1px solid #2a446533;background:#fffdf857;transition:all var(--motion-standard) var(--ease-premium)}.home-page .audience-family:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--gold);opacity:0;transform:scaleY(.25);transition:all var(--motion-standard) var(--ease-premium)}.home-page .audience-family.is-active{background:linear-gradient(145deg,#edf3f8e0,#fffdf89e);box-shadow:0 14px 38px #162d4c0e}.home-page .audience-family.is-active:before{opacity:1;transform:scaleY(1)}.home-page .audience-family>button,.home-page .audience-family.is-active>button{grid-template-columns:28px 46px minmax(0,1fr) 22px;grid-template-rows:auto auto;min-height:0;padding:25px 24px 16px}.home-page .audience-family .line-icon{display:block;width:40px;height:40px;padding:6px;color:var(--legacy-blue-700)}.home-page .audience-family button strong{font-size:clamp(1.26rem,1.5vw,1.58rem)}.home-page .audience-family button small{grid-column:3/5;font-size:.79rem;line-height:1.52}.home-page .audience-detail{position:static;align-self:flex-end;margin:auto 24px 21px 111px;padding-top:13px;border-top:1px solid #4152782e}.home-page .audience-detail p{color:var(--legacy-blue-700);font-family: var(--font-body);font-size:.73rem;line-height:1.55}
/* Conclusive CTA and footer */
.home-page .home-cta{position:relative;overflow:hidden;min-height:390px;padding-block:clamp(62px,7vw,104px)}.home-page .home-cta:before,.home-page .home-cta:after{content:"";position:absolute;top:50%;width:min(28vw,420px);height:1px;background:linear-gradient(90deg,transparent,#b88430a8)}.home-page .home-cta:before{left:0;transform:rotate(8deg);transform-origin:100% 50%}.home-page .home-cta:after{right:0;transform:scaleX(-1) rotate(8deg);transform-origin:100% 50%}.home-page .cta-motif{left:50%;top:50%;width:12px;height:12px;transform:translate(-50%,-50%);border:2px solid var(--gold);border-radius:50%;box-shadow:0 0 0 10px #b8843014,0 0 42px #b8843038}.home-page .cta-motif span{display:none}.home-page .home-cta .cta-copy,.home-page .home-cta .hero-actions{position:relative;z-index:1}.home-page .home-cta h2{max-width:17ch;font-size:clamp(2.55rem,4.2vw,4.6rem);text-wrap:balance}.home-page .home-cta .cta-copy>p:not(.eyebrow){max-width:67ch;font-size:.95rem}.home-page .site-footer.premium-footer{padding-top:clamp(56px,5.5vw,84px)}.home-page .footer-statement{margin-bottom:38px;padding-bottom:36px}.home-page .footer-statement p{max-width:24ch;line-height:1.1}.home-page .site-footer h3{margin-bottom:16px}.home-page .site-footer a{line-height:1.5}
html:not(.js) .home-page [data-disclosure-panel][hidden],html:not(.js) .home-page [data-stack-panel][hidden]{display:block}html:not(.js) .home-page .gap-domain-item,html:not(.js) .home-page .audience-family{min-height:0}html:not(.js) .home-page .stack-tabs,html:not(.js) .home-page .stack-panel-controls,html:not(.js) .home-page .expand-indicator{display:none}
@media(max-width:1180px){}
@media(max-width:900px){.home-page .gap-domain-item{min-height:0}.home-page .domain-detail{margin-left:120px}.home-page .stack-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.home-page .stack-panel{grid-template-columns:42px minmax(0,1fr)}.home-page .stack-panel ul{grid-column:1/-1}.home-page .audience-family-grid{grid-template-columns:1fr}.home-page .audience-family{min-height:0}}
@media(max-width:760px){.home-page{--con-space:48px}.home-page .section-intro h2,.home-page .compact-intro h2,.home-page .expanded-support-band h2{max-width:none;font-size:clamp(2rem,9vw,2.65rem)}.home-page .section-summary,.home-page .split-intro>p,.home-page .split-intro>div:last-child{font-size:.86rem}.home-page .gap-domain-grid{gap:10px}.home-page .gap-domain-item>button,.home-page .gap-domain-item.is-active>button{grid-template-columns:26px 40px minmax(0,1fr) 20px;padding:19px 16px 15px;gap:9px 10px}.home-page .domain-icon{width:38px;height:38px;padding:7px}.home-page .gap-domain-item button strong{font-size:1.22rem}.home-page .gap-domain-item button small{grid-column:1/-1;font-size:.76rem}.home-page .domain-detail{margin:0 16px 18px}.home-page .domain-detail ul{grid-template-columns:1fr;font-size:.73rem}.home-page .stack-trust-rail{grid-template-columns:1fr;gap:7px;padding:16px}.home-page .stack-tabs{padding:10px}.home-page .stack-tabs button{min-height:76px;padding:11px 10px;font-size:.66rem}.home-page .stack-panel{min-height:0;padding:22px 16px}.home-page .stack-panel p,.home-page .stack-panel ul{font-size:.76rem}.home-page .infrastructure-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.home-page .audience-family>button,.home-page .audience-family.is-active>button{grid-template-columns:26px 40px minmax(0,1fr) 20px;padding:19px 16px 14px}.home-page .audience-family .line-icon{width:36px;height:36px}.home-page .audience-family button small{grid-column:1/-1;font-size:.75rem}.home-page .audience-detail{margin:0 16px 18px}.home-page .home-cta{min-height:0;padding-block:60px}.home-page .home-cta h2{max-width:12ch;font-size:clamp(2.35rem,11vw,3.2rem)}.home-page .site-footer.premium-footer{padding-top:52px}}
@media(max-width:390px){.home-page .stack-tabs{grid-template-columns:1fr}.home-page .stack-tabs:before{display:none}.home-page .stack-tabs button{min-height:56px}.home-page .infrastructure-items{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.home-page *,.home-page *:before,.home-page *:after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}.force-reduced-motion .home-page *,.force-reduced-motion .home-page *:before,.force-reduced-motion .home-page *:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}

/* Final QA edge-case corrections */
html:not(.js) .home-page [data-disclosure-panel][hidden],
html:not(.js) .home-page [data-stack-panel][hidden]{display:block!important}
.home-page .architecture-band,
.home-page .architecture-layout,
.home-page .trust-architecture-svg{overflow-x:clip}
.home-page .architecture-layout,
.home-page .trust-architecture-svg,
.home-page .architecture-stage,
.home-page .architecture-system{min-width:0;max-width:100%}
.home-page .continuous-state{min-width:0;white-space:normal}
@media(max-width:760px){
  .home-page .stack-panel-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .home-page .stack-panel-controls button{width:100%;min-width:0}
}

/* Final coordinated homepage improvement pass */
.js .home-page [data-disclosure-button][aria-expanded="false"] + [data-disclosure-panel],
.js .home-page [data-stack-panel]:not(.is-active){display:none}
.home-page .site-nav a,
.home-page .nav-toggle,
.home-page .button,
.home-page .inline-link,
.home-page .site-footer a{min-height:44px}
.home-page .inline-link,
.home-page .site-footer a{display:inline-flex;align-items:center}
.home-page .scene-domain-controls button{min-height:44px;padding-block:7px;color:rgba(248,250,254,.92);text-shadow:0 1px 8px rgba(0,8,24,.72)}
.home-page .scene-domain-controls button span{color:rgba(226,235,248,.8)}
.home-page .gap-landscape-band .band-inner,
.home-page .support-band .band-inner{padding-block:clamp(54px,4.5vw,72px)}
.home-page .gap-domain-item{min-height:188px}
.home-page .gap-domain-item.is-active{min-height:326px}
.home-page .gap-domain-item:not(.is-active)>button{padding-bottom:27px}
.home-page .domain-detail{min-height:136px}
.home-page .verification-pathway-system{position:relative}
.home-page .verification-pathway-system:after{content:"";position:absolute;right:24px;bottom:15px;width:72px;height:18px;border-right:1px solid rgba(184,132,48,.58);border-bottom:1px solid rgba(184,132,48,.58);border-radius:0 0 18px 0}
.home-page .continuous-state{position:relative;padding-left:18px}
.home-page .continuous-state:before{content:"";position:absolute;top:50%;left:0;width:10px;border-top:1px solid var(--gold)}
.home-page .stack-tabs button[aria-selected=true]{isolation:isolate}
.home-page .stack-tabs button[aria-selected=true] span{display:inline-grid;place-items:center;min-width:25px;min-height:25px;margin-right:7px;border:1px solid rgba(241,211,155,.72);border-radius:50%;background:rgba(2,16,37,.5)}
.home-page .stack-panel-controls button{min-width:132px;padding-block:12px;color:rgba(232,239,249,.66)}
.home-page .architecture-canopy small,
.home-page .architecture-volume small{color:#274463;font-size:.64rem;line-height:1.42}
.home-page .architecture-volume>span{font-size:.75rem;letter-spacing:.065em}
.home-page .capability-plates span{font-size:.61rem;line-height:1.32}
.home-page .trust-data-plane,
.home-page .sovereignty-foundation span{font-size:.6rem;letter-spacing:.055em}
.home-page .architecture-volume.trust-volume{z-index:3;transform:translateY(-3px)}
.home-page .infra-scene-labels span{color:rgba(244,248,253,.9);font-size:.66rem;line-height:1.25;text-shadow:0 2px 10px rgba(0,9,28,.9)}
.home-page .infrastructure-items button{font-size:.64rem;line-height:1.35}
.home-page .infra-detail{display:flex;align-items:center}
.home-page .audience-family{min-height:204px}
.home-page .audience-family.is-active{min-height:282px}
.home-page .audience-family:not(.is-active)>button{padding-bottom:22px}
.home-page .audience-detail{min-height:66px}
.home-page .home-cta .button,
.home-page .premium-footer a{min-height:44px}
@media(max-width:1180px){
  .home-page .gap-domain-item{min-height:178px}
  .home-page .gap-domain-item.is-active{min-height:326px}
}
@media(max-width:760px){
  .home-page .scene-domain-controls button{min-height:44px;padding-block:9px}
  .home-page .gap-domain-item,
  .home-page .gap-domain-item.is-active,
  .home-page .audience-family,
  .home-page .audience-family.is-active{min-height:0;transform:none}
  .home-page .domain-detail{min-height:150px}
  .home-page .audience-detail{min-height:64px}
  .home-page .architecture-canopy small,
  .home-page .architecture-volume small{font-size:.61rem}
  .home-page .capability-plates span,
  .home-page .sovereignty-foundation span{font-size:.57rem}
  .home-page .infra-scene-labels span{font-size:.62rem}
}
@media(max-width:430px){
  .home-page .compact-domain-legend .scene-domain-controls button{min-height:44px;padding:8px 7px;font-size:.58rem;line-height:1.25}
  .home-page .compact-domain-legend .scene-domain-controls{row-gap:4px}
  .home-page .stack-panel-controls button{min-height:44px}
  .home-page .infrastructure-items button{min-height:52px}
}
.home-page .webgl-failed .scene-domain-controls{visibility:visible;opacity:1}

/* Final measured-density corrections */
.home-page .stack-panel-controls button,
.home-page .emerging-detail a{min-height:44px}
.home-page .premium-footer a{min-width:44px}
.home-page .gap-domain-item{min-height:164px}
.home-page .gap-domain-item.is-active{min-height:306px}
.home-page .domain-detail{min-height:118px}
.home-page .audience-family{min-height:190px}
.home-page .audience-family.is-active{min-height:258px}
.home-page .audience-detail{min-height:50px}
@media(max-width:1180px){
  .home-page .gap-domain-item{min-height:158px}
  .home-page .gap-domain-item.is-active{min-height:302px}
}
@media(max-width:760px){
  .home-page .gap-domain-item>button,
  .home-page .gap-domain-item.is-active>button{padding:15px 13px 12px;gap:7px 9px}
  .home-page .gap-domain-item button small{font-size:.72rem;line-height:1.42}
  .home-page .domain-detail{min-height:118px;margin-bottom:14px;padding-top:12px}
  .home-page .audience-family>button,
  .home-page .audience-family.is-active>button{padding:15px 13px 11px;gap:7px 9px}
  .home-page .audience-family button strong{font-size:1.14rem}
  .home-page .audience-family button small{font-size:.72rem;line-height:1.42}
  .home-page .audience-detail{min-height:48px;margin-bottom:14px;padding-top:10px}
}
/* Shared disclosure trays and single-column density */
html:not(.js) .home-page .shared-disclosure-detail{display:none}
.home-page .shared-disclosure-detail{position:relative;margin-top:14px;border-block:1px solid rgba(42,68,101,.22);background:linear-gradient(135deg,rgba(255,253,248,.9),rgba(237,243,248,.72))}
.home-page .audience-shared-detail{min-height:78px}
.home-page .emerging-shared-detail .emerging-detail,
.home-page .audience-shared-detail .audience-detail{min-height:0;margin:0;padding:18px 24px;border:0;background:transparent}
.home-page .emerging-shared-detail .emerging-detail p,
.home-page .audience-shared-detail .audience-detail p{margin:0}
.home-page .audience-family,
.home-page .audience-family.is-active{min-height:190px}
@media(max-width:900px){
  .home-page .gap-domain-item,
  .home-page .gap-domain-item.is-active,
  .home-page .audience-family,
  .home-page .audience-family.is-active{min-height:0;transform:none}
}
@media(max-width:760px){
  .home-page .audience-shared-detail{min-height:74px}
  .home-page .audience-shared-detail .audience-detail{padding:15px}
}
.home-page .audience-shared-detail{min-height:112px}
.home-page .audience-shared-detail .audience-detail{display:flex;align-items:center}
@media(max-width:900px){
}
@media(max-width:760px){
  .home-page .audience-shared-detail{min-height:132px}
}
/* Final tablet and mobile rhythm compression */
@media(max-width:900px){
  .home-page .gap-landscape-band .band-inner,
  .home-page .support-band .band-inner{padding-block:48px}
}
@media(max-width:760px){
  .home-page .gap-landscape-band .band-inner,
  .home-page .support-band .band-inner{padding-block:42px}
  .home-page .gap-domain-grid,
  .home-page .audience-family-grid{gap:7px}
  .home-page .gap-domain-item>button,
  .home-page .gap-domain-item.is-active>button{padding:12px 11px 10px}
  .home-page .domain-icon{width:34px;height:34px}
  .home-page .gap-domain-item button strong{font-size:1.12rem}
  .home-page .gap-domain-item button small{font-size:.7rem;line-height:1.38}
  .home-page .domain-detail{margin-inline:12px;padding-top:9px}
  .home-page .domain-detail ul{gap:5px;font-size:.7rem;line-height:1.38}
  .home-page .audience-family>button,
  .home-page .audience-family.is-active>button{padding:12px 11px 9px}
  .home-page .audience-family .line-icon{width:32px;height:32px}
  .home-page .audience-family button strong{font-size:1.02rem;line-height:1.16}
  .home-page .audience-family button small{font-size:.7rem;line-height:1.36}
  .home-page .audience-shared-detail{min-height:104px}
  .home-page .audience-shared-detail .audience-detail{padding:12px}
}
/* Stable verification-gap state sizing */
.home-page .gap-domain-item {
  transition-property: background-color, border-color, box-shadow, transform;
}
@media (min-width: 1181px) {
  .home-page .gap-domain-item { height: 188px; }
  .home-page .gap-domain-item.is-active { height: 350px; }
}
@media (min-width: 901px) and (max-width: 1180px) {
  .home-page .gap-domain-item { height: 200px; }
  .home-page .gap-domain-item.is-active { height: 410px; }
}
@media (min-width: 761px) and (max-width: 900px) {
  .home-page .gap-domain-grid { grid-template-columns: minmax(0, 1fr); }
  .home-page .gap-domain-item { height: 150px; }
  .home-page .gap-domain-item.is-active { height: 380px; }
}
/* Global typography, header and footer refinement */
html { font-synthesis: none; }
body {
  font-family: var(--font-body);
  font-weight: 400;
  line-height: 1.64;
}
h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-heading);
  font-style: normal;
}
h1 {
  font-weight: 500;
  line-height: 1.03;
  letter-spacing: -0.045em;
}
h2 {
  font-weight: 500;
  line-height: 1.08;
  letter-spacing: -0.034em;
}
h3 {
  font-weight: 600;
  line-height: 1.18;
  letter-spacing: -0.018em;
}
.eyebrow,
.service-label,
.site-footer h3,
.building-columns article > span,
.gap-points article > span,
.verification-themes article > span,
.route-blocks a > span,
.support-list article > span {
  font-family: var(--font-label);
  font-weight: 400;
  letter-spacing: 0.1em;
}
button,
input,
select,
textarea,
.site-nav a,
.button {
  font-family: var(--font-ui);
}

.global-brand.brand {
  display: inline-flex;
  width: fit-content;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 3px;
}
.global-header a:focus-visible,
.global-footer a:focus-visible {
  outline: 2px solid var(--gold-light);
  outline-offset: 3px;
}

.home-page .global-footer.site-footer,
.inner-page .global-footer.site-footer {
  display: grid;
  grid-template-columns: minmax(276px, 1.32fr) minmax(188px, 0.9fr) minmax(112px, 0.48fr) minmax(192px, 0.9fr);
  align-items: start;
  column-gap: clamp(32px, 4.5vw, 72px);
  row-gap: 0;
  padding: clamp(52px, 5vw, 72px) max(24px, calc((100% - var(--max)) / 2)) 28px;
  color: rgba(255,255,255,0.76);
  background: var(--navy-deep);
}
.global-footer .footer-statement {
  grid-column: 1 / -1;
  width: 100%;
  max-width: none;
  margin: 0 0 clamp(32px, 3vw, 44px);
  border-bottom: 1px solid rgba(255,255,255,0.16);
  padding: 0 0 clamp(30px, 3vw, 40px);
}
.global-footer .footer-statement p {
  max-width: 27ch;
  margin: 0;
  color: var(--white);
  font-family: var(--font-heading);
  font-size: clamp(2rem, 3.05vw, 3.35rem);
  font-weight: 500;
  line-height: 1.08;
  letter-spacing: -0.035em;
  text-wrap: balance;
}
.global-footer .footer-brand-block,
.global-footer .footer-column {
  min-width: 0;
  padding: 0;
  border: 0;
}
.global-footer .footer-brand {
  display: inline-flex;
  width: fit-content;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  margin: 0 0 22px;
}
.global-footer .footer-contact-details { display: grid; gap: 5px; }
.global-footer .footer-contact-details p {
  margin: 0;
  color: rgba(255,255,255,0.68);
  font-size: 0.8rem;
  line-height: 1.5;
}
.global-footer .footer-column {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 3px;
}
.global-footer .footer-column h3 {
  margin: 2px 0 13px;
  color: var(--gold-light);
  font-family: var(--font-label);
  font-size: 0.61rem;
  font-weight: 400;
  letter-spacing: 0.1em;
}
.global-footer .footer-column a,
.global-footer .footer-contact-details a {
  display: inline-flex;
  width: fit-content;
  max-width: 100%;
  min-height: 29px;
  align-items: center;
  margin: 0;
  color: rgba(255,255,255,0.72);
  font-family: var(--font-ui);
  font-size: 0.8rem;
  font-weight: 400;
  line-height: 1.4;
  text-decoration: underline;
  text-decoration-color: transparent;
  text-underline-offset: 4px;
}
.global-footer .footer-column a:hover,
.global-footer .footer-column a:focus-visible,
.global-footer .footer-contact-details a:hover,
.global-footer .footer-contact-details a:focus-visible {
  color: var(--white);
  text-decoration-color: var(--gold-light);
}
.global-footer .copyright {
  grid-column: 1 / -1;
  margin: clamp(32px, 3.5vw, 46px) 0 0;
  border-top: 1px solid rgba(255,255,255,0.14);
  padding: 24px 0 0;
  color: rgba(255,255,255,0.52);
  font-family: var(--font-ui);
  font-size: 0.74rem;
}
@media (max-width: 1024px) {
  .home-page .global-footer.site-footer,
  .inner-page .global-footer.site-footer {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: clamp(34px, 7vw, 64px);
    row-gap: 32px;
  }
  .global-footer .footer-statement,
  .global-footer .copyright { grid-column: 1 / -1; }
}
@media (max-width: 680px) {
  .home-page .global-footer.site-footer,
  .inner-page .global-footer.site-footer {
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
    padding: 42px 20px 24px;
  }
  .global-footer .footer-statement,
  .global-footer .footer-brand-block,
  .global-footer .footer-column,
  .global-footer .copyright { grid-column: 1; }
  .global-footer .footer-statement { margin-bottom: 4px; padding-bottom: 28px; }
  .global-footer .footer-statement p {
    max-width: 20ch;
    font-size: clamp(1.75rem, 8vw, 2.2rem);
    line-height: 1.1;
  }
  .global-footer .footer-brand-block,
  .global-footer .footer-column {
    border-bottom: 1px solid rgba(255,255,255,0.12);
    padding: 22px 0;
  }
  .global-footer .footer-brand { margin-bottom: 18px; }
  .global-footer .footer-column h3 { margin-bottom: 10px; }
  .global-footer .footer-column a,
  .global-footer .footer-contact-details a { min-height: 44px; }
  .global-footer .copyright { margin-top: 20px; padding-top: 20px; }
}
@media (max-width: 360px) {
}
/* Shared header and footer update: aligned navigation and newsletter-led footer. */
:root { --site-gutter: clamp(24px, 4.5vw, 80px); }

.mobile-nav-icon { display: none; }

.home-page .global-footer.site-footer,
.inner-page .global-footer.site-footer {
  grid-template-columns: minmax(238px, 1.18fr) minmax(180px, 0.9fr) minmax(122px, 0.58fr) minmax(200px, 0.98fr);
  column-gap: clamp(28px, 4vw, 64px);
  row-gap: 0;
  padding: clamp(46px, 4.8vw, 70px) max(var(--page-gutter, var(--site-gutter)), calc((100% - var(--visual-max, var(--max))) / 2)) 0;
}
.global-footer .footer-newsletter,
.global-footer .footer-bottom { grid-column: 1 / -1; }
.global-footer .footer-newsletter {
  display: grid;
  grid-template-columns: minmax(0, 0.94fr) minmax(420px, 1.06fr);
  align-items: end;
  gap: clamp(26px, 5vw, 86px);
  margin: 0 0 clamp(34px, 3.5vw, 52px);
  border-bottom: 1px solid rgba(255,255,255,0.16);
  padding: 0 0 clamp(34px, 3.5vw, 48px);
}
.global-footer .footer-newsletter-copy .eyebrow { margin-bottom: 11px; color: var(--gold-light); }
.global-footer .footer-newsletter h2 {
  max-width: 18ch;
  margin: 0 0 13px;
  color: var(--white);
  font-size: clamp(1.7rem, 2.45vw, 2.8rem);
  font-weight: 500;
  line-height: 1.08;
  letter-spacing: -0.037em;
}
.global-footer .footer-newsletter-copy > p:last-child {
  max-width: 57ch;
  margin: 0;
  color: rgba(255,255,255,0.72);
  font-size: 0.88rem;
  line-height: 1.58;
}
.global-footer .footer-newsletter-signup { width: 100%; }
.global-footer .footer-newsletter-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(142px, 170px);
  width: 100%;
  gap: 10px;
}
.global-footer .footer-newsletter-form label { display: block; min-width: 0; }
.global-footer .footer-newsletter-form input,
.global-footer .footer-subscribe-button {
  width: 100%;
  min-height: 52px;
  border-radius: 0;
  font-family: var(--font-ui);
  font-size: 0.82rem;
}
.global-footer .footer-newsletter-form input {
  border: 1px solid rgba(255,255,255,0.38);
  padding: 0 16px;
  color: var(--white);
  background: rgba(255,255,255,0.06);
}
.global-footer .footer-newsletter-form input::placeholder { color: rgba(255,255,255,0.58); }
.global-footer .footer-newsletter-form input:focus-visible,
.global-footer .footer-subscribe-button:focus-visible { outline: 2px solid var(--gold-light); outline-offset: 3px; }
.global-footer .footer-subscribe-button {
  border: 1px solid var(--gold);
  padding: 0 18px;
  color: var(--navy);
  background: var(--gold);
  font-weight: 600;
  letter-spacing: 0.055em;
  text-transform: uppercase;
  transition: background-color 180ms ease, color 180ms ease, transform 120ms ease;
}
.global-footer .footer-subscribe-button:hover { color: var(--ivory); background: var(--navy); }
.global-footer .footer-subscribe-button:active { transform: translateY(1px); }
.global-footer .footer-form-note,
.global-footer .footer-form-status {
  margin: 10px 0 0;
  color: rgba(255,255,255,0.64);
  font-size: 0.72rem;
  line-height: 1.5;
}
.global-footer .footer-form-note a { color: rgba(255,255,255,0.82); }
.global-footer .footer-form-status { min-height: 1.5em; color: var(--gold-light); }
.global-footer .footer-brand-block,
.global-footer .footer-column { padding: 0 0 clamp(34px, 3.5vw, 48px); }
.global-footer .footer-brand { margin-bottom: 19px; }
.global-footer .footer-contact-details { gap: 6px; }
.global-footer .footer-column { gap: 4px; }
.global-footer .footer-column h3 { margin: 2px 0 12px; }
.global-footer .footer-column a { min-height: 28px; }
.global-footer .footer-connect a { gap: 8px; }
.global-footer .footer-social-icon {
  width: 14px;
  height: 14px;
  flex: 0 0 14px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.5;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.global-footer .footer-program-logos {
  display: grid;
  width: 100%;
  max-width: 186px;
  gap: 12px;
}
.global-footer .footer-program-logos img {
  display: block;
  width: auto;
  max-width: 100%;
  max-height: 56px;
  object-fit: contain;
  object-position: left center;
}
.global-footer .footer-program-logos img:last-child { background: var(--white); }
.global-footer .footer-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
  border-top: 1px solid rgba(255,255,255,0.14);
  padding: 25px 0 27px;
  color: rgba(255,255,255,0.56);
  font-family: var(--font-ui);
  font-size: 0.73rem;
  line-height: 1.5;
}
.global-footer .footer-bottom p { margin: 0; white-space: nowrap; }
.global-footer .footer-legal-links {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 6px 18px;
}
.global-footer .footer-legal-links a {
  color: rgba(255,255,255,0.63);
  font-family: var(--font-ui);
  text-decoration: underline;
  text-decoration-color: transparent;
  text-underline-offset: 4px;
}
.global-footer .footer-legal-links a:hover,
.global-footer .footer-legal-links a:focus-visible { color: var(--white); text-decoration-color: var(--gold-light); }

@media (max-width: 1024px) {
  .home-page .global-footer.site-footer,
  .inner-page .global-footer.site-footer {
    grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.8fr);
    column-gap: clamp(32px, 7vw, 64px);
    row-gap: 0;
  }
  .global-footer .footer-newsletter { grid-template-columns: 1fr; gap: 22px; }
  .global-footer .footer-newsletter h2 { max-width: 24ch; }
  .global-footer .footer-programs { grid-column: auto; }
}
@media (max-width: 680px) {
  .home-page .global-footer.site-footer,
  .inner-page .global-footer.site-footer { grid-template-columns: 1fr; padding: 42px 20px 0; }
  .global-footer .footer-newsletter { margin-bottom: 0; padding-bottom: 30px; }
  .global-footer .footer-newsletter h2 { max-width: 16ch; font-size: clamp(1.75rem, 8.1vw, 2.25rem); }
  .global-footer .footer-newsletter-copy > p:last-child { font-size: 0.82rem; }
  .global-footer .footer-newsletter-form { grid-template-columns: 1fr; gap: 10px; }
  .global-footer .footer-newsletter-form input,
  .global-footer .footer-subscribe-button { min-height: 50px; }
  .global-footer .footer-brand-block,
  .global-footer .footer-column { border-bottom: 1px solid rgba(255,255,255,0.12); padding: 23px 0; }
  .global-footer .footer-brand-block { padding-top: 24px; }
  .global-footer .footer-program-logos { max-width: 190px; }
  .global-footer .footer-bottom { display: block; padding: 22px 0 26px; }
  .global-footer .footer-bottom p { margin-bottom: 14px; white-space: normal; }
  .global-footer .footer-legal-links { display: grid; grid-template-columns: 1fr; justify-content: start; gap: 10px; }
  .global-footer .footer-legal-links a { min-height: 30px; }
}
/* Newsletter consent and shared outline actions. */
.global-footer .footer-newsletter-form {
  grid-template-columns: minmax(0, 1fr) minmax(132px, 148px);
  grid-template-rows: 48px auto;
  align-items: start;
}
.global-footer .footer-newsletter-form .footer-email-field { grid-column: 1; grid-row: 1; }
.global-footer .footer-newsletter-form .footer-newsletter-consent { grid-column: 1; grid-row: 2; }
.global-footer .footer-newsletter-form .footer-subscribe-button { grid-column: 2; grid-row: 1; }
.global-footer .footer-newsletter-form input[type="email"],
.global-footer .footer-subscribe-button {
  height: 48px;
  min-height: 48px;
}
.global-footer .footer-subscribe-button {
  border-color: var(--gold);
  color: var(--gold);
  background: transparent;
}
.global-footer .footer-subscribe-button:hover {
  color: var(--navy);
  background: var(--gold);
}
.global-footer .footer-subscribe-button:active { background: #a77d35; }
.global-footer .footer-newsletter-consent {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin-top: 10px;
  color: rgba(255,255,255,0.72);
  font-size: 0.72rem;
  line-height: 1.45;
}
.global-footer .footer-newsletter-consent input {
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
  margin: 1px 0 0;
  accent-color: var(--gold);
}
.global-footer .footer-newsletter-consent a {
  color: rgba(255,255,255,0.92);
  text-decoration-color: rgba(209,178,115,0.72);
  text-underline-offset: 3px;
}
.global-footer .footer-newsletter-consent input:focus-visible { outline: 2px solid var(--gold-light); outline-offset: 3px; }
.global-footer .footer-form-note { margin-top: 8px; }
@media (max-width: 680px) {
  .global-footer .footer-newsletter-form { grid-template-columns: 1fr; grid-template-rows: auto; }
  .global-footer .footer-newsletter-form .footer-email-field,
  .global-footer .footer-newsletter-form .footer-newsletter-consent,
  .global-footer .footer-newsletter-form .footer-subscribe-button { grid-column: 1; grid-row: auto; }
  .global-footer .footer-newsletter-form .footer-email-field { order: 1; }
  .global-footer .footer-newsletter-form .footer-newsletter-consent { order: 2; margin: 2px 0 4px; }
  .global-footer .footer-newsletter-form .footer-subscribe-button { order: 3; }
}
/* Keep newsletter legal references inline rather than inheriting footer link hit-area sizing. */
.global-footer .footer-newsletter-consent a,
.global-footer .footer-form-note a {
  display: inline;
  width: auto;
  min-height: 0;
  line-height: inherit;
}
/* Align Subscribe with the email input rather than its visible label. */
.global-footer .footer-newsletter-form {
  grid-template-rows: auto auto;
}
.global-footer .footer-newsletter-form .footer-email-field { grid-column: 1; grid-row: 1; }
.global-footer .footer-newsletter-form .footer-newsletter-consent { grid-column: 1 / -1; grid-row: 2; }
.global-footer .footer-newsletter-form .footer-subscribe-button {
  grid-column: 2;
  grid-row: 1;
  align-self: end;
}
@media (max-width: 680px) {
  .global-footer .footer-newsletter-form .footer-email-field,
  .global-footer .footer-newsletter-form .footer-newsletter-consent,
  .global-footer .footer-newsletter-form .footer-subscribe-button { grid-column: 1; grid-row: auto; }
}
/* Newsletter desktop alignment and compact inline consent control. */
.global-footer .footer-newsletter-form .footer-newsletter-consent {
  display: flex;
  align-items: flex-start;
}
.global-footer .footer-newsletter-form .footer-newsletter-consent input[type="checkbox"] {
  width: 16px;
  height: 16px;
  min-height: 16px;
  padding: 0;
}
.global-footer .footer-newsletter-consent span,
.global-footer .footer-newsletter-consent a {
  font-size: inherit;
  line-height: inherit;
}
@media (min-width: 1025px) {
  .global-footer .footer-newsletter { align-items: start; }
  .global-footer .footer-newsletter-signup { padding-top: 26px; }
}
/* Homepage Sections 3-7: final content-led structure. */
.home-page .verification-gap-v2 { position:relative; min-height:0; padding:clamp(52px,4.5vw,68px) 0 clamp(48px,4vw,64px); background:var(--paper); border-block:1px solid var(--line); }
.home-page .gap-static-layout { display:grid; grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr); gap:clamp(32px,3.6vw,52px); align-items:start; }
.home-page .gap-static-intro .eyebrow { margin-bottom:13px; }
.home-page .gap-static-intro h2 { max-width:20ch; margin-bottom:18px; font-size:clamp(2.2rem,2.88vw,2.78rem); line-height:1.1; }
.home-page .gap-static-intro > p:last-child { max-width:33rem; margin:0; color:var(--muted); font-size:.94rem; line-height:1.6; }
.home-page .gap-static-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); grid-auto-rows:1fr; gap:12px; }
.home-page .gap-static-card { display:flex; min-height:0; padding:clamp(22px,2.15vw,30px); border:1px solid var(--line); background:transparent; flex-direction:column; }
.home-page .gap-static-card-head,.home-page .environment-static-card-head{ display:flex; align-items:center; justify-content:space-between; }
.home-page .gap-static-card-head { margin-bottom:19px; }
.home-page .gap-static-card-head > span,.home-page .environment-static-card-head > span,.home-page .tile-number { color:var(--gold); font-family:var(--font-label); font-size:.66rem; font-weight:700; letter-spacing:.08em; }
.home-page .gap-static-card-head svg { width:23px; height:23px; color:var(--navy); }
.home-page .gap-static-card h3 { max-width:20ch; margin:0 0 9px; color:var(--navy); font-size:.99rem; font-weight:650; line-height:1.27; }
.home-page .gap-static-card p { margin:0; color:var(--muted); font-size:.8rem; line-height:1.52; }
.home-page .gap-static-pathway { margin-top:clamp(26px,2.5vw,34px); padding-top:17px; border-top:1px solid var(--line); }
.home-page .gap-static-pathway ol { position:relative; display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:0; margin:0; padding:0; list-style:none; }
.home-page .gap-static-pathway ol::before { position:absolute; top:6px; right:10%; left:10%; height:1px; background:rgba(181,133,51,.7); content:""; }
.home-page .gap-static-pathway li { position:relative; z-index:1; display:flex; min-width:0; align-items:center; flex-direction:column; color:var(--navy); font-family:var(--font-label); font-size:.61rem; font-weight:700; letter-spacing:.045em; line-height:1.38; text-align:center; text-transform:uppercase; }
.home-page .gap-path-node { position:relative; display:block; width:13px; height:13px; margin-bottom:10px; border:2px solid var(--gold); border-radius:50%; background:var(--paper); }
.home-page .gap-static-pathway li:last-child { color:var(--gold); }

.home-page .gap-static-pathway p { max-width:52rem; margin:18px auto 0; color:var(--muted); font-size:.86rem; line-height:1.55; text-align:center; }

.home-page .verification-environment-v2 { position:relative; min-height:0; overflow:hidden; padding:clamp(56px,5vw,76px) 0 clamp(52px,4.5vw,70px); background:var(--navy-deep); color:rgba(255,255,255,.84); }
.home-page .verification-environment-v2::before { position:absolute; inset:0; opacity:.2; background-image:linear-gradient(rgba(209,178,115,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(209,178,115,.045) 1px,transparent 1px); background-size:56px 56px; content:""; pointer-events:none; }
.home-page .verification-environment-v2 .band-inner { position:relative; }
.home-page .environment-static-intro { max-width:55rem; }
.home-page .environment-static-intro .eyebrow { margin-bottom:13px; color:var(--gold-light); }
.home-page .environment-static-intro h2 { max-width:21ch; margin:0 0 17px; color:var(--ivory); font-size:clamp(2.2rem,2.95vw,2.84rem); line-height:1.1; }
.home-page .environment-static-intro > p:not(.eyebrow):not(.environment-signal) { max-width:54rem; margin:0; color:rgba(255,255,255,.72); font-size:.94rem; line-height:1.6; }
.home-page .environment-signal { max-width:54rem; margin:21px 0 0; padding-left:15px; border-left:2px solid var(--gold); color:rgba(255,255,255,.84); font-size:.92rem; line-height:1.55; }
.home-page .environment-static-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-top:30px; }
.home-page .environment-static-card { display:flex; min-height:0; padding:clamp(22px,2vw,28px); border:1px solid rgba(255,255,255,.2); background:rgba(4,24,47,.18); color:rgba(255,255,255,.84); flex-direction:column; }
.home-page .environment-static-card-head { margin-bottom:17px; }
.home-page .environment-static-card-head > span { color:var(--gold-light); }
.home-page .environment-static-card-head svg { width:26px; height:26px; color:rgba(255,255,255,.88); }
.home-page .environment-static-card h3 { margin:0 0 9px; color:var(--ivory); font-size:.98rem; font-weight:650; line-height:1.26; }
.home-page .environment-static-card > p:not(.environment-static-includes) { margin:0; color:rgba(255,255,255,.71); font-size:.8rem; line-height:1.52; }
.home-page .environment-static-includes { margin:17px 0 0; padding-top:13px; border-top:1px solid rgba(255,255,255,.15); color:rgba(255,255,255,.64); font-size:.7rem; line-height:1.5; }
.home-page .environment-static-includes span { margin-right:7px; color:var(--gold-light); font-family:var(--font-label); font-size:.58rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase; }
.home-page .compact-lifecycle-cue { margin-top:28px; padding-top:16px; border-top:1px solid rgba(209,178,115,.48); }
.home-page .compact-lifecycle-cue ol { display:flex; justify-content:space-between; gap:12px; margin:0; padding:0; list-style:none; color:var(--gold-light); font-family:var(--font-label); font-size:.62rem; font-weight:700; letter-spacing:.055em; text-transform:uppercase; }
.home-page .compact-lifecycle-cue li { position:relative; display:flex; align-items:center; gap:12px; }
.home-page .compact-lifecycle-cue li:not(:last-child)::after { width:clamp(12px,3vw,48px); height:1px; background:rgba(209,178,115,.55); content:""; }
.home-page .compact-lifecycle-cue p { max-width:48rem; margin:15px 0 0; color:rgba(255,255,255,.62); font-size:.82rem; line-height:1.55; }

.home-page .architecture-band { min-height:0; padding:clamp(68px,5.8vw,88px) 0; background:var(--paper); }
.home-page .fidelity-architecture { display:grid; grid-template-columns:minmax(0,.62fr) minmax(0,1.04fr); gap:clamp(34px,4vw,58px); align-items:center; }
.home-page .architecture-copy { min-width:0; }
.home-page .architecture-copy h2 { max-width:15ch; font-size:var(--support-heading); }
.home-page .concept-label { width:fit-content; margin:-2px 0 17px!important; padding:5px 8px; border:1px solid rgba(180,137,61,.46); color:var(--gold-dark)!important; font-family:var(--font-label); font-size:.56rem!important; letter-spacing:.07em; line-height:1.2!important; text-transform:uppercase; }
.home-page .architecture-closing-inline { max-width:33ch; margin-top:19px!important; padding-top:15px; border-top:1px solid var(--line); color:var(--navy)!important; font-family:var(--font-heading); font-size:clamp(1.15rem,1.32vw,1.3rem)!important; font-weight:500; line-height:1.36!important; }
.home-page .trust-architecture-25d { min-width:0; min-height:0; padding-top:0; }
.home-page .architecture-stage { min-height:0; padding-top:8px; filter:saturate(.82) contrast(1.12); }
.home-page .architecture-canopy { min-height:0; border-color:rgba(30,57,89,.54); background:linear-gradient(#fffdf8,#e7edf3); box-shadow:0 8px 18px rgba(18,41,73,.1),inset 0 1px #fff; }
.home-page .architecture-volume { min-height:0; border-color:rgba(30,57,89,.58); background:linear-gradient(145deg,#fbfcfe,#dbe7f2); box-shadow:0 10px 20px rgba(18,40,70,.12),inset 0 1px #fff; }
.home-page .architecture-volume.trust-volume { border-color:rgba(184,132,48,.84); background:linear-gradient(145deg,#fffdf7,#f1e5c9 58%,#fff9ea); box-shadow:0 13px 25px rgba(75,52,12,.18),0 0 0 3px rgba(184,132,48,.08); }
.home-page .capability-plates { border-color:rgba(30,57,89,.48); background:#fafcff; box-shadow:0 8px 16px rgba(18,40,70,.08); }
.home-page .trust-data-plane { background:#17365f; color:#fff; }
.home-page .sovereignty-foundation { background:linear-gradient(90deg,#061a38,#0d315e,#061a38); }

.home-page .infrastructure-chapter { min-height:0; padding:0; border:0; background:var(--navy-deep); color:var(--white); }
.home-page .infrastructure-focus { border-bottom:1px solid rgba(255,255,255,.12); }
.home-page .infrastructure-focus .infrastructure-panel { min-height:clamp(430px,36vw,545px); padding:clamp(60px,5.5vw,86px) 0 clamp(28px,3vw,42px); grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr); column-gap:clamp(30px,4.5vw,62px); row-gap:clamp(16px,1.7vw,24px); }
.home-page .infrastructure-copy { max-width:31rem; }
.home-page .infrastructure-copy h2 { font-size:clamp(2.28rem,3.45vw,3.72rem); }
.home-page .infrastructure-items { grid-template-columns:repeat(6,minmax(0,1fr)); }
.home-page .infrastructure-items button { min-width:0; min-height:44px; padding:13px 10px; border:0; border-right:1px solid rgba(255,255,255,.14); color:rgba(255,255,255,.74); background:transparent; font-family:var(--font-label); font-size:.57rem; letter-spacing:.045em; line-height:1.35; text-transform:uppercase; }
.home-page .infrastructure-items button:last-child { border-right:0; }
.home-page .infra-detail { grid-column:1/-1; min-height:0; margin:0; color:rgba(255,255,255,.72); font-size:.78rem; line-height:1.5; }
.home-page .maturity-label { color:var(--gold-light); font-family:var(--font-label); font-size:.56rem; font-weight:700; letter-spacing:.07em; text-transform:uppercase; }

@media (max-width: 959px) { .home-page .fidelity-architecture { grid-template-columns:minmax(0,1fr); }.home-page .architecture-copy { max-width:45rem; }.home-page .trust-architecture-25d { width:100%; }.home-page .environment-static-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.home-page .infrastructure-focus .infrastructure-panel { grid-template-columns:minmax(0,1fr); min-height:0; }.home-page .infrastructure-copy { max-width:44rem; }.home-page .infrastructure-items { grid-template-columns:repeat(3,minmax(0,1fr)); }.home-page .infrastructure-items button:nth-child(3n) { border-right:0; }.home-page .infrastructure-items button:nth-child(-n + 3) { border-bottom:1px solid rgba(255,255,255,.14); } }
@media (max-width: 760px) { .home-page .verification-gap-v2,.home-page .verification-environment-v2 { padding-block:44px; }.home-page .gap-static-layout { grid-template-columns:1fr; gap:27px; }.home-page .gap-static-grid,.home-page .environment-static-grid{ grid-template-columns:1fr; }.home-page .gap-static-card,.home-page .environment-static-card{ padding:21px; }.home-page .gap-static-pathway { margin-top:26px; padding-top:16px; }.home-page .gap-static-pathway ol { display:grid; grid-template-columns:1fr; }.home-page .gap-static-pathway ol::before { top:8px; bottom:8px; left:6px; right:auto; width:1px; height:auto; }.home-page .gap-static-pathway li { min-height:31px; align-items:center; flex-direction:row; text-align:left; }.home-page .gap-path-node { z-index:1; margin:0 12px 0 0; flex:0 0 auto; }.home-page .gap-static-pathway p { margin-top:15px; text-align:left; }.home-page .compact-lifecycle-cue ol { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px 16px; }.home-page .compact-lifecycle-cue li:not(:last-child)::after { display:none; }.home-page .architecture-band { padding-block:52px; }.home-page .architecture-copy h2 { max-width:17ch; }.home-page .trust-architecture-25d { overflow-x:auto; }.home-page .architecture-stage { min-width:540px; }.home-page .infrastructure-focus .infrastructure-panel { padding-block:52px 24px; }.home-page .infrastructure-items { grid-template-columns:repeat(2,minmax(0,1fr)); }.home-page .infrastructure-items button,.home-page .infrastructure-items button:nth-child(3n) { border-right:1px solid rgba(255,255,255,.14); }.home-page .infrastructure-items button:nth-child(2n) { border-right:0; }.home-page .infrastructure-items button:nth-child(-n + 4) { border-bottom:1px solid rgba(255,255,255,.14); } }
/* Final surface rhythm and narrow-screen composition. */
body.page-about .inner-editorial-section { background: linear-gradient(105deg, rgba(247, 248, 247, 0.9), rgba(233, 238, 242, 0.42)); }
body.page-about .mission-vision-section { background: rgba(255, 253, 248, 0.72); }
body.page-about .inner-concept-section { background: linear-gradient(105deg, rgba(233, 238, 242, 0.58), rgba(247, 248, 247, 0.88)); }
body.page-about .inner-principles-section { background: rgba(233, 238, 242, 0.5); }

body.page-initiative .inner-priorities-section { background: linear-gradient(105deg, rgba(233, 238, 242, 0.78), rgba(247, 248, 247, 0.65)); }
body.page-initiative .inner-activity-section { background: rgba(255, 253, 248, 0.7); }
body.page-initiative .inner-audience-section { background: rgba(247, 248, 247, 0.9); }

body.page-alliance .inner-editorial-section { background: rgba(241, 237, 228, 0.78); }
body.page-alliance .inner-activity-section { background: rgba(255, 253, 248, 0.72); }
body.page-alliance .contributor-framework-section { background: rgba(247, 248, 247, 0.94); }
body.page-alliance .alliance-form-section { background: rgba(241, 237, 228, 0.62); }

body.page-services .service-areas-section { background: rgba(255, 253, 248, 0.76); }
body.page-services .service-audience-section { background: rgba(247, 248, 247, 0.9); }
body.page-services .service-boundaries-section { background: rgba(255, 253, 248, 0.72); }

body.page-trust-lab .inner-editorial-section { background: rgba(255, 253, 248, 0.72); }
body.page-trust-lab .inner-audience-section { background: rgba(247, 248, 247, 0.9); }

body.page-partners .inner-editorial-section { background: rgba(255, 253, 248, 0.72); }
body.page-partners .inner-audience-section { background: rgba(233, 238, 242, 0.64); }
body.page-partners .participation-terms-section { background: rgba(241, 237, 228, 0.72); }

body.page-contact .direct-contact-section { background: linear-gradient(105deg, rgba(255, 253, 248, 0.96), rgba(247, 248, 247, 0.88)); }

@media (max-width: 620px) {
  body.inner-page .inner-page-main > .section { padding-block: 48px; }
  body.inner-page .inner-page-hero { padding-block: 60px; }
  body.inner-page .inner-page-hero h1 {
    max-width: 13ch;
    font-size: clamp(2.35rem, 10.2vw, 3.4rem);
    letter-spacing: -0.046em;
    line-height: 1.01;
  }
  body.inner-page .inner-page-hero > p:not(.eyebrow) { font-size: 0.98rem; line-height: 1.62; }
  body.inner-page .section-heading { margin-bottom: 25px; }
  body.inner-page .inner-route-grid > *,
  body.inner-page .inner-principles-grid > article,
  body.inner-page .inner-activity-grid > article,
  body.inner-page .decision-family-grid > article,
  body.inner-page .research-domain-grid > article,
  body.inner-page .partnership-route-grid > article,
  body.inner-page .contact-route-grid > a,
  body.inner-page .emerging-environment-grid > article { padding: 21px 18px; }
  body.inner-page .inner-definition-strip > span,
  body.inner-page .inner-audience-grid > span { min-height: 62px; padding: 14px 15px; }
}
@media (min-width: 421px) and (max-width: 620px) {
  body.inner-page .inner-audience-grid,
  body.inner-page .inner-definition-strip,
  body.page-services .outcomes-grid,
  body.page-contact .contact-route-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.page-about .inner-principles-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.page-about .inner-principles-grid > article,
  body.page-about .inner-principles-grid > article:nth-child(1),
  body.page-about .inner-principles-grid > article:nth-child(2),
  body.page-about .inner-principles-grid > article:nth-child(n + 3) { grid-column: auto; }
  body.page-contact .contact-route-grid > a:nth-child(even) { border-left: 1px solid var(--inner-line); }
}
@media (max-width: 420px) {
  body.page-services .outcomes-grid,
  body.page-contact .contact-route-grid { grid-template-columns: 1fr; }
  body.page-contact .contact-route-grid > a:nth-child(even) { border-left: 0; }
}
/* About hero correction: composed copy and architecture. */
body.inner-page .inner-hero-visual,
body.inner-page .inner-secondary-visual {
  background: rgba(255, 253, 248, 0.68);
  background-size: auto;
}
body.page-trust-lab .inner-hero-visual,
body.page-trust-lab .inner-secondary-visual {
  background: rgba(5, 25, 54, 0.58);
}
body.page-about .inner-page-hero.inner-hero-with-visual {
  grid-template-columns: minmax(0, 0.98fr) minmax(380px, 0.86fr);
  align-items: center;
  column-gap: clamp(42px, 7vw, 118px);
}
body.page-about .inner-page-hero.inner-hero-with-visual::before,
body.page-about .inner-page-hero.inner-hero-with-visual::after { display: none; }
body.page-about .inner-hero-copy {
  grid-column: 1;
  grid-row: 1;
  align-self: center;
}
body.page-about .inner-hero-copy h1 { max-width: 13.5ch; }
body.page-about .inner-hero-visual {
  border: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
}
body.page-about .inner-hero-visual::before { display: none; }
body.page-about .inner-hero-visual img { width: min(100%, 570px); margin-inline: auto; }
@media (min-width: 901px) {
  body.page-about .inner-hero-visual { grid-column: 2; grid-row: 1; align-self: center; }
}
@media (max-width: 900px) {
  body.page-about .inner-hero-copy { grid-column: 1; grid-row: auto; }
  body.page-about .inner-hero-visual { width: min(100%, 620px); }
}/* Inner-page hero weight and About AI sentinel. */
body.inner-page .inner-page-hero h1 { font-weight: 400; }@media (prefers-reduced-motion: reduce) { .home-page .architecture-stage { transition:none; } }/* Final Sections 3-7 refinement: content-led spacing and responsive architecture. */
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); clip-path:inset(50%); white-space:nowrap; border:0; }
.home-page { --section-space-compact:clamp(44px,4vw,56px); --section-space-standard:clamp(54px,4.7vw,70px); --section-space-feature:clamp(62px,5.4vw,82px); }
.home-page .verification-gap-v2 { padding-block:var(--section-space-standard) clamp(46px,4vw,58px); }
.home-page .gap-static-pathway { margin-top:clamp(24px,2.2vw,30px); padding-top:16px; }
.home-page .gap-static-pathway ol::before { right:9.5%; left:9.5%; }

.home-page .gap-static-pathway p { max-width:50rem; margin-top:16px; text-align:center; }
.home-page .verification-environment-v2 { padding-block:var(--section-space-standard) clamp(48px,4.2vw,62px); }
.home-page .environment-static-grid { margin-top:26px; }
.home-page .environment-static-card { padding:clamp(20px,1.8vw,25px); }
.home-page .compact-lifecycle-cue { position:relative; margin-top:24px; padding-top:17px; }
.home-page .compact-lifecycle-cue ol { position:relative; display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:0; }
.home-page .compact-lifecycle-cue ol::before { position:absolute; top:7px; right:7%; left:7%; height:1px; background:rgba(209,178,115,.5); content:""; }
.home-page .compact-lifecycle-cue li { z-index:1; justify-content:center; flex-direction:column; gap:8px; text-align:center; }
.home-page .compact-lifecycle-cue li::before { width:14px; height:14px; border:2px solid var(--gold-light); border-radius:50%; background:var(--navy-deep); content:""; }
.home-page .compact-lifecycle-cue li:not(:last-child)::after { display:none; }
.home-page .compact-lifecycle-cue p { max-width:48rem; margin:16px auto 0; text-align:center; }
.home-page .architecture-band { padding-block:var(--section-space-feature); }
.home-page .architecture-band .band-inner.fidelity-architecture { padding-block:0 !important; }
.home-page .architecture-semantic.sr-only { position:absolute; }
.home-page .fidelity-architecture { grid-template-columns:minmax(0,.64fr) minmax(0,1.06fr); gap:clamp(32px,3.8vw,54px); }
.home-page .architecture-canopy span,.home-page .architecture-volume small { color:#465a70; }
.home-page .capability-plates span { color:#183653; }
.home-page .infrastructure-focus .infrastructure-panel { padding-bottom:clamp(24px,2.5vw,36px); }
.home-page .infrastructure-items { margin-top:0 !important; gap:0; }
.home-page .infrastructure-items button { min-height:52px; color:rgba(255,255,255,.82); font-size:.61rem; }
.home-page .infrastructure-items button[aria-pressed="true"] { color:#fffdf7; }
.home-page .infra-detail { color:rgba(255,255,255,.8); font-size:.84rem; line-height:1.55; }
@media (min-width:1100px) {
}
@media (max-width:959px) { .home-page .fidelity-architecture { grid-template-columns:minmax(0,1fr); } }
@media (max-width:760px) {
  .home-page .verification-gap-v2,.home-page .verification-environment-v2 { padding-block:44px; }
  .home-page .gap-static-pathway p { text-align:center; }
  .home-page .compact-lifecycle-cue ol { display:flex; align-items:flex-start; flex-direction:column; gap:10px; padding-left:2px; }
  .home-page .compact-lifecycle-cue ol::before { top:8px; bottom:8px; left:8px; width:1px; height:auto; }
  .home-page .compact-lifecycle-cue li { align-items:center; flex-direction:row; justify-content:flex-start; gap:11px; text-align:left; }
  .home-page .compact-lifecycle-cue li::before { flex:0 0 auto; }
  .home-page .architecture-band { padding-block:52px; }
  .home-page .trust-architecture-25d { min-height:0; padding:0; overflow:visible; }
  .home-page .architecture-stage { display:grid; grid-template-rows:auto; min-width:0; min-height:0; gap:10px; padding:0 2px; }
  .home-page .architecture-canopy { width:100%; min-height:70px; padding:12px; clip-path:none; }
  .home-page .architecture-canopy span { display:block; font-size:.62rem; }
  .home-page .architecture-system { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-rows:auto auto; gap:9px; padding:0; }
  .home-page .architecture-volume,.home-page .trust-volume { min-height:98px; padding:10px 8px; }
  .home-page .trust-volume { grid-column:1/-1; grid-row:1; min-height:108px; }
  .home-page .organisation-volume { grid-column:1; grid-row:2; }
  .home-page .ecosystem-volume { grid-column:2; grid-row:2; }
  .home-page .architecture-volume > span,.home-page .trust-volume > span { font-size:.61rem; }
  .home-page .architecture-volume small { margin-top:6px; font-size:.66rem; line-height:1.35; }
  .home-page .capability-plates { grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; padding:0; }
  .home-page .capability-plates span { min-height:48px; padding:6px; font-size:.55rem; }
  .home-page .trust-data-plane { width:100%; min-height:42px; padding:8px; font-size:.58rem; text-align:center; }
  .home-page .sovereignty-foundation { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .home-page .sovereignty-foundation span { min-height:48px; padding:7px; font-size:.53rem; }
  .home-page .infrastructure-focus .infrastructure-panel { padding-top:50px; padding-bottom:24px; }
}

/* Native anchor fallback keeps direct homepage section URLs clear of the sticky header. */
.home-page #verification-gap,
.home-page #connected-stack,
.home-page #trust-infrastructure,
.home-page #current-decisions,
.home-page #ai-infrastructure-trust {
  scroll-margin-top: 86px;
}

/* Homepage surgical simplification: Sections 5-8 remain editorial, compact and content-driven. */
.home-page .architecture-band { padding-block: var(--section-space-feature); }
.home-page .architecture-band .fidelity-architecture {
  grid-template-columns: minmax(0, 0.62fr) minmax(0, 1.02fr);
  align-items: center;
}
.home-page .architecture-band .architecture-stage {
  min-height: 0;
  filter: none;
  -webkit-font-smoothing: antialiased;
  text-rendering: geometricPrecision;
}
.home-page .architecture-band .architecture-layer { cursor: default; }
.home-page .architecture-band .architecture-canopy span,
.home-page .architecture-band .architecture-volume small {
  color: #354d67;
  font-size: clamp(0.69rem, 0.73vw, 0.76rem);
  line-height: 1.38;
  opacity: 1;
}
.home-page .architecture-band .architecture-volume > span,
.home-page .architecture-band .trust-data-plane,
.home-page .architecture-band .sovereignty-foundation span {
  font-size: clamp(0.67rem, 0.7vw, 0.74rem);
  line-height: 1.3;
}
.home-page .architecture-band .capability-plates span { color: #163554; font-size: clamp(0.63rem, 0.66vw, 0.7rem); }
.home-page .architecture-band .sovereignty-foundation { box-shadow: none; }

.home-page .service-teaser-band {
  padding-block: clamp(34px, 3.4vw, 48px);
  border-block: 1px solid rgba(30, 57, 89, 0.18);
  background: #edf2f5;
}
.home-page .service-teaser {
  display: grid;
  grid-template-columns: minmax(0, 1.95fr) minmax(230px, 0.8fr);
  align-items: center;
  gap: clamp(28px, 4vw, 64px);
}
.home-page .service-teaser-copy { position: relative; max-width: 52rem; padding-left: 18px; }
.home-page .service-teaser-copy::before {
  position: absolute;
  top: 0.32rem;
  bottom: 0.32rem;
  left: 0;
  width: 2px;
  background: var(--gold);
  content: "";
}
.home-page .service-teaser-copy .eyebrow { margin-bottom: 11px; }
.home-page .service-teaser-copy h2 { max-width: 31ch; margin: 0 0 12px; color: var(--navy); font-size: clamp(1.46rem, 2.05vw, 2.06rem); line-height: 1.16; }
.home-page .service-teaser-copy > p:last-child { max-width: 46rem; margin: 0; color: var(--ink-soft); font-size: 0.88rem; line-height: 1.57; }
.home-page .service-teaser-actions { display: flex; align-items: flex-start; flex-direction: column; gap: 14px; }
.home-page .service-teaser-actions .button { min-width: 190px; min-height: 46px; }

.home-page .infrastructure-chapter { padding: 0; }
.home-page .infrastructure-focus { border-bottom: 0; }
.home-page .infrastructure-focus .infrastructure-panel { padding-bottom: clamp(18px, 2vw, 28px); }
.home-page .infrastructure-items { margin-top: 0; }
.home-page .infrastructure-items button[role="tab"] {
  position: relative;
  min-height: 54px;
  padding: 13px 10px 14px;
  color: rgba(255, 255, 255, 0.72);
  transition: color 160ms ease, background-color 160ms ease;
}
.home-page .infrastructure-items button[role="tab"]::after {
  position: absolute;
  right: 12px;
  bottom: 0;
  left: 12px;
  height: 2px;
  background: transparent;
  content: "";
}
.home-page .infrastructure-items button[role="tab"][aria-selected="true"] { color: #fffdf7; background: rgba(209, 178, 115, 0.08); }
.home-page .infrastructure-items button[role="tab"][aria-selected="true"]::after { background: var(--gold-light); }
.home-page .infrastructure-items button[role="tab"]:focus-visible { z-index: 1; outline: 2px solid var(--gold-light); outline-offset: -3px; }
.home-page .infra-scene-labels [data-zone-label] { opacity: 0.42; transition: opacity 160ms ease, color 160ms ease; }
.home-page .infra-scene-labels [data-zone-label].is-active { color: #fffdf7; opacity: 1; }
.home-page .infra-scene-labels [data-zone-label].is-muted { opacity: 0.38; }
.home-page .infra-detail { min-height: 3.1em; color: rgba(255, 255, 255, 0.83); }

.home-page .infrastructure-chapter .compact-emerging-continuation {
  position: relative;
  padding-block: clamp(16px, 1.8vw, 24px) clamp(36px, 3.6vw, 48px);
  background: transparent;
}
.home-page .emerging-rail-intro {
  max-width: 52rem;
  margin: 0 0 clamp(16px, 1.8vw, 22px);
  padding-left: 14px;
  border-left: 2px solid var(--gold-light);
  color: rgba(255, 255, 255, 0.76);
  font-size: clamp(0.82rem, 1vw, 0.93rem);
  line-height: 1.55;
}
.home-page .emerging-compact-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-top: 0;
  border: 1px solid rgba(255, 255, 255, 0.14);
  background: rgba(255, 255, 255, 0.025);
}
.home-page .emerging-compact-item {
  min-width: 0;
  padding: 18px clamp(14px, 1.7vw, 22px) 19px;
  border-right: 1px solid rgba(255, 255, 255, 0.14);
}
.home-page .emerging-compact-item:last-child { border-right: 0; }
.home-page .maturity-label { color: var(--gold-light); font-family: var(--font-label); font-size: 0.55rem; font-weight: 700; letter-spacing: 0.07em; line-height: 1.25; text-transform: uppercase; }
.home-page .horizon-visual { position: relative; display: block; width: 74px; height: 36px; margin: 13px 0 12px; color: rgba(255, 255, 255, 0.82); }
.home-page .horizon-visual::before,.home-page .horizon-visual::after,.home-page .horizon-visual i { position: absolute; box-sizing: border-box; content: ""; }
.home-page .horizon-physical::before { right: 22px; bottom: 4px; width: 24px; height: 25px; border: 1px solid currentColor; }.home-page .horizon-physical::after { right: 6px; bottom: 0; left: 6px; border-top: 1px solid var(--gold-light); }.home-page .horizon-physical i { width: 6px; height: 6px; border: 1px solid var(--gold-light); border-radius: 50%; }.home-page .horizon-physical i:nth-child(1){top:0;left:34px}.home-page .horizon-physical i:nth-child(2){top:15px;left:8px}.home-page .horizon-physical i:nth-child(3){top:15px;right:8px}.home-page .horizon-physical i:nth-child(4){right:34px;bottom:0}
.home-page .horizon-spatial::before { inset: 2px 14px; border: 1px solid currentColor; border-radius: 50%; }.home-page .horizon-spatial::after { top: 18px; right: 3px; left: 3px; border-top: 1px solid var(--gold-light); }.home-page .horizon-spatial i:nth-child(1){top:3px;bottom:3px;left:36px;border-left:1px solid currentColor}.home-page .horizon-spatial i:nth-child(2){inset:11px 29px;border:1px solid var(--gold-light);border-radius:50%}.home-page .horizon-spatial i:nth-child(3){top:9px;left:17px;width:39px;border-top:1px solid currentColor;transform:rotate(31deg)}.home-page .horizon-spatial i:nth-child(4){top:26px;left:17px;width:39px;border-top:1px solid currentColor;transform:rotate(-31deg)}
.home-page .horizon-decentralised::before { inset: 6px 18px; border: 1px solid currentColor; transform: rotate(45deg); }.home-page .horizon-decentralised::after { top: 18px; right: 5px; left: 5px; border-top: 1px solid var(--gold-light); }.home-page .horizon-decentralised i { width: 6px; height: 6px; border: 1px solid var(--gold-light); background: #0c2748; transform: rotate(45deg); }.home-page .horizon-decentralised i:nth-child(1){top:0;left:34px}.home-page .horizon-decentralised i:nth-child(2){top:15px;left:5px}.home-page .horizon-decentralised i:nth-child(3){top:15px;right:5px}.home-page .horizon-decentralised i:nth-child(4){right:34px;bottom:0}
.home-page .horizon-machine::before { top: 5px; left: 8px; width: 20px; height: 20px; border: 1px solid currentColor; }.home-page .horizon-machine::after { right: 8px; bottom: 5px; width: 20px; height: 20px; border: 1px solid currentColor; }.home-page .horizon-machine i:nth-child(1){top:14px;left:24px;width:27px;border-top:1px solid var(--gold-light)}.home-page .horizon-machine i:nth-child(2){top:12px;left:45px;width:6px;height:6px;border-top:1px solid var(--gold-light);border-right:1px solid var(--gold-light);transform:rotate(45deg)}.home-page .horizon-machine i:nth-child(3){top:25px;left:24px;width:27px;border-top:1px solid currentColor}.home-page .horizon-machine i:nth-child(4){top:23px;left:24px;width:6px;height:6px;border-bottom:1px solid currentColor;border-left:1px solid currentColor;transform:rotate(45deg)}
.home-page .emerging-compact-item h4 {
  margin: 0;
  color: var(--ivory);
  font-size: 0.9rem;
  font-weight: 700;
  line-height: 1.27;
}

@media (max-width: 959px) {
  .home-page .architecture-band .fidelity-architecture { grid-template-columns: minmax(0, 1fr); }
  .home-page .architecture-band .architecture-copy { max-width: 46rem; }
  .home-page .service-teaser { grid-template-columns: 1fr; gap: 22px; }
  .home-page .service-teaser-actions { align-items: flex-start; flex-direction: row; flex-wrap: wrap; }
  .home-page .emerging-compact-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-page .emerging-compact-item:nth-child(2) { border-right: 0; }
  .home-page .emerging-compact-item:nth-child(-n + 2) { border-bottom: 1px solid rgba(255, 255, 255, 0.14); }
}
@media (max-width: 760px) {
  .home-page .architecture-band { padding-block: 50px; }
  .home-page .architecture-band .trust-architecture-25d { overflow: visible; }
  .home-page .architecture-band .architecture-stage { min-width: 0; }
  .home-page .service-teaser-band { padding-block: 34px; }
  .home-page .service-teaser-copy { padding-left: 14px; }
  .home-page .service-teaser-actions { display: block; }
  .home-page .service-teaser-actions .button { display: flex; width: 100%; justify-content: center; }
  .home-page .service-teaser-actions .inline-link { display: inline-flex; margin-top: 15px; }
  .home-page .infrastructure-items button[role="tab"] { min-height: 56px; font-size: 0.59rem; }
  .home-page .infrastructure-chapter .compact-emerging-continuation { padding-block: 20px 38px; }
  .home-page .emerging-compact-grid { grid-template-columns: 1fr; }
  .home-page .emerging-compact-item,
  .home-page .emerging-compact-item:nth-child(2) { border-right: 0; border-bottom: 1px solid rgba(255, 255, 255, 0.14); }
  .home-page .emerging-compact-item:last-child { border-bottom: 0; }
}
/* Final surface rhythm and narrow-screen composition. */
body.page-about .inner-editorial-section { background: linear-gradient(105deg, rgba(247, 248, 247, 0.9), rgba(233, 238, 242, 0.42)); }
body.page-about .mission-vision-section { background: rgba(255, 253, 248, 0.72); }
body.page-about .inner-concept-section { background: linear-gradient(105deg, rgba(233, 238, 242, 0.58), rgba(247, 248, 247, 0.88)); }
body.page-about .inner-principles-section { background: rgba(233, 238, 242, 0.5); }

body.page-initiative .inner-priorities-section { background: linear-gradient(105deg, rgba(233, 238, 242, 0.78), rgba(247, 248, 247, 0.65)); }
body.page-initiative .inner-activity-section { background: rgba(255, 253, 248, 0.7); }
body.page-initiative .inner-audience-section { background: rgba(247, 248, 247, 0.9); }

body.page-alliance .inner-editorial-section { background: rgba(241, 237, 228, 0.78); }
body.page-alliance .inner-activity-section { background: rgba(255, 253, 248, 0.72); }
body.page-alliance .contributor-framework-section { background: rgba(247, 248, 247, 0.94); }
body.page-alliance .alliance-form-section { background: rgba(241, 237, 228, 0.62); }

body.page-services .service-areas-section { background: rgba(255, 253, 248, 0.76); }
body.page-services .service-audience-section { background: rgba(247, 248, 247, 0.9); }
body.page-services .service-boundaries-section { background: rgba(255, 253, 248, 0.72); }

body.page-trust-lab .inner-editorial-section { background: rgba(255, 253, 248, 0.72); }
body.page-trust-lab .inner-audience-section { background: rgba(247, 248, 247, 0.9); }

body.page-partners .inner-editorial-section { background: rgba(255, 253, 248, 0.72); }
body.page-partners .inner-audience-section { background: rgba(233, 238, 242, 0.64); }
body.page-partners .participation-terms-section { background: rgba(241, 237, 228, 0.72); }

body.page-contact .direct-contact-section { background: linear-gradient(105deg, rgba(255, 253, 248, 0.96), rgba(247, 248, 247, 0.88)); }

@media (max-width: 620px) {
  body.inner-page .inner-page-main > .section { padding-block: 48px; }
  body.inner-page .inner-page-hero { padding-block: 60px; }
  body.inner-page .inner-page-hero h1 {
    max-width: 13ch;
    font-size: clamp(2.35rem, 10.2vw, 3.4rem);
    letter-spacing: -0.046em;
    line-height: 1.01;
  }
  body.inner-page .inner-page-hero > p:not(.eyebrow) { font-size: 0.98rem; line-height: 1.62; }
  body.inner-page .section-heading { margin-bottom: 25px; }
  body.inner-page .inner-route-grid > *,
  body.inner-page .inner-principles-grid > article,
  body.inner-page .inner-activity-grid > article,
  body.inner-page .decision-family-grid > article,
  body.inner-page .research-domain-grid > article,
  body.inner-page .partnership-route-grid > article,
  body.inner-page .contact-route-grid > a,
  body.inner-page .emerging-environment-grid > article { padding: 21px 18px; }
  body.inner-page .inner-definition-strip > span,
  body.inner-page .inner-audience-grid > span { min-height: 62px; padding: 14px 15px; }
}
@media (min-width: 421px) and (max-width: 620px) {
  body.inner-page .inner-audience-grid,
  body.inner-page .inner-definition-strip,
  body.page-services .outcomes-grid,
  body.page-contact .contact-route-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.page-about .inner-principles-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.page-about .inner-principles-grid > article,
  body.page-about .inner-principles-grid > article:nth-child(1),
  body.page-about .inner-principles-grid > article:nth-child(2),
  body.page-about .inner-principles-grid > article:nth-child(n + 3) { grid-column: auto; }
  body.page-contact .contact-route-grid > a:nth-child(even) { border-left: 1px solid var(--inner-line); }
}
@media (max-width: 420px) {
  body.page-services .outcomes-grid,
  body.page-contact .contact-route-grid { grid-template-columns: 1fr; }
  body.page-contact .contact-route-grid > a:nth-child(even) { border-left: 0; }
}
/* About hero correction: composed copy and architecture. */
body.inner-page .inner-hero-visual,
body.inner-page .inner-secondary-visual {
  background: rgba(255, 253, 248, 0.68);
  background-size: auto;
}
body.page-trust-lab .inner-hero-visual,
body.page-trust-lab .inner-secondary-visual {
  background: rgba(5, 25, 54, 0.58);
}
body.page-about .inner-page-hero.inner-hero-with-visual {
  grid-template-columns: minmax(0, 0.98fr) minmax(380px, 0.86fr);
  align-items: center;
  column-gap: clamp(42px, 7vw, 118px);
}
body.page-about .inner-page-hero.inner-hero-with-visual::before,
body.page-about .inner-page-hero.inner-hero-with-visual::after { display: none; }
body.page-about .inner-hero-copy {
  grid-column: 1;
  grid-row: 1;
  align-self: center;
}
body.page-about .inner-hero-copy h1 { max-width: 13.5ch; }
body.page-about .inner-hero-visual {
  border: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
}
body.page-about .inner-hero-visual::before { display: none; }
body.page-about .inner-hero-visual img { width: min(100%, 570px); margin-inline: auto; }
@media (min-width: 901px) {
  body.page-about .inner-hero-visual { grid-column: 2; grid-row: 1; align-self: center; }
}
@media (max-width: 900px) {
  body.page-about .inner-hero-copy { grid-column: 1; grid-row: auto; }
  body.page-about .inner-hero-visual { width: min(100%, 620px); }
}/* Inner-page hero weight and About AI sentinel. */
body.inner-page .inner-page-hero h1 { font-weight: 400; }@media (prefers-reduced-motion: reduce) {
  .home-page .infrastructure-items button[role="tab"],
  .home-page .infra-scene-labels [data-zone-label] { transition: none; }
}
.home-page #emerging-trust { scroll-margin-top: 86px; }
/* AI Infrastructure: keep controls, evidence and future environments in one continuous chapter. */
.home-page .infrastructure-focus .infrastructure-panel { padding-bottom: clamp(14px, 1.5vw, 20px); }
.home-page .infrastructure-control-panel {
  position: relative;
  z-index: 2;
  grid-column: 1 / -1;
  overflow: hidden;
  border: 1px solid rgba(189, 209, 231, 0.24);
  background: linear-gradient(135deg, rgba(189, 209, 231, 0.075), rgba(7, 26, 54, 0.2));
  box-shadow: inset 0 1px rgba(255, 255, 255, 0.035);
}
.home-page .infrastructure-control-panel .infrastructure-items {
  margin: 0;
  border: 0;
  background: transparent;
}
.home-page .infrastructure-control-panel .infra-detail {
  display: flex;
  min-height: 0;
  margin: 0;
  padding: 15px clamp(18px, 3vw, 42px) 16px;
  border-top: 1px solid rgba(189, 209, 231, 0.16);
  background: rgba(4, 20, 45, 0.34);
  color: rgba(255, 255, 255, 0.84);
  text-align: center;
}
.home-page .infrastructure-chapter .compact-emerging-continuation {
  padding-top: clamp(10px, 1.2vw, 16px);
}
.home-page .infrastructure-chapter .compact-emerging-continuation > .band-inner {
  padding-block: 0;
}
.home-page .emerging-rail-intro { margin-bottom: clamp(14px, 1.4vw, 18px); }
@media (max-width: 760px) {
  .home-page .infrastructure-focus .infrastructure-panel { padding-bottom: 14px; }
  .home-page .infrastructure-control-panel .infra-detail { padding: 14px 16px 15px; text-align: left; }
  .home-page .infrastructure-chapter .compact-emerging-continuation { padding-top: 14px; }
}
/* Organisational Trust Infrastructure: retain the composition while keeping all diagram labels crisp. */
.home-page .trust-architecture-25d { perspective: none; }
.home-page .architecture-stage {
  filter: none;
  transform-style: flat;
  text-rendering: geometricPrecision;
}
.home-page .architecture-canopy,
.home-page .architecture-volume,
.home-page .trust-volume,
.home-page .capability-plates,
.home-page .trust-data-plane {
  transform: none;
  transform-style: flat;
  backface-visibility: visible;
}
.home-page .architecture-canopy strong,
.home-page .architecture-volume > span,
.home-page .capability-plates span,
.home-page .trust-data-plane,
.home-page .sovereignty-foundation span {
  -webkit-font-smoothing: antialiased;
  text-rendering: geometricPrecision;
}
.home-page .architecture-canopy span,
.home-page .architecture-volume small {
  color: #304864;
  font-size: 0.72rem;
  font-weight: 500;
}
.home-page .architecture-volume > span {
  color: #152f4f;
  font-size: 0.68rem;
  font-weight: 700;
}
.home-page .trust-volume > span { color: #765316; }
.home-page .capability-plates span {
  border-color: rgba(30, 57, 89, 0.58);
  border-bottom-color: rgba(30, 57, 89, 0.36);
  background: linear-gradient(145deg, #fbfdff, #d8e5f1);
  box-shadow: 0 5px 10px rgba(18, 40, 70, 0.1);
  color: #142f50;
  font-size: 0.64rem;
  font-weight: 700;
}
.home-page .trust-data-plane {
  border-color: #17365f;
  box-shadow: none;
  color: #ffffff;
  font-size: 0.68rem;
}
.home-page .sovereignty-foundation span {
  color: #f2f6fb;
  font-size: 0.61rem;
  font-weight: 700;
}
@media (max-width: 760px) {
  .home-page .architecture-canopy span { font-size: 0.66rem; }
  .home-page .architecture-volume small { font-size: 0.68rem; }
  .home-page .capability-plates span { font-size: 0.59rem; }
}
/* Give the governance canopy a clear, crisp apex against the ivory field. */
.home-page .architecture-canopy { overflow: visible; }
.home-page .architecture-canopy .canopy-outline {
  position: absolute;
  z-index: 0;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  overflow: visible;
  pointer-events: none;
}
.home-page .architecture-canopy .canopy-outline path {
  fill: none;
  stroke: rgba(30, 57, 89, 0.72);
  stroke-width: 1.5;
  vector-effect: non-scaling-stroke;
  stroke-linejoin: round;
}
.home-page .architecture-canopy > strong,
.home-page .architecture-canopy > span {
  position: relative;
  z-index: 1;
}
/* Service teaser: keep the two desktop actions together as one CTA group. */
@media (min-width: 761px) {
  .home-page .service-teaser-actions {
    flex-direction: row;
    align-items: center;
    gap: clamp(18px, 2vw, 30px);
  }
  .home-page .service-teaser-actions .inline-link {
    min-height: 46px;
    margin: 0;
    white-space: nowrap;
  }
}
/* Place service-teaser actions directly beneath the supporting copy on larger screens. */
@media (min-width: 761px) {
  .home-page .service-teaser {
    grid-template-columns: minmax(0, 1fr);
    gap: 22px;
  }
  .home-page .service-teaser-actions {
    justify-self: start;
    align-self: start;
  }
}
/* Who Just Verify Supports: compact editorial ledger, with all audience detail visible. */
.home-page .audience-ledger {
  margin-top: 0;
  border-top: 1px solid rgba(30, 57, 89, 0.28);
}
.home-page .audience-ledger-row {
  display: grid;
  grid-template-columns: 96px minmax(250px, 0.93fr) minmax(280px, 1.18fr) minmax(260px, 0.98fr);
  gap: clamp(18px, 2.2vw, 32px);
  align-items: start;
  min-width: 0;
  padding: clamp(24px, 2.25vw, 32px) 0;
  border-bottom: 1px solid rgba(30, 57, 89, 0.22);
}
.home-page .audience-ledger-marker {
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--gold-dark);
  font-family: var(--font-label);
  font-size: 0.64rem;
  font-weight: 700;
  letter-spacing: 0.06em;
}
.home-page .audience-ledger-marker .line-icon {
  width: 34px;
  height: 34px;
  color: var(--legacy-blue-700);
}
.home-page .audience-ledger h3 {
  margin: 0;
  color: var(--navy);
  font-size: clamp(1.05rem, 1.32vw, 1.32rem);
  font-weight: 650;
  line-height: 1.2;
}
.home-page .audience-ledger-purpose,
.home-page .audience-ledger-includes {
  margin: 0;
  color: var(--ink-soft);
  font-size: 0.82rem;
  line-height: 1.58;
}
.home-page .audience-ledger-includes {
  padding-left: 16px;
  border-left: 2px solid rgba(180, 137, 61, 0.68);
}
.home-page .audience-ledger-includes > span {
  display: block;
  margin-bottom: 6px;
  color: var(--gold-dark);
  font-family: var(--font-label);
  font-size: 0.57rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.2;
  text-transform: uppercase;
}
@media (max-width: 1100px) {
  .home-page .audience-ledger-row {
    grid-template-columns: 92px minmax(0, 0.9fr) minmax(0, 1.1fr);
  }
  .home-page .audience-ledger-includes { grid-column: 2 / -1; }
}
@media (max-width: 760px) {
  .home-page .audience-ledger-row {
    grid-template-columns: 1fr;
    gap: 11px;
    padding: 23px 0;
  }
  .home-page .audience-ledger-includes {
    grid-column: auto;
    margin-top: 4px;
    padding: 12px 0 0;
    border-top: 1px solid rgba(30, 57, 89, 0.18);
    border-left: 0;
  }
}
/* Audience ledger introduction: align the two editorial messages as one composed header. */
.home-page .audience-ledger-intro {
  grid-template-columns: minmax(0, 1.24fr) minmax(280px, 0.76fr);
  align-items: start;
  gap: clamp(34px, 4.5vw, 68px);
  margin-bottom: clamp(26px, 2.5vw, 34px);
}
.home-page .audience-ledger-intro h2 {
  max-width: 24ch;
}
.home-page .audience-intro-lead {
  align-self: start;
  margin-top: 0.36rem;
  padding-left: 17px;
  border-left: 2px solid var(--gold);
}
.home-page .audience-intro-lead > span {
  display: block;
  margin-bottom: 9px;
  color: var(--gold-dark);
  font-family: var(--font-label);
  font-size: 0.58rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 1.2;
  text-transform: uppercase;
}
.home-page .audience-intro-lead p {
  max-width: 36rem;
  margin: 0;
  color: var(--ink-soft);
  font-size: 0.94rem;
  line-height: 1.62;
}
@media (max-width: 1024px) {
  .home-page .audience-ledger-intro { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .home-page .audience-ledger-intro h2 { max-width: 23ch; }
  .home-page .audience-intro-lead { max-width: 44rem; margin-top: 0; }
}
@media (max-width: 760px) {
  .home-page .audience-ledger-intro h2 { max-width: none; }
  .home-page .audience-intro-lead p { font-size: 0.88rem; }
}
/* Give the audience-section lead a distinct, quiet supporting panel. */
.home-page .audience-intro-lead {
  padding: clamp(20px, 2.1vw, 28px);
  border: 1px solid rgba(30, 57, 89, 0.22);
  border-left: 3px solid var(--gold);
  background: rgba(255, 253, 248, 0.72);
  box-shadow: 0 10px 26px rgba(18, 40, 70, 0.045);
}
@media (max-width: 760px) {
  .home-page .audience-intro-lead { padding: 18px; }
}
/* Final CTA: editorial closing band */
.home-page .home-cta {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(330px, 0.72fr);
  align-items: center;
  gap: clamp(42px, 7vw, 116px);
  width: min(var(--content-max), calc(100% - (var(--page-gutter) * 2)));
  min-height: 0;
  margin: 0 auto;
  padding-block: clamp(58px, 6.4vw, 96px);
  overflow: visible;
  background: linear-gradient(90deg, rgba(255, 253, 248, 0.9), rgba(243, 238, 227, 0.56));
}

.home-page .home-cta::before,
.home-page .home-cta::after,
.home-page .home-cta .cta-motif {
  display: none;
}

.home-page .home-cta .cta-copy {
  min-width: 0;
}

.home-page .home-cta h2 {
  max-width: 15ch;
  margin: 0;
  font-size: clamp(2.55rem, 3.8vw, 4.25rem);
  line-height: 1.04;
  text-wrap: balance;
}

.home-page .cta-action-panel {
  display: grid;
  gap: 28px;
  min-width: 0;
  padding: clamp(24px, 3vw, 38px);
  border: 1px solid rgba(22, 38, 74, 0.2);
  border-left: 2px solid var(--gold);
  background: rgba(255, 253, 248, 0.52);
}

.home-page .cta-action-panel > p {
  max-width: 54ch;
  margin: 0;
  color: var(--ink-soft);
  font-size: clamp(0.94rem, 1.05vw, 1.04rem);
  line-height: 1.7;
}

.home-page .home-cta .hero-actions {
  display: flex;
  grid-column: auto;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  justify-self: start;
  width: auto;
  margin: 0;
  gap: 12px;
}

.home-page .home-cta .button.primary,
.home-page .home-cta .button.text-button {
  width: auto;
  min-height: 46px;
  white-space: nowrap;
}

.home-page .home-cta .button.primary {
  min-width: 172px;
}

.home-page .home-cta .button.text-button {
  min-width: 184px;
  padding-inline: 20px;
  border: 1px solid var(--gold);
  color: var(--ink);
  text-decoration: none;
}

.home-page .home-cta .button.text-button::after {
  margin-left: 14px;
}

@media (max-width: 900px) {
  .home-page .home-cta {
    grid-template-columns: minmax(0, 1fr);
    gap: 30px;
    padding-block: clamp(48px, 7vw, 68px);
  }

  .home-page .home-cta h2 {
    max-width: 18ch;
  }

  .home-page .cta-action-panel {
    max-width: 680px;
  }
}

@media (max-width: 560px) {
  .home-page .home-cta {
    padding-block: 46px;
    gap: 24px;
  }

  .home-page .home-cta h2 {
    max-width: 12ch;
    font-size: clamp(2.2rem, 10vw, 2.9rem);
  }

  .home-page .cta-action-panel {
    gap: 22px;
    padding: 22px 20px;
  }

  .home-page .cta-action-panel > p {
    font-size: 0.92rem;
    line-height: 1.65;
  }

  .home-page .home-cta .hero-actions {
    display: grid;
    width: 100%;
    grid-template-columns: minmax(0, 1fr);
  }

  .home-page .home-cta .button.primary,
  .home-page .home-cta .button.text-button {
    justify-content: center;
    width: 100%;
  }
}
/* Final CTA proportion correction */
@media (min-width: 901px) {
  .home-page .home-cta {
    grid-template-columns: minmax(0, 1fr) minmax(390px, 0.86fr);
    gap: clamp(44px, 5vw, 72px);
    padding-block: clamp(52px, 5.5vw, 82px);
  }

  .home-page .home-cta h2 {
    max-width: 16.5ch;
  }

  .home-page .cta-action-panel {
    gap: 24px;
    padding: clamp(26px, 2.5vw, 34px);
  }

  .home-page .home-cta .button.primary {
    min-width: 162px;
  }

  .home-page .home-cta .button.text-button {
    min-width: 172px;
    padding-inline: 17px;
  }
}
/* Final CTA full-width band and outer breathing room */
.home-page .final-cta-band {
  position: relative;
  width: 100%;
  overflow: hidden;
  background: linear-gradient(90deg, rgba(255, 253, 248, 0.96), rgba(243, 238, 227, 0.72));
}

.home-page .final-cta-band .home-cta {
  box-sizing: border-box;
  padding-right: clamp(24px, 3vw, 54px);
  background: transparent;
}

@media (max-width: 900px) {
  .home-page .final-cta-band .home-cta {
    padding-right: 0;
  }
}
/* Homepage CTA pathway refinement */
.home-page .section-route-link {
  min-height: 44px;
}

.home-page .gap-static-route {
  display: flex;
  width: fit-content;
  margin: 19px auto 0;
}

.home-page .environment-static-route {
  margin-top: 22px;
  color: var(--gold-light);
}

.home-page .infrastructure-copy-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px 22px;
  margin-top: 20px;
}

.home-page .infrastructure-copy-actions .inline-link {
  margin-top: 0;
}

.home-page .emerging-trust-lab-link {
  margin-top: 18px;
  color: var(--gold-light);
}

@media (max-width: 760px) {
  .home-page .gap-static-route,
  .home-page .environment-static-route,
  .home-page .emerging-trust-lab-link {
    margin-top: 18px;
  }

  .home-page .infrastructure-copy-actions {
    align-items: flex-start;
    flex-direction: column;
    gap: 8px;
  }
}
/* CTA hierarchy and alignment corrections */
.home-page .environment-static-route {
  display: flex;
  width: fit-content;
  margin-inline: auto;
}

.home-page .infrastructure-partnership-button {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: 0 17px;
  border: 1px solid var(--gold);
  color: var(--white);
  font-family: var(--font-label);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.055em;
  text-transform: uppercase;
  transition: background 160ms ease, color 160ms ease;
}

.home-page .infrastructure-partnership-button::after {
  margin-left: 14px;
  content: "\2192";
}

.home-page .infrastructure-partnership-button:hover,
.home-page .infrastructure-partnership-button:focus-visible {
  color: var(--white);
  background: rgba(209, 178, 115, 0.14);
  outline: 2px solid var(--gold-light);
  outline-offset: 3px;
}

.home-page .infrastructure-discussion-link {
  color: rgba(255, 255, 255, 0.86);
}

.home-page .home-cta .button.text-button {
  padding-right: 42px;
  padding-left: 20px;
}

.home-page .home-cta .button.text-button::after {
  right: 17px;
}
/* Homepage content motion: one restrained reveal per section. */
.motion-ready .home-hero:not(.is-visible) .home-hero-copy,
.motion-ready .home-hero:not(.is-visible) .hero-architecture,
.motion-ready .verification-gap-v2:not(.is-visible) .gap-static-intro,
.motion-ready .verification-gap-v2:not(.is-visible) .gap-static-card,
.motion-ready .verification-gap-v2:not(.is-visible) .gap-static-pathway,
.motion-ready .verification-gap-v2:not(.is-visible) .gap-static-route,
.motion-ready .verification-environment-v2:not(.is-visible) .environment-static-intro,
.motion-ready .verification-environment-v2:not(.is-visible) .environment-static-card,
.motion-ready .verification-environment-v2:not(.is-visible) .compact-lifecycle-cue,
.motion-ready .verification-environment-v2:not(.is-visible) .environment-static-route,
.motion-ready .service-teaser-band:not(.is-visible) .service-teaser-copy,
.motion-ready .service-teaser-band:not(.is-visible) .service-teaser-actions,
.motion-ready .infrastructure-chapter:not(.is-visible) .infrastructure-copy-actions,
.motion-ready .infrastructure-chapter:not(.is-visible) .compact-emerging-continuation,
.motion-ready .infrastructure-chapter:not(.is-visible) .emerging-compact-item,
.motion-ready .audience-chapter:not(.is-visible) .audience-intro-lead,
.motion-ready .audience-chapter:not(.is-visible) .audience-ledger-row,
.motion-ready [data-motion="footer"]:not(.is-visible) .footer-newsletter,
.motion-ready [data-motion="footer"]:not(.is-visible) .footer-statement,
.motion-ready [data-motion="footer"]:not(.is-visible) .footer-brand-block,
.motion-ready [data-motion="footer"]:not(.is-visible) .footer-column,
.motion-ready [data-motion="footer"]:not(.is-visible) .footer-bottom {
  opacity: 0;
  transform: translateY(20px);
}

.motion-ready .home-hero.is-visible .home-hero-copy,
.motion-ready .home-hero.is-visible .hero-architecture,
.motion-ready .verification-gap-v2.is-visible .gap-static-intro,
.motion-ready .verification-gap-v2.is-visible .gap-static-card,
.motion-ready .verification-gap-v2.is-visible .gap-static-pathway,
.motion-ready .verification-gap-v2.is-visible .gap-static-route,
.motion-ready .verification-environment-v2.is-visible .environment-static-intro,
.motion-ready .verification-environment-v2.is-visible .environment-static-card,
.motion-ready .verification-environment-v2.is-visible .compact-lifecycle-cue,
.motion-ready .verification-environment-v2.is-visible .environment-static-route,
.motion-ready .service-teaser-band.is-visible .service-teaser-copy,
.motion-ready .service-teaser-band.is-visible .service-teaser-actions,
.motion-ready .infrastructure-chapter.is-visible .infrastructure-copy-actions,
.motion-ready .infrastructure-chapter.is-visible .compact-emerging-continuation,
.motion-ready .infrastructure-chapter.is-visible .emerging-compact-item,
.motion-ready .audience-chapter.is-visible .audience-intro-lead,
.motion-ready .audience-chapter.is-visible .audience-ledger-row,
.motion-ready [data-motion="footer"].is-visible .footer-newsletter,
.motion-ready [data-motion="footer"].is-visible .footer-statement,
.motion-ready [data-motion="footer"].is-visible .footer-brand-block,
.motion-ready [data-motion="footer"].is-visible .footer-column,
.motion-ready [data-motion="footer"].is-visible .footer-bottom {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 560ms ease, transform 720ms cubic-bezier(0.22, 1, 0.36, 1);
}

.motion-ready .verification-gap-v2.is-visible .gap-static-card:nth-child(1),
.motion-ready .verification-environment-v2.is-visible .environment-static-card:nth-child(1),
.motion-ready .infrastructure-chapter.is-visible .emerging-compact-item:nth-child(1),
.motion-ready .audience-chapter.is-visible .audience-ledger-row:nth-child(1) { transition-delay: 90ms; }
.motion-ready .verification-gap-v2.is-visible .gap-static-card:nth-child(2),
.motion-ready .verification-environment-v2.is-visible .environment-static-card:nth-child(2),
.motion-ready .infrastructure-chapter.is-visible .emerging-compact-item:nth-child(2),
.motion-ready .audience-chapter.is-visible .audience-ledger-row:nth-child(2) { transition-delay: 160ms; }
.motion-ready .verification-gap-v2.is-visible .gap-static-card:nth-child(3),
.motion-ready .verification-environment-v2.is-visible .environment-static-card:nth-child(3),
.motion-ready .infrastructure-chapter.is-visible .emerging-compact-item:nth-child(3),
.motion-ready .audience-chapter.is-visible .audience-ledger-row:nth-child(3) { transition-delay: 230ms; }
.motion-ready .verification-gap-v2.is-visible .gap-static-card:nth-child(4),
.motion-ready .verification-environment-v2.is-visible .environment-static-card:nth-child(4),
.motion-ready .infrastructure-chapter.is-visible .emerging-compact-item:nth-child(4),
.motion-ready .audience-chapter.is-visible .audience-ledger-row:nth-child(4) { transition-delay: 300ms; }
.motion-ready .verification-environment-v2.is-visible .environment-static-card:nth-child(5) { transition-delay: 370ms; }
.motion-ready .verification-environment-v2.is-visible .environment-static-card:nth-child(6) { transition-delay: 440ms; }

.motion-ready [data-motion].is-visible .gap-static-card .line-icon,
.motion-ready [data-motion].is-visible .environment-static-card .line-icon,
.motion-ready [data-motion].is-visible .audience-ledger-marker .line-icon {
  animation: homepage-icon-arrive 620ms cubic-bezier(0.22, 1, 0.36, 1) both;
}

.motion-ready .home-hero.is-visible .hero-architecture { transition-delay: 120ms; }
.motion-ready .verification-gap-v2.is-visible .gap-static-pathway { transition-delay: 260ms; }
.motion-ready .verification-gap-v2.is-visible .gap-static-route { transition-delay: 360ms; }
.motion-ready .verification-environment-v2.is-visible .compact-lifecycle-cue { transition-delay: 420ms; }
.motion-ready .verification-environment-v2.is-visible .environment-static-route { transition-delay: 520ms; }
.motion-ready .service-teaser-band.is-visible .service-teaser-actions { transition-delay: 150ms; }
.motion-ready .infrastructure-chapter.is-visible .compact-emerging-continuation { transition-delay: 320ms; }
.motion-ready .infrastructure-chapter.is-visible .infrastructure-copy-actions { transition-delay: 160ms; }
.motion-ready [data-motion="footer"].is-visible .footer-statement { transition-delay: 80ms; }
.motion-ready [data-motion="footer"].is-visible .footer-brand-block { transition-delay: 140ms; }
.motion-ready [data-motion="footer"].is-visible .footer-column { transition-delay: 210ms; }
.motion-ready [data-motion="footer"].is-visible .footer-bottom { transition-delay: 290ms; }

@keyframes homepage-icon-arrive {
  from { opacity: 0; transform: translateY(7px) scale(0.84); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}

/* Keep the Trust Lab route centred within the Beyond Software continuation. */
.home-page .emerging-trust-lab-link {
  display: flex;
  width: fit-content;
  margin-inline: auto;
}
/* Homepage readability refinement: retain the editorial system while lifting dense supporting copy. */
.home-page {
  --homepage-body-readable: clamp(0.9375rem, 0.3vw + 0.88rem, 1rem);
  --homepage-support-readable: clamp(0.9375rem, 0.18vw + 0.9rem, 0.98rem);
  --homepage-mono-readable: clamp(0.69rem, 0.2vw + 0.65rem, 0.75rem);
}
.home-page .home-hero .scene-domain-controls button {
  max-width: 160px;
  padding: 8px 11px;
  font-size: clamp(0.75rem, 0.7vw, 0.81rem);
  line-height: 1.36;
}
.home-page .home-hero .scene-detail { font-size: var(--homepage-mono-readable); line-height: 1.5; }
.home-page .home-hero .diagram-core text { font-size: 10.75px; font-weight: 700; }
.home-page .home-hero .diagram-labels text { font-size: 10.5px; font-weight: 650; }

.home-page .gap-static-intro > p:last-child,
.home-page .environment-static-intro > p:not(.eyebrow):not(.environment-signal),
.home-page .architecture-copy > p:not(.eyebrow):not(.concept-label):not(.architecture-closing-inline),
.home-page .service-teaser-copy > p:last-child,
.home-page .audience-intro-lead p,
.home-page .cta-action-panel > p {
  font-size: var(--homepage-body-readable);
  line-height: 1.66;
}
.home-page .gap-static-card p,
.home-page .environment-static-card > p:not(.environment-static-includes),
.home-page .audience-ledger-purpose,
.home-page .audience-ledger-includes,
.home-page .infra-detail,
.home-page .emerging-rail-intro {
  font-size: var(--homepage-support-readable);
  line-height: 1.58;
}
.home-page .gap-static-card-head > span,
.home-page .environment-static-card-head > span,
.home-page .compact-lifecycle-cue ol,
.home-page .environment-static-includes,
.home-page .environment-static-includes span,
.home-page .maturity-label,
.home-page .infrastructure-items button[role="tab"],
.home-page .audience-ledger-marker,
.home-page .audience-ledger-includes > span {
  font-size: var(--homepage-mono-readable);
}
.home-page .gap-static-card h3,
.home-page .environment-static-card h3 { font-size: clamp(1rem, 1.05vw, 1.08rem); line-height: 1.3; }
.home-page .gap-static-card,
.home-page .environment-static-card { gap: 0; }
.home-page .gap-static-card p,
.home-page .environment-static-card > p:not(.environment-static-includes) { max-width: 36ch; }
.home-page .environment-static-includes { margin-top: 18px; padding-top: 14px; }
.home-page .compact-lifecycle-cue p { font-size: var(--homepage-support-readable); line-height: 1.58; }

.home-page .architecture-canopy strong { font-size: clamp(0.76rem, 0.88vw, 0.88rem); letter-spacing: 0.075em; }
.home-page .architecture-canopy span,
.home-page .architecture-volume small { font-size: clamp(0.7rem, 0.72vw, 0.78rem); line-height: 1.42; }
.home-page .architecture-volume > span,
.home-page .trust-data-plane,
.home-page .sovereignty-foundation span,
.home-page .capability-plates span { font-size: clamp(0.69rem, 0.7vw, 0.76rem); line-height: 1.34; }
.home-page .architecture-volume .line-icon { width: 27px; height: 27px; }

.home-page .infrastructure-copy > p { font-size: var(--homepage-body-readable); line-height: 1.65; }
.home-page .infrastructure-items button[role="tab"] { min-height: 58px; padding: 14px 11px 15px; line-height: 1.42; }
.home-page .infrastructure-control-panel .infra-detail { min-height: 3.25em; font-size: var(--homepage-support-readable); line-height: 1.58; }
.home-page .emerging-rail-heading .eyebrow { margin-bottom: 8px; color: var(--gold-light); }
.home-page .emerging-rail-intro { max-width: 60rem; }
.home-page .emerging-compact-item h4 { font-size: clamp(0.94rem, 1vw, 1.04rem); line-height: 1.32; }

@media (max-width: 760px) {
  .home-page .gap-static-card p,
  .home-page .environment-static-card > p:not(.environment-static-includes),
  .home-page .audience-ledger-purpose,
  .home-page .audience-ledger-includes { font-size: 0.9375rem; }
  .home-page .architecture-canopy span,
  .home-page .architecture-volume small { font-size: 0.69rem; }
  .home-page .architecture-volume > span,
  .home-page .trust-data-plane,
  .home-page .sovereignty-foundation span,
  .home-page .capability-plates span { font-size: 0.68rem; }
  .home-page .infrastructure-items button[role="tab"] { min-height: 58px; font-size: 0.69rem; }
  .home-page .infra-detail { font-size: 0.9375rem; }
  .home-page .emerging-rail-heading .eyebrow { margin-bottom: 7px; }
}
/* Homepage CTA routing: temporary Solutions labels retain the established Services route. */
.home-page .architecture-initiative-link {
  display: inline-flex;
  margin-top: clamp(24px, 2vw, 32px);
}
/* Homepage visual refinement: control density and preserve focus treatments inside their bounds. */
.home-page .infrastructure-control-panel .infra-detail {
  min-height: 0;
  padding: 13px clamp(18px, 3vw, 42px) 14px;
  font-size: clamp(0.875rem, 0.1vw + 0.84rem, 0.9375rem);
  font-weight: 400;
  letter-spacing: 0.01em;
  line-height: 1.56;
  text-align: center;
}
.home-page .infrastructure-items button[role="tab"] {
  font-size: clamp(0.66rem, 0.11vw + 0.64rem, 0.72rem);
  letter-spacing: 0.035em;
  line-height: 1.3;
}
.home-page .infrastructure-partnership-button:hover,
.home-page .infrastructure-partnership-button:focus-visible {
  outline: 0;
  box-shadow: inset 0 0 0 1px rgba(255, 253, 248, 0.78);
}
@media (min-width: 761px) {
  .home-page .home-hero .scene-domain-controls button {
    max-width: 152px;
    padding: 6px 6px 7px;
    font-size: clamp(0.65625rem, 0.55vw, 0.71875rem);
    letter-spacing: 0.06em;
    line-height: 1.3;
  }
}
@media (max-width: 760px) {
  .home-page .infrastructure-control-panel .infra-detail {
    padding: 12px 16px 13px;
    font-size: clamp(0.8125rem, 0.5vw + 0.7rem, 0.875rem);
    line-height: 1.54;
  }
  .home-page .infrastructure-items button[role="tab"] { font-size: 0.64rem; }
  .home-page .home-hero .scene-domain-controls button {
    font-size: 0.625rem;
    letter-spacing: 0.045em;
    line-height: 1.3;
  }
}
/* Inner-page institutional design system: shared foundation and deliberate page variants. */
body.inner-page {
  --inner-max: 1280px;
  --inner-copy: 44rem;
  --inner-wide-copy: 60rem;
  --inner-form: 56rem;
  --inner-space-compact: clamp(38px, 4.6vw, 66px);
  --inner-space: clamp(58px, 6.5vw, 98px);
  --inner-space-feature: clamp(72px, 8vw, 132px);
  --inner-space-hero: clamp(74px, 9vw, 132px);
  --inner-radius: 2px;
  --inner-line: rgba(16, 40, 67, 0.18);
  --inner-line-soft: rgba(16, 40, 67, 0.1);
  --inner-line-dark: rgba(255, 253, 248, 0.18);
  --inner-stone: #f1ede4;
  --inner-mineral: #e9eef2;
  --inner-technical: #f7f8f7;
  --inner-shadow: 0 18px 42px rgba(9, 33, 63, 0.06);
  --inner-label: clamp(0.64rem, 0.16vw + 0.61rem, 0.72rem);
  --inner-ease: cubic-bezier(0.22, 0.61, 0.36, 1);
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
body.inner-page .inner-page-main {
  overflow: clip;
  background: var(--ivory);
}
body.inner-page .inner-page-main > .section {
  width: min(var(--inner-max), calc(100% - 48px));
  margin: 0 auto;
  padding-block: var(--inner-space);
}
body.inner-page .inner-page-main > .section + .section {
  border-top: 1px solid var(--inner-line);
}
body.inner-page .inner-page-main > .inner-page-hero,
body.inner-page .inner-page-main > .initiative-question-section,
body.inner-page .inner-page-main > .inner-crosslink-band,
body.inner-page .inner-page-main > .contact-closing-message {
  width: 100%;
  max-width: none;
  padding-inline: max(24px, calc((100% - var(--inner-max)) / 2));
}
body.inner-page .inner-page-hero {
  position: relative;
  display: grid;
  align-content: center;
  isolation: isolate;
  min-height: 0;
  padding-block: var(--inner-space-hero);
  overflow: hidden;
  background: var(--ivory);
}
body.inner-page .inner-page-hero::before,
body.inner-page .inner-page-hero::after {
  position: absolute;
  z-index: -1;
  content: "";
  pointer-events: none;
}
body.inner-page .inner-page-hero::before {
  right: max(2vw, calc((100% - var(--inner-max)) / 2));
  bottom: 14%;
  width: min(36vw, 510px);
  height: min(18vw, 240px);
  border: 1px solid rgba(180, 137, 61, 0.42);
  background:
    repeating-linear-gradient(90deg, transparent 0 42px, rgba(16, 40, 67, 0.075) 42px 43px),
    repeating-linear-gradient(0deg, transparent 0 42px, rgba(16, 40, 67, 0.075) 42px 43px);
  opacity: 0.72;
}
body.inner-page .inner-page-hero::after {
  top: 17%;
  right: max(-8vw, calc((100% - var(--inner-max)) / 2 - 70px));
  width: min(30vw, 430px);
  height: min(30vw, 430px);
  border: 1px solid rgba(16, 40, 67, 0.12);
  border-radius: 50%;
  opacity: 0.54;
}
body.inner-page .inner-page-hero h1 {
  max-width: 18ch;
  margin: 12px 0 22px;
  color: var(--ink);
  font-size: clamp(2.55rem, 4.9vw, 5.45rem);
  font-weight: 650;
  letter-spacing: -0.058em;
  line-height: 0.98;
  text-wrap: balance;
}
body.inner-page .inner-page-hero > p:not(.eyebrow) {
  max-width: 62ch;
  margin: 0;
  color: var(--ink);
  font-size: clamp(1rem, 0.45vw + 0.91rem, 1.12rem);
  line-height: 1.68;
}
body.inner-page .inner-page-hero .hero-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px 16px;
  margin-top: 30px;
}
body.inner-page .inner-page-hero .button,
body.inner-page .inner-page-closing .button {
  min-height: 46px;
  padding-inline: 20px;
}
body.inner-page .eyebrow,
body.inner-page .maturity-label {
  color: var(--gold);
  font-family: var(--font-label);
  font-size: var(--inner-label);
  font-weight: 600;
  letter-spacing: 0.12em;
  line-height: 1.35;
  text-transform: uppercase;
}
body.inner-page .section-heading {
  max-width: var(--inner-wide-copy);
  margin: 0 0 clamp(26px, 3.4vw, 48px);
}
body.inner-page .section-heading h2,
body.inner-page .inner-section-intro h2 {
  margin: 9px 0 0;
  color: var(--ink);
  font-size: clamp(2rem, 3.15vw, 3.55rem);
  font-weight: 650;
  letter-spacing: -0.052em;
  line-height: 1.04;
  text-wrap: balance;
}
body.inner-page .section-heading.split {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(280px, 0.72fr);
  align-items: end;
  gap: clamp(32px, 7vw, 120px);
  max-width: none;
}
body.inner-page .section-heading.split > p {
  max-width: 47ch;
  margin: 0 0 4px;
  color: var(--muted);
  font-size: 0.98rem;
  line-height: 1.67;
}
body.inner-page .inner-editorial-grid {
  display: grid;
  grid-template-columns: minmax(0, 0.96fr) minmax(360px, 0.84fr);
  align-items: start;
  gap: clamp(42px, 8vw, 136px);
}
body.inner-page .inner-section-intro { max-width: 38rem; }
body.inner-page .inner-rich-copy {
  max-width: var(--inner-copy);
  padding-left: clamp(20px, 2vw, 30px);
  border-left: 1px solid var(--gold);
}
body.inner-page .inner-rich-copy p,
body.inner-page .inner-concept-copy p,
body.inner-page .current-priorities-panel p,
body.inner-page .participation-terms p:not(.eyebrow),
body.inner-page .inner-form-intro p {
  margin: 0;
  color: var(--ink);
  font-size: 1rem;
  line-height: 1.72;
}
body.inner-page .inner-rich-copy p + p,
body.inner-page .inner-concept-copy p + p { margin-top: 18px; }
body.inner-page .inner-definition-strip,
body.inner-page .inner-audience-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(172px, 1fr));
  margin-top: clamp(30px, 4.5vw, 52px);
  border-top: 1px solid var(--inner-line);
  border-left: 1px solid var(--inner-line);
}
body.inner-page .inner-definition-strip > span,
body.inner-page .inner-audience-grid > span {
  display: grid;
  min-height: 72px;
  align-items: center;
  padding: 15px 17px;
  border-right: 1px solid var(--inner-line);
  border-bottom: 1px solid var(--inner-line);
  color: var(--ink);
  font-family: var(--font-label);
  font-size: var(--inner-label);
  font-weight: 600;
  letter-spacing: 0.045em;
  line-height: 1.45;
  text-transform: uppercase;
}
body.inner-page .mission-vision {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.08fr);
  border-top: 1px solid var(--inner-line);
  border-bottom: 1px solid var(--inner-line);
}
body.inner-page .mission-vision article {
  min-height: 0;
  padding: clamp(28px, 4vw, 56px) clamp(22px, 4vw, 60px);
}
body.inner-page .mission-vision article + article {
  border-left: 1px solid var(--inner-line);
  background: linear-gradient(135deg, rgba(233, 238, 242, 0.76), rgba(255, 253, 248, 0.16));
}
body.inner-page .mission-vision h3 {
  max-width: 25ch;
  margin: 17px 0 0;
  font-size: clamp(1.35rem, 2vw, 2.05rem);
  font-weight: 620;
  letter-spacing: -0.038em;
  line-height: 1.15;
}
body.inner-page .inner-concept-section {
  display: grid;
  grid-template-columns: minmax(300px, 0.75fr) minmax(0, 1.25fr);
  align-items: center;
  gap: clamp(40px, 8vw, 126px);
}
body.inner-page .inner-concept-copy h2 {
  max-width: 15ch;
  margin: 9px 0 20px;
  font-size: clamp(2rem, 3vw, 3.35rem);
  letter-spacing: -0.052em;
  line-height: 1.05;
}
body.inner-page .inner-concept-diagram {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1.16fr 1fr;
  gap: 10px;
  padding: clamp(20px, 3vw, 44px);
  border: 1px solid var(--inner-line);
  background:
    linear-gradient(rgba(16, 40, 67, 0.048) 1px, transparent 1px),
    linear-gradient(90deg, rgba(16, 40, 67, 0.048) 1px, transparent 1px),
    rgba(247, 248, 247, 0.82);
  background-size: 24px 24px;
}
body.inner-page .inner-concept-diagram::before {
  position: absolute;
  top: 20%;
  right: 15%;
  left: 15%;
  height: 1px;
  background: var(--gold);
  content: "";
  opacity: 0.74;
}
body.inner-page .inner-concept-diagram > div {
  display: grid;
  min-height: 158px;
  align-content: center;
  gap: 10px;
  padding: 18px 15px;
  border: 1px solid rgba(16, 40, 67, 0.25);
  background: rgba(255, 253, 248, 0.78);
  text-align: center;
}
body.inner-page .inner-concept-diagram .concept-core {
  position: relative;
  border-color: var(--gold);
  background: rgba(255, 249, 235, 0.88);
}
body.inner-page .inner-concept-diagram .concept-core::before {
  position: absolute;
  top: -11px;
  left: 50%;
  width: 20px;
  height: 20px;
  border: 1px solid var(--gold);
  border-radius: 50%;
  background: var(--paper);
  content: "";
  transform: translateX(-50%);
}
body.inner-page .inner-concept-diagram strong {
  font-family: var(--font-label);
  font-size: 0.7rem;
  letter-spacing: 0.06em;
  line-height: 1.4;
  text-transform: uppercase;
}
body.inner-page .inner-concept-diagram span {
  color: var(--muted);
  font-size: 0.82rem;
  line-height: 1.47;
}
body.inner-page .inner-route-grid,
body.inner-page .inner-principles-grid,
body.inner-page .inner-activity-grid,
body.inner-page .decision-family-grid,
body.inner-page .research-domain-grid,
body.inner-page .partnership-route-grid,
body.inner-page .contact-route-grid,
body.inner-page .emerging-environment-grid {
  display: grid;
  gap: 0;
  border-top: 1px solid var(--inner-line);
  border-left: 1px solid var(--inner-line);
}
body.inner-page .inner-route-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
body.inner-page .inner-principles-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }
body.inner-page .inner-activity-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
body.inner-page .decision-family-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
body.inner-page .research-domain-grid,
body.inner-page .partnership-route-grid,
body.inner-page .contact-route-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
body.inner-page .emerging-environment-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
body.inner-page .inner-route-grid > *,
body.inner-page .inner-principles-grid > article,
body.inner-page .inner-activity-grid > article,
body.inner-page .decision-family-grid > article,
body.inner-page .research-domain-grid > article,
body.inner-page .partnership-route-grid > article,
body.inner-page .contact-route-grid > a,
body.inner-page .emerging-environment-grid > article {
  position: relative;
  display: flex;
  min-width: 0;
  min-height: 0;
  flex-direction: column;
  align-items: flex-start;
  padding: clamp(22px, 2.6vw, 34px);
  border-right: 1px solid var(--inner-line);
  border-bottom: 1px solid var(--inner-line);
  background: transparent;
}
body.inner-page .inner-route-grid > a,
body.inner-page .contact-route-grid > a {
  transition: background-color 180ms var(--inner-ease), color 180ms var(--inner-ease), border-color 180ms var(--inner-ease);
}
body.inner-page .inner-route-grid > a:hover,
body.inner-page .inner-route-grid > a:focus-visible,
body.inner-page .contact-route-grid > a:hover,
body.inner-page .contact-route-grid > a:focus-visible {
  border-color: rgba(180, 137, 61, 0.7);
  background: rgba(16, 40, 67, 0.035);
  outline: none;
}
body.inner-page .inner-route-grid h3,
body.inner-page .inner-principles-grid h3,
body.inner-page .inner-activity-grid h3,
body.inner-page .decision-family-grid h3,
body.inner-page .research-domain-grid h3,
body.inner-page .partnership-route-grid h3,
body.inner-page .contact-route-grid h3,
body.inner-page .emerging-environment-grid h3 {
  margin: 17px 0 9px;
  font-size: clamp(1rem, 1.15vw, 1.22rem);
  font-weight: 650;
  letter-spacing: -0.035em;
  line-height: 1.22;
}
body.inner-page .inner-route-grid p,
body.inner-page .inner-principles-grid p,
body.inner-page .inner-activity-grid p,
body.inner-page .decision-family-grid p,
body.inner-page .research-domain-grid p,
body.inner-page .partnership-route-grid p,
body.inner-page .contact-route-grid p,
body.inner-page .emerging-environment-grid p {
  margin: 0;
  color: var(--muted);
  font-size: 0.91rem;
  line-height: 1.61;
}
body.inner-page .inner-priority-list,
body.inner-page .inner-process-list,
body.inner-page .service-area-list {
  display: grid;
  margin: 0;
  padding: 0;
  list-style: none;
  border-top: 1px solid var(--inner-line);
}
body.inner-page .inner-priority-list li,
body.inner-page .inner-process-list li,
body.inner-page .service-area-list > article {
  display: grid;
  grid-template-columns: 66px minmax(190px, 0.86fr) minmax(0, 1.3fr);
  align-items: start;
  gap: 20px;
  padding: 22px 0;
  border-bottom: 1px solid var(--inner-line);
}
body.inner-page .inner-priority-list strong,
body.inner-page .inner-process-list strong,
body.inner-page .service-area-list h3 {
  font-size: clamp(1rem, 1.28vw, 1.25rem);
  font-weight: 650;
  letter-spacing: -0.032em;
  line-height: 1.25;
}
body.inner-page .inner-priority-list p,
body.inner-page .service-area-list p {
  grid-column: 3;
  margin: 0;
  color: var(--muted);
  font-size: 0.93rem;
  line-height: 1.62;
}
body.inner-page .inner-process-list {
  position: relative;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  border: 0;
}
body.inner-page .inner-process-list::before {
  position: absolute;
  top: 25px;
  right: 0;
  left: 0;
  height: 1px;
  background: var(--gold);
  content: "";
  opacity: 0.72;
}
body.inner-page .inner-process-list li {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
  padding: 0 18px 0 0;
  border: 0;
}
body.inner-page .inner-process-list li::before {
  display: block;
  width: 14px;
  height: 14px;
  box-sizing: border-box;
  border: 2px solid var(--gold);
  border-radius: 50%;
  background: var(--ivory);
  content: "";
}
body.inner-page .inner-process-list strong { grid-column: auto; }
body.inner-page .initiative-question-section {
  display: grid;
  align-content: center;
  padding-block: var(--inner-space-feature);
  background: linear-gradient(115deg, rgba(6, 26, 52, 0.96), rgba(9, 33, 63, 0.98));
  color: var(--paper);
}
body.inner-page .initiative-question-section .eyebrow { color: var(--gold-light); }
body.inner-page .initiative-question-section h2 {
  max-width: 23ch;
  margin: 10px 0 0;
  color: var(--paper);
  font-size: clamp(2.2rem, 4.15vw, 4.85rem);
  font-weight: 620;
  letter-spacing: -0.055em;
  line-height: 1.03;
  text-wrap: balance;
}
body.inner-page .current-priorities-panel,
body.inner-page .participation-terms {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(300px, 0.95fr);
  align-items: center;
  gap: clamp(32px, 6.6vw, 104px);
  padding: clamp(30px, 4.4vw, 60px);
  border: 1px solid var(--inner-line);
  border-left: 2px solid var(--gold);
  background: var(--inner-technical);
}
body.inner-page .current-priorities-panel h2,
body.inner-page .participation-terms h2 {
  max-width: 20ch;
  margin: 8px 0 17px;
  font-size: clamp(1.8rem, 2.8vw, 3.05rem);
  font-weight: 650;
  letter-spacing: -0.05em;
  line-height: 1.08;
}
body.inner-page .current-priority-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border-top: 1px solid var(--inner-line);
  border-left: 1px solid var(--inner-line);
}
body.inner-page .current-priority-list span {
  min-height: 66px;
  padding: 15px;
  border-right: 1px solid var(--inner-line);
  border-bottom: 1px solid var(--inner-line);
  font-family: var(--font-label);
  font-size: var(--inner-label);
  font-weight: 600;
  letter-spacing: 0.05em;
  line-height: 1.4;
  text-transform: uppercase;
}
body.inner-page .inner-crosslink-band {
  display: grid;
  place-items: center;
  padding-block: var(--inner-space-compact);
  background: var(--navy);
  color: var(--paper);
  text-align: center;
}
body.inner-page .inner-crosslink-band p {
  max-width: 72ch;
  margin: 0;
  font-size: clamp(0.98rem, 0.42vw + 0.9rem, 1.1rem);
  line-height: 1.7;
}
body.inner-page .inner-crosslink-band a {
  color: var(--gold-light);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 4px;
}
body.inner-page .inner-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  width: min(100%, var(--inner-form));
  margin-inline: auto;
  gap: 18px 22px;
  padding: clamp(28px, 4.8vw, 60px);
  border: 1px solid var(--inner-line);
  border-top: 2px solid var(--gold);
  background: var(--inner-technical);
  box-shadow: var(--inner-shadow);
}
body.inner-page .inner-form .inner-form-intro {
  grid-column: 1 / -1;
  max-width: 40rem;
  margin-bottom: 10px;
}
body.inner-page .inner-form-intro h2 {
  margin: 8px 0 12px;
  font-size: clamp(1.82rem, 2.8vw, 2.9rem);
  font-weight: 650;
  letter-spacing: -0.048em;
  line-height: 1.08;
}
body.inner-page .inner-form label {
  display: grid;
  gap: 7px;
  color: var(--ink);
  font-size: 0.89rem;
  font-weight: 620;
}
body.inner-page .inner-form input,
body.inner-page .inner-form select,
body.inner-page .inner-form textarea {
  width: 100%;
  min-height: 48px;
  padding: 11px 13px;
  border: 1px solid rgba(16, 40, 67, 0.29);
  border-radius: var(--inner-radius);
  background: rgba(255, 253, 248, 0.88);
  color: var(--ink);
}
body.inner-page .inner-form textarea { min-height: 138px; resize: vertical; }
body.inner-page .inner-form input:focus,
body.inner-page .inner-form select:focus,
body.inner-page .inner-form textarea:focus {
  border-color: var(--gold);
  outline: 2px solid rgba(180, 137, 61, 0.22);
  outline-offset: 2px;
}
body.inner-page .form-wide { grid-column: 1 / -1; }
body.inner-page .inner-form .checkbox {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-size: 0.9rem;
  font-weight: 400;
  line-height: 1.55;
}
body.inner-page .inner-form .checkbox input {
  width: 18px;
  min-width: 18px;
  min-height: 18px;
  margin-top: 2px;
  accent-color: var(--gold);
}
body.inner-page .form-action-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 14px;
}
body.inner-page .form-status {
  margin: 0;
  color: var(--muted);
  font-size: 0.88rem;
}
body.inner-page .form-optional {
  color: var(--muted);
  font-size: 0.8rem;
  font-weight: 400;
}
body.inner-page .inner-page-closing {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 36px;
  padding-block: var(--inner-space-feature);
}
body.inner-page .inner-page-closing h2,
body.inner-page .contact-closing-message h2 {
  max-width: 19ch;
  margin: 8px 0 0;
  font-size: clamp(2.15rem, 3.8vw, 4.35rem);
  font-weight: 650;
  letter-spacing: -0.058em;
  line-height: 1.02;
  text-wrap: balance;
}
body.inner-page .contact-closing-message {
  display: grid;
  place-items: center;
  padding-block: var(--inner-space-feature);
  background: linear-gradient(120deg, var(--navy-deep), var(--navy));
  color: var(--paper);
  text-align: center;
}
body.inner-page .contact-closing-message h2 { max-width: 20ch; color: var(--paper); }
body.inner-page .inner-page-main a:focus-visible {
  outline: 2px solid var(--gold);
  outline-offset: 4px;
}
/* About: institutional profile and foundation. */
body.page-about .inner-page-hero::before {
  width: min(42vw, 560px);
  height: min(15vw, 210px);
  border-left: 0;
  border-bottom: 2px solid var(--gold);
}
body.page-about .inner-concept-section { background: linear-gradient(90deg, transparent, rgba(233, 238, 242, 0.48)); }
body.page-about .inner-route-grid > * { padding-top: 28px; }
body.page-about .inner-route-grid > *::before {
  width: 100%;
  height: 1px;
  margin-bottom: 18px;
  background: var(--gold);
  content: "";
  opacity: 0.72;
}
body.page-about .inner-principles-grid > article { min-height: 180px; }
body.page-about .inner-leadership-section { background: var(--inner-stone); }

/* Initiative: programme movement and shared field-building. */
body.page-initiative .inner-page-hero {
  background: linear-gradient(110deg, var(--inner-mineral), var(--ivory));
}
body.page-initiative .inner-page-hero::before {
  right: 7%;
  width: min(46vw, 620px);
  height: min(13vw, 180px);
  border-top-color: var(--gold);
  border-right: 0;
  border-bottom: 0;
}
body.page-initiative .inner-priorities-section { background: linear-gradient(180deg, rgba(233, 238, 242, 0.64), transparent); }
body.page-initiative .inner-priority-list { position: relative; }
body.page-initiative .inner-priority-list::before {
  position: absolute;
  top: 22px;
  bottom: 22px;
  left: 32px;
  width: 1px;
  background: var(--gold);
  content: "";
  opacity: 0.6;
}
body.page-initiative .inner-priority-list li { position: relative; }
body.page-initiative .inner-activity-grid > article { min-height: 188px; }
body.page-initiative .current-priorities-section { background: var(--inner-stone); }

/* Alliance: contribution pathways and clear participation boundaries. */
body.page-alliance .inner-page-hero {
  background: linear-gradient(115deg, var(--inner-stone), var(--ivory));
}
body.page-alliance .inner-page-hero::before {
  width: min(40vw, 510px);
  height: min(22vw, 280px);
  border-radius: 50% 50% 0 0;
  border-bottom: 0;
}
body.page-alliance .inner-contributor-section { background: var(--inner-mineral); }
body.page-alliance .inner-route-grid > article { min-height: 196px; }
body.page-alliance .inner-focus-section { background: var(--navy); color: var(--paper); }
body.page-alliance .inner-focus-section .section-heading h2 { color: var(--paper); }
body.page-alliance .inner-focus-section .eyebrow { color: var(--gold-light); }
body.page-alliance .inner-focus-section .inner-audience-grid { border-color: var(--inner-line-dark); }
body.page-alliance .inner-focus-section .inner-audience-grid > span { border-color: var(--inner-line-dark); color: var(--paper); }
body.page-alliance .contributor-framework-section { background: var(--inner-technical); }
body.page-alliance .participation-terms { background: rgba(233, 238, 242, 0.5); }

/* Services: executive decision architecture and evidence-led engagement. */
body.page-services .inner-page-hero {
  background: linear-gradient(115deg, var(--ivory), rgba(233, 238, 242, 0.66));
}
body.page-services .inner-page-hero::before {
  width: min(40vw, 590px);
  height: min(19vw, 260px);
  border-left: 0;
  border-top: 2px solid var(--gold);
}
body.page-services .decision-families-section { background: var(--navy); color: var(--paper); }
body.page-services .decision-families-section .section-heading h2 { color: var(--paper); }
body.page-services .decision-families-section .eyebrow { color: var(--gold-light); }
body.page-services .decision-family-grid { border-color: var(--inner-line-dark); }
body.page-services .decision-family-grid > article { border-color: var(--inner-line-dark); }
body.page-services .decision-family-grid h3 { color: var(--paper); }
body.page-services .decision-family-grid p,
body.page-services .decision-family-grid small { color: rgba(255, 253, 248, 0.78); }
body.page-services .decision-family-grid small { margin-top: auto; font-size: 0.79rem; line-height: 1.55; }
body.page-services .service-area-list > article { grid-template-columns: 66px minmax(240px, 0.8fr) minmax(0, 1.45fr); }
body.page-services .outcomes-section { background: var(--inner-mineral); }
body.page-services .outcomes-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
body.page-services .engagement-process-section { background: var(--inner-stone); }
body.page-services .service-boundaries-section .participation-terms { background: var(--inner-technical); }
/* Trust Lab: disciplined research landscape. */
body.page-trust-lab .inner-page-main { background: #f4f6f5; }
body.page-trust-lab .inner-page-hero {
  background: linear-gradient(125deg, var(--navy-deep), var(--navy));
  color: var(--paper);
}
body.page-trust-lab .inner-page-hero h1,
body.page-trust-lab .inner-page-hero > p:not(.eyebrow) { color: var(--paper); }
body.page-trust-lab .inner-page-hero .eyebrow { color: var(--gold-light); }
body.page-trust-lab .inner-page-hero::before {
  border-color: rgba(209, 178, 115, 0.58);
  background:
    repeating-linear-gradient(90deg, transparent 0 42px, rgba(255, 253, 248, 0.09) 42px 43px),
    repeating-linear-gradient(0deg, transparent 0 42px, rgba(255, 253, 248, 0.09) 42px 43px);
}
body.page-trust-lab .inner-page-hero::after { border-color: rgba(255, 253, 248, 0.16); }
body.page-trust-lab .research-domains-section {
  width: 100%;
  max-width: none;
  padding-inline: max(24px, calc((100% - var(--inner-max)) / 2));
  background: var(--navy);
  color: var(--paper);
}
body.page-trust-lab .research-domains-section .section-heading h2 { color: var(--paper); }
body.page-trust-lab .research-domains-section .eyebrow { color: var(--gold-light); }
body.page-trust-lab .research-domain-grid { border-color: var(--inner-line-dark); }
body.page-trust-lab .research-domain-grid > article { min-height: 210px; border-color: var(--inner-line-dark); }
body.page-trust-lab .research-domain-grid h3 { color: var(--paper); }
body.page-trust-lab .research-domain-grid p { color: rgba(255, 253, 248, 0.76); }
body.page-trust-lab .emerging-environments-section { background: var(--inner-mineral); }
body.page-trust-lab .emerging-environment-grid > article { min-height: 232px; }
body.page-trust-lab .emerging-environment-grid > article::before {
  width: 38px;
  height: 38px;
  box-sizing: border-box;
  margin-bottom: 12px;
  border: 1px solid var(--gold);
  content: "";
  opacity: 0.9;
}
body.page-trust-lab .emerging-environment-grid > article:nth-child(2)::before { border-radius: 50%; box-shadow: inset 0 0 0 8px var(--inner-mineral); }
body.page-trust-lab .emerging-environment-grid > article:nth-child(3)::before { transform: rotate(45deg); }
body.page-trust-lab .emerging-environment-grid > article:nth-child(4)::before { width: 46px; height: 24px; margin-top: 7px; }
body.page-trust-lab .lab-output-section { background: var(--inner-stone); }

/* Contact: clear professional routing and quiet form environment. */
body.page-contact .inner-page-hero { background: linear-gradient(115deg, var(--ivory), var(--inner-technical)); }
body.page-contact .inner-page-hero::before {
  width: min(36vw, 490px);
  height: min(17vw, 220px);
  border-left: 0;
  border-bottom: 2px solid var(--gold);
}
body.page-contact .contact-routes-section { background: var(--inner-mineral); }
body.page-contact .contact-route-grid > a { min-height: 156px; }
body.page-contact .contact-form-section { background: var(--inner-stone); }
body.page-contact .next-steps-section { background: var(--inner-technical); }
body.page-contact .direct-contact-section { background: var(--ivory); }
body.page-contact .direct-contact-section a {
  color: var(--navy);
  text-decoration: underline;
  text-decoration-color: var(--gold);
  text-underline-offset: 4px;
}
body.page-partners .inner-process-list { grid-template-columns: repeat(4, minmax(0, 1fr)); }
body.page-contact .inner-process-list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
/* Inner-page 2.5D visual compositions. */
body.inner-page .inner-page-hero.inner-hero-with-visual {
  grid-template-columns: minmax(0, 0.84fr) minmax(340px, 0.96fr);
  column-gap: clamp(36px, 6vw, 104px);
}
body.inner-page .inner-page-hero.inner-hero-with-visual > :not(.inner-hero-visual) { grid-column: 1; }
body.inner-page .inner-page-hero.inner-hero-with-visual h1 { max-width: 15ch; }
body.inner-page .inner-hero-visual,
body.inner-page .inner-secondary-visual {
  position: relative;
  display: block;
  margin: 0;
  overflow: hidden;
  border: 1px solid var(--inner-line);
  background: rgba(255, 253, 248, 0.68);

  box-shadow: 0 24px 54px rgba(9, 33, 63, 0.075);
}
body.inner-page .inner-hero-visual::before,
body.inner-page .inner-secondary-visual::before {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 74px;
  height: 2px;
  background: var(--gold);
  content: "";
}
body.inner-page .inner-hero-visual {
  grid-column: 2;
  grid-row: 1 / -1;
  align-self: center;
  justify-self: end;
  width: min(100%, 620px);
}
body.inner-page .inner-hero-visual img,
body.inner-page .inner-secondary-visual img {
  display: block;
  width: 100%;
  height: auto;
}
body.inner-page .inner-secondary-visual {
  width: min(100%, 760px);
  margin: clamp(24px, 4vw, 46px) auto clamp(28px, 4vw, 52px);
  padding: clamp(10px, 1.4vw, 18px);
}
body.inner-page .inner-concept-visual {
  grid-column: 2;
  width: 100%;
  margin: 0;
  align-self: center;
}
body.inner-page .inner-priorities-visual,
body.inner-page .inner-alliance-pathway-visual,
body.inner-page .inner-services-engagement-visual,
body.inner-page .inner-lab-horizon-visual,
body.inner-page .inner-contact-routing-visual { max-width: 820px; }
body.page-trust-lab .inner-hero-visual,
body.page-trust-lab .inner-secondary-visual {
  border-color: rgba(255, 253, 248, 0.2);
  background:
    linear-gradient(rgba(255, 253, 248, 0.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 253, 248, 0.06) 1px, transparent 1px),
    rgba(5, 25, 54, 0.58);
  box-shadow: 0 24px 64px rgba(0, 8, 25, 0.28);
}
body.page-trust-lab .inner-hero-visual::before,
body.page-trust-lab .inner-secondary-visual::before { background: var(--gold-light); }
body.page-alliance .inner-hero-visual,
body.page-partners .inner-hero-visual { background-color: rgba(247, 248, 247, 0.84); }
body.page-contact .inner-hero-visual { max-width: 560px; }

@media (max-width: 900px) {
  body.inner-page .inner-page-hero.inner-hero-with-visual { grid-template-columns: 1fr; row-gap: 34px; }
  body.inner-page .inner-hero-visual {
    grid-column: 1;
    grid-row: auto;
    justify-self: stretch;
    width: min(100%, 660px);
  }
  body.inner-page .inner-page-hero.inner-hero-with-visual h1 { max-width: 18ch; }
  body.inner-page .inner-concept-visual { grid-column: 1; width: 100%; margin: 0; }
}
@media (max-width: 620px) {
  body.inner-page .inner-hero-visual { width: 100%; }
  body.inner-page .inner-secondary-visual { margin-block: 24px 30px; padding: 8px; }
  body.inner-page .inner-concept-visual { grid-column: 1; width: 100%; margin: 0; }
}
/* Final page distinctions: hero signals and editorial rhythm. */
body.page-about .inner-page-hero {
  background: linear-gradient(110deg, var(--ivory) 0%, #faf8f1 56%, var(--inner-mineral) 100%);
}
body.page-about .inner-page-hero::after {
  top: 20%; right: 8%; width: min(31vw, 455px); height: min(18vw, 248px);
  border-radius: 0; border-color: rgba(16, 40, 67, 0.16);
  transform: skewX(-27deg);
}
body.page-initiative .inner-page-hero {
  background: linear-gradient(105deg, var(--inner-mineral), #f7f5ef 62%, var(--ivory));
}
body.page-initiative .inner-page-hero::after {
  top: 22%; right: 10%; width: min(28vw, 380px); height: min(15vw, 205px);
  border-radius: 0; border-left: 0; border-bottom: 2px solid var(--gold);
  transform: skewX(-28deg);
}
body.page-alliance .inner-page-hero::before {
  right: 11%; bottom: 17%; width: min(29vw, 375px); height: min(21vw, 275px);
  border-radius: 0; border-color: rgba(180, 137, 61, 0.5);
  transform: rotate(45deg);
}
body.page-alliance .inner-page-hero::after {
  top: 21%; right: 18%; width: min(17vw, 220px); height: min(17vw, 220px);
  border-radius: 0; border-color: rgba(16, 40, 67, 0.16);
}
body.page-services .inner-page-hero::after {
  top: 23%; right: 8%; width: min(34vw, 470px); height: min(15vw, 214px);
  border-radius: 0; border-top: 2px solid var(--gold);
  border-right: 0; border-bottom: 0;
}
body.page-trust-lab .inner-page-hero::before { box-shadow: 22px 22px 0 rgba(209, 178, 115, 0.08); }
body.page-contact .inner-page-hero::after {
  top: 24%; right: 10%; width: min(28vw, 365px); height: min(19vw, 248px);
  border-radius: 0; border-left: 0; border-bottom: 2px solid var(--gold);
  transform: skewX(-30deg);
}

/* Selective conversion of repeated card grids into editorial systems. */
body.page-about .inner-principles-grid {
  grid-template-columns: repeat(12, minmax(0, 1fr));
  border-left: 0;
  background: linear-gradient(90deg, rgba(233, 238, 242, 0.58), transparent 70%);
}
body.page-about .inner-principles-grid > article {
  min-height: 0;
  padding: 26px 24px 28px;
  border-right: 0;
  border-left: 1px solid var(--inner-line);
  background: transparent;
}
body.page-about .inner-principles-grid > article:nth-child(1),
body.page-about .inner-principles-grid > article:nth-child(2) { grid-column: span 6; }
body.page-about .inner-principles-grid > article:nth-child(n + 3) { grid-column: span 4; }
body.page-about .inner-principles-grid > article h3 { max-width: 16ch; }

body.page-initiative .inner-activity-grid {
  position: relative;
  border-left: 0;
  background: linear-gradient(90deg, rgba(233, 238, 242, 0.5), transparent);
}
body.page-initiative .inner-activity-grid > article {
  padding: 28px 24px 26px;
  border-right: 0;
  background: transparent;
}
body.page-initiative .inner-activity-grid > article + article { border-left: 1px solid var(--inner-line); }
body.page-initiative .inner-activity-grid > article::before {
  width: 9px; height: 9px; margin-bottom: 16px; border: 1px solid var(--gold); border-radius: 50%; background: var(--ivory); content: "";
}

body.page-alliance .inner-route-grid {
  position: relative;
  border-left: 0;
  background: linear-gradient(90deg, rgba(16, 40, 67, 0.035), transparent 78%);
}
body.page-alliance .inner-route-grid > article {
  padding: 26px 22px 30px;
  border-right: 0;
  background: transparent;
}
body.page-alliance .inner-route-grid > article + article { border-left: 1px solid var(--inner-line); }
body.page-alliance .inner-route-grid > article::before {
  width: 100%; height: 1px; margin-bottom: 18px; background: linear-gradient(90deg, var(--gold), transparent); content: "";
}

body.page-services .outcomes-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border-left: 0;
  background: linear-gradient(90deg, rgba(255, 253, 248, 0.28), transparent);
}
body.page-services .outcomes-grid > article {
  min-height: 0;
  padding: 28px 0 28px 28px;
  border-right: 0;
  background: transparent;
}
body.page-services .outcomes-grid > article:nth-child(odd) { border-left: 1px solid var(--inner-line); }
body.page-services .outcomes-grid > article h3 { max-width: 22ch; }

body.page-contact .contact-route-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border-left: 0;
  background: linear-gradient(90deg, rgba(255, 253, 248, 0.58), transparent);
}
body.page-contact .contact-route-grid > a {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  min-height: 0;
  gap: 0 16px;
  padding: 22px 0 24px 22px;
  border-right: 0;
  background: transparent;
}
body.page-contact .contact-route-grid > a:nth-child(even) { border-left: 1px solid var(--inner-line); }
body.page-contact .contact-route-grid > a > span { grid-row: span 2; color: var(--gold); font-family: var(--font-label); font-size: var(--inner-label); }
body.page-contact .contact-route-grid > a h3 { margin: 0 0 7px; }
body.page-contact .contact-route-grid > a p { grid-column: 2; }
/* Deliberate responsive recomposition. */
@media (max-width: 1040px) {
  body.inner-page .inner-route-grid,
  body.inner-page .inner-activity-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.inner-page .inner-principles-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  body.inner-page .outcomes-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.inner-page .emerging-environment-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.inner-page .inner-concept-section { gap: 42px; }
}
@media (max-width: 860px) {
  body.inner-page .inner-editorial-grid,
  body.inner-page .inner-concept-section,
  body.inner-page .section-heading.split,
  body.inner-page .current-priorities-panel,
  body.inner-page .participation-terms,
  body.inner-page .inner-page-closing {
    grid-template-columns: 1fr;
  }
  body.inner-page .inner-rich-copy { max-width: 48rem; }
  body.inner-page .research-domain-grid,
  body.inner-page .partnership-route-grid,
  body.inner-page .contact-route-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.inner-page .inner-priority-list li,
  body.inner-page .service-area-list > article { grid-template-columns: 52px minmax(0, 0.82fr) minmax(0, 1.15fr); }
}
@media (max-width: 620px) {
  body.inner-page .inner-page-main > .section { width: min(var(--inner-max), calc(100% - 32px)); }
  body.inner-page .inner-page-main > .inner-page-hero,
  body.inner-page .inner-page-main > .initiative-question-section,
  body.inner-page .inner-page-main > .inner-crosslink-band,
  body.inner-page .inner-page-main > .contact-closing-message,
  body.page-trust-lab .research-domains-section { padding-inline: 16px; }
  body.inner-page .inner-page-hero { padding-block: 64px; }
  body.inner-page .inner-page-hero h1 { max-width: 12ch; font-size: clamp(2.45rem, 10.6vw, 3.65rem); }
  body.inner-page .inner-page-hero::before { right: -96px; bottom: 7%; width: 270px; height: 156px; opacity: 0.46; }
  body.inner-page .inner-page-hero::after { top: 8%; right: -158px; width: 280px; height: 280px; opacity: 0.32; }
  body.inner-page .inner-page-hero .hero-actions,
  body.inner-page .inner-page-closing .hero-actions { display: grid; width: 100%; grid-template-columns: 1fr; }
  body.inner-page .inner-page-hero .button,
  body.inner-page .inner-page-closing .button { width: 100%; justify-content: center; }
  body.inner-page .section-heading h2,
  body.inner-page .inner-section-intro h2 { font-size: clamp(1.86rem, 8.8vw, 2.65rem); }
  body.inner-page .mission-vision,
  body.inner-page .inner-concept-diagram,
  body.inner-page .inner-route-grid,
  body.inner-page .inner-principles-grid,
  body.inner-page .inner-activity-grid,
  body.inner-page .decision-family-grid,
  body.inner-page .research-domain-grid,
  body.inner-page .partnership-route-grid,
  body.inner-page .contact-route-grid,
  body.inner-page .emerging-environment-grid,
  body.inner-page .outcomes-grid {
    grid-template-columns: 1fr;
  }
  body.inner-page .mission-vision article + article { border-top: 1px solid var(--inner-line); border-left: 0; }
  body.inner-page .inner-concept-diagram > div { min-height: 124px; }
  body.inner-page .inner-definition-strip,
  body.inner-page .inner-audience-grid { grid-template-columns: 1fr; }
  body.inner-page .inner-priority-list li,
  body.inner-page .service-area-list > article { grid-template-columns: 42px minmax(0, 1fr); gap: 13px; }
  body.inner-page .inner-priority-list p,
  body.inner-page .service-area-list p { grid-column: 2; }
  body.inner-page .inner-process-list { grid-template-columns: 1fr; gap: 18px; }
  body.inner-page .inner-process-list::before { top: 0; bottom: 0; left: 6px; width: 1px; height: auto; }
  body.inner-page .inner-process-list li { grid-template-columns: 24px minmax(0, 1fr); align-items: center; padding: 0; }
  body.inner-page .inner-process-list strong { grid-column: 2; }
  body.inner-page .current-priority-list { grid-template-columns: 1fr; }
  body.inner-page .inner-form { grid-template-columns: 1fr; width: 100%; padding: 24px 20px; }
  body.inner-page .inner-form .inner-form-intro,
  body.inner-page .form-wide { grid-column: auto; }
  body.inner-page .inner-page-closing { gap: 28px; padding-block: 58px; }
  body.inner-page .initiative-question-section { padding-block: 66px; }
  body.inner-page .initiative-question-section h2 { font-size: clamp(2rem, 9.8vw, 3.05rem); }
  body.inner-page .contact-closing-message { padding-block: 68px; }
}
/* Final surface rhythm and narrow-screen composition. */
body.page-about .inner-editorial-section { background: linear-gradient(105deg, rgba(247, 248, 247, 0.9), rgba(233, 238, 242, 0.42)); }
body.page-about .mission-vision-section { background: rgba(255, 253, 248, 0.72); }
body.page-about .inner-concept-section { background: linear-gradient(105deg, rgba(233, 238, 242, 0.58), rgba(247, 248, 247, 0.88)); }
body.page-about .inner-principles-section { background: rgba(233, 238, 242, 0.5); }

body.page-initiative .inner-priorities-section { background: linear-gradient(105deg, rgba(233, 238, 242, 0.78), rgba(247, 248, 247, 0.65)); }
body.page-initiative .inner-activity-section { background: rgba(255, 253, 248, 0.7); }
body.page-initiative .inner-audience-section { background: rgba(247, 248, 247, 0.9); }

body.page-alliance .inner-editorial-section { background: rgba(241, 237, 228, 0.78); }
body.page-alliance .inner-activity-section { background: rgba(255, 253, 248, 0.72); }
body.page-alliance .contributor-framework-section { background: rgba(247, 248, 247, 0.94); }
body.page-alliance .alliance-form-section { background: rgba(241, 237, 228, 0.62); }

body.page-services .service-areas-section { background: rgba(255, 253, 248, 0.76); }
body.page-services .service-audience-section { background: rgba(247, 248, 247, 0.9); }
body.page-services .service-boundaries-section { background: rgba(255, 253, 248, 0.72); }

body.page-trust-lab .inner-editorial-section { background: rgba(255, 253, 248, 0.72); }
body.page-trust-lab .inner-audience-section { background: rgba(247, 248, 247, 0.9); }

body.page-partners .inner-editorial-section { background: rgba(255, 253, 248, 0.72); }
body.page-partners .inner-audience-section { background: rgba(233, 238, 242, 0.64); }
body.page-partners .participation-terms-section { background: rgba(241, 237, 228, 0.72); }

body.page-contact .direct-contact-section { background: linear-gradient(105deg, rgba(255, 253, 248, 0.96), rgba(247, 248, 247, 0.88)); }

@media (max-width: 620px) {
  body.inner-page .inner-page-main > .section { padding-block: 48px; }
  body.inner-page .inner-page-hero { padding-block: 60px; }
  body.inner-page .inner-page-hero h1 {
    max-width: 13ch;
    font-size: clamp(2.35rem, 10.2vw, 3.4rem);
    letter-spacing: -0.046em;
    line-height: 1.01;
  }
  body.inner-page .inner-page-hero > p:not(.eyebrow) { font-size: 0.98rem; line-height: 1.62; }
  body.inner-page .section-heading { margin-bottom: 25px; }
  body.inner-page .inner-route-grid > *,
  body.inner-page .inner-principles-grid > article,
  body.inner-page .inner-activity-grid > article,
  body.inner-page .decision-family-grid > article,
  body.inner-page .research-domain-grid > article,
  body.inner-page .partnership-route-grid > article,
  body.inner-page .contact-route-grid > a,
  body.inner-page .emerging-environment-grid > article { padding: 21px 18px; }
  body.inner-page .inner-definition-strip > span,
  body.inner-page .inner-audience-grid > span { min-height: 62px; padding: 14px 15px; }
}
@media (min-width: 421px) and (max-width: 620px) {
  body.inner-page .inner-audience-grid,
  body.inner-page .inner-definition-strip,
  body.page-services .outcomes-grid,
  body.page-contact .contact-route-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.page-about .inner-principles-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.page-about .inner-principles-grid > article,
  body.page-about .inner-principles-grid > article:nth-child(1),
  body.page-about .inner-principles-grid > article:nth-child(2),
  body.page-about .inner-principles-grid > article:nth-child(n + 3) { grid-column: auto; }
  body.page-contact .contact-route-grid > a:nth-child(even) { border-left: 1px solid var(--inner-line); }
}
@media (max-width: 420px) {
  body.page-services .outcomes-grid,
  body.page-contact .contact-route-grid { grid-template-columns: 1fr; }
  body.page-contact .contact-route-grid > a:nth-child(even) { border-left: 0; }
}
/* About hero correction: composed copy and architecture. */
body.inner-page .inner-hero-visual,
body.inner-page .inner-secondary-visual {
  background: rgba(255, 253, 248, 0.68);
  background-size: auto;
}
body.page-trust-lab .inner-hero-visual,
body.page-trust-lab .inner-secondary-visual {
  background: rgba(5, 25, 54, 0.58);
}
body.page-about .inner-page-hero.inner-hero-with-visual {
  grid-template-columns: minmax(0, 0.98fr) minmax(380px, 0.86fr);
  align-items: center;
  column-gap: clamp(42px, 7vw, 118px);
}
body.page-about .inner-page-hero.inner-hero-with-visual::before,
body.page-about .inner-page-hero.inner-hero-with-visual::after { display: none; }
body.page-about .inner-hero-copy {
  grid-column: 1;
  grid-row: 1;
  align-self: center;
}
body.page-about .inner-hero-copy h1 { max-width: 13.5ch; }
body.page-about .inner-hero-visual {
  border: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
}
body.page-about .inner-hero-visual::before { display: none; }
body.page-about .inner-hero-visual img { width: min(100%, 570px); margin-inline: auto; }
@media (min-width: 901px) {
  body.page-about .inner-hero-visual { grid-column: 2; grid-row: 1; align-self: center; }
}
@media (max-width: 900px) {
  body.page-about .inner-hero-copy { grid-column: 1; grid-row: auto; }
  body.page-about .inner-hero-visual { width: min(100%, 620px); }
}/* Inner-page hero weight and About AI sentinel. */
body.inner-page .inner-page-hero h1 { font-weight: 400; }@media (prefers-reduced-motion: reduce) {
  body.inner-page *,
  body.inner-page *::before,
  body.inner-page *::after {
    scroll-behavior: auto;
    transition-duration: 0.01ms;
    animation-duration: 0.01ms;
    animation-iteration-count: 1;
  }
}






/* About page: generated architectural visual series. */


/* Website Terms of Use: compact legal document and navigation. */
:is(.legal-page, .privacy-page, .cookie-policy-page) { background: var(--ivory, #f8f6ef); color: var(--ink, #101c3c); }
:is(.legal-page, .privacy-page, .cookie-policy-page) .legal-main { overflow-x: clip; overflow-y: visible; }
.legal-shell { width: min(1320px, calc(100% - 48px)); margin-inline: auto; }
.legal-hero { padding: clamp(5.75rem, 7.2vw, 6.75rem) 0 clamp(4.5rem, 5.5vw, 5.5rem); border-bottom: 1px solid rgba(21, 37, 75, 0.18); background: #f8f6ef; }
.legal-hero .legal-shell { position: relative; }
.legal-hero .legal-shell::after { position: absolute; bottom: -1px; left: 0; width: min(140px, 16vw); height: 2px; background: #b48628; content: ""; }
.legal-hero .eyebrow { margin: 0 0 0.85rem; color: #a7791a; }
.legal-hero h1 { max-width: 850px; margin: 0; color: #101c3c; font-size: clamp(2.4rem, 4.6vw, 4.5rem); font-weight: 500; letter-spacing: -0.045em; line-height: 1.01; }
.legal-hero > .legal-shell > p:not(.eyebrow) { max-width: 760px; margin: 1.25rem 0 0; font-size: clamp(1rem, 1.2vw, 1.125rem); line-height: 1.65; }
.legal-meta { display: flex; flex-wrap: wrap; gap: 0.9rem 2.5rem; margin: 1.85rem 0 0; color: #34405e; font-family: var(--mono, "Fragment Mono", monospace); font-size: 0.72rem; letter-spacing: 0.04em; text-transform: uppercase; }
.legal-meta div { display: grid; grid-template-columns: auto auto; align-items: baseline; gap: 0.6rem; }
.legal-meta dt { color: #a7791a; }
.legal-meta dd { margin: 0; color: #101c3c; }
.legal-document-layout { display: grid; grid-template-columns: minmax(250px, 270px) minmax(0, 1fr); align-items: start; gap: clamp(4.5rem, 6vw, 5.5rem); width: min(1320px, calc(100% - 48px)); margin-inline: auto; padding: clamp(3.5rem, 5vw, 5.5rem) 0 clamp(5.5rem, 8vw, 8rem); }
.legal-toc { position: static; max-height: none; overflow: visible; border-top: 1px solid rgba(21, 37, 75, 0.25); padding: 1rem 0 0.25rem; }
.legal-toc-label { margin: 0 0 1.1rem; color: #101c3c; font-family: var(--mono, "Fragment Mono", monospace); font-size: 0.72rem; font-weight: 500; letter-spacing: 0.08em; text-transform: uppercase; }
.legal-toc ol { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; }
.legal-toc li { margin: 0; }
.legal-toc a { position: relative; display: grid; grid-template-columns: 28px minmax(0, 1fr); column-gap: 11px; align-items: start; min-height: 31px; padding: 0.34rem 0 0.34rem 0.55rem; color: #51607b; font-size: 0.84rem; line-height: 1.4; text-decoration: none; transition: color 160ms ease; }
.legal-toc a::before { position: absolute; top: 0.48rem; bottom: 0.48rem; left: 0; width: 1px; background: transparent; content: ""; }
.legal-toc-number { color: #a7791a; font-family: var(--mono, "Fragment Mono", monospace); font-size: 0.7rem; letter-spacing: 0.04em; }
.legal-toc-text { min-width: 0; }
.legal-toc a:hover, .legal-toc a:focus-visible, .legal-toc a[aria-current="true"] { color: #101c3c; }
.legal-toc a[aria-current="true"]::before { background: #b48628; }
.legal-document { width: min(100%, 800px); max-width: 800px; }
.legal-clause { scroll-margin-top: 132px; border-top: 1px solid rgba(21, 37, 75, 0.18); padding: clamp(2.2rem, 3vw, 2.6rem) 0 0; }
.legal-clause:first-child { border-top: 0; padding-top: 0; }
.legal-clause + .legal-clause { margin-top: clamp(3.6rem, 5vw, 4.5rem); }
.legal-clause h2 { display: flex; align-items: baseline; gap: 0.85rem; margin: 0 0 0.95rem; color: #101c3c; font-size: clamp(1.55rem, 2vw, 1.84rem); font-weight: 500; letter-spacing: -0.028em; line-height: 1.2; }
.legal-clause h2 span { flex: 0 0 auto; color: #a7791a; font-family: var(--mono, "Fragment Mono", monospace); font-size: 0.72rem; font-weight: 400; letter-spacing: 0.06em; }
.legal-clause h3 { margin: 1.85rem 0 0.68rem; color: #182544; font-size: 1.08rem; font-weight: 500; line-height: 1.35; }
.legal-clause p, .legal-clause li, .legal-clause address { max-width: 74ch; color: #2b3754; font-size: 1rem; line-height: 1.72; }
.legal-clause p { margin: 0.78rem 0 0; }
.legal-clause ul { margin: 0.92rem 0 0; padding-left: 1.35rem; }
.legal-clause li::marker { color: #a7791a; }
.legal-clause li + li { margin-top: 0.42rem; }
.legal-clause address { margin: 0.55rem 0 0; font-style: normal; }
.legal-clause a { color: #101c3c; overflow-wrap: anywhere; text-decoration-color: #b48628; text-decoration-thickness: 1px; text-underline-offset: 0.18em; }
.legal-clause a:hover { text-decoration-thickness: 2px; }
.legal-back-to-top { margin: 3.5rem 0 0; padding: 0; }
.legal-back-to-top a { display: inline-flex; align-items: center; gap: 0.7rem; padding-bottom: 0.45rem; border-bottom: 1px solid #b48628; color: #101c3c; font-family: var(--mono, "Fragment Mono", monospace); font-size: 0.72rem; letter-spacing: 0.055em; text-decoration: none; text-transform: uppercase; }
:is(.legal-page, .privacy-page, .cookie-policy-page) :focus-visible { outline: 2px solid #b48628; outline-offset: 3px; }
@media (max-width: 900px) { .legal-document-layout { grid-template-columns: minmax(0, 1fr); gap: 2.1rem; } .legal-document-sidebar .legal-toc { position: static; max-height: none; overflow: visible; } .legal-toc ol { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 1.8rem; } .legal-document { width: min(100%, 800px); } }
@media (max-width: 620px) { .legal-shell, .legal-document-layout { width: min(100% - 32px, 1320px); } .legal-hero { padding: 4.25rem 0 3.5rem; } .legal-hero h1 { font-size: clamp(2.3rem, 11vw, 3.1rem); } .legal-meta { display: grid; gap: 0.7rem; margin-top: 1.6rem; } .legal-meta div { grid-template-columns: minmax(108px, auto) 1fr; } .legal-document-layout { padding-top: 2.8rem; padding-bottom: 5rem; } .legal-toc ol { grid-template-columns: 1fr; } .legal-toc a { font-size: 0.83rem; } .legal-clause { scroll-margin-top: 112px; } .legal-clause + .legal-clause { margin-top: 2.85rem; } .legal-clause h2 { gap: 0.65rem; font-size: 1.46rem; } .legal-clause p, .legal-clause li, .legal-clause address { font-size: 0.98rem; } }
@media (prefers-reduced-motion: reduce) { .legal-toc a { transition: none; } }
:is(.legal-page, .privacy-page, .cookie-policy-page) .legal-company-address { margin: 1.15rem 0 1.4rem; color: #182544; font-style: normal; line-height: 1.7; }
:is(.legal-page, .privacy-page, .cookie-policy-page) .legal-company-address a { color: inherit; text-decoration-color: #b58d36; text-underline-offset: 0.18em; }

/* Consolidated Cookie Policy register: the narrow scroll region protects the page width on small screens. */
.cookie-policy-page .legal-table-wrap { margin: 1.4rem 0 1.8rem; overflow-x: auto; border: 1px solid rgba(66, 88, 125, .28); }
.cookie-policy-page .legal-table { width: 100%; min-width: 720px; border-collapse: collapse; color: #182544; font-size: .9rem; }
.cookie-policy-page .legal-table caption { padding: .9rem 1rem; background: #f0f3f7; color: #182544; font-family: var(--font-mono, "Fragment Mono", monospace); font-size: .72rem; letter-spacing: .08em; text-align: left; text-transform: uppercase; }
.cookie-policy-page .legal-table th, .cookie-policy-page .legal-table td { padding: .85rem .9rem; border-top: 1px solid rgba(66, 88, 125, .2); text-align: left; vertical-align: top; }
.cookie-policy-page .legal-table th { color: #87671e; font-family: var(--font-mono, "Fragment Mono", monospace); font-size: .72rem; font-weight: 500; letter-spacing: .05em; text-transform: uppercase; }
@media (max-width: 700px) { .cookie-policy-page .legal-table-wrap { margin-inline: 0; } }

/* Shared legal-document correction: a contained grid sidebar prevents document overlap. */
.legal-hero .legal-shell::after { content: none; }
.legal-meta, .legal-meta div, .legal-meta dt, .legal-meta dd { border-bottom: 0; box-shadow: none; text-decoration: none; }
.legal-meta div::before, .legal-meta div::after, .legal-meta dt::before, .legal-meta dt::after, .legal-meta dd::before, .legal-meta dd::after { content: none; }
.legal-meta div, .legal-meta dt, .legal-meta dd { transition: none; animation: none; }
.legal-document-layout {
  display: grid;
  grid-template-columns: minmax(250px, 270px) minmax(0, 1fr);
  column-gap: clamp(4.5rem, 6vw, 5.5rem);
  row-gap: 0;
  align-items: start;
  overflow: visible;
  height: auto;
  min-height: 0;
  transform: none;
}
.legal-document-sidebar { min-width: 0; align-self: stretch; }
.legal-document-sidebar .legal-toc {
  position: sticky;
  top: 116px;
  align-self: start;
  max-height: calc(100vh - 140px);
  overflow-y: auto;
  overflow-x: hidden;
  overscroll-behavior: contain;
  scrollbar-width: none;
}
.legal-document-sidebar .legal-toc::-webkit-scrollbar { display: none; }
.legal-page .legal-document-sidebar .legal-toc {
  max-height: none;
  overflow: visible;
  overscroll-behavior: auto;
}
.legal-page .legal-bottom-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 0.85rem 1.5rem;
  margin-top: 3.5rem;
  padding-top: 1.35rem;
  border-top: 1px solid rgba(21, 37, 75, 0.18);
}
.legal-page .legal-bottom-nav a {
  color: #101c3c;
  font-family: var(--mono, "Fragment Mono", monospace);
  font-size: 0.72rem;
  letter-spacing: 0.045em;
  text-decoration-color: #b48628;
  text-underline-offset: 0.24em;
  text-transform: uppercase;
}
.legal-toc-label, .legal-toc-title {
  margin: 0 0 1.1rem;
  color: #101c3c;
  font-family: var(--mono, "Fragment Mono", monospace);
  font-size: 0.72rem;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.legal-toc a[aria-current="location"] { color: #101c3c; font-weight: 500; }
.legal-toc a[aria-current="location"]::before { background: #b48628; }
.legal-clause { scroll-margin-top: 116px; }

@media (min-width: 901px) and (max-width: 1100px) {
  .legal-document-layout { grid-template-columns: minmax(228px, 244px) minmax(0, 1fr); column-gap: clamp(2.5rem, 5vw, 4rem); }
  .legal-document-sidebar .legal-toc { top: 116px; }
}
@media (max-width: 620px) {
  .legal-toc ol { grid-template-columns: minmax(0, 1fr); }
  .legal-clause { scroll-margin-top: 104px; }
}

/* Targeted internal-page hero and partnership enquiry corrections. */
body.page-contact .inner-page-hero::before,
body.page-contact .inner-page-hero::after {
  content: none;
  display: none;
}

body.page-partners .partners-enquiry-copy > p:not(.eyebrow) + .partners-enquiry-review {
  margin-top: 1.35rem;
}

body.page-trust-lab .inner-page-hero {
  background: var(--navy-deep);
  color: var(--paper);
}

body.page-trust-lab .inner-page-hero::before,
body.page-trust-lab .inner-page-hero::after {
  content: none;
  display: none;
}

body.page-trust-lab .inner-page-hero .inner-hero__title,
body.page-trust-lab .inner-page-hero .inner-hero__description,
body.page-trust-lab .inner-page-hero .inner-hero__content > p:not(.eyebrow) {
  color: var(--paper);
}

body.page-trust-lab .inner-page-hero .inner-hero__description,
body.page-trust-lab .inner-page-hero .inner-hero__content > p:not(.eyebrow) {
  color: rgba(255, 253, 248, 0.78);
}

body.page-trust-lab .inner-hero-visual {
  width: min(100%, 560px);
  border-color: var(--gold);
  background: transparent;
  box-shadow: 0 18px 42px rgba(0, 0, 0, 0.24);
}

body.page-trust-lab .inner-hero-visual::before {
  background: var(--gold);
}

/* Stage 2 recovery: scoped inner-page component baseline. */
body.inner-page {
  --inner-hero-navy: #071731;
  --inner-hero-gold: var(--cta-gold);
  --inner-hero-paper: #fffdf8;
}

body.inner-page .global-header .hd-shell {
  width: min(calc(100% - 32px), var(--hd-max));
}
body.inner-page .global-header .hd-brand { min-width: min(292px, 24vw); }
body.inner-page .global-header .hd-nav { min-width: 0; }
body.inner-page .global-header .hd-nav a { border-left: 0; }


body.inner-page .inner-page-hero.inner-hero-with-visual {
  display: grid;
  grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
  align-items: center;
  gap: clamp(40px, 6vw, 96px);
  min-height: 0;
  padding-block: clamp(68px, 7.5vw, 116px);
  background: var(--inner-hero-navy);
  color: var(--inner-hero-paper);
}
body.inner-page .inner-page-hero.inner-hero-with-visual::before,
body.inner-page .inner-page-hero.inner-hero-with-visual::after {
  display: none;
}
body.inner-page .inner-page-hero .inner-hero-copy {
  grid-column: 1;
  min-width: 0;
}
body.inner-page .inner-page-hero .eyebrow {
  margin-bottom: 14px;
  color: var(--inner-hero-gold);
}
body.inner-page .inner-page-hero h1,
body.inner-page .inner-page-hero .inner-hero-copy h1 {
  max-width: 15ch;
  margin: 0 0 22px;
  color: var(--inner-hero-paper);
  font-weight: 400;
  letter-spacing: -0.048em;
  line-height: 1.02;
}
body.inner-page .inner-page-hero > p:not(.eyebrow),
body.inner-page .inner-page-hero .inner-hero-copy > p:not(.eyebrow) {
  max-width: 58ch;
  color: rgba(255, 253, 248, 0.78);
}
body.inner-page .inner-page-hero .hero-actions { margin-top: 28px; }
body.inner-page .inner-page-hero .button.primary {
  border-color: var(--inner-hero-paper);
  color: var(--inner-hero-navy);
  background: var(--inner-hero-paper);
}
body.inner-page .inner-page-hero .button.secondary {
  min-height: 46px;
  padding: 0 0 5px;
  border: 0;
  border-bottom: 1px solid var(--inner-hero-gold);
  color: var(--inner-hero-paper);
  background: transparent;
}
body.inner-page .inner-page-hero .button.secondary:hover,
body.inner-page .inner-page-hero .button.secondary:focus-visible {
  border-color: var(--inner-hero-paper);
  color: var(--inner-hero-gold);
  background: transparent;
}
body.inner-page .inner-page-hero .inner-hero-visual {
  grid-column: 2;
  width: 100%;
  margin: 0;
  overflow: hidden;
  border: 1px solid var(--inner-hero-gold);
  background: #06152d;
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.22);
}
body.inner-page .inner-page-hero .inner-hero-visual::before,
body.inner-page .inner-page-hero .inner-hero-visual::after { display: none; }
body.inner-page .inner-page-hero .inner-hero-visual img {
  display: block;
  width: 100%;
  height: auto;
  margin: 0;
  background: #06152d;
  object-fit: contain;
}
body.inner-page :is(section, article, div)[id] {
  scroll-margin-top: calc(var(--hd-height-scroll) + 18px);
}

@media (max-width: 1100px) {
  body.inner-page .global-header .hd-brand { min-width: 0; }
  body.inner-page .inner-page-hero.inner-hero-with-visual {
    gap: clamp(28px, 4vw, 52px);
    padding-block: clamp(56px, 7vw, 82px);
  }
}
@media (max-width: 760px) {
  body.inner-page .inner-page-hero.inner-hero-with-visual {
    grid-template-columns: minmax(0, 1fr);
    gap: 34px;
    padding-block: 54px;
  }
  body.inner-page .inner-page-hero .inner-hero-copy,
  body.inner-page .inner-page-hero .inner-hero-visual { grid-column: 1; }
  body.inner-page .inner-page-hero .inner-hero-visual { width: 100%; }
  body.inner-page .inner-page-hero h1,
  body.inner-page .inner-page-hero .inner-hero-copy h1 { max-width: 14ch; }
  body.inner-page .global-header .hd-cta { min-height: 44px; }
}

/* Repair the corrupted open-state marker without changing page content. */
.home-page details[open] > summary::after { content: "-"; }
/* Shared header completion: the Contact Us action has button-specific active and focus states, never a navigation underline. */
.global-header .hd-cta,
.global-header .hd-cta:visited,
.global-header .hd-cta:active { text-decoration: none; box-shadow: none; }
.global-header .hd-cta::before,
.global-header .hd-cta::after { content: none !important; display: none !important; }
.global-header .hd-cta:hover { background: #f5e9c8; border-color: #f5e9c8; }
.global-header .hd-cta:focus-visible { outline: 2px solid var(--hd-gold); outline-offset: 3px; box-shadow: none; }
.privacy-page .legal-document-sidebar .legal-toc { max-height: none; overflow: visible; overscroll-behavior: auto; }
.privacy-page .legal-bottom-nav { display: flex; flex-wrap: wrap; gap: 0.85rem 1.5rem; margin-top: 3.5rem; padding-top: 1.35rem; border-top: 1px solid rgba(21, 37, 75, 0.18); }
.privacy-page .legal-bottom-nav a { color: #101c3c; font-family: var(--mono, "Fragment Mono", monospace); font-size: 0.72rem; letter-spacing: 0.045em; text-decoration-color: #b48628; text-underline-offset: 0.24em; text-transform: uppercase; }
.cookie-policy-page .legal-document-sidebar .legal-toc { max-height: none; overflow: visible; overscroll-behavior: auto; }
.cookie-policy-page .legal-bottom-nav { display: flex; flex-wrap: wrap; gap: 0.85rem 1.5rem; margin-top: 3.5rem; padding-top: 1.35rem; border-top: 1px solid rgba(21, 37, 75, 0.18); }
.cookie-policy-page .legal-bottom-nav a { color: #101c3c; font-family: var(--mono, "Fragment Mono", monospace); font-size: 0.72rem; letter-spacing: 0.045em; text-decoration-color: #b48628; text-underline-offset: 0.24em; text-transform: uppercase; }
/* Resources page reconstruction */
.page-resources { background: #f8f6ef; color: #101c3c; }
.resources-shell { width: min(1240px, calc(100% - 48px)); margin-inline: auto; }
.resources-hero { background: #081a3b; color: #f8f6ef; padding: clamp(4rem, 7vw, 7rem) 0; }
.resources-hero-grid { display: grid; grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr); gap: clamp(2.5rem, 6vw, 6rem); align-items: center; }
.resources-hero h1 { max-width: 650px; margin: 0; color: #fffdf7; font-size: clamp(2.7rem, 5vw, 5.2rem); font-weight: 500; letter-spacing: -.05em; line-height: 1.02; }
.resources-hero p:not(.eyebrow) { max-width: 620px; margin: 1.5rem 0 0; color: #dbe2ee; font-size: 1.08rem; line-height: 1.7; }
.resources-hero .eyebrow, .resources-dark .eyebrow { color: var(--cta-gold); }
.resources-hero-visual { margin: 0; border: 1px solid #b48628; line-height: 0; }
.resources-hero-visual img, .resources-split img { width: 100%; height: auto; display: block; }
.resources-hero .hero-actions { margin-top: 2rem; }
.resources-section { padding: clamp(4.5rem, 7vw, 7rem) 0; }
.resources-tone { background: #edf1f5; }
.resources-section h2, .resources-closing h2 { max-width: 800px; margin: .45rem 0 0; font-size: clamp(2rem, 3.4vw, 3.4rem); font-weight: 500; letter-spacing: -.04em; line-height: 1.1; }
.resources-intro { max-width: 760px; margin: 1.2rem 0 0; line-height: 1.7; }
.resources-pathways, .resources-grid { display: grid; gap: 1px; margin-top: 2.8rem; background: rgba(21,37,75,.22); border: 1px solid rgba(21,37,75,.22); }
.resources-pathways { grid-template-columns: repeat(4, minmax(0,1fr)); }
.resources-pathways a, .resources-grid article { min-width: 0; padding: 1.5rem; background: #f8f6ef; color: #101c3c; text-decoration: none; }
.resources-pathways span, .resources-grid article > span { color: #a7791a; font-family: var(--mono, monospace); font-size: .72rem; letter-spacing: .08em; }
.resources-pathways h3, .resources-grid h3 { margin: 1rem 0 .7rem; font-size: 1.1rem; line-height: 1.2; }
.resources-pathways p, .resources-grid p { margin: 0; font-size: .94rem; line-height: 1.6; }
.page-resources #verification-use-cases .resources-grid article p + p, .page-resources #industries-contexts .resources-grid article p + p { margin-top: .85rem; }
.resources-pathways b { display: inline-block; margin-top: 1.4rem; border-bottom: 1px solid #b48628; padding-bottom: .35rem; font-family: var(--mono, monospace); font-size: .69rem; letter-spacing: .06em; text-transform: uppercase; }
.resources-grid-three { grid-template-columns: repeat(3, minmax(0,1fr)); }
.resources-grid-two { grid-template-columns: repeat(2, minmax(0,1fr)); }
.resources-split { display: grid; grid-template-columns: minmax(0,.92fr) minmax(0,1.08fr); gap: clamp(2rem,5vw,5rem); align-items: start; }
.resources-split img { border: 1px solid rgba(21,37,75,.18); }
.resources-dark { background: #081a3b; color: #edf1f5; }
.resources-dark .resources-grid { background: rgba(220,226,238,.26); border-color: rgba(220,226,238,.26); }
.resources-dark .resources-grid article { background: #0d2148; color: #edf1f5; }
.resources-dark .resources-note { max-width: 850px; margin: 1.4rem 0 0; border-left: 2px solid #c5a04f; padding-left: 1rem; color: #dbe2ee; line-height: 1.65; }
.resources-dark h4 { margin: 1.3rem 0 .3rem; color: var(--cta-gold); font-family: var(--mono, monospace); font-size: .67rem; letter-spacing: .07em; text-transform: uppercase; }
.resources-closing { background: #101c3c; color: #f8f6ef; padding: clamp(4.5rem,7vw,7rem) 0; }
.resources-closing .resources-shell { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 3rem; align-items: end; }
.resources-closing h2 { color: #fffdf7; }.resources-closing p:not(.eyebrow) { max-width: 680px; color: #dbe2ee; line-height: 1.65; }
@media(max-width:900px){.resources-hero-grid,.resources-split,.resources-closing .resources-shell{grid-template-columns:1fr}.resources-pathways{grid-template-columns:repeat(2,minmax(0,1fr))}.resources-hero-visual{max-width:760px}.resources-closing .hero-actions{justify-content:flex-start}}
@media(max-width:620px){.resources-shell{width:min(100% - 32px,1240px)}.resources-pathways,.resources-grid-three,.resources-grid-two{grid-template-columns:1fr}.resources-section{padding:4rem 0}.resources-hero{padding:4rem 0}.resources-hero h1{font-size:clamp(2.45rem,11vw,3.4rem)}}
/* Think Tank Roundtable Series 2026 */
.page-roundtables { --roundtable-navy: #071731; --roundtable-paper: #fffdf8; --roundtable-gold: #dfbc66; --roundtable-ink: #15254b; background: #f8f6ef; color: var(--roundtable-ink); }
.roundtables-shell { width: min(1240px, calc(100% - 48px)); margin-inline: auto; }
.roundtables-hero { background: var(--roundtable-navy); color: var(--roundtable-paper); padding: clamp(4.75rem, 8vw, 7.8rem) 0; }
.roundtables-hero-grid { display: grid; grid-template-columns: minmax(0, .98fr) minmax(360px, .82fr); gap: clamp(2.8rem, 7vw, 7rem); align-items: center; }
.roundtables-hero .eyebrow, .roundtables-dark .eyebrow, .roundtables-closing .eyebrow { color: var(--roundtable-gold); }
.roundtables-hero h1 { max-width: 14ch; margin: 0; color: var(--roundtable-paper); font-size: clamp(2.75rem, 5vw, 5.15rem); font-weight: 400; letter-spacing: -.052em; line-height: 1.02; }
.roundtables-hero-copy > p:not(.eyebrow) { max-width: 60ch; margin: 1.25rem 0 0; color: rgba(255,253,248,.8); font-size: 1.05rem; line-height: 1.68; }
.roundtables-hero .hero-actions { margin-top: 2rem; }
.roundtables-hero .button.primary, .roundtables-closing .button.primary { border-color: var(--roundtable-paper); background: var(--roundtable-paper); color: var(--roundtable-navy); }
.roundtables-hero .button.secondary, .roundtables-closing .button.secondary { min-height: 46px; padding: 0 0 5px; border: 0; border-bottom: 1px solid var(--roundtable-gold); background: transparent; color: var(--roundtable-paper); }
.roundtables-series-panel { position: relative; padding: clamp(1.5rem, 3vw, 2.4rem); border: 1px solid rgba(223,188,102,.82); background: linear-gradient(145deg, rgba(255,255,255,.055), rgba(255,255,255,.012)); box-shadow: 0 22px 54px rgba(0,0,0,.22); }
.roundtables-series-panel::before { position: absolute; inset: 16px; border: 1px solid rgba(223,188,102,.2); content: ''; pointer-events: none; }
.roundtables-panel-title, .roundtables-series-panel dt { position: relative; margin: 0; color: var(--roundtable-gold); font-family: var(--mono, 'Fragment Mono', monospace); font-size: .68rem; letter-spacing: .1em; text-transform: uppercase; }
.roundtables-city-list { position: relative; display: grid; gap: 0; margin-top: 1.25rem; border-top: 1px solid rgba(255,255,255,.18); }
.roundtables-city-list div { display: flex; justify-content: space-between; gap: 1.25rem; padding: 1rem 0; border-bottom: 1px solid rgba(255,255,255,.18); }
.roundtables-city-list span { color: var(--roundtable-gold); font-family: var(--mono, 'Fragment Mono', monospace); font-size: .72rem; letter-spacing: .09em; }
.roundtables-city-list strong { color: var(--roundtable-paper); font-size: .98rem; font-weight: 500; text-align: right; }
.roundtables-series-panel dl { position: relative; display: grid; gap: .8rem; margin: 1.35rem 0 0; }
.roundtables-series-panel dl div { display: grid; grid-template-columns: 108px minmax(0, 1fr); gap: .9rem; }
.roundtables-series-panel dd { margin: 0; color: rgba(255,253,248,.84); font-size: .92rem; line-height: 1.45; }
.roundtables-section { padding: clamp(4.5rem, 7vw, 7rem) 0; }
.roundtables-section h2, .roundtables-closing h2 { max-width: 18ch; margin: .55rem 0 0; color: var(--roundtable-ink); font-size: clamp(2rem, 3.5vw, 3.55rem); font-weight: 400; letter-spacing: -.045em; line-height: 1.08; }
.roundtables-section h3 { margin: 0; font-size: 1.18rem; font-weight: 500; line-height: 1.25; }
.roundtables-section p { line-height: 1.7; }
.roundtables-editorial { display: grid; grid-template-columns: minmax(0, .95fr) minmax(0, .85fr); gap: clamp(2.8rem, 8vw, 8rem); align-items: start; }
.roundtables-editorial > div > p:first-of-type:not(.eyebrow) { margin-top: 0; }
.roundtables-editorial > div > p + p { margin-top: 1rem; }
.roundtables-relationship { width: min(100%, 960px); margin: clamp(2.5rem, 4vw, 4rem) auto 0; padding: 1.05rem 0 1.05rem 1.2rem; border-left: 2px solid #b48628; color: #182544; font-size: 1.05rem; }
.roundtables-tone { background: #edf1f5; }
.roundtables-city-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 1px; margin-top: 2.7rem; border: 1px solid rgba(20,37,75,.2); background: rgba(20,37,75,.2); }
.roundtables-city-grid article { min-width: 0; padding: 1.55rem; background: #f8f6ef; }
.roundtables-city-grid h3 { margin-top: 1rem; font-size: 1.35rem; }
.roundtables-city-grid dl { display: grid; gap: .55rem; margin: 1.25rem 0; padding: 1rem 0; border-block: 1px solid rgba(20,37,75,.17); }
.roundtables-city-grid dl div { display: grid; grid-template-columns: 72px 1fr; gap: .75rem; }
.roundtables-city-grid dt { color: #87671e; font-family: var(--mono, 'Fragment Mono', monospace); font-size: .67rem; letter-spacing: .08em; text-transform: uppercase; }
.roundtables-city-grid dd { margin: 0; font-size: .9rem; }
.roundtables-city-grid article > p:last-child { margin-bottom: 0; font-size: .94rem; }
.roundtables-venue-note { margin: 1.2rem 0 0; color: #53617b; font-family: var(--mono, 'Fragment Mono', monospace); font-size: .75rem; letter-spacing: .025em; }
.roundtables-dark { background: var(--roundtable-navy); color: var(--roundtable-paper); }
.roundtables-dark h2, .roundtables-dark h3, .roundtables-dark h4 { color: var(--roundtable-paper); }
.roundtables-theme-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 1px; margin-top: 2.6rem; border: 1px solid rgba(255,255,255,.22); background: rgba(255,255,255,.22); }
.roundtables-theme-grid article { min-width: 0; padding: 1.7rem; background: #0c2046; }
.roundtables-theme-grid article > span { color: var(--roundtable-gold); font-family: var(--mono, 'Fragment Mono', monospace); font-size: .72rem; letter-spacing: .09em; }
.roundtables-theme-grid h3 { margin-top: 1rem; font-size: 1.45rem; }
.roundtables-theme-grid h4 { margin: 1rem 0 .8rem; font-size: 1rem; font-weight: 500; line-height: 1.5; }
.roundtables-theme-grid p { margin-bottom: 0; color: rgba(255,253,248,.77); font-size: .94rem; }
.roundtables-principles, .roundtables-participant-grid, .roundtables-output-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 0; margin-top: 2.6rem; border-top: 1px solid rgba(20,37,75,.2); border-left: 1px solid rgba(20,37,75,.2); }
.roundtables-principles article, .roundtables-participant-grid article, .roundtables-output-grid article { min-width: 0; padding: 1.4rem 1.4rem 1.7rem; border-right: 1px solid rgba(20,37,75,.2); border-bottom: 1px solid rgba(20,37,75,.2); }
.roundtables-principles h3, .roundtables-participant-grid h3, .roundtables-output-grid h3 { margin-bottom: .7rem; }
.roundtables-principles p, .roundtables-participant-grid p, .roundtables-output-grid p { margin: 0; font-size: .93rem; }
.roundtables-programme { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 1px; margin: 2.6rem 0 0; padding: 0; list-style: none; border: 1px solid rgba(20,37,75,.2); background: rgba(20,37,75,.2); counter-reset: programme; }
.roundtables-programme li { min-width: 0; padding: 1.1rem; background: #f8f6ef; font-size: .92rem; line-height: 1.45; }
.roundtables-programme li::before { display: block; margin-bottom: .8rem; color: #87671e; font-family: var(--mono, 'Fragment Mono', monospace); font-size: .68rem; letter-spacing: .08em; content: counter(programme, decimal-leading-zero); counter-increment: programme; }
.roundtables-participation-note, .roundtables-intro { max-width: 790px; margin: 1.6rem 0 0; padding-left: 1.1rem; border-left: 2px solid #b48628; }
.roundtables-dark a { color: var(--roundtable-paper); text-decoration-color: var(--roundtable-gold); text-underline-offset: .18em; }
.roundtables-editorial .button.secondary { display: inline-flex; margin-top: 1rem; border-color: #b48628; color: #15254b; }
.roundtables-form-section { background: #f8f6ef; }
.roundtables-form { margin: 0; }
.roundtables-closing { background: var(--roundtable-navy); color: var(--roundtable-paper); padding: clamp(4.5rem, 7vw, 7rem) 0; }
.roundtables-closing .roundtables-shell { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 3rem; align-items: end; }
.roundtables-closing h2 { color: var(--roundtable-paper); }
.roundtables-closing p:not(.eyebrow) { max-width: 650px; color: rgba(255,253,248,.78); }
.page-roundtables :focus-visible { outline: 2px solid #b48628; outline-offset: 3px; }
@media (max-width: 900px) { .roundtables-hero-grid, .roundtables-editorial, .roundtables-closing .roundtables-shell { grid-template-columns: 1fr; } .roundtables-hero h1 { max-width: 15ch; } .roundtables-city-grid, .roundtables-theme-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } .roundtables-principles, .roundtables-participant-grid, .roundtables-output-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } .roundtables-programme { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 620px) { .roundtables-shell { width: min(100% - 32px, 1240px); } .roundtables-hero { padding: 4.2rem 0; } .roundtables-hero h1 { font-size: clamp(2.4rem,11vw,3.3rem); } .roundtables-city-list div { align-items: start; flex-direction: column; gap: .3rem; } .roundtables-city-list strong { text-align: left; } .roundtables-city-grid, .roundtables-theme-grid, .roundtables-principles, .roundtables-participant-grid, .roundtables-output-grid, .roundtables-programme { grid-template-columns: 1fr; } .roundtables-section { padding: 4rem 0; } .roundtables-closing .hero-actions { justify-content: flex-start; } .roundtables-series-panel { padding: 1.35rem; } }
@media (prefers-reduced-motion: reduce) { .page-roundtables *, .page-roundtables *::before, .page-roundtables *::after { scroll-behavior: auto; transition-duration: 0.01ms !important; animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; } }

/* Focused standard inner-page hero variants for pages without inner-page-scenes.css. */
body.page-resources .resources-hero,
body.page-roundtables .roundtables-hero {
  padding-block: clamp(4.5rem, 6vw, 6rem);
  background: #071731;
  color: #fffdf6;
}
body.page-resources .resources-hero-grid,
body.page-roundtables .roundtables-hero-grid {
  grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr);
  gap: clamp(3rem, 5vw, 4.5rem);
  align-items: center;
}
body.page-resources .resources-hero h1,
body.page-roundtables .roundtables-hero h1 {
  max-width: 22ch;
  margin: 0 0 1.35rem;
  color: #fffdf6;
  font-size: clamp(2.65rem, 4.05vw, 4.05rem);
  font-weight: 400;
  line-height: 1.05;
  letter-spacing: -.035em;
}
body.page-resources .resources-hero p:not(.eyebrow),
body.page-roundtables .roundtables-hero-copy > p:not(.eyebrow) { max-width: 53ch; margin: 0; color: #dbe6ef; font-size: clamp(1rem, .4vw + .94rem, 1.08rem); line-height: 1.62; }
body.page-roundtables .roundtables-hero-copy > p:not(.eyebrow) + p:not(.eyebrow) { margin-top: .85rem; }
body.page-resources .resources-hero .eyebrow,
body.page-roundtables .roundtables-hero .eyebrow { margin: 0 0 .75rem; color: #dfbc66; }
body.page-resources .resources-hero .hero-actions,
body.page-roundtables .roundtables-hero .hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 26px; margin-top: 1.7rem; }
body.page-resources .resources-hero .button.primary,
body.page-roundtables .roundtables-hero .button.primary { min-height: 46px; padding-inline: 21px; border: 1px solid #fffdf6; background: #fffdf6; color: #071731; }
body.page-resources .resources-hero .button.primary:hover,
body.page-resources .resources-hero .button.primary:focus-visible,
body.page-roundtables .roundtables-hero .button.primary:hover,
body.page-roundtables .roundtables-hero .button.primary:focus-visible { border-color: #dfbc66; background: #dfbc66; color: #071731; }
body.page-resources .resources-hero .button.secondary,
body.page-roundtables .roundtables-hero .button.secondary { display: inline-flex; align-items: center; min-height: 44px; padding: 0 0 6px; border: 0; border-bottom: 1px solid #dfbc66; border-radius: 0; background: transparent; color: #fffdf6; font-size: .78rem; font-weight: 600; letter-spacing: .04em; line-height: 1.2; text-decoration: none; text-transform: uppercase; box-shadow: none; }
body.page-resources .resources-hero .button.secondary:hover,
body.page-resources .resources-hero .button.secondary:focus-visible,
body.page-roundtables .roundtables-hero .button.secondary:hover,
body.page-roundtables .roundtables-hero .button.secondary:focus-visible { border-bottom-color: #fffdf6; background: transparent; color: #fffdf6; }
body.page-resources .resources-hero-visual {
  position: relative;
  width: 100%;
  max-width: none;
  aspect-ratio: 4 / 3;
  margin: 0;
  padding: 0;
  overflow: hidden;
  border: 1px solid #dfbc66;
  border-radius: 2px;
  background: #06152d;
  box-shadow: 0 .45rem 1.1rem rgba(0, 0, 0, .14);
}
body.page-resources .resources-hero-visual::before { position: absolute; z-index: 1; top: -1px; left: -1px; width: clamp(3rem, 6vw, 5rem); height: 1px; background: #dfbc66; content: ""; pointer-events: none; }
body.page-resources .resources-hero-visual img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
@media (max-width: 1200px) and (min-width: 768px) {
  body.page-resources .resources-hero-grid,
  body.page-roundtables .roundtables-hero-grid { grid-template-columns: minmax(0, 1.22fr) minmax(0, 1fr); gap: clamp(2rem, 4vw, 3.5rem); }
  body.page-resources .resources-hero h1,
  body.page-roundtables .roundtables-hero h1 { max-width: 20ch; }
}
@media (max-width: 767px) {
  body.page-resources .resources-hero,
  body.page-roundtables .roundtables-hero { padding-block: clamp(3.75rem, 10vw, 4.5rem); }
  body.page-resources .resources-hero-grid,
  body.page-roundtables .roundtables-hero-grid { grid-template-columns: 1fr; gap: 2rem; }
  body.page-resources .resources-hero h1,
  body.page-roundtables .roundtables-hero h1 { max-width: 13ch; font-size: clamp(2.3rem, 10vw, 3.1rem); }
}
@media (max-width: 480px) {
  body.page-resources .resources-hero .hero-actions,
  body.page-roundtables .roundtables-hero .hero-actions { align-items: stretch; flex-direction: column; gap: 16px; }
  body.page-resources .resources-hero .button.primary,
  body.page-roundtables .roundtables-hero .button.primary { width: 100%; }
  body.page-resources .resources-hero .button.secondary,
  body.page-roundtables .roundtables-hero .button.secondary { width: fit-content; }
}

/* Resources completion: scoped resource overview, route navigation, and page hierarchy. */
body.page-resources .resources-hero-grid { grid-template-columns: minmax(0, 3fr) minmax(0, 2fr); gap: clamp(2.5rem, 5vw, 5.5rem); }
body.page-resources .resources-hero h1 { max-width: none; }
body.page-resources .resources-hero p:not(.eyebrow) { max-width: 65ch; }
body.page-resources .resources-hero-visual { width: 100%; min-width: 0; align-self: center; overflow: hidden; background: #081a3b; box-shadow: 0 18px 42px rgba(0, 0, 0, .18); }
body.page-resources .resources-hero-visual img { width: 100%; height: auto; object-fit: contain; }
body.page-resources .resources-section { scroll-margin-top: 6.5rem; }
body.page-resources .resources-overview { background: #f8f6ef; }
body.page-resources .resources-overview .resources-intro { max-width: 66ch; }
body.page-resources .resources-pathways { align-items: stretch; border-color: rgba(21, 37, 75, .22); }
body.page-resources .resources-pathways a { display: flex; min-height: 18.5rem; flex-direction: column; padding: clamp(1.5rem, 2.5vw, 2rem); transition: background-color 180ms ease, color 180ms ease, transform 180ms ease; }
body.page-resources .resources-pathways a::before { display: block; width: 2rem; height: 2px; margin-bottom: 1.25rem; background: #b48628; content: ''; }
body.page-resources .resources-pathways h3 { margin: 0 0 .9rem; }
body.page-resources .resources-pathways a > p { margin-bottom: 0; }
body.page-resources .resources-pathways a > b { display: inline-flex; width: fit-content; align-items: center; gap: .7rem; margin-top: auto; padding-top: 2.25rem; white-space: nowrap; }
body.page-resources .resources-pathways a > b i { flex: 0 0 auto; font-style: normal; }
body.page-resources .resources-pathways a:hover { background: #101c3c; color: #fffdf7; }
body.page-resources .resources-pathways a:focus-visible, body.page-resources .contact-ecosystem-card:focus-visible { outline: 2px solid #b48628; outline-offset: 4px; }
body.page-resources .resources-split > div > p:not(.eyebrow) { max-width: 40rem; margin: clamp(1.25rem, 2vw, 1.65rem) 0 0; line-height: 1.7; }
body.page-resources .resources-split img { width: 100%; height: auto; border-color: rgba(21, 37, 75, .22); box-shadow: 0 14px 34px rgba(21, 37, 75, .1); }
body.page-resources #verification-use-cases .resources-grid { margin-top: clamp(2.5rem, 4vw, 3.6rem); }
body.page-resources #industries-contexts { background: #f8f6ef; }
body.page-resources #industries-contexts .resources-grid { gap: clamp(1.1rem, 2vw, 1.5rem); margin-top: 2.8rem; border: 0; background: transparent; }
body.page-resources #industries-contexts .resources-grid article { min-height: 13.25rem; padding: 1.5rem 0 0; border-top: 2px solid #b48628; background: transparent; }
body.page-resources #industries-contexts .resources-grid h3 { margin: 0 0 1rem; }
body.page-resources #industries-contexts .resources-grid article p + p { color: #5d6980; font-size: .82rem; line-height: 1.55; }
body.page-resources .resources-dark .resources-note { max-width: 65rem; margin: 1.8rem 0 0; padding: 1rem 1.2rem; border: 1px solid rgba(212, 173, 84, .54); border-left: 3px solid var(--cta-gold); }
body.page-resources .resources-dark .resources-grid { gap: clamp(1.1rem, 2vw, 1.5rem); border: 0; background: transparent; }
body.page-resources .resources-dark .resources-grid article { min-height: 0; padding: clamp(1.65rem, 3vw, 2.35rem); border: 1px solid rgba(220, 226, 238, .24); }
body.page-resources .resources-dark .resources-grid h3 { margin: .85rem 0 1.55rem; }
body.page-resources .resources-dark h4 { margin: 1.15rem 0 .38rem; padding-top: 1.1rem; border-top: 1px solid rgba(220, 226, 238, .18); }
body.page-resources .resources-dark h3 + h4 { padding-top: 0; border-top: 0; }
body.page-resources #research-resources .resources-grid article { min-height: 10.75rem; padding: 1.55rem; }
body.page-resources #research-resources .resources-grid h3 { margin-top: 0; }
body.page-resources .resources-ecosystem { background: #081a3b; color: #edf1f5; }
body.page-resources .resources-ecosystem .contact-ecosystem-intro { max-width: 48rem; margin: 0 auto; text-align: center; }
body.page-resources .resources-ecosystem .contact-ecosystem-intro .eyebrow,
body.page-resources .resources-ecosystem .contact-ecosystem-intro h2,
body.page-resources .resources-ecosystem .contact-ecosystem-intro > p:not(.eyebrow) { margin-right: auto; margin-left: auto; text-align: center; }
body.page-resources .resources-ecosystem .contact-ecosystem-intro .eyebrow { color: var(--cta-gold); }
body.page-resources .resources-ecosystem .contact-ecosystem-intro h2 { max-width: 18ch; color: #fffdf7; }
body.page-resources .resources-ecosystem .contact-ecosystem-intro > p:not(.eyebrow) { max-width: 42rem; margin-top: 1.3rem; color: #dbe2ee; line-height: 1.7; }
body.page-resources .resources-ecosystem .contact-ecosystem-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px; margin-top: 2.8rem; border: 1px solid rgba(220, 226, 238, .25); background: rgba(220, 226, 238, .25); }
body.page-resources .resources-ecosystem .contact-ecosystem-card { display: flex; min-width: 0; min-height: 15.5rem; flex-direction: column; padding: 1.55rem; background: #0d2148; color: #edf1f5; text-align: left; text-decoration: none; transition: background-color 180ms ease, transform 180ms ease; }
body.page-resources .resources-ecosystem .contact-ecosystem-card:hover { background: #152d5c; }
body.page-resources .resources-ecosystem .contact-ecosystem-card > span { color: var(--cta-gold); font-family: var(--mono, monospace); font-size: .72rem; letter-spacing: .08em; }
body.page-resources .resources-ecosystem .contact-ecosystem-card h3 { margin: 1rem 0 .75rem; color: #fffdf7; font-size: 1.1rem; line-height: 1.2; }
body.page-resources .resources-ecosystem .contact-ecosystem-card p { margin: 0; color: #dbe2ee; font-size: .92rem; line-height: 1.6; }
body.page-resources .resources-ecosystem .contact-ecosystem-card b { margin-top: auto; padding-top: 1.4rem; color: var(--cta-gold); font-family: var(--mono, monospace); font-size: .68rem; letter-spacing: .06em; line-height: 1.45; }
body.page-resources .resources-ecosystem .contact-ecosystem-card i { font-style: normal; }
body.page-resources .resources-closing { background: #f8f6ef; color: #101c3c; border-top: 1px solid rgba(21, 37, 75, .16); }
body.page-resources .resources-closing h2 { color: #101c3c; }
body.page-resources .resources-closing p:not(.eyebrow) { color: #31405f; }
body.page-resources .resources-closing .eyebrow { color: #a7791a; }
body.page-resources .resources-closing .hero-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: .85rem; }
body.page-resources .resources-closing .button.primary { border-color: #101c3c; background: #101c3c; color: #fffdf7; }
body.page-resources .resources-closing .hero-actions .button.secondary,
body.page-resources .resources-closing .hero-actions .button.secondary:visited { border: 1px solid #dfbc66; background: transparent; color: #101c3c; text-decoration: none; }
body.page-resources .resources-closing .hero-actions .button.secondary:hover,
body.page-resources .resources-closing .hero-actions .button.secondary:focus,
body.page-resources .resources-closing .hero-actions .button.secondary:focus-visible,
body.page-resources .resources-closing .hero-actions .button.secondary:active { border-color: #dfbc66; background: #dfbc66; color: #101c3c; text-decoration: none; }
body.page-resources .resources-closing .hero-actions .button.secondary:focus-visible { outline: 2px solid #dfbc66; outline-offset: 3px; box-shadow: 0 0 0 3px rgba(223, 188, 102, .22); }
html.motion-ready body.page-resources [data-motion="section"] :is(.resources-hero-grid > *, .resources-shell > .eyebrow, .resources-shell > h2, .resources-shell > .resources-intro, .resources-split > *, .resources-pathways > a, .resources-grid > article, .resources-note, .contact-ecosystem-intro, .contact-ecosystem-card, .resources-closing .resources-shell > *) { opacity: 0; transform: translateY(16px); transition: opacity 480ms ease, transform 480ms ease; }
html.motion-ready body.page-resources [data-motion="section"].is-visible :is(.resources-hero-grid > *, .resources-shell > .eyebrow, .resources-shell > h2, .resources-shell > .resources-intro, .resources-split > *, .resources-pathways > a, .resources-grid > article, .resources-note, .contact-ecosystem-intro, .contact-ecosystem-card, .resources-closing .resources-shell > *) { opacity: 1; transform: none; }
html.motion-ready body.page-resources [data-motion="section"].is-visible :is(.resources-pathways > a, .resources-grid > article, .contact-ecosystem-card):nth-child(2) { transition-delay: 70ms; }
html.motion-ready body.page-resources [data-motion="section"].is-visible :is(.resources-pathways > a, .resources-grid > article, .contact-ecosystem-card):nth-child(3) { transition-delay: 140ms; }
html.motion-ready body.page-resources [data-motion="section"].is-visible :is(.resources-pathways > a, .resources-grid > article, .contact-ecosystem-card):nth-child(4) { transition-delay: 210ms; }
html.motion-ready body.page-resources [data-motion="section"].is-visible .resources-grid > article:nth-child(5) { transition-delay: 280ms; }
html.motion-ready body.page-resources [data-motion="section"].is-visible .resources-grid > article:nth-child(6) { transition-delay: 350ms; }
@media (max-width: 900px) { body.page-resources .resources-hero-grid { grid-template-columns: 1fr; } body.page-resources .resources-hero h1 { max-width: none; } body.page-resources .resources-hero-visual { width: min(100%, 760px); } body.page-resources .resources-ecosystem .contact-ecosystem-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } body.page-resources .resources-closing .hero-actions { justify-content: flex-start; } }
@media (max-width: 620px) { body.page-resources .resources-pathways a, body.page-resources .resources-ecosystem .contact-ecosystem-card { min-height: 0; } body.page-resources .resources-pathways a > b { margin-top: 0; padding-top: 1.5rem; } body.page-resources #industries-contexts .resources-grid article { min-height: 0; } body.page-resources .resources-closing .hero-actions { width: 100%; flex-direction: column; } body.page-resources .resources-closing .button { width: 100%; } }@media (prefers-reduced-motion: reduce) { html.motion-ready body.page-resources [data-motion="section"] :is(.resources-hero-grid > *, .resources-shell > .eyebrow, .resources-shell > h2, .resources-shell > .resources-intro, .resources-split > *, .resources-pathways > a, .resources-grid > article, .resources-note, .contact-ecosystem-intro, .contact-ecosystem-card, .resources-closing .resources-shell > *) { opacity: 1; transform: none; transition: none; } }

/* Think Tank Roundtable Series public event page. */
body.page-roundtables .roundtables-hero-grid { grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); }
body.page-roundtables .roundtables-hero h1 { max-width: 22ch; }
body.page-roundtables .roundtables-outline,
body.page-roundtables .roundtables-outline:visited { display: inline-flex; align-items: center; justify-content: center; min-height: 46px; padding: 0 21px; border: 1px solid #dfbc66; border-radius: 0; background: transparent; color: #fffdf6; font-size: .78rem; font-weight: 600; letter-spacing: .04em; line-height: 1.2; text-decoration: none; text-transform: uppercase; }
body.page-roundtables .roundtables-outline:hover,
body.page-roundtables .roundtables-outline:focus,
body.page-roundtables .roundtables-outline:focus-visible,
body.page-roundtables .roundtables-outline:active { border-color: #dfbc66; background: #dfbc66; color: #071731; text-decoration: none; }
body.page-roundtables .roundtables-outline:focus-visible { outline: 2px solid #dfbc66; outline-offset: 3px; }
body.page-roundtables .roundtables-format-grid,
body.page-roundtables .roundtables-privacy-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(2.5rem, 6vw, 6rem); align-items: start; }
body.page-roundtables .roundtables-format-grid h2,
body.page-roundtables .roundtables-privacy-grid h2 { max-width: 19ch; }
body.page-roundtables .roundtables-format-grid > div > p:not(.eyebrow),
body.page-roundtables .roundtables-privacy-grid p { max-width: 42rem; color: #344362; }
body.page-roundtables .roundtables-format-grid > div > p + p,
body.page-roundtables .roundtables-privacy-grid p + p { margin-top: 1rem; }
body.page-roundtables .roundtables-pathway { display: flex; flex-wrap: wrap; gap: .7rem .9rem; margin-top: 1.8rem !important; padding-left: 1rem; border-left: 2px solid #b48628; color: #182544 !important; font-family: var(--mono, 'Fragment Mono', monospace); font-size: .75rem; line-height: 1.55; }
body.page-roundtables .roundtables-pathway span { display: inline-flex; align-items: center; gap: .9rem; }
body.page-roundtables .roundtables-pathway span:not(:last-child)::after { color: #a77c27; content: '\2192'; }
body.page-roundtables .roundtables-privacy-grid article + article { padding-top: clamp(2.5rem, 5vw, 4.8rem); }
body.page-roundtables .roundtables-privacy-grid h3 { margin: 1.5rem 0 .7rem; color: #172748; font-size: 1.15rem; font-weight: 500; }
body.page-roundtables .roundtables-invitation-section { background: #edf1f5; }
body.page-roundtables .roundtables-invitation-layout { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: clamp(2.5rem, 7vw, 7rem); align-items: start; }
body.page-roundtables .roundtables-invitation-copy h2 { max-width: 18ch; }
body.page-roundtables .roundtables-invitation-copy > p:not(.eyebrow) { max-width: 37rem; color: #344362; }
body.page-roundtables .roundtables-invitation-copy > p + p { margin-top: 1rem; }
body.page-roundtables .roundtables-invitation-form { display: grid; gap: 1.3rem; padding: clamp(1.5rem, 3vw, 2.5rem); border: 1px solid rgba(20, 37, 75, .22); background: #fffdf7; box-shadow: 0 .65rem 1.5rem rgba(15, 30, 63, .08); }
body.page-roundtables .roundtables-form-intro { padding-bottom: 1.2rem; border-bottom: 1px solid rgba(20, 37, 75, .18); }
body.page-roundtables .roundtables-form-intro h2 { max-width: none; margin: 0; font-size: clamp(1.75rem, 2.4vw, 2.35rem); }
body.page-roundtables .roundtables-form-intro p { margin: .75rem 0 0; color: #53617b; font-size: .87rem; }
body.page-roundtables .roundtables-form-intro span,
body.page-roundtables .roundtables-field label span { color: #8c671d; }
body.page-roundtables .roundtables-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.15rem 1.25rem; }
body.page-roundtables .roundtables-field { min-width: 0; }
body.page-roundtables .roundtables-field-full { grid-column: 1 / -1; }
body.page-roundtables .roundtables-field label { display: block; margin-bottom: .45rem; color: #172748; font-size: .92rem; font-weight: 500; }
body.page-roundtables .roundtables-field input,
body.page-roundtables .roundtables-field select,
body.page-roundtables .roundtables-field textarea { width: 100%; min-height: 48px; padding: .68rem .75rem; border: 1px solid rgba(20, 37, 75, .27); border-radius: 0; background: #fffefb; color: #172748; font: inherit; line-height: 1.4; }
body.page-roundtables .roundtables-field textarea { min-height: 9.5rem; resize: vertical; }
body.page-roundtables .roundtables-consent { display: grid; grid-template-columns: auto 1fr; gap: .75rem; align-items: start; color: #172748; font-size: .92rem; line-height: 1.52; }
body.page-roundtables .roundtables-consent input { width: 18px; height: 18px; margin-top: .14rem; accent-color: #b48628; }
body.page-roundtables .roundtables-consent a { color: inherit; text-underline-offset: .2em; }
body.page-roundtables .roundtables-form-action { display: flex; align-items: center; min-height: 3rem; }
@media (min-width: 1050px) { body.page-roundtables .roundtables-invitation-copy { position: sticky; top: 118px; align-self: start; } }
@media (max-width: 1024px) { body.page-roundtables .roundtables-invitation-layout { grid-template-columns: 1fr; } body.page-roundtables .roundtables-invitation-copy { max-width: 42rem; position: static; } }
@media (max-width: 767px) { body.page-roundtables .roundtables-format-grid, body.page-roundtables .roundtables-privacy-grid, body.page-roundtables .roundtables-form-grid { grid-template-columns: 1fr; } body.page-roundtables .roundtables-privacy-grid article + article { padding-top: 0; } body.page-roundtables .roundtables-invitation-form { padding: 1.4rem; } }
@media (max-width: 480px) { body.page-roundtables .roundtables-hero .hero-actions, body.page-roundtables .roundtables-closing .hero-actions { align-items: stretch; flex-direction: column; } body.page-roundtables .roundtables-hero .hero-actions .button, body.page-roundtables .roundtables-closing .hero-actions .button, body.page-roundtables .roundtables-form-action .button { width: 100%; } }
/* Think Tank Roundtable Series and programme route refinement. */
body.page-roundtables .roundtables-hero .button.secondary.roundtables-outline,
body.page-roundtables .roundtables-hero .button.secondary.roundtables-outline:visited,
body.page-roundtables .roundtables-closing .button.secondary.roundtables-outline,
body.page-roundtables .roundtables-closing .button.secondary.roundtables-outline:visited { display: inline-flex; align-items: center; justify-content: center; min-height: 46px; padding: 0 21px; border: 1px solid #dfbc66; border-radius: 0; background: transparent; color: #fffdf6; font-size: .78rem; font-weight: 600; letter-spacing: .04em; line-height: 1.2; text-decoration: none; text-transform: uppercase; }
body.page-roundtables .roundtables-hero .button.secondary.roundtables-outline:hover,
body.page-roundtables .roundtables-hero .button.secondary.roundtables-outline:focus,
body.page-roundtables .roundtables-hero .button.secondary.roundtables-outline:focus-visible,
body.page-roundtables .roundtables-hero .button.secondary.roundtables-outline:active,
body.page-roundtables .roundtables-closing .button.secondary.roundtables-outline:hover,
body.page-roundtables .roundtables-closing .button.secondary.roundtables-outline:focus,
body.page-roundtables .roundtables-closing .button.secondary.roundtables-outline:focus-visible,
body.page-roundtables .roundtables-closing .button.secondary.roundtables-outline:active { border-color: #dfbc66; background: #dfbc66; color: #071731; text-decoration: none; }
body.page-roundtables .roundtables-hero .button.secondary.roundtables-outline:focus-visible,
body.page-roundtables .roundtables-closing .button.secondary.roundtables-outline:focus-visible { outline: 2px solid #dfbc66; outline-offset: 3px; }
body.page-thinktank .thinktank-roundtable-series-route { max-width: 45rem; margin-top: clamp(2rem, 4vw, 3rem); padding-top: clamp(1.4rem, 3vw, 2rem); border-top: 1px solid rgba(24, 42, 80, .22); }
body.page-thinktank .thinktank-roundtable-series-route .eyebrow { margin: 0 0 .65rem; }
body.page-thinktank .thinktank-roundtable-series-route > p:not(.eyebrow) { max-width: 42rem; margin: 0; color: rgba(23, 38, 69, .8); line-height: 1.58; }
/* Roundtable Series hierarchy and invitation-flow refinement. */
body.page-roundtables .roundtables-hero { padding-block: clamp(4.2rem, 6vw, 5.75rem); }
body.page-roundtables .roundtables-hero h1 { max-width: 20ch; font-size: clamp(2.65rem, 4.35vw, 4.55rem); letter-spacing: -.045em; }
body.page-roundtables .roundtables-series-panel { align-self: center; }
body.page-roundtables .roundtables-section { padding-block: clamp(3.6rem, 5.4vw, 5.5rem); }
body.page-roundtables .roundtables-editorial { gap: clamp(2.5rem, 6vw, 5.5rem); }
body.page-roundtables .roundtables-editorial > div:last-child { padding-top: clamp(2rem, 3.2vw, 2.75rem); }
body.page-roundtables .roundtables-editorial h2 { font-size: clamp(1.95rem, 2.65vw, 3rem); }
body.page-roundtables .roundtables-city-grid article { display: flex; min-height: 16rem; flex-direction: column; padding: clamp(1.65rem, 2.5vw, 2.1rem); border-top: 2px solid #dfbc66; }
body.page-roundtables .roundtables-city-grid dl { margin-bottom: 1.5rem; }
body.page-roundtables .roundtables-city-invitation { display: inline-flex; width: fit-content; align-items: center; min-height: 44px; margin-top: auto; padding-bottom: .35rem; border-bottom: 1px solid #b48628; color: #172748; font-size: .76rem; font-weight: 600; letter-spacing: .04em; text-decoration: none; text-transform: uppercase; }
body.page-roundtables .roundtables-city-invitation:hover,
body.page-roundtables .roundtables-city-invitation:focus-visible { border-bottom-color: #172748; color: #172748; }
body.page-roundtables .roundtables-theme-grid article { display: flex; min-height: 16rem; flex-direction: column; padding: clamp(1.9rem, 3vw, 2.4rem); border-top: 2px solid transparent; transition: background-color 180ms ease, border-color 180ms ease; }
body.page-roundtables .roundtables-theme-grid article:hover { border-top-color: #dfbc66; background: #102955; }
body.page-roundtables .roundtables-theme-grid h3 { margin: 1.15rem 0 1.15rem; }
body.page-roundtables .roundtables-theme-grid h4 { margin: 0; }
body.page-roundtables .roundtables-format-grid { gap: clamp(2rem, 5vw, 4.5rem); }
body.page-roundtables .roundtables-format-grid > div { padding-top: 1.25rem; border-top: 2px solid #dfbc66; }
body.page-roundtables .roundtables-format-grid h2 { font-size: clamp(1.75rem, 2.45vw, 2.55rem); }
body.page-roundtables .roundtables-pathway { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: .7rem; margin-top: 1.8rem !important; padding: 0; border-left: 0; font-family: inherit; font-size: .88rem; line-height: 1.45; }
body.page-roundtables .roundtables-pathway span { display: block; min-width: 0; padding: .8rem .65rem .65rem; border-top: 1px solid #b48628; color: #172748; }
body.page-roundtables .roundtables-pathway span:not(:last-child)::after { content: none; }
body.page-roundtables .roundtables-privacy-section { padding-block: clamp(3.5rem, 4.8vw, 4.75rem); }
body.page-roundtables .roundtables-privacy-heading h2 { max-width: 24ch; font-size: clamp(1.9rem, 2.7vw, 3rem); }
body.page-roundtables .roundtables-privacy-cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; margin-top: 2.2rem; border: 1px solid rgba(20, 37, 75, .22); background: rgba(20, 37, 75, .22); }
body.page-roundtables .roundtables-privacy-cards article { min-width: 0; padding: clamp(1.55rem, 2.75vw, 2.2rem); border-top: 2px solid #dfbc66; background: #f8f6ef; }
body.page-roundtables .roundtables-privacy-cards h3 { margin: 0 0 1rem; color: #172748; font-size: 1.15rem; font-weight: 500; }
body.page-roundtables .roundtables-privacy-cards p { max-width: 40rem; margin: 0; color: #344362; line-height: 1.68; }
body.page-roundtables .roundtables-privacy-cards p + p { margin-top: .9rem; }
body.page-roundtables .roundtables-invitation-section { scroll-margin-top: 7rem; }
body.page-roundtables .roundtables-field input:focus,
body.page-roundtables .roundtables-field select:focus,
body.page-roundtables .roundtables-field textarea:focus { outline: 2px solid #dfbc66; outline-offset: 1px; border-color: #b48628; box-shadow: none; }
body.page-roundtables .roundtables-form-note { margin: .2rem 0 0; padding-top: 1rem; border-top: 1px solid rgba(20, 37, 75, .18); color: #53617b; font-size: .87rem; line-height: 1.58; }
body.page-roundtables .roundtables-form-action { margin-top: .5rem; }
body.page-roundtables .roundtables-closing { padding-block: clamp(3.2rem, 4.5vw, 4.25rem); }
body.page-roundtables .roundtables-closing .roundtables-shell { grid-template-columns: 1fr; gap: 1.25rem; align-items: start; }
body.page-roundtables .roundtables-closing h2 { font-size: clamp(1.9rem, 2.75vw, 2.9rem); }
body.page-roundtables .roundtables-closing .hero-actions { display: flex; flex-wrap: wrap; gap: .85rem; margin-top: 0; }
body.page-roundtables .roundtables-closing .button.primary { border-color: #fffdf6; background: #fffdf6; color: #071731; }
@media (max-width: 900px) { body.page-roundtables .roundtables-editorial > div:last-child { padding-top: 0; } body.page-roundtables .roundtables-format-grid { gap: 2.4rem; } }
@media (max-width: 767px) { body.page-roundtables .roundtables-city-grid, body.page-roundtables .roundtables-theme-grid, body.page-roundtables .roundtables-privacy-cards { grid-template-columns: 1fr; } body.page-roundtables .roundtables-format-grid > div + div { margin-top: .35rem; } body.page-roundtables .roundtables-pathway { grid-template-columns: repeat(2, minmax(0, 1fr)); } body.page-roundtables .roundtables-city-grid article, body.page-roundtables .roundtables-theme-grid article { min-height: 0; } }
@media (max-width: 480px) { body.page-roundtables .roundtables-pathway { grid-template-columns: 1fr; } body.page-roundtables .roundtables-closing .hero-actions { flex-direction: column; } body.page-roundtables .roundtables-closing .hero-actions .button { width: 100%; } }
/* Homepage hero positioning grid. */
.home-page .home-hero .hero-positioning-grid {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: .34rem;
  max-width: 100%;
  margin: 2rem 0 0;
  padding: 0;
  color: var(--navy);
  font-family: var(--mono, "Fragment Mono", monospace);
  font-size: clamp(.8rem, .3vw + .75rem, .9rem);
  font-weight: 500;
  letter-spacing: .045em;
  line-height: 1.45;
  text-align: left;
}
.home-page .home-hero .hero-positioning-line {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  row-gap: .34rem;
  max-width: 100%;
}
.home-page .home-hero .hero-positioning-token {
  display: inline-flex;
  min-width: 0;
  align-items: baseline;
  margin: 0;
  white-space: nowrap;
}
.home-page .home-hero .hero-positioning-token:not(:last-child)::after {
  margin-inline: .62rem;
  color: var(--gold);
  content: "\00b7";
  font-weight: 600;
}
.home-page .home-hero .hero-actions .button.primary,
.home-page .home-hero .hero-actions .button.primary:hover,
.home-page .home-hero .hero-actions .button.primary:focus-visible,
.home-page .home-hero .hero-actions .button.primary:active {
  border-color: var(--navy);
  background: var(--navy);
  color: var(--ivory);
  transform: none;
}
.home-page .home-hero .hero-actions .button.primary:hover,
.home-page .home-hero .hero-actions .button.primary:focus-visible,
.home-page .home-hero .hero-actions .button.primary:active {
  box-shadow: inset 0 0 0 1px rgba(209, 178, 115, .45), 0 7px 16px rgba(23, 39, 72, .14);
}
.home-page .home-hero .hero-actions .button.primary:focus-visible,
.home-page .home-hero .hero-actions .button.text-button:focus-visible {
  outline: 2px solid var(--gold);
  outline-offset: 3px;
}
.home-page .home-hero .hero-actions .button.text-button,
.home-page .home-hero .hero-actions .button.text-button:hover,
.home-page .home-hero .hero-actions .button.text-button:focus-visible,
.home-page .home-hero .hero-actions .button.text-button:active {
  transform: none;
}
@media (max-width: 480px) {
  .home-page .home-hero .hero-positioning-grid { gap: .36rem; margin-top: 1.55rem; font-size: .8rem; letter-spacing: .03em; }
  .home-page .home-hero .hero-positioning-line { row-gap: .36rem; }
  .home-page .home-hero .hero-positioning-token:not(:last-child)::after { margin-inline: .5rem; }
}

@media (min-width: 960px) {
  .home-page .infrastructure-focus .infrastructure-panel { row-gap: 0; }
  .home-page .infrastructure-focus .infrastructure-control-panel { margin-top: -6px; }
}/* Final Roundtable Series event-page design refinement. */
body.page-roundtables .roundtables-about { padding-block: clamp(3.2rem, 4.75vw, 4.8rem); }
body.page-roundtables .roundtables-about .roundtables-editorial > div:last-child { padding-top: clamp(1.8rem, 2.35vw, 2.25rem); }
body.page-roundtables .roundtables-about .roundtables-editorial > div:last-child > p + p { margin-top: .78rem; }
@media (min-width: 1050px) {
  body.page-roundtables .roundtables-hero-grid { grid-template-columns: minmax(0, 1.42fr) minmax(0, 1.08fr); }
  body.page-roundtables .roundtables-series-panel { width: 100%; }
}
body.page-roundtables .roundtables-city-grid article { position: relative; transition: transform 200ms ease, border-color 200ms ease, background-color 200ms ease; }
body.page-roundtables .roundtables-city-grid article:hover,
body.page-roundtables .roundtables-city-grid article:focus-within { border-top-color: #b48628; transform: translateY(-2px); }
body.page-roundtables .roundtables-session-number { display: inline-block; color: #b48628; font-family: var(--mono, 'Fragment Mono', monospace); font-size: .7rem; font-weight: 500; letter-spacing: .1em; line-height: 1; }
body.page-roundtables .roundtables-city-grid .roundtables-session-number { position: absolute; top: clamp(1.65rem, 2.5vw, 2.1rem); right: clamp(1.65rem, 2.5vw, 2.1rem); }
body.page-roundtables .roundtables-city-invitation { gap: .7rem; transition: border-color 200ms ease, color 200ms ease, transform 200ms ease; }
body.page-roundtables .roundtables-city-invitation span { display: inline-block; font-size: 1rem; line-height: 1; transition: transform 200ms ease; }
body.page-roundtables .roundtables-city-invitation:hover span,
body.page-roundtables .roundtables-city-invitation:focus-visible span { transform: translateX(2px); }
body.page-roundtables .roundtables-theme-grid article { padding: clamp(1.9rem, 3vw, 2.4rem); }
body.page-roundtables .roundtables-theme-grid article > span { display: block; min-height: .8rem; }
body.page-roundtables .roundtables-theme-grid h3 { margin-top: 1.15rem; }
body.page-roundtables .roundtables-theme-grid h4 { margin-top: 0; }
body.page-roundtables .roundtables-format-grid { display: grid; grid-template-columns: 1fr; gap: clamp(2.35rem, 4.5vw, 4rem); }
body.page-roundtables .roundtables-format-grid > .roundtables-format-top { padding-top: 0; border-top: 0; }
body.page-roundtables .roundtables-format-top { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; }
body.page-roundtables .roundtables-format-top > div { min-width: 0; padding-top: 1.25rem; border-top: 2px solid #dfbc66; }
body.page-roundtables .roundtables-format-top > div + div { padding-left: clamp(2rem, 4vw, 4.5rem); border-left: 1px solid rgba(20, 37, 75, .2); }
body.page-roundtables .roundtables-pathway { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 0; margin: 0 !important; padding: 0; border: 0; color: #172748 !important; font-family: var(--mono, 'Fragment Mono', monospace); font-size: .76rem; line-height: 1.5; list-style: none; }
body.page-roundtables .roundtables-pathway li { position: relative; min-width: 0; padding: .92rem 1rem .72rem 0; border-top: 1px solid #b48628; }
body.page-roundtables .roundtables-pathway li:not(:last-child)::after { position: absolute; top: .78rem; right: .45rem; color: #b48628; content: '\2192'; font-size: .82rem; }
body.page-roundtables .roundtables-privacy-section { padding-bottom: clamp(3.15rem, 4.3vw, 4.25rem); }
body.page-roundtables .roundtables-privacy-cards article { position: relative; min-height: 100%; padding: clamp(1.75rem, 3vw, 2.4rem); }
body.page-roundtables .roundtables-privacy-cards .roundtables-session-number { margin-bottom: 1.35rem; }
body.page-roundtables .roundtables-privacy-cards h3 { margin-top: 0; font-weight: 600; }
body.page-roundtables .roundtables-invitation-copy { display: grid; align-content: start; }
body.page-roundtables .roundtables-event-summary { margin-top: 2rem; padding: 1rem 0 0; border-top: 2px solid #dfbc66; color: #172748; }
body.page-roundtables .roundtables-summary-label { margin: 0 0 .7rem; color: #87671e; font-family: var(--mono, 'Fragment Mono', monospace); font-size: .68rem; font-weight: 500; letter-spacing: .1em; line-height: 1.35; }
body.page-roundtables .roundtables-event-summary ul { display: grid; gap: .38rem; margin: 0; padding: 0; font-family: var(--mono, 'Fragment Mono', monospace); font-size: .75rem; letter-spacing: .02em; line-height: 1.5; list-style: none; }
body.page-roundtables .roundtables-event-summary li span { color: #b48628; }
body.page-roundtables .roundtables-invitation-form { border-top: 2px solid #dfbc66; }
body.page-roundtables .roundtables-form-action { margin-top: 1rem; }
body.page-roundtables [id] { scroll-margin-top: calc(var(--hd-height) + 1rem); }
body.page-roundtables .roundtables-closing { padding-block: clamp(2.9rem, 4vw, 3.8rem); }
body.page-roundtables .roundtables-closing .roundtables-shell { position: relative; padding-top: .85rem; }
body.page-roundtables .roundtables-closing .roundtables-shell::before { position: absolute; top: 0; left: 0; width: min(11rem, 24%); height: 1px; background: #dfbc66; content: ''; }
@media (max-width: 1100px) { body.page-roundtables [id] { scroll-margin-top: calc(var(--hd-height-tablet) + 1rem); } }
@media (max-width: 800px) {
  body.page-roundtables .roundtables-about .roundtables-editorial > div:last-child { padding-top: 0; }
  body.page-roundtables .roundtables-format-top { grid-template-columns: 1fr; gap: 2.2rem; }
  body.page-roundtables .roundtables-format-top > div + div { padding-left: 0; border-left: 0; }
  body.page-roundtables .roundtables-pathway { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .65rem 1.25rem; }
  body.page-roundtables .roundtables-pathway li { padding-right: 0; }
  body.page-roundtables .roundtables-pathway li::after { display: none; }
}
@media (max-width: 680px) { body.page-roundtables [id] { scroll-margin-top: calc(var(--hd-height-mobile) + 1rem); } }
@media (max-width: 480px) {
  body.page-roundtables .roundtables-pathway { grid-template-columns: 1fr; gap: .5rem; }
  body.page-roundtables .roundtables-city-grid .roundtables-session-number { top: 1.65rem; right: 1.65rem; }
}
/* Roundtable Series location photographs. */
body.page-roundtables .roundtables-city-image { display: block; width: 100%; aspect-ratio: 16 / 9; overflow: hidden; border: 1px solid rgba(180, 137, 61, .48); }
body.page-roundtables .roundtables-city-image img { display: block; width: 100%; height: 100%; object-fit: cover; }
body.page-roundtables .roundtables-city-image--cambridge img { object-position: 50% 52%; }
body.page-roundtables .roundtables-city-image--oxford img { object-position: 50% 52%; }
body.page-roundtables .roundtables-city-image--london img { object-position: 66% 50%; }
body.page-roundtables .roundtables-city-grid .roundtables-city-invitation { margin-top: 1.35rem; }

/* Roundtable heading-to-description spacing. */
body.page-roundtables .roundtables-invitation-copy > h2 + p { margin-top: clamp(1.125rem, 1.5vw, 1.5rem); }
body.page-roundtables .roundtables-format-top > div > h2 + p { margin-top: clamp(1rem, 1.35vw, 1.375rem); }

/* Roundtable CTA and invitation-consent refinement. */
body.page-roundtables .roundtables-closing {
  background: #fffdf6;
  color: #172748;
  padding-block: clamp(3.25rem, 5vw, 4.6rem);
  border-top: 1px solid rgba(20, 37, 75, .18);
  border-bottom: 1px solid rgba(20, 37, 75, .18);
}
body.page-roundtables .roundtables-closing .roundtables-shell {
  display: grid;
  grid-template-columns: minmax(0, 3fr) minmax(20rem, 2fr);
  gap: clamp(2.5rem, 6vw, 5.5rem);
  align-items: center;
  padding-top: 1rem;
}
body.page-roundtables .roundtables-closing .roundtables-shell::before { background: #b48628; }
body.page-roundtables .roundtables-closing .eyebrow { color: #87671e; }
body.page-roundtables .roundtables-closing h2 {
  max-width: 16ch;
  margin: .6rem 0 0;
  color: #172748;
  font-size: clamp(2rem, 3.2vw, 3.25rem);
}
body.page-roundtables .roundtables-closing-copy > h2 + p {
  max-width: 42rem;
  margin: clamp(1.125rem, 1.5vw, 1.5rem) 0 0;
  color: #344362;
  line-height: 1.65;
}
body.page-roundtables .roundtables-closing-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: .85rem;
  margin-top: 0;
}
body.page-roundtables .roundtables-closing .button.primary,
body.page-roundtables .roundtables-closing .button.secondary.roundtables-outline {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 0 21px;
  border-radius: 0;
  font-size: .78rem;
  font-weight: 600;
  letter-spacing: .04em;
  line-height: 1.2;
  text-decoration: none;
  text-transform: uppercase;
  transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease, transform 160ms ease;
}
body.page-roundtables .roundtables-closing .button.primary {
  border: 1px solid #172748;
  background: #172748;
  color: #fffdf6;
}
body.page-roundtables .roundtables-closing .button.secondary.roundtables-outline,
body.page-roundtables .roundtables-closing .button.secondary.roundtables-outline:visited {
  border: 1px solid #b48628;
  background: transparent;
  color: #172748;
}
body.page-roundtables .roundtables-closing .button.primary:hover,
body.page-roundtables .roundtables-closing .button.primary:focus-visible,
body.page-roundtables .roundtables-closing .button.secondary.roundtables-outline:hover,
body.page-roundtables .roundtables-closing .button.secondary.roundtables-outline:focus-visible,
body.page-roundtables .roundtables-closing .button.secondary.roundtables-outline:active {
  border-color: #dfbc66;
  background: #dfbc66;
  color: #172748;
  transform: translateY(-2px);
}
body.page-roundtables .roundtables-closing .button:focus-visible {
  outline: 2px solid #b48628;
  outline-offset: 3px;
}
body.page-roundtables .roundtables-requirements-note {
  margin: -.15rem 0 0;
  color: #53617b;
  font-size: .87rem;
  line-height: 1.55;
}
body.page-roundtables .roundtables-consent-stack {
  display: grid;
  gap: 1rem;
}
body.page-roundtables .roundtables-consent {
  gap: .78rem;
  font-size: .92rem;
  line-height: 1.56;
}
body.page-roundtables .roundtables-consent input:focus-visible {
  outline: 2px solid #dfbc66;
  outline-offset: 3px;
}
body.page-roundtables .roundtables-consent input[aria-invalid="true"] {
  outline: 2px solid #b48628;
  outline-offset: 3px;
}
body.page-roundtables .roundtables-validation-message {
  margin: -.3rem 0 0 1.78rem;
  color: #74520b;
  font-size: .86rem;
  font-weight: 500;
  line-height: 1.5;
}
body.page-roundtables .roundtables-validation-message[hidden] { display: none; }
body.page-roundtables .roundtables-form-privacy {
  margin: 0;
  color: #53617b;
  font-size: .87rem;
  line-height: 1.58;
}
body.page-roundtables .roundtables-form-privacy a {
  color: #172748;
  text-underline-offset: .2em;
}
body.page-roundtables .roundtables-invitation-form .roundtables-form-note {
  margin-top: 0;
  padding-top: 1.25rem;
}
body.page-roundtables .roundtables-invitation-form .roundtables-form-action { margin-top: .2rem; }
@media (max-width: 900px) {
  body.page-roundtables .roundtables-closing .roundtables-shell { grid-template-columns: 1fr; gap: 1.75rem; }
  body.page-roundtables .roundtables-closing-actions { justify-content: flex-start; }
}
@media (max-width: 480px) {
  body.page-roundtables .roundtables-closing-actions { align-items: stretch; flex-direction: column; }
  body.page-roundtables .roundtables-closing-actions .button { width: 100%; }
  body.page-roundtables .roundtables-validation-message { margin-left: 0; }
}

/* Think Tank final editorial and participation system. */
body.page-thinktank {
  --thinktank-navy: #0d1b3a;
  --thinktank-navy-soft: #142849;
  --thinktank-ink: #172645;
  --thinktank-gold: #dfbc66;
  --thinktank-line: rgba(23, 38, 69, .18);
  --thinktank-stone: #f0eee8;
  --thinktank-mineral: #e6edf1;
}

body.page-thinktank .thinktank-hero {
  grid-template-columns: minmax(0, 3fr) minmax(22rem, 2fr);
  gap: clamp(2.5rem, 5vw, 6rem);
  align-items: center;
  padding-block: clamp(4.5rem, 8vw, 7.25rem);
}

body.page-thinktank .thinktank-hero-visual {
  margin: 0;
  overflow: hidden;
  align-self: center;
  background: var(--thinktank-navy);
  border: 1px solid var(--thinktank-gold);
  box-shadow: 0 20px 46px rgba(10, 25, 55, .16);
}

body.page-thinktank .thinktank-hero-visual picture,
body.page-thinktank .thinktank-hero-visual img {
  display: block;
  width: 100%;
}

body.page-thinktank .thinktank-hero-visual img {
  aspect-ratio: 16 / 9;
  height: auto;
  object-fit: cover;
  object-position: center;
}

body.page-thinktank .thinktank-editorial {
  padding-block: clamp(4rem, 7vw, 7rem);
  background: #fbfaf6;
}

body.page-thinktank .thinktank-editorial .inner-editorial-grid {
  gap: clamp(2.5rem, 7vw, 8rem);
}

body.page-thinktank .thinktank-editorial .inner-section-intro h2,
body.page-thinktank .thinktank-initiative-copy h2,
body.page-thinktank .thinktank-closing h2 {
  font-weight: 500;
  letter-spacing: 0;
}

body.page-thinktank .thinktank-editorial .inner-rich-copy {
  max-width: 43rem;
}

body.page-thinktank .thinktank-editorial .inner-rich-copy p + p {
  margin-top: 1.25rem;
}

body.page-thinktank .thinktank-initiative-link {
  padding-block: clamp(4rem, 7vw, 7rem);
  background: var(--thinktank-mineral);
}

body.page-thinktank .thinktank-initiative-layout {
  display: grid;
  grid-template-columns: minmax(0, .94fr) minmax(0, 1.06fr);
  gap: clamp(2rem, 5vw, 5rem);
  align-items: center;
}

body.page-thinktank .thinktank-initiative-copy {
  max-width: 40rem;
}

body.page-thinktank .thinktank-initiative-copy .eyebrow,
body.page-thinktank .thinktank-initiative-copy h2 {
  margin-top: 0;
}

body.page-thinktank .thinktank-initiative-copy > p:last-child {
  margin: 1.5rem 0 0;
  max-width: 38rem;
  line-height: 1.65;
}

body.page-thinktank .thinktank-initiative-visual {
  margin: 0;
  overflow: hidden;
  background: var(--thinktank-navy);
  border-top: 2px solid var(--thinktank-gold);
  box-shadow: 0 18px 36px rgba(13, 27, 58, .12);
}

body.page-thinktank .thinktank-initiative-visual picture,
body.page-thinktank .thinktank-initiative-visual img {
  display: block;
  width: 100%;
}

body.page-thinktank .thinktank-initiative-visual img {
  aspect-ratio: 5 / 4;
  object-fit: cover;
  object-position: center;
}

body.page-thinktank .thinktank-relationship {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  margin: clamp(2.5rem, 5vw, 4.5rem) 0 0;
  padding: 0;
  list-style: none;
  border-top: 1px solid var(--thinktank-line);
  border-bottom: 1px solid var(--thinktank-line);
}

body.page-thinktank .thinktank-relationship li {
  min-width: 0;
  padding: clamp(1.4rem, 2.8vw, 2.25rem);
}

body.page-thinktank .thinktank-relationship li + li {
  border-left: 1px solid var(--thinktank-line);
}

body.page-thinktank .thinktank-relationship span,
body.page-thinktank .inner-activity-grid article > span,
body.page-thinktank .thinktank-output-grid article > span,
body.page-thinktank .thinktank-focus-grid span,
body.page-thinktank .thinktank-privacy-grid article > span {
  display: block;
  margin-bottom: .9rem;
  color: #a77920;
  font-family: "Fragment Mono", monospace;
  font-size: .72rem;
  letter-spacing: .1em;
  line-height: 1;
}

body.page-thinktank .thinktank-relationship h3,
body.page-thinktank .thinktank-focus-grid h3,
body.page-thinktank .thinktank-privacy-grid h3 {
  margin: 0;
  color: var(--thinktank-ink);
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.25;
}

body.page-thinktank .thinktank-relationship p,
body.page-thinktank .thinktank-privacy-grid p {
  margin: .8rem 0 0;
  color: rgba(23, 38, 69, .82);
  font-size: .93rem;
  line-height: 1.56;
}

body.page-thinktank .thinktank-series {
  padding-block: clamp(4rem, 7vw, 7rem);
  background: var(--thinktank-stone);
}

body.page-thinktank .thinktank-series .section-heading,
body.page-thinktank .thinktank-outputs .section-heading,
body.page-thinktank .thinktank-engage .section-heading,
body.page-thinktank .thinktank-works .section-heading {
  align-items: end;
  gap: clamp(2rem, 5vw, 5rem);
}

body.page-thinktank .thinktank-series .section-heading > p,
body.page-thinktank .thinktank-outputs .section-heading > p,
body.page-thinktank .thinktank-engage .section-heading > p,
body.page-thinktank .thinktank-works .section-heading > p {
  max-width: 38rem;
  margin-bottom: .25rem;
  line-height: 1.62;
}

body.page-thinktank .thinktank-series-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
  margin-top: clamp(2.25rem, 4vw, 3.5rem);
}

body.page-thinktank .thinktank-series-grid article {
  display: flex;
  min-width: 0;
  flex-direction: column;
  padding: clamp(1.35rem, 2.5vw, 2rem);
  background: rgba(255, 255, 255, .54);
  border: 1px solid rgba(23, 38, 69, .2);
}

body.page-thinktank .thinktank-series-grid .eyebrow {
  margin: 0 0 .9rem;
}

body.page-thinktank .thinktank-series-grid .thinktank-date {
  margin: 0;
  color: var(--thinktank-ink);
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.25;
}

body.page-thinktank .thinktank-series-grid .thinktank-location {
  margin: .35rem 0 1.25rem;
  color: #a77920;
  font-family: "Fragment Mono", monospace;
  font-size: .78rem;
  letter-spacing: .08em;
  text-transform: uppercase;
}

body.page-thinktank .thinktank-series-grid .thinktank-location + p {
  margin: 0;
  color: rgba(23, 38, 69, .8);
  font-size: .95rem;
  line-height: 1.58;
}

body.page-thinktank .thinktank-roundtable-series-route {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 1.5rem;
  max-width: none;
  margin-top: clamp(2rem, 4vw, 3rem);
  padding-top: clamp(1.35rem, 2.5vw, 2rem);
  align-items: center;
  border-top: 1px solid rgba(23, 38, 69, .26);
}

body.page-thinktank .thinktank-roundtable-series-route > p:not(.eyebrow) {
  max-width: 52rem;
  margin: 0;
  color: rgba(23, 38, 69, .84);
  line-height: 1.58;
}

body.page-thinktank .thinktank-roundtable-series-route .button {
  justify-self: end;
  white-space: nowrap;
}

body.page-thinktank .thinktank-focus {
  padding-block: clamp(4rem, 7vw, 6.5rem);
  background: #fbfaf6;
}

body.page-thinktank .thinktank-focus-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  margin: clamp(2.25rem, 4vw, 3.5rem) 0 0;
  padding: 0;
  list-style: none;
  border-top: 1px solid var(--thinktank-line);
  border-left: 1px solid var(--thinktank-line);
}

body.page-thinktank .thinktank-focus-grid li {
  min-width: 0;
  padding: clamp(1.25rem, 2.5vw, 1.85rem);
  border-right: 1px solid var(--thinktank-line);
  border-bottom: 1px solid var(--thinktank-line);
}

body.page-thinktank .thinktank-works,
body.page-thinktank .thinktank-outputs {
  padding-block: clamp(4rem, 7vw, 7rem);
}

body.page-thinktank .thinktank-works {
  background: var(--thinktank-navy);
  color: #fff;
}

body.page-thinktank .thinktank-works :is(h2, h3) {
  color: #fff;
}

body.page-thinktank .thinktank-works .section-heading > p,
body.page-thinktank .thinktank-works .inner-activity-grid article p {
  color: rgba(255, 255, 255, .76);
}

body.page-thinktank .thinktank-works .eyebrow {
  color: var(--thinktank-gold);
}

body.page-thinktank .thinktank-works .inner-activity-grid,
body.page-thinktank .thinktank-output-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0;
  margin-top: clamp(2.25rem, 4vw, 3.5rem);
  border-top: 1px solid rgba(223, 188, 102, .45);
  border-left: 1px solid rgba(223, 188, 102, .3);
}

body.page-thinktank .thinktank-works .inner-activity-grid article,
body.page-thinktank .thinktank-output-grid article {
  min-width: 0;
  padding: clamp(1.5rem, 3vw, 2.25rem);
  border-right: 1px solid rgba(223, 188, 102, .3);
  border-bottom: 1px solid rgba(223, 188, 102, .3);
  background: transparent;
  box-shadow: none;
}

body.page-thinktank .thinktank-works .inner-activity-grid article > span,
body.page-thinktank .thinktank-output-grid article > span {
  color: var(--thinktank-gold);
}

body.page-thinktank .thinktank-works .inner-activity-grid h3,
body.page-thinktank .thinktank-output-grid h3 {
  margin: 0;
  font-size: clamp(1.05rem, 1.5vw, 1.25rem);
  font-weight: 600;
  line-height: 1.28;
}

body.page-thinktank .thinktank-works .inner-activity-grid p,
body.page-thinktank .thinktank-output-grid p {
  max-width: 37rem;
  margin: .85rem 0 0;
  font-size: .95rem;
  line-height: 1.58;
}

body.page-thinktank .thinktank-participants {
  padding-block: clamp(4rem, 7vw, 6.5rem);
  background: var(--thinktank-mineral);
}

body.page-thinktank .thinktank-participants .inner-route-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  margin-top: clamp(2.25rem, 4vw, 3.5rem);
  border-top: 1px solid var(--thinktank-line);
  border-left: 1px solid var(--thinktank-line);
}

body.page-thinktank .thinktank-participants .inner-route-grid article {
  min-width: 0;
  padding: clamp(1.35rem, 2.5vw, 2rem);
  border-right: 1px solid var(--thinktank-line);
  border-bottom: 1px solid var(--thinktank-line);
  background: transparent;
  box-shadow: none;
}

body.page-thinktank .thinktank-participants .inner-route-grid article > span {
  color: #a77920;
}

body.page-thinktank .thinktank-participants .inner-route-grid h3 {
  margin: .9rem 0 0;
  color: var(--thinktank-ink);
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.28;
}

body.page-thinktank .thinktank-participants .inner-route-grid p {
  margin: .85rem 0 0;
  color: rgba(23, 38, 69, .8);
  font-size: .92rem;
  line-height: 1.58;
}

body.page-thinktank .thinktank-outputs {
  background: #fbfaf6;
}

body.page-thinktank .thinktank-output-grid {
  border-color: var(--thinktank-line);
}

body.page-thinktank .thinktank-output-grid article {
  border-color: var(--thinktank-line);
}

body.page-thinktank .thinktank-output-grid h3 {
  color: var(--thinktank-ink);
}

body.page-thinktank .thinktank-output-grid p {
  color: rgba(23, 38, 69, .8);
}

body.page-thinktank .thinktank-privacy {
  padding-block: clamp(4rem, 7vw, 6.5rem);
  background: var(--thinktank-stone);
}

body.page-thinktank .thinktank-privacy-shell {
  border-top: 2px solid var(--thinktank-gold);
}

body.page-thinktank .thinktank-privacy-intro {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(18rem, .95fr);
  gap: clamp(2rem, 6vw, 6rem);
  padding: clamp(1.75rem, 3vw, 2.75rem) 0;
}

body.page-thinktank .thinktank-privacy-intro .eyebrow,
body.page-thinktank .thinktank-privacy-intro h2 {
  margin-top: 0;
}

body.page-thinktank .thinktank-privacy-intro > p {
  max-width: 38rem;
  margin: .15rem 0 0;
  color: rgba(23, 38, 69, .84);
  line-height: 1.62;
}

body.page-thinktank .thinktank-privacy-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-top: 1px solid var(--thinktank-line);
  border-left: 1px solid var(--thinktank-line);
}

body.page-thinktank .thinktank-privacy-grid article {
  min-width: 0;
  padding: clamp(1.35rem, 2.5vw, 2rem);
  border-right: 1px solid var(--thinktank-line);
  border-bottom: 1px solid var(--thinktank-line);
}

body.page-thinktank .thinktank-engage {
  padding-block: clamp(4rem, 7vw, 6.5rem);
  background: var(--thinktank-navy-soft);
  color: #fff;
}

body.page-thinktank .thinktank-engage :is(h2, h3) {
  color: #fff;
}

body.page-thinktank .thinktank-engage .eyebrow {
  color: var(--thinktank-gold);
}

body.page-thinktank .thinktank-engage .section-heading > p {
  color: rgba(255, 255, 255, .76);
}

body.page-thinktank .thinktank-engage ul {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0;
  margin: clamp(2.25rem, 4vw, 3.5rem) 0 0;
  padding: 0;
  list-style: none;
  border-top: 1px solid rgba(223, 188, 102, .45);
  border-left: 1px solid rgba(223, 188, 102, .3);
}

body.page-thinktank .thinktank-engage li {
  min-width: 0;
  border-right: 1px solid rgba(223, 188, 102, .3);
  border-bottom: 1px solid rgba(223, 188, 102, .3);
}

body.page-thinktank .thinktank-engage button {
  display: flex;
  width: 100%;
  min-height: 4.35rem;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1.15rem 1.35rem;
  border: 0;
  background: transparent;
  color: #fff;
  font: inherit;
  font-weight: 500;
  line-height: 1.35;
  text-align: left;
  cursor: pointer;
}

body.page-thinktank .thinktank-engage button span {
  color: var(--thinktank-gold);
  font-size: 1.25rem;
  transition: transform 180ms ease;
}

body.page-thinktank .thinktank-engage button:hover span,
body.page-thinktank .thinktank-engage button:focus-visible span {
  transform: translateX(.25rem);
}

body.page-thinktank .thinktank-engage button:focus-visible,
body.page-thinktank .thinktank-form-section :is(input, select, textarea, button):focus-visible {
  outline: 2px solid var(--thinktank-gold);
  outline-offset: -2px;
}

body.page-thinktank .thinktank-form-section {
  padding-block: clamp(4rem, 7vw, 7rem);
  background: #fbfaf6;
}

body.page-thinktank .thinktank-form-section .inner-form {
  max-width: 70rem;
  margin-inline: auto;
}

body.page-thinktank .thinktank-form-section .inner-form-intro {
  max-width: 43rem;
}

body.page-thinktank .thinktank-form-section .checkbox {
  align-items: start;
  gap: .8rem;
  line-height: 1.55;
}

body.page-thinktank .thinktank-form-section .checkbox input {
  width: 1rem;
  height: 1rem;
  margin: .27rem 0 0;
  flex: 0 0 auto;
}

body.page-thinktank .thinktank-required,
body.page-thinktank .thinktank-required-note span {
  color: #a77920;
}

body.page-thinktank .thinktank-closing {
  display: grid;
  grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
  gap: clamp(2rem, 6vw, 6rem);
  align-items: end;
  padding-block: clamp(4rem, 7vw, 6.5rem);
  background: var(--thinktank-navy);
}

body.page-thinktank .thinktank-closing .eyebrow {
  color: var(--thinktank-gold);
}

body.page-thinktank .thinktank-closing h2,
body.page-thinktank .thinktank-closing-copy > p:last-child {
  color: #fff;
}

body.page-thinktank .thinktank-closing-copy > p:last-child {
  max-width: 42rem;
  margin: 1.2rem 0 0;
  color: rgba(255, 255, 255, .78);
  line-height: 1.62;
}

body.page-thinktank .thinktank-closing .hero-actions {
  justify-content: flex-end;
  margin: 0;
}

body.page-thinktank [id] {
  scroll-margin-top: 7rem;
}

@media (max-width: 1100px) {
  body.page-thinktank .thinktank-participants .inner-route-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 960px) {
  body.page-thinktank .thinktank-hero,
  body.page-thinktank .thinktank-initiative-layout,
  body.page-thinktank .thinktank-privacy-intro,
  body.page-thinktank .thinktank-closing {
    grid-template-columns: 1fr;
  }

  body.page-thinktank .thinktank-hero-visual {
    max-width: 48rem;
    width: 100%;
  }

  body.page-thinktank .thinktank-initiative-visual {
    max-width: 48rem;
    width: 100%;
  }

  body.page-thinktank .thinktank-closing .hero-actions {
    justify-content: flex-start;
  }
}

@media (max-width: 760px) {
  body.page-thinktank .thinktank-series-grid,
  body.page-thinktank .thinktank-focus-grid,
  body.page-thinktank .thinktank-privacy-grid {
    grid-template-columns: 1fr;
  }

  body.page-thinktank .thinktank-relationship,
  body.page-thinktank .thinktank-works .inner-activity-grid,
  body.page-thinktank .thinktank-output-grid,
  body.page-thinktank .thinktank-engage ul {
    grid-template-columns: 1fr;
  }

  body.page-thinktank .thinktank-relationship li + li {
    border-top: 1px solid var(--thinktank-line);
    border-left: 0;
  }

  body.page-thinktank .thinktank-roundtable-series-route {
    grid-template-columns: 1fr;
    align-items: start;
  }

  body.page-thinktank .thinktank-roundtable-series-route .button {
    justify-self: start;
  }
}

@media (max-width: 520px) {
  body.page-thinktank .thinktank-participants .inner-route-grid {
    grid-template-columns: 1fr;
  }

  body.page-thinktank .thinktank-hero-visual img {
    aspect-ratio: 16 / 9;
  }

  body.page-thinktank .thinktank-initiative-visual img {
    aspect-ratio: 5 / 4;
  }

  body.page-thinktank .thinktank-engage button {
    min-height: 4.1rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.page-thinktank .thinktank-engage button span {
    transition: none;
  }
}
/* Final Think Tank Roundtable controls and series-image refinement. */
body.page-roundtables .roundtables-invitation-form .button.primary,
body.page-roundtables .roundtables-closing .button.primary {
  position: relative;
  overflow: hidden;
  border-color: #172748;
  background: #172748;
  color: #fffdf6;
  box-shadow: 0 0 0 1px rgba(223, 188, 102, 0), 0 .35rem .8rem rgba(13, 27, 58, .12);
  transition: transform 200ms ease, box-shadow 200ms ease, background-color 200ms ease, border-color 200ms ease, color 200ms ease;
}

body.page-roundtables .roundtables-invitation-form .button.primary:hover,
body.page-roundtables .roundtables-invitation-form .button.primary:focus,
body.page-roundtables .roundtables-invitation-form .button.primary:focus-visible,
body.page-roundtables .roundtables-invitation-form .button.primary:active,
body.page-roundtables .roundtables-closing .button.primary:hover,
body.page-roundtables .roundtables-closing .button.primary:focus,
body.page-roundtables .roundtables-closing .button.primary:focus-visible,
body.page-roundtables .roundtables-closing .button.primary:active {
  border-color: #172748;
  background: #172748;
  color: #fffdf6;
  box-shadow: 0 0 0 1px rgba(223, 188, 102, .36), 0 .55rem 1.1rem rgba(13, 27, 58, .17);
  transform: translateY(-2px);
}

body.page-roundtables .roundtables-invitation-form .button.primary:active,
body.page-roundtables .roundtables-closing .button.primary:active {
  transform: translateY(-1px);
}

body.page-roundtables .roundtables-invitation-form .button.primary:focus-visible,
body.page-roundtables .roundtables-closing .button.primary:focus-visible {
  outline: 2px solid #dfbc66;
  outline-offset: 3px;
}

body.page-roundtables .roundtables-required-mark {
  color: #8c671d;
  font-weight: 600;
}

body.page-roundtables .roundtables-consent input[required] {
  border: 1px solid rgba(180, 134, 40, .55);
}

body.page-roundtables .roundtables-validation-message[role="alert"] {
  margin-top: -.2rem;
}

body.page-thinktank .thinktank-series-grid article {
  min-height: 100%;
}

body.page-thinktank .thinktank-series-grid .thinktank-location {
  margin-bottom: .9rem;
}

body.page-thinktank .thinktank-series-image {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  margin: 0 0 1.25rem;
  overflow: hidden;
  border: 1px solid rgba(180, 137, 61, .48);
}

body.page-thinktank .thinktank-series-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

body.page-thinktank .thinktank-series-image--cambridge img { object-position: 50% 52%; }
body.page-thinktank .thinktank-series-image--oxford img { object-position: 50% 52%; }
body.page-thinktank .thinktank-series-image--london img { object-position: 66% 50%; }

body.page-thinktank .thinktank-series-image + p {
  margin: 0;
  color: rgba(23, 38, 69, .8);
  font-size: .95rem;
  line-height: 1.58;
}

@media (max-width: 480px) {
  body.page-roundtables .roundtables-invitation-form .button.primary:hover,
  body.page-roundtables .roundtables-invitation-form .button.primary:focus,
  body.page-roundtables .roundtables-invitation-form .button.primary:focus-visible,
  body.page-roundtables .roundtables-closing .button.primary:hover,
  body.page-roundtables .roundtables-closing .button.primary:focus,
  body.page-roundtables .roundtables-closing .button.primary:focus-visible {
    transform: translateY(-1px);
  }
}

@media (prefers-reduced-motion: reduce) {
  body.page-roundtables .roundtables-invitation-form .button.primary,
  body.page-roundtables .roundtables-closing .button.primary {
    transition: none;
  }
}
/* Think Tank corrective completion: imagery, readable surfaces, and form alignment. */
body.page-thinktank {
  --thinktank-paper: #fffdf6;
  --thinktank-body: #344362;
  --thinktank-border: rgba(23, 38, 69, .19);
  --thinktank-soft-border: rgba(91, 117, 151, .42);
}

body.page-thinktank .thinktank-hero {
  grid-template-columns: minmax(0, 3fr) minmax(20rem, 2fr);
  gap: clamp(2.5rem, 5vw, 5.5rem);
  align-items: center;
  background: var(--thinktank-navy);
}

body.page-thinktank .thinktank-hero .inner-hero-copy > p:not(.eyebrow) {
  color: rgba(255, 253, 246, .8);
}

body.page-thinktank .thinktank-hero h1 {
  color: var(--thinktank-paper);
  font-weight: 400;
}

body.page-thinktank .thinktank-hero-visual {
  width: 100%;
  max-height: 30rem;
  aspect-ratio: 4 / 3;
  align-self: center;
  border: 1px solid var(--thinktank-gold);
  box-shadow: none;
}

body.page-thinktank .thinktank-hero-visual picture,
body.page-thinktank .thinktank-hero-visual img {
  width: 100%;
  height: 100%;
}

body.page-thinktank .thinktank-hero-visual img {
  object-fit: cover;
  object-position: 50% 44%;
}

body.page-thinktank .thinktank-initiative-link {
  padding-block: clamp(3.75rem, 6vw, 6rem);
  background: var(--thinktank-paper);
}

body.page-thinktank .thinktank-initiative-layout {
  grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr);
  gap: clamp(2rem, 5vw, 5rem);
  align-items: start;
}

body.page-thinktank .thinktank-initiative-copy,
body.page-thinktank .thinktank-initiative-copy > p:last-child {
  max-width: 43rem;
}

body.page-thinktank .thinktank-initiative-copy h2,
body.page-thinktank .thinktank-initiative-copy > p:last-child {
  color: var(--thinktank-ink);
}

body.page-thinktank .thinktank-initiative-copy > p:last-child {
  margin-top: 1.25rem;
}

body.page-thinktank .thinktank-initiative-visual {
  width: 100%;
  max-height: 25rem;
  aspect-ratio: 16 / 9;
  align-self: start;
  border: 1px solid var(--thinktank-gold);
  box-shadow: none;
}

body.page-thinktank .thinktank-initiative-visual picture,
body.page-thinktank .thinktank-initiative-visual img {
  width: 100%;
  height: 100%;
}

body.page-thinktank .thinktank-initiative-visual img {
  object-fit: contain;
  object-position: center;
}

body.page-thinktank .thinktank-focus {
  background: var(--thinktank-navy);
  color: var(--thinktank-paper);
}

body.page-thinktank .thinktank-focus .eyebrow,
body.page-thinktank .thinktank-focus-grid span {
  color: var(--thinktank-gold);
}

body.page-thinktank .thinktank-focus .section-heading h2,
body.page-thinktank .thinktank-focus-grid h3 {
  color: var(--thinktank-paper);
}

body.page-thinktank .thinktank-focus-grid {
  border-color: var(--thinktank-soft-border);
}

body.page-thinktank .thinktank-focus-grid li {
  border-color: var(--thinktank-soft-border);
}

body.page-thinktank .thinktank-works,
body.page-thinktank .thinktank-participants,
body.page-thinktank .thinktank-form-section {
  background: var(--thinktank-mineral);
  color: var(--thinktank-ink);
}

body.page-thinktank .thinktank-works :is(h2, h3),
body.page-thinktank .thinktank-participants :is(h2, h3),
body.page-thinktank .thinktank-works .section-heading > p,
body.page-thinktank .thinktank-works .inner-activity-grid article p,
body.page-thinktank .thinktank-participants .inner-route-grid p {
  color: var(--thinktank-ink);
}

body.page-thinktank .thinktank-works .section-heading > p,
body.page-thinktank .thinktank-works .inner-activity-grid article p,
body.page-thinktank .thinktank-participants .inner-route-grid p {
  color: var(--thinktank-body);
}

body.page-thinktank .thinktank-works .inner-activity-grid,
body.page-thinktank .thinktank-works .inner-activity-grid article,
body.page-thinktank .thinktank-participants .inner-route-grid,
body.page-thinktank .thinktank-participants .inner-route-grid article {
  border-color: var(--thinktank-border);
}

body.page-thinktank .thinktank-works .inner-activity-grid article,
body.page-thinktank .thinktank-participants .inner-route-grid article {
  background: rgba(255, 253, 246, .38);
}

body.page-thinktank .thinktank-works .inner-activity-grid article > span,
body.page-thinktank .thinktank-participants .inner-route-grid article > span {
  color: #a77920;
}

body.page-thinktank .thinktank-engage {
  padding-block: clamp(3.75rem, 6vw, 5.75rem);
  background: var(--thinktank-paper);
  color: var(--thinktank-ink);
}

body.page-thinktank .thinktank-engage :is(h2, h3),
body.page-thinktank .thinktank-engage .section-heading > p,
body.page-thinktank .thinktank-engage button {
  color: var(--thinktank-ink);
}

body.page-thinktank .thinktank-engage .section-heading > p { color: var(--thinktank-body); }

body.page-thinktank .thinktank-engage ul,
body.page-thinktank .thinktank-engage li {
  border-color: var(--thinktank-border);
}

body.page-thinktank .thinktank-engage button {
  min-height: 4rem;
  transition: background-color 180ms ease, color 180ms ease, transform 180ms ease;
}

body.page-thinktank .thinktank-engage button:hover,
body.page-thinktank .thinktank-engage button:focus-visible {
  background: #e6edf1;
  color: var(--thinktank-ink);
  transform: translateY(-2px);
}

body.page-thinktank .thinktank-engage button:focus-visible {
  outline: 2px solid var(--thinktank-gold);
  outline-offset: -2px;
}

body.page-thinktank .thinktank-form-section {
  padding-block: clamp(3.75rem, 6vw, 5.75rem);
}

body.page-thinktank .thinktank-form-section .inner-form {
  max-width: 70rem;
  padding: clamp(1.6rem, 3vw, 2.8rem);
  border-top: 2px solid var(--thinktank-gold);
  background: var(--thinktank-paper);
  box-shadow: none;
}

body.page-thinktank .thinktank-form-section .inner-form-intro {
  max-width: 46rem;
  margin-bottom: .5rem;
}

body.page-thinktank .thinktank-form-section .inner-form-intro h2 + p {
  margin-top: 1rem;
}

body.page-thinktank .thinktank-required-note {
  margin-top: 1.15rem !important;
}

body.page-thinktank .thinktank-form-section label {
  align-content: start;
}

body.page-thinktank .thinktank-label-text {
  display: block;
}

body.page-thinktank .thinktank-form-section .checkbox > span {
  min-width: 0;
}

body.page-thinktank .thinktank-form-section .button.primary,
body.page-thinktank .thinktank-form-section .button.primary:hover,
body.page-thinktank .thinktank-form-section .button.primary:focus-visible,
body.page-thinktank .thinktank-form-section .button.primary:active {
  border-color: var(--thinktank-navy);
  background: var(--thinktank-navy);
  color: var(--thinktank-paper);
}

body.page-thinktank .thinktank-form-section .button.primary:hover,
body.page-thinktank .thinktank-form-section .button.primary:focus-visible {
  box-shadow: inset 0 0 0 1px rgba(223, 188, 102, .6), 0 8px 18px rgba(13, 27, 58, .15);
  transform: translateY(-1px);
}

body.page-thinktank .thinktank-form-section .button.primary:focus-visible {
  outline: 2px solid var(--thinktank-gold);
  outline-offset: 3px;
}

body.page-thinktank .thinktank-series-grid article,
body.page-thinktank .thinktank-output-grid article,
body.page-thinktank .thinktank-privacy-grid article {
  background: rgba(255, 253, 246, .5);
}

@media (max-width: 960px) {
  body.page-thinktank .thinktank-hero,
  body.page-thinktank .thinktank-initiative-layout {
    grid-template-columns: 1fr;
  }

  body.page-thinktank .thinktank-hero-visual,
  body.page-thinktank .thinktank-initiative-visual {
    max-width: 48rem;
  }
}

@media (max-width: 760px) {
  body.page-thinktank .thinktank-hero-visual { aspect-ratio: 4 / 3; }
  body.page-thinktank .thinktank-initiative-visual { aspect-ratio: 16 / 9; }
  body.page-thinktank .thinktank-works .inner-activity-grid { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  body.page-thinktank .thinktank-engage button,
  body.page-thinktank .thinktank-form-section .button.primary { transition: none; }
}
/* Think Tank light-surface type safeguards. */
body.page-thinktank :is(.thinktank-series, .thinktank-initiative-link, .thinktank-outputs, .thinktank-privacy, .thinktank-engage) .section-heading h2,
body.page-thinktank :is(.thinktank-initiative-link, .thinktank-outputs, .thinktank-privacy, .thinktank-engage) h3 {
  color: var(--thinktank-ink);
}

body.page-thinktank :is(.thinktank-series, .thinktank-outputs, .thinktank-privacy, .thinktank-engage) .section-heading > p,
body.page-thinktank .thinktank-privacy-intro > p,
body.page-thinktank .thinktank-privacy-grid p,
body.page-thinktank .thinktank-output-grid p {
  color: var(--thinktank-body);
}

body.page-thinktank .thinktank-form-section :is(input, select, textarea):focus-visible {
  outline-offset: 2px;
}
/* Homepage final CTA state refinement. */
.home-page .home-cta .button.primary {
  border-color: var(--navy);
  background: var(--navy);
  color: var(--ivory);
  transition: transform 200ms ease, box-shadow 200ms ease, background-color 200ms ease, border-color 200ms ease, color 200ms ease;
}
.home-page .home-cta .button.primary:hover,
.home-page .home-cta .button.primary:focus-visible,
.home-page .home-cta .button.primary:active {
  border-color: var(--navy);
  background: var(--navy);
  color: var(--ivory);
  box-shadow: 0 0 0 1px rgba(209, 178, 115, 0.34), 0 12px 24px rgba(9, 33, 63, 0.16);
  transform: translateY(-2px);
}
.home-page .home-cta .button.primary:active { transform: translateY(-1px); }
.home-page .home-cta .button.primary:focus-visible {
  outline: 2px solid var(--gold);
  outline-offset: 3px;
}
.home-page .home-cta .button.text-button {
  border-color: var(--gold);
  background: transparent;
  color: var(--navy);
  transition: transform 200ms ease, box-shadow 200ms ease, background-color 200ms ease, border-color 200ms ease, color 200ms ease;
}
.home-page .home-cta .button.text-button:hover,
.home-page .home-cta .button.text-button:focus-visible,
.home-page .home-cta .button.text-button:active {
  border-color: var(--gold);
  background: var(--gold);
  color: var(--navy);
  box-shadow: 0 8px 18px rgba(180, 137, 61, 0.16);
  transform: translateY(-2px);
}
.home-page .home-cta .button.text-button:active { transform: translateY(-1px); }
.home-page .home-cta .button.text-button:focus-visible {
  outline: 2px solid var(--navy);
  outline-offset: 3px;
}
@media (prefers-reduced-motion: reduce) {
  .home-page .home-cta .button.primary,
  .home-page .home-cta .button.text-button { transition: none; }
}

/* About-page final polish: routes, leadership and closing CTA. */
body.page-about {
  --about-support-ink: #45536a;
}

body.page-about :is(
  .inner-editorial-section .inner-rich-copy p,
  .mission-vision-section .mission-context,
  .inner-routes-section .section-heading.split > p,
  .about-route-card p,
  .about-routes-note,
  .inner-principles-section .section-heading.split > p,
  .principle-content p,
  .leader-intro,
  .leader-role,
  .leader-bio
) {
  color: var(--about-support-ink);
}

body.page-about .about-route-card {
  transition: border-color 180ms var(--inner-ease), background-color 180ms var(--inner-ease), box-shadow 180ms var(--inner-ease), transform 180ms var(--inner-ease);
}

body.page-about .about-route-card:hover,
body.page-about .about-route-card:focus-visible {
  border-color: rgba(180, 137, 61, 0.78);
  background: rgba(16, 40, 67, 0.045);
  box-shadow: inset 0 2px 0 var(--gold);
  transform: translateY(-2px);
}

body.page-about .about-route-card:focus-visible {
  outline: 2px solid var(--gold);
  outline-offset: 3px;
}

body.page-about .inner-leadership-section {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(320px, 0.92fr);
  align-items: center;
  gap: clamp(36px, 5vw, 78px);
}

body.page-about .about-leadership-copy {
  min-width: 0;
  max-width: 660px;
}

body.page-about .about-leadership-visual {
  width: 100%;
  margin: 0;
  align-self: center;
  overflow: hidden;
  background: var(--navy);
}

body.page-about .about-leadership-visual img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  max-height: none;
  margin: 0;
  object-fit: cover;
}

body.page-about .about-page-closing {
  grid-template-columns: minmax(0, 1.08fr) auto;
  align-items: center;
}

body.page-about .about-closing-copy {
  min-width: 0;
}

body.page-about .about-closing-summary {
  max-width: 58ch;
  margin: 18px 0 0;
  color: var(--about-support-ink);
  font-size: 1rem;
  line-height: 1.65;
}

body.page-about .about-page-closing .hero-actions {
  align-items: center;
}

body.page-about .about-page-closing .button.primary {
  background: var(--navy);
  border-color: var(--navy);
  color: var(--paper);
}

body.page-about .about-page-closing .button.primary:hover,
body.page-about .about-page-closing .button.primary:focus-visible,
body.page-about .about-page-closing .button.primary:active {
  background: var(--navy);
  border-color: var(--navy);
  color: var(--paper);
  box-shadow: 0 0 0 3px rgba(180, 137, 61, 0.2), 0 10px 20px rgba(16, 40, 67, 0.15);
}

body.page-about .about-page-closing .button.secondary.about-closing-secondary {
  min-height: 46px;
  padding-inline: 20px;
  border: 1px solid var(--cta-gold);
  border-radius: 0;
  background: transparent;
  color: var(--navy);
}

body.page-about .about-page-closing .button.secondary.about-closing-secondary:hover,
body.page-about .about-page-closing .button.secondary.about-closing-secondary:focus-visible,
body.page-about .about-page-closing .button.secondary.about-closing-secondary:active {
  border-color: var(--cta-gold);
  background: var(--cta-gold);
  color: var(--navy);
  box-shadow: 0 0 0 3px rgba(223, 188, 102, 0.2);
}

@media (max-width: 900px) {
  body.page-about .inner-leadership-section {
    grid-template-columns: minmax(0, 1fr);
    gap: 32px;
  }

  body.page-about .about-leadership-copy {
    max-width: none;
  }

  body.page-about .about-leadership-visual {
    align-self: auto;
  }

  body.page-about .about-leadership-visual img {
    max-width: none;
    max-height: none;
    margin: 0;
  }

  body.page-about .about-page-closing {
    grid-template-columns: minmax(0, 1fr);
    gap: 28px;
  }
}

@media (max-width: 640px) {
  body.page-about .inner-leadership-section {
    gap: 24px;
  }

  body.page-about .about-page-closing .hero-actions {
    display: grid;
    width: 100%;
    grid-template-columns: minmax(0, 1fr);
  }

  body.page-about .about-page-closing .button {
    width: 100%;
    justify-content: center;
  }

  body.page-about .about-closing-summary {
    margin-top: 16px;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.page-about .about-route-card,
  body.page-about .about-page-closing .button {
    transition: none;
  }
}

/* ==========================================================================
   ABOUT PAGE — ecosystem section (about-ecosystem-section)
   ========================================================================== */
body.page-about .about-ecosystem-section {
  background: #0d2148;
  color: #edf1f5;
}

body.page-about .about-ecosystem-section .contact-ecosystem-intro {
  max-width: 48rem;
  margin: 0 auto;
  text-align: center;
}

body.page-about .about-ecosystem-section .contact-ecosystem-intro .eyebrow {
  color: var(--cta-gold);
}

body.page-about .about-ecosystem-section .contact-ecosystem-intro h2 {
  max-width: 18ch;
  margin-right: auto;
  margin-left: auto;
  color: #fffdf7;
}

body.page-about .about-ecosystem-section .contact-ecosystem-intro > p:not(.eyebrow) {
  max-width: 42rem;
  margin: 1.3rem auto 0;
  color: #dbe2ee;
  font-size: 0.96rem;
  line-height: 1.7;
  text-align: center;
}

body.page-about .about-ecosystem-section .contact-ecosystem-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1px;
  margin-top: 2.8rem;
  border: 1px solid rgba(220, 226, 238, 0.25);
  background: rgba(220, 226, 238, 0.25);
}

body.page-about .about-ecosystem-section .contact-ecosystem-card {
  display: flex;
  min-width: 0;
  min-height: 15.5rem;
  flex-direction: column;
  padding: 1.55rem;
  background: #0d2148;
  color: #edf1f5;
  text-align: left;
  text-decoration: none;
  transition: background-color 180ms ease;
}

body.page-about .about-ecosystem-section .contact-ecosystem-card:hover {
  background: #152d5c;
}

body.page-about .about-ecosystem-section .contact-ecosystem-card:focus-visible {
  outline: 2px solid #b48628;
  outline-offset: 4px;
}

body.page-about .about-ecosystem-section .contact-ecosystem-card > span {
  color: var(--cta-gold);
  font-family: var(--mono, monospace);
  font-size: 0.72rem;
  letter-spacing: 0.08em;
}

body.page-about .about-ecosystem-section .contact-ecosystem-card h3 {
  margin: 1rem 0 0.75rem;
  color: #fffdf7;
  font-size: 1.1rem;
  line-height: 1.2;
}

body.page-about .about-ecosystem-section .contact-ecosystem-card p {
  margin: 0;
  flex: 1 1 auto;
  color: #dbe2ee;
  font-size: 0.92rem;
  line-height: 1.6;
}

body.page-about .about-ecosystem-section .contact-ecosystem-card b {
  margin-top: auto;
  padding-top: 1.4rem;
  color: var(--cta-gold);
  font-family: var(--mono, monospace);
  font-size: 0.68rem;
  letter-spacing: 0.06em;
  line-height: 1.45;
}

body.page-about .about-ecosystem-section .contact-ecosystem-card i {
  font-style: normal;
}

/* ==========================================================================
   ABOUT PAGE — "The Work Ahead" button corrections
   Primary: navy background retained on hover, restrained glow only.
   Secondary: gold-border default, gold-fill hover, navy text throughout.
   ========================================================================== */
body.page-about .about-page-closing .button.primary {
  background: var(--navy);
  border-color: var(--navy);
  color: var(--paper);
  transform: none;
}

body.page-about .about-page-closing .button.primary:hover,
body.page-about .about-page-closing .button.primary:focus-visible,
body.page-about .about-page-closing .button.primary:active {
  background: var(--navy);
  border-color: var(--navy);
  color: var(--paper);
  transform: none;
  box-shadow: 0 0 0 3px rgba(180, 137, 61, 0.22), 0 8px 18px rgba(16, 40, 67, 0.14);
}

body.page-about .about-page-closing .button.secondary.about-closing-secondary {
  min-height: 46px;
  padding-inline: 20px;
  background: transparent;
  border: 1px solid var(--cta-gold);
  border-radius: 0;
  color: var(--navy);
  transform: none;
}

body.page-about .about-page-closing .button.secondary.about-closing-secondary:hover,
body.page-about .about-page-closing .button.secondary.about-closing-secondary:focus-visible,
body.page-about .about-page-closing .button.secondary.about-closing-secondary:active {
  background: var(--cta-gold);
  border-color: var(--cta-gold);
  color: var(--navy);
  transform: none;
  box-shadow: 0 0 0 3px rgba(223, 188, 102, 0.2);
}

/* ==========================================================================
   INITIATIVE PAGE — "Get Involved" closing CTA button corrections
   Primary: navy background on hover, restrained glow only.
   Secondary: gold-border default, gold-fill hover, navy text.
   ========================================================================== */
body.page-initiative .initiative-page-closing .button.primary {
  background: var(--navy);
  border-color: var(--navy);
  color: var(--paper);
  transform: none;
}

body.page-initiative .initiative-page-closing .button.primary:hover,
body.page-initiative .initiative-page-closing .button.primary:focus-visible,
body.page-initiative .initiative-page-closing .button.primary:active {
  background: var(--navy);
  border-color: var(--navy);
  color: var(--paper);
  transform: none;
  box-shadow: 0 0 0 3px rgba(180, 137, 61, 0.22), 0 8px 18px rgba(16, 40, 67, 0.14);
}

body.page-initiative .initiative-page-closing .button.secondary.initiative-hero-secondary {
  background: transparent;
  border: 1px solid var(--gold);
  color: var(--navy);
  transform: none;
}

body.page-initiative .initiative-page-closing .button.secondary.initiative-hero-secondary:hover,
body.page-initiative .initiative-page-closing .button.secondary.initiative-hero-secondary:focus-visible,
body.page-initiative .initiative-page-closing .button.secondary.initiative-hero-secondary:active {
  background: var(--gold);
  border-color: var(--gold);
  color: var(--navy);
  transform: none;
  box-shadow: 0 0 0 3px rgba(180, 137, 61, 0.2);
}

/* ==========================================================================
   ABOUT PAGE — ecosystem section responsive
   ========================================================================== */
@media (max-width: 900px) {
  body.page-about .about-ecosystem-section .contact-ecosystem-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 560px) {
  body.page-about .about-ecosystem-section .contact-ecosystem-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  body.page-about .about-ecosystem-section .contact-ecosystem-card {
    min-height: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.page-about .about-ecosystem-section .contact-ecosystem-card,
  body.page-about .about-page-closing .button,
  body.page-initiative .initiative-page-closing .button {
    transition: none;
  }
}


/* Scoped CTA interaction system: homepage and About Work Ahead only. */
.home-page .home-hero .hero-actions .button,
.home-page #current-decisions .service-teaser-actions .button.primary,
.home-page .home-cta .hero-actions .button,
body.page-about .about-page-closing .hero-actions .button {
  transform: none;
  transition: color 160ms ease, background-color 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
}
.home-page .home-hero .hero-actions .button::before,
.home-page #current-decisions .service-teaser-actions .button.primary::before,
.home-page .home-cta .hero-actions .button::before,
body.page-about .about-page-closing .hero-actions .button::before { display: none; }
.home-page .home-hero .hero-actions .button.primary,
.home-page #current-decisions .service-teaser-actions .button.primary,
.home-page .home-cta .hero-actions .button.primary,
body.page-about .about-page-closing .button.primary {
  border-color: var(--navy);
  background: var(--navy);
  color: var(--ivory);
}
.home-page .home-hero .hero-actions .button.primary:hover,
.home-page .home-hero .hero-actions .button.primary:focus-visible,
.home-page .home-hero .hero-actions .button.primary:active,
.home-page #current-decisions .service-teaser-actions .button.primary:hover,
.home-page #current-decisions .service-teaser-actions .button.primary:focus-visible,
.home-page #current-decisions .service-teaser-actions .button.primary:active,
.home-page .home-cta .hero-actions .button.primary:hover,
.home-page .home-cta .hero-actions .button.primary:focus-visible,
.home-page .home-cta .hero-actions .button.primary:active,
body.page-about .about-page-closing .button.primary:hover,
body.page-about .about-page-closing .button.primary:focus-visible,
body.page-about .about-page-closing .button.primary:active {
  border-color: var(--navy);
  background: var(--navy);
  color: var(--ivory);
  transform: none;
  box-shadow: 0 0 0 2px rgba(223, 188, 102, .2), 0 0 18px rgba(223, 188, 102, .16);
}
.home-page .home-hero .hero-actions .button.home-hero-secondary,
.home-page .home-cta .hero-actions .button.home-final-secondary,
body.page-about .about-page-closing .button.secondary.about-closing-secondary {
  min-height: 48px;
  padding-inline: 22px;
  border: 1px solid var(--cta-gold);
  background: transparent;
  color: var(--navy);
}
.home-page .home-hero .hero-actions .button.home-hero-secondary::after,
.home-page .home-cta .hero-actions .button.home-final-secondary::after {
  position: static;
  margin-left: 14px;
  content: "\2192";
}
.home-page .home-hero .hero-actions .button.home-hero-secondary:hover,
.home-page .home-hero .hero-actions .button.home-hero-secondary:focus-visible,
.home-page .home-hero .hero-actions .button.home-hero-secondary:active,
.home-page .home-cta .hero-actions .button.home-final-secondary:hover,
.home-page .home-cta .hero-actions .button.home-final-secondary:focus-visible,
.home-page .home-cta .hero-actions .button.home-final-secondary:active,
body.page-about .about-page-closing .button.secondary.about-closing-secondary:hover,
body.page-about .about-page-closing .button.secondary.about-closing-secondary:focus-visible,
body.page-about .about-page-closing .button.secondary.about-closing-secondary:active {
  border-color: var(--cta-gold);
  background: var(--cta-gold);
  color: var(--navy);
  transform: none;
  box-shadow: 0 0 0 2px rgba(223, 188, 102, .22);
}
.home-page .home-hero .hero-actions .button:focus-visible,
.home-page #current-decisions .service-teaser-actions .button.primary:focus-visible,
.home-page .home-cta .hero-actions .button:focus-visible,
body.page-about .about-page-closing .hero-actions .button:focus-visible {
  outline: 2px solid var(--cta-gold);
  outline-offset: 3px;
}
@media (max-width: 480px) {
  .home-page .home-hero .hero-actions .button.home-hero-secondary { width: 100%; justify-content: center; }
}
@media (prefers-reduced-motion: reduce) {
  .home-page .home-hero .hero-actions .button,
  .home-page #current-decisions .service-teaser-actions .button.primary,
  .home-page .home-cta .hero-actions .button,
  body.page-about .about-page-closing .hero-actions .button { transition: none; }
}

/* Sites homepage compatibility: the legacy global stylesheet also defines
   .infrastructure-focus as a two-column grid.  The current reference markup
   uses it as a full-width chapter wrapper, with the two-column grid living on
   .infrastructure-panel instead.  Keep this wrapper vertical so the emerging
   environments continuation follows the infrastructure panel at full width. */
.home-page #ai-infrastructure-trust > .infrastructure-focus {
  display: block;
  width: 100%;
  padding: 0;
}

/* Sites compatibility: keep the shared Vercel brand lockup intact. */
.global-header .brand.global-brand,
.global-footer .brand.footer-brand {
  padding: 0;
  border: 0;
  overflow: visible;
  text-align: left;
}
.global-footer .brand.footer-brand {
  align-items: flex-start;
  gap: 8px;
}
.global-header .brand-logo,
.global-footer .brand-logo {
  width: 132.9%;
  max-width: none;
  height: auto;
  object-fit: initial;
  object-position: initial;
}
.global-header .brand-slogan,
.global-footer .brand-slogan {
  margin-top: 0;
  color: var(--hd-gold);
  font-family: var(--font-label);
  font-size: 0.55rem;
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: 0.13em;
  text-align: left;
  text-transform: uppercase;
  white-space: nowrap;
  opacity: 0.88;
}
.global-footer .brand-slogan { display: block; }

/* Organisational Trust Architecture — light-mode spatial graph. */
.organisation-architecture-scene {
  position: relative;
  width: 100%;
  height: clamp(620px, 49vw, 720px);
  min-height: 620px;
  margin-left: 0;
  overflow: hidden;
  background:
    radial-gradient(ellipse at 50% 42%, rgba(189, 209, 231, 0.22), transparent 46%),
    linear-gradient(180deg, rgba(255, 253, 248, 0.16), rgba(247, 249, 251, 0.28));
}
.organisation-architecture-scene::before {
  content: "";
  position: absolute;
  z-index: 0;
  inset: 5% 2% 3%;
  background:
    linear-gradient(rgba(65, 82, 120, 0.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(65, 82, 120, 0.045) 1px, transparent 1px);
  background-size: 30px 30px;
  mask-image: radial-gradient(ellipse at 52% 48%, #000 36%, transparent 78%);
  pointer-events: none;
}
.organisation-architecture-scene .organisation-scene-canvas { z-index: 2; }
.organisation-architecture-scene .architecture-stage.scene-fallback {
  z-index: 1;
  min-height: 560px;
  padding-top: 12px;
}
.organisation-architecture-scene.webgl-ready .architecture-stage.scene-fallback { pointer-events: none; }
.organisation-scene-labels {
  position: absolute;
  z-index: 4;
  inset: 0;
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  transition: opacity 520ms ease 180ms;
}
.organisation-architecture-scene.webgl-ready .organisation-scene-labels {
  visibility: visible;
  opacity: 1;
}
.organisation-architecture-scene.webgl-failed .organisation-scene-labels { display: none; }
.organisation-scene-label {
  position: absolute;
  width: max-content;
  max-width: 190px;
  padding: 7px 10px;
  border: 1px solid rgba(65, 82, 120, 0.28);
  background: rgba(255, 253, 248, 0.86);
  box-shadow: 0 8px 24px rgba(9, 33, 63, 0.07);
  color: #243d5e;
  font-family: var(--font-label);
  font-size: 0.55rem;
  font-weight: 600;
  line-height: 1.25;
  letter-spacing: 0.065em;
  text-align: center;
  text-transform: uppercase;
  transform: translate(-50%, -115%);
  backdrop-filter: blur(7px);
}
.organisation-scene-label::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -5px;
  width: 7px;
  height: 7px;
  border: 1px solid rgba(180, 137, 61, 0.8);
  border-radius: 50%;
  background: #fffdf8;
  transform: translateX(-50%);
}
.organisation-scene-label small {
  display: block;
  margin-top: 3px;
  color: #66788c;
  font-family: var(--font-ui);
  font-size: 0.59rem;
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: 0;
  text-transform: none;
}
.organisation-scene-label.label-governance {
  max-width: none;
  padding: 7px 13px;
  border-color: rgba(65, 82, 120, 0.36);
  color: var(--navy-deep);
  font-size: 0.58rem;
  transform: translate(-50%, -105%);
}
.organisation-scene-label.label-trust {
  max-width: 220px;
  padding: 8px 12px;
  border-color: rgba(180, 137, 61, 0.64);
  background: rgba(255, 250, 231, 0.91);
  color: #76581f;
  font-size: 0.58rem;
  box-shadow: 0 10px 30px rgba(180, 137, 61, 0.19), 0 0 0 1px rgba(209, 178, 115, 0.08);
}
.organisation-scene-label.label-foundation {
  max-width: none;
  border-color: rgba(209, 178, 115, 0.56);
  background: rgba(19, 40, 77, 0.93);
  color: #f3ead5;
  font-size: 0.49rem;
  transform: translate(-50%, 7px);
}
.organisation-scene-label.label-foundation::after { display: none; }
.organisation-outcome-key {
  position: absolute;
  right: 1.5%;
  bottom: 24px;
  left: 1.5%;
  overflow: visible;
  border: 1px solid rgba(65, 82, 120, 0.2);
  border-top: 2px solid rgba(209, 178, 115, 0.92);
  background:
    linear-gradient(rgba(189, 209, 231, 0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(189, 209, 231, 0.04) 1px, transparent 1px),
    linear-gradient(90deg, #0b2346, #12335b 50%, #0b2346);
  background-size: 22px 22px, 22px 22px, auto;
  box-shadow: 0 13px 28px rgba(9, 33, 63, 0.15);
}
.organisation-outcome-key::before {
  content: "";
  position: absolute;
  top: -17px;
  right: 0;
  left: 0;
  height: 17px;
  background:
    linear-gradient(90deg, transparent calc(12.5% - .5px), rgba(209, 178, 115, .58) calc(12.5% - .5px), rgba(209, 178, 115, .58) calc(12.5% + .5px), transparent calc(12.5% + .5px)),
    linear-gradient(90deg, transparent calc(37.5% - .5px), rgba(209, 178, 115, .58) calc(37.5% - .5px), rgba(209, 178, 115, .58) calc(37.5% + .5px), transparent calc(37.5% + .5px)),
    linear-gradient(90deg, transparent calc(62.5% - .5px), rgba(209, 178, 115, .58) calc(62.5% - .5px), rgba(209, 178, 115, .58) calc(62.5% + .5px), transparent calc(62.5% + .5px)),
    linear-gradient(90deg, transparent calc(87.5% - .5px), rgba(209, 178, 115, .58) calc(87.5% - .5px), rgba(209, 178, 115, .58) calc(87.5% + .5px), transparent calc(87.5% + .5px));
  mask-image: linear-gradient(to top, #000, transparent);
  pointer-events: none;
}
.organisation-outcome-title {
  padding: 7px 12px 6px;
  border-bottom: 1px solid rgba(189, 209, 231, 0.15);
  color: #d8ba79;
  font-family: var(--font-label);
  font-size: 0.48rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.12em;
  text-align: left;
  text-transform: uppercase;
}
.organisation-outcome-items {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.organisation-outcome-items span {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  min-height: 52px;
  gap: 8px;
  padding: 7px 10px;
  border-right: 1px solid rgba(189, 209, 231, 0.17);
  color: #eef3f8;
  text-align: left;
}
.organisation-outcome-items span::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  width: 1px;
  height: 7px;
  background: linear-gradient(#d1b273, rgba(209, 178, 115, 0));
}
.organisation-outcome-items span { position: relative; }
.organisation-outcome-items b {
  color: #d8ba79;
  font-family: var(--font-label);
  font-size: 0.46rem;
  font-weight: 700;
  letter-spacing: 0.06em;
}
.organisation-outcome-items em {
  color: #eef3f8;
  font-family: var(--font-label);
  font-size: 0.49rem;
  font-style: normal;
  font-weight: 600;
  line-height: 1.25;
  letter-spacing: 0.045em;
  text-transform: uppercase;
}
.organisation-outcome-items span:last-child { border-right: 0; }
.organisation-architecture-scene.webgl-ready .scene-canvas { animation: scene-enter 1.15s var(--motion-ease) both; }

@media (max-width: 1100px) {
  .organisation-architecture-scene {
    width: 100%;
    height: clamp(600px, 69vw, 680px);
    min-height: 600px;
    margin-left: 0;
  }
}
@media (max-width: 680px) {
  .organisation-architecture-scene { height: 550px; min-height: 550px; overflow: hidden; }
  .organisation-scene-label { max-width: 130px; padding: 4px 6px; font-size: 0.43rem; }
  .organisation-scene-label small { display: none; }
  .organisation-scene-label.label-governance { max-width: 160px; font-size: 0.47rem; }
  .organisation-scene-label.label-trust { max-width: 145px; }
  .organisation-scene-label.label-foundation { font-size: 0.39rem; }
  .organisation-outcome-key { right: 1%; bottom: 14px; left: 1%; }
  .organisation-outcome-title { padding: 5px 7px; font-size: 0.34rem; }
  .organisation-outcome-items span { min-height: 36px; gap: 4px; padding: 4px 5px; }
  .organisation-outcome-items b { font-size: 0.31rem; }
  .organisation-outcome-items em { font-size: 0.3rem; }
}

/* Keep the static fallback's final row visually tied to the architecture too. */
.organisation-architecture-scene .sovereignty-foundation {
  position: relative;
  padding-top: 17px;
  border-top: 2px solid rgba(209, 178, 115, 0.88);
}
.organisation-architecture-scene .sovereignty-foundation::before {
  content: "Organisational Outcomes";
  position: absolute;
  top: 4px;
  left: 10px;
  color: #d8ba79;
  font-family: var(--font-label);
  font-size: 0.39rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

/* Final homepage composition: editorial intro followed by one six-part question rail. */
@media (min-width: 761px) {
  .home-page #verification-gap .gap-static-layout {
    display: block;
  }
  .home-page #verification-gap .gap-static-intro {
    display: grid;
    grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
    align-items: end;
    gap: 0 clamp(38px, 5.5vw, 88px);
    margin-bottom: clamp(30px, 3vw, 44px);
  }
  .home-page #verification-gap .gap-static-intro .eyebrow {
    grid-column: 1 / -1;
  }
  .home-page #verification-gap .gap-static-intro h2 {
    grid-column: 1;
    max-width: 18ch;
    margin-bottom: 0;
  }
  .home-page #verification-gap .gap-static-intro > p:last-child {
    grid-column: 2;
    max-width: 45rem;
    margin-bottom: 0;
  }
  .home-page #verification-gap .gap-static-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (min-width: 1181px) {
  .home-page #verification-gap .gap-static-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 0;
    border-top: 1px solid var(--line);
    border-left: 1px solid var(--line);
  }
  .home-page #verification-gap .gap-static-card {
    min-height: 264px;
    padding: 22px 17px;
    border: 0;
    border-right: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
  }
  .home-page #verification-gap .gap-static-card-head {
    margin-bottom: 24px;
  }
  .home-page #verification-gap .gap-static-card h3 {
    max-width: none;
    font-size: 0.95rem;
    line-height: 1.25;
  }
  .home-page #verification-gap .gap-static-card p {
    max-width: none;
    font-size: 0.81rem;
    line-height: 1.5;
  }
}

/* Match the verification-environment chapter to the same editorial rhythm. */
@media (min-width: 761px) {
  .home-page #connected-stack .environment-static-intro {
    display: grid;
    max-width: none;
    grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
    align-items: start;
    gap: 0 clamp(38px, 5.5vw, 88px);
    margin-bottom: clamp(30px, 3vw, 44px);
  }
  .home-page #connected-stack .environment-static-intro .eyebrow {
    grid-column: 1 / -1;
  }
  .home-page #connected-stack .environment-static-intro h2 {
    grid-column: 1;
    max-width: 18ch;
    margin-bottom: 0;
  }
  .home-page #connected-stack .environment-static-intro > p:not(.eyebrow):not(.environment-signal) {
    grid-column: 2;
    max-width: 45rem;
    margin-bottom: 0;
  }
  .home-page #connected-stack .environment-signal {
    grid-column: 1 / -1;
    max-width: none;
    margin-top: clamp(24px, 2.4vw, 34px);
  }
  .home-page #connected-stack .environment-static-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 0;
  }
}

@media (min-width: 1181px) {
  .home-page #connected-stack .environment-static-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 0;
    border-top: 1px solid rgba(255, 255, 255, 0.2);
    border-left: 1px solid rgba(255, 255, 255, 0.2);
  }
  .home-page #connected-stack .environment-static-card {
    min-height: 322px;
    padding: 22px 15px 23px;
    border: 0;
    border-right: 1px solid rgba(255, 255, 255, 0.2);
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  }
  .home-page #connected-stack .environment-static-card-head {
    margin-bottom: 28px;
  }
  .home-page #connected-stack .environment-static-card h3 {
    max-width: none;
    font-size: 0.94rem;
    line-height: 1.25;
  }
  .home-page #connected-stack .environment-static-card > p:not(.environment-static-includes) {
    max-width: none;
    font-size: 0.79rem;
    line-height: 1.5;
  }
  .home-page #connected-stack .environment-static-includes {
    font-size: 0.68rem;
    line-height: 1.45;
  }
}

/* A legacy border and the current pseudo-element were drawing the same gold rule twice. */
.home-page #current-decisions .service-teaser-copy {
  border-left: 0;
}

/* Keep the homepage hero explanation as two clearly separated ideas. */
.home-page .home-hero-copy > p:not(.eyebrow) + p:not(.eyebrow) {
  margin-top: 0.75rem;
}

/* Homepage final visual polish: sections beneath the hero only. */
.home-page #verification-gap .gap-static-grid {
  gap: 14px;
  border: 0;
}
.home-page #verification-gap .gap-static-card {
  position: relative;
  min-height: 246px;
  overflow: hidden;
  padding: clamp(24px, 2.3vw, 32px);
  border: 1px solid rgba(30, 57, 89, 0.2);
  background: rgba(255, 255, 255, 0.42);
  box-shadow: 0 12px 30px rgba(21, 41, 70, 0.035);
  transition: transform 220ms var(--ease-premium), border-color 220ms ease, box-shadow 220ms ease, background-color 220ms ease;
}
.home-page #verification-gap .gap-static-card::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--gold), rgba(209, 178, 115, 0.28) 58%, transparent);
  content: "";
  transform: scaleX(0.28);
  transform-origin: left;
  transition: transform 220ms var(--ease-premium);
}
.home-page #verification-gap .gap-static-card:hover,
.home-page #verification-gap .gap-static-card:focus-within {
  border-color: rgba(180, 132, 48, 0.52);
  background: rgba(255, 255, 255, 0.78);
  box-shadow: 0 20px 44px rgba(21, 41, 70, 0.09);
  transform: translateY(-4px);
}
.home-page #verification-gap .gap-static-card:hover::before,
.home-page #verification-gap .gap-static-card:focus-within::before { transform: scaleX(1); }
.home-page #verification-gap .gap-static-card-head { margin-bottom: 28px; }
.home-page #verification-gap .gap-static-card-head > span { font-size: 0.72rem; }
.home-page #verification-gap .gap-static-card-head svg { width: 31px; height: 31px; }
.home-page #verification-gap .gap-static-card h3 { max-width: 24ch; font-size: clamp(1.03rem, 1.18vw, 1.18rem); }
.home-page #verification-gap .gap-static-card p { max-width: 38ch; font-size: 0.84rem; }
.home-page #verification-gap .gap-static-pathway {
  margin-top: clamp(34px, 3.4vw, 48px);
  padding: 24px clamp(18px, 3vw, 40px) 0;
  border-top-color: rgba(30, 57, 89, 0.2);
}
.home-page #verification-gap .gap-static-pathway ol::before {
  height: 2px;
  background: linear-gradient(90deg, rgba(180, 132, 48, 0.38), var(--gold), rgba(180, 132, 48, 0.38));
}
.home-page #verification-gap .gap-path-node { box-shadow: 0 0 0 5px rgba(180, 132, 48, 0.08); }

@media (min-width: 761px) {
  .home-page #verification-gap .gap-static-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (min-width: 1181px) {
  .home-page #verification-gap .gap-static-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; border: 0; }
  .home-page #verification-gap .gap-static-card { min-height: 246px; padding: clamp(24px, 2.3vw, 32px); border: 1px solid rgba(30, 57, 89, 0.2); }
  .home-page #verification-gap .gap-static-card-head { margin-bottom: 28px; }
  .home-page #verification-gap .gap-static-card h3 { font-size: clamp(1.03rem, 1.18vw, 1.18rem); }
  .home-page #verification-gap .gap-static-card p { font-size: 0.84rem; }
}

.home-page #connected-stack .environment-architecture-map {
  position: relative;
  margin-top: 2px;
  padding: clamp(24px, 3vw, 40px);
  border: 1px solid rgba(209, 178, 115, 0.3);
  background: radial-gradient(circle at 50% 12%, rgba(209, 178, 115, 0.11), transparent 26%), rgba(3, 17, 39, 0.34);
  box-shadow: 0 28px 70px rgba(0, 8, 25, 0.26);
}
.home-page #connected-stack .environment-architecture-map::before {
  position: absolute;
  inset: 28px 9% 34%;
  opacity: 0.58;
  background:
    linear-gradient(90deg, transparent 49.85%, rgba(209, 178, 115, 0.34) 50%, transparent 50.15%),
    linear-gradient(155deg, transparent 49.85%, rgba(209, 178, 115, 0.22) 50%, transparent 50.15%),
    linear-gradient(25deg, transparent 49.85%, rgba(209, 178, 115, 0.22) 50%, transparent 50.15%);
  content: "";
  pointer-events: none;
}
.home-page #connected-stack .environment-core {
  position: relative;
  z-index: 2;
  display: grid;
  width: min(100%, 290px);
  min-height: 122px;
  margin: 0 auto clamp(28px, 3vw, 40px);
  padding: 22px 26px;
  border: 1px solid rgba(209, 178, 115, 0.72);
  background: linear-gradient(145deg, #17385f, #071a37 72%);
  box-shadow: 0 0 0 10px rgba(209, 178, 115, 0.055), 0 22px 50px rgba(0, 8, 24, 0.42);
  place-content: center;
  text-align: center;
}
.home-page #connected-stack .environment-core span,
.home-page #connected-stack .environment-core small {
  color: var(--gold-light);
  font-family: var(--font-label);
  font-size: 0.57rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.home-page #connected-stack .environment-core strong {
  margin: 7px 0;
  color: var(--white);
  font-family: var(--font-heading);
  font-size: clamp(1.2rem, 1.5vw, 1.48rem);
  font-weight: 500;
}
.home-page #connected-stack .environment-core small { color: rgba(255, 255, 255, 0.62); font-size: 0.5rem; }
.home-page #connected-stack .environment-static-grid {
  position: relative;
  z-index: 1;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-top: 0;
  border: 0;
}
.home-page #connected-stack .environment-static-card {
  min-height: 244px;
  padding: clamp(22px, 2vw, 28px);
  border: 1px solid rgba(255, 255, 255, 0.19);
  background: rgba(5, 25, 53, 0.84);
  box-shadow: inset 0 3px transparent;
  transition: transform 220ms var(--ease-premium), background-color 220ms ease, border-color 220ms ease, box-shadow 220ms ease;
}
.home-page #connected-stack .environment-static-card:hover,
.home-page #connected-stack .environment-static-card:focus-within {
  border-color: rgba(209, 178, 115, 0.54);
  background: rgba(14, 45, 80, 0.94);
  box-shadow: inset 0 3px var(--gold-light), 0 16px 34px rgba(0, 7, 22, 0.3);
  transform: translateY(-3px);
}
.home-page #connected-stack .environment-static-card-head { margin-bottom: 22px; }
.home-page #connected-stack .environment-static-card-head svg { width: 31px; height: 31px; }
.home-page #connected-stack .environment-static-card h3 { font-size: clamp(1rem, 1.15vw, 1.14rem); }
.home-page #connected-stack .compact-lifecycle-cue {
  margin-top: clamp(28px, 3vw, 40px);
  padding: 21px 22px 0;
}
.home-page #connected-stack .compact-lifecycle-cue ol { align-items: center; }
.home-page #connected-stack .compact-lifecycle-cue li {
  min-height: 28px;
  padding: 0 9px;
  border-radius: 999px;
  background: rgba(209, 178, 115, 0.07);
}
@media (min-width: 1181px) {
  .home-page #connected-stack .environment-static-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; border: 0; }
  .home-page #connected-stack .environment-static-card { min-height: 244px; padding: clamp(22px, 2vw, 28px); border: 1px solid rgba(255, 255, 255, 0.19); }
  .home-page #connected-stack .environment-static-card-head { margin-bottom: 22px; }
  .home-page #connected-stack .environment-static-card h3 { font-size: clamp(1rem, 1.15vw, 1.14rem); }
  .home-page #connected-stack .environment-static-card > p:not(.environment-static-includes) { font-size: 0.82rem; }
  .home-page #connected-stack .environment-static-includes { font-size: 0.7rem; }
}

.home-page #trust-infrastructure .fidelity-architecture { align-items: center; }
.home-page #trust-infrastructure .architecture-copy > p:not(.eyebrow):not(.architecture-closing-inline) { max-width: 35rem; }
.home-page #trust-infrastructure .trust-architecture-25d {
  position: relative;
  padding-top: 42px;
  filter: drop-shadow(0 26px 34px rgba(21, 41, 70, 0.12));
}
.home-page #trust-infrastructure .trust-architecture-25d > .concept-label {
  position: absolute;
  z-index: 5;
  top: 0;
  right: 0;
  margin: 0 !important;
  background: rgba(255, 253, 248, 0.94);
}
.home-page #trust-infrastructure .trust-volume {
  box-shadow: 0 20px 42px rgba(75, 52, 12, 0.2), 0 0 0 7px rgba(184, 132, 48, 0.08), 0 0 42px rgba(209, 178, 115, 0.18);
}
.home-page #trust-infrastructure .architecture-initiative-link { margin-top: 22px; }

.home-page #current-decisions.service-teaser-band {
  padding-block: clamp(54px, 5vw, 72px);
  background: linear-gradient(110deg, #eef3f6 0%, #f8f7f2 70%, #f0e8d7 100%);
}
.home-page #current-decisions .service-teaser { gap: clamp(24px, 3vw, 40px); }
.home-page #current-decisions .service-teaser-copy {
  display: grid;
  max-width: none;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 0.72fr);
  gap: 0 clamp(36px, 5vw, 82px);
  padding-left: 0;
}
.home-page #current-decisions .service-teaser-copy::before { display: none; }
.home-page #current-decisions .service-teaser-copy .eyebrow { grid-column: 1 / -1; }
.home-page #current-decisions .service-teaser-copy h2 { grid-column: 1; max-width: 28ch; margin-bottom: 0; }
.home-page #current-decisions .service-teaser-copy > p:last-child { grid-column: 2; align-self: end; }
.home-page #current-decisions .service-lifecycle {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 0;
  padding: 0;
  border: 1px solid rgba(30, 57, 89, 0.22);
  list-style: none;
  background: rgba(255, 255, 255, 0.38);
}
.home-page #current-decisions .service-lifecycle li {
  position: relative;
  display: grid;
  min-height: 134px;
  padding: 23px 26px;
  border-right: 1px solid rgba(30, 57, 89, 0.18);
  grid-template-columns: auto 1fr;
  column-gap: 15px;
  align-content: center;
}
.home-page #current-decisions .service-lifecycle li:last-child { border-right: 0; }
.home-page #current-decisions .service-lifecycle li::before {
  position: absolute;
  top: -1px;
  right: -1px;
  left: -1px;
  height: 3px;
  background: linear-gradient(90deg, var(--gold), rgba(209, 178, 115, 0.18));
  content: "";
}
.home-page #current-decisions .service-lifecycle span {
  color: var(--gold-dark);
  font-family: var(--font-label);
  font-size: 0.61rem;
  font-weight: 700;
  letter-spacing: 0.08em;
}
.home-page #current-decisions .service-lifecycle strong {
  color: var(--navy);
  font-family: var(--font-heading);
  font-size: clamp(1rem, 1.25vw, 1.2rem);
  font-weight: 600;
}
.home-page #current-decisions .service-lifecycle small {
  grid-column: 2;
  margin-top: 8px;
  color: var(--ink-soft);
  font-size: 0.78rem;
  line-height: 1.5;
}
.home-page #current-decisions .service-teaser-actions { align-items: center; flex-direction: row; gap: 14px; }
.home-page #current-decisions .service-teaser-actions .button.secondary {
  border-color: var(--gold-dark);
  color: var(--navy);
  background: transparent;
}
.home-page #current-decisions .service-teaser-actions .button.secondary:hover,
.home-page #current-decisions .service-teaser-actions .button.secondary:focus-visible {
  border-color: var(--gold);
  background: #fff7e6;
}

.home-page #ai-infrastructure-trust .infrastructure-panel {
  border-bottom: 1px solid rgba(209, 178, 115, 0.22);
}
.home-page #ai-infrastructure-trust .infrastructure-svg {
  overflow: hidden;
  border: 1px solid rgba(209, 178, 115, 0.26);
  background: rgba(3, 17, 39, 0.26);
  box-shadow: 0 28px 70px rgba(0, 8, 25, 0.3);
}
.home-page #ai-infrastructure-trust .infra-scene-labels [data-zone-label] {
  padding: 5px 8px;
  border: 1px solid rgba(255, 255, 255, 0.15);
  background: rgba(4, 19, 42, 0.82);
  color: rgba(255, 255, 255, 0.82);
  font-size: clamp(0.55rem, 0.7vw, 0.65rem);
  opacity: 0.76;
}
.home-page #ai-infrastructure-trust .infra-scene-labels [data-zone-label].is-active {
  border-color: var(--gold-light);
  color: #fff;
  background: rgba(31, 63, 98, 0.94);
  box-shadow: 0 0 0 4px rgba(209, 178, 115, 0.08);
}
.home-page #ai-infrastructure-trust .infrastructure-control-panel {
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-top: 0;
  background: rgba(3, 17, 39, 0.66);
}
.home-page #ai-infrastructure-trust .infrastructure-items button[role="tab"] {
  min-height: 64px;
  padding: 15px 12px;
  font-size: 0.64rem;
  letter-spacing: 0.055em;
}
.home-page #ai-infrastructure-trust .infrastructure-items button[role="tab"]:hover { color: #fff; background: rgba(209, 178, 115, 0.075); }
.home-page #ai-infrastructure-trust .infrastructure-items button[role="tab"][aria-selected="true"] {
  color: #071a37;
  background: var(--gold-light);
}
.home-page #ai-infrastructure-trust .infrastructure-items button[role="tab"][aria-selected="true"]::after { right: 0; left: 0; height: 3px; background: #fff7df; }
.home-page #ai-infrastructure-trust .infra-detail {
  min-height: 58px;
  padding: 17px 20px;
  border-top: 1px solid rgba(255, 255, 255, 0.13);
  color: rgba(255, 255, 255, 0.88);
}
.home-page #ai-infrastructure-trust .infrastructure-partnership-button {
  border-width: 1px;
  border-color: var(--gold-light);
  color: var(--white);
  box-shadow: inset 0 0 0 0 var(--gold-light);
  transition: color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}
.home-page #ai-infrastructure-trust .infrastructure-partnership-button:hover,
.home-page #ai-infrastructure-trust .infrastructure-partnership-button:focus-visible {
  color: var(--navy-deep);
  box-shadow: inset 220px 0 0 0 var(--gold-light);
  transform: translateY(-2px);
}

.home-page #emerging-trust .band-inner {
  padding-top: clamp(24px, 3vw, 38px);
  border-top: 1px solid rgba(209, 178, 115, 0.34);
}
.home-page #emerging-trust .emerging-compact-grid { border-color: rgba(209, 178, 115, 0.26); }
.home-page #emerging-trust .emerging-compact-item {
  position: relative;
  min-height: 194px;
  overflow: hidden;
  padding: 22px clamp(18px, 2vw, 28px) 24px;
  background: rgba(255, 255, 255, 0.018);
  transition: background-color 180ms ease, transform 180ms ease;
}
.home-page #emerging-trust .emerging-compact-item::after {
  position: absolute;
  right: -22px;
  bottom: -22px;
  width: 78px;
  height: 78px;
  border: 1px solid rgba(209, 178, 115, 0.23);
  border-radius: 50%;
  content: "";
}
.home-page #emerging-trust .emerging-compact-item:hover { background: rgba(209, 178, 115, 0.055); transform: translateY(-3px); }
.home-page #emerging-trust .emerging-index {
  position: absolute;
  top: 19px;
  right: 18px;
  color: var(--gold-light);
  font-family: var(--font-label);
  font-size: 0.64rem;
  letter-spacing: 0.08em;
}
.home-page #emerging-trust .horizon-visual { width: 92px; height: 45px; margin-block: 21px 17px; transform: scale(1.14); transform-origin: left center; }
.home-page #emerging-trust .emerging-compact-item h4 { max-width: 19ch; font-size: clamp(0.96rem, 1.08vw, 1.08rem); }
.home-page #emerging-trust .emerging-trust-lab-link {
  display: inline-flex;
  min-height: 45px;
  align-items: center;
  margin-top: 22px;
  padding: 0 18px;
  border: 1px solid var(--gold-light);
  color: var(--white);
}
.home-page #emerging-trust .emerging-trust-lab-link:hover,
.home-page #emerging-trust .emerging-trust-lab-link:focus-visible { color: var(--navy-deep); background: var(--gold-light); }

.home-page #who-we-support .audience-ledger { border: 1px solid rgba(30, 57, 89, 0.22); }
.home-page #who-we-support .audience-ledger-row {
  grid-template-columns: 82px minmax(230px, 0.92fr) minmax(270px, 1.14fr) minmax(220px, 0.72fr);
  padding: clamp(24px, 2.5vw, 34px) clamp(20px, 2.4vw, 34px);
  transition: background-color 180ms ease, box-shadow 180ms ease;
}
.home-page #who-we-support .audience-ledger-row:nth-child(even) { background: rgba(222, 229, 234, 0.3); }
.home-page #who-we-support .audience-ledger-row:hover,
.home-page #who-we-support .audience-ledger-row:focus-within {
  background: rgba(255, 250, 239, 0.78);
  box-shadow: inset 3px 0 var(--gold);
}
.home-page #who-we-support .audience-ledger-marker .line-icon { width: 40px; height: 40px; }
.home-page #who-we-support .audience-ledger-includes { padding-left: 14px; }

.home-page #final-cta.final-cta-band {
  min-height: clamp(430px, 39vw, 580px);
  display: grid;
  align-items: center;
  color: var(--white);
  background:
    radial-gradient(circle at 80% 40%, rgba(61, 98, 139, 0.42), transparent 29%),
    linear-gradient(rgba(209, 178, 115, 0.065) 1px, transparent 1px),
    linear-gradient(90deg, rgba(209, 178, 115, 0.055) 1px, transparent 1px),
    linear-gradient(135deg, #06152f, #101c43 68%, #07162f);
  background-size: auto, 54px 54px, 54px 54px, auto;
}
.home-page #final-cta.final-cta-band::before,
.home-page #final-cta.final-cta-band::after {
  position: absolute;
  border: 1px solid rgba(209, 178, 115, 0.22);
  border-radius: 50%;
  content: "";
  pointer-events: none;
}
.home-page #final-cta.final-cta-band::before { top: -210px; right: -110px; width: 560px; height: 560px; }
.home-page #final-cta.final-cta-band::after { right: 80px; bottom: -250px; width: 440px; height: 440px; }
.home-page #final-cta .home-cta {
  position: relative;
  z-index: 1;
  padding-block: clamp(78px, 8vw, 116px);
}
.home-page #final-cta .eyebrow { color: var(--gold-light); }
.home-page #final-cta h2 { color: var(--white); }
.home-page #final-cta .cta-action-panel > p { color: rgba(255, 255, 255, 0.72); }
.home-page #final-cta .button.primary { background: var(--gold-light); color: var(--navy-deep); }
.home-page #final-cta .button.primary:hover,
.home-page #final-cta .button.primary:focus-visible { background: #f2d98f; color: var(--navy-deep); }
.home-page #final-cta .button.secondary {
  border-color: var(--gold-light);
  color: var(--white);
  background: transparent;
}
.home-page #final-cta .button.secondary:hover,
.home-page #final-cta .button.secondary:focus-visible { color: var(--navy-deep); background: var(--gold-light); }

@media (max-width: 1100px) {
  .home-page #current-decisions .service-teaser-copy { grid-template-columns: 1fr; gap: 16px; }
  .home-page #current-decisions .service-teaser-copy h2,
  .home-page #current-decisions .service-teaser-copy > p:last-child { grid-column: 1; }
  .home-page #who-we-support .audience-ledger-row { grid-template-columns: 76px minmax(0, 0.9fr) minmax(0, 1.1fr); }
  .home-page #who-we-support .audience-ledger-includes { grid-column: 2 / -1; }
}

@media (max-width: 959px) {
  .home-page #connected-stack .environment-static-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-page #current-decisions .service-lifecycle { grid-template-columns: 1fr; }
  .home-page #current-decisions .service-lifecycle li { min-height: 110px; border-right: 0; border-bottom: 1px solid rgba(30, 57, 89, 0.18); }
  .home-page #current-decisions .service-lifecycle li:last-child { border-bottom: 0; }
  .home-page #ai-infrastructure-trust .infrastructure-items { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
  .home-page #verification-gap .gap-static-card { min-height: 0; }
  .home-page #connected-stack .environment-architecture-map { padding: 20px 15px; }
  .home-page #connected-stack .environment-architecture-map::before { display: none; }
  .home-page #connected-stack .environment-static-grid { grid-template-columns: 1fr; }
  .home-page #connected-stack .environment-static-card { min-height: 0; }
  .home-page #connected-stack .compact-lifecycle-cue li { padding: 0; background: transparent; }
  .home-page #trust-infrastructure .trust-architecture-25d { padding-top: 38px; }
  .home-page #trust-infrastructure .trust-architecture-25d > .concept-label { right: auto; left: 0; }
  .home-page #current-decisions .service-teaser-actions { display: grid; grid-template-columns: 1fr; width: 100%; }
  .home-page #current-decisions .service-teaser-actions .button { width: 100%; }
  .home-page #ai-infrastructure-trust .infrastructure-items { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-page #ai-infrastructure-trust .infrastructure-items button[role="tab"] { min-height: 60px; font-size: 0.58rem; }
  .home-page #who-we-support .audience-ledger-row { grid-template-columns: 1fr; }
  .home-page #who-we-support .audience-ledger-includes { grid-column: auto; }
  .home-page #final-cta.final-cta-band { min-height: 0; }
}

@media (prefers-reduced-motion: reduce) {
  .home-page #verification-gap .gap-static-card,
  .home-page #connected-stack .environment-static-card,
  .home-page #emerging-trust .emerging-compact-item,
  .home-page #who-we-support .audience-ledger-row { transition: none; }
}

/* Homepage completion pass: Trust Lab route and closing call to action. */
.home-page #emerging-trust .emerging-trust-lab-link {
  display: inline-flex;
  width: auto;
  min-width: 224px;
  min-height: 50px;
  align-items: center;
  justify-content: center;
  gap: 14px;
  margin: 26px 0 0 auto;
  padding: 0 20px;
  overflow: visible;
  border: 1px solid var(--gold-light);
  border-bottom: 1px solid var(--gold-light);
  color: var(--navy-deep);
  background: var(--gold-light);
  box-shadow: 0 12px 28px rgba(0, 7, 22, 0.22);
  font-size: 0.7rem;
  letter-spacing: 0.065em;
  text-decoration: none;
  transition: color 180ms ease, background-color 180ms ease, border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}
.home-page #emerging-trust .emerging-trust-lab-link::after {
  position: static;
  display: inline-flex;
  width: auto;
  height: auto;
  margin: 0;
  background: none;
  content: "\2197";
  font-size: 0.9rem;
  line-height: 1;
  transform: none;
}
.home-page #emerging-trust .emerging-trust-lab-link:hover,
.home-page #emerging-trust .emerging-trust-lab-link:focus-visible {
  border-color: #f0d891;
  color: var(--navy-deep);
  background: #f0d891;
  box-shadow: 0 17px 38px rgba(0, 7, 22, 0.3), 0 0 0 4px rgba(209, 178, 115, 0.08);
  transform: translateY(-2px);
}

.home-page #final-cta.final-cta-band {
  min-height: clamp(420px, 34vw, 520px);
  border-top: 1px solid rgba(209, 178, 115, 0.5);
  border-bottom: 1px solid rgba(209, 178, 115, 0.28);
  background:
    radial-gradient(circle at 86% 20%, rgba(53, 86, 129, 0.3), transparent 28%),
    linear-gradient(rgba(209, 178, 115, 0.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(209, 178, 115, 0.04) 1px, transparent 1px),
    linear-gradient(135deg, #07152f, #111943 64%, #08172f);
  background-size: auto, 54px 54px, 54px 54px, auto;
}
.home-page #final-cta.final-cta-band::before {
  top: -290px;
  right: -150px;
  width: 610px;
  height: 610px;
  border-color: rgba(209, 178, 115, 0.16);
}
.home-page #final-cta.final-cta-band::after {
  right: 9%;
  bottom: -355px;
  width: 520px;
  height: 520px;
  border-color: rgba(209, 178, 115, 0.12);
}
.home-page #final-cta .home-cta {
  grid-template-columns: minmax(0, 1.08fr) minmax(410px, 0.82fr);
  gap: clamp(54px, 6vw, 92px);
  width: min(var(--content-max), calc(100% - (var(--page-gutter) * 2)));
  padding: clamp(66px, 6vw, 88px) 0;
  background: transparent;
}
.home-page #final-cta .cta-copy { align-self: center; }
.home-page #final-cta .cta-copy .eyebrow { margin-bottom: 18px; }
.home-page #final-cta h2 {
  max-width: 15ch;
  font-size: clamp(2.55rem, 3.05vw, 3.55rem);
  font-weight: 500;
  line-height: 1.07;
  letter-spacing: -0.035em;
}
.home-page #final-cta .cta-action-panel {
  position: relative;
  display: grid;
  gap: 26px;
  align-self: center;
  padding: clamp(28px, 3vw, 40px);
  overflow: hidden;
  border: 1px solid rgba(209, 178, 115, 0.34);
  border-left: 3px solid var(--gold-light);
  background: linear-gradient(145deg, rgba(9, 27, 59, 0.93), rgba(18, 31, 68, 0.84));
  box-shadow: 0 26px 64px rgba(0, 7, 22, 0.34), inset 0 1px rgba(255, 255, 255, 0.035);
}
.home-page #final-cta .cta-action-panel::after {
  position: absolute;
  top: -72px;
  right: -72px;
  width: 170px;
  height: 170px;
  border: 1px solid rgba(209, 178, 115, 0.14);
  border-radius: 50%;
  content: "";
  pointer-events: none;
}
.home-page #final-cta .cta-action-panel > p {
  position: relative;
  z-index: 1;
  max-width: 48ch;
  color: rgba(255, 255, 255, 0.76);
  font-size: clamp(0.91rem, 0.95vw, 1rem);
  line-height: 1.68;
}
.home-page #final-cta .cta-action-panel .hero-actions {
  position: relative;
  z-index: 1;
  display: grid;
  width: 100%;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.home-page #final-cta .cta-action-panel .button {
  width: 100%;
  min-width: 0;
  min-height: 50px;
  justify-content: center;
  padding-inline: 16px;
  white-space: normal;
  text-align: center;
}
.home-page #final-cta .cta-action-panel .button.primary {
  border-color: var(--gold-light);
  color: var(--navy-deep);
  background: var(--gold-light);
  box-shadow: 0 10px 24px rgba(0, 7, 22, 0.2);
}
.home-page #final-cta .cta-action-panel .button.primary:hover,
.home-page #final-cta .cta-action-panel .button.primary:focus-visible {
  border-color: #f0d891;
  color: var(--navy-deep);
  background: #f0d891;
  transform: translateY(-2px);
}
.home-page #final-cta .cta-action-panel .button.secondary {
  border-color: rgba(209, 178, 115, 0.8);
  color: var(--white);
  background: rgba(255, 255, 255, 0.025);
}
.home-page #final-cta .cta-action-panel .button.secondary:hover,
.home-page #final-cta .cta-action-panel .button.secondary:focus-visible {
  border-color: var(--gold-light);
  color: var(--navy-deep);
  background: var(--gold-light);
  transform: translateY(-2px);
}

@media (max-width: 1060px) {
  .home-page #final-cta .home-cta {
    grid-template-columns: minmax(0, 1fr);
    gap: 34px;
  }
  .home-page #final-cta h2 { max-width: 18ch; }
  .home-page #final-cta .cta-action-panel { max-width: 720px; }
}

@media (max-width: 620px) {
  .home-page #emerging-trust .emerging-trust-lab-link {
    width: 100%;
    margin-top: 22px;
  }
  .home-page #final-cta .home-cta { padding-block: 52px; }
  .home-page #final-cta h2 { max-width: 13ch; font-size: clamp(2.3rem, 10vw, 2.9rem); }
  .home-page #final-cta .cta-action-panel { padding: 24px 20px; }
  .home-page #final-cta .cta-action-panel .hero-actions { grid-template-columns: minmax(0, 1fr); }
}

/* Align the homepage closing actions with the shared dark-band CTA system. */
.home-page #final-cta .cta-action-panel .hero-actions .button {
  min-height: 48px;
  border-radius: 0;
  box-shadow: none;
  transform: none;
}
.home-page #final-cta .cta-action-panel .hero-actions .button.primary {
  border: 1px solid var(--paper);
  color: var(--navy-deep);
  background: var(--paper);
}
.home-page #final-cta .cta-action-panel .hero-actions .button.primary:hover,
.home-page #final-cta .cta-action-panel .hero-actions .button.primary:focus-visible,
.home-page #final-cta .cta-action-panel .hero-actions .button.primary:active {
  border-color: var(--cta-gold);
  color: var(--navy-deep);
  background: var(--cta-gold);
  box-shadow: 0 0 0 2px rgba(223, 188, 102, 0.2);
  transform: none;
}
.home-page #final-cta .cta-action-panel .hero-actions .button.secondary.home-final-secondary {
  border: 1px solid var(--cta-gold);
  color: var(--white);
  background: transparent;
}
.home-page #final-cta .cta-action-panel .hero-actions .button.secondary.home-final-secondary:hover,
.home-page #final-cta .cta-action-panel .hero-actions .button.secondary.home-final-secondary:focus-visible,
.home-page #final-cta .cta-action-panel .hero-actions .button.secondary.home-final-secondary:active {
  border-color: var(--cta-gold);
  color: var(--navy-deep);
  background: var(--cta-gold);
  box-shadow: 0 0 0 2px rgba(223, 188, 102, 0.22);
  transform: none;
}
