    /* ===================================================
       CSS VARIABLES — LOCKED
       =================================================== */
    :root {
      /* LOCKED — do not modify */
      --color-bg-dark: #0F172A;
      --color-bg-light: #F8FAFC;
      --color-accent: #5EEAD4;
      --color-text-dark: #E2E8F0;
      --color-text-light: #0F172A;
      --color-border: rgba(226, 232, 240, 0.16);

      /* DERIVED — computed from locked values */
      --color-bg-dark-elevated: #151e30;                  /* dark +1 stop           */
      --color-text-dark-secondary: rgba(226, 232, 240, 0.55); /* text-dark @ 55%   */
      --color-text-light-secondary: rgba(15, 23, 42, 0.55);   /* text-light @ 55%  */
      --color-border-light: rgba(15, 23, 42, 0.09);           /* text-light @ 9%   */
      --color-accent-muted: rgba(94, 234, 212, 0.10);         /* accent @ 10%      */
      --color-header-bg: rgba(15, 23, 42, 0.97);              /* bg-dark @ 97%     */

      /* TYPOGRAPHY — system sans only */
      --font-stack: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Inter, Arial, sans-serif;

      --text-xs: 0.6875rem;
      --text-sm: 0.875rem;
      --text-base: 1rem;
      --text-lg: 1.125rem;
      --text-xl: 1.25rem;
      --text-2xl: 1.5rem;
      --text-3xl: 2rem;
      --text-4xl: 2.625rem;
      --text-5xl: 3.25rem;

      --weight-regular: 400;
      --weight-medium: 500;
      --weight-semibold: 600;
      --weight-bold: 700;

      /* SPACING */
      --space-2xs: 0.25rem;
      --space-xs: 0.5rem;
      --space-sm: 1rem;
      --space-md: 1.5rem;
      --space-lg: 2.5rem;
      --space-xl: 4rem;
      --space-2xl: 6rem;
      --space-3xl: 8rem;

      /* LAYOUT */
      --container-max: 72rem;
      --container-narrow: 46rem;
      --header-height: 3.5rem;
      --radius: 2px;
    }

    /* ===================================================
       RESET
       =================================================== */
    *,
    *::before,
    *::after {
      box-sizing: border-box;
      margin: 0;
      padding: 0;
    }

    html {
      font-size: 16px;
      scroll-behavior: smooth;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
    }

    body {
      font-family: var(--font-stack);
      font-weight: var(--weight-regular);
      line-height: 1.6;
      color: var(--color-text-light);
      background-color: var(--color-bg-light);
    }

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

    a:focus-visible,
    button:focus-visible {
      outline: 2px solid var(--color-accent);
      outline-offset: 2px;
    }

    ul {
      list-style: none;
    }

    /* ===================================================
       TYPOGRAPHY
       =================================================== */
    h1, h2, h3, h4 {
      font-family: var(--font-stack);
      line-height: 1.15;
      letter-spacing: -0.02em;
    }

    h1 {
      font-size: var(--text-4xl);
      font-weight: var(--weight-bold);
    }

    h2 {
      font-size: var(--text-3xl);
      font-weight: var(--weight-bold);
      margin-bottom: var(--space-md);
    }

    h3 {
      font-size: var(--text-xl);
      font-weight: var(--weight-semibold);
      margin-bottom: var(--space-xs);
    }

    h4 {
      font-size: var(--text-base);
      font-weight: var(--weight-semibold);
      margin-bottom: var(--space-2xs);
    }

    p {
      max-width: 40em;
    }

    .overline {
      font-size: var(--text-xs);
      font-weight: var(--weight-semibold);
      letter-spacing: 0.14em;
      text-transform: uppercase;
      margin-bottom: var(--space-sm);
    }

    /* ===================================================
       LAYOUT
       =================================================== */
    .section {
      padding: var(--space-2xl) 0;
    }

    .container {
      width: 100%;
      max-width: var(--container-max);
      margin: 0 auto;
      padding: 0 var(--space-md);
    }

    .section--dark {
      background-color: var(--color-bg-dark);
      color: var(--color-text-dark);
    }

    .section--dark .overline {
      color: rgba(226, 232, 240, 0.5);
    }

    .section--dark p {
      color: var(--color-text-dark-secondary);
    }

    .section--light {
      background-color: var(--color-bg-light);
      color: var(--color-text-light);
    }

    .section--light .overline {
      color: var(--color-text-light-secondary);
    }

    .section--light p {
      color: var(--color-text-light-secondary);
    }

    .section--narrow .container {
      max-width: var(--container-narrow);
    }

    /* ===================================================
       HEADER — fixed, transparent default, solid on scroll
       =================================================== */
    .site-header {
      position: fixed;
      top: 0;
      left: 0;
      right: 0;
      z-index: 100;
      height: var(--header-height);
      background-color: transparent;
      border-bottom: 1px solid transparent;
      transition: background-color 0.2s, border-color 0.2s;
    }

    .site-header--scrolled {
      background-color: var(--color-header-bg);
      border-bottom-color: var(--color-border);
    }

    .site-header .container {
      display: flex;
      align-items: center;
      justify-content: space-between;
      height: 100%;
    }

    .logo {
      flex-shrink: 0;
      text-decoration: none;
      display: flex;
      align-items: center;
    }

    .logo__img {
      height: 28px;
      width: auto;
      display: block;
    }

    /* ===================================================
       NAVIGATION ADDITIONS — desktop nav
       =================================================== */
    .nav {
      display: none;
      align-items: center;
      gap: var(--space-lg);
    }

    .site-header .nav {
      margin-left: auto;
    }

    .site-header .nav__list {
      justify-content: flex-end;
    }

    .site-header .header__right {
      margin-left: 16px;
    }

    .nav__list {
      display: flex;
      align-items: center;
      gap: var(--space-2xs);
    }

    .nav__link {
      font-size: var(--text-xs);
      font-weight: var(--weight-medium);
      letter-spacing: 0.06em;
      text-transform: uppercase;
      color: var(--color-text-dark-secondary);
      padding: var(--space-xs) var(--space-sm);
      border-bottom: 1px solid transparent;
      transition: color 0.15s, border-color 0.15s;
      text-decoration: none;
      white-space: nowrap;
    }

    .nav__link sub {
      font-size: 0.7em;
      vertical-align: baseline;
      position: relative;
      bottom: -0.15em;
      text-transform: lowercase;
    }

    .nav__link:hover {
      color: var(--color-text-dark);
    }

    .nav__link--active {
      color: var(--color-accent);
      border-bottom-color: var(--color-accent);
    }

    .nav__cta {
      font-size: var(--text-xs);
      font-weight: var(--weight-medium);
      letter-spacing: 0.06em;
      text-transform: uppercase;
      color: var(--color-text-dark-secondary);
      border: 1px solid var(--color-border);
      padding: 0.4em 1em;
      border-radius: var(--radius);
      transition: border-color 0.15s, color 0.15s;
      text-decoration: none;
      white-space: nowrap;
      flex-shrink: 0;
    }

    .nav__cta:hover {
      border-color: rgba(226, 232, 240, 0.32);
      color: var(--color-text-dark);
    }

    /* NAVIGATION ADDITIONS — hamburger button */
    .nav-toggle {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 2rem;
      height: 2rem;
      padding: 0;
      background: none;
      border: none;
      cursor: pointer;
      position: relative;
      flex-shrink: 0;
    }

    .nav-toggle__bar {
      display: block;
      width: 1.125rem;
      height: 1px;
      background-color: var(--color-text-dark);
      position: relative;
      transition: background-color 0.15s;
    }

    .nav-toggle__bar::before,
    .nav-toggle__bar::after {
      content: '';
      position: absolute;
      left: 0;
      width: 100%;
      height: 1px;
      background-color: var(--color-text-dark);
      transition: transform 0.2s;
    }

    .nav-toggle__bar::before {
      top: -5px;
    }

    .nav-toggle__bar::after {
      top: 5px;
    }

    .nav-toggle[aria-expanded="true"] .nav-toggle__bar {
      background-color: transparent;
    }

    .nav-toggle[aria-expanded="true"] .nav-toggle__bar::before {
      top: 0;
      transform: rotate(45deg);
    }

    .nav-toggle[aria-expanded="true"] .nav-toggle__bar::after {
      top: 0;
      transform: rotate(-45deg);
    }

    /* NAVIGATION ADDITIONS — mobile header right group */
    .header__right {
      display: flex;
      align-items: center;
      gap: var(--space-sm);
    }

    .header__mobile-cta {
      font-size: var(--text-xs);
      font-weight: var(--weight-medium);
      letter-spacing: 0.06em;
      text-transform: uppercase;
      color: var(--color-text-dark-secondary);
      border: 1px solid var(--color-border);
      padding: 0.4em 1em;
      border-radius: var(--radius);
      transition: border-color 0.15s, color 0.15s;
      text-decoration: none;
      white-space: nowrap;
    }

    .header__mobile-cta:hover {
      border-color: rgba(226, 232, 240, 0.32);
      color: var(--color-text-dark);
    }

    /* NAVIGATION ADDITIONS — mobile overlay */
    .nav-overlay {
      position: fixed;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      z-index: 99;
      background-color: var(--color-bg-dark);
      padding-top: var(--header-height);
      opacity: 0;
      transform: translateY(-8px);
      pointer-events: none;
      transition: opacity 0.2s, transform 0.2s;
    }

    .nav-overlay[aria-hidden="false"] {
      opacity: 1;
      transform: translateY(0);
      pointer-events: auto;
    }

    .nav-overlay__inner {
      display: flex;
      flex-direction: column;
      padding: var(--space-lg) var(--space-md);
    }

    .nav-overlay__link {
      font-size: var(--text-lg);
      font-weight: var(--weight-medium);
      letter-spacing: 0.02em;
      color: var(--color-text-dark-secondary);
      padding: var(--space-sm) 0;
      border-bottom: 1px solid var(--color-border);
      text-decoration: none;
      transition: color 0.15s;
    }

    .nav-overlay__link:hover,
    .nav-overlay__link--active {
      color: var(--color-accent);
    }

    .nav-overlay__cta {
      display: inline-block;
      margin-top: var(--space-lg);
      font-size: 0.8125rem;
      font-weight: var(--weight-semibold);
      letter-spacing: 0.04em;
      text-transform: uppercase;
      padding: 0.9rem 1.4rem;
      background: rgba(226, 232, 240, 0.06);
      color: rgba(226, 232, 240, 0.92);
      border: 1px solid rgba(226, 232, 240, 0.22);
      border-radius: var(--radius);
      text-decoration: none;
      text-align: center;
      transition: background-color 0.15s, border-color 0.15s;
      align-self: flex-start;
    }

    .nav-overlay__cta:hover {
      background: rgba(226, 232, 240, 0.09);
      border-color: rgba(226, 232, 240, 0.32);
      color: rgba(226, 232, 240, 0.92);
    }

    /* ===================================================
       HERO
       =================================================== */
    .hero {
      position: relative;
      min-height: 100vh;
      display: flex;
      align-items: center;
      overflow: hidden;
      padding: calc(var(--header-height) + var(--space-2xl) + 2rem) 0 var(--space-2xl);
      background-color: var(--color-bg-dark);
      color: var(--color-text-dark);
    }

    .hero .container {
      /* inherits base .container padding — aligns with nav logo */
    }

    .hero__content {
      position: relative;
      z-index: 1;
      max-width: 42rem;
    }

    .hero__grid {
      display: grid;
      grid-template-columns: 1fr;
      align-items: center;
      width: 100%;
    }

    .hero__illus {
      margin: 3rem 0 0;
      padding: 2rem;
      background: rgba(226, 232, 240, 0.04);
      border: 1px solid rgba(226, 232, 240, 0.08);
      border-radius: 6px;
    }

    .hero__illus svg {
      display: block;
      width: 100%;
      height: auto;
    }

    .hero h1 {
      font-size: clamp(2.75rem, 3.8vw, 4.5rem);
      line-height: 1.05;
      letter-spacing: -0.02em;
      margin-bottom: var(--space-md);
      max-width: 22ch;
      text-wrap: balance;
    }

    .hero__lead {
      font-size: var(--text-lg);
      color: var(--color-text-dark-secondary);
      margin-bottom: var(--space-lg);
      max-width: 54ch;
      line-height: 1.7;
    }

    .hero__cta {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 1.25rem;
    }

    .hero__cta-link {
      font-size: var(--text-sm);
      font-weight: var(--weight-medium);
      color: rgba(226, 232, 240, 0.72);
      text-decoration: none;
      border-bottom: 1px solid transparent;
      transition: color 0.15s, border-color 0.15s;
    }

    .hero__cta-link:hover {
      color: var(--color-text-dark);
      border-bottom-color: var(--color-border);
    }

    /* ===================================================
       DIAGNOSTIC
       =================================================== */
    .section--diagnostic {
      background: #F8FAFC;
      color: #1F2937;
      padding: var(--space-2xl) 0;
    }

    .section--diagnostic .overline {
      color: var(--color-text-light-secondary);
    }

    .diagnostic__intro {
      color: var(--color-text-light-secondary);
      max-width: 42rem;
      margin-bottom: var(--space-xl);
    }
    .diagnostic__intro + .diagnostic__intro {
      margin-top: calc(-1 * var(--space-xl) + var(--space-sm));
    }

    .diagnostic__fractures {
      display: flex;
      flex-direction: column;
      gap: var(--space-md);
    }

    /* SVG2 responsive swap: desktop vs mobile */
    .svg2-desktop { display: block; }
    .svg2-mobile  { display: none; }
    @media (max-width: 640px) {
      .svg2-desktop { display: none; }
      .svg2-mobile  { display: block; }
    }

    .fracture {
      position: relative;
    }

    .fracture__label {
      font-size: var(--text-xs);
      font-weight: var(--weight-medium);
      letter-spacing: 0.1em;
      text-transform: uppercase;
      color: var(--color-text-light-secondary);
      margin-bottom: var(--space-xs);
    }

    .fracture__bar {
      height: 3rem;
      background: rgba(15, 23, 42, 0.03);
      border: 1px solid rgba(15, 23, 42, 0.09);
    }

    .fracture--systems .fracture__bar {
      margin-left: 0;
    }

    .fracture--time .fracture__bar {
      margin-left: 2rem;
    }

    .fracture--state .fracture__bar {
      margin-left: 4rem;
    }

    /* ===================================================
       REx ENGINE: infrastructure layer
       =================================================== */
    #rex {
      background: #111827;
      color: rgba(255, 255, 255, 0.68);
      padding-top: 5rem;
      padding-bottom: 4.5rem;
    }

    #rex .overline {
      color: rgba(255, 255, 255, 0.32);
      letter-spacing: 0.16em;
    }

    #rex h2 {
      color: #E9EDF4;
      margin-bottom: var(--space-sm);
    }

    #rex .rex__lead {
      max-width: 40rem;
      color: #B7C0CC;
      margin-bottom: var(--space-lg);
      line-height: 1.7;
      font-size: var(--text-sm);
    }

    #rex .rex__lead + .rex__lead {
      margin-top: calc(var(--space-xs) * -1);
      font-weight: var(--weight-medium);
      color: rgba(255, 255, 255, 0.58);
      margin-bottom: var(--space-2xl);
    }

    /* --- ENGINE MODULE GRID --- */
    #rex .rex__grid {
      display: grid;
      grid-template-columns: 1fr;
      gap: 0.625rem;
    }

    #rex .rex__item {
      padding: var(--space-lg) var(--space-lg);
      background: rgba(255, 255, 255, 0.018);
      border: 1px solid rgba(255, 255, 255, 0.04);
      position: relative;
    }

    /* Left accent micro-rule */
    #rex .rex__item::before {
      content: '';
      position: absolute;
      left: -1px;
      top: var(--space-lg);
      height: 1rem;
      width: 2px;
      background: var(--color-accent);
      opacity: 0.18;
    }

    /* System identifier: pill micro-label with icon */
    #rex .rex__item-label {
      display: inline-flex;
      align-items: center;
      gap: 0.375rem;
      font-size: 0.5625rem;
      font-weight: var(--weight-semibold);
      color: rgba(255, 255, 255, 0.38);
      letter-spacing: 0.12em;
      text-transform: uppercase;
      margin-bottom: var(--space-sm);
      padding: 0.1875rem 0.5rem;
      border: 1px solid rgba(255, 255, 255, 0.06);
      border-radius: 1px;
      background: rgba(255, 255, 255, 0.02);
    }

    #rex .rex__chip-icon {
      width: 0.75rem;
      height: 0.75rem;
      opacity: 0.6;
      flex-shrink: 0;
    }

    #rex .rex__item-title {
      font-size: var(--text-base);
      font-weight: var(--weight-semibold);
      color: #E9EDF4;
      margin-bottom: var(--space-lg);
      letter-spacing: -0.005em;
    }

    /* --- SENTENCE TIERS --- */

    /* Tier A (key claim): elevated, semi-bold, tighter */
    #rex .rex__tierA {
      font-size: 0.9375rem;
      font-weight: var(--weight-medium);
      color: rgba(255, 255, 255, 0.82);
      line-height: 1.55;
      max-width: 44ch;
      margin-bottom: var(--space-sm);
    }

    /* Tier B (supporting): baseline body */
    #rex .rex__tierB {
      font-size: 0.8125rem;
      color: #B7C0CC;
      line-height: 1.7;
      max-width: 48ch;
      margin-bottom: 0;
    }

    #rex .rex__tierB + .rex__tierB {
      margin-top: 0.375rem;
    }

    /* Tier C (deep detail): smaller, recessed, separated */
    #rex .rex__tierC {
      margin-top: var(--space-md);
      padding-top: var(--space-sm);
      padding-left: var(--space-sm);
      border-left: 1px solid rgba(255, 255, 255, 0.05);
      position: relative;
    }

    #rex .rex__tierC p {
      font-size: 0.75rem;
      color: rgba(255, 255, 255, 0.42);
      line-height: 1.8;
      max-width: 52ch;
    }

    #rex .rex__tierC p + p {
      margin-top: 0.3125rem;
    }

    /* --- RISK EXPOSURE DOMAINS --- */
    #rex .rex__domains {
      margin-top: var(--space-xl);
      padding-top: var(--space-lg);
      border-top: 1px solid rgba(255, 255, 255, 0.04);
    }

    #rex .rex__domains-label {
      font-size: 0.5625rem;
      font-weight: var(--weight-semibold);
      color: rgba(255, 255, 255, 0.32);
      letter-spacing: 0.14em;
      text-transform: uppercase;
      margin-bottom: var(--space-xs);
    }

    #rex .rex__domains-intro {
      font-size: 0.8125rem;
      color: rgba(255, 255, 255, 0.52);
      line-height: 1.65;
      max-width: 40rem;
      margin-bottom: var(--space-lg);
    }

    #rex .rex__domains-grid {
      display: grid;
      grid-template-columns: 1fr;
      gap: 1px;
      background: rgba(255, 255, 255, 0.03);
    }

    #rex .rex__domain {
      background: #111827;
      padding: var(--space-sm) var(--space-md);
    }

    #rex .rex__domain-title {
      font-size: 0.75rem;
      font-weight: var(--weight-semibold);
      color: rgba(255, 255, 255, 0.72);
      letter-spacing: -0.005em;
      margin-bottom: 0.1875rem;
    }

    #rex .rex__domain-body {
      font-size: 0.6875rem;
      color: rgba(255, 255, 255, 0.38);
      line-height: 1.65;
      max-width: 48ch;
    }

    /* CTA domain tile */
    #rex .rex__domain--cta {
      border-left: 1px solid rgba(255, 255, 255, 0.06);
    }

    #rex .rex__domain-cta-btn {
      display: inline-flex;
      align-items: center;
      height: 40px;
      margin-top: 14px;
      padding: 0 14px;
      background: rgba(255, 255, 255, 0.06);
      border: 1px solid rgba(255, 255, 255, 0.18);
      border-radius: 2px;
      color: rgba(255, 255, 255, 0.88);
      font-size: 0.6875rem;
      font-family: inherit;
      font-weight: var(--weight-semibold);
      letter-spacing: 0;
      cursor: pointer;
      transition: background-color 0.15s, border-color 0.15s;
    }

    #rex .rex__domain-cta-btn:hover {
      background: rgba(255, 255, 255, 0.10);
      border-color: rgba(255, 255, 255, 0.24);
    }

    #rex .rex__domain-cta-btn:focus-visible {
      outline: 2px solid rgba(110, 231, 183, 0.35);
      outline-offset: 2px;
    }

    /* Modal */
    .modal {
      position: fixed;
      inset: 0;
      z-index: 9000;
      display: flex;
      align-items: center;
      justify-content: center;
    }

    .modal[hidden] {
      display: none;
    }

    .modal__backdrop {
      position: absolute;
      inset: 0;
      background: rgba(0, 0, 0, 0.55);
      backdrop-filter: blur(6px);
      -webkit-backdrop-filter: blur(6px);
    }

    .modal__panel {
      position: relative;
      background: #111827;
      border: 1px solid rgba(255, 255, 255, 0.06);
      border-radius: 2px;
      max-width: 560px;
      width: calc(100% - 48px);
      padding: 2rem 2rem 1.75rem;
      box-shadow: 0 24px 64px rgba(0, 0, 0, 0.5);
    }

    .modal__close {
      position: absolute;
      top: 0.75rem;
      right: 0.75rem;
      background: none;
      border: none;
      color: rgba(255, 255, 255, 0.35);
      font-size: 1.25rem;
      line-height: 1;
      cursor: pointer;
      padding: 0.25rem 0.375rem;
      transition: color 0.15s;
    }

    .modal__close:hover {
      color: rgba(255, 255, 255, 0.6);
    }

    .modal__title {
      font-size: 0.9375rem;
      font-weight: var(--weight-semibold);
      color: #E9EDF4;
      letter-spacing: 0.01em;
      margin-bottom: 0.375rem;
    }

    .modal__desc {
      font-size: 0.75rem;
      color: rgba(255, 255, 255, 0.45);
      line-height: 1.6;
      margin-bottom: 1.5rem;
    }

    .modal__field {
      margin-bottom: 1rem;
    }

    .modal__label {
      display: block;
      font-size: 0.625rem;
      color: rgba(255, 255, 255, 0.4);
      letter-spacing: 0.08em;
      text-transform: uppercase;
      margin-bottom: 0.3125rem;
    }

    .modal__optional {
      text-transform: none;
      letter-spacing: 0;
      color: rgba(255, 255, 255, 0.22);
    }

    .modal__input {
      display: block;
      width: 100%;
      background: rgba(255, 255, 255, 0.03);
      border: 1px solid rgba(255, 255, 255, 0.08);
      border-radius: 1px;
      color: rgba(255, 255, 255, 0.78);
      font-size: 0.8125rem;
      font-family: inherit;
      padding: 0.5rem 0.625rem;
      outline: none;
      transition: border-color 0.15s;
      box-sizing: border-box;
    }

    .modal__input::placeholder {
      color: rgba(255, 255, 255, 0.18);
    }

    .modal__input:focus {
      border-color: rgba(255, 255, 255, 0.18);
    }

    .modal__textarea {
      resize: vertical;
      min-height: 3.5rem;
    }

    .modal__submit {
      margin-top: 0.25rem;
      background: rgba(255, 255, 255, 0.05);
      border: 1px solid rgba(255, 255, 255, 0.08);
      border-radius: 1px;
      color: rgba(255, 255, 255, 0.55);
      font-size: 0.625rem;
      font-family: inherit;
      font-weight: var(--weight-semibold);
      letter-spacing: 0.1em;
      text-transform: uppercase;
      padding: 0.4375rem 1rem;
      cursor: pointer;
      transition: background-color 0.15s, color 0.15s;
    }

    .modal__submit:hover {
      background: rgba(255, 255, 255, 0.08);
      color: rgba(255, 255, 255, 0.7);
    }

    .modal__privacy {
      margin-top: 0.5rem;
      font-size: 0.5625rem;
      color: rgba(255, 255, 255, 0.2);
      letter-spacing: 0.02em;
    }

    /* --- CTA Modal Extensions --- */
    .cta-modal__panel {
      max-height: calc(100vh - 48px);
      max-height: calc(100dvh - 48px);
      overflow-y: auto;
      -webkit-overflow-scrolling: touch;
    }

    .cta-modal__select {
      appearance: none;
      -webkit-appearance: none;
      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' fill='none'%3E%3Cpath d='M1 1l4 4 4-4' stroke='rgba(255,255,255,0.3)' stroke-width='1.2'/%3E%3C/svg%3E");
      background-repeat: no-repeat;
      background-position: right 0.625rem center;
      padding-right: 2rem;
      cursor: pointer;
    }

    .cta-modal__select option {
      background: #111827;
      color: rgba(255,255,255,0.78);
    }

    .cta-modal__fieldset {
      border: none;
      padding: 0;
      margin: 0;
    }
    .cta-modal__fieldset + .modal__field {
      margin-top: 1.5rem;
    }

    .cta-modal__check-group {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 0.375rem 1rem;
      margin-top: 0.25rem;
    }

    .cta-modal__check-label {
      display: flex;
      align-items: baseline;
      gap: 0.375rem;
      font-size: 0.75rem;
      color: rgba(255,255,255,0.55);
      cursor: pointer;
      line-height: 1.5;
    }

    .cta-modal__check-label input[type="checkbox"] {
      flex-shrink: 0;
      width: 0.8125rem;
      height: 0.8125rem;
      accent-color: var(--color-accent, #5CE0D8);
      cursor: pointer;
      margin: 0;
      position: relative;
      top: 0.0625rem;
    }

    .cta-modal__consent-field {
      margin-top: 0.25rem;
    }

    .cta-modal__consent-label {
      font-size: 0.6875rem;
      color: rgba(255,255,255,0.4);
    }

    .cta-modal__error {
      font-size: 0.625rem;
      color: #F87171;
      margin-top: 0.25rem;
      line-height: 1.4;
    }

    .cta-modal__error[hidden] {
      display: none;
    }

    .modal__input[aria-invalid="true"],
    .cta-modal__select[aria-invalid="true"] {
      border-color: rgba(248,113,113,0.4);
    }

    @media (prefers-reduced-motion: reduce) {
      .modal,
      .modal__backdrop,
      .modal__panel {
        transition: none;
      }
    }

    /* --- CLOSING ANCHOR --- */
    #rex .rex__anchor {
      margin-top: var(--space-lg);
      padding-top: var(--space-md);
      font-size: 0.8125rem;
      color: rgba(255, 255, 255, 0.45);
      max-width: 42rem;
      line-height: 1.7;
      font-weight: var(--weight-medium);
      letter-spacing: -0.005em;
    }

    /* ===================================================
       TWIN DEFINITION — scoped to #twin
       =================================================== */
    #twin .twin__split {
      display: grid;
      grid-template-columns: 1fr;
      gap: var(--space-lg);
    }

    #twin .twin__text .overline {
      color: var(--color-text-light-secondary);
      margin-bottom: 0.375rem;
    }

    #twin .twin__text h2 {
      margin-bottom: 0.625rem;
    }

    #twin .twin__lead {
      color: var(--color-text-light-secondary);
      max-width: 42rem;
      margin-bottom: 0.375rem;
    }

    #twin .twin__support {
      color: var(--color-text-light-secondary);
      font-size: var(--text-sm);
      max-width: 42rem;
    }

    #twin .twin__illus-panel {
      border: 1px solid var(--color-border-light);
      padding: var(--space-sm) var(--space-md) var(--space-sm);
      max-width: 36rem;
      margin: 0 auto;
    }

    #twin .twin__illus-panel svg {
      display: block;
      width: 100%;
      height: auto;
    }

    #twin .twin__caps {
      display: grid;
      grid-template-columns: 1fr;
      gap: var(--space-lg);
      margin-top: var(--space-lg);
      padding-top: 1.75rem;
      border-top: 1px solid rgba(15, 23, 42, 0.06);
    }

    #twin .twin__cap {
      padding-left: var(--space-md);
      border-left: 1px solid rgba(15, 23, 42, 0.08);
    }

    #twin .twin__cap-label {
      font-size: 0.5625rem;
      font-weight: var(--weight-medium);
      font-feature-settings: "tnum";
      color: var(--color-text-light-secondary);
      opacity: 0.35;
      margin-bottom: 0.25rem;
      letter-spacing: 0.08em;
    }

    #twin .twin__cap-title {
      font-size: var(--text-base);
      font-weight: var(--weight-semibold);
      color: var(--color-text-light);
      line-height: 1.3;
      margin-bottom: 0.375rem;
    }

    #twin .twin__cap-body {
      font-size: var(--text-sm);
      color: var(--color-text-light-secondary);
      line-height: 1.6;
    }

    /* ===================================================
       BUTTON — tight, control-like
       =================================================== */
    .btn {
      display: inline-block;
      font-family: var(--font-stack);
      font-size: 0.8125rem;
      font-weight: var(--weight-semibold);
      letter-spacing: 0.04em;
      text-transform: uppercase;
      text-decoration: none;
      padding: 0.9rem 1.4rem;
      background: rgba(226, 232, 240, 0.06);
      color: rgba(226, 232, 240, 0.92);
      border: 1px solid rgba(226, 232, 240, 0.22);
      border-radius: var(--radius);
      cursor: pointer;
      transition: background-color 0.15s, border-color 0.15s;
    }

    .btn:hover {
      background: rgba(226, 232, 240, 0.09);
      border-color: rgba(226, 232, 240, 0.32);
      color: rgba(226, 232, 240, 0.92);
    }

    .btn--ghost {
      background: transparent;
      color: rgba(226, 232, 240, 0.58);
      border-color: rgba(226, 232, 240, 0.12);
    }

    .btn--ghost:hover {
      background: rgba(226, 232, 240, 0.05);
      color: rgba(226, 232, 240, 0.85);
      border-color: rgba(226, 232, 240, 0.24);
    }

    /* ===================================================
       TWO-COLUMN SPLIT
       =================================================== */
    .split {
      display: grid;
      grid-template-columns: 1fr;
      gap: var(--space-lg);
    }

    .split p + p {
      margin-top: var(--space-sm);
    }

    #problem .split {
      margin-top: var(--space-xl);
    }

    /* ===================================================
       PROBLEM — layout + narrative + visibility panel
       =================================================== */
    #problem p {
      max-width: none;
    }

    /* --- LAYOUT (mobile-first: single column) --- */
    #problem .problem__layout {
      display: grid;
      grid-template-columns: 1fr;
      gap: var(--space-xl);
      position: relative;
    }

    /* --- LEFT COLUMN — narrative --- */
    #problem .problem__copy {
      max-width: 44rem;
      position: relative;
      padding-left: var(--space-md);
      min-width: 0;
    }

    #problem .problem__copy::before {
      content: '';
      position: absolute;
      left: 0;
      top: 0;
      bottom: 0;
      width: 1px;
      background: var(--color-border-light);
    }

    /* ---- BEATS: structured executive reasoning ---- */
    #problem .problem__beats {
      max-width: 38rem;
    }

    #problem .problem__beats p {
      font-size: var(--text-lg);
      line-height: 1.75;
      color: var(--color-text-light-secondary);
      position: relative;
      padding-left: var(--space-lg);
    }

    /* Default left-rule marker for all beats */
    #problem .problem__beats p::before {
      content: '';
      position: absolute;
      left: 0;
      top: 0;
      bottom: 0;
      width: 2px;
      background: rgba(15, 23, 42, 0.08);
    }

    #problem .problem__beats p + p {
      margin-top: var(--space-sm);
    }

    /* ·· BEAT 1 — Framing premise ·· */
    #problem .problem__beats p:nth-child(1) {
      color: var(--color-text-light);
      font-weight: var(--weight-medium);
      font-size: 1.1875rem;
      letter-spacing: -0.005em;
      line-height: 1.65;
      padding-bottom: var(--space-sm);
    }

    #problem .problem__beats p:nth-child(1)::before {
      background: rgba(15, 23, 42, 0.28);
    }

    /* ·· BEAT 2 — Documented artifacts (secondary evidence) ·· */
    #problem .problem__beats p:nth-child(2) {
      opacity: 0.52;
      font-size: var(--text-base);
      letter-spacing: 0.005em;
    }

    #problem .problem__beats p:nth-child(2)::before {
      background: rgba(15, 23, 42, 0.05);
    }

    /* ·· BEAT 3 — Structural pivot ·· */
    #problem .problem__beats p:nth-child(3) {
      color: var(--color-text-light);
      font-weight: var(--weight-semibold);
      letter-spacing: -0.01em;
      margin-top: var(--space-lg);
      padding-top: var(--space-sm);
    }

    #problem .problem__beats p:nth-child(3)::before {
      background: var(--color-accent);
      opacity: 0.3;
    }

    #problem .problem__beats p:nth-child(3)::after {
      content: '';
      position: absolute;
      left: var(--space-lg);
      bottom: -2px;
      width: 2.5rem;
      height: 1px;
      background: var(--color-accent);
      opacity: 0.18;
    }

    /* ·· BEAT 4 — Evidence / structural failure ·· */
    #problem .problem__beats p:nth-child(4) {
      margin-top: var(--space-md);
      font-size: var(--text-base);
    }

    #problem .problem__beats p:nth-child(4)::before {
      background: rgba(15, 23, 42, 0.1);
    }

    /* ·· BEAT 5 — Thesis conclusion ·· */
    #problem .problem__beats p:nth-child(5) {
      color: var(--color-text-light);
      font-size: 1.1875rem;
      font-weight: var(--weight-medium);
      font-style: italic;
      letter-spacing: -0.005em;
      line-height: 1.6;
      margin-top: var(--space-xl);
      padding-left: 0;
      padding-top: var(--space-md);
      border-top: 1px solid rgba(15, 23, 42, 0.06);
    }

    /* Remove left-rule for thesis — it stands alone */
    #problem .problem__beats p:nth-child(5)::before {
      display: none;
    }

    /* ---- DETAIL: consequence block ---- */
    #problem .problem__detail {
      margin-top: var(--space-xl);
      padding-top: var(--space-lg);
      border-top: 1px solid var(--color-border-light);
      max-width: 38rem;
    }

    #problem .problem__detail p {
      font-size: var(--text-sm);
      line-height: 1.7;
      color: var(--color-text-light-secondary);
    }

    #problem .problem__detail p:first-child {
      font-weight: var(--weight-semibold);
      color: var(--color-text-light);
      font-size: var(--text-base);
      letter-spacing: -0.005em;
      margin-bottom: var(--space-sm);
    }

    #problem .problem__detail p + p {
      margin-top: var(--space-sm);
    }

    /* Final detail line — conclusion weight */
    #problem .problem__detail p:last-child {
      font-weight: var(--weight-medium);
      color: var(--color-text-light);
      margin-top: var(--space-md);
    }

    /* --- RIGHT COLUMN — visibility panel (instrument surface) --- */
    #problem .visibility-panel {
      padding: 0;
      width: 100%;
      min-width: 0;
      position: relative;
    }

    /* Accent left rule */
    #problem .visibility-panel::before {
      content: '';
      position: absolute;
      left: 0;
      top: 0;
      bottom: 0;
      width: 2px;
      background: var(--color-accent);
      opacity: 0.14;
      z-index: 1;
    }

    /* Inner surface — gradient + grid texture + depth */
    #problem .visibility-panel__inner {
      padding: var(--space-md) var(--space-md) var(--space-md) var(--space-lg);
      background:
        repeating-linear-gradient(
          0deg,
          transparent,
          transparent 1.5rem,
          rgba(15, 23, 42, 0.012) 1.5rem,
          rgba(15, 23, 42, 0.012) 3rem
        ),
        linear-gradient(180deg,
          rgba(15, 23, 42, 0.018) 0%,
          rgba(15, 23, 42, 0.042) 100%
        );
      box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.55),
        inset 0 -1px 0 rgba(15, 23, 42, 0.035),
        0 1px 2px rgba(15, 23, 42, 0.025),
        0 4px 12px rgba(15, 23, 42, 0.015);
    }

    /* Panel header */
    #problem .visibility-panel__header {
      font-size: 0.625rem;
      font-weight: var(--weight-semibold);
      letter-spacing: 0.12em;
      text-transform: uppercase;
      color: var(--color-text-light-secondary);
      padding-bottom: var(--space-xs);
      border-bottom: 1px solid var(--color-border-light);
      margin-bottom: var(--space-sm);
    }

    /* Axis header row */
    #problem .visibility-panel__axis {
      display: grid;
      grid-template-columns: 5rem 1fr 1fr;
      gap: 0;
      font-size: 0.5625rem;
      font-weight: var(--weight-semibold);
      letter-spacing: 0.08em;
      text-transform: uppercase;
      color: rgba(15, 23, 42, 0.32);
      padding-bottom: 0.375rem;
      border-bottom: 1px solid var(--color-border-light);
      margin-bottom: 0;
    }

    #problem .visibility-panel__axis span:first-child {
      opacity: 0;
    }

    /* Data rows — consistent height, engineered grid */
    #problem .visibility-panel__row {
      display: grid;
      grid-template-columns: 5rem 1fr 1fr;
      gap: 0;
      align-items: center;
      min-height: 2.5rem;
      padding: 0.375rem 0;
      border-bottom: 1px solid rgba(15, 23, 42, 0.045);
      transition: background-color 0.15s;
    }

    #problem .visibility-panel__row:last-of-type {
      border-bottom: none;
    }

    #problem .visibility-panel__row:hover {
      background-color: rgba(15, 23, 42, 0.022);
    }

    #problem .visibility-panel__row-label {
      font-size: 0.6875rem;
      font-weight: var(--weight-medium);
      color: var(--color-text-light);
      letter-spacing: 0.01em;
      white-space: nowrap;
    }

    #problem .visibility-panel__cell {
      padding: 0 var(--space-xs);
    }

    /* Documented ticks */
    #problem .visibility-panel__marks {
      display: flex;
      gap: 0.25rem;
      align-items: center;
    }

    #problem .visibility-panel__tick {
      width: 1rem;
      height: 3px;
      border-radius: 1px;
      background: rgba(15, 23, 42, 0.13);
    }

    /* Gap indicators */
    #problem .visibility-panel__gap-line {
      width: 100%;
      height: 1px;
      background: var(--color-accent);
      opacity: 0.2;
      transition: opacity 0.15s;
    }

    #problem .visibility-panel__row:hover .visibility-panel__gap-line {
      opacity: 0.45;
    }

    #problem .visibility-panel__gap-label {
      font-size: 0.5rem;
      letter-spacing: 0.1em;
      text-transform: uppercase;
      color: var(--color-accent);
      opacity: 0.4;
      margin-top: 2px;
      transition: opacity 0.15s;
    }

    #problem .visibility-panel__row:hover .visibility-panel__gap-label {
      opacity: 0.7;
    }

    /* Impact band */
    #problem .visibility-panel__impact {
      margin-top: var(--space-sm);
      padding-top: var(--space-xs);
      border-top: 1px solid var(--color-border-light);
      display: flex;
      flex-wrap: wrap;
      gap: 0.25rem var(--space-xs);
      align-items: center;
    }

    #problem .visibility-panel__impact-label {
      font-size: 0.5625rem;
      font-weight: var(--weight-semibold);
      letter-spacing: 0.08em;
      text-transform: uppercase;
      color: var(--color-text-light-secondary);
      margin-right: 0.25rem;
    }

    #problem .visibility-panel__chip {
      font-size: 0.625rem;
      font-weight: var(--weight-medium);
      color: var(--color-text-light-secondary);
      border: 1px solid rgba(15, 23, 42, 0.07);
      background: rgba(15, 23, 42, 0.018);
      padding: 0.15em 0.5em;
      white-space: nowrap;
    }

    /* ===================================================
       FEATURE GRID (3-col)
       =================================================== */
    .feature-grid {
      display: grid;
      grid-template-columns: 1fr;
      gap: 1px;
      margin-top: var(--space-xl);
      background-color: var(--color-border-light);
      border: 1px solid var(--color-border-light);
    }

    .feature-block {
      padding: var(--space-lg);
      background-color: var(--color-bg-light);
    }

    /* ===================================================
       CARD GRID (REx – dark)
       =================================================== */
    /* ===================================================
       MEDIA TEXT (Physical AI)
       =================================================== */
    .media-text {
      display: grid;
      grid-template-columns: 1fr;
      gap: var(--space-xl);
    }

    .media-text p + p {
      margin-top: var(--space-sm);
    }

    .media-placeholder {
      width: 100%;
      aspect-ratio: 16 / 9;
      background-color: var(--color-bg-dark-elevated);
      border: 1px solid var(--color-border);
      border-radius: var(--radius);
      display: flex;
      align-items: center;
      justify-content: center;
    }

    .media-placeholder__label {
      font-size: var(--text-xs);
      font-weight: var(--weight-medium);
      letter-spacing: 0.1em;
      text-transform: uppercase;
      color: var(--color-text-dark-secondary);
    }

    /* Physical AI — intro hierarchy */
    #physical-ai .pai__thesis {
      font-size: 1.0625rem;
      font-weight: var(--weight-medium);
      color: var(--color-text-dark);
      max-width: 48em;
      line-height: 1.6;
      padding-left: var(--space-md);
      border-left: 2px solid rgba(226, 232, 240, 0.15);
    }

    #physical-ai .pai__reinforcement {
      margin-top: var(--space-lg);
      color: var(--color-text-dark-secondary);
      opacity: 0.72;
      max-width: 48em;
      line-height: 1.65;
    }

    /* Physical AI — grid wrapper with topology */
    #physical-ai .pai__grid-wrap {
      position: relative;
      margin-top: var(--space-xl);
    }

    #physical-ai .pai__topology {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      pointer-events: none;
    }

    /* Physical AI — instrumentation grid */
    #physical-ai .pai__grid {
      position: relative;
      display: grid;
      grid-template-columns: 1fr;
      gap: 1px;
      background: rgba(226, 232, 240, 0.07);
    }

    #physical-ai .pai__cell {
      background: var(--color-bg-dark);
      padding: var(--space-md) var(--space-md) var(--space-lg);
    }

    #physical-ai .pai__title-row {
      display: grid;
      grid-template-columns: 1.125rem 1fr;
      gap: 0 0.5rem;
      align-items: center;
      margin-bottom: 0.625rem;
      padding-bottom: 0.5rem;
      position: relative;
    }

    #physical-ai .pai__title-row::after {
      content: '';
      position: absolute;
      bottom: 0;
      left: calc(1.125rem + 0.5rem);
      width: 2.5rem;
      height: 1px;
      background: rgba(226, 232, 240, 0.08);
    }

    #physical-ai .pai__icon {
      width: 1.125rem;
      height: 1.125rem;
      color: rgba(226, 232, 240, 0.28);
      flex-shrink: 0;
      display: block;
    }

    #physical-ai .pai__cell-title {
      font-size: var(--text-sm);
      font-weight: var(--weight-semibold);
      color: var(--color-text-dark);
      line-height: 1.3;
    }

    #physical-ai .pai__cell-body {
      font-size: var(--text-xs);
      color: var(--color-text-dark-secondary);
      line-height: 1.6;
      opacity: 0.8;
      padding-left: calc(1.125rem + 0.5rem);
    }

    /* CTA cell — GRSee */
    #physical-ai .pai__cell--cta {
      background: rgba(21, 30, 48, 0.55);
      box-shadow: inset 0 0 0 1px rgba(226, 232, 240, 0.04);
      display: flex;
      flex-direction: column;
      transition: background-color 140ms cubic-bezier(0.4, 0, 0.2, 1),
                  box-shadow 140ms cubic-bezier(0.4, 0, 0.2, 1);
    }

    #physical-ai .pai__cell--cta:hover {
      background: rgba(21, 30, 48, 0.7);
      box-shadow: inset 0 0 0 1px rgba(226, 232, 240, 0.08);
    }

    #physical-ai .pai__cell--cta .pai__icon {
      transition: color 140ms cubic-bezier(0.4, 0, 0.2, 1);
    }

    #physical-ai .pai__cell--cta:hover .pai__icon {
      color: rgba(226, 232, 240, 0.42);
    }

    #physical-ai .pai__cell--cta .pai__title-row::after {
      transition: background-color 140ms cubic-bezier(0.4, 0, 0.2, 1);
    }

    #physical-ai .pai__cell--cta:hover .pai__title-row::after {
      background: rgba(226, 232, 240, 0.14);
    }

    #physical-ai .pai__cell--cta .pai__cell-body {
      flex: 1;
    }

    #physical-ai .pai__cta-btn {
      display: inline-flex;
      align-items: center;
      height: 36px;
      margin-top: 0.75rem;
      margin-left: calc(1.125rem + 0.5rem);
      padding: 0 14px;
      background: rgba(226, 232, 240, 0.05);
      border: 1px solid rgba(226, 232, 240, 0.14);
      border-radius: 1px;
      color: rgba(226, 232, 240, 0.82);
      font-size: var(--text-xs);
      font-family: inherit;
      font-weight: var(--weight-semibold);
      letter-spacing: 0.02em;
      text-decoration: none;
      cursor: pointer;
      transition: all 140ms cubic-bezier(0.4, 0, 0.2, 1);
      align-self: flex-start;
    }

    #physical-ai .pai__cta-btn:hover {
      background: rgba(226, 232, 240, 0.07);
      border-color: rgba(226, 232, 240, 0.24);
    }

    #physical-ai .pai__cta-btn:active {
      transform: translateY(1px);
      border-color: rgba(226, 232, 240, 0.1);
    }

    #physical-ai .pai__cta-btn:focus-visible {
      outline: 1px solid rgba(110, 231, 183, 0.3);
      outline-offset: 2px;
    }

    #physical-ai .pai__bridge {
      margin-top: var(--space-xl);
      font-size: var(--text-sm);
      color: var(--color-text-dark-secondary);
      opacity: 0.6;
      max-width: 52em;
    }

    /* ===================================================
       VERTICAL STACK (Exposure → Capital)
       =================================================== */
    /* ===================================================
       EXPOSURE → CAPITAL — instrument panel
       =================================================== */

    #exposure-capital {
      background: #0D1525;
      --ec-marker: 26px;
      --ec-icon: 12px;
      --ec-gap: 12px;
    }

    /* — A) HERO BLOCK — */

    #exposure-capital .overline {
      display: inline-flex;
      align-items: center;
      color: rgba(226, 232, 240, 0.42);
      border: 1px solid rgba(226, 232, 240, 0.09);
      padding: 0.21875rem 0.5625rem;
      font-size: 0.625rem;
      letter-spacing: 0.15em;
      font-variant-numeric: tabular-nums;
      line-height: 1;
      margin-bottom: 12px;
    }

    #exposure-capital h2 {
      color: var(--color-text-dark);
      max-width: 32rem;
      font-weight: var(--weight-semibold);
      letter-spacing: -0.018em;
      line-height: 1.12;
      margin-bottom: 0;
    }

    #exposure-capital .ec__intro {
      max-width: 35rem;
      margin-top: 10px;
      font-size: var(--text-sm);
      line-height: 1.7;
      color: rgba(226, 232, 240, 0.52);
      padding-bottom: 40px;
      border-bottom: 1px solid rgba(226, 232, 240, 0.07);
    }

    /* — B) FRAMEWORK: measurement spine — */

    #exposure-capital .ec__framework {
      margin-top: 0;
      border-top: none;
      position: relative;
      padding-top: 24px;
    }

    /* Vertical spine — centered on marker column */
    #exposure-capital .ec__framework::before {
      content: '';
      position: absolute;
      left: calc(var(--ec-marker) / 2);
      top: 24px;
      bottom: 0;
      width: 1px;
      background: rgba(226, 232, 240, 0.09);
    }

    /* — B) STEP BLOCKS — grid layout — */

    #exposure-capital .ec__block {
      display: grid;
      grid-template-columns: var(--ec-marker) 1fr;
      column-gap: var(--ec-gap);
      align-items: start;
      padding: 18px 0;
      position: relative;
      border-bottom: none;
    }

    /* Remove old tick/dot pseudo-elements */
    #exposure-capital .ec__block::before,
    #exposure-capital .ec__block::after {
      content: none;
    }

    /* Divider between blocks */
    #exposure-capital .ec__block + .ec__block {
      border-top: 1px solid rgba(226, 232, 240, 0.05);
    }

    /* — MARKER: circular anchor on spine — */

    #exposure-capital .ec__marker {
      grid-row: 1 / -1;
      width: var(--ec-marker);
      height: var(--ec-marker);
      display: flex;
      align-items: center;
      justify-content: center;
      border: 1px solid rgba(226, 232, 240, 0.1);
      border-radius: 50%;
      background: #0D1525;
      position: relative;
      z-index: 1;
      margin-top: 0;
    }

    #exposure-capital .ec__marker svg {
      width: var(--ec-icon);
      height: var(--ec-icon);
      display: block;
    }

    /* — HEADER + TITLE — */

    #exposure-capital .ec__block-header {
      display: block;
      margin-bottom: 0;
      grid-column: 2;
    }

    #exposure-capital .ec__block h3 {
      font-size: var(--text-base);
      font-weight: var(--weight-semibold);
      color: rgba(226, 232, 240, 0.84);
      line-height: 1.3;
      margin: 0;
      letter-spacing: -0.005em;
    }

    /* Calibration rule under title */
    #exposure-capital .ec__block h3::after {
      content: '';
      display: block;
      width: 20px;
      height: 1px;
      background: rgba(226, 232, 240, 0.08);
      margin-top: 12px;
    }

    /* — BODY — */

    #exposure-capital .ec__block-body {
      grid-column: 2;
      padding-left: 0;
      margin-top: 16px;
      max-width: 34rem;
    }

    #exposure-capital .ec__block-body p {
      font-size: var(--text-sm);
      line-height: 1.65;
      color: rgba(226, 232, 240, 0.4);
      margin: 0;
    }

    /* — C) CLOSE: institutional conclusion — */

    #exposure-capital .ec__close {
      margin-top: 48px;
      margin-left: calc(var(--ec-marker) + var(--ec-gap));
      padding: 10px 0 10px 12px;
      border-left: 1px solid rgba(226, 232, 240, 0.09);
      background: rgba(226, 232, 240, 0.012);
      max-width: 34rem;
    }

    #exposure-capital .ec__close p {
      font-size: var(--text-xs);
      line-height: 1.55;
      color: rgba(226, 232, 240, 0.34);
      letter-spacing: 0.008em;
      margin: 0;
    }

    /* — REDUCED MOTION — */
    @media (prefers-reduced-motion: reduce) {
      #exposure-capital * {
        transition: none !important;
      }
    }

    /* — RESPONSIVE: 768px+ — */
    @media (min-width: 768px) {
      #exposure-capital {
        --ec-marker: 30px;
        --ec-icon: 14px;
        --ec-gap: 16px;
      }

      #exposure-capital .ec__framework {
        padding-top: 40px;
      }

      #exposure-capital .ec__framework::before {
        top: 40px;
      }

      #exposure-capital .ec__block {
        padding: 16px 0;
      }

      #exposure-capital .ec__block h3::after {
        margin-top: 14px;
      }

      #exposure-capital .ec__block-body {
        margin-top: 18px;
      }
    }

    /* ===================================================
       TABS
       =================================================== */
    .tabs__bar {
      display: flex;
      border-bottom: 1px solid var(--color-border-light);
      margin-bottom: var(--space-lg);
      margin-top: var(--space-xl);
    }

    .tab-btn {
      font-family: var(--font-stack);
      font-size: var(--text-sm);
      font-weight: var(--weight-medium);
      padding: var(--space-xs) var(--space-md) var(--space-sm);
      background: none;
      border: none;
      border-bottom: 2px solid transparent;
      cursor: pointer;
      color: var(--color-text-light-secondary);
      transition: color 0.15s, border-color 0.15s;
    }

    .tab-btn:hover {
      color: var(--color-text-light);
    }

    .tab-btn[aria-selected="true"] {
      color: var(--color-text-light);
      border-bottom-color: var(--color-accent);
    }

    /* ── About section tab overflow fix (mobile) ── */
    @media (max-width: 768px) {
      #about .tabs__bar {
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;
        max-width: 100%;
        scrollbar-width: none;
      }
      #about .tabs__bar::-webkit-scrollbar {
        display: none;
      }
      #about .tab-btn {
        flex: 0 0 auto;
        white-space: nowrap;
        min-width: 0;
      }
    }

    /* ── Sector tabs overflow fix (mobile) ── */
    @media (max-width: 768px) {
      #industry .tabs__bar {
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;
        max-width: 100%;
        scrollbar-width: none;
      }
      #industry .tabs__bar::-webkit-scrollbar {
        display: none;
      }
      #industry .tab-btn {
        flex: 0 0 auto;
        white-space: nowrap;
        min-width: 0;
      }
    }

    .tab-panel {
      display: none;
    }

    .tab-panel[aria-hidden="false"] {
      display: block;
    }

    .tab-inner {
      display: grid;
      grid-template-columns: 1fr;
      gap: var(--space-lg);
    }

    .tab-field {
      min-width: 0;
    }

    .tab-field h4 {
      font-size: var(--text-xs);
      font-weight: var(--weight-semibold);
      letter-spacing: 0.12em;
      text-transform: uppercase;
      color: var(--color-text-light-secondary);
      margin-bottom: var(--space-xs);
    }

    .domain-list li {
      padding: var(--space-xs) 0;
      border-bottom: 1px solid var(--color-border-light);
      font-size: var(--text-sm);
      color: var(--color-text-light-secondary);
    }

    .domain-list li:last-child {
      border-bottom: none;
    }

    .domain-item {
      display: flex;
      align-items: baseline;
      gap: 0.5rem;
      flex-wrap: wrap;
    }

    .domain-title {
      flex: 1 1 auto;
      min-width: 0;
      white-space: normal;
      overflow-wrap: anywhere;
    }

    .domain-standards {
      display: inline-flex;
      align-items: baseline;
      gap: 0.25rem;
      flex-wrap: wrap;
    }

    .chip {
      display: inline-block;
      font-size: 0.5625rem;
      font-weight: var(--weight-semibold);
      letter-spacing: 0.06em;
      color: var(--color-text-light-secondary);
      border: 1px solid var(--color-border-light);
      border-radius: 1px;
      padding: 0.0625rem 0.375rem;
      white-space: nowrap;
      opacity: 0.7;
    }

    /* ===================================================
       ABOUT — authority & credibility tabs
       =================================================== */

    #about .about__intro {
      max-width: 35rem;
      margin-bottom: 0;
    }

    #about .about__panel {
      max-width: 38rem;
    }

    #about .about__tab-overline {
      font-size: 0.5625rem;
      font-weight: var(--weight-semibold);
      letter-spacing: 0.14em;
      text-transform: uppercase;
      color: var(--color-text-light-secondary);
      margin-bottom: 6px;
      line-height: 1;
    }

    #about .about__tab-heading {
      font-size: var(--text-lg);
      font-weight: var(--weight-semibold);
      color: var(--color-text-light);
      line-height: 1.3;
      letter-spacing: -0.005em;
      margin: 0 0 10px;
    }

    #about .about__tab-body {
      font-size: var(--text-sm);
      line-height: 1.65;
      color: var(--color-text-light-secondary);
      margin: 0 0 24px;
      max-width: 34rem;
    }

    #about .about__signals {
      list-style: none;
      padding: 0;
      margin: 0;
      border-top: 1px solid var(--color-border-light);
    }

    #about .about__signals li {
      font-size: var(--text-sm);
      line-height: 1.6;
      color: var(--color-text-light-secondary);
      padding: 12px 0;
      border-bottom: 1px solid var(--color-border-light);
    }

    #about .about__signals--partners li {
      font-size: var(--text-sm);
      font-weight: var(--weight-regular);
      color: var(--color-text-light-secondary);
      letter-spacing: normal;
      padding: 14px 0;
    }

    #about .about__signals--partners .partner-name {
      display: block;
      font-size: var(--text-base);
      font-weight: var(--weight-semibold);
      color: var(--color-text-light);
      letter-spacing: -0.005em;
      line-height: 1.3;
    }

    #about .about__signals--partners .partner-desc {
      display: block;
      margin-top: 6px;
      font-size: var(--text-sm);
      font-weight: var(--weight-regular);
      color: var(--color-text-light-secondary);
      line-height: 1.6;
      max-width: 34rem;
    }

    /* ===================================================
       TIMELINE (Deployment)
       =================================================== */
    /* ===================================================
       DEPLOYMENT — configuration matrix
       =================================================== */

    #deployment .deploy__grid {
      margin-top: var(--space-xl);
    }

    #deployment .deploy__option {
      display: grid;
      grid-template-columns: 28px 1fr;
      column-gap: 14px;
      align-items: start;
      padding: 20px 0;
      border-top: 1px solid rgba(15, 23, 42, 0.04);
    }

    #deployment .deploy__grid > .deploy__option:last-child {
      border-bottom: 1px solid rgba(15, 23, 42, 0.07);
    }

    #deployment .deploy__icon {
      width: 28px;
      height: 28px;
      display: flex;
      align-items: center;
      justify-content: center;
      margin-top: 1px;
    }

    #deployment .deploy__icon svg {
      width: 18px;
      height: 18px;
      display: block;
    }

    #deployment .deploy__content {
      grid-column: 2;
    }

    #deployment .deploy__label {
      font-size: var(--text-xs);
      font-weight: var(--weight-semibold);
      letter-spacing: 0.1em;
      text-transform: uppercase;
      color: var(--color-text-light-secondary);
      margin-bottom: 4px;
      font-variant-numeric: tabular-nums;
    }

    #deployment .deploy__content h3 {
      font-size: var(--text-base);
      font-weight: var(--weight-semibold);
      color: var(--color-text-light);
      line-height: 1.3;
      margin: 0 0 6px;
      letter-spacing: -0.005em;
    }

    #deployment .deploy__content p {
      font-size: var(--text-sm);
      line-height: 1.65;
      color: var(--color-text-light-secondary);
      margin: 0;
      max-width: 34rem;
    }

    /* Sovereign — elevated deployment grade */

    #deployment .deploy__sovereign {
      margin-top: 48px;
      padding: 24px 0 24px 16px;
      border-left: 1px solid rgba(15, 23, 42, 0.24);
      background: rgba(15, 23, 42, 0.018);
    }

    #deployment .deploy__sovereign .deploy__option {
      border-top: none;
      border-bottom: none;
      padding: 0;
    }

    #deployment .deploy__grade-overline {
      font-size: 0.5625rem;
      font-weight: var(--weight-semibold);
      letter-spacing: 0.14em;
      text-transform: uppercase;
      color: rgba(15, 23, 42, 0.3);
      margin-bottom: 14px;
      line-height: 1;
    }

    /* ===================================================
       ACCORDION (FAQ)
       =================================================== */
    .accordion {
      max-width: 44rem;
      margin-top: var(--space-xl);
      border-top: 1px solid var(--color-border-light);
    }

    .accordion__item {
      border-bottom: 1px solid var(--color-border-light);
    }

    .accordion__trigger {
      display: flex;
      align-items: center;
      justify-content: space-between;
      width: 100%;
      padding: var(--space-md) 0;
      background: none;
      border: none;
      cursor: pointer;
      font-family: var(--font-stack);
      font-size: var(--text-base);
      font-weight: var(--weight-medium);
      color: var(--color-text-light);
      text-align: left;
      line-height: 1.45;
      gap: var(--space-sm);
    }

    .accordion__trigger:hover {
      color: var(--color-text-light);
    }

    .accordion__icon {
      flex-shrink: 0;
      width: 1rem;
      height: 1rem;
      position: relative;
    }

    .accordion__icon::before,
    .accordion__icon::after {
      content: '';
      position: absolute;
      background-color: var(--color-text-light-secondary);
    }

    .accordion__icon::before {
      top: 50%;
      left: 10%;
      right: 10%;
      height: 1px;
      transform: translateY(-50%);
    }

    .accordion__icon::after {
      left: 50%;
      top: 10%;
      bottom: 10%;
      width: 1px;
      transform: translateX(-50%);
      transition: opacity 0.2s, transform 0.2s;
    }

    .accordion__trigger[aria-expanded="true"] .accordion__icon::after {
      opacity: 0;
      transform: translateX(-50%) rotate(90deg);
    }

    .accordion__body {
      max-height: 0;
      overflow: hidden;
      transition: max-height 0.25s ease;
    }

    .accordion__body[aria-hidden="true"] {
      visibility: hidden;
    }

    .accordion__body[aria-hidden="false"] {
      visibility: visible;
    }

    .accordion__body__inner {
      padding-bottom: var(--space-md);
    }

    .accordion__body p {
      font-size: var(--text-sm);
      color: var(--color-text-light-secondary);
      line-height: 1.7;
    }

    /* ===================================================
       CTA
       =================================================== */
    .cta-section {
      text-align: center;
      padding: var(--space-3xl) 0;
    }

    .cta-section p {
      margin: 0 auto var(--space-lg);
    }

    /* ===================================================
       FOOTER
       =================================================== */
    /* --- Footer --- */
    .site-footer{
      position: relative;
      background: linear-gradient(180deg, rgba(10,14,26,0.92) 0%, rgba(10,14,26,0.98) 100%);
      border-top: 1px solid rgba(255,255,255,0.08);
    }

    .site-footer__inner{
      width: min(1280px, calc(100% - 64px));
      margin: 0 auto;
      padding: 4.5rem 0 3.5rem;
    }

    .site-footer__grid{
      display: grid;
      grid-template-columns: 1.4fr 0.8fr 0.9fr 1.1fr;
      gap: 3rem;
      align-items: start;
      padding-bottom: 3rem;
    }

    .site-footer__col--brand{
      padding-right: 1rem;
    }

    .site-footer__brand-title{
      margin-bottom: 14px;
    }

    .site-footer__brand-logo{
      height: 24px;
      width: auto;
      display: block;
      opacity: 0.70;
    }

    .site-footer__brand-subtitle{
      font-size: 13.5px;
      line-height: 1.7;
      color: rgba(255,255,255,0.38);
      max-width: 32ch;
    }

    .site-footer__col-title{
      font-size: 10px;
      letter-spacing: 0.2em;
      text-transform: uppercase;
      color: rgba(255,255,255,0.35);
      margin-bottom: 1rem;
      padding-bottom: 0.625rem;
      border-bottom: 1px solid rgba(255,255,255,0.06);
    }

    .site-footer__link{
      display: block;
      font-size: 13px;
      line-height: 1.4;
      color: rgba(255,255,255,0.50);
      text-decoration: none;
      padding: 0.3rem 0;
      transition: color 160ms ease;
    }

    .site-footer__link:hover{
      color: rgba(255,255,255,0.88);
    }

    .site-footer__link:focus-visible{
      outline: 2px solid rgba(78,214,200,0.55);
      outline-offset: 2px;
      border-radius: 2px;
    }

    .site-footer__link--cta{
      margin-top: 0.75rem;
      padding: 0.5rem 0;
      color: rgba(255,255,255,0.58);
      font-size: 12px;
      letter-spacing: 0.12em;
      text-transform: uppercase;
    }

    .site-footer__link--cta:hover{
      color: rgba(255,255,255,0.92);
    }

    /* --- Meta definition list (replaces cards) --- */
    .site-footer__dl{
      margin: 0;
      padding: 0;
      display: grid;
      gap: 6px;
    }

    .site-footer__dl-row{
      padding: 1rem 1.125rem;
      border-bottom: none;
    }

    .site-footer__dl-row:last-child{
      border-bottom: none;
    }

    .site-footer__dl-link{
      display: block;
      text-decoration: none;
      color: inherit;
      border-radius: 3px;
      border: 1px solid rgba(255,255,255,0.05);
      background: rgba(255,255,255,0.01);
      transition: background 180ms ease, border-color 180ms ease;
    }

    .site-footer__dl-link:hover{
      border-color: rgba(255,255,255,0.14);
      background: rgba(255,255,255,0.03);
    }

    .site-footer__dl-link:hover .site-footer__dd{
      color: rgba(255,255,255,0.62);
    }

    .site-footer__dl-link:focus-visible{
      outline: 2px solid rgba(78,214,200,0.55);
      outline-offset: 2px;
    }

    .site-footer__dt{
      font-size: 9.5px;
      letter-spacing: 0.2em;
      text-transform: uppercase;
      color: rgba(255,255,255,0.28);
      margin-bottom: 0.5rem;
    }

    .site-footer__dd{
      margin: 0;
      font-size: 12.5px;
      line-height: 1.6;
      color: rgba(255,255,255,0.48);
    }

    /* --- Bottom bar --- */
    /* --- Footer privacy link --- */
    .site-footer__privacy-link{
      display: inline-block;
      margin-top: 1.25rem;
      padding: 0;
      background: none;
      border: none;
      cursor: pointer;
      font-family: inherit;
      font-size: 12px;
      letter-spacing: 0.14em;
      text-transform: uppercase;
      color: rgba(255,255,255,0.30);
      transition: color 160ms ease;
    }
    .site-footer__privacy-link:hover{
      color: rgba(255,255,255,0.65);
    }
    .site-footer__privacy-link:focus-visible{
      outline: 2px solid rgba(78,214,200,0.55);
      outline-offset: 2px;
      border-radius: 2px;
    }

    .site-footer__copyright {
      margin-top: 0.75rem;
      font-size: 11px;
      letter-spacing: 0.08em;
      color: rgba(255,255,255,0.22);
    }

    /* --- Privacy modal --- */
    #modal-privacy{
      position: fixed;
      inset: 0;
      z-index: 9000;
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 24px;
      opacity: 0;
      visibility: hidden;
      transition: opacity 200ms ease, visibility 200ms ease;
    }
    #modal-privacy.is-open{
      opacity: 1;
      visibility: visible;
    }
    #modal-privacy .privacy-backdrop{
      position: absolute;
      inset: 0;
      background: rgba(6,8,18,0.82);
      backdrop-filter: blur(6px);
      -webkit-backdrop-filter: blur(6px);
    }
    #modal-privacy .privacy-dialog{
      position: relative;
      width: min(680px, 100%);
      max-height: calc(100dvh - 48px);
      overflow-y: auto;
      background: rgba(14,18,30,0.97);
      border: 1px solid rgba(255,255,255,0.08);
      border-radius: 6px;
      padding: 2.5rem 2.5rem 2rem;
      box-shadow: 0 24px 64px rgba(0,0,0,0.45);
      transform: translateY(8px);
      transition: transform 200ms ease;
    }
    #modal-privacy.is-open .privacy-dialog{
      transform: translateY(0);
    }
    #modal-privacy .privacy-close{
      position: absolute;
      top: 1.25rem;
      right: 1.25rem;
      width: 32px;
      height: 32px;
      display: flex;
      align-items: center;
      justify-content: center;
      background: none;
      border: 1px solid rgba(255,255,255,0.08);
      border-radius: 4px;
      color: rgba(255,255,255,0.50);
      cursor: pointer;
      font-size: 18px;
      line-height: 1;
      transition: border-color 160ms ease, color 160ms ease;
    }
    #modal-privacy .privacy-close:hover{
      border-color: rgba(255,255,255,0.18);
      color: rgba(255,255,255,0.85);
    }
    #modal-privacy .privacy-close:focus-visible{
      outline: 2px solid rgba(78,214,200,0.55);
      outline-offset: 2px;
    }
    #modal-privacy .privacy-title{
      font-size: 13px;
      letter-spacing: 0.18em;
      text-transform: uppercase;
      color: rgba(255,255,255,0.50);
      margin: 0 0 1.75rem;
    }
    #modal-privacy .privacy-body p{
      font-size: 14.5px;
      line-height: 1.7;
      color: rgba(255,255,255,0.58);
      margin: 0 0 1.25rem;
    }
    #modal-privacy .privacy-body p:last-child{
      margin-bottom: 0;
    }
    #modal-privacy .privacy-contact{
      margin-top: 1.75rem;
      padding-top: 1.25rem;
      border-top: 1px solid rgba(255,255,255,0.06);
      font-size: 13px;
      line-height: 1.6;
      color: rgba(255,255,255,0.40);
    }
    @media (max-width: 640px){
      #modal-privacy .privacy-dialog{
        padding: 2rem 1.5rem 1.5rem;
      }
    }

    /* --- Tablet --- */
    @media (max-width: 920px){
      .site-footer__grid{
        grid-template-columns: 1fr 1fr;
        gap: 2.5rem;
      }
      .site-footer__col--brand{
        grid-column: 1 / -1;
        max-width: 480px;
        padding-right: 0;
      }
    }

    /* --- Mobile --- */
    @media (max-width: 640px){
      .site-footer__inner{
        width: min(1280px, calc(100% - 40px));
        padding: 3rem 0 2.5rem;
      }
      .site-footer__grid{
        grid-template-columns: 1fr;
        gap: 2rem;
      }
      .site-footer__col--brand{
        grid-column: auto;
      }
    }

    /* ===================================================
       RESPONSIVE — 640px
       =================================================== */
    @media (min-width: 640px) {
      h1 {
        font-size: var(--text-5xl);
      }

      .feature-grid {
        grid-template-columns: 1fr 1fr;
      }

      #rex .rex__grid {
        grid-template-columns: 1fr 1fr;
        gap: 0.625rem;
      }

      #rex .rex__domains-grid {
        grid-template-columns: repeat(3, 1fr);
      }

      .tab-inner {
        grid-template-columns: 1fr 1fr;
      }

      #physical-ai .pai__grid {
        grid-template-columns: repeat(2, 1fr);
      }
    }

    /* ===================================================
       RESPONSIVE — 768px (NAVIGATION ADDITIONS)
       =================================================== */
    @media (min-width: 768px) {
      /* Show desktop nav, hide mobile controls */
      .nav {
        display: flex;
      }

      .nav-toggle {
        display: none;
      }

      .header__mobile-cta {
        display: none;
      }

      .nav-overlay {
        display: none;
      }

      /* Tighten nav spacing for tablet (768–959px) */
      .nav {
        gap: var(--space-sm);
      }

      .nav__link {
        padding: var(--space-xs) var(--space-xs);
      }

      /* Twin section: 2-col from tablet up */
      #twin .twin__split {
        grid-template-columns: minmax(320px, 1fr) minmax(280px, 1fr);
        align-items: start;
        gap: var(--space-lg);
      }

      /* Hero: 2-col from 768px up */
      .hero__grid {
        grid-template-columns: minmax(0, 1fr) minmax(280px, 1fr);
        gap: 2.5rem;
      }

      .hero__illus {
        margin-top: 0;
        min-width: 0;
      }

      .hero__content {
        min-width: 0;
      }

      .hero__cta {
        flex-wrap: nowrap;
      }

      #twin .twin__illus-panel {
        margin: 0;
        max-width: none;
        padding: 0.75rem var(--space-sm) var(--space-xs);
      }

      #twin .twin__caps {
        grid-template-columns: repeat(3, 1fr);
        gap: var(--space-lg);
      }
    }

    /* ===================================================
       RESPONSIVE — 860px (PROBLEM TWO-COL + STICKY RAIL)
       =================================================== */
    @media (min-width: 641px) {
      #problem .problem__layout {
        grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
        align-items: start;
        gap: var(--space-xl);
      }

      /* Rail divider between columns */
      #problem .problem__layout::after {
        content: '';
        position: absolute;
        right: calc(40% + var(--space-xl) / 2);
        top: 0;
        bottom: 0;
        width: 1px;
        background: linear-gradient(
          180deg,
          transparent 0%,
          var(--color-border-light) 8%,
          var(--color-border-light) 85%,
          transparent 100%
        );
        pointer-events: none;
      }

      /* Sticky + self-scrolling panel */
      #problem .dt-diagram {
        position: sticky;
        top: calc(var(--header-height) + var(--space-lg));
      }

      #problem .visibility-panel__inner {
        max-height: calc(100vh - var(--header-height) - var(--space-lg) - var(--space-lg));
        overflow-y: scroll;
        scrollbar-width: thin;
        scrollbar-color: rgba(15,23,42,0.14) transparent;
      }

      #problem .visibility-panel__inner::-webkit-scrollbar {
        width: 5px;
      }
      #problem .visibility-panel__inner::-webkit-scrollbar-track {
        background: transparent;
      }
      #problem .visibility-panel__inner::-webkit-scrollbar-thumb {
        background: rgba(15,23,42,0.14);
        border-radius: 3px;
      }
      #problem .visibility-panel__inner::-webkit-scrollbar-thumb:hover {
        background: rgba(15,23,42,0.25);
      }

      /* Hide copy left-rail on desktop (column divider replaces it) */
      #problem .problem__copy::before {
        display: none;
      }
    }

    /* ===================================================
       RESPONSIVE — 960px
       =================================================== */
    @media (min-width: 960px) {
      .section {
        padding: var(--space-3xl) 0;
      }

      /* Restore full nav spacing on desktop */
      .nav {
        gap: var(--space-lg);
      }

      .nav__link {
        padding: var(--space-xs) var(--space-sm);
      }

      .hero__grid {
        grid-template-columns: minmax(0, 1fr) minmax(340px, 1.1fr);
        gap: 4rem;
      }

      .split {
        grid-template-columns: 1fr 1fr;
        gap: var(--space-xl);
        align-items: start;
      }

      #problem .problem__layout {
        gap: var(--space-2xl);
      }

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

      #rex .rex__grid {
        gap: 0.75rem;
      }

      #rex .rex__domains-grid {
        grid-template-columns: repeat(3, 1fr);
      }

      .media-text {
        grid-template-columns: 1fr 1fr;
        align-items: center;
      }

      #physical-ai .pai__grid {
        grid-template-columns: repeat(3, 1fr);
      }

      .tab-inner {
        grid-template-columns: 1fr 1fr 1fr;
      }
    }

    /* ===================================================
       DIAGRAM SYSTEM — dt- scoped
       =================================================== */
    .dt-diagram {
      --dt-stroke: rgba(255,255,255,0.22);
      --dt-stroke-s: rgba(255,255,255,0.34);
      --dt-fill: rgba(255,255,255,0.03);
      --dt-fill-2: rgba(255,255,255,0.06);
      --dt-text: rgba(255,255,255,0.78);
      --dt-meta: rgba(255,255,255,0.42);
      --dt-accent: #c9a84c;
      --dt-link: rgba(255,255,255,0.10);
      --dt-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Inter, Arial, sans-serif;
      position: relative;
    }

    .section--light .dt-diagram {
      --dt-stroke: rgba(15,23,42,0.22);
      --dt-stroke-s: rgba(15,23,42,0.34);
      --dt-fill: rgba(15,23,42,0.025);
      --dt-fill-2: rgba(15,23,42,0.055);
      --dt-text: rgba(15,23,42,0.78);
      --dt-meta: rgba(15,23,42,0.42);
      --dt-accent: #9a7b2e;
      --dt-link: rgba(15,23,42,0.10);
    }

    .dt-svg {
      display: block;
      width: 100%;
      height: auto;
      overflow: visible;
    }

    /* Placeholder stroke/fill classes */
    .dt-stroke       { stroke: var(--dt-stroke); stroke-width: 0.6; }
    .dt-stroke-strong { stroke: var(--dt-stroke-s); stroke-width: 0.75; }
    .dt-fill          { fill: var(--dt-fill); }
    .dt-fill-2        { fill: var(--dt-fill-2); }

    /* Placeholder text hierarchy */
    .dt-title { font-family: var(--dt-font); font-size: 9px; fill: var(--dt-text); letter-spacing: 0.1em; text-transform: uppercase; }
    .dt-label { font-family: var(--dt-font); font-size: 7.5px; fill: var(--dt-text); }
    .dt-meta  { font-family: var(--dt-font); font-size: 7px; fill: var(--dt-meta); letter-spacing: 0.08em; }

    /* Placeholder shape classes */
    .dt-card  { stroke: var(--dt-stroke-s); stroke-width: 0.75; fill: var(--dt-fill); rx: 4; }
    .dt-pill  { stroke: var(--dt-stroke); stroke-width: 0.6; fill: var(--dt-fill-2); rx: 12; }
    .dt-layer { stroke: var(--dt-stroke-s); stroke-width: 0.75; fill: var(--dt-fill); rx: 5; }

    /* Placeholder animation classes */
    .dt-anim-flow  { animation: dtDash 3s linear infinite; }
    .dt-anim-pulse { animation: dtPulse 4s ease-in-out infinite; }

    @keyframes dtDash {
      to { stroke-dashoffset: -24; }
    }

    @keyframes dtPulse {
      0%, 100% { opacity: 0.5; }
      50% { opacity: 1; }
    }

    /* Hero diagram layout hardening */
    .hero__illus .dt-diagram {
      min-width: 0;
      width: 100%;
    }

    .hero__illus .dt-svg {
      max-width: 100%;
    }

    /* ===================================================
       RESPONSIVE — 1200px
       =================================================== */
    @media (min-width: 1200px) {
      .container {
        padding: 0 var(--space-xl);
      }
    }

              .hf{font-family:var(--dt-font,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Inter,Arial,sans-serif)}
              .hBd{font-size:7px;font-weight:600;fill:rgba(226,232,240,0.52);letter-spacing:0.16em;text-transform:uppercase;text-anchor:middle}
              .hTl{font-size:5.4px;font-weight:400;fill:rgba(226,232,240,0.42);dominant-baseline:central;text-anchor:middle}
              .hBs{font-size:4.8px;font-weight:600;fill:rgba(226,232,240,0.30);letter-spacing:0.14em;text-transform:uppercase;text-anchor:middle}
              .hNd{font-size:5px;font-weight:500;fill:rgba(226,232,240,0.46);text-anchor:middle}
              .hRL{font-size:7.5px;font-weight:700;fill:rgba(201,168,76,0.64);letter-spacing:0.05em;text-anchor:middle}
              .hSt{font-size:4.0px;font-weight:600;fill:rgba(201,168,76,0.42);letter-spacing:0.08em;text-transform:uppercase;text-anchor:middle;dominant-baseline:central}
              .hSL{font-size:6px;font-weight:600;fill:rgba(226,232,240,0.48);letter-spacing:0.12em;text-transform:uppercase;text-anchor:middle}
              .hPA{font-size:6.5px;font-weight:700;fill:rgba(226,232,240,0.56);letter-spacing:0.14em;text-transform:uppercase;text-anchor:middle}
              .hOt{font-size:4.6px;font-weight:500;fill:rgba(226,232,240,0.42);dominant-baseline:central;text-anchor:middle}
              .hDv{font-size:4.6px;font-weight:500;fill:rgba(226,232,240,0.44);dominant-baseline:central}
              .hFp{font-size:4.2px;font-weight:700;fill:rgba(201,168,76,0.56);letter-spacing:0.06em;text-anchor:middle;dominant-baseline:central}
              .hPl{font-size:3.6px;font-weight:600;fill:rgba(201,168,76,0.38);letter-spacing:0.04em;text-anchor:middle;dominant-baseline:central}

                .bg { fill:#07101f; }
                .edgeA { stroke: rgba(255,255,255,0.18); stroke-width: 2; stroke-linecap: round; }
                .edgeB { stroke: rgba(255,255,255,0.10); stroke-width: 2; stroke-linecap: round; }
                .edgeC { stroke: rgba(255,255,255,0.08); stroke-width: 2; stroke-linecap: round; stroke-dasharray: 5 10; }
                .nodeL { fill: rgba(255,255,255,0.05); stroke: rgba(255,255,255,0.24); stroke-width: 2; }
                .nodeS { fill: rgba(255,255,255,0.03); stroke: rgba(255,255,255,0.14); stroke-width: 1.6; }
                .ring1 { fill:none; stroke: rgba(255,255,255,0.52); stroke-width: 2.6; }
                .ring2 { fill:none; stroke: rgba(255,255,255,0.20); stroke-width: 2.0; }
                .ring3 { fill:none; stroke: rgba(255,255,255,0.12); stroke-width: 2.0; stroke-dasharray: 4 10; }
                .coreFill { fill: rgba(255,255,255,0.06); stroke: rgba(255,255,255,0.62); stroke-width: 2.2; }
                .coreText{
            font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,sans-serif;
            font-size: 12.5px;
            font-weight: 900;
            letter-spacing: 2.2px;
            fill: rgba(255,255,255,0.80);
            text-transform: uppercase;
          }
                /* Title plates */
                .titlePlate { fill: rgba(255,255,255,0.03); stroke: rgba(255,255,255,0.12); stroke-width: 1; }
                .titleText {
                  font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,sans-serif;
                  font-size: 11px; font-weight: 800; letter-spacing: 5px;
                  fill: rgba(255,255,255,0.38); text-transform: uppercase;
                }
                /* Primary labels */
                .pLabel {
                  font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,sans-serif;
                  font-size: 13px; font-weight: 600;
                  fill: rgba(255,255,255,0.52);
                }
                /* Ghost labels */
                .gLabel {
                  font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,sans-serif;
                  font-size: 12px; font-weight: 500; letter-spacing: 1px;
                  fill: rgba(255,255,255,0.18);
                }

                .bg { fill:#07101f; }
                /* Edges (reduced rail prominence) */
                .edgeA { stroke: rgba(255,255,255,0.18); stroke-width: 2; stroke-linecap: round; }
                .edgeB { stroke: rgba(255,255,255,0.08); stroke-width: 2; stroke-linecap: round; }
                .edgeC { stroke: rgba(255,255,255,0.08); stroke-width: 2; stroke-linecap: round; stroke-dasharray: 5 10; }
                /* Nodes */
                .nodeL { fill: rgba(255,255,255,0.05); stroke: rgba(255,255,255,0.24); stroke-width: 2; }
                .nodeS { fill: rgba(255,255,255,0.02); stroke: rgba(255,255,255,0.12); stroke-width: 1.4; }
                /* Core */
                .ring1 { fill:none; stroke: rgba(255,255,255,0.52); stroke-width: 2.4; }
                .ring2 { fill:none; stroke: rgba(255,255,255,0.20); stroke-width: 2.0; }
                .ring3 { fill:none; stroke: rgba(255,255,255,0.12); stroke-width: 2.0; stroke-dasharray: 4 10; }
                .coreFill { fill: rgba(255,255,255,0.06); stroke: rgba(255,255,255,0.62); stroke-width: 2.0; }
                .coreText{
            font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,sans-serif;
            font-size: 9.5px;
            font-weight: 900;
            letter-spacing: 1.8px;
            fill: rgba(255,255,255,0.80);
            text-transform: uppercase;
          }
                /* Title plates */
                .titlePlate { fill: rgba(255,255,255,0.03); stroke: rgba(255,255,255,0.12); stroke-width: 1; }
                .titleText {
                  font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,sans-serif;
                  font-size: 9px; font-weight: 800; letter-spacing: 4px;
                  fill: rgba(255,255,255,0.38); text-transform: uppercase;
                }
                /* Primary labels */
                .pLabel {
                  font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,sans-serif;
                  font-size: 11px; font-weight: 600;
                  fill: rgba(255,255,255,0.52);
                }
                /* Ghost labels */
                .gLabel {
                  font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,sans-serif;
                  font-size: 10px; font-weight: 500; letter-spacing: 1px;
                  fill: rgba(255,255,255,0.18);
                }

            .v3-heading { font-family: -apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Inter,sans-serif; font-size: 6.5px; font-weight: 600; letter-spacing: 2px; fill: rgba(15,23,42,0.60); text-transform: uppercase; }
            .v3-label { font-family: -apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Inter,sans-serif; font-size: 8.5px; font-weight: 500; fill: rgba(15,23,42,0.73); }
            .v3-sub { font-family: -apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Inter,sans-serif; font-size: 3.5px; font-weight: 400; fill: rgba(15,23,42,0.48); }
            .v3-tiny { font-family: -apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Inter,sans-serif; font-size: 5.5px; font-weight: 400; fill: rgba(15,23,42,0.30); letter-spacing: 0.3px; }
            .v3-chip { font-family: -apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Inter,sans-serif; font-size: 5.5px; font-weight: 400; fill: rgba(15,23,42,0.42); }
            /* SVG3 — chassis palette (match SVG4 vibe) */
            .v3-faceTop   { fill: rgba(15,23,42,0.010); stroke: rgba(15,23,42,0.20); stroke-width: 1; }
            .v3-faceFront { fill: rgba(15,23,42,0.028); }
            .v3-faceSide  { fill: rgba(15,23,42,0.050); }
            .v3-rim { stroke: rgba(255,255,255,0.55); stroke-width: 0.8; stroke-linecap: round; }
            .v3-grid { stroke: rgba(15,23,42,0.06); stroke-width: 0.6; }

  .m4-label { font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Inter,sans-serif; font-size:10px; font-weight:700; letter-spacing:0.2px; fill: rgba(15,23,42,0.82); }
  .m4-micro { font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Inter,sans-serif; font-size:8px; font-weight:600; fill: rgba(15,23,42,0.56); }
  .m4-stroke  { stroke: rgba(15,23,42,0.34); stroke-width:1; }
  .m4-stroke2 { stroke: rgba(15,23,42,0.24); stroke-width:0.9; }
  .m4-ghost   { stroke: rgba(15,23,42,0.08); stroke-width:0.8; }
  .m4-faceTop   { fill: rgba(15,23,42,0.012); stroke: rgba(15,23,42,0.18); stroke-width:1; }
  .m4-faceFront { fill: rgba(15,23,42,0.030); }
  .m4-faceSide  { fill: rgba(15,23,42,0.052); }
  .m4-node      { fill: rgba(15,23,42,0.07); stroke: rgba(15,23,42,0.26); stroke-width:0.9; }
  .m4-nodeSolid { fill: rgba(15,23,42,0.12); stroke: rgba(15,23,42,0.34); stroke-width:0.9; }
  .m4-accent { stroke: var(--dt-accent, rgba(255,153,51,0.90)); }
  .m4-rim { stroke: rgba(255,255,255,0.55); stroke-width: 0.9; stroke-linecap: round; }
  .m4-exTop   { fill: rgba(255,153,51,0.08); stroke: rgba(15,23,42,0.22); stroke-width: 1; }
  .m4-exFront { fill: rgba(255,153,51,0.06); }
  .m4-exSide  { fill: rgba(255,153,51,0.09); }
