@font-face {
  font-family: Archivo;
  src: url("/assets/fonts/archivo-var.woff2") format("woff2");
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
}

/*
  5500RADAR interior-page layer.
  site.css keeps the mature content components. This file gives every public
  page the glacier world introduced on the home page without widening the CSP
  or duplicating the long-form methodology rules.
*/

.secondary-body {
  --canvas: #f2f3ef;
  --canvas-raised: #fcfdfc;
  --canvas-sunken: #e5eae7;
  --ink-1: #15262c;
  --ink-2: #2f444a;
  --ink-3: #45595e;
  --ink-4: #53666b;
  --line-subtle: #d8e0dd;
  --line: #bbc8c7;
  --line-strong: #91a6a8;
  --field-line: #6b7f80;
  --brand-500: #0E7E9B;
  --brand-bright: #70d7ed;
  --accent-ink:   #0B6E83;
  --accent-solid: #0E7E9B;
  --accent-active: #0b6e83;
  --brand-50: #effafd;
  --brand-100: #d9f1f5;
  --brand-200: #b7dfe8;
  --font-sans: Archivo, Arial, sans-serif;
  --w-page: 1480px;
  --gutter: clamp(24px, 4.2vw, 72px);
  overflow-x: hidden;
  background: var(--canvas);
  color: var(--ink-2);
  font-family: Archivo, Arial, sans-serif;
}

.secondary-body.nav-locked {
  overflow: hidden;
}

.secondary-body > svg[width="0"][height="0"] {
  position: absolute;
  width: 0;
  height: 0;
  overflow: hidden;
}

.secondary-body h1,
.secondary-body h2,
.secondary-body h3,
.secondary-body h4,
.secondary-body button,
.secondary-body a {
  font-family: Archivo, Arial, sans-serif;
}

.secondary-body h1,
.secondary-body h2 {
  color: var(--ink-1);
  font-weight: 640;
  letter-spacing: -.045em;
}

.secondary-body h1 {
  max-width: 15ch;
  font-size: clamp(52px, 7vw, 104px);
  line-height: .91;
}

.secondary-body h1 em,
.secondary-body h2 em {
  color: var(--accent-ink);
  font-family: "Bodoni Moda", "Radar Serif Fallback", Georgia, serif;
  font-style: italic;
  font-weight: 400;
  letter-spacing: -.015em;
}

.secondary-body h2 {
  max-width: 20ch;
  font-size: clamp(38px, 4.5vw, 66px);
  line-height: .98;
}

.secondary-body h3 {
  color: var(--ink-1);
  font-weight: 620;
}

.secondary-body section {
  padding-block: clamp(92px, 9vw, 144px);
}

.secondary-body .band {
  background: #eff7fa;
  border-color: var(--line);
}

.secondary-body .label,
.secondary-body .sec-label {
  color: var(--accent-ink);
  font: 650 11px/1 Archivo, Arial, sans-serif;
  letter-spacing: .13em;
}

.secondary-body .lede {
  max-width: 58ch;
  color: var(--ink-2);
  font-size: clamp(18px, 1.6vw, 23px);
  line-height: 1.5;
}

.secondary-body .quote {
  border-left: 1px solid #70d7ed;
  color: var(--ink-1);
}

.secondary-body .btn {
  border-radius: 2px;
  box-shadow: none;
}

/* The global indicator in site.css draws its ring with box-shadow (the outline
   there is transparent and exists only for forced-colors). `.secondary-body .btn`
   outranks it, so without this every button on every interior page focused
   invisibly. Same fix, same reason, as `.btn-ghost:focus-visible` in site.css. */
.secondary-body .btn:focus-visible {
  box-shadow: 0 0 0 3px var(--brand-ring), 0 0 0 1px var(--brand-500);
}

.secondary-body .btn-ghost {
  background: transparent;
}

/* Shared navigation */
.secondary-header {
  background: rgb(255 255 255 / .9);
  border-bottom: 1px solid transparent;
  backdrop-filter: blur(18px) saturate(1.35);
  -webkit-backdrop-filter: blur(18px) saturate(1.35);
}

.secondary-header.is-scrolled,
.secondary-header.menu-open {
  background: rgb(255 255 255 / .97);
  border-bottom-color: var(--line);
}

.secondary-header .navbar {
  min-height: 82px;
}

.secondary-header .nav-brand {
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  gap: 10px;
}

.secondary-header .nav-brand .personas {
  display: none;
}

.secondary-header .nav-brand .wm,
.secondary-header .nav-brand img,
.secondary-header .nav-brand .brand-lockup {
  display: block;
  width: 224px;
  height: auto;
  filter: drop-shadow(0 0 10px rgb(50 181 216 / .12));
  mix-blend-mode: normal;
  transition: filter 220ms ease, transform 220ms ease;
}

.secondary-header .nav-brand::after {
  display: none;
}

.secondary-header .nav-brand:hover img,
.secondary-header .nav-brand:focus-visible img,
.secondary-header .nav-brand:hover .brand-lockup,
.secondary-header .nav-brand:focus-visible .brand-lockup {
  filter: brightness(1.06) drop-shadow(0 0 14px rgb(50 181 216 / .28));
  transform: translateY(-1px);
}

@keyframes secondary-pulse {
  0%, 58%, 100% { box-shadow: 0 0 0 0 rgb(14 126 155 / 0); }
  72% { box-shadow: 0 0 0 8px rgb(14 126 155 / .14); }
}

.secondary-header .nav-links {
  gap: 2px;
}

.secondary-header .nav-links a:not(.btn) {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  padding-inline: 13px;
  color: var(--ink-1);
  font-size: 13px;
  font-weight: 520;
}

.secondary-header .nav-links a[aria-current="page"] {
  color: var(--accent-ink);
}

.secondary-header .btn-dark {
  min-height: 48px;
  border-color: var(--ink-1);
  background: var(--ink-1);
  color: #fff;
}

.secondary-menu {
  display: none;
  width: 46px;
  height: 46px;
  padding: 0;
  border: 1px solid var(--line);
  border-radius: 2px;
  background: transparent;
  color: var(--ink-1);
  cursor: pointer;
}

.secondary-menu > span {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip-path: inset(50%);
}

.secondary-menu i {
  display: block;
  grid-area: 1 / 1;
  width: 20px;
  height: 1px;
  margin: 0;
  background: currentColor;
  transition: transform .25s cubic-bezier(.22,1,.36,1);
}

.secondary-menu i:first-of-type {
  transform: translateY(-4px);
}

.secondary-menu i:last-of-type {
  transform: translateY(4px);
}

.secondary-header.menu-open .secondary-menu i:first-of-type {
  transform: rotate(45deg);
}

.secondary-header.menu-open .secondary-menu i:last-of-type {
  transform: rotate(-45deg);
}

/* Interior hero */
.secondary-hero {
  position: relative;
  min-height: 70svh;
  display: flex;
  align-items: flex-end;
  overflow: hidden;
  isolation: isolate;
  background: #f6fbfd;
  border-bottom: 1px solid var(--line);
}

.secondary-body .secondary-hero {
  padding-block: 0;
}

.secondary-hero::before {
  content: "";
  position: absolute;
  z-index: -2;
  inset: 0;
  background:
    linear-gradient(90deg, #f6fbfd 0 31%, rgb(246 251 253 / .72) 52%, rgb(246 251 253 / .12) 100%),
    url("/assets/glacier-threshold.webp") 74% 44% / min(1150px, 74vw) auto no-repeat;
  opacity: .94;
}

.secondary-hero::after {
  content: "";
  position: absolute;
  z-index: -1;
  left: 0;
  right: 0;
  top: 54%;
  height: 1px;
  background: linear-gradient(90deg, transparent, #68bed3 15%, #68bed3 85%, transparent);
  box-shadow: 0 10px 34px rgb(8 120 150 / .16);
}

.secondary-hero .wrap {
  width: 100%;
  padding-block: clamp(86px, 11vw, 150px) clamp(80px, 9vw, 126px);
}

.secondary-hero .label,
.secondary-hero .sec-label {
  margin-bottom: 22px;
}

.secondary-hero .lede {
  margin-top: 28px;
}

.secondary-hero-dark {
  min-height: 78svh;
  background: #00111f;
  color: #fff;
  border-color: rgb(198 237 249 / .18);
}

.secondary-hero-dark::before {
  background:
    linear-gradient(90deg, #00111f 0 37%, rgb(0 17 31 / .86) 57%, rgb(0 17 31 / .24) 100%),
    url("/assets/glacier-fractures.webp") 68% 55% / cover no-repeat;
  opacity: 1;
}

.secondary-hero-dark::after {
  top: 58%;
  background: linear-gradient(90deg, transparent, #70d7ed 10%, #70d7ed 92%, transparent);
}

.secondary-hero-dark h1,
.secondary-hero-dark .lede {
  color: #fff;
}

.secondary-hero-dark h1 em {
  color: #9be9f7;
}

.secondary-hero-dark .label {
  color: #70d7ed;
}

.hero-proofline {
  max-width: 850px;
  display: flex;
  flex-wrap: wrap;
  gap: 1px;
  margin-top: 42px;
}

.hero-proofline span {
  min-height: 39px;
  display: inline-flex;
  align-items: center;
  padding: 0 14px;
  border: 1px solid var(--line-strong);
  background: rgb(255 255 255 / .7);
  color: var(--ink-2);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.secondary-hero-dark .hero-proofline span {
  border-color: rgb(198 237 249 / .24);
  background: rgb(0 17 31 / .68);
  color: #d8f5fb;
}

/* Long-form interior content */
.secondary-body .split {
  gap: clamp(42px, 7vw, 110px);
}

.secondary-body .statement {
  color: var(--ink-1);
  font-size: clamp(21px, 2vw, 27px);
  line-height: 1.46;
}

.secondary-body .deflist {
  border-bottom: 1px solid var(--line);
}

.secondary-body .deflist > div {
  min-height: 150px;
  padding-block: 34px;
  border-color: var(--line);
}

.secondary-body .deflist h3 {
  font-size: clamp(21px, 2vw, 27px);
}

.secondary-body .deflist .idx {
  color: var(--accent-ink);
  font-family: Archivo, Arial, sans-serif;
  font-size: 11px;
}

.secondary-body .deflist p {
  color: var(--ink-2);
  font-size: 16px;
  line-height: 1.6;
}

.secondary-body .record,
.secondary-body .universe,
.secondary-body .callout,
.secondary-body .cta {
  border-radius: 2px;
  box-shadow: none;
}

.secondary-body .record {
  border-color: #a9ccd7;
  background: #fff;
}

.secondary-body .universe {
  padding: clamp(28px, 4vw, 52px);
  border-color: #b8d7df;
  background: #f8fcfd;
}

.secondary-body .uni-bar {
  height: 14px;
  border-radius: 0;
}

.secondary-body .callout {
  border: 1px solid #b8d7df;
  background: rgb(255 255 255 / .72);
  padding: clamp(28px, 4vw, 52px);
}

.secondary-body .cta {
  position: relative;
  overflow: hidden;
  padding: clamp(38px, 6vw, 76px);
  border-color: #9fc6d1;
  background: #eff9fc;
}

.secondary-body .cta::after {
  content: "";
  position: absolute;
  right: -120px;
  bottom: -170px;
  width: 380px;
  height: 380px;
  border: 1px solid #9bd6e4;
  border-radius: 50%;
  box-shadow: 0 0 0 40px rgb(155 214 228 / .14), 0 0 0 80px rgb(155 214 228 / .08);
  pointer-events: none;
}

.secondary-body .lineage {
  gap: 1px;
  border: 1px solid var(--line-strong);
  background: var(--line-strong);
}

.secondary-body .lin {
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

.secondary-body .lin.derived {
  background: #e8f8fc;
}

.secondary-body .carry {
  gap: 1px;
  overflow: hidden;
  border: 1px solid #b7d5de;
  background: #b7d5de;
}

.secondary-body .carry-row {
  min-height: 68px;
  border: 0;
  border-radius: 0;
}

.secondary-body .carry-out {
  border-radius: 2px;
}

.page-methodology .doc {
  gap: clamp(48px, 7vw, 100px);
}

.page-methodology .toc a {
  border-radius: 0;
  border-left-width: 1px;
}

.page-methodology .doc-body h2 {
  max-width: 24ch;
  margin-top: 84px;
  color: var(--ink-1);
  font-size: clamp(30px, 3.2vw, 44px);
  line-height: 1.04;
}

.page-methodology .doc-body p,
.page-methodology .doc-body li {
  font-size: 16px;
  line-height: 1.72;
}

.page-cpa main > section:nth-child(3),
.page-about main > section:nth-child(3) {
  position: relative;
  background: #fff;
}

/* All-audiences page: five questions converge on one evidence core. */
.audience-convergence {
  min-height: auto;
  padding-bottom: clamp(70px, 8vw, 112px);
}

.audience-convergence::before {
  background:
    radial-gradient(circle at 50% 66%, rgb(112 215 237 / .18), transparent 28%),
    linear-gradient(180deg, #f7fcfe 0%, #fff 100%);
}

.audience-convergence::after {
  display: none;
}

.audience-convergence .wrap {
  padding-top: clamp(64px, 7vw, 92px);
  padding-bottom: 0;
}

.audience-convergence h1 {
  max-width: 18ch;
}

.audience-convergence .lede {
  max-width: 64ch;
}

.question-field {
  position: relative;
  min-height: 610px;
  margin-top: clamp(56px, 7vw, 98px);
  border-block: 1px solid #bdd8df;
  background:
    radial-gradient(circle at 50% 50%, rgb(112 215 237 / .16), transparent 24%),
    linear-gradient(90deg, transparent 49.96%, rgb(184 215 223 / .58) 50%, transparent 50.04%);
}

.question-lines {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

.question-lines path {
  fill: none;
  stroke: #78b9c8;
  stroke-width: 1.2;
  stroke-dasharray: 6 9;
  animation: evidence-flow 13s linear infinite;
}

@keyframes evidence-flow {
  to { stroke-dashoffset: -150; }
}

.role-question {
  position: absolute;
  z-index: 2;
  width: min(29%, 370px);
  min-height: 110px;
  padding: 20px 22px;
  border: 1px solid #b7d4dc;
  background: rgb(255 255 255 / .93);
  color: var(--ink-1);
  text-decoration: none;
  transition: border-color .2s ease, transform .2s cubic-bezier(.22,1,.36,1);
}

.role-question:hover,
.role-question:focus-visible {
  color: var(--ink-1);
  border-color: #087896;
  transform: translateY(-3px);
}

.role-question span {
  display: block;
  margin-bottom: 10px;
  color: var(--accent-ink);
  font-size: 11px;
  font-weight: 650;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.role-question strong {
  display: block;
  font-size: clamp(15px, 1.35vw, 19px);
  line-height: 1.35;
}

.rq-a { left: 0; top: 7%; }
.rq-b { left: 0; top: 40%; }
.rq-c { left: 0; bottom: 7%; }
.rq-d { right: 0; top: 17%; }
.rq-e { right: 0; bottom: 17%; }

.evidence-core {
  position: absolute;
  z-index: 3;
  left: 50%;
  top: 50%;
  width: 230px;
  aspect-ratio: 1;
  display: grid;
  place-items: center;
  border: 1px solid #75bbcc;
  border-radius: 50%;
  background: #001a29;
  color: #fff;
  text-align: center;
  transform: translate(-50%, -50%);
  box-shadow: 0 0 0 22px rgb(112 215 237 / .08), 0 0 0 44px rgb(112 215 237 / .04);
}

.evidence-core::before,
.evidence-core::after {
  content: "";
  position: absolute;
  inset: 17px;
  border: 1px dashed rgb(112 215 237 / .54);
  border-radius: 50%;
  animation: core-turn 22s linear infinite;
}

.evidence-core::after {
  inset: 39px;
  border-style: solid;
  border-color: rgb(112 215 237 / .2);
  animation-direction: reverse;
  animation-duration: 15s;
}

@keyframes core-turn { to { transform: rotate(360deg); } }

.evidence-core div {
  position: relative;
  z-index: 1;
}

.evidence-core span {
  display: block;
  color: #70d7ed;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.evidence-core strong {
  display: block;
  max-width: 10ch;
  margin: 12px auto 8px;
  color: #fff;
  font-size: 21px;
  line-height: 1.08;
}

.evidence-core small {
  color: #b9d9e1;
  font-size: 11px;
}

.role-intro {
  display: grid;
  grid-template-columns: .78fr 1.22fr;
  gap: clamp(40px, 8vw, 130px);
  align-items: end;
  margin-bottom: clamp(54px, 7vw, 96px);
}

.role-intro p {
  max-width: 60ch;
  color: var(--ink-2);
  font-size: 18px;
  line-height: 1.62;
}

.role-lens {
  position: relative;
  display: grid;
  grid-template-columns: 110px minmax(0, .9fr) minmax(360px, 1.1fr);
  gap: clamp(28px, 5vw, 78px);
  align-items: start;
  padding-block: clamp(54px, 7vw, 90px);
  border-top: 1px solid var(--line-strong);
}

.role-lens:last-child {
  border-bottom: 1px solid var(--line-strong);
}

.role-number {
  color: var(--accent-ink);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.role-copy h2 {
  font-size: clamp(34px, 4vw, 58px);
}

.role-copy > p {
  max-width: 47ch;
  margin-top: 22px;
  color: var(--ink-2);
  font-size: 16px;
  line-height: 1.65;
}

.role-link {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-top: 25px;
  color: var(--ink-1);
  font-size: 13px;
  font-weight: 650;
  text-decoration: none;
}

.role-link span {
  color: var(--accent-ink);
  transition: transform .2s cubic-bezier(.22,1,.36,1);
}

.role-link:hover span {
  transform: translateX(4px);
}

.role-evidence {
  border-top: 1px solid var(--ink-1);
}

.role-evidence > p {
  padding: 13px 0;
  color: var(--accent-ink);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.role-evidence dl {
  margin: 0;
}

.role-evidence dl > div {
  display: grid;
  grid-template-columns: minmax(120px, .8fr) 1.2fr;
  gap: 22px;
  padding: 16px 0;
  border-top: 1px solid var(--line);
}

.role-evidence dt {
  color: var(--ink-1);
  font-size: 13px;
  font-weight: 620;
}

.role-evidence dd {
  margin: 0;
  color: var(--ink-3);
  font-size: 13px;
  line-height: 1.5;
}

.role-lens-featured {
  margin-inline: calc(var(--gutter) * -1);
  padding-inline: var(--gutter);
  border-color: rgb(198 237 249 / .24);
  background: #001723;
  color: #fff;
}

.role-lens-featured h2,
.role-lens-featured h3,
.role-lens-featured .role-evidence dt,
.role-lens-featured .role-link {
  color: #fff;
}

.role-lens-featured .role-copy > p,
.role-lens-featured .role-evidence dd {
  color: #b8d1d8;
}

.role-lens-featured .role-evidence {
  border-color: #8cd5e5;
}

.role-lens-featured .role-evidence dl > div {
  border-color: rgb(198 237 249 / .17);
}

.role-lens-featured .role-number,
.role-lens-featured .role-evidence > p {
  color: #70d7ed;
}

.evidence-spine {
  overflow: hidden;
  background: #eaf6fa;
}

.spine-head {
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: clamp(36px, 7vw, 100px);
  align-items: end;
}

.spine-head p {
  max-width: 54ch;
  font-size: 17px;
  line-height: 1.6;
}

.source-rail {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  margin-top: clamp(50px, 7vw, 88px);
  border-top: 1px solid #8dbac5;
  border-left: 1px solid #8dbac5;
}

.source-rail div {
  min-height: 190px;
  display: flex;
  flex-direction: column;
  padding: 22px 20px;
  border-right: 1px solid #8dbac5;
  border-bottom: 1px solid #8dbac5;
  background: rgb(255 255 255 / .42);
}

.source-rail span {
  color: var(--accent-ink);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .11em;
}

.source-rail strong {
  margin-top: auto;
  font-size: 17px;
  line-height: 1.25;
}

.source-rail small {
  margin-top: 10px;
  color: var(--ink-3);
  font-size: 11px;
  line-height: 1.4;
}

.evidence-boundary {
  background: #fff;
}

.boundary-grid {
  display: grid;
  grid-template-columns: .72fr 1fr 1fr;
  gap: clamp(32px, 6vw, 92px);
}

.boundary-col {
  padding-top: 20px;
  border-top: 2px solid var(--ink-1);
}

.boundary-col:last-child {
  border-top-color: #70bcd0;
}

.boundary-col h3 {
  font-size: 20px;
}

.boundary-col ul {
  display: grid;
  gap: 14px;
  margin-top: 24px;
  list-style: none;
}

.boundary-col li {
  position: relative;
  padding-left: 18px;
  color: var(--ink-2);
  font-size: 15px;
  line-height: 1.5;
}

.boundary-col li::before {
  content: "";
  position: absolute;
  left: 0;
  top: .65em;
  width: 6px;
  height: 1px;
  background: #087896;
}

.audience-cta {
  position: relative;
  overflow: hidden;
  background: #00111f;
  color: #fff;
}

.audience-cta::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, #00111f 0 47%, rgb(0 17 31 / .5)), url("/assets/glacier-fractures.webp") 100% 54% / cover no-repeat;
  opacity: .72;
}

.audience-cta .wrap {
  position: relative;
}

.audience-cta h2 {
  color: #fff;
}

.audience-cta p {
  max-width: 58ch;
  margin-top: 24px;
  color: #c3dce2;
  font-size: 17px;
  line-height: 1.6;
}

.audience-cta .actions {
  margin-top: 30px;
}

.audience-cta .btn {
  background: #fff;
  color: #00111f;
}

.audience-cta .btn-ghost {
  border-color: rgb(255 255 255 / .42);
  background: transparent;
  color: #fff;
}

/* Legal pages */
.page-legal .legal-hero { min-height: 58svh; }

.page-legal .legal-hero::before {
  background:
    linear-gradient(90deg, #f7fcfe 0 46%, rgb(247 252 254 / .54) 68%, rgb(247 252 254 / .2)),
    url("/assets/glacier-threshold.webp") 92% 46% / min(980px, 66vw) auto no-repeat;
}

.legal-section { background: #fff; }

.legal-layout {
  display: grid;
  align-items: start;
  grid-template-columns: minmax(180px, .55fr) minmax(0, 2.2fr);
  gap: clamp(48px, 8vw, 128px);
}

.legal-index {
  position: sticky;
  top: 112px;
  display: grid;
  border-top: 1px solid var(--line-strong);
}

.legal-index a {
  min-height: 46px;
  display: flex;
  align-items: center;
  border-bottom: 1px solid var(--line);
  color: var(--ink-3);
  font-size: 12px;
  text-decoration: none;
}

.legal-index a:hover { color: var(--accent-ink); }
.legal-copy { max-width: var(--w-prose, 68ch); }

.legal-copy > section {
  padding-block: 0 52px;
}

.legal-copy > section + section {
  border-top: 1px solid var(--line);
  padding-top: 52px;
}

.legal-copy h2 {
  max-width: 18ch;
  font-size: clamp(30px, 3.2vw, 46px);
}

.legal-copy h3 {
  margin-top: 28px;
  color: var(--ink-1);
  font-size: 17px;
}

.legal-copy p,
.legal-copy li {
  color: var(--ink-2);
  font-size: 16px;
  line-height: 1.7;
}

.legal-copy h2 + p,
.legal-copy h2 + ul,
.legal-copy h3 + p,
.legal-copy p + p { margin-top: 18px; }

.legal-copy ul {
  display: grid;
  gap: 10px;
  margin-top: 18px;
  padding-left: 20px;
}

.legal-copy a {
  color: var(--accent-ink);
  font-weight: 620;
}

/* The shared inset footer is defined with the final graphite visual layer. */

.page-not-found .secondary-hero {
  min-height: calc(100svh - 78px);
  align-items: center;
}

.page-not-found .secondary-hero::before {
  background:
    linear-gradient(90deg, #f7fcfe 0 42%, rgb(247 252 254 / .48)),
    url("/assets/glacier-threshold.webp") 90% 44% / min(1050px, 72vw) auto no-repeat;
}

.page-not-found .secondary-hero::after {
  display: none;
}

.page-not-found .err {
  min-height: auto;
  place-items: start;
  text-align: left;
}

.page-not-found .err h1 {
  max-width: 11ch;
}

.page-not-found .err .actions {
  justify-content: flex-start;
}

@media (max-height: 820px) and (min-width: 1121px) {
  .secondary-header .navbar {
    min-height: 72px;
  }
}

@media (max-width: 1080px) {
  .question-field { min-height: 740px; }
  .role-question { width: 31%; }
  .evidence-core { width: 200px; }
  .source-rail { grid-template-columns: repeat(3, 1fr); }
  .role-lens { grid-template-columns: 72px minmax(0, .9fr) minmax(310px, 1.1fr); }
}

/* Match the homepage shell exactly: tabs stay tabs through 1120px, then both
   shells collapse to the same full-height navigation treatment. */
@media (max-width: 1120px) {
  .secondary-header .navbar {
    min-height: 74px;
  }

  .secondary-header .nav-links {
    position: fixed;
    left: 0;
    right: 0;
    top: 74px;
    height: calc(100dvh - 74px);
    min-height: 0;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    padding: 28px var(--gutter) calc(52px + env(safe-area-inset-bottom));
    border-top: 1px solid var(--line);
    background: #fff;
    overflow-y: auto;
    overscroll-behavior: contain;
    opacity: 0;
    pointer-events: none;
    transform: translateY(-10px);
    visibility: hidden;
    transition:
      opacity 180ms ease,
      transform 220ms cubic-bezier(.16,1,.3,1),
      visibility 0s linear 220ms;
  }

  .secondary-header.menu-open .nav-links {
    opacity: 1;
    pointer-events: auto;
    transform: none;
    visibility: visible;
    transition-delay: 0s;
  }

  .secondary-header .nav-links a:not(.btn) {
    display: flex;
    min-height: 58px;
    justify-content: space-between;
    padding: 0;
    border-bottom: 1px solid var(--line);
    border-radius: 0;
    font-size: 17px;
    font-weight: 580;
  }

  .secondary-header .nav-links .btn {
    margin: 24px 0 0;
  }

  .secondary-menu {
    display: grid;
    place-items: center;
    margin-left: auto;
  }
}

@media (max-width: 900px) {
  .secondary-hero { min-height: 66svh; }
  .secondary-hero::before { background-position: 92% 55%; background-size: 1050px auto; opacity: .48; }
  .secondary-hero-dark::before { background-position: 62% 55%; background-size: cover; opacity: .9; }
  .secondary-hero .wrap { padding-block: 100px 86px; }
  .secondary-body h1 { font-size: clamp(50px, 11vw, 78px); }
  .secondary-body section { padding-block: 90px; }
  .role-intro,
  .spine-head,
  .boundary-grid { grid-template-columns: 1fr; }
  .role-lens { grid-template-columns: 60px 1fr; }
  .role-evidence { grid-column: 2; }
  .role-lens-featured { margin-inline: calc(var(--gutter) * -1); }
}

@media (max-width: 720px) {
  .secondary-header .nav-links { min-height: 0; }
  .secondary-header .nav-brand .wm,
  .secondary-header .nav-brand img,
  .secondary-header .nav-brand .brand-lockup { width: 190px; height: auto; }
  .secondary-hero { min-height: auto; }
  .secondary-hero .wrap { padding-block: 84px 72px; }
  .secondary-hero::before { background-position: 72% 40%; background-size: 820px auto; }
  .secondary-hero-dark::before { background-position: 58% 50%; background-size: auto 100%; }
  .secondary-body h1 { max-width: 13ch; font-size: clamp(46px, 14vw, 67px); }
  .hero-proofline { display: grid; grid-template-columns: 1fr 1fr; }
  .hero-proofline span { padding-inline: 11px; font-size: 11px; }
  .question-field { min-height: 0; display: grid; gap: 10px; padding: 168px 0 24px; background: none; }
  .question-lines { display: none; }
  .evidence-core { top: 26px; width: 132px; }
  .evidence-core strong { font-size: 15px; }
  .evidence-core small { display: none; }
  .evidence-core::before { inset: 11px; }
  .evidence-core::after { inset: 25px; }
  .role-question { position: relative; inset: auto; width: 100%; min-height: 0; padding: 18px; }
  .role-question strong { font-size: 15px; }
  .role-intro { margin-bottom: 44px; }
  .role-lens { grid-template-columns: 1fr; gap: 18px; padding-block: 54px; }
  .role-evidence { grid-column: 1; margin-top: 12px; }
  .role-evidence dl > div { grid-template-columns: 1fr; gap: 6px; }
  .role-lens-featured { margin-inline: calc(var(--gutter) * -1); padding-inline: var(--gutter); }
  .source-rail { grid-template-columns: 1fr 1fr; }
  .source-rail div { min-height: 150px; }
  .legal-layout { grid-template-columns: 1fr; gap: 52px; }
  .legal-index { position: static; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .legal-index a:nth-child(odd) { border-right: 1px solid var(--line); }
  .legal-copy p,
  .legal-copy li { font-size: 15px; }
}

@media (prefers-reduced-motion: reduce) {
  .secondary-header .nav-brand::after,
  .question-lines path,
  .evidence-core::before,
  .evidence-core::after {
    animation: none !important;
  }
}

@media (forced-colors: active) {
  .secondary-header,
  .secondary-hero,
  .role-lens-featured,
  .audience-cta {
    forced-color-adjust: auto;
  }
}

/* ---- Dark-surface accents ---------------------------------------------
   --accent-ink is a TEXT colour tuned for light surfaces. Two sections on
   /who-its-for/ are navy, and there it measures 3.10:1 and 3.23:1. Darkening
   the token site-wide fixed 19 failures on light surfaces and made these two
   worse, which is the tell that they were always on the wrong side of it.
   --brand-bright is site.css's documented dark-surface accent and measures
   7.03:1 on --navy.                                                        */
.audience-cta .label,
.role-lenses .role-link span {
  color: var(--brand-bright);
}

/* ========================================================================
   Filing Chamber replacement layer
   ------------------------------------------------------------------------
   The homepage moved from the pale glacier campaign into a graphite evidence
   room with warm-paper reading surfaces. Interior pages keep their mature
   information architecture, but share that same shell and reading cadence.
   This final layer is intentionally additive so route behavior, anchors,
   calculators, document tables, and page-specific layouts remain untouched.
   ====================================================================== */

.secondary-body {
  --canvas: #f2f3ef;
  --canvas-raised: #fcfdfc;
  --canvas-sunken: #e5eae7;
  --ink-1: #15262c;
  --ink-2: #2f444a;
  --ink-3: #45595e;
  --ink-4: #53666b;
  --line-subtle: #d8e0dd;
  --line: #bbc8c7;
  --line-strong: #91a6a8;
  --field-line: #6b7f80;
  --brand-500: #0E7E9B;
  --brand-bright: #70d7ed;
  --brand-glow: rgb(50 181 216 / .56);
  --brand-ring: rgb(50 181 216 / .2);
  --accent-ink: #0b6e83;
  --accent-solid: #0E7E9B;
  --accent-active: #0b6e83;
  --brand-50: #effafd;
  --brand-100: #d9f1f5;
  --brand-200: #b7dfe8;
  --w-page: 1440px;
  --w-prose: 70ch;
  --secondary-hero-art: url("/assets/filing-universe-teal.png");
  --secondary-hero-position: 68% 50%;
  --secondary-hero-mobile-position: 64% 50%;
  background: var(--canvas);
  color: var(--ink-2);
}

.page-cpa { --secondary-hero-art: url("/assets/filing-chamber-hero-teal.png"); }
.page-methodology { --secondary-hero-art: url("/assets/filing-to-record-teal.png"); }
.page-about { --secondary-hero-art: url("/assets/filing-access-teal.png"); }
.page-audiences { --secondary-hero-art: url("/assets/filing-to-record-teal.png"); }
.page-coverage { --secondary-hero-art: url("/assets/filing-universe-teal.png"); }
.page-trust,
.page-security { --secondary-hero-art: url("/assets/filing-trust-teal.png"); }
.page-audit-guide { --secondary-hero-art: url("/assets/filing-threshold-teal.png"); }
.page-sample,
.page-changelog { --secondary-hero-art: url("/assets/filing-lineage.webp"); }
.page-sample { --secondary-hero-position: 64% 50%; }
.page-legal { --secondary-hero-art: url("/assets/filing-access-teal.png"); }

.secondary-body h1,
.secondary-body h2,
.secondary-body h3,
.secondary-body h4 {
  font-family: Archivo, Arial, sans-serif;
  text-wrap: balance;
}

.secondary-body h1,
.secondary-body h2 {
  color: var(--ink-1);
  font-weight: 780;
  letter-spacing: -.04em;
}

.secondary-body h1 {
  max-width: 14ch;
  font-size: clamp(52px, 7vw, 96px);
  line-height: .92;
}

.secondary-body h2 {
  max-width: 21ch;
  font-size: clamp(36px, 4.4vw, 64px);
  line-height: .97;
}

.secondary-body h1 em,
.secondary-body h2 em {
  color: var(--accent-ink);
  font-family: inherit;
  font-style: normal;
  font-weight: inherit;
  letter-spacing: inherit;
}

.secondary-body .label,
.secondary-body .sec-label {
  color: var(--accent-ink);
  font: 680 11px/1.35 Archivo, Arial, sans-serif;
  letter-spacing: .09em;
}

.secondary-body .lede {
  max-width: 64ch;
  color: var(--ink-2);
  font-size: clamp(18px, 1.5vw, 21px);
  line-height: 1.62;
}

.secondary-body main > section:not(.secondary-hero):not(.insights-hero):not(.partner-hero) {
  background-color: var(--canvas);
}

.secondary-body main > section.band {
  background: #e9e6dd;
  border-color: var(--line);
}

.secondary-body section {
  padding-block: clamp(88px, 8.5vw, 136px);
}

/* Compact graphite masthead, shared with the new homepage. */
.secondary-body .secondary-header,
.secondary-body.page-insights .secondary-header,
.secondary-body.page-partners .secondary-header {
  background: rgb(5 9 11 / .97);
  border-bottom: 1px solid rgb(244 242 234 / .16);
  color: #f4f2ea;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.secondary-body .secondary-header.is-scrolled,
.secondary-body .secondary-header.menu-open,
.secondary-body.page-insights .secondary-header.is-scrolled,
.secondary-body.page-insights .secondary-header.menu-open,
.secondary-body.page-partners .secondary-header.is-scrolled,
.secondary-body.page-partners .secondary-header.menu-open {
  background: rgb(5 9 11 / .99);
  border-bottom-color: rgb(244 242 234 / .2);
}

.secondary-body .secondary-header .navbar {
  min-height: 72px;
}

.secondary-body .secondary-header .nav-brand img,
.secondary-body .secondary-header .nav-brand .wm,
.secondary-body .secondary-header .nav-brand .brand-lockup {
  filter: drop-shadow(0 0 10px rgb(50 181 216 / .12));
}

.secondary-body .secondary-header .nav-brand::after {
  width: 5px;
  height: 5px;
  background: #32b5d8;
  box-shadow: 0 0 0 5px rgb(50 181 216 / .14);
}

.secondary-body .secondary-header .nav-links a:not(.btn),
.secondary-body.page-insights .secondary-header .nav-links a:not(.btn),
.secondary-body.page-partners .secondary-header .nav-links a:not(.btn) {
  color: rgb(244 242 234 / .76);
  font-weight: 600;
}

.secondary-body .secondary-header .nav-links a:not(.btn):hover,
.secondary-body .secondary-header .nav-links a[aria-current="page"] {
  color: #fff;
}

.secondary-body .secondary-header .nav-links a[aria-current="page"]::after {
  background: #32b5d8;
}

.secondary-body .secondary-header.has-product-open {
  background: rgb(5 9 11 / .99);
  border-bottom-color: rgb(244 242 234 / .2);
}

.secondary-body .nav-product-disclosure {
  position: relative;
  flex: 0 0 auto;
}

.secondary-body .nav-product-disclosure > summary {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding-inline: 13px;
  color: rgb(244 242 234 / .76);
  font-size: 13px;
  font-weight: 600;
  list-style: none;
  white-space: nowrap;
  cursor: pointer;
  transition: color 180ms ease;
}

.secondary-body .nav-product-disclosure > summary::-webkit-details-marker {
  display: none;
}

.secondary-body .nav-product-disclosure > summary:hover,
.secondary-body .nav-product-disclosure > summary:focus-visible {
  color: #fff;
}

.secondary-body .nav-product-disclosure > summary:focus-visible {
  outline: 2px solid transparent;
  outline-offset: 2px;
  box-shadow: 0 2px 0 #70d7ed;
}

.secondary-body .nav-product-disclosure[open] > summary {
  color: #70d7ed;
}

.secondary-body .nav-product-chevron {
  width: 6px;
  height: 6px;
  border-right: 1px solid currentColor;
  border-bottom: 1px solid currentColor;
  transform: translateY(-2px) rotate(45deg);
  transition: transform 220ms cubic-bezier(.16,1,.3,1);
}

.secondary-body .nav-product-disclosure[open] .nav-product-chevron {
  transform: translateY(2px) rotate(225deg);
}

.secondary-body .nav-product-panel {
  position: absolute;
  z-index: 12;
  top: calc(100% + 24px);
  left: 50%;
  width: 330px;
  display: grid;
  gap: 0;
  margin: 0;
  padding: 25px 35px;
  border: 1px solid #e9eaec;
  border-radius: 3px;
  background: #fff;
  box-shadow: 0 16px 38px rgb(5 9 11 / .08), 0 3px 10px rgb(5 9 11 / .04);
  color: #0d1417;
  list-style: none;
  opacity: 0;
  pointer-events: none;
  transform: translate3d(-50%, -12px, 0) scale(.985);
  transform-origin: 50% 0;
  visibility: hidden;
  transition:
    opacity 180ms ease,
    transform 280ms cubic-bezier(.16,1,.3,1),
    visibility 0s linear 280ms;
}

.secondary-body .nav-product-panel::before {
  content: "";
  position: absolute;
  right: 0;
  bottom: 100%;
  left: 0;
  height: 24px;
}

.secondary-body .nav-product-panel::after {
  display: none;
}

.secondary-body .nav-product-disclosure[open] > .nav-product-panel {
  opacity: 1;
  pointer-events: auto;
  transform: translate3d(-50%, 0, 0) scale(1);
  visibility: visible;
  transition-delay: 0s;
}

.secondary-body .nav-product-disclosure[open] > .nav-product-panel::after {
  transform: scaleX(1);
}

.secondary-body .secondary-header .nav-product-panel .nav-product-link {
  min-height: 50px;
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  padding: 0;
  border-radius: 2px;
  color: #0d1417;
  white-space: normal;
  transition: background-color 160ms ease, color 160ms ease;
}

.secondary-body .secondary-header .nav-product-panel .nav-product-link::after {
  display: none;
}

.secondary-body .secondary-header .nav-product-panel .nav-product-link:hover,
.secondary-body .secondary-header .nav-product-panel .nav-product-link:focus-visible,
.secondary-body .secondary-header .nav-product-panel .nav-product-link[aria-current="page"] {
  background: #f6f7f7;
  color: #0a4e63;
}

.secondary-body .secondary-header .nav-product-panel .nav-product-link:focus-visible {
  outline: 2px solid #116c88;
  outline-offset: 2px;
}

.secondary-body .nav-product-icon {
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  border: 1px solid #e9eaec;
  border-radius: 2px;
  background: #f6f6f6;
  color: #4b4f52;
  transition: border-color 160ms ease, background-color 160ms ease, transform 220ms cubic-bezier(.16,1,.3,1);
}

.secondary-body .nav-product-icon svg {
  width: 16px;
  height: 16px;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.6;
}

.secondary-body .nav-product-link:hover .nav-product-icon,
.secondary-body .nav-product-link:focus-visible .nav-product-icon {
  border-color: #dfe7e8;
  background: #eef6f7;
  color: #0a4e63;
}

.secondary-body .nav-product-copy,
.secondary-body .nav-product-copy strong {
  display: block;
  min-width: 0;
}

.secondary-body .nav-product-copy strong {
  font-size: 16px;
  font-weight: 500;
  letter-spacing: -.01em;
  line-height: 1.25;
}

.secondary-body .secondary-header .btn-dark,
.secondary-body.page-insights .secondary-header .btn-dark,
.secondary-body.page-partners .secondary-header .btn-dark {
  border-color: #116c88;
  background: #116c88;
  color: #fff;
}

.secondary-body .secondary-menu {
  border-color: rgb(244 242 234 / .24);
  color: #f4f2ea;
}

/* A photographic masthead carries orientation; paper begins below it. */
.secondary-body .secondary-hero {
  min-height: clamp(560px, 72svh, 780px);
  background: #05090b;
  border-color: rgb(244 242 234 / .16);
  color: #f4f2ea;
}

.secondary-body .secondary-hero::before,
.secondary-body .secondary-hero-dark::before,
.secondary-body .audience-convergence::before,
.secondary-body .page-not-found .secondary-hero::before {
  inset: 0;
  background:
    linear-gradient(90deg, #05090b 0%, rgb(5 9 11 / .96) 34%, rgb(5 9 11 / .56) 62%, rgb(5 9 11 / .24) 100%),
    var(--secondary-hero-art) var(--secondary-hero-position) / cover no-repeat;
  opacity: 1;
}

.secondary-body .secondary-hero::after,
.secondary-body .secondary-hero-dark::after {
  top: 0;
  right: 30%;
  bottom: 0;
  left: auto;
  width: 1px;
  height: auto;
  background: #70d7ed;
  box-shadow: 0 0 22px 5px rgb(50 181 216 / .36);
  opacity: .66;
}

.secondary-body .secondary-hero .wrap {
  padding-block: clamp(118px, 13vw, 184px) clamp(84px, 9vw, 128px);
}

.secondary-body .secondary-hero h1,
.secondary-body .secondary-hero h1 em,
.secondary-body .secondary-hero-dark h1,
.secondary-body .secondary-hero-dark h1 em {
  max-width: 12ch;
  color: #f4f2ea;
}

.secondary-body .secondary-hero h1 em,
.secondary-body .secondary-hero-dark h1 em {
  color: #70d7ed;
}

.secondary-body .secondary-hero .lede,
.secondary-body .secondary-hero-dark .lede {
  max-width: 56ch;
  color: rgb(244 242 234 / .72);
}

.secondary-body .secondary-hero .label,
.secondary-body .secondary-hero .sec-label,
.secondary-body .secondary-hero-dark .label {
  color: #70d7ed;
}

@media (min-width: 721px) {
  .secondary-body.page-about .secondary-hero h1 {
    max-width: 15ch;
  }
}

@keyframes secondary-chamber-settle {
  from {
    opacity: .58;
    filter: blur(5px);
    transform: scale(1.018);
  }
  to {
    opacity: 1;
    filter: blur(0);
    transform: scale(1);
  }
}

@keyframes secondary-reading-line {
  from { opacity: 0; transform: scaleY(.18); }
  to { opacity: .66; transform: scaleY(1); }
}

@media (prefers-reduced-motion: no-preference) {
  .secondary-body .secondary-hero::before,
  .secondary-body .secondary-hero-dark::before {
    transform-origin: 72% 50%;
    animation: secondary-chamber-settle 1.25s cubic-bezier(.2, .72, .2, 1) both;
  }

  .secondary-body .secondary-hero::after,
  .secondary-body .secondary-hero-dark::after {
    transform-origin: 50% 50%;
    animation: secondary-reading-line 1s cubic-bezier(.2, .72, .2, 1) 180ms both;
  }
}

.secondary-body .hero-proofline span {
  min-height: 40px;
  border-color: rgb(244 242 234 / .22);
  border-radius: 0;
  background: rgb(5 9 11 / .72);
  color: rgb(244 242 234 / .76);
}

/* Open, hairline-based long-form layouts. */
.secondary-body .split,
.secondary-body .trust-split {
  gap: clamp(48px, 7vw, 112px);
}

.secondary-body .trust-copy,
.secondary-body .doc-body,
.secondary-body .legal-copy {
  max-width: 74ch;
}

.secondary-body .trust-copy > p,
.secondary-body .doc-body p,
.secondary-body .doc-body li,
.secondary-body .legal-copy p,
.secondary-body .legal-copy li,
.secondary-body .statement,
.secondary-body .deflist p {
  color: var(--ink-2);
  font-size: 17px;
  line-height: 1.72;
}

.secondary-body .trust-copy > p,
.secondary-body .doc-body p,
.secondary-body .legal-copy p {
  max-width: 70ch;
}

.secondary-body .trust-ledger,
.secondary-body .deflist,
.secondary-body .evidence-rows {
  border-color: var(--line-strong);
}

.secondary-body .trust-ledger > div,
.secondary-body .deflist > div,
.secondary-body .evidence-rows > div {
  border-color: var(--line);
  background: transparent;
}

.secondary-body .trust-ledger dt,
.secondary-body .deflist .idx,
.secondary-body .evidence-rows time {
  color: var(--accent-ink);
}

.secondary-body .record,
.secondary-body .universe,
.secondary-body .callout,
.secondary-body .cta,
.secondary-body .lin,
.secondary-body .truth-note,
.secondary-body .sample-shell,
.secondary-body .sample-rail,
.secondary-body .sample-main {
  border-radius: 2px;
  box-shadow: none;
}

.secondary-body .record,
.secondary-body .universe,
.secondary-body .callout,
.secondary-body .truth-note {
  border-color: var(--line-strong);
  background: #fffefa;
}

.secondary-body .cta {
  border-top-color: #32b5d8;
  border-right-color: var(--line-strong);
  border-bottom-color: var(--line-strong);
  border-left-color: var(--line-strong);
  background: #fffefa;
}

.secondary-body .cta::after {
  display: none;
}

.secondary-body .lineage,
.secondary-body .carry {
  border-color: var(--line-strong);
  background: var(--line);
}

.secondary-body .lin,
.secondary-body .carry-row {
  background: #fffefa;
}

.secondary-body .lin.derived,
.secondary-body .carry-out {
  background: #eefaff;
}

.secondary-body .btn-dark,
.secondary-body .btn-primary {
  border-color: #116c88;
  background: #116c88;
  color: #fff;
}

.secondary-body .btn-dark:hover,
.secondary-body .btn-primary:hover {
  border-color: #0f6883;
  background: #0f6883;
  color: #fff;
}

.secondary-body .text-action,
.secondary-body .role-link,
.secondary-body .trust-copy a,
.secondary-body .legal-copy a {
  color: var(--accent-ink);
}

/* Methodology becomes a literal reading room: dark index, warm document. */
.secondary-body.page-methodology .doc {
  align-items: start;
  gap: clamp(48px, 7vw, 112px);
}

.secondary-body.page-methodology .toc {
  top: 104px;
  padding: 26px 24px;
  border: 1px solid #273236;
  border-top-color: #32b5d8;
  border-radius: 2px;
  background: #11191c;
}

.secondary-body.page-methodology .toc a {
  border-color: rgb(244 242 234 / .18);
  color: rgb(244 242 234 / .72);
}

.secondary-body.page-methodology .toc a:hover,
.secondary-body.page-methodology .toc a.is-active,
.secondary-body.page-methodology .toc a[aria-current="location"] {
  border-color: #32b5d8;
  color: #fff;
}

.secondary-body.page-methodology .doc-body h2 {
  max-width: 20ch;
  margin-top: 88px;
  padding-top: 28px;
  border-top: 1px solid var(--line-strong);
  font-size: clamp(34px, 3.8vw, 52px);
  line-height: .98;
}

.secondary-body.page-methodology .doc-body h2:first-of-type {
  margin-top: 48px;
}

.secondary-body .quote {
  padding-left: 24px;
  border-left: 1px solid #32b5d8;
  color: var(--ink-1);
  font-size: clamp(20px, 2vw, 27px);
  line-height: 1.48;
}

/* Trust, coverage, and sample data read as registers rather than cards. */
.secondary-body .trust-index {
  gap: 0;
  border-block: 1px solid var(--line-strong);
}

.secondary-body .trust-index > div {
  border-color: var(--line);
  background: transparent;
}

.secondary-body .coverage-table,
.secondary-body .coverage-table th,
.secondary-body .coverage-table td {
  border-color: var(--line);
}

.secondary-body .coverage-table th {
  background: #11191c;
  color: #f4f2ea;
}

.secondary-body .sample-shell {
  border-color: var(--line-strong);
  background: var(--line);
}

.secondary-body .sample-rail {
  background: #11191c;
  color: #f4f2ea;
}

.secondary-body .sample-rail h2,
.secondary-body .sample-rail strong {
  color: #f4f2ea;
}

.secondary-body .sample-rail p,
.secondary-body .sample-rail a,
.secondary-body .sample-rail span {
  color: rgb(244 242 234 / .7);
}

.secondary-body .sample-main {
  background: #fffefa;
}

/* Audience emphasis stays dark, but loses the old cyan campaign wash. */
.secondary-body .role-lens-featured,
.secondary-body .evidence-spine,
.secondary-body .audience-cta,
.secondary-body .professional-boundary {
  background-color: #080d0f;
  color: #f4f2ea;
}

.secondary-body .role-lens-featured h2,
.secondary-body .role-lens-featured h3,
.secondary-body .evidence-spine h2,
.secondary-body .audience-cta h2,
.secondary-body .professional-boundary h2 {
  color: #f4f2ea;
}

.secondary-body .role-lens-featured .role-number,
.secondary-body .role-lenses .role-link span,
.secondary-body .audience-cta .label {
  color: #70d7ed;
}

/* Blog and partner pages load their own CSS after this file. The extra body
   class keeps these shell decisions authoritative without !important. */
.secondary-body.page-insights .insights-hero,
.secondary-body.page-partners .partner-hero {
  background-color: #05090b;
  color: #f4f2ea;
}

.secondary-body.page-insights .insights-hero h1,
.secondary-body.page-insights .insights-hero .lede,
.secondary-body.page-partners .partner-hero h1,
.secondary-body.page-partners .partner-hero .lede {
  color: #f4f2ea;
}

.secondary-body.page-insights .insights-hero .label,
.secondary-body.page-partners .partner-hero .label {
  color: #70d7ed;
}

/* Legal copy stays deliberately quiet and highly readable. */
.secondary-body.page-legal .legal-hero {
  min-height: 56svh;
}

.secondary-body .legal-section {
  background: var(--canvas);
}

.secondary-body .legal-index {
  border: 1px solid var(--line-strong);
  border-top-color: #32b5d8;
  border-radius: 2px;
  background: #fffefa;
}

.secondary-body .legal-copy > section {
  padding-block: 34px;
}

.secondary-body .legal-copy h2 {
  max-width: 22ch;
  font-size: clamp(30px, 3.4vw, 46px);
}

/* Inset graphite footer: the ROLAI-scale destination translated to the
   Filing Chamber's sharper geometry and company teal. */
.secondary-body .site-footer {
  position: relative;
  padding: 40px 0 20px;
  border-top: 0;
  background: #030709;
  color: #f4f2ea;
}

.secondary-body .footer-panel {
  position: relative;
  isolation: isolate;
  width: min(1480px, calc(100% - 48px));
  margin-inline: auto;
  overflow: hidden;
  padding: clamp(40px, 5vw, 76px) clamp(28px, 5vw, 72px) 28px;
  border: 1px solid rgb(112 215 237 / .16);
  border-radius: 3px;
  background: #081215;
  box-shadow: 0 28px 64px -34px rgb(0 0 0 / .92);
}

.secondary-body .footer-panel::before {
  content: "";
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  width: clamp(170px, 24vw, 360px);
  height: 2px;
  background: linear-gradient(90deg, #70d7ed, rgb(112 215 237 / 0));
  box-shadow: 16px 12px 36px -18px rgb(50 181 216 / .62);
}

.secondary-body .footer-primary,
.secondary-body .footer-audiences,
.secondary-body .footer-bottom {
  position: relative;
  z-index: 1;
}

.secondary-body .footer-primary {
  display: grid;
  grid-template-columns: minmax(320px, .92fr) minmax(560px, 1.18fr);
  gap: clamp(56px, 7vw, 120px);
  align-items: start;
  padding-bottom: 48px;
}

.secondary-body .footer-brand {
  display: inline-flex;
  width: min(242px, 100%);
  min-height: 44px;
  align-items: center;
  text-decoration: none;
}

.secondary-body .footer-brand .brand-lockup {
  display: block;
  width: 242px;
  height: auto;
  mix-blend-mode: normal;
}

.secondary-body .footer-kicker {
  margin: 32px 0 12px;
  color: #70d7ed;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .09em;
  line-height: 1.4;
  text-transform: uppercase;
}

.secondary-body .footer-pitch h2 {
  max-width: 15ch;
  margin: 0;
  color: #f4f2ea;
  font-family: Archivo, Arial, sans-serif;
  font-size: clamp(34px, 3.2vw, 48px);
  font-weight: 650;
  letter-spacing: -.04em;
  line-height: 1.02;
}

.secondary-body .footer-pitch h2 span {
  color: #70d7ed;
}

.secondary-body .footer-summary {
  max-width: 54ch;
  margin: 22px 0 0;
  color: rgb(244 242 234 / .72);
  font-size: 14px;
  line-height: 1.65;
}

.secondary-body .footer-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 30px;
}

.secondary-body .footer-button {
  display: inline-flex;
  min-height: 50px;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
  padding: 0 18px;
  border: 1px solid rgb(244 242 234 / .28);
  border-radius: 2px;
  color: #f4f2ea;
  font-size: 13px;
  font-weight: 680;
  line-height: 1.2;
  text-decoration: none;
  transition: transform 180ms cubic-bezier(.16, 1, .3, 1), border-color 180ms ease, background-color 180ms ease, box-shadow 180ms ease;
}

.secondary-body .footer-button-primary {
  border-color: #116c88;
  background: #116c88;
  box-shadow: 0 16px 30px -20px rgb(17 108 136 / .92);
  color: #fff;
}

.secondary-body .footer-button:hover {
  border-color: rgb(112 215 237 / .68);
  background: rgb(112 215 237 / .07);
  color: #fff;
  transform: translateY(-2px);
}

.secondary-body .footer-button-primary:hover {
  border-color: #0f6883;
  background: #0f6883;
  box-shadow: 0 10px 20px -16px rgb(17 108 136 / .8);
  transform: scale(.99);
}

.secondary-body .footer-button > span:last-child {
  transition: transform 180ms cubic-bezier(.16, 1, .3, 1);
}

.secondary-body .footer-button:hover > span:last-child {
  transform: translateX(2px);
}

.secondary-body .footer-nav {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(22px, 3vw, 44px);
}

.secondary-body .footer-nav-group {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.secondary-body .footer-nav h3 {
  margin: 0 0 14px;
  color: rgb(244 242 234 / .5);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .08em;
  line-height: 1.4;
  text-transform: uppercase;
}

.secondary-body .footer-nav ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.secondary-body .footer-nav li {
  margin: 0;
}

.secondary-body .footer-nav a,
.secondary-body .footer-audiences a {
  color: rgb(244 242 234 / .76);
  font-size: 13px;
  text-decoration: none;
  transition: color 160ms ease;
}

.secondary-body .footer-nav a {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
}

.secondary-body .footer-nav a:hover,
.secondary-body .footer-audiences a:hover {
  color: #70d7ed;
}

.secondary-body .footer-nav a[aria-current] {
  color: #70d7ed;
  text-decoration: underline;
  text-decoration-color: rgb(112 215 237 / .5);
  text-underline-offset: .42em;
}

.secondary-body .footer-audiences {
  display: flex;
  min-height: 64px;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px clamp(20px, 3vw, 42px);
  padding-block: 10px;
  border-top: 1px solid rgb(244 242 234 / .14);
}

.secondary-body .footer-audiences > span {
  color: #70d7ed;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.secondary-body .footer-audiences a {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
}

.secondary-body .footer-bottom {
  display: flex;
  justify-content: space-between;
  gap: 48px;
  align-items: flex-end;
  padding-top: 22px;
  border-top: 1px solid rgb(244 242 234 / .14);
  color: rgb(244 242 234 / .58);
  font-size: 11px;
  line-height: 1.6;
}

.secondary-body .footer-bottom p {
  max-width: 108ch;
  margin: 0;
  color: inherit;
  font-size: inherit;
}

.secondary-body .footer-bottom > span {
  white-space: nowrap;
}

.secondary-body .site-footer :focus-visible {
  outline: 3px solid #70d7ed;
  outline-offset: 4px;
  box-shadow: none;
}

@media (max-width: 1120px) {
  .secondary-body .secondary-header .navbar {
    min-height: 68px;
  }

  .secondary-body .secondary-header .nav-links,
  .secondary-body.page-insights .secondary-header .nav-links,
  .secondary-body.page-partners .secondary-header .nav-links {
    top: 68px;
    height: calc(100dvh - 68px);
    border-color: rgb(244 242 234 / .18);
    background: #05090b;
  }

  .secondary-body .secondary-header .nav-links a:not(.btn) {
    border-color: rgb(244 242 234 / .16);
    color: #f4f2ea;
  }

  .secondary-body .secondary-header .nav-product-disclosure {
    width: 100%;
    border-bottom: 1px solid rgb(244 242 234 / .16);
  }

  .secondary-body .secondary-header .nav-product-disclosure > summary {
    width: 100%;
    min-height: 58px;
    justify-content: space-between;
    padding: 0;
    color: #f4f2ea;
    font-size: 17px;
    font-weight: 580;
  }

  .secondary-body .secondary-header .nav-product-panel {
    position: static;
    width: 100%;
    gap: 0;
    margin: 0;
    padding: 0 0 12px 18px;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    transform: none;
  }

  .secondary-body .secondary-header .nav-product-panel::before,
  .secondary-body .secondary-header .nav-product-panel::after {
    display: none;
  }

  .secondary-body .secondary-header .nav-product-panel .nav-product-link {
    min-height: 58px;
    display: grid;
    grid-template-columns: 36px minmax(0, 1fr);
    gap: 12px;
    padding: 10px 0;
    border-bottom: 1px solid rgb(244 242 234 / .12);
    color: #f4f2ea;
    font-size: 14px;
  }

  .secondary-body .secondary-header .nav-product-panel .nav-product-link:hover,
  .secondary-body .secondary-header .nav-product-panel .nav-product-link:focus-visible,
  .secondary-body .secondary-header .nav-product-panel .nav-product-link[aria-current="page"] {
    background: transparent;
    color: #70d7ed;
  }

  .secondary-body .secondary-header .nav-product-icon {
    width: 36px;
    height: 36px;
    border-color: rgb(244 242 234 / .24);
    background: rgb(244 242 234 / .04);
    color: #32b5d8;
  }

  .secondary-body .secondary-header .nav-product-copy strong {
    font-size: 14px;
  }

}

@media (max-width: 900px) {
  .secondary-body .secondary-hero {
    min-height: 620px;
  }

  .secondary-body .secondary-hero::before,
  .secondary-body .secondary-hero-dark::before,
  .secondary-body .audience-convergence::before {
    background:
      linear-gradient(180deg, rgb(5 9 11 / .97) 0%, rgb(5 9 11 / .82) 48%, rgb(5 9 11 / .54) 100%),
      var(--secondary-hero-art) var(--secondary-hero-mobile-position) / cover no-repeat;
  }

  .secondary-body .secondary-hero::after,
  .secondary-body .secondary-hero-dark::after {
    right: 28%;
  }

  .secondary-body h1 {
    font-size: clamp(48px, 11vw, 76px);
  }

  .secondary-body h2 {
    font-size: clamp(34px, 7vw, 54px);
  }
}

@media (prefers-reduced-motion: reduce) {
  .secondary-body .secondary-hero::before,
  .secondary-body .secondary-hero::after,
  .secondary-body .secondary-hero-dark::before,
  .secondary-body .secondary-hero-dark::after {
    animation: none;
  }
}

@media (max-width: 720px) {
  .secondary-body {
    --gutter: 20px;
  }

  .secondary-body section {
    padding-block: 82px;
  }

  .secondary-body .secondary-hero {
    min-height: 610px;
  }

  .secondary-body .secondary-hero .wrap {
    padding-block: 112px 74px;
  }

  .secondary-body .secondary-hero h1 {
    max-width: 11ch;
    font-size: clamp(43px, 12.4vw, 58px);
  }

  .secondary-body .secondary-hero .lede {
    font-size: 17px;
  }

  .secondary-body .hero-proofline {
    display: block;
    border-top: 1px solid rgb(244 242 234 / .22);
  }

  .secondary-body .hero-proofline span {
    width: 100%;
    min-height: 38px;
    padding-inline: 0;
    border-width: 0 0 1px;
    background: transparent;
  }

  .secondary-body.page-methodology .toc {
    position: static;
    padding: 20px;
  }

  .secondary-body.page-methodology .toc a {
    min-height: 44px;
    display: flex;
    align-items: center;
    padding: 10px 12px;
  }

  .secondary-body.page-methodology .doc-body h2 {
    margin-top: 68px;
  }

  .secondary-body .trust-copy > p,
  .secondary-body .doc-body p,
  .secondary-body .doc-body li,
  .secondary-body .legal-copy p,
  .secondary-body .legal-copy li,
  .secondary-body .statement,
  .secondary-body .deflist p {
    font-size: 16px;
  }

  .secondary-body .legal-index {
    grid-template-columns: 1fr;
  }

  .secondary-body .legal-index a:nth-child(odd) {
    border-right: 0;
  }
}

/* Site-wide supporting-page motion. The hero has its own authored scan; these
   finite reveals only establish reading order lower on the page. */
.secondary-motion-ready .secondary-reveal {
  opacity: .64;
  will-change: opacity, transform, clip-path, filter;
  transition:
    opacity 700ms ease,
    transform 900ms cubic-bezier(.16, 1, .3, 1),
    clip-path 900ms cubic-bezier(.16, 1, .3, 1),
    filter 700ms ease;
}

.secondary-motion-ready .secondary-reveal-rise {
  transform: translate3d(0, 24px, 0);
}

.secondary-motion-ready .secondary-reveal-wipe {
  clip-path: inset(0 0 7% 0);
  filter: blur(2px);
}

.secondary-motion-ready .secondary-reveal.is-revealed {
  opacity: 1;
  transform: none;
  clip-path: inset(0);
  filter: none;
  will-change: auto;
}

@media (max-width: 1180px) {
  .secondary-body .footer-primary {
    grid-template-columns: 1fr;
    gap: 54px;
  }

  .secondary-body .footer-pitch {
    max-width: 680px;
  }
}

@media (max-width: 760px) {
  .secondary-body .site-footer {
    padding-top: 24px;
  }

  .secondary-body .footer-panel {
    width: calc(100% - 24px);
    padding: 36px 24px 24px;
  }

  .secondary-body .footer-primary {
    gap: 42px;
    padding-bottom: 34px;
  }

  .secondary-body .footer-brand,
  .secondary-body .footer-brand .brand-lockup {
    width: 208px;
  }

  .secondary-body .footer-kicker {
    margin-top: 26px;
  }

  .secondary-body .footer-pitch h2 {
    font-size: clamp(32px, 10vw, 42px);
  }

  .secondary-body .footer-nav {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 34px 24px;
  }

  .secondary-body .footer-audiences {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 20px;
    padding-block: 18px;
  }

  .secondary-body .footer-audiences > span {
    grid-column: 1 / -1;
    margin-bottom: 8px;
  }

  .secondary-body .footer-bottom {
    flex-direction: column;
    align-items: flex-start;
    gap: 18px;
  }

}

@media (max-width: 460px) {
  .secondary-body .footer-actions,
  .secondary-body .footer-button {
    width: 100%;
  }

  .secondary-body .footer-nav,
  .secondary-body .footer-audiences {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (prefers-reduced-motion: reduce) {
  .secondary-body .nav-product-panel,
  .secondary-body .secondary-header .nav-product-panel .nav-product-link,
  .secondary-body .nav-product-icon {
    transition: none;
  }

  .secondary-body .footer-button,
  .secondary-body .footer-button > span:last-child,
  .secondary-body .footer-nav a,
  .secondary-body .footer-audiences a {
    transition: none;
  }

  .secondary-reveal,
  .secondary-reveal-rise,
  .secondary-reveal-wipe {
    opacity: 1 !important;
    transform: none !important;
    clip-path: none !important;
    filter: none !important;
    transition: none !important;
  }
}
