@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap');

:root {
  /* Cockpit theme — aligned with the approved home (cockpit.css) */
  --navy-950: #050f1c;
  --navy-900: #071321;
  --navy-850: #07111e;
  --navy-800: #0a1b30;
  --navy-700: #12253a;
  --navy-600: #1b3a5c;
  --paper: #eceeed;
  --paper-alt: #f7f8f7;
  --white: #fbfcfb;
  --ink-900: #090d12;
  --ink-700: #39424b;
  --ink-500: #626b73;
  --ink-300: #93a0ac;
  --gold-700: #754600;
  --gold-600: #805000;
  --gold-500: #8f5900;
  --gold-400: #dca43d;
  --gold-300: #e0a536;
  --gold-200: #f0d296;
  --accent-ink: var(--gold-700);
  --rule: #d6d9d7;
  --rule-soft: #e7eae8;
  --open: #1d7a45;
  --on-dark: #fff;
  --on-dark-700: #c9d4e0;
  --on-dark-500: #93a0ac;
  --shadow-sm: 0 10px 30px rgba(9, 13, 18, .08);
  --shadow-lg: 0 24px 70px rgba(9, 13, 18, .18);
  --font-display: Inter, 'Segoe UI', Helvetica, Arial, sans-serif;
  --font-body: Inter, 'Segoe UI', Helvetica, Arial, sans-serif;
  --font-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  --container: 1320px;
  /* The one masthead is 64px + a 1px rule. This token was 88px, describing the
     old .site-header that no page carries any more, so every sticky offset and
     every calc() that depends on it was 23px out. Measured, not assumed. */
  --nav-h: 65px;
  --radius-xs: 2px; /* one corner for every button on the site (Dante, 2026-09-10) */
  --radius-sm: 6px;
  --radius-md: 10px;
  --ease: cubic-bezier(.2, .7, .2, 1);
}

body.theme-moxy {
  --gold-700: #8e185d;
  --gold-600: #b51d73;
  --gold-500: #d62b89;
  --gold-400: #e43d98;
  --gold-300: #f08ac2;
  --gold-200: #f6c4df;
  --accent-ink: #8e185d;
}

body.theme-storage {
  --gold-700: #9b3512;
  --gold-600: #c64718;
  --gold-500: #ed5a1d;
  --gold-400: #f36b23;
  --gold-300: #ff9b63;
  --gold-200: #ffd0b7;
  --accent-ink: #9b3512;
}

body.theme-medical {
  --gold-700: #285a8b;
  --gold-600: #2d70ad;
  --gold-500: #3d86c4;
  --gold-400: #58a1d9;
  --gold-300: #90c3e9;
  --gold-200: #cfe8f8;
  --accent-ink: #285a8b;
}

*, *::before, *::after { box-sizing: border-box; }

html { scroll-behavior: smooth; scroll-padding-top: calc(var(--nav-h) + 24px); }

body {
  margin: 0;
  color: var(--ink-700);
  background: var(--paper);
  font-family: var(--font-body);
  font-size: 16px;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

body.nav-open { overflow: hidden; }

img { display: block; max-width: 100%; }

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

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

button { color: inherit; }

h1, h2, h3, h4, p, ul, ol, blockquote { margin-top: 0; }

h1, h2, h3, h4 {
  color: var(--ink-900);
  font-family: var(--font-display);
  font-weight: 500;
  line-height: 1.08;
  letter-spacing: -.02em;
}

h1 { font-size: clamp(3rem, 6vw, 5rem); }
h2 { font-size: clamp(2.3rem, 4vw, 3.65rem); }
h3 { font-size: clamp(1.55rem, 2.4vw, 2.15rem); }
h4 { font-size: 1.35rem; }

p { max-width: 67ch; }

::selection { color: var(--navy-950); background: var(--gold-200); }

:focus-visible {
  outline: 2px solid var(--white);
  outline-offset: 2px;
  box-shadow: 0 0 0 4px var(--navy-800);
}

.skip-link {
  position: fixed;
  z-index: 1000;
  top: 10px;
  left: 10px;
  padding: 10px 14px;
  color: var(--navy-950);
  background: var(--gold-400);
  transform: translateY(-180%);
  transition: transform .2s ease;
}

.skip-link:focus { transform: translateY(0); }

.container { width: min(calc(100% - 48px), var(--container)); margin-inline: auto; }
.container--narrow { width: min(calc(100% - 48px), 900px); margin-inline: auto; }

.section { padding: 96px 0; }
.section--tight { padding: 64px 0; }
.section--white { background: var(--white); }
.section--paper-alt { background: var(--paper-alt); }
/* HEADING INK ON A DARK SECTION.
   A navy section paints its headings for the dark ground, and any element that
   paints its own light surface takes that back. This used to be a blanket
   white rule plus a hand-maintained list of card selectors to exempt, and the
   list was wrong in both directions at once: .capability-card was on it but
   has no background of its own, so six headings rendered #090d12 on #050f1c,
   1.01:1, invisible; .comparison__side was missing from it and paints itself
   white, so its heading rendered white on white, 1:1, simply gone.
   Both were behind a Next click, which is why a load-state sweep never saw
   them, and neither would have been the last: every new light card inside a
   navy section was another one waiting.
   So the ink is an inherited property, and a surface resets it WHERE IT SETS
   ITS OWN BACKGROUND, a line away rather than a file away. Add a light card,
   set --heading-ink beside its background, and it cannot be forgotten
   somewhere else. */
.section--navy { color: var(--on-dark-700); background: var(--navy-950); --heading-ink: var(--white); --body-ink: var(--on-dark-700); }
.section--navy h2, .section--navy h3, .section--navy h4 { color: var(--heading-ink); }

/* The list that used to live here is gone. Each surface now declares its own
   --heading-ink next to its own background; see the note above. */

.eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 18px;
  color: var(--accent-ink);
  font-size: .69rem;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.eyebrow::before { content: ''; width: 28px; height: 1px; background: currentColor; }
.eyebrow--no-line::before { display: none; }
.on-dark .eyebrow, .section--navy .eyebrow { color: var(--gold-300); }

.accent { color: var(--gold-500); }
.on-dark .accent, .section--navy .accent { color: var(--gold-300); }

.lede { color: var(--ink-500); font-size: clamp(1.03rem, 1.4vw, 1.18rem); line-height: 1.75; }
.on-dark { color: var(--on-dark-700); }
.on-dark h1, .on-dark h2, .on-dark h3, .on-dark h4 { color: var(--white); }
.on-dark .lede { color: var(--on-dark-700); }
.section--navy .lede { color: var(--body-ink); }

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

.section-head h2 { margin-bottom: 0; }
.section-head p { margin-bottom: 2px; }
.section-head--stack { display: block; max-width: 760px; }
.section-head--stack p { margin-top: 22px; }

.btn {
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 12px 20px;
  border: 1px solid transparent;
  border-radius: var(--radius-xs);
  font-size: .84rem;
  font-weight: 650;
  line-height: 1.2;
  letter-spacing: .01em;
  cursor: pointer;
  transition: color .22s ease, background .22s ease, border-color .22s ease, transform .22s ease;
}

.btn:hover { transform: translateY(-1px); }
.btn--primary { color: #120C02; background: var(--hd-gold-fill, linear-gradient(135deg,#F0AD27,#D99B1B)); }
.btn--primary:hover { background: var(--gold-300); }
.btn--ghost { color: var(--white); border-color: rgba(255, 255, 255, .32); background: rgba(5, 13, 26, .16); }
.btn--ghost:hover { border-color: var(--gold-300); }
.btn--outline { color: var(--navy-900); border-color: var(--gold-500); background: transparent; }
.btn--outline:hover { color: var(--navy-950); background: var(--gold-200); }
/* outline buttons on dark answer/brief panels need light text */
.situation-page__answer .btn--outline, .capital-brief .btn--outline { color: #fff; border-color: rgba(224, 183, 111, .65); }
.situation-page__answer .btn--outline:hover, .capital-brief .btn--outline:hover { color: var(--navy-950); background: var(--gold-200); }
.btn--text { min-height: auto; padding: 0; color: var(--accent-ink); border: 0; }
.btn--text:hover { color: var(--gold-700); transform: none; }

.btn .ico, .link-arrow .ico { width: 17px; height: 17px; flex: 0 0 auto; }

.link-arrow {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: var(--accent-ink);
  font-size: .86rem;
  font-weight: 650;
}

.link-arrow .ico { transition: transform .2s ease; }
.link-arrow:hover .ico { transform: translateX(4px); }

.actions { display: flex; flex-wrap: wrap; gap: 12px; }

.ico { width: 22px; height: 22px; fill: none; stroke: currentColor; }

/* Header */
.site-header {
  position: sticky;
  z-index: 100;
  top: 0;
  height: var(--nav-h);
  color: var(--on-dark-700);
  background: rgba(5, 13, 26, .96);
  border-bottom: 1px solid rgba(255, 255, 255, .08);
  backdrop-filter: blur(16px);
}

.nav-shell { width: min(calc(100% - 80px), 1520px); height: 100%; display: flex; align-items: center; gap: 30px; }

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

.brand-mark { width: 34px; height: 38px; display: flex; align-items: flex-end; gap: 3px; }
.brand-mark span { width: 6px; background: linear-gradient(180deg, var(--gold-300), var(--gold-600)); clip-path: polygon(100% 0, 100% 100%, 0 100%, 0 22%); }
.brand-mark span:nth-child(1) { height: 21px; }
.brand-mark span:nth-child(2) { height: 29px; }
.brand-mark span:nth-child(3) { height: 37px; }
.brand-mark span:nth-child(4) { height: 25px; }

.brand-type { display: grid; line-height: 1; }
.brand-word { color: var(--white); font-family: var(--font-display); font-size: 1.72rem; letter-spacing: .06em; }
/* Was .48rem — 7.7px, the same failure as the client's own live 6.2px tagline
   and below any legibility floor. 11px minimum, with tracking eased from .17em
   so the lockup does not grow enough to crowd the bar. */
.brand-tag { margin-top: 5px; color: var(--gold-300); font-size: 11px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; }

.primary-nav { margin-left: auto; }
.primary-nav ul { display: flex; align-items: center; gap: clamp(18px, 1.7vw, 31px); margin: 0; padding: 0; list-style: none; }
.primary-nav a { position: relative; display: inline-flex; align-items: center; min-height: 44px; gap: 4px; font-size: .76rem; font-weight: 500; letter-spacing: -.01em; text-transform: none; white-space: nowrap; }
.primary-nav a .ico { width: 13px; height: 13px; }
.primary-nav a:hover, .primary-nav a[aria-current='page'] { color: var(--white); }
.primary-nav a[aria-current='page']::after { content: ''; position: absolute; right: 0; bottom: 3px; left: 0; height: 2px; background: var(--gold-400); }

.nav-login { display: inline-flex; align-items: center; gap: 8px; font-size: .76rem; font-weight: 500; letter-spacing: -.01em; text-transform: none; white-space: nowrap; }
.nav-login:hover { color: var(--white); }
.nav-login .ico { width: 18px; height: 18px; }
.nav-cta { flex: 0 0 auto; min-height: 44px; padding-inline: 17px; }
.mobile-nav-only { display: none; }

.nav-toggle {
  display: none;
  width: 46px;
  height: 46px;
  margin-left: auto;
  padding: 0;
  color: var(--white);
  background: transparent;
  border: 1px solid rgba(255, 255, 255, .2);
  border-radius: var(--radius-xs);
}

.nav-toggle span, .nav-toggle::before, .nav-toggle::after { content: ''; display: block; width: 20px; height: 1px; margin: 5px auto; background: currentColor; transition: transform .2s ease, opacity .2s ease; }
.nav-open .nav-toggle span { opacity: 0; }
.nav-open .nav-toggle::before { transform: translateY(6px) rotate(45deg); }
.nav-open .nav-toggle::after { transform: translateY(-6px) rotate(-45deg); }

/* Home hero */
.home-hero { min-height: calc(780px - var(--nav-h)); color: var(--on-dark-700); background: var(--navy-950); overflow: hidden; }
.home-hero__grid { min-height: calc(780px - var(--nav-h)); display: grid; grid-template-columns: minmax(440px, .9fr) minmax(620px, 1.4fr); }
.home-hero__copy { z-index: 2; display: flex; flex-direction: column; justify-content: center; padding: 82px clamp(44px, 6vw, 108px) 88px max(28px, calc((100vw - var(--container)) / 2)); background: radial-gradient(circle at 100% 50%, rgba(29, 67, 112, .25), transparent 46%); }
.home-hero h1 { max-width: 760px; margin-bottom: 24px; color: var(--white); font-size: clamp(3.25rem, 5.7vw, 5.7rem); }
.home-hero__copy .lede { max-width: 610px; margin-bottom: 34px; color: var(--on-dark-700); }

.hero-proof { display: flex; flex-wrap: wrap; gap: 12px 22px; margin-top: 34px; color: var(--on-dark-500); font-size: .72rem; font-weight: 600; letter-spacing: .09em; text-transform: uppercase; }
.hero-proof span { display: inline-flex; align-items: center; gap: 8px; }
.hero-proof span::before { content: ''; width: 5px; height: 5px; border-radius: 50%; background: var(--gold-400); }

.aperture {
  position: relative;
  min-width: 0;
  display: flex;
  background: var(--navy-850);
  isolation: isolate;
}

.aperture::after { content: ''; position: absolute; z-index: 5; inset: 0; pointer-events: none; background: linear-gradient(90deg, var(--navy-950) 0, transparent 19%), linear-gradient(0deg, rgba(5, 13, 26, .44), transparent 42%); }

.aperture__panel {
  position: relative;
  z-index: 1;
  min-width: 0;
  flex: 1 1 25%;
  overflow: hidden;
  color: var(--white);
  border-left: 1px solid rgba(217, 174, 107, .55);
  clip-path: polygon(13% 0, 100% 0, 87% 100%, 0 100%);
  margin-left: -5%;
  transition: flex .48s var(--ease), filter .32s ease;
}

.aperture__panel:first-child { margin-left: 0; }
.aperture__panel:hover, .aperture__panel:focus-visible { z-index: 4; flex: 1.35 1 34%; filter: saturate(1.08) brightness(1.08); }
.aperture__panel:focus-visible { outline: 3px solid var(--white); outline-offset: -6px; box-shadow: inset 0 0 0 6px var(--navy-950); }
.aperture__panel img { width: 100%; height: 100%; object-fit: cover; transform: scale(1.04); transition: transform .7s var(--ease); }
.aperture__panel:hover img, .aperture__panel:focus-visible img { transform: scale(1); }
.aperture__panel::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(5, 13, 26, .12), rgba(5, 13, 26, .76)); }
.aperture__label { position: absolute; z-index: 2; right: 24px; bottom: 34px; left: 38px; }
.aperture__label .ico { display: block; margin-bottom: 11px; color: var(--gold-300); }
.aperture__label strong { display: block; font-family: var(--font-display); font-size: clamp(1.05rem, 1.5vw, 1.4rem); font-weight: 500; line-height: 1.2; }
.aperture__label small { display: block; max-width: 180px; margin-top: 7px; color: var(--on-dark-700); font-size: 11px; line-height: 1.45; opacity: 0; transform: translateY(6px); transition: opacity .25s ease, transform .25s ease; }
.aperture__panel:hover small, .aperture__panel:focus-visible small { opacity: 1; transform: translateY(0); }

.truth-strip { color: var(--on-dark-700); background: var(--navy-900); border-top: 1px solid rgba(255, 255, 255, .08); border-bottom: 1px solid rgba(255, 255, 255, .08); }
.truth-strip__grid { display: grid; grid-template-columns: repeat(3, 1fr); }
.truth { min-height: 150px; display: grid; grid-template-columns: auto 1fr; gap: 18px; align-content: center; padding: 30px 40px; border-left: 1px solid rgba(255, 255, 255, .08); }
.truth:first-child { border-left: 0; }
.truth .ico { margin-top: 3px; color: var(--gold-300); }
.truth strong { display: block; margin-bottom: 6px; color: var(--white); font-family: var(--font-display); font-size: 1.25rem; font-weight: 500; }
.truth span { display: block; color: var(--on-dark-500); font-size: .8rem; line-height: 1.55; }

/* --------------------------------------------------------------------------
   Capstaq Deal Truth system
   Reconstructed from the supplied source screens: editorial paper, navy
   evidence interfaces, warm-gold line work, and individual-property context.
   -------------------------------------------------------------------------- */
.deal-home { overflow: hidden; background: var(--cream, var(--paper)); }
.deal-home .eyebrow { display: block; margin-bottom: 16px; color: var(--gold-700); font-size: 11px; letter-spacing: .15em; }
.deal-home .eyebrow::before { display: none; }
.deal-home h2 { letter-spacing: -.035em; }

.deal-home__hero { position: relative; min-height: 720px; color: var(--on-dark-700); background: var(--navy-950); overflow: hidden; }
.deal-home__hero-image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 66% 50%; opacity: .68; filter: saturate(.82) contrast(1.03); }
.deal-home__hero-shade { position: absolute; inset: 0; background:
  linear-gradient(90deg, rgba(3, 15, 29, .98) 0%, rgba(3, 15, 29, .94) 38%, rgba(3, 15, 29, .52) 68%, rgba(3, 15, 29, .78) 100%),
  linear-gradient(0deg, rgba(3, 15, 29, .9), transparent 50%); }
.deal-home__hero::before { content: ''; position: absolute; z-index: 1; top: 6%; right: 0; width: 46%; height: 84%; opacity: .34; background-image: linear-gradient(30deg, transparent 49.3%, rgba(201,151,79,.72) 49.5%, rgba(201,151,79,.72) 50.5%, transparent 50.7%), linear-gradient(150deg, transparent 49.3%, rgba(201,151,79,.72) 49.5%, rgba(201,151,79,.72) 50.5%, transparent 50.7%); background-size: 138px 104px; mask-image: linear-gradient(90deg, transparent, black 25%, black 80%, transparent); }
.deal-home__hero-grid { position: relative; z-index: 2; min-height: 656px; display: grid; grid-template-columns: minmax(340px, .86fr) minmax(560px, 1.14fr); align-items: center; gap: clamp(24px, 4vw, 84px); padding-top: 42px; padding-bottom: 74px; }
.deal-home__hero-copy { max-width: 560px; padding-top: 12px; }
.deal-home__hero-copy .eyebrow { color: var(--gold-300); }
.deal-home__hero-copy h1 { max-width: 560px; margin-bottom: 28px; color: #f9f5ec; font-size: clamp(3.7rem, 5.5vw, 6.2rem); line-height: .96; }
.deal-home__hero-copy h1 span { color: var(--gold-300); }
.deal-home__hero-copy p { margin: 0 0 32px; color: var(--on-dark-700); font-size: 1.04rem; line-height: 1.72; }
.deal-home__hero-copy .btn { min-height: 48px; padding-inline: 17px; font-size: .77rem; }
.deal-home__hero-copy .btn--ghost { background: rgba(3, 15, 29, .25); }
.deal-home__hero-copy .btn--ghost .ico { order: -1; width: 17px; height: 17px; }

.deal-console { position: relative; min-width: 0; display: grid; grid-template-columns: 72px minmax(0, 1fr); min-height: 454px; color: var(--on-dark-700); background: linear-gradient(145deg, #061b32, #020d1b 88%); border: 1px solid rgba(215,174,102,.42); border-radius: 9px; box-shadow: 0 28px 54px rgba(0,0,0,.36); overflow: hidden; }
.deal-home__console { transform: perspective(1100px) rotateY(-1.25deg) rotateX(.65deg); }
.deal-console::after { content: ''; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(122deg, rgba(255,255,255,.08), transparent 19%, transparent 73%, rgba(201,151,79,.08)); }
.deal-console__rail { z-index: 1; display: flex; flex-direction: column; padding: 16px 0; background: rgba(0, 5, 13, .5); border-right: 1px solid rgba(255,255,255,.10); }
.deal-console__rail-title { min-height: 52px; padding: 0 13px 14px; color: var(--gold-200); font-size: 11px; font-weight: 700; line-height: 1.25; letter-spacing: .09em; text-transform: uppercase; }
.deal-console__rail a { display: grid; place-items: center; min-height: 42px; padding: 5px; color: #c7d2dd; border-left: 2px solid transparent; font-size: 11px; font-weight: 600; line-height: 1.1; text-align: center; text-transform: uppercase; transition: .2s ease; }
.deal-console__rail a:hover { color: var(--white); background: rgba(201,151,79,.15); border-left-color: var(--gold-400); }
.deal-console__main { position: relative; z-index: 1; display: flex; flex-direction: column; min-width: 0; padding: 18px 20px 20px; }
.deal-console__head { display: flex; justify-content: space-between; gap: 14px; padding-bottom: 14px; color: #cbd5df; border-bottom: 1px solid rgba(255,255,255,.15); font-size: 11px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.deal-console__head span:last-child { color: var(--gold-200); font-weight: 500; letter-spacing: .05em; }
.deal-console__primary { display: grid; grid-template-columns: minmax(120px, .68fr) minmax(210px, 1fr); gap: 16px; flex: 1; min-height: 0; padding: 18px 0 16px; }
.deal-console__facts { display: flex; flex-direction: column; }
.deal-console__eyebrow { display: block; color: var(--gold-300); font-size: 11px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.deal-console__facts > strong { margin: 10px 0 16px; color: var(--white); font-family: var(--font-display); font-size: clamp(1.1rem, 1.55vw, 1.65rem); font-weight: 500; line-height: 1.08; }
.deal-console__facts dl { display: grid; gap: 0; margin: auto 0 0; }
.deal-console__facts dl div { padding: 9px 0; border-top: 1px solid rgba(255,255,255,.13); }
.deal-console__facts dt { margin-bottom: 3px; color: var(--gold-300); font-size: 11px; font-weight: 700; letter-spacing: .11em; text-transform: uppercase; }
.deal-console__facts dd { margin: 0; color: #cbd6e0; font-size: 11px; line-height: 1.35; }
.deal-console__property { position: relative; min-height: 224px; margin: 0; overflow: hidden; border: 1px solid rgba(215,174,102,.43); border-radius: 5px; background: var(--navy-800); }
.deal-console__property img { width: 100%; height: 100%; object-fit: cover; }
.deal-console__property::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 52%, rgba(2,12,23,.86)); }
.deal-console__property figcaption { position: absolute; z-index: 1; right: 11px; bottom: 9px; left: 11px; color: var(--white); font-size: 11px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.deal-console__truth { display: grid; grid-template-columns: minmax(0, 1fr) 190px; gap: 16px; align-items: center; padding-top: 14px; border-top: 1px solid rgba(255,255,255,.15); }
.deal-console__truth strong { display: block; margin-top: 6px; color: var(--white); font-family: var(--font-display); font-size: 1.05rem; font-weight: 500; }
.deal-console__truth small { display: block; max-width: 30ch; margin-top: 6px; color: #9fb0c0; font-size: 11px; line-height: 1.45; }
.deal-console__chart { position: relative; height: 72px; overflow: hidden; border-left: 1px solid rgba(201,151,79,.28); border-bottom: 1px solid rgba(201,151,79,.28); background: repeating-linear-gradient(0deg, transparent 0 17px, rgba(255,255,255,.06) 18px), repeating-linear-gradient(90deg, transparent 0 31px, rgba(255,255,255,.05) 32px); }
.deal-console__chart i { position: absolute; width: 61%; height: 2px; background: var(--gold-300); transform-origin: left center; }
.deal-console__chart i:nth-child(1) { bottom: 15px; left: 0; transform: rotate(-19deg); }
.deal-console__chart i:nth-child(2) { bottom: 34px; left: 41%; transform: rotate(18deg); }
.deal-console__chart i:nth-child(3) { bottom: 25px; left: 72%; width: 34%; transform: rotate(-34deg); }
.deal-console__chart b { position: absolute; top: 10px; right: 9px; width: 7px; height: 7px; background: var(--gold-300); border-radius: 50%; box-shadow: 0 0 0 5px rgba(201,151,79,.12); }

.deal-home__hero-rail { position: absolute; z-index: 3; right: 0; bottom: 0; left: 0; min-height: 64px; color: var(--gold-200); background: rgba(2, 12, 23, .85); border-top: 1px solid rgba(201,151,79,.35); border-bottom: 1px solid rgba(201,151,79,.28); }
.deal-home__hero-rail .container { min-height: 64px; display: grid; grid-template-columns: repeat(4, 1fr); align-items: center; }
.deal-home__hero-rail span { position: relative; padding: 0 22px; font-size: 11px; font-weight: 700; letter-spacing: .12em; text-align: center; text-transform: uppercase; }
.deal-home__hero-rail span + span { border-left: 1px solid rgba(201,151,79,.33); }

.deal-home__entry { padding-top: 88px; padding-bottom: 92px; border-bottom: 1px solid var(--rule); }
.deal-home__entry-heading { max-width: 850px; margin: 0 auto 44px; text-align: center; }
.deal-home__entry-heading h2 { margin-bottom: 18px; font-size: clamp(2.5rem,4.5vw,4.65rem); }
.deal-home__entry-heading p { max-width: 690px; margin: 0 auto; color: var(--ink-500); font-size: .98rem; }
.deal-home__entry-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
.investor-door { position: relative; min-height: 390px; display: flex; flex-direction: column; overflow: hidden; padding: clamp(30px,4vw,52px); color: var(--ink-800); background: #fbf8f2; border: 1px solid var(--rule); border-radius: 8px; transition: transform .3s var(--ease), border-color .3s ease, box-shadow .3s ease; }
.investor-door:hover { transform: translateY(-5px); border-color: var(--gold-300); box-shadow: 0 22px 44px rgba(3,15,29,.1); }
.investor-door--discover { color: var(--on-dark-700); background: radial-gradient(circle at 86% 12%,rgba(201,151,79,.16),transparent 31%),linear-gradient(145deg,#071d34,#031326); border-color: rgba(201,151,79,.52); }
.investor-door--discover:hover { border-color: var(--gold-300); box-shadow: 0 22px 44px rgba(3,15,29,.2); }
.investor-door__number { position: absolute; top: 23px; right: 27px; color: rgba(7,27,50,.16); font-family: var(--font-display); font-size: 4.8rem; line-height: 1; }
.investor-door--discover .investor-door__number { color: rgba(246,231,203,.11); }
.investor-door__icon { width: 54px; height: 54px; display: grid; place-items: center; margin-bottom: 24px; color: var(--gold-700); border: 1px solid var(--gold-300); border-radius: 50%; }
.investor-door__icon .ico { width: 25px; height: 25px; }
.investor-door--discover .investor-door__icon { color: var(--gold-200); border-color: rgba(201,151,79,.58); }
.investor-door .eyebrow { color: var(--gold-700); }
.investor-door--discover .eyebrow { color: var(--gold-300); }
.investor-door h3 { max-width: 500px; margin: 10px 0 12px; font-size: clamp(1.85rem,3vw,2.75rem); }
.investor-door--discover h3 { color: #faf5eb; }
.investor-door p { max-width: 58ch; margin-bottom: 24px; color: var(--ink-500); }
.investor-door--discover p { color: var(--on-dark-700); }
.investor-door__query { display: flex; flex-wrap: wrap; align-items: center; gap: 9px; margin-bottom: 28px; }
.investor-door__query b, .investor-door__prompts b { padding: 7px 10px; font-size: 11px; letter-spacing: .06em; text-transform: uppercase; background: var(--white); border: 1px solid var(--rule); border-radius: 3px; }
.investor-door__query i { width: 13px; height: 1px; background: var(--gold-400); }
.investor-door__prompts { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 28px; }
.investor-door__prompts b { color: var(--gold-100); background: rgba(255,255,255,.04); border-color: rgba(201,151,79,.35); }
.investor-door > .link-arrow { margin-top: auto; color: var(--gold-700); }
.investor-door--discover > .link-arrow { color: var(--gold-200); }
.deal-home__entry-note { margin: 24px 0 0; color: var(--gold-700); font-family: var(--font-display); font-size: .85rem; text-align: center; }

.deal-home__thesis { background: #fbf8f2; }
.deal-home__thesis-copy { text-align: center; }
.deal-home__thesis-copy h2 { margin-bottom: 22px; font-size: clamp(2.35rem, 4vw, 4rem); }
.deal-home__thesis-copy p { margin-inline: auto; color: var(--ink-500); font-size: .96rem; }
.deal-home__property-map { position: relative; min-height: 430px; margin-top: 44px; display: grid; place-items: center; overflow: hidden; color: inherit; }
.deal-home__property-map::before, .deal-home__property-map::after { content: ''; position: absolute; width: 32%; height: 1px; background: linear-gradient(90deg, transparent, var(--gold-500)); }
.deal-home__property-map::before { top: 33%; left: 6%; }
.deal-home__property-map::after { top: 60%; right: 6%; transform: rotate(180deg); }
.deal-home__property-map img { position: relative; z-index: 1; width: min(720px, 62vw); height: clamp(270px,25vw,350px); object-fit: cover; object-position: center 58%; border-radius: 5px; filter: drop-shadow(0 20px 24px rgba(4,18,35,.28)); transition: transform .5s var(--ease); }
.deal-home__property-map:hover img { transform: scale(1.018); }
.deal-home__callout { position: absolute; z-index: 2; color: var(--ink-700); font-size: 11px; font-weight: 700; letter-spacing: .11em; text-transform: uppercase; }
.deal-home__callout::after { content: ''; position: absolute; top: 50%; width: 74px; border-top: 1px dotted var(--gold-500); }
.deal-home__callout--property { top: 28%; left: 8%; }
.deal-home__callout--property::after { left: calc(100% + 10px); }
.deal-home__callout--operator { top: 28%; right: 8%; }
.deal-home__callout--operator::after { right: calc(100% + 10px); }
.deal-home__callout--economics { bottom: 31%; left: 8%; }
.deal-home__callout--economics::after { left: calc(100% + 10px); }
.deal-home__callout--risk { right: 8%; bottom: 31%; }
.deal-home__callout--risk::after { right: calc(100% + 10px); }
.deal-home__property-map-caption { position: absolute; z-index: 3; bottom: 1px; color: var(--gold-700); font-family: var(--font-display); font-size: .75rem; }

.deal-home__ownership { padding-top: 78px; padding-bottom: 70px; background: #04162a; }
.deal-home__ownership h2, .deal-home__assets h2 { color: #f9f5ec; }
.deal-home__ownership-grid, .deal-home__asset-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.ownership-card, .asset-selection-card { position: relative; min-height: 286px; display: block; overflow: hidden; color: var(--white); background: var(--navy-900); border: 1px solid rgba(201,151,79,.44); border-radius: 5px; }
.ownership-card img, .asset-selection-card img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .55s var(--ease); }
.ownership-card:hover img, .asset-selection-card:hover img { transform: scale(1.04); }
.ownership-card__shade, .asset-selection-card__shade { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(3,15,29,.08), rgba(3,15,29,.92)); }
.ownership-card__body, .asset-selection-card__body { position: absolute; z-index: 1; inset: auto 22px 18px; display: grid; gap: 7px; }
.ownership-card__body .ico, .asset-selection-card__body .ico { width: 25px; height: 25px; color: var(--gold-300); }
.ownership-card__body strong, .asset-selection-card__body strong { color: var(--white); font-family: var(--font-display); font-size: 1.35rem; font-weight: 500; line-height: 1.1; }
.ownership-card__body small, .asset-selection-card__body small { min-height: 3.2em; color: var(--on-dark-700); font-size: 11px; line-height: 1.45; }
.ownership-card__body em, .asset-selection-card__body em { display: inline-flex; align-items: center; gap: 7px; color: var(--gold-200); font-size: 11px; font-style: normal; font-weight: 700; }
.ownership-card__body em .ico, .asset-selection-card__body em .ico { width: 15px; height: 15px; }
.deal-home__micro { margin: 12px 0 0; color: var(--on-dark-500); font-size: 11px; text-align: center; }

.deal-home__truth { background: #faf7f0; }
.deal-home__truth-grid { display: grid; grid-template-columns: minmax(260px,.74fr) minmax(440px,1.26fr); align-items: center; gap: clamp(34px,6vw,90px); }
.deal-home__truth-grid h2 { font-size: clamp(2.35rem, 4vw, 4.35rem); }
.deal-home__truth-grid .lede { margin-bottom: 27px; }
.deal-truth-panel { overflow: hidden; color: var(--on-dark-700); background: linear-gradient(145deg,#071d34,#031326); border: 1px solid rgba(201,151,79,.54); border-radius: 8px; box-shadow: 0 20px 38px rgba(3,15,29,.16); }
.deal-truth-panel nav { display: grid; grid-template-columns: repeat(6,1fr); border-bottom: 1px solid rgba(201,151,79,.35); }
.deal-truth-panel nav span { padding: 11px 8px; color: var(--gold-200); border-right: 1px solid rgba(201,151,79,.25); font-size: 11px; font-weight: 700; letter-spacing: .08em; text-align: center; text-transform: uppercase; }
.deal-truth-panel nav span:first-child { color: var(--navy-950); background: var(--gold-400); }
.deal-truth-panel__drawing { min-height: 258px; display: grid; grid-template-columns: minmax(210px,1fr) minmax(170px,.82fr); align-items: center; gap: 16px; padding: 25px; }
.deal-truth-panel__building { position: relative; width: 198px; height: 178px; margin-inline: auto; border: 2px solid rgba(196,145,72,.78); background: repeating-linear-gradient(90deg, transparent 0 26px, rgba(196,145,72,.45) 27px 28px), repeating-linear-gradient(0deg, transparent 0 25px, rgba(196,145,72,.35) 26px 27px); box-shadow: inset 0 0 45px rgba(87,149,201,.18), 0 0 40px rgba(201,151,79,.11); transform: perspective(470px) rotateX(6deg) rotateY(-13deg); }
.deal-truth-panel__building::before, .deal-truth-panel__building::after { content: ''; position: absolute; background: rgba(196,145,72,.8); }
.deal-truth-panel__building::before { left: -14px; bottom: -16px; width: 226px; height: 2px; box-shadow: 0 -25px 0 rgba(196,145,72,.22), 0 -50px 0 rgba(196,145,72,.22); }
.deal-truth-panel__building::after { top: -11px; left: 0; width: 100%; height: 2px; }
.deal-truth-panel__building i { position: absolute; width: 6px; height: 6px; background: var(--gold-300); border-radius: 50%; box-shadow: 0 0 0 6px rgba(201,151,79,.10); }
.deal-truth-panel__building i:nth-child(1) { top: 27%; left: 12%; }
.deal-truth-panel__building i:nth-child(2) { top: 53%; right: 28%; }
.deal-truth-panel__building i:nth-child(3) { bottom: 20%; left: 35%; }
.deal-truth-panel__building i:nth-child(4) { top: 16%; right: 14%; }
.deal-truth-panel__building i:nth-child(5) { bottom: 18%; right: 10%; }
.deal-truth-panel ul { display: grid; gap: 18px; margin: 0; padding: 0; list-style: none; }
.deal-truth-panel li { position: relative; padding-left: 28px; color: #e8edf1; font-size: .72rem; line-height: 1.35; }
.deal-truth-panel li::before { content: ''; position: absolute; top: .55em; left: 0; width: 18px; border-top: 1px solid var(--gold-400); }
.deal-home__center-line { margin: 24px 0 0; color: var(--gold-700); font-family: var(--font-display); font-size: 1.05rem; text-align: center; }

.deal-home__assets { padding-top: 76px; padding-bottom: 70px; background: #04182d; }
.asset-selection-card { min-height: 235px; }
.asset-selection-card__body small { min-height: 0; }
.deal-home__partner-section { background: #faf7f0; }
.deal-home__partner-grid { display: grid; grid-template-columns: minmax(330px, 1.1fr) minmax(300px, .9fr); align-items: center; gap: clamp(38px, 7vw, 110px); }
.deal-home__image-triad { min-height: 372px; display: grid; grid-template-columns: .6fr .6fr 1fr; gap: 8px; }
.deal-home__image-triad img { width: 100%; height: 100%; min-height: 0; object-fit: cover; border-radius: 3px; }
.deal-home__image-triad img:nth-child(1) { object-position: 35% 50%; }
.deal-home__image-triad img:nth-child(2) { object-position: 50% 50%; }
.deal-home__image-triad img:nth-child(3) { object-position: 65% 50%; }
.deal-home__partner-grid h2 { font-size: clamp(2.1rem,3.6vw,3.45rem); }
.deal-home__partner-grid .check-list { gap: 10px; margin: 24px 0; }
.deal-home__partner-grid .check-list li { color: var(--gold-700); font-size: .69rem; letter-spacing: .08em; text-transform: uppercase; }
.deal-home__partner-grid .check-list .ico { color: var(--gold-500); }

.deal-home__marketplace { position: relative; color: var(--on-dark-700); background: linear-gradient(90deg, #061a30, #020d1b); }
.deal-home__marketplace::after { content: ''; position: absolute; inset: 0; pointer-events: none; opacity: .18; background-image: linear-gradient(30deg, transparent 48%, rgba(201,151,79,.75) 49%, rgba(201,151,79,.75) 50%, transparent 51%), linear-gradient(150deg, transparent 48%, rgba(201,151,79,.75) 49%, rgba(201,151,79,.75) 50%, transparent 51%); background-size: 128px 90px; mask-image: linear-gradient(90deg, black, transparent 45%, transparent); }
.deal-home__marketplace-grid { position: relative; z-index: 1; min-height: 388px; display: grid; grid-template-columns: minmax(290px,.94fr) minmax(350px,1.06fr); align-items: center; gap: clamp(40px,8vw,130px); padding-top: 64px; padding-bottom: 64px; }
.deal-home__marketplace .eyebrow { color: var(--gold-300); }
.deal-home__marketplace h2 { color: #f9f5ec; font-size: clamp(2rem,3.6vw,3.5rem); }
.deal-home__marketplace p { color: var(--on-dark-700); font-size: .92rem; line-height: 1.6; }
.deal-home__marketplace .btn { margin-top: 16px; }
.deal-home__marketplace-graphic { min-height: 214px; display: grid; grid-template-columns: 1fr 76px 1.15fr 76px 1fr; align-items: center; color: var(--on-dark-700); }
.deal-home__marketplace-graphic > span { padding: 22px 14px; text-align: center; border: 1px solid rgba(201,151,79,.5); border-radius: 3px; font-family: var(--font-display); font-size: 1.05rem; line-height: 1.2; }
.deal-home__marketplace-graphic > i { position: relative; height: 1px; background: var(--gold-400); }
.deal-home__marketplace-graphic > i::after { content: ''; position: absolute; top: -4px; right: -1px; width: 8px; height: 8px; border-top: 1px solid var(--gold-400); border-right: 1px solid var(--gold-400); transform: rotate(45deg); }
.deal-home__marketplace-graphic > div { display: grid; place-items: center; aspect-ratio: 1; max-width: 176px; margin-inline: auto; color: var(--gold-200); background: rgba(201,151,79,.12); border: 1px solid var(--gold-400); border-radius: 2px; box-shadow: inset 0 0 0 10px rgba(201,151,79,.06); font-family: var(--font-display); font-size: 1.25rem; line-height: 1.1; text-align: center; }

.deal-home__closing { color: var(--on-dark-700); background: linear-gradient(90deg, rgba(3,15,29,.96), rgba(3,15,29,.66)), url('../img/heroes/home.jpg') center / cover; border-top: 1px solid rgba(201,151,79,.35); }
.deal-home__closing-grid { min-height: 280px; display: grid; grid-template-columns: minmax(300px,1.2fr) auto; align-items: center; gap: 48px; padding-top: 52px; padding-bottom: 52px; }
.deal-home__closing .eyebrow { color: var(--gold-300); }
.deal-home__closing h2 { max-width: 700px; color: #f9f5ec; font-size: clamp(2rem,3.2vw,3.25rem); }
.deal-home__closing p { margin-bottom: 0; }
.deal-home__closing .btn--ghost { background: rgba(3,15,29,.35); }

/* Destination-page system --------------------------------------------------- */
.story-page { overflow: hidden; background: var(--hd-paper, #F7F5F0); }
.story-hero { position: relative; overflow: hidden; background: var(--hd-paper, #F7F5F0); }
.story-hero::before { content: ''; position: absolute; inset: 0; pointer-events: none; opacity: .48; background-image: radial-gradient(circle at 1px 1px, rgba(192,138,62,.72) 1px, transparent 1.5px), linear-gradient(36deg, transparent 49.6%, rgba(192,138,62,.18) 49.8%, rgba(192,138,62,.18) 50.2%, transparent 50.4%); background-size: 92px 92px, 184px 128px; mask-image: linear-gradient(90deg, rgba(0,0,0,.75), transparent 47%, rgba(0,0,0,.1)); }
.story-hero--dark { color: var(--on-dark-700); background: radial-gradient(circle at 76% 5%, rgba(42,88,135,.45), transparent 29%), linear-gradient(130deg, #071a30, #020d1b); }
.story-hero--dark::before { opacity: .25; }
.story-hero__grid { position: relative; z-index: 1; min-height: 552px; display: grid; grid-template-columns: minmax(330px,.85fr) minmax(480px,1.15fr); align-items: center; gap: clamp(38px,7vw,105px); padding-top: 76px; padding-bottom: 76px; }
.story-hero__copy h1 { max-width: 670px; margin-bottom: 20px; font-size: clamp(3.2rem, 5.4vw, 5.55rem); }
.story-hero--dark .story-hero__copy h1 { color: #fff; }
.story-hero--dark .story-hero__copy .eyebrow { color: var(--gold-300); }

.story-hero__copy .lede { margin-bottom: 28px; font-size: 1rem; line-height: 1.65; }
.story-hero--dark .story-hero__copy .lede { color: var(--on-dark-700); }
.story-hero__visual { position: relative; min-height: 365px; padding: 18px; overflow: hidden; background: #06182d; border: 1px solid rgba(201,151,79,.48); border-radius: 9px; box-shadow: 0 25px 52px rgba(3,15,29,.19); }
.story-hero__visual > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: .48; }
.story-hero__visual > img + * { position: relative; z-index: 1; }
.story-hero__visual::after { content: ''; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(125deg, rgba(3,15,29,.16), rgba(3,15,29,.72)); }
.story-hero__visual > * { position: relative; z-index: 1; }
.story-hero__support { display: flex; flex-wrap: wrap; gap: 12px 20px; margin-top: 24px; color: var(--gold-700); font-size: 11px; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; }
.story-hero--dark .story-hero__support { color: var(--gold-200); }
.story-hero__support span::before { content: '•'; margin-right: 8px; color: var(--gold-400); }
.story-hero__support span:first-child::before { display: none; }

.mini-ledger { display: grid; gap: 0; margin: 0; }
.mini-ledger > div { display: grid; grid-template-columns: 30px 1fr; gap: 10px; padding: 13px 0; border-top: 1px solid rgba(255,255,255,.12); }
.mini-ledger > div:first-child { border-top: 0; }
.mini-ledger .ico { grid-row: 1 / span 2; color: var(--gold-300); }
.mini-ledger dt { color: var(--gold-300); font-size: 11px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.mini-ledger dd { margin: 3px 0 0; color: #f2f5f8; font-size: .78rem; line-height: 1.35; }

.story-quote { max-width: 920px; margin-inline: auto; text-align: center; }
.story-quote .ico { width: 32px; height: 32px; margin-bottom: 16px; color: var(--gold-500); }
.story-quote blockquote { margin: 0; color: var(--ink-900); font-family: var(--font-display); font-size: clamp(2rem,3.8vw,3.65rem); font-weight: 500; line-height: 1.12; letter-spacing: -.035em; }
.story-quote p { margin: 20px auto 0; color: var(--ink-500); }
.story-caveats { display: flex; justify-content: center; flex-wrap: wrap; gap: 0; margin-top: 30px; }
.story-caveats span { padding: 0 22px; color: var(--gold-700); border-left: 1px solid var(--rule); font-family: var(--font-display); font-size: 1rem; }
.story-caveats span:first-child { border-left: 0; }

.process-stage { color: var(--on-dark-700); background: linear-gradient(135deg,#071d34,#031326); }
.process-stage h2 { color: #fff; }
.process-stage .eyebrow { color: var(--gold-300); }
.stage-rail { display: grid; grid-template-columns: repeat(4,1fr); margin-top: 42px; }
.stage-step { position: relative; min-height: 172px; padding: 0 22px 0 58px; border-left: 1px solid rgba(201,151,79,.34); }
.stage-step:first-child { border-left: 0; }
.stage-step::before { content: attr(data-step); position: absolute; top: -12px; left: 19px; width: 35px; height: 35px; display: grid; place-items: center; color: var(--navy-950); background: var(--gold-400); border-radius: 50%; font-size: 11px; font-weight: 700; }
.stage-step:not(:last-child)::after { content: ''; position: absolute; top: 6px; right: -6px; width: 12px; height: 12px; border-top: 1px solid var(--gold-400); border-right: 1px solid var(--gold-400); transform: rotate(45deg); }
.stage-step h3 { margin: 32px 0 10px; color: #fbf7ee; font-size: 1.2rem; }
.stage-step p { margin: 0; color: var(--on-dark-500); font-size: .72rem; line-height: 1.5; }
.stage-note { margin: 24px 0 0; color: var(--on-dark-500); font-size: .69rem; text-align: center; }

.market-visual { display: grid; grid-template-columns: 1fr 56px 1fr; align-items: center; gap: 14px; height: 100%; }
.market-visual__person { padding: 22px 14px; color: #f7f3eb; border: 1px solid rgba(201,151,79,.54); border-radius: 5px; text-align: center; }
.market-visual__person .ico { display: block; width: 34px; height: 34px; margin: 0 auto 12px; color: var(--gold-300); }
.market-visual__person strong, .market-visual__person small { display: block; }
.market-visual__person strong { font-family: var(--font-display); font-size: 1.16rem; font-weight: 500; }
.market-visual__person small { margin-top: 5px; color: var(--on-dark-500); font-size: 11px; }
.market-visual__transfer { position: relative; height: 1px; background: var(--gold-400); }
.market-visual__transfer::before { content: 'Ownership interest'; position: absolute; top: -31px; left: 50%; width: 130px; transform: translateX(-50%); color: var(--gold-200); font-size: 11px; font-weight: 700; letter-spacing: .08em; text-align: center; text-transform: uppercase; }
.market-visual__transfer::after { content: ''; position: absolute; top: -4px; right: 0; width: 8px; height: 8px; border-top: 1px solid var(--gold-400); border-right: 1px solid var(--gold-400); transform: rotate(45deg); }

.market-story-grid { display: grid; grid-template-columns: minmax(280px,.8fr) minmax(460px,1.2fr); gap: clamp(38px,6vw,100px); align-items: center; }
.market-property { position: relative; min-height: 335px; overflow: hidden; color: #f8f5ee; background: #061a30; border-radius: 6px; }
.market-property img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: .42; }
.market-property::after { content:''; position:absolute; inset:0; background:linear-gradient(0deg,rgba(3,15,29,.95),rgba(3,15,29,.23)); }
.market-property__copy { position:absolute; z-index:1; right:30px; bottom:25px; left:30px; }
.market-property__copy small { color:var(--gold-300); font-size:11px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.market-property__copy strong { display:block; margin-top:10px; font-family:var(--font-display); font-size:1.55rem; font-weight:500; line-height:1.1; }
.market-list { display:grid; gap:0; margin:0; padding:0; list-style:none; border-top:1px solid var(--rule); }
.market-list li { display:grid; grid-template-columns:30px 1fr; gap:12px; padding:15px 0; border-bottom:1px solid var(--rule); }
.market-list .ico { color:var(--gold-500); }
.market-list strong { display:block; color:var(--ink-900); font-family:var(--font-display); font-size:1.05rem; font-weight:500; }
.market-list span { display:block; margin-top:3px; color:var(--ink-500); font-size:.72rem; }
.life-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; }
.life-card { position:relative; min-height:218px; overflow:hidden; color:#fff; border:1px solid rgba(201,151,79,.37); border-radius:5px; }
.life-card img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:.52; }
.life-card::after { content:''; position:absolute; inset:0; background:linear-gradient(0deg,rgba(3,15,29,.95),rgba(3,15,29,.16)); }
.life-card__copy { position:absolute; z-index:1; right:16px; bottom:15px; left:16px; }
.life-card__copy .ico { color:var(--gold-300); }
.life-card__copy strong { display:block; margin-top:12px; color:#fff; font-family:var(--font-display); font-size:1.14rem; font-weight:500; }
.life-card__copy span { display:block; margin-top:3px; color:var(--gold-200); font-size:11px; letter-spacing:.1em; text-transform:uppercase; }
.interest-table { overflow:hidden; background:#fff; border:1px solid var(--rule); border-radius:6px; }
.interest-table__head, .interest-row { display:grid; grid-template-columns:minmax(240px,1.7fr) .8fr .8fr auto; gap:16px; align-items:center; padding:17px 22px; }
.interest-table__head { color:var(--gold-700); background:#fbf7ef; border-bottom:1px solid var(--rule); font-size:11px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.interest-row + .interest-row { border-top:1px solid var(--rule); }
.interest-row img { width:84px; height:52px; object-fit:cover; border-radius:3px; }
.interest-row > div { display:flex; align-items:center; gap:13px; }
.interest-row strong { color:var(--ink-900); font-family:var(--font-display); font-size:1.05rem; font-weight:500; }
.interest-row span { color:var(--ink-500); font-size:.7rem; }
.interest-row a { color:var(--gold-700); font-size:.7rem; font-weight:700; white-space:nowrap; }

.partner-directory { display:grid; grid-template-columns:minmax(280px,.9fr) minmax(490px,1.1fr); gap:clamp(36px,5vw,82px); align-items:start; }
.partner-directory__map { position:relative; min-height:430px; display:grid; place-items:center; overflow:hidden; color:var(--gold-300); background:radial-gradient(circle at 48% 43%,rgba(44,82,119,.28),transparent 47%),#06182d; border:1px solid rgba(201,151,79,.36); border-radius:7px; }
.partner-directory__map .ico { width:76%; height:48%; filter:drop-shadow(0 0 17px rgba(201,151,79,.23)); }
.partner-directory__map::before { content:''; position:absolute; inset:15% 7%; opacity:.55; background:radial-gradient(circle at 17% 42%,var(--gold-400) 0 5px,transparent 6px),radial-gradient(circle at 44% 66%,var(--gold-400) 0 5px,transparent 6px),radial-gradient(circle at 66% 40%,var(--gold-400) 0 5px,transparent 6px),radial-gradient(circle at 80% 72%,var(--gold-400) 0 5px,transparent 6px); }
.partner-directory__map figcaption { position:absolute; right:20px; bottom:18px; left:20px; display:grid; grid-template-columns:repeat(4,1fr); gap:0; border-top:1px solid rgba(201,151,79,.35); }
.partner-directory__map figcaption span { padding-top:14px; color:var(--gold-200); border-left:1px solid rgba(201,151,79,.35); font-size:11px; font-weight:700; text-align:center; }
.partner-directory__map figcaption span:first-child { border-left:0; }
.partner-directory__cards { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
.partner-directory__card { min-height:198px; display:flex; flex-direction:column; justify-content:space-between; padding:24px 19px 18px; color:var(--ink-900); background:#fff; --heading-ink: var(--ink-900); --body-ink: var(--ink-500); border:1px solid var(--rule); border-radius:6px; }
.partner-directory__card .ico { width:46px; height:46px; color:var(--gold-500); }
.partner-directory__card h3 { margin:20px 0 8px; font-size:1.4rem; }
.partner-directory__card a { display:inline-flex; justify-content:space-between; align-items:center; min-height:34px; margin-top:12px; padding:0 11px; color:#fff; background:linear-gradient(90deg,var(--gold-500),var(--gold-400)); border-radius:3px; font-size:11px; font-weight:700; }

.capability-grid { display:grid; grid-template-columns:repeat(6,1fr); gap:12px; }
.capability-card { min-height:212px; padding:24px 18px; color:var(--on-dark-700); border:1px solid rgba(201,151,79,.5); border-radius:5px; }
.capability-card .ico { width:38px; height:38px; color:var(--gold-300); }
.capability-card h3 { margin:18px 0 10px; color:#f7f3eb; font-size:1.18rem; }
.capability-card p { margin:0; color:var(--on-dark-500); font-size:11px; line-height:1.45; }
.partner-bridge { display:grid; grid-template-columns:.7fr 1.3fr; gap:48px; align-items:center; }
.relationship-flow { display:grid; grid-template-columns:1fr 70px 1.1fr 70px 1fr; align-items:center; }
.relationship-flow > div { min-height:148px; display:grid; place-items:center; padding:20px 12px; color:var(--ink-900); background:#fff; border:1px solid var(--rule); border-radius:5px; font-family:var(--font-display); font-size:1.2rem; text-align:center; }
.relationship-flow > i { position:relative; height:1px; background:var(--gold-500); }
.relationship-flow > i::after { content:''; position:absolute; top:-4px; right:0; width:8px; height:8px; border-top:1px solid var(--gold-500); border-right:1px solid var(--gold-500); transform:rotate(45deg); }

.editorial-board { display:grid; grid-template-columns:minmax(275px,.75fr) minmax(460px,1.25fr); gap:26px; align-items:stretch; }
.editorial-board__feature { position:relative; min-height:300px; overflow:hidden; color:#f9f5ec; background:#061a30; border-radius:6px; }
.editorial-board__feature img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:.56; }
.editorial-board__feature::after { content:''; position:absolute; inset:0; background:linear-gradient(90deg,rgba(3,15,29,.95),rgba(3,15,29,.35)); }
.editorial-board__feature > div { position:relative; z-index:1; max-width:62%; padding:38px 32px; }
.editorial-board__feature h2 { color:#fff; font-size:clamp(2rem,3.2vw,3rem); }
.editorial-board__links { background:#fff; border:1px solid var(--rule); border-radius:6px; overflow:hidden; }
.editorial-board__links a { min-height:60px; display:grid; grid-template-columns:30px 1fr auto; align-items:center; gap:14px; padding:11px 20px; border-top:1px solid var(--rule); font-family:var(--font-display); font-size:1.1rem; }
.editorial-board__links a:first-child { border-top:0; }
.editorial-board__links .ico { color:var(--gold-500); }
.editorial-board__links a:hover { color:var(--gold-700); background:#fbf7ef; }
.resource-pills { display:grid; grid-template-columns:repeat(6,1fr); gap:10px; margin-top:24px; }
.resource-pill { min-height:60px; display:grid; grid-template-columns:26px 1fr; align-items:center; gap:9px; padding:10px 13px; background:#fff; border:1px solid var(--rule); border-radius:4px; color:var(--ink-900); font-size:.7rem; }
.resource-pill .ico { color:var(--gold-500); }

.source-form-layout { color:var(--on-dark-700); background:radial-gradient(circle at 70% 20%,var(--navy-700),transparent 32%),var(--navy-950); }
.source-form-layout__grid { min-height:640px; display:grid; grid-template-columns:minmax(280px,.63fr) minmax(490px,1.37fr); align-items:center; gap:70px; padding-top:62px; padding-bottom:62px; }
.source-form-layout__grid > * { min-width:0; }
.source-form-layout h1 { color:#faf7ef; font-size:clamp(3rem,5vw,5rem); }
.source-form-layout .eyebrow { color:var(--gold-300); }
.source-form-layout p { color:var(--on-dark-700); }
.source-form { padding:36px; color:var(--ink-700); background:#fbfaf7; border-radius:8px; box-shadow:0 28px 70px rgba(0,0,0,.32); }
.source-form > p { color:var(--ink-700); }
.source-form h2 { margin-bottom:26px; font-size:2rem; }
.form-steps { display:grid; grid-template-columns:repeat(4,1fr); gap:0; margin-bottom:28px; }
.form-steps span { position:relative; padding-top:25px; color:var(--ink-500); border-top:1px solid var(--rule); font-size:11px; font-weight:700; text-align:center; }
.form-steps span::before { content:attr(data-step); position:absolute; top:-12px; left:50%; width:24px; height:24px; display:grid; place-items:center; transform:translateX(-50%); color:var(--ink-700); background:#fff; border:1px solid var(--rule); border-radius:50%; }
.form-steps span.is-active { color:var(--ink-900); border-top-color:var(--gold-500); }
.form-steps span.is-active::before { color:#fff; background:var(--navy-900); border-color:var(--navy-900); }
.preference-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin:16px 0 20px; }
.preference { min-height:104px; display:grid; place-items:center; align-content:center; gap:8px; padding:14px; background:#fff; border:1px solid var(--rule); border-radius:4px; color:var(--ink-900); font-size:11px; text-align:center; }
.preference .ico { color:var(--gold-500); }
.source-form__controls { display:grid; grid-template-columns:1fr 1fr; gap:13px; }
.source-form label { display:grid; gap:6px; color:var(--ink-700); font-size:11px; font-weight:700; }
.source-form select { width:100%; min-height:44px; padding:0 12px; color:var(--ink-500); background:#fff; border:1px solid var(--rule); border-radius:3px; }
.source-form__bottom { display:flex; align-items:center; gap:18px; margin-top:24px; }
.source-form__bottom .btn { flex:1; }
.source-form__qualification { display:grid; gap:10px; margin-top:20px; padding:18px; border:1px solid var(--rule); }
.source-form__qualification legend { padding:0 8px; font-family:var(--font-display); font-size:1.15rem; }
.source-form__qualification label { min-height:44px; display:flex; grid-template-columns:none; align-items:center; gap:9px; padding:7px 0; font-weight:500; }
.source-form__qualification input { margin:0; accent-color:var(--gold-600); }
.source-form__bottom .link-arrow { min-height:44px; display:inline-flex; align-items:center; padding-inline:4px; }
.profile-context { min-width:0; margin-top:22px; padding:22px; overflow-wrap:anywhere; background:var(--paper); border:1px solid var(--gold-300); border-radius:4px; }
.profile-handoff { color:var(--on-dark-700); background:linear-gradient(145deg,#071d34,#031326); border-color:rgba(201,151,79,.62); box-shadow:0 16px 34px rgba(3,15,29,.14); }
.profile-handoff .eyebrow { color:var(--gold-300); }
.profile-handoff > strong { display:block; margin:7px 0; color:#fff; font-family:var(--font-display); font-size:1.45rem; font-weight:500; line-height:1.08; }
.profile-handoff > p { margin:0; color:var(--on-dark-500); font-size:.7rem; line-height:1.5; }
.profile-handoff dl { display:grid; grid-template-columns:1fr 1fr; gap:0 14px; margin:17px 0 0; }
.profile-handoff dl div { min-width:0; padding:8px 0; border-top:1px solid rgba(255,255,255,.13); }
.profile-handoff dt { color:var(--on-dark-500); font-size:11px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; }
.profile-handoff dd { margin:3px 0 0; color:#fff; font-size:.7rem; line-height:1.35; overflow-wrap:anywhere; }
.profile-handoff__actions { display:flex; flex-wrap:wrap; gap:15px; margin-top:14px; }
.profile-handoff__actions a { min-height:44px; display:inline-flex; align-items:center; color:var(--gold-300); font-size:11px; font-weight:700; text-decoration:underline; text-underline-offset:3px; }

.page-disclosure { margin-top:20px; color:var(--ink-500); font-size:11px; line-height:1.5; }
.sr-only { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
.btn--dark { color:#f7f3eb; background:var(--navy-900); border-color:var(--navy-900); }
.btn--dark:hover { color:#fff; background:var(--navy-800); }

/* Guided investor experience ------------------------------------------------ */
.capital-path { overflow:hidden; background:#fbf9f4; }
.capital-path__intro { padding:62px 0 16px; }
.capital-path__intro-grid { display:grid; grid-template-columns:minmax(300px,.94fr) minmax(440px,1.06fr); gap:clamp(38px,6vw,96px); align-items:center; }
.capital-path__intro h1 { max-width:650px; font-size:clamp(3rem,5.25vw,5.3rem); }
.capital-path__intro p { max-width:570px; }
.capital-path__intro small { display:block; margin-top:11px; color:var(--ink-500); font-size:11px; }
.capital-path__intro figure { min-height:254px; margin:0; overflow:hidden; border:1px solid var(--rule); border-radius:7px; box-shadow:0 18px 42px rgba(3,15,29,.10); }
.capital-path__intro figure img { width:100%; height:100%; object-fit:cover; }
.capital-path__builder { margin-top:16px; padding:26px 32px 32px; color:#f7f3eb; background:linear-gradient(135deg,#061a30,#031326); border:1px solid rgba(201,151,79,.36); border-radius:7px; box-shadow:0 18px 48px rgba(3,15,29,.13); }
.capital-path__progress { display:flex; align-items:center; gap:10px; margin-bottom:12px; color:var(--gold-200); font-size:11px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.capital-path__progress i { width:8px; height:8px; display:block; background:#718092; border-radius:50%; }
.capital-path__progress i.is-active { width:10px; height:10px; background:var(--gold-400); box-shadow:0 0 0 4px rgba(201,151,79,.13); }
.capital-path__builder h2 { color:#fff; font-size:clamp(1.85rem,3.2vw,3.1rem); }
.capital-path__choices { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; margin-top:23px; }
.capital-path__choice { position:relative; min-height:82px; display:grid; grid-template-columns:34px 1fr; align-items:center; gap:12px; padding:15px 17px; color:var(--ink-900); background:#fbfaf7; border:1px solid rgba(255,255,255,.35); border-radius:5px; font-family:var(--font-display); font-size:1.05rem; line-height:1.05; text-align:left; cursor:pointer; transition:transform .2s var(--ease), border-color .2s ease, box-shadow .2s ease; }
.capital-path__choice:hover, .capital-path__choice:focus-visible { transform:translateY(-2px); border-color:var(--gold-300); box-shadow:0 7px 16px rgba(0,0,0,.18); }
.capital-path__next { margin-top:22px; padding:24px; color:var(--on-dark-700); background:rgba(255,255,255,.06); border:1px solid rgba(201,151,79,.42); border-radius:5px; }
.capital-path__next > strong { display:block; margin:8px 0 16px; color:#fff8ec; font-family:var(--font-display); font-size:1.55rem; font-weight:500; }
.capital-path__next .actions { margin-bottom:12px; }
.capital-path__next small { color:var(--on-dark-500); }
.capital-path__choice .ico { width:30px; height:30px; color:var(--gold-500); }
.capital-path__choice .ico:last-child { position:absolute; top:10px; right:10px; width:19px; height:19px; color:var(--gold-500); }
.capital-path__choice.is-selected { border:2px solid var(--gold-400); box-shadow:inset 0 0 0 3px rgba(201,151,79,.09); }
.capital-path__summary { display:grid; grid-template-columns:minmax(450px,1.22fr) minmax(330px,.78fr); gap:28px; align-items:stretch; padding-top:40px; padding-bottom:30px; }
.capital-path__summary h2 { font-size:clamp(2rem,3.2vw,3.3rem); }
.capital-path__cards { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-top:18px; }
.capital-path__card { padding:22px 14px 14px; background:#fff; border:1px solid var(--rule); border-radius:5px; box-shadow:0 8px 20px rgba(3,15,29,.035); }
.capital-path__card > .ico { width:35px; height:35px; color:var(--gold-500); }
.capital-path__card h3 { margin:13px 0 3px; font-size:1.34rem; }
.capital-path__card > small { display:inline-block; padding:3px 6px; color:var(--gold-700); background:#fbf7ef; border:1px solid var(--rule); border-radius:2px; font-size:11px; }
.capital-path__card dl { margin:16px 0; }
.capital-path__card dl div { display:flex; justify-content:space-between; gap:8px; padding:6px 0; border-top:1px solid var(--rule); }
.capital-path__card dt, .capital-path__card dd { margin:0; font-size:11px; }
.capital-path__card dt { color:var(--ink-500); }
.capital-path__card dd { color:var(--ink-900); font-weight:650; text-align:right; }
.capital-path__card .btn { width:100%; min-height:36px; padding:0 9px; font-size:11px; }
.capital-path__truth { padding:28px 24px; color:#f9f6ee; background:linear-gradient(145deg,#071d34,#031326); border-radius:6px; box-shadow:0 13px 32px rgba(3,15,29,.16); }
.capital-path__truth .eyebrow { color:var(--gold-300); }
.capital-path__truth h2 { max-width:370px; color:#fff; font-size:clamp(1.7rem,2.65vw,2.65rem); }
.capital-path__truth nav { display:flex; flex-wrap:wrap; gap:12px; margin:23px 0 16px; border-bottom:1px solid rgba(255,255,255,.16); }
.capital-path__truth nav span { padding:0 0 9px; color:var(--on-dark-500); font-size:11px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; }
.capital-path__truth nav .is-active { color:var(--gold-300); border-bottom:2px solid var(--gold-400); }
.capital-path__truth > div { display:grid; grid-template-columns:1fr 28px 1.25fr 28px 1fr; align-items:center; gap:8px; }
.capital-path__truth article { min-height:125px; display:grid; place-items:center; align-content:center; gap:8px; padding:12px 8px; color:#f5f2ec; border:1px solid rgba(201,151,79,.45); border-radius:5px; text-align:center; }
.capital-path__truth article .ico { width:31px; height:31px; color:var(--gold-300); }
.capital-path__truth article strong { font-family:var(--font-display); font-size:1rem; font-weight:500; line-height:1.05; }
.capital-path__truth article small { color:var(--on-dark-500); font-size:11px; }
.capital-path__truth > div > i { position:relative; height:1px; background:var(--gold-400); }
.capital-path__truth > div > i::after { content:''; position:absolute; top:-4px; right:0; width:8px; height:8px; border-top:1px solid var(--gold-400); border-right:1px solid var(--gold-400); transform:rotate(45deg); }
.capital-path__utility { margin-top:10px; padding:0 0 34px; border-top:1px solid var(--rule); }
.capital-path__utility > .container { display:grid; grid-template-columns:1.1fr repeat(4,1fr); gap:0; overflow:hidden; background:#fff; border:1px solid var(--rule); border-radius:6px; }
.capital-path__utility > .container > div, .capital-path__utility a { min-height:92px; padding:17px 18px; border-left:1px solid var(--rule); }
.capital-path__utility > .container > div { border-left:0; }
.capital-path__utility .eyebrow { margin-bottom:7px; }
.capital-path__utility p { margin:0; color:var(--ink-500); font-size:11px; line-height:1.45; }
.capital-path__utility a { display:grid; grid-template-columns:24px 1fr auto; align-items:center; gap:9px; transition:background .2s ease; }
.capital-path__utility a:hover { background:#fbf7ef; }
.capital-path__utility a .ico { color:var(--gold-500); }
.capital-path__utility a strong, .capital-path__utility a small { display:block; }
.capital-path__utility a strong { color:var(--ink-900); font-family:var(--font-display); font-size:.95rem; font-weight:500; }
.capital-path__utility a small { margin-top:3px; color:var(--ink-500); font-size:11px; }

/* Cards and systems */
.pillar-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }
.pillar-card { min-height: 310px; display: flex; flex-direction: column; padding: 34px; background: var(--white); border: 1px solid var(--rule); border-radius: var(--radius-sm); transition: border-color .2s ease, transform .25s var(--ease), box-shadow .25s ease; }
.pillar-card:hover { border-color: var(--gold-200); transform: translateY(-4px); box-shadow: var(--shadow-sm); }
.pillar-card__top { display: flex; align-items: center; justify-content: space-between; margin-bottom: 52px; }
.pillar-card .ico { width: 40px; height: 40px; color: var(--gold-500); }
.pillar-card__number { color: var(--ink-500); font-family: var(--font-mono); font-size: .73rem; }
.pillar-card h3 { margin-bottom: 14px; font-size: 1.65rem; }
.pillar-card p { margin-bottom: 0; color: var(--ink-500); font-size: .88rem; line-height: 1.65; }

.proof-plate { display: grid; grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr); min-height: 520px; overflow: hidden; border-radius: var(--radius-md); background: var(--navy-900); --accent-ink: var(--gold-300); --heading-ink: var(--white); --body-ink: var(--on-dark-700); box-shadow: var(--shadow-lg); }
.proof-plate__image { position: relative; min-height: 420px; }
.proof-plate__image img { width: 100%; height: 100%; object-fit: cover; }
.proof-plate__image::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, transparent 55%, var(--navy-900)); }
.proof-plate__body { display: flex; flex-direction: column; justify-content: center; padding: 64px; color: var(--on-dark-700); }
.proof-plate__body h2 { color: var(--white); }
.proof-plate__body blockquote { margin: 0 0 24px; color: var(--white); font-family: var(--font-display); font-size: clamp(1.8rem, 3vw, 2.75rem); line-height: 1.25; }
.proof-plate__body cite { color: var(--gold-300); font-size: .77rem; font-style: normal; font-weight: 650; letter-spacing: .1em; text-transform: uppercase; }

.opportunity-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.opportunity-card { display: flex; flex-direction: column; min-width: 0; overflow: hidden; color: var(--ink-700); background: var(--white); --heading-ink: var(--ink-900); --body-ink: var(--ink-500); border: 1px solid var(--rule); border-radius: var(--radius-sm); transition: transform .25s var(--ease), box-shadow .25s ease, border-color .2s ease; }
.opportunity-card:hover { transform: translateY(-4px); border-color: var(--gold-200); box-shadow: var(--shadow-sm); }
.opportunity-card__media { position: relative; aspect-ratio: 16 / 10; overflow: hidden; background: var(--navy-800); }
.opportunity-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s var(--ease); }
.opportunity-card:hover .opportunity-card__media img { transform: scale(1.035); }
.opportunity-card__media::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 52%, rgba(5, 13, 26, .7)); }
.opportunity-card__asset { position: absolute; z-index: 2; right: 18px; bottom: 16px; left: 18px; color: var(--white); font-size: 11px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.opportunity-card__body { display: flex; flex-direction: column; flex: 1; padding: 26px; }
.opportunity-card h3 { margin-bottom: 8px; font-size: 1.5rem; }
.opportunity-card__location { display: flex; align-items: center; gap: 7px; margin-bottom: 22px; color: var(--ink-500); font-size: .78rem; }
.opportunity-card__location .ico { width: 16px; height: 16px; color: var(--gold-500); }
.opportunity-card__meta { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 24px; }
.tag { display: inline-flex; align-items: center; min-height: 28px; padding: 5px 9px; color: var(--navy-700); background: var(--paper); border: 1px solid var(--rule-soft); border-radius: 999px; font-size: 11px; font-weight: 650; letter-spacing: .07em; text-transform: uppercase; }
.opportunity-card .link-arrow { margin-top: auto; }

.filter-bar { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 30px; }
.filter-btn { min-height: 42px; padding: 9px 14px; color: var(--ink-500); background: transparent; border: 1px solid var(--rule); border-radius: 999px; font-size: .75rem; font-weight: 650; cursor: pointer; }
.filter-btn:hover, .filter-btn[aria-pressed='true'] { color: var(--white); background: var(--navy-900); border-color: var(--navy-900); }

.asset-guide-rail { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); margin: 0 0 28px; overflow: hidden; background: var(--white); border: 1px solid var(--rule); border-radius: var(--radius-sm); }
.asset-guide-rail a { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 11px; min-height: 116px; padding: 18px 16px; color: var(--ink-700); border-right: 1px solid var(--rule); transition: color .2s ease, background .2s ease; }
.asset-guide-rail a:last-child { border-right: 0; }
.asset-guide-rail a:hover { color: var(--navy-900); background: var(--paper-deep); }
.asset-guide-rail .ico:first-child { width: 25px; height: 25px; color: var(--gold-500); }
.asset-guide-rail .ico:last-child { width: 15px; height: 15px; color: var(--gold-500); }
.asset-guide-rail strong, .asset-guide-rail small { display: block; }
.asset-guide-rail strong { margin-bottom: 5px; font-family: var(--font-display); font-size: 1rem; font-weight: 500; line-height: 1.03; }
.asset-guide-rail small { color: var(--ink-500); font-size: 11px; line-height: 1.35; }

.process-rail { display: grid; grid-template-columns: repeat(5, 1fr); }
.process-step { position: relative; min-width: 0; padding: 0 24px; text-align: center; }
.process-step::before { content: ''; position: absolute; top: 28px; right: 50%; left: -50%; height: 1px; background: var(--rule); }
.process-step:first-child::before { display: none; }
.process-step__icon { position: relative; z-index: 1; width: 58px; height: 58px; display: grid; place-items: center; margin: 0 auto 22px; color: var(--gold-500); background: var(--navy-900); border-radius: 50%; box-shadow: 0 0 0 8px var(--paper); }
.section--white .process-step__icon { box-shadow: 0 0 0 8px var(--white); }
.process-step__number { position: absolute; top: -7px; right: -2px; min-width: 22px; height: 22px; display: grid; place-items: center; color: var(--navy-950); background: var(--gold-400); border-radius: 50%; font-size: 11px; font-weight: 700; }
.process-step h3 { margin-bottom: 8px; font-size: 1.22rem; }
.process-step p { margin-bottom: 0; color: var(--ink-500); font-size: .76rem; line-height: 1.55; }

.split { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: center; gap: 64px; }
.split--wide { grid-template-columns: minmax(0, 1.12fr) minmax(320px, .88fr); }
.split__image { position: relative; min-height: 480px; overflow: hidden; border-radius: var(--radius-sm); }
.split__image img { width: 100%; height: 100%; object-fit: cover; }
.split__body { padding-block: 24px; }

.check-list { display: grid; gap: 14px; margin: 26px 0 0; padding: 0; list-style: none; }
.check-list li { display: grid; grid-template-columns: auto 1fr; gap: 12px; color: var(--ink-700); }
.check-list .ico { width: 19px; height: 19px; margin-top: 3px; color: var(--gold-500); }
.section--navy .check-list li { color: var(--on-dark-700); }

.comparison { display: grid; grid-template-columns: 1fr 74px 1fr; align-items: stretch; gap: 0; }
.comparison__side { padding: 36px; color: var(--ink-700); background: var(--white); border: 1px solid var(--rule); --heading-ink: var(--ink-900); --body-ink: var(--ink-500); }
.comparison__side:first-child { border-radius: var(--radius-sm) 0 0 var(--radius-sm); }
.comparison__side:last-child { color: var(--on-dark-700); background: var(--navy-900); --heading-ink: var(--white); --body-ink: var(--on-dark-700); border-color: var(--navy-700); border-radius: 0 var(--radius-sm) var(--radius-sm) 0; }
.comparison__vs { display: grid; place-items: center; color: var(--white); background: var(--navy-950); font-family: var(--font-display); font-size: 1.1rem; }
.comparison-row { display: grid; grid-template-columns: auto 1fr; gap: 12px; padding: 13px 0; border-top: 1px solid var(--rule-soft); font-size: .84rem; }
.comparison__side:last-child .comparison-row { border-color: rgba(255, 255, 255, .1); }
.comparison-row .ico { width: 19px; height: 19px; color: var(--gold-500); }

.insight-grid { display: grid; grid-template-columns: 1.35fr 1fr 1fr; gap: 18px; }
.insight-card { min-height: 360px; display: flex; flex-direction: column; justify-content: flex-end; padding: 30px; color: var(--white); background: var(--navy-900); border-radius: var(--radius-sm); overflow: hidden; position: relative; }
.insight-card img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.insight-card::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(5, 13, 26, .04), rgba(5, 13, 26, .92)); }
.insight-card__content { position: relative; z-index: 1; }
.insight-card h3 { color: var(--white); }
.insight-card p { color: var(--on-dark-700); font-size: .84rem; }
.insight-card--plain { justify-content: flex-start; color: var(--ink-700); background: var(--white); border: 1px solid var(--rule); }
.insight-card--plain h3 { color: var(--ink-900); }
.insight-card--plain p { color: var(--ink-500); }
.insight-card--plain::after { display: none; }

.cta-band { position: relative; overflow: hidden; color: var(--on-dark-700); background: var(--navy-900); }
.cta-band::before { content: ''; position: absolute; inset: 0; background: radial-gradient(circle at 75% 30%, rgba(29, 67, 112, .5), transparent 36%), linear-gradient(90deg, rgba(5, 13, 26, .94), rgba(5, 13, 26, .66)); }
.cta-band__inner { position: relative; min-height: 300px; display: flex; align-items: center; justify-content: space-between; gap: 48px; padding-block: 72px; }
.cta-band h2 { max-width: 720px; margin-bottom: 16px; color: var(--white); }
.cta-band p { margin-bottom: 0; color: var(--on-dark-700); }

/* Interior heroes */
.page-hero { position: relative; min-height: 530px; color: var(--on-dark-700); background: var(--navy-950); overflow: hidden; }
.page-hero__grid { min-height: 530px; display: grid; grid-template-columns: minmax(360px, .9fr) minmax(0, 1.15fr); }
.page-hero__copy { z-index: 2; align-self: center; padding: 76px 56px 76px max(24px, calc((100vw - var(--container)) / 2)); }
.page-hero__copy h1 { max-width: 700px; margin-bottom: 22px; color: var(--white); font-size: clamp(2.8rem, 5vw, 4.8rem); }
.page-hero__copy .lede { color: var(--on-dark-700); }
.page-hero__media { position: relative; min-height: 460px; }
.page-hero__media img { width: 100%; height: 100%; object-fit: cover; }
.page-hero__media::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, var(--navy-950), transparent 30%), linear-gradient(0deg, rgba(5, 13, 26, .34), transparent 55%); }

.stat-ledger { display: grid; grid-template-columns: repeat(4, 1fr); background: var(--navy-900); border-top: 1px solid var(--navy-700); border-bottom: 1px solid var(--navy-700); }
.stat-ledger__item { min-height: 150px; display: grid; align-content: center; justify-items: start; padding: 28px 34px; border-left: 1px solid var(--navy-700); }
.stat-ledger__item:first-child { border-left: 0; }
.stat-ledger__item .ico { margin-bottom: 14px; color: var(--gold-300); }
.stat-ledger__item strong { color: var(--white); font-family: var(--font-display); font-size: 1.35rem; font-weight: 500; }
.stat-ledger__item span { margin-top: 4px; color: var(--on-dark-500); font-size: .72rem; line-height: 1.45; }

.timeline { display: grid; grid-template-columns: repeat(5, 1fr); }
.timeline__item { position: relative; padding: 34px 22px 0; border-top: 1px solid var(--rule); }
.timeline__item::before { content: ''; position: absolute; top: -7px; left: 22px; width: 13px; height: 13px; border-radius: 50%; background: var(--gold-400); box-shadow: 0 0 0 6px var(--paper); }
.timeline__item time { color: var(--accent-ink); font-size: .72rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.timeline__item h3 { margin: 11px 0 9px; font-size: 1.28rem; }
.timeline__item p { color: var(--ink-500); font-size: .8rem; }

.partner-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.partner-card { min-height: 440px; position: relative; display: flex; flex-direction: column; justify-content: flex-end; overflow: hidden; padding: 30px; color: var(--on-dark-700); background: var(--navy-900); border-radius: var(--radius-sm); }
.partner-card img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.partner-card::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(5, 13, 26, .05), rgba(5, 13, 26, .94)); }
.partner-card__content { position: relative; z-index: 1; }
.partner-card h3 { color: var(--white); }
.partner-card p { color: var(--on-dark-700); font-size: .84rem; }
.partner-wordmark { margin-bottom: 16px; color: var(--gold-300); font-size: .72rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }

.criteria-grid { display: grid; grid-template-columns: 1.2fr 1fr; gap: 18px; }
.criteria-card { padding: 36px; background: var(--white); border: 1px solid var(--rule); border-radius: var(--radius-sm); }
.criteria-card--navy { color: var(--on-dark-700); background: var(--navy-900); border-color: var(--navy-700); }
.criteria-card--navy h3 { color: var(--white); }
.criteria-card--navy .check-list li { color: var(--on-dark-700); }

.step-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }
.step-card { min-height: 225px; padding: 28px; background: var(--white); border: 1px solid var(--rule); border-radius: var(--radius-sm); }
.step-card__number { margin-bottom: 34px; color: var(--accent-ink); font-family: var(--font-mono); font-size: .72rem; }
.step-card h3 { margin-bottom: 10px; font-size: 1.25rem; }
.step-card p { margin-bottom: 0; color: var(--ink-500); font-size: .78rem; line-height: 1.55; }

.faq { display: grid; gap: 0; border-top: 1px solid var(--rule); }
.faq details { border-bottom: 1px solid var(--rule); }
.faq summary { min-height: 64px; display: flex; align-items: center; justify-content: space-between; gap: 20px; cursor: pointer; color: var(--ink-900); font-weight: 600; list-style: none; }
.faq summary::-webkit-details-marker { display: none; }
.faq summary::after { content: '+'; color: var(--accent-ink); font-family: var(--font-display); font-size: 1.5rem; font-weight: 400; }
.faq details[open] summary::after { content: '–'; }
.faq details p { padding: 0 44px 24px 0; color: var(--ink-500); }

/* Contact */
.intent-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }
.intent-card { min-height: 230px; display: flex; flex-direction: column; padding: 28px; background: var(--white); border: 1px solid var(--rule); border-radius: var(--radius-sm); transition: transform .2s ease, border-color .2s ease; }
.intent-card:hover { transform: translateY(-3px); border-color: var(--gold-400); }
.intent-card .ico { width: 32px; height: 32px; margin-bottom: 28px; color: var(--gold-500); }
.intent-card h3 { margin-bottom: 10px; font-size: 1.25rem; }
.intent-card p { margin-bottom: 18px; color: var(--ink-500); font-size: .8rem; }
.intent-card .link-arrow { margin-top: auto; }

.contact-plate { padding: 48px; color: var(--on-dark-700); background: var(--navy-900); border-radius: var(--radius-md); }
.contact-plate h2 { color: var(--white); }
.contact-methods { display: grid; gap: 12px; margin: 30px 0; }
.contact-method { display: flex; align-items: center; gap: 14px; min-height: 50px; padding: 10px 14px; border: 1px solid rgba(255, 255, 255, .12); border-radius: var(--radius-xs); }
.contact-method:hover { border-color: var(--gold-300); }
.contact-method .ico { color: var(--gold-300); }

/* Deal pages */
.deal-hero { position: relative; color: var(--on-dark-700); background: var(--navy-950); }
.deal-hero__media { position: absolute; inset: 0 0 0 38%; }
.deal-hero__media img { width: 100%; height: 100%; object-fit: cover; }
.deal-hero__media::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, var(--navy-950), transparent 52%), linear-gradient(0deg, rgba(5, 13, 26, .66), transparent 58%); }
.deal-hero__inner { position: relative; z-index: 1; min-height: 650px; display: grid; grid-template-columns: minmax(0, .92fr) minmax(360px, .56fr); align-items: end; gap: 44px; padding-top: 80px; padding-bottom: 58px; }
.deal-hero__copy { align-self: center; }
.deal-hero h1 { max-width: 760px; margin-bottom: 20px; color: var(--white); font-size: clamp(3rem, 5vw, 5rem); }
.deal-hero__partner { margin-bottom: 18px; color: var(--gold-300); font-size: .72rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.deal-hero__snapshot { align-self: end; padding: 30px; background: rgba(5, 13, 26, .92); border: 1px solid rgba(217, 174, 107, .45); border-radius: var(--radius-sm); backdrop-filter: blur(12px); }
.deal-hero__snapshot h2 { margin-bottom: 22px; color: var(--gold-300); font-family: var(--font-body); font-size: 11px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.snapshot-list { display: grid; gap: 13px; margin: 0; }
.snapshot-list div { display: grid; grid-template-columns: 22px 1fr; gap: 11px; padding-bottom: 12px; border-bottom: 1px solid rgba(255, 255, 255, .1); }
.snapshot-list div:last-child { padding-bottom: 0; border-bottom: 0; }
.snapshot-list dt { color: var(--on-dark-500); font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.snapshot-list dd { margin: 2px 0 0; color: var(--white); font-size: .82rem; }
.snapshot-list .ico { grid-row: 1 / span 2; width: 19px; height: 19px; color: var(--gold-300); }

.deal-nav { position: sticky; z-index: 30; top: var(--nav-h); color: var(--on-dark-700); background: var(--navy-900); border-bottom: 1px solid var(--navy-700); }
.deal-nav__inner { min-height: 56px; display: flex; align-items: center; gap: 28px; overflow-x: auto; }
.deal-nav a { flex: 0 0 auto; font-size: .72rem; font-weight: 600; }
.deal-nav a:hover { color: var(--white); }
.deal-nav .btn { margin-left: auto; min-height: 38px; }

.deal-thesis { display: grid; grid-template-columns: 1.05fr .95fr; gap: 18px; }
.deal-thesis__body { padding: 44px; background: var(--white); border: 1px solid var(--rule); border-radius: var(--radius-sm); }
.deal-thesis__image { min-height: 430px; overflow: hidden; border-radius: var(--radius-sm); }
.deal-thesis__image img { width: 100%; height: 100%; object-fit: cover; }

.fact-grid { display: grid; grid-template-columns: repeat(4, 1fr); background: var(--white); border: 1px solid var(--rule); border-radius: var(--radius-sm); }
.fact { min-height: 145px; display: grid; align-content: center; justify-items: center; padding: 22px; text-align: center; border-left: 1px solid var(--rule); }
.fact:first-child { border-left: 0; }
.fact .ico { margin-bottom: 13px; color: var(--gold-500); }
.fact strong { color: var(--ink-900); font-family: var(--font-display); font-size: 1.25rem; font-weight: 500; }
.fact span { margin-top: 4px; color: var(--ink-500); font-size: 11px; }

.gallery-grid { display: grid; grid-template-columns: 1.4fr .7fr .7fr; grid-template-rows: repeat(2, 220px); gap: 10px; }
.gallery-grid figure { position: relative; margin: 0; overflow: hidden; border-radius: var(--radius-sm); }
.gallery-grid figure:first-child { grid-row: 1 / span 2; }
.gallery-grid img { width: 100%; height: 100%; object-fit: cover; }
.gallery-grid figcaption { position: absolute; right: 12px; bottom: 10px; padding: 5px 8px; color: var(--white); background: rgba(5, 13, 26, .72); border-radius: var(--radius-xs); font-size: 11px; letter-spacing: .07em; text-transform: uppercase; }

.terms-panel { display: grid; grid-template-columns: 1.1fr .9fr; background: var(--navy-900); border-radius: var(--radius-md); overflow: hidden; }
.terms-panel__body { padding: 48px; color: var(--on-dark-700); }
.terms-panel__body h2, .terms-panel__body h3 { color: var(--white); }
.terms-panel__aside { padding: 48px; background: var(--navy-850); border-left: 1px solid var(--navy-700); }
.terms-list { display: grid; gap: 0; margin: 0; }
.terms-list div { display: flex; justify-content: space-between; gap: 24px; padding: 14px 0; border-bottom: 1px solid rgba(255, 255, 255, .1); }
.terms-list dt { color: var(--on-dark-500); font-size: .75rem; }
.terms-list dd { margin: 0; color: var(--white); font-size: .78rem; font-weight: 600; text-align: right; }

.document-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.document-link { min-height: 110px; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 14px; padding: 20px; background: var(--white); border: 1px solid var(--rule); border-radius: var(--radius-sm); }
.document-link:hover { border-color: var(--gold-400); }
.document-link .ico { color: var(--gold-500); }
.document-link strong { display: block; color: var(--ink-900); font-size: .8rem; }
.document-link small { color: var(--ink-500); font-size: 11px; }

.disclosure { padding: 22px 0; color: var(--ink-500); font-size: 11px; line-height: 1.6; border-top: 1px solid var(--rule); }

/* Legal and secure access */
.prose { color: var(--ink-700); }
.prose h2 { margin-top: 54px; font-size: 2rem; }
.prose h3 { margin-top: 36px; font-size: 1.35rem; }
.prose li { margin-bottom: 8px; }

.access-shell { min-height: calc(100vh - var(--nav-h)); display: grid; place-items: center; padding: 72px 24px; background: radial-gradient(circle at 70% 20%, var(--navy-700), transparent 33%), var(--navy-950); }
.access-card { width: min(100%, 720px); padding: clamp(36px, 7vw, 72px); text-align: center; color: var(--on-dark-700); background: rgba(8, 21, 42, .92); border: 1px solid rgba(217, 174, 107, .35); border-radius: var(--radius-md); box-shadow: var(--shadow-lg); }
.access-card .ico { width: 54px; height: 54px; margin-bottom: 28px; color: var(--gold-300); }
/* The card is a navy panel, so the default light-ground eyebrow (--accent-ink,
   #754600) rendered dark brown on near-black at 2.29:1. */
.access-card .eyebrow { color: var(--gold-300); }
.access-card h1 { color: var(--white); font-size: clamp(2.5rem, 6vw, 4.4rem); }
.access-card p { margin-inline: auto; }
.access-card .actions { justify-content: center; }

/* Footer */
.site-footer { color: var(--on-dark-500); background: var(--navy-950); }
.footer-grid { display: grid; grid-template-columns: 1.4fr repeat(4, 1fr); gap: 52px; padding-top: 72px; padding-bottom: 56px; }
.footer-brand p { max-width: 30ch; margin: 24px 0 0; font-size: .78rem; line-height: 1.65; }
.footer-col h2 { margin-bottom: 20px; color: var(--gold-300); font-family: var(--font-body); font-size: 11px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.footer-col ul { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
.footer-col a { font-size: .76rem; }
.footer-col a:hover { color: var(--white); }
.footer-bottom { display: grid; grid-template-columns: auto 1fr auto; gap: 36px; align-items: center; padding: 24px 0 30px; border-top: 1px solid rgba(255, 255, 255, .08); font-size: 11px; }
.footer-bottom p { max-width: 70ch; margin: 0; text-align: center; }

/* One orchestrated motion system */
html.js .reveal { opacity: 0; transform: translateY(18px); transition: opacity .65s var(--ease), transform .65s var(--ease); }
html.js .reveal.is-visible { opacity: 1; transform: translateY(0); }

@media (max-width: 1180px) {
  .primary-nav ul { gap: 18px; }
  .primary-nav a { font-size: .72rem; }
  .nav-login { display: none; }
  .home-hero__grid { grid-template-columns: minmax(380px, .9fr) minmax(520px, 1.2fr); }
  .home-hero__copy { padding-left: 42px; }
  .aperture__label { left: 26px; }
  .opportunity-grid { grid-template-columns: repeat(2, 1fr); }
  .intent-grid { grid-template-columns: repeat(2, 1fr); }
  .deal-home__hero-grid { grid-template-columns: minmax(310px, .82fr) minmax(500px, 1.18fr); gap: 34px; }
  .deal-home__hero-copy h1 { font-size: clamp(3.35rem, 5.25vw, 5.45rem); }
  .deal-home__console { transform: none; }
  .deal-home__partner-grid { gap: 52px; }
}

@media (max-width: 980px) {
  :root { --nav-h: 70px; }
  .container { width: min(calc(100% - 36px), var(--container)); }
  .nav-toggle { display: block; }
  .primary-nav {
    position: fixed;
    top: var(--nav-h);
    right: 0;
    left: 0;
    max-height: calc(100vh - var(--nav-h));
    padding: 18px;
    background: var(--navy-950);
    border-top: 1px solid rgba(255, 255, 255, .08);
    overflow-y: auto;
    opacity: 0;
    pointer-events: none;
    transform: translateY(-10px);
    transition: opacity .2s ease, transform .2s ease;
  }
  .nav-open .primary-nav { opacity: 1; pointer-events: auto; transform: translateY(0); }
  html:not(.js) .site-header { position: relative; height: auto; }
  html:not(.js) .nav-shell { min-height: var(--nav-h); flex-wrap: wrap; padding-block: 12px; }
  html:not(.js) .nav-toggle { display: none; }
  html:not(.js) .primary-nav { position: static; order: 3; width: 100%; max-height: none; margin-left: 0; opacity: 1; pointer-events: auto; transform: none; }
  html:not(.js) .primary-nav ul { display: grid; gap: 0; }
  html:not(.js) .primary-nav a { width: 100%; min-height: 44px; border-top: 1px solid rgba(255, 255, 255, .08); }
  .primary-nav ul { display: grid; gap: 0; }
  .mobile-nav-only { display: list-item; }
  .primary-nav a { width: 100%; min-height: 52px; padding: 0 10px; font-size: .92rem; border-bottom: 1px solid rgba(255, 255, 255, .08); }
  .primary-nav a[aria-current='page']::after { top: 14px; right: auto; bottom: 14px; left: 0; width: 2px; height: auto; }
  .nav-cta { display: none; }
  .deal-home__hero { min-height: auto; }
  .deal-home__hero-grid { min-height: auto; grid-template-columns: 1fr; gap: 42px; padding-top: 76px; padding-bottom: 120px; }
  .deal-home__hero-copy { max-width: 660px; padding-top: 0; }
  .deal-home__hero-copy h1 { max-width: 620px; font-size: clamp(3.45rem, 8vw, 5.5rem); }
  .deal-home__console { width: min(100%, 760px); margin-inline: auto; }
  .deal-home__hero-rail .container { grid-template-columns: repeat(2, 1fr); min-height: 0; padding-block: 8px; }
  .deal-home__hero-rail span { min-height: 35px; display: grid; place-items: center; padding: 6px 12px; }
  .deal-home__hero-rail span:nth-child(3) { border-left: 0; }
  .deal-home__hero-rail span:nth-child(n + 3) { border-top: 1px solid rgba(201,151,79,.33); }
  .deal-home__entry-grid { grid-template-columns: 1fr; }
  .investor-door { min-height: 350px; }
  .deal-home__ownership-grid, .deal-home__asset-grid { grid-template-columns: repeat(2, 1fr); }
  .deal-home__ownership-grid > :last-child, .deal-home__asset-grid > :last-child { grid-column: 1 / -1; }
  .deal-home__truth-grid, .deal-home__partner-grid, .deal-home__marketplace-grid { grid-template-columns: 1fr; }
  .deal-home__truth-grid { gap: 42px; }
  .deal-home__truth-grid > div:first-child { max-width: 620px; }
  .deal-home__partner-grid { gap: 40px; }
  .deal-home__image-triad { min-height: 300px; max-width: 780px; }
  .deal-home__marketplace-grid { min-height: 0; gap: 38px; }
  .deal-home__marketplace-graphic { width: min(100%, 680px); }
  .deal-home__closing-grid { grid-template-columns: 1fr; gap: 30px; }
  .home-hero__grid { min-height: auto; grid-template-columns: 1fr; }
  .home-hero__copy { min-height: 580px; padding: 80px 42px 72px; }
  .aperture { min-height: 520px; }
  .truth-strip__grid { grid-template-columns: 1fr; }
  .truth { min-height: 118px; border-top: 1px solid rgba(255, 255, 255, .08); border-left: 0; }
  .truth:first-child { border-top: 0; }
  .section-head { grid-template-columns: 1fr; gap: 18px; }
  .pillar-grid { grid-template-columns: repeat(2, 1fr); }
  .proof-plate { grid-template-columns: 1fr; }
  .proof-plate__image::after { background: linear-gradient(0deg, var(--navy-900), transparent 45%); }
  .process-rail { grid-template-columns: 1fr; gap: 0; }
  .process-step { min-height: 132px; display: grid; grid-template-columns: 64px 1fr; grid-template-rows: auto auto; gap: 0 22px; align-items: start; padding: 18px 0; text-align: left; border-bottom: 1px solid var(--rule); }
  .process-step::before { top: -50%; right: auto; bottom: 50%; left: 29px; width: 1px; height: auto; }
  .process-step__icon { grid-row: 1 / span 2; margin: 0; box-shadow: 0 0 0 8px var(--paper); }
  .section--white .process-step__icon { box-shadow: 0 0 0 8px var(--white); }
  .process-step h3 { margin: 6px 0; }
  .split, .split--wide { grid-template-columns: 1fr; gap: 40px; }
  .insight-grid { grid-template-columns: 1fr 1fr; }
  .insight-card:first-child { grid-column: 1 / -1; }
  .page-hero__grid { grid-template-columns: 1fr; }
  .page-hero__copy { min-height: 430px; padding: 68px 36px; }
  .page-hero__media { min-height: 420px; }
  .page-hero__media::after { background: linear-gradient(0deg, var(--navy-950), transparent 38%); }
  .stat-ledger { grid-template-columns: repeat(2, 1fr); }
  .stat-ledger__item:nth-child(3) { border-left: 0; }
  .stat-ledger__item:nth-child(n+3) { border-top: 1px solid var(--navy-700); }
  .timeline { grid-template-columns: 1fr; }
  .timeline__item { padding: 8px 0 32px 42px; border-top: 0; border-left: 1px solid var(--rule); }
  .timeline__item::before { top: 8px; left: -7px; box-shadow: 0 0 0 6px var(--paper); }
  .partner-grid { grid-template-columns: 1fr 1fr; }
  .comparison { grid-template-columns: 1fr; }
  .comparison__vs { min-height: 54px; }
  .comparison__side:first-child, .comparison__side:last-child { border-radius: var(--radius-sm); }
  .deal-hero__media { inset: 0; opacity: .55; }
  .deal-hero__media::after { background: linear-gradient(90deg, rgba(5, 13, 26, .98), rgba(5, 13, 26, .5)), linear-gradient(0deg, var(--navy-950), transparent 60%); }
  .deal-hero__inner { grid-template-columns: 1fr; min-height: auto; padding-top: 88px; }
  .deal-hero__snapshot { max-width: 600px; }
  .deal-thesis { grid-template-columns: 1fr; }
  .fact-grid { grid-template-columns: repeat(2, 1fr); }
  .fact:nth-child(3) { border-left: 0; }
  .fact:nth-child(n+3) { border-top: 1px solid var(--rule); }
  .gallery-grid { grid-template-columns: 1fr 1fr; grid-template-rows: 320px repeat(2, 190px); }
  .gallery-grid figure:first-child { grid-column: 1 / -1; grid-row: auto; }
  .terms-panel { grid-template-columns: 1fr; }
  .terms-panel__aside { border-top: 1px solid var(--navy-700); border-left: 0; }
  .document-grid { grid-template-columns: 1fr 1fr; }
  .story-hero__grid, .market-story-grid, .partner-directory, .editorial-board, .source-form-layout__grid, .partner-bridge { grid-template-columns: 1fr; }
  .story-hero__grid { min-height: auto; gap: 36px; padding-top: 66px; padding-bottom: 66px; }
  .story-hero__visual { width: min(100%, 760px); min-height: 320px; }
  .stage-rail { grid-template-columns: repeat(2, 1fr); row-gap: 36px; }
  .stage-step:nth-child(odd) { border-left: 0; }
  .stage-step:nth-child(n + 3) { border-top: 1px solid rgba(201,151,79,.34); }
  .life-grid { grid-template-columns: repeat(2, 1fr); }
  .partner-directory__cards { grid-template-columns: repeat(3, 1fr); }
  .capability-grid { grid-template-columns: repeat(3, 1fr); }
  .resource-pills { grid-template-columns: repeat(3, 1fr); }
  .source-form-layout__grid { min-height: auto; gap: 36px; }
  .source-form { width: min(100%, 760px); }
  .capital-path__intro-grid { grid-template-columns: 1fr; gap: 30px; }
  .capital-path__intro figure { max-width: 760px; min-height: 300px; }
  .capital-path__summary { grid-template-columns: 1fr; }
  .capital-path__truth { max-width: 760px; }
  .capital-path__utility > .container { grid-template-columns: repeat(2, 1fr); }
  .capital-path__utility > .container > div { grid-column: 1 / -1; border-bottom: 1px solid var(--rule); }
  .capital-path__utility > .container > a:nth-of-type(odd) { border-left: 0; }
  .footer-grid { grid-template-columns: 1.4fr repeat(2, 1fr); }
  .footer-bottom { grid-template-columns: 1fr; text-align: center; }
  .footer-bottom p { margin-inline: auto; }
}

@media (max-width: 700px) {
  .section { padding: 68px 0; }
  .section--tight { padding: 48px 0; }
  .container, .container--narrow { width: min(calc(100% - 30px), var(--container)); }
  .brand-word { font-size: 1.25rem; }
  .brand-tag { display: none; }
  .brand-mark { width: 28px; height: 32px; }
  .deal-home__hero::before { top: 20%; width: 80%; height: 52%; opacity: .2; }
  .deal-home__hero-grid { gap: 34px; padding-top: 58px; padding-bottom: 136px; }
  .deal-home__hero-copy h1 { margin-bottom: 21px; overflow-wrap:anywhere; font-size: clamp(2.75rem, 12.5vw, 3.45rem); }
  .deal-home__hero-copy p { margin-bottom: 26px; font-size: .92rem; line-height: 1.62; }
  .deal-home__hero-copy .actions { display: grid; gap: 10px; }
  .deal-home__hero-copy .actions .btn { width: 100%; }
  .deal-home__hero-rail .container { width: 100%; }
  .deal-home__hero-rail span { min-height: 37px; padding-inline: 8px; font-size: 11px; letter-spacing: .08em; }
  .deal-home__entry { padding-top: 66px; padding-bottom: 68px; }
  .deal-home__entry-heading { margin-bottom: 30px; }
  .deal-home__entry-heading h2 { font-size: clamp(2.35rem,11vw,3.45rem); }
  .investor-door { min-height: 370px; padding: 28px 22px; }
  .investor-door__number { top: 20px; right: 20px; font-size: 4rem; }
  .investor-door__query { gap: 6px; }
  .investor-door__query i { display: none; }
  .deal-console { grid-template-columns: 42px 1fr; min-height: 0; border-radius: 7px; }
  .deal-console__main, .deal-console__primary, .deal-console__facts, .deal-console__truth { min-width:0; }
  .deal-console__rail { gap: 19px; padding: 18px 0; }
  .deal-console__rail .ico { width: 16px; height: 16px; }
  .deal-console__main { gap: 10px; padding: 15px; }
  .deal-console__head { gap: 8px; padding-bottom: 10px; font-size: 11px; }
  .deal-console__primary { grid-template-columns: 1fr; gap: 12px; padding: 13px 0; }
  .deal-console__facts > strong { margin: 7px 0 10px; font-size: 1.35rem; }
  .deal-console__facts dl { grid-template-columns: repeat(3, 1fr); gap: 8px; }
  .deal-console__facts dl div { padding: 7px 0; border-top: 1px solid rgba(255,255,255,.13); }
  .deal-console__property { min-height: 160px; }
  .deal-console__truth { grid-template-columns: 1fr; gap: 11px; padding-top: 11px; }
  .deal-console__truth small { max-width: 38ch; }
  .deal-console__chart { height: 48px; }
  .deal-console__top { flex-wrap: wrap; gap: 7px 10px; }
  .deal-console__top .brand-lockup { transform: scale(.78); transform-origin: left center; }
  .deal-console__title { font-size: 1.38rem; line-height: 1.04; }
  .deal-console__flow { grid-template-columns: 1fr; gap: 10px; }
  .deal-console__flow > i { display: none; }
  .deal-console__flow-item { display: grid; grid-template-columns: 30px 1fr; column-gap: 9px; align-items: center; }
  .deal-console__flow-item .ico { grid-row: 1 / span 2; margin: 0; }
  .deal-console__flow-item strong, .deal-console__flow-item small { text-align: left; }
  .deal-console__property { grid-template-columns: 1fr; }
  .deal-console__property img { min-height: 170px; }
  .deal-console__metrics { grid-template-columns: 1fr; }
  .deal-console__metrics > div + div { border-top: 1px solid rgba(255,255,255,.09); border-left: 0; }
  .deal-home__thesis-copy h2 { font-size: clamp(2.2rem, 11vw, 3.35rem); }
  .deal-home__property-map { min-height: 350px; margin-top: 27px; }
  .deal-home__property-map img { width: min(100%, 560px); height: 230px; }
  .deal-home__property-map::before, .deal-home__property-map::after, .deal-home__callout::after { display: none; }
  .deal-home__callout { padding: 4px 5px; background: rgba(251,248,242,.86); font-size: 11px; }
  .deal-home__callout--property { top: 15%; left: 0; }
  .deal-home__callout--operator { top: 15%; right: 0; }
  .deal-home__callout--economics { bottom: 17%; left: 0; }
  .deal-home__callout--risk { right: 0; bottom: 17%; }
  .deal-home__property-map-caption { bottom: 0; font-size: 11px; }
  .deal-home__ownership, .deal-home__assets { padding-top: 62px; padding-bottom: 58px; }
  .deal-home__ownership-grid, .deal-home__asset-grid { grid-template-columns: 1fr; }
  .deal-home__ownership-grid > :last-child, .deal-home__asset-grid > :last-child { grid-column: auto; }
  .ownership-card, .asset-selection-card { min-height: 302px; }
  .ownership-card__body, .asset-selection-card__body { padding: 19px; }
  .deal-home__truth-grid { gap: 29px; }
  .deal-home__truth-grid h2 { font-size: clamp(2.25rem, 11vw, 3.45rem); }
  .deal-truth-panel { min-height: 310px; }
  .deal-truth-panel nav { grid-template-columns: repeat(3, 1fr); }
  .deal-truth-panel nav span { padding: 8px 4px; font-size: 11px; }
  .deal-truth-panel__drawing { grid-template-columns: 1fr; gap: 20px; padding: 22px 18px; }
  .deal-truth-panel__building { width: min(100%, 215px); height: 150px; margin-inline: auto; }
  .deal-truth-panel__drawing ul { gap: 9px; }
  .deal-home__center-line { font-size: .9rem; }
  .deal-home__image-triad { min-height: 240px; gap: 5px; }
  .deal-home__partner-grid .actions { display: grid; gap: 11px; }
  .deal-home__marketplace-grid { padding-top: 56px; padding-bottom: 56px; }
  .deal-home__marketplace-graphic { min-height: 390px; grid-template-columns: 1fr; grid-template-rows: auto 46px auto 46px auto; max-width: 250px; margin-inline: auto; }
  .deal-home__marketplace-graphic > i { width: 1px; height: 100%; margin-inline: auto; }
  .deal-home__marketplace-graphic > i::after { top: auto; right: -4px; bottom: -1px; transform: rotate(135deg); }
  .deal-home__marketplace-graphic > div { width: 165px; }
  .deal-home__closing-grid { min-height: 0; padding-top: 58px; padding-bottom: 58px; }
  .deal-home__closing .actions { display: grid; gap: 10px; }
  .deal-home__closing .btn { width: 100%; }
  .home-hero__copy { min-height: 530px; padding: 68px 22px 58px; }
  .home-hero h1 { font-size: clamp(3rem, 15vw, 4.6rem); }
  .home-hero .actions .btn { width: 100%; }
  .aperture { min-height: 580px; display: grid; grid-template-columns: repeat(2, 1fr); }
  .aperture::after { background: linear-gradient(0deg, rgba(5, 13, 26, .48), transparent 45%); }
  .aperture__panel, .aperture__panel:first-child { margin: 0; clip-path: none; border: 1px solid rgba(217, 174, 107, .36); }
  .aperture__panel:hover, .aperture__panel:focus-visible { flex: none; }
  .aperture__label { right: 16px; bottom: 18px; left: 16px; }
  .aperture__label small { display: none; }
  .truth { padding: 26px 22px; }
  .pillar-grid { grid-template-columns: 1fr; }
  .pillar-card { min-height: 260px; }
  .pillar-card__top { margin-bottom: 36px; }
  .proof-plate__body { padding: 38px 24px; }
  .opportunity-grid { grid-template-columns: 1fr; }
  .insight-grid { grid-template-columns: 1fr; }
  .insight-card:first-child { grid-column: auto; }
  .cta-band__inner { display: grid; }
  .cta-band__inner .actions .btn { width: 100%; }
  .page-hero__copy { padding: 58px 22px; }
  .page-hero__copy h1 { font-size: clamp(2.7rem, 13vw, 4rem); }
  .stat-ledger { grid-template-columns: 1fr; }
  .stat-ledger__item, .stat-ledger__item:nth-child(3) { border-top: 1px solid var(--navy-700); border-left: 0; }
  .stat-ledger__item:first-child { border-top: 0; }
  .partner-grid { grid-template-columns: 1fr; }
  .criteria-grid { grid-template-columns: 1fr; }
  .step-grid { grid-template-columns: repeat(2, 1fr); }
  .comparison__side { padding: 28px 22px; }
  .intent-grid { grid-template-columns: 1fr; }
  .step-grid { grid-template-columns: 1fr; }
  .contact-plate { padding: 34px 22px; }
  .deal-hero__inner { padding-top: 64px; }
  .deal-hero h1 { font-size: clamp(2.8rem, 13vw, 4rem); }
  .deal-hero__snapshot { padding: 24px; }
  .deal-nav__inner { gap: 18px; }
  .deal-nav .btn { display: none; }
  .deal-thesis__body { padding: 30px 22px; }
  .fact-grid { grid-template-columns: 1fr; }
  .fact, .fact:nth-child(3) { border-top: 1px solid var(--rule); border-left: 0; }
  .fact:first-child { border-top: 0; }
  .gallery-grid { grid-template-columns: 1fr; grid-template-rows: repeat(5, 240px); }
  .gallery-grid figure:first-child { grid-column: auto; }
  .terms-panel__body, .terms-panel__aside { padding: 34px 22px; }
  .document-grid { grid-template-columns: 1fr; }
  .story-hero__grid { gap: 25px; padding-top: 54px; padding-bottom: 54px; }
  .story-hero__copy h1 { font-size: clamp(2.7rem, 12.5vw, 4rem); }
  .story-hero__copy .actions { display: grid; gap: 10px; }
  .story-hero__copy .actions .btn { width: 100%; }
  .story-hero__visual { min-height: 286px; padding: 14px; }
  .story-quote blockquote { font-size: clamp(2rem, 10.5vw, 3.3rem); }
  .story-caveats { display: grid; gap: 11px; }
  .story-caveats span { padding: 0; border-left: 0; font-size: .95rem; }
  .stage-rail { grid-template-columns: 1fr; gap: 0; margin-top: 25px; }
  .stage-step, .stage-step:nth-child(odd) { min-height: 116px; padding: 20px 16px 18px 50px; border-top: 1px solid rgba(201,151,79,.34); border-left: 0; }
  .stage-step:first-child { border-top: 0; }
  .stage-step::before { top: 19px; left: 0; }
  .stage-step:not(:last-child)::after { top: auto; right: auto; bottom: -6px; left: 12px; transform: rotate(135deg); }
  .stage-step h3 { margin-top: 0; }
  .market-visual { grid-template-columns: 1fr; grid-template-rows: auto 42px auto; padding-top: 18px; }
  .market-visual__transfer { width: 1px; height: 100%; margin-inline: auto; }
  .market-visual__transfer::before { top: 50%; left: 18px; transform: translateY(-50%); }
  .market-visual__transfer::after { top: auto; right: -4px; bottom: -1px; transform: rotate(135deg); }
  .life-grid, .partner-directory__cards, .capability-grid, .resource-pills { grid-template-columns: 1fr; }
  .interest-table__head { display: none; }
  .interest-row { grid-template-columns: 1fr auto; gap: 12px; padding: 14px; }
  .interest-row > span { display: none; }
  .interest-row > div { min-width: 0; }
  .interest-row strong { font-size: .95rem; }
  .partner-directory__map { min-height: 300px; }
  .partner-directory__card { min-height: 160px; }
  .partner-bridge { gap: 30px; }
  .relationship-flow { grid-template-columns: 1fr; gap: 10px; }
  .relationship-flow > i { width: 1px; height:25px; margin-inline:auto; }
  .relationship-flow > i::after { top:auto; right:-4px; bottom:-1px; transform:rotate(135deg); }
  .editorial-board__feature > div { max-width: 80%; padding: 27px 21px; }
  .editorial-board__links a { min-height: 57px; padding: 10px 14px; font-size: 1rem; }
  .source-form-layout__grid { padding-top: 50px; padding-bottom: 50px; }
  .source-form-layout h1 { overflow-wrap:anywhere; font-size:clamp(2.65rem,11.5vw,3.35rem); }
  .source-form { padding: 24px 17px; }
  .preference-grid { grid-template-columns: repeat(2, 1fr); }
  .source-form__controls { grid-template-columns: 1fr; }
  .source-form__bottom { display: grid; gap: 13px; }
  .capital-path__intro { padding: 42px 0 10px; }
  .capital-path__intro h1 { font-size: clamp(2.75rem, 12.5vw, 4rem); }
  .capital-path__intro .btn { width: 100%; }
  .capital-path__intro figure { min-height: 214px; }
  .capital-path__builder { margin-top: 10px; padding: 21px 14px 17px; }
  .capital-path__progress { gap: 8px; font-size: 11px; }
  .capital-path__choices { grid-template-columns: 1fr; gap: 8px; margin-top: 17px; }
  .capital-path__choice { min-height: 66px; font-size: 1rem; }
  .capital-path__summary { gap: 20px; padding-top: 31px; }
  .capital-path__cards { grid-template-columns: 1fr; }
  .capital-path__card { padding: 18px; }
  .capital-path__truth { padding: 22px 15px; }
  .capital-path__truth nav { gap: 8px; }
  .capital-path__truth > div { grid-template-columns: 1fr; gap: 9px; }
  .capital-path__truth article { min-height: 92px; grid-template-columns: 34px 1fr; justify-items: start; text-align:left; }
  .capital-path__truth article .ico { grid-row: 1 / span 2; }
  .capital-path__truth article small { grid-column:2; }
  .capital-path__truth > div > i { width: 1px; height:20px; margin-inline:auto; }
  .capital-path__truth > div > i::after { top:auto; right:-4px; bottom:-1px; transform:rotate(135deg); }
  .capital-path__utility > .container { grid-template-columns: 1fr; }
  .capital-path__utility > .container > div, .capital-path__utility > .container > a { grid-column: auto; border-left: 0; border-top: 1px solid var(--rule); }
  .capital-path__utility > .container > div { border-top: 0; }
  .capital-path__utility a { min-height: 72px; }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 38px 24px; }
  .footer-brand { grid-column: 1 / -1; }
}

@media (max-width: 440px) {
  .aperture { grid-template-columns: 1fr; min-height: 780px; }
  .aperture__panel { min-height: 195px; }
  .footer-grid { grid-template-columns: 1fr; }
  .footer-brand { grid-column: auto; }
}

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

/* Navigation architecture */
.nav-menu { position: relative; }
.nav-menu > details { position: relative; }
.nav-menu summary { position: relative; min-height: 44px; display: inline-flex; align-items: center; gap: 6px; color: inherit; cursor: pointer; font-size: .76rem; font-weight: 500; letter-spacing: -.01em; list-style: none; white-space: nowrap; }
.nav-menu summary::-webkit-details-marker { display: none; }
.nav-menu summary .ico { width: 14px; height: 14px; transition: transform .2s ease; }
.nav-menu summary[aria-current='page'] { color: var(--white); }
.nav-menu summary[aria-current='page']::before { content: ''; position: absolute; right: 3px; bottom: 3px; left: 3px; height: 2px; background: var(--gold-400); }
.nav-menu > details[open] > summary { color: var(--white); }
.nav-menu > details[open] > summary .ico { transform: rotate(180deg); }
.nav-menu > details[open] > summary::after { content: ''; position: absolute; right: 0; bottom: 3px; left: 0; height: 2px; background: var(--gold-400); }
.nav-menu__panel { position: absolute; z-index: 120; top: calc(100% + 13px); left: 50%; width: min(690px, calc(100vw - 80px)); display: grid; grid-template-columns: minmax(205px, .76fr) minmax(320px, 1.24fr); gap: 24px; padding: 25px; color: var(--ink-700); background: rgba(252, 249, 243, .99); border: 1px solid rgba(201,151,79,.35); border-radius: var(--radius-sm); box-shadow: 0 24px 50px rgba(3, 13, 27, .28); transform: translateX(-50%); }
.nav-menu__intro { padding: 6px 18px 6px 4px; border-right: 1px solid var(--rule); }
.nav-menu__intro .eyebrow { color: var(--gold-600); font-size: 11px; }
.nav-menu__intro p { margin: 11px 0 19px; color: var(--ink-500); font-size: .76rem; line-height: 1.55; }
.nav-menu__intro .link-arrow { color: var(--navy-900); font-size: .7rem; }
.nav-menu__links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-content: start; gap: 7px; }
.primary-nav .nav-menu__links a { min-height: 48px; display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 9px 11px; color: var(--ink-700); border: 1px solid transparent; border-radius: var(--radius-xs); font-size: .73rem; font-weight: 650; white-space: normal; }
.primary-nav .nav-menu__links a:hover { color: var(--navy-900); background: var(--gold-100); border-color: var(--gold-200); }
.primary-nav .nav-menu__links a .ico { width: 15px; height: 15px; color: var(--gold-600); }

/* Expanded footer map */
.footer-grid { grid-template-columns: 1.25fr repeat(5, 1fr); gap: 34px; }
.footer-bottom__links { display: inline-flex; justify-content: flex-end; gap: 14px; white-space: nowrap; }
.footer-bottom__links a:hover { color: var(--white); }

/* Investor portal product prototype */
.portal-body { min-width: 0; color: var(--ink-700); background: var(--hd-paper, #F7F5F0); }
.portal-app { min-height: 100vh; display: grid; grid-template-columns: 276px minmax(0, 1fr); background: var(--hd-paper, #F7F5F0); }
.portal-sidebar { position: sticky; top: 0; height: 100vh; display: flex; flex-direction: column; padding: 24px 17px 18px; color: var(--on-dark-700); background: linear-gradient(150deg, var(--navy-950), #071d36 66%, #061426); }
.portal-sidebar .brand-lockup { padding: 3px 8px; }
.portal-sidebar .brand-word { font-size: 1.4rem; }
.portal-sidebar .brand-mark { width: 29px; height: 34px; }
/* Was .41rem — 6.6px, the smallest rendered text on the site. */
.portal-sidebar .brand-tag { display: block; font-size: 11px; letter-spacing: .08em; }
.portal-sidebar__bar { display: flex; align-items: center; justify-content: space-between; }
.portal-nav-toggle { display: none; align-items: center; gap: 8px; min-height: 44px; padding: 0 10px; color: var(--white); background: transparent; border: 1px solid rgba(255,255,255,.22); border-radius: var(--radius-xs); font-size: .7rem; }
.portal-nav-toggle span { width: 16px; height: 1px; display: block; background: currentColor; box-shadow: 0 5px 0 currentColor, 0 -5px 0 currentColor; }
.portal-sidebar__navigation { min-height: 0; flex: 1; margin-top: 30px; overflow-y: auto; }
.portal-nav__group { padding: 19px 0; border-top: 1px solid rgba(255,255,255,.09); }
.portal-nav__group:first-child { padding-top: 0; border-top: 0; }
.portal-nav__group > span { display: block; padding: 0 10px 8px; color: var(--on-dark-500); font-size: 11px; font-weight: 750; letter-spacing: .1em; text-transform: uppercase; }
.portal-nav a { min-height: 40px; display: flex; align-items: center; gap: 12px; padding: 9px 10px; color: var(--on-dark-700); border-radius: var(--radius-xs); font-size: .75rem; }
.portal-nav a .ico { width: 19px; height: 19px; color: var(--gold-300); }
.portal-nav a b { font-weight: 550; }
.portal-nav a:hover, .portal-nav a.is-active { color: var(--white); background: linear-gradient(90deg, rgba(202,153,72,.96), rgba(202,153,72,.72)); box-shadow: 0 8px 18px rgba(0,0,0,.14); }
.portal-nav a:hover .ico, .portal-nav a.is-active .ico { color: var(--navy-950); }
.portal-help { margin-top: 18px; padding: 18px 15px; border: 1px solid rgba(215,174,102,.35); border-radius: var(--radius-sm); background: rgba(2, 12, 28, .38); }
.portal-help > span { color: var(--gold-300); font-size: 11px; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; }
.portal-help p { margin: 8px 0 13px; color: var(--on-dark-700); font-size: .69rem; line-height: 1.5; }
.portal-help a { display: flex; align-items: center; justify-content: space-between; min-height: 40px; color: var(--gold-200); font-size: 11px; font-weight: 700; }
.portal-help .ico { width: 15px; height: 15px; }
.portal-sidebar__person { display: flex; align-items: center; gap: 10px; margin-top: 18px; padding: 15px 9px 0; border-top: 1px solid rgba(255,255,255,.09); }
.portal-sidebar__person strong, .portal-sidebar__person small { display: block; }
.portal-sidebar__person strong { color: var(--white); font-size: .72rem; }
.portal-sidebar__person small { margin-top: 3px; color: var(--on-dark-500); font-size: 11px; }
.portal-avatar { width: 34px; height: 34px; display: grid; place-items: center; color: var(--navy-950); background: var(--gold-300); border-radius: 50%; font-size: 11px; font-weight: 800; }
.portal-main { min-width: 0; }
.portal-content { width: min(100%, 1580px); margin: 0 auto; padding: 35px clamp(22px, 4vw, 64px) 56px; }
.portal-topbar, .portal-detail-back { display: flex; align-items: flex-start; justify-content: space-between; gap: 22px; margin-bottom: 24px; }
.portal-topbar h1 { margin: 5px 0 6px; color: var(--ink-900); font-size: clamp(2.3rem, 4vw, 3.6rem); }
.portal-topbar p { margin: 0; color: var(--ink-500); font-size: .87rem; }
.portal-topbar__actions, .portal-detail-back > div { display: flex; align-items: center; gap: 10px; }
.portal-icon-btn { position: relative; width: 42px; height: 42px; display: inline-grid; place-items: center; color: var(--navy-900); background: var(--white); border: 1px solid var(--rule); border-radius: var(--radius-xs); }
.portal-icon-btn .ico { width: 20px; height: 20px; }
.portal-icon-btn i { position: absolute; top: 8px; right: 8px; width: 7px; height: 7px; background: var(--gold-500); border: 1px solid var(--white); border-radius: 50%; }
.portal-preview-note { margin-bottom: 18px; padding: 10px 14px; color: #536174; background: #f7f4ed; border: 1px solid #e4dbc9; border-radius: var(--radius-xs); font-size: 11px; line-height: 1.4; }
.portal-stat-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); margin-bottom: 18px; background: var(--white); border: 1px solid var(--rule); border-radius: var(--radius-sm); box-shadow: var(--shadow-sm); overflow: hidden; }
.portal-stat-grid article { min-height: 142px; display: flex; align-items: center; gap: 13px; padding: 19px; border-left: 1px solid var(--rule); }
.portal-stat-grid article:first-child { border-left: 0; }
.portal-stat-grid .ico { flex: 0 0 auto; width: 28px; height: 28px; color: var(--gold-600); }
.portal-stat-grid small, .portal-stat-grid strong, .portal-stat-grid span, .portal-stat-grid a { display: block; }
.portal-stat-grid small { color: var(--ink-600); font-size: 11px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.portal-stat-grid strong { margin-top: 3px; color: var(--navy-900); font-family: var(--font-display); font-size: 1.8rem; font-weight: 500; line-height: 1; }
.portal-stat-grid span { margin-top: 3px; color: var(--ink-500); font-size: 11px; }
.portal-stat-grid a { margin-top: 9px; color: var(--navy-700); font-size: 11px; font-weight: 700; }
.portal-stat-grid a .ico { width: 13px; height: 13px; display: inline-block; vertical-align: -3px; }
.portal-dashboard-grid { display: grid; grid-template-columns: minmax(0, 1.32fr) minmax(360px, .92fr); gap: 18px; align-items: start; }
.portal-panel { min-width: 0; padding: 22px; background: var(--white); border: 1px solid var(--rule); border-radius: var(--radius-sm); box-shadow: var(--shadow-sm); }
.portal-panel__heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 15px; }
.portal-panel h2 { margin: 0; color: var(--ink-900); font-size: 1.32rem; }
.portal-panel h3 { color: var(--ink-900); }
.portal-panel__heading > a, .portal-panel__bottom-link { display: inline-flex; align-items: center; gap: 5px; color: var(--navy-700); font-size: 11px; font-weight: 700; white-space: nowrap; }
.portal-panel__heading > a .ico, .portal-panel__bottom-link .ico { width: 14px; height: 14px; }
.portal-investment-list { display: grid; }
.portal-investment { display: grid; grid-template-columns: 152px minmax(0, 1fr) 104px; gap: 15px; align-items: center; padding: 13px 0; border-top: 1px solid var(--rule); }
.portal-investment:first-child { padding-top: 0; border-top: 0; }
.portal-investment:last-child { padding-bottom: 0; }
.portal-investment > img { width: 152px; height: 88px; object-fit: cover; border-radius: 4px; }
.portal-status { display: inline-flex; align-items: center; min-height: 20px; padding: 3px 7px; color: #1d714a; background: #dff5e7; border-radius: 3px; font-size: 11px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.portal-status--pending { color: #916221; background: #f7e3b3; }
.portal-investment h3 { margin: 6px 0 2px; font-size: 1rem; }
.portal-investment p, .portal-investment small { display: block; margin: 0; color: var(--ink-500); font-size: 11px; }
.portal-investment small { margin-top: 5px; }
.portal-progress { display: grid; justify-items: end; gap: 4px; text-align: right; }
.portal-progress strong { color: var(--navy-900); font-family: var(--font-display); font-size: 1.28rem; font-weight: 500; }
.portal-progress span { color: var(--ink-500); font-size: 11px; }
.portal-progress i { width: 86px; height: 6px; display: block; overflow: hidden; background: #e3e9e4; border-radius: 99px; }
.portal-progress b { height: 100%; display: block; background: #3c8a67; border-radius: inherit; }
.portal-panel--investments { grid-row: span 2; }
.portal-panel__bottom-link { margin-top: 17px; padding-top: 15px; border-top: 1px solid var(--rule); }
.portal-update-list { display: grid; }
.portal-update-list > a { display: grid; grid-template-columns: 68px minmax(0, 1fr) auto 14px; gap: 10px; align-items: center; padding: 11px 0; border-top: 1px solid var(--rule); }
.portal-update-list > a:first-child { padding-top: 0; border-top: 0; }
.portal-update-list img { width: 68px; height: 48px; object-fit: cover; border-radius: 3px; }
.portal-update-list small, .portal-update-list strong, .portal-update-list em { display: block; }
.portal-update-list small { color: var(--gold-600); font-size: 11px; font-style: normal; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.portal-update-list strong { margin-top: 3px; color: var(--ink-900); font-size: .71rem; line-height: 1.28; }
.portal-update-list em { max-width: 230px; margin-top: 3px; color: var(--ink-500); font-size: 11px; font-style: normal; line-height: 1.35; }
.portal-update-list time { color: var(--ink-500); font-size: 11px; white-space: nowrap; }
.portal-update-list > a > .ico { width: 13px; height: 13px; color: var(--gold-600); }
.portal-panel--compact { min-height: 225px; }
.portal-event { display: grid; grid-template-columns: 42px minmax(0, 1fr) auto; gap: 11px; align-items: center; padding: 12px 0; border-top: 1px solid var(--rule); }
.portal-event:first-of-type { padding-top: 0; border-top: 0; }
.portal-event time { width: 42px; min-height: 52px; display: grid; align-content: center; justify-items: center; color: var(--white); background: var(--navy-900); border-radius: 3px; }
.portal-event time b { color: var(--gold-300); font-size: 11px; letter-spacing: .09em; text-transform: uppercase; }
.portal-event time strong { font-family: var(--font-display); font-size: 1.05rem; font-weight: 500; }
.portal-event span > * { display: block; }
.portal-event span strong { color: var(--ink-900); font-size: .69rem; }
.portal-event span small, .portal-event span em { margin-top: 2px; color: var(--ink-500); font-size: 11px; font-style: normal; }
.portal-event .btn { min-height: 31px; padding: 6px 9px; font-size: 11px; }
.portal-document-list { display: grid; gap: 3px; margin: 0; padding: 0; list-style: none; }
.portal-document-list li { display: grid; grid-template-columns: 18px minmax(0, 1fr) 20px; gap: 8px; align-items: center; padding: 6px 0; color: var(--ink-700); font-size: .7rem; }
.portal-document-list .ico { width: 16px; height: 16px; color: var(--gold-600); }
.portal-document-list b { width: 18px; height: 18px; display: grid; place-items: center; color: #805719; background: #f3dfbb; border-radius: 50%; font-size: 11px; }
.portal-timeline-card { grid-column: 1 / -1; }
.portal-timeline { display: grid; grid-template-columns: repeat(5, 1fr); gap: 0; margin: 28px 0 21px; }
.portal-timeline > div { position: relative; display: grid; justify-items: center; gap: 5px; min-width: 0; text-align: center; }
.portal-timeline > div:not(:last-child)::after { content: ''; position: absolute; top: 18px; left: calc(50% + 18px); width: calc(100% - 36px); height: 1px; background: #cbd4db; }
.portal-timeline i { position: relative; z-index: 1; width: 36px; height: 36px; display: grid; place-items: center; color: var(--ink-500); background: var(--white); border: 1px solid #cbd4db; border-radius: 50%; }
.portal-timeline i .ico { width: 16px; height: 16px; }
.portal-timeline strong { color: var(--ink-900); font-size: 11px; line-height: 1.25; }
.portal-timeline small { color: var(--ink-500); font-size: 11px; }
.portal-timeline .is-done i { color: #fff; background: #3c8a67; border-color: #3c8a67; }
.portal-timeline .is-done::after { background: #3c8a67; }
.portal-timeline .is-current i { color: var(--navy-900); background: var(--gold-300); border-color: var(--gold-300); }
.portal-timeline__status { display: flex; align-items: stretch; justify-content: space-between; gap: 18px; padding-top: 18px; border-top: 1px solid var(--rule); }
.portal-timeline__status span { display: grid; align-content: center; }
.portal-timeline__status b, .portal-timeline__status strong, .portal-timeline__status small { display: block; }
.portal-timeline__status b { color: var(--ink-500); font-size: 11px; letter-spacing: .06em; text-transform: uppercase; }
.portal-timeline__status strong { margin: 2px 0; color: #307a58; font-family: var(--font-display); font-size: 1.45rem; font-weight: 500; }
.portal-timeline__status small { max-width: 60ch; color: var(--ink-500); font-size: 11px; }
.portal-timeline__status img { width: 190px; min-height: 94px; object-fit: cover; border-radius: 3px; }
.portal-detail-back { align-items: center; margin-bottom: 17px; }
.portal-detail-back > a { display: inline-flex; align-items: center; min-height: 40px; gap: 6px; color: var(--navy-700); font-size: .72rem; font-weight: 700; }
.portal-detail-back > a .ico { width: 15px; height: 15px; transform: rotate(180deg); }
.portal-detail-hero { display: grid; grid-template-columns: minmax(250px, .65fr) minmax(0, 1.4fr) auto; gap: 28px; align-items: center; padding: 18px; background: var(--white); border: 1px solid var(--rule); border-radius: var(--radius-sm); box-shadow: var(--shadow-sm); }
.portal-detail-hero > img { width: 100%; height: 230px; object-fit: cover; border-radius: 4px; }
.portal-detail-hero h1 { margin: 7px 0 8px; color: var(--ink-900); font-size: clamp(2rem, 3.5vw, 3.5rem); line-height: .96; }
.portal-detail-hero p { margin: 0; color: var(--ink-500); font-size: .77rem; }
.portal-detail-meta { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 19px; }
.portal-detail-meta span { display: inline-flex; align-items: center; gap: 6px; color: var(--ink-600); font-size: 11px; }
.portal-detail-meta .ico { width: 16px; height: 16px; color: var(--gold-600); }
.portal-detail-state { display: flex; align-items: center; gap: 10px; margin-top: 14px; }
.portal-detail-state b { color: #28754e; font-size: 11px; }
.portal-detail-hero > aside { display: grid; gap: 9px; align-self: stretch; align-content: center; }
.portal-detail-hero > aside .btn { min-width: 180px; justify-content: center; font-size: 11px; }
.portal-detail-tabs { display: flex; gap: 28px; margin: 16px 0; padding: 0 18px; overflow-x: auto; background: var(--white); border: 1px solid var(--rule); border-radius: var(--radius-xs); }
.portal-detail-tabs a { flex: 0 0 auto; min-height: 48px; min-width: 44px; justify-content: center; display: inline-flex; align-items: center; color: var(--ink-600); border-bottom: 2px solid transparent; font-size: 11px; font-weight: 700; }
.portal-detail-tabs a:hover, .portal-detail-tabs a.is-active { color: var(--navy-900); border-color: var(--gold-500); }
.portal-detail-grid { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(290px, .72fr); gap: 18px; align-items: start; }
.portal-detail-grid > div { display: grid; gap: 18px; }
.portal-detail-aside { display: grid; gap: 18px; }
.portal-overview > p { max-width: 76ch; margin: 10px 0 21px; color: var(--ink-600); font-size: .78rem; line-height: 1.6; }
.portal-kpi-row { display: grid; grid-template-columns: repeat(4, 1fr); margin: 0 -22px 22px; border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule); }
.portal-kpi-row article { min-height: 112px; display: grid; align-content: center; gap: 4px; padding: 15px 19px; border-left: 1px solid var(--rule); }
.portal-kpi-row article:first-child { border-left: 0; }
.portal-kpi-row .ico { width: 20px; height: 20px; color: var(--gold-600); }
.portal-kpi-row small { color: var(--ink-500); font-size: 11px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; }
.portal-kpi-row strong { color: var(--navy-900); font-size: .7rem; line-height: 1.3; }
.portal-detail-columns { display: grid; grid-template-columns: 1.1fr .9fr; gap: 25px; }
.portal-detail-columns h3 { margin: 0 0 12px; font-size: 1rem; }
.portal-detail-columns .check-list { gap: 9px; }
.portal-detail-columns .check-list li { font-size: 11px; }
.portal-detail-ledger { display: grid; gap: 0; margin: 0; }
.portal-detail-ledger div { display: flex; justify-content: space-between; gap: 16px; padding: 10px 0; border-top: 1px solid var(--rule); }
.portal-detail-ledger div:first-child { border-top: 0; }
.portal-detail-ledger dt { color: var(--ink-500); font-size: 11px; }
.portal-detail-ledger dd { margin: 0; color: var(--ink-800); font-size: 11px; font-weight: 700; text-align: right; }
.portal-progress-panel__grid { display: grid; grid-template-columns: 125px minmax(170px, .7fr) minmax(0, 1.5fr); gap: 22px; align-items: center; }
.portal-circle-progress { position:relative; width: 102px; height: 102px; display: grid; place-content: center; justify-items: center; color: var(--navy-900); background: conic-gradient(#3c8a67 0 42%, #e5ebe7 42% 100%); border-radius: 50%; }
.portal-circle-progress::before { content: ''; position: absolute; width: 82px; height: 82px; background: var(--white); border-radius: 50%; }
.portal-circle-progress strong, .portal-circle-progress span { position: relative; z-index: 1; }
.portal-circle-progress strong { font-family: var(--font-display); font-size: 1.7rem; font-weight: 500; }
.portal-circle-progress span { color: var(--ink-500); font-size: 11px; }
.portal-progress-panel__grid > div > small { color: var(--ink-500); font-size: 11px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.portal-progress-panel__grid > div > h3 { margin: 4px 0 5px; }
.portal-progress-panel__grid > div > p { margin: 0; color: var(--ink-500); font-size: 11px; line-height: 1.5; }
.portal-phase-list { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.portal-phase-list > div { display: grid; justify-items: center; gap: 4px; padding: 6px; text-align: center; }
.portal-phase-list i { width: 32px; height: 32px; display: grid; place-items: center; color: var(--ink-500); border: 1px solid #d3dbe0; border-radius: 50%; }
.portal-phase-list i .ico { width: 14px; height: 14px; }
.portal-phase-list strong { color: var(--ink-800); font-size: 11px; }
.portal-phase-list small { color: var(--ink-500); font-size: 11px; }
.portal-phase-list .is-done i { color: #fff; background: #3c8a67; border-color: #3c8a67; }
.portal-phase-list .is-current i { color: var(--navy-900); background: var(--gold-300); border-color: var(--gold-300); }
.portal-gallery-row { display: grid; grid-template-columns: repeat(4, 1fr); gap: 9px; }
.portal-gallery-row img { width: 100%; height: 118px; object-fit: cover; border-radius: 4px; }
.portal-document-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 9px; }
.portal-document-grid a { min-height: 116px; display: grid; align-content: center; gap: 7px; padding: 14px; border: 1px solid var(--rule); border-radius: 4px; }
.portal-document-grid .ico { width: 24px; height: 24px; color: var(--gold-600); }
.portal-document-grid strong { color: var(--ink-800); font-size: 11px; }
.portal-document-grid small { color: var(--ink-500); font-size: 11px; }
.portal-detail-aside .portal-panel > h3 { margin: 11px 0 8px; font-size: 1rem; }
.portal-detail-aside .portal-panel > p { color: var(--ink-600); font-size: .7rem; line-height: 1.55; }
.portal-detail-aside .portal-panel > small { color: var(--ink-500); font-size: 11px; }
.portal-detail-aside .link-arrow { margin-top: 17px; color: var(--navy-700); font-size: 11px; }

@media (max-width: 1180px) {
  .nav-menu__panel { width: min(640px, calc(100vw - 56px)); }
  .footer-grid { grid-template-columns: 1.35fr repeat(3, 1fr); row-gap: 38px; }
  .portal-stat-grid { grid-template-columns: repeat(3, 1fr); }
  .portal-stat-grid article:nth-child(4) { border-left: 0; border-top: 1px solid var(--rule); }
  .portal-stat-grid article:nth-child(5) { border-top: 1px solid var(--rule); }
  .portal-progress-panel__grid { grid-template-columns: 112px 1fr; }
  .portal-phase-list { grid-column: 1 / -1; }
}

@media (max-width: 980px) {
  .nav-menu > details { width: 100%; }
  .nav-menu summary { width: 100%; min-height: 52px; justify-content: space-between; padding: 0 10px; border-bottom: 1px solid rgba(255,255,255,.08); font-size: .92rem; }
  .nav-menu > details[open] > summary::after { top: 14px; right: auto; bottom: 14px; left: 0; width: 2px; height: auto; }
  .nav-menu__panel { position: static; width: auto; grid-template-columns: 1fr; gap: 13px; padding: 11px 10px 16px 20px; color: var(--on-dark-700); background: transparent; border: 0; border-radius: 0; box-shadow: none; transform: none; }
  .nav-menu__intro { display: none; }
  .nav-menu__links { grid-template-columns: 1fr; gap: 0; }
  .primary-nav .nav-menu__links a { min-height: 40px; padding: 8px 7px; color: var(--on-dark-700); background: rgba(255,255,255,.03); border: 0; border-bottom: 1px solid rgba(255,255,255,.06); border-radius: 0; font-size: .78rem; }
  .primary-nav .nav-menu__links a:hover { color: var(--white); background: rgba(201,151,79,.12); }
  .footer-grid { grid-template-columns: 1.35fr repeat(2, 1fr); }
  .portal-app { display: block; }
  .portal-sidebar { position: sticky; z-index: 100; top: 0; height: auto; padding: 12px 18px; }
  .portal-sidebar .brand-lockup { padding-left: 0; }
  .portal-nav-toggle { display: inline-flex; }
  .portal-sidebar__navigation { display: none; margin-top: 15px; }
  .portal-nav-open .portal-sidebar__navigation { display: block; }
  .portal-sidebar .portal-help, .portal-sidebar__person { display: none; }
  .portal-nav { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 8px 18px; padding-bottom: 8px; }
  .portal-nav__group { padding: 10px 0; border-top: 1px solid rgba(255,255,255,.09); }
  .portal-nav__group:nth-child(1), .portal-nav__group:nth-child(2) { border-top: 0; }
  /* 40px, not 35. These links only exist once the nav is opened, so the
     default-state scan never measured them: this is the portal's entire
     navigation on a phone and every item was five pixels short of a thumb. */
  .portal-nav a { min-height: 40px; padding: 8px 7px; }
  .portal-nav__group > span { padding-left: 7px; }
  .portal-dashboard-grid, .portal-detail-grid { grid-template-columns: 1fr; }
  .portal-panel--investments { grid-row: auto; }
  .portal-detail-aside { grid-template-columns: repeat(2, 1fr); }
  .portal-detail-aside > :first-child { grid-row: span 2; }
  .portal-detail-hero { grid-template-columns: minmax(210px, .7fr) minmax(0, 1.3fr); }
  .portal-detail-hero > aside { grid-column: 1 / -1; grid-template-columns: repeat(2, 1fr); }
  .portal-detail-hero > aside .btn { min-width: 0; }
}

@media (max-width: 700px) {
  .footer-grid { grid-template-columns: 1fr 1fr; }
  .footer-bottom__links { justify-content: center; flex-wrap: wrap; }
  .portal-content { padding: 24px 15px 38px; }
  .portal-topbar { display: grid; gap: 15px; }
  .portal-topbar__actions { justify-content: space-between; }
  .portal-topbar__actions .btn { flex: 1; justify-content: center; }
  .portal-stat-grid { grid-template-columns: repeat(2, 1fr); }
  .portal-stat-grid article { min-height: 115px; padding: 14px; border-top: 1px solid var(--rule); }
  .portal-stat-grid article:nth-child(1), .portal-stat-grid article:nth-child(2) { border-top: 0; }
  .portal-stat-grid article:nth-child(odd) { border-left: 0; }
  .portal-stat-grid article:last-child { grid-column: 1 / -1; }
  .portal-dashboard-grid { gap: 14px; }
  .portal-panel { padding: 17px 14px; }
  .portal-investment { grid-template-columns: 92px minmax(0, 1fr); gap: 11px; }
  .portal-investment > img { width: 92px; height: 74px; }
  .portal-progress { grid-column: 1 / -1; grid-template-columns: auto auto 1fr; align-items: center; justify-items: start; gap: 8px; padding-left: 103px; text-align: left; }
  .portal-progress i { width: 100%; }
  .portal-update-list > a { grid-template-columns: 55px minmax(0, 1fr) 14px; }
  .portal-update-list img { width: 55px; height: 44px; }
  .portal-update-list time { display: none; }
  .portal-update-list em { display: none; }
  .portal-event { grid-template-columns: 40px minmax(0,1fr); }
  .portal-event .btn { grid-column: 2; justify-self: start; }
  .portal-timeline { grid-template-columns: 1fr; gap: 8px; margin: 18px 0; }
  .portal-timeline > div { grid-template-columns: 38px minmax(0,1fr) auto; justify-items: start; text-align: left; }
  .portal-timeline > div:not(:last-child)::after { top: 37px; left: 17px; width: 1px; height: calc(100% - 28px); }
  .portal-timeline strong { align-self: center; }
  .portal-timeline small { align-self: center; }
  .portal-timeline__status { display: grid; }
  .portal-timeline__status img { width: 100%; }
  .portal-detail-back { align-items: flex-start; }
  .portal-detail-hero { grid-template-columns: 1fr; gap: 18px; padding: 13px; }
  .portal-detail-hero > img { height: 190px; }
  .portal-detail-hero > aside { grid-column: auto; grid-template-columns: 1fr; }
  .portal-detail-tabs { gap: 18px; margin-inline: -1px; padding: 0 12px; }
  .portal-detail-aside { grid-template-columns: 1fr; }
  .portal-detail-aside > :first-child { grid-row: auto; }
  .portal-kpi-row { grid-template-columns: repeat(2, 1fr); margin: 0 -14px 18px; }
  .portal-kpi-row article:nth-child(3) { border-left: 0; border-top: 1px solid var(--rule); }
  .portal-kpi-row article:nth-child(4) { border-top: 1px solid var(--rule); }
  .portal-detail-columns { grid-template-columns: 1fr; gap: 20px; }
  .portal-progress-panel__grid { grid-template-columns: 1fr; justify-items: center; text-align: center; }
  .portal-progress-panel__grid > div > p { max-width: 37ch; }
  .portal-phase-list { grid-template-columns: repeat(2, 1fr); }
  .portal-gallery-row { grid-template-columns: repeat(2, 1fr); }
  .portal-gallery-row img { height: 98px; }
  .portal-document-grid { grid-template-columns: repeat(2, 1fr); }
}

/* Partner-selection page: a work chain rather than a generic logo grid. */
.capability-grid--five { grid-template-columns: repeat(5, 1fr); }
.capability-card--light { color: var(--ink-700); background: var(--white); --heading-ink: var(--ink-900); --body-ink: var(--ink-500); border-color: var(--rule); box-shadow: 0 8px 20px rgba(3,15,29,.035); }
.capability-card--light .ico { color: var(--gold-500); }
.capability-card--light h3 { color: var(--ink-900); }
.capability-card--light p { color: var(--ink-500); }
.process-rail--dark { margin-top: 38px; }
.process-rail--dark .process-step::before { background: rgba(201,151,79,.38); }
.process-rail--dark .process-step__icon { color: var(--gold-300); background: var(--navy-900); border-color: rgba(201,151,79,.58); }
.process-rail--dark .process-step h3 { color: var(--white); }

/* Track record — an evidence-led record, not a performance dashboard */
.record-zero-ring { position: relative; width: min(100%, 440px); min-height: 366px; display: grid; place-items: center; align-content: center; margin-inline: auto; color: var(--gold-300); text-align: center; isolation: isolate; }
.record-zero-ring::before, .record-zero-ring::after { content: ''; position: absolute; z-index: -1; border: 1px solid rgba(217,174,107,.68); border-radius: 50%; }
.record-zero-ring::before { width: 242px; height: 242px; box-shadow: 0 0 0 16px rgba(217,174,107,.05), 0 0 60px rgba(201,151,79,.14); }
.record-zero-ring::after { width: 326px; height: 326px; border-style: dashed; border-color: rgba(217,174,107,.32); }
.record-zero-ring__label { margin-bottom: 5px; font-size: 11px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.record-zero-ring strong { font-family: var(--font-display); font-size: clamp(5.5rem, 12vw, 8.5rem); font-weight: 400; line-height: .75; text-shadow: 0 0 24px rgba(217,174,107,.28); }
.record-zero-ring__copy { max-width: 20ch; margin-top: 16px; color: var(--on-dark-700); font-size: .72rem; line-height: 1.45; }
.record-zero-ring__orbit { position: absolute; width: 100px; color: var(--on-dark-500); font-size: 11px; font-weight: 700; letter-spacing: .09em; line-height: 1.25; text-transform: uppercase; }
.record-zero-ring__orbit::before { content: ''; display: block; width: 8px; height: 8px; margin: 0 auto 7px; background: var(--gold-400); border-radius: 50%; box-shadow: 0 0 0 5px rgba(201,151,79,.12); }
.record-zero-ring__orbit--one { top: 2px; left: calc(50% - 50px); }
.record-zero-ring__orbit--two { top: 42%; right: -2px; }
.record-zero-ring__orbit--three { right: calc(50% - 52px); bottom: 0; }
.record-zero-ring__orbit--four { top: 42%; left: -2px; }

.record-definition__cards { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.record-definition__card { min-height: 180px; padding: 32px; background: var(--paper-alt); border: 1px solid var(--rule); border-radius: var(--radius-sm); }
.record-definition__card > div { display: flex; align-items: center; gap: 12px; color: var(--ink-900); font-size: .72rem; font-weight: 750; letter-spacing: .11em; text-transform: uppercase; }
.record-definition__card .ico { width: 26px; height: 26px; }
.record-definition__card--counted .ico { color: var(--open); }
.record-definition__card--uncounted .ico { color: #b34b3b; }
.record-definition__card p { margin: 20px 0 0; color: var(--ink-500); font-size: .88rem; line-height: 1.65; }
.record-definition__conclusion { margin: 38px 0 6px; color: var(--ink-900); font-family: var(--font-display); font-size: clamp(1.45rem, 3vw, 2.2rem); text-align: center; }
.record-definition__source { margin: 0 auto; color: var(--ink-500); font-size: .72rem; text-align: center; }

.record-partners { background: var(--paper); }
.record-partners__grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; }
.record-partner-card { display: grid; grid-template-columns: minmax(170px, .78fr) minmax(0, 1.22fr); min-height: 350px; overflow: hidden; background: var(--white); border: 1px solid var(--rule); border-radius: var(--radius-sm); }
.record-partner-card > img { width: 100%; height: 100%; min-height: 260px; object-fit: cover; }
.record-partner-card__body { display: flex; flex-direction: column; padding: 28px; }
.record-partner-card__body > span { color: var(--accent-ink); font-size: 11px; font-weight: 750; letter-spacing: .13em; text-transform: uppercase; }
.record-partner-card__body h3 { margin: 10px 0; font-size: clamp(1.7rem, 2.5vw, 2.3rem); }
.record-partner-card__body p { margin-bottom: 20px; color: var(--ink-500); font-size: .8rem; }
.record-partner-card__body small { display: flex; align-items: center; gap: 8px; padding: 11px 0; color: var(--accent-ink); border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule); font-size: 11px; font-weight: 650; }
.record-partner-card__body small .ico { width: 15px; height: 15px; }
.record-partner-card__body > div { display: flex; flex-wrap: wrap; gap: 10px 18px; margin-top: auto; padding-top: 16px; }
.record-partner-card__body .link-arrow { font-size: .69rem; }

.record-ledger .section-head .lede { color: var(--on-dark-700); }
.record-filter { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-bottom: 17px; }
.record-filter > span { margin-right: 7px; color: var(--on-dark-500); font-size: 11px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.record-filter button { min-height: 28px; padding: 5px 8px; color: var(--on-dark-700); background: transparent; border: 1px solid rgba(217,174,107,.34); border-radius: 2px; font-size: 11px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.record-filter button:first-of-type { color: var(--navy-950); background: var(--gold-400); border-color: var(--gold-400); }
.record-ledger__table { overflow-x: auto; border: 1px solid rgba(217,174,107,.42); border-radius: var(--radius-sm); }
.record-ledger__head, .record-ledger__row { min-width: 1120px; display: grid; grid-template-columns: 1.45fr 1fr .82fr .5fr .72fr .82fr .88fr 1.2fr; gap: 16px; align-items: center; padding: 15px 20px; }
.record-ledger__head { color: var(--gold-300); background: rgba(5,13,26,.68); border-bottom: 1px solid rgba(217,174,107,.35); font-size: 11px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.record-ledger__row { color: var(--on-dark-700); border-top: 1px solid rgba(255,255,255,.09); font-size: .72rem; }
.record-ledger__row:first-of-type { border-top: 0; }
.record-ledger__row strong { color: var(--white); font-size: .74rem; }
.record-ledger__row a { display: inline-flex; align-items: center; gap: 6px; color: var(--gold-300); font-weight: 650; }
.record-ledger__row a .ico { width: 14px; height: 14px; }
.record-status { justify-self: start; padding: 4px 7px; border-radius: 999px; font-size: 11px; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; }
.record-status--completed { color: #c7efd9; background: rgba(57,145,94,.25); }
.record-status--refinanced { color: #f4d18a; background: rgba(192,138,62,.24); }
.record-status--active { color: #b9dbfb; background: rgba(64,128,190,.25); }
.record-status--development { color: #d2d6dc; background: rgba(150,160,170,.22); }
.record-ledger__legend { display: flex; flex-wrap: wrap; justify-content: center; gap: 9px 18px; margin: 15px 0 0; color: var(--on-dark-500); font-size: 11px; }
.record-ledger__legend > span { display: inline-flex; align-items: center; gap: 6px; }
.record-ledger__legend .record-status { font-style: normal; }
.record-ledger__note { display: flex; justify-content: center; align-items: center; gap: 9px; margin: 18px 0 0; color: var(--on-dark-700); font-size: .7rem; }
.record-ledger__note .ico { width: 16px; height: 16px; color: var(--gold-300); }

.record-journey { position: relative; display: grid; grid-template-columns: repeat(6, 1fr); gap: 10px; padding: 32px 8px 24px; }
.record-journey__line { position: absolute; top: 64px; right: 9%; left: 9%; height: 1px; background: linear-gradient(90deg, var(--gold-400), var(--gold-200)); }
.record-journey__step { position: relative; z-index: 1; display: grid; justify-items: center; gap: 9px; min-width: 0; text-align: center; }
.record-journey__step > span { width: 64px; height: 64px; display: grid; place-items: center; color: var(--gold-500); background: var(--white); border: 1px solid var(--gold-200); border-radius: 50%; box-shadow: 0 0 0 8px var(--white); }
.record-journey__step .ico { width: 26px; height: 26px; }
.record-journey__step strong { color: var(--ink-900); font-size: 11px; line-height: 1.25; }
.record-journey__step small { color: var(--ink-500); font-size: 11px; line-height: 1.25; }
.record-journey__legend { display: flex; align-items: center; justify-content: center; gap: 12px; margin: 8px 0 0; color: var(--accent-ink); font-size: 11px; font-weight: 650; }
.record-journey__legend i { width: 100px; height: 1px; background: var(--gold-400); }
.record-journey__note { margin: 20px auto 0; color: var(--ink-500); font-size: .75rem; text-align: center; }

.record-evidence { background: var(--paper); }
.record-evidence__grid { display: grid; grid-template-columns: 1fr 220px 1fr; align-items: stretch; gap: 18px; }
.record-evidence__grid > article { padding: 34px; background: var(--white); border: 1px solid var(--rule); border-radius: var(--radius-sm); }
.record-evidence__grid h3 { display: flex; align-items: center; gap: 11px; margin-bottom: 22px; font-size: 1.3rem; }
.record-evidence__grid h3 .ico { width: 24px; height: 24px; color: var(--gold-500); }
.record-evidence__grid ul { display: grid; gap: 12px; margin: 0; padding-left: 18px; color: var(--ink-500); font-size: .8rem; }
.record-evidence__shield { display: grid; place-items: center; align-content: center; gap: 2px; min-height: 260px; color: var(--white); background: var(--navy-900); clip-path: polygon(50% 0, 89% 17%, 89% 59%, 50% 100%, 11% 59%, 11% 17%); }
.record-evidence__shield .ico { width: 58px; height: 58px; color: var(--gold-300); }
.record-evidence__shield strong { color: var(--gold-200); font-family: var(--font-display); font-size: 1.5rem; font-weight: 500; }
.record-evidence__shield small { color: var(--on-dark-500); font-size: 11px; letter-spacing: .09em; text-transform: uppercase; }

.record-discipline__grid { display: grid; grid-template-columns: repeat(3, 1fr); border: 1px solid var(--rule); border-radius: var(--radius-sm); overflow: hidden; }
.record-discipline__grid article { min-height: 260px; padding: 34px; background: var(--paper-alt); border-left: 1px solid var(--rule); }
.record-discipline__grid article:first-child { border-left: 0; }
.record-discipline__grid span { display: inline-grid; width: 30px; height: 30px; place-items: center; margin-bottom: 28px; color: var(--white); background: var(--navy-900); border-radius: 50%; font-size: 11px; font-weight: 700; }
.record-discipline__grid h3 { margin-bottom: 11px; font-size: 1.45rem; }
.record-discipline__grid p { margin: 0; color: var(--ink-500); font-size: .82rem; }
.record-discipline__note { margin: 18px auto 0; color: var(--ink-500); font-size: .72rem; text-align: center; }

.record-response > .container { display: grid; grid-template-columns: minmax(0,.8fr) minmax(400px,1.2fr); align-items: center; gap: 54px; }
.record-response h2 { margin-bottom: 20px; color: var(--white); }
.record-response .lede { margin-bottom: 28px; color: var(--on-dark-700); }
.record-response__flow { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px 12px; }
.record-response__flow > span { position: relative; display: grid; justify-items: center; gap: 8px; min-width: 0; color: var(--gold-300); text-align: center; }
.record-response__flow b { width: 52px; height: 52px; display: grid; place-items: center; border: 1px solid rgba(217,174,107,.72); border-radius: 50%; }
.record-response__flow .ico { width: 22px; height: 22px; }
.record-response__flow small { color: var(--on-dark-700); font-size: 11px; font-weight: 700; line-height: 1.25; text-transform: uppercase; }
.record-response__flow i { position: absolute; top: 16px; right: -15px; color: var(--gold-400); font-size: .88rem; font-style: normal; }
.record-response__flow span:nth-child(4) i, .record-response__flow span:last-child i { display: none; }

.record-completed__table { overflow: hidden; border: 1px solid var(--rule); border-radius: var(--radius-sm); }
.record-completed__head, .record-completed__row { display: grid; grid-template-columns: 1.1fr repeat(4, 1fr); gap: 12px; align-items: center; padding: 13px 18px; }
.record-completed__head { color: var(--accent-ink); background: var(--paper-alt); border-bottom: 1px solid var(--rule); font-size: 11px; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }
.record-completed__row { border-top: 1px solid var(--rule-soft); }
.record-completed__row strong { color: var(--ink-900); font-size: .72rem; }
.record-completed__row span { justify-self: start; min-width: 78px; padding: 4px 7px; color: var(--ink-500); background: #edf1eb; border-radius: 2px; font-size: 11px; font-weight: 650; text-align: center; text-transform: uppercase; }
.record-completed__row span:nth-child(3) { background: #f9eed8; color: #8a6321; }
.record-completed__row span:nth-child(4) { background: #e5eef7; color: #426787; }
.record-completed__row span:last-child { background: #e5f1e7; color: #34704c; }

.record-questions { background: var(--paper); }
.record-questions__grid { display: grid; grid-template-columns: repeat(7, 1fr); border: 1px solid var(--rule); border-radius: var(--radius-sm); overflow: hidden; }
.record-questions__grid article { min-height: 156px; padding: 20px 15px; background: var(--white); border-left: 1px solid var(--rule); }
.record-questions__grid article:first-child { border-left: 0; }
.record-questions__grid span { display: grid; width: 22px; height: 22px; place-items: center; margin-bottom: 14px; color: var(--ink-500); border: 1px solid var(--rule); border-radius: 50%; font-size: 11px; font-weight: 700; }
.record-questions__grid p { margin: 0; color: var(--ink-700); font-size: 11px; font-weight: 600; line-height: 1.4; }
.record-questions__action { display: flex; justify-content: center; margin-top: 26px; }

.record-trust { text-align: center; }
.record-trust .eyebrow { margin-inline: auto; }
.record-trust blockquote { max-width: 820px; margin: 12px auto 20px; color: var(--ink-900); font-family: var(--font-display); font-size: clamp(1.9rem, 4vw, 3.3rem); line-height: 1.18; }
.record-trust p { margin: 0 auto; color: var(--accent-ink); font-size: .74rem; }

.record-close { color: var(--on-dark-700); background: linear-gradient(120deg, var(--navy-950), var(--navy-800)); }
.record-close > .container { min-height: 310px; display: flex; align-items: center; justify-content: space-between; gap: 48px; padding-block: 64px; }
.record-close h2 { margin-bottom: 16px; color: var(--white); }
.record-close p { margin: 0; color: var(--on-dark-700); font-size: .88rem; }
.record-close .actions { flex: 0 0 auto; }

@media (max-width: 1080px) {
  .record-partner-card { grid-template-columns: 1fr; }
  .record-partner-card > img { max-height: 220px; }
  .record-evidence__grid { grid-template-columns: 1fr 180px 1fr; }
  .record-response > .container { grid-template-columns: 1fr; }
  .record-questions__grid { grid-template-columns: repeat(4, 1fr); }
  .record-questions__grid article:nth-child(5) { border-left: 0; border-top: 1px solid var(--rule); }
  .record-questions__grid article:nth-child(n + 5) { border-top: 1px solid var(--rule); }
}

@media (max-width: 780px) {
  .record-zero-ring { min-height: 340px; transform: scale(.92); }
  .record-definition__cards, .record-partners__grid, .record-discipline__grid, .record-evidence__grid { grid-template-columns: 1fr; }
  .record-partner-card { grid-template-columns: minmax(130px, .72fr) minmax(0, 1.28fr); }
  .record-partner-card > img { height: 100%; min-height: 240px; max-height: none; }
  .record-ledger__head, .record-ledger__row { min-width: 940px; padding-inline: 15px; }
  .record-journey { grid-template-columns: repeat(3, 1fr); row-gap: 30px; }
  .record-journey__line { display: none; }
  .record-evidence__shield { min-height: 180px; clip-path: none; border-radius: var(--radius-sm); }
  .record-discipline__grid article { min-height: 0; border-top: 1px solid var(--rule); border-left: 0; }
  .record-discipline__grid article:first-child { border-top: 0; }
  .record-response__flow { grid-template-columns: repeat(4, 1fr); }
  .record-completed__head { display: none; }
  .record-completed__row { grid-template-columns: 1fr 1fr; gap: 8px; padding: 15px; }
  .record-completed__row strong { grid-column: 1 / -1; }
  .record-completed__row span { min-width: 0; width: 100%; }
  .record-questions__grid { grid-template-columns: repeat(2, 1fr); }
  .record-questions__grid article:nth-child(odd) { border-left: 0; }
  .record-questions__grid article:nth-child(n + 3) { border-top: 1px solid var(--rule); }
  .record-close > .container { display: grid; gap: 28px; }
}

@media (max-width: 520px) {
  .record-zero-ring { min-height: 300px; transform: scale(.78); margin-block: -24px; }
  .record-definition__card, .record-partner-card__body, .record-evidence__grid > article { padding: 24px; }
  .record-partner-card { grid-template-columns: 1fr; }
  .record-partner-card > img { min-height: 190px; max-height: 220px; }
  .record-filter > span { width: 100%; }
  .record-journey { grid-template-columns: repeat(2, 1fr); }
  .record-response__flow { grid-template-columns: repeat(2, 1fr); }
  .record-response__flow i { display: none; }
  .record-completed__row { grid-template-columns: 1fr; }
  .record-completed__row strong { grid-column: auto; }
  .record-completed__row span { padding-block: 6px; }
}
.relationship-flow--detailed > div { gap: 7px; align-content: center; }
.relationship-flow--detailed small { max-width: 18ch; color: var(--ink-500); font-family: var(--font-body); font-size: 11px; font-weight: 500; line-height: 1.4; }
.partner-selection__roles { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.partner-selection__roles article { min-height: 142px; display: grid; place-items: center; align-content: center; gap: 12px; padding: 17px; color: var(--ink-900); background: var(--white); border: 1px solid var(--rule); border-radius: var(--radius-sm); text-align: center; box-shadow: 0 8px 20px rgba(3,15,29,.035); }
.partner-selection__roles .ico { width: 34px; height: 34px; color: var(--gold-500); }
.partner-selection__roles strong { font-family: var(--font-display); font-size: 1.12rem; font-weight: 500; line-height: 1.1; }

@media (max-width: 980px) {
  .capability-grid--five { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 700px) {
  .capability-grid--five, .partner-selection__roles { grid-template-columns: 1fr; }
  .partner-selection__roles article { min-height: 112px; grid-template-columns: 38px 1fr; justify-content: start; text-align: left; }
}

@media (max-width: 980px) {
  .asset-guide-rail { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .asset-guide-rail a:nth-child(3) { border-right: 0; }
  .asset-guide-rail a:nth-child(-n + 3) { border-bottom: 1px solid var(--rule); }
}

@media (max-width: 700px) {
  .asset-guide-rail { grid-template-columns: 1fr; }
  .asset-guide-rail a, .asset-guide-rail a:nth-child(3) { border-right: 0; border-bottom: 1px solid var(--rule); }
  .asset-guide-rail a:last-child { border-bottom: 0; }
}

/* Compact decision-screen system */
.progressive-control { display:flex; justify-content:center; padding:18px 0; background:#fbf9f4; border-top:1px solid var(--rule); border-bottom:1px solid var(--rule); }
.progressive-control .btn[disabled] { opacity:.55; cursor:default; }
/* Legacy detail routes inherit the decision-screen rule: short orientation, an action, then optional layers. */
.story-page .story-hero, .story-page .page-hero { min-height:0; padding-block:clamp(30px,5vw,58px); }
.story-page .story-hero__grid { min-height:0; grid-template-columns:minmax(0,1fr); max-width:860px; }
.story-page .story-hero h1, .story-page .page-hero h1 { max-width:760px; font-size:clamp(2rem,3.7vw,3.35rem); line-height:1.04; letter-spacing:-.035em; }
.story-page .story-hero__visual { display:none; }
.story-page .story-hero__support { margin-top:18px; }
.story-page .section { padding-block:clamp(28px,4vw,48px); }
.story-page .section-head h2, .story-page .section-head--stack h2 { font-size:clamp(1.55rem,2.6vw,2.35rem); }
main > .page-hero { min-height:0; padding-block:clamp(30px,5vw,58px); }
main > .page-hero .page-hero__grid { min-height:0; }
main > .page-hero .page-hero__copy { padding:0 24px; }
.decision-insights .opportunity-card__media { display:none; }
main > .page-hero h1 { font-size:clamp(2rem,3.7vw,3.35rem); line-height:1.04; letter-spacing:-.035em; }
main > .page-hero .page-hero__media { display:none; }
.cockpit-home, .capital-path--cockpit, .situation-page, .cockpit-deal { background: #fbf9f4; }
.cockpit-home__hero { color: var(--on-dark-700); background: linear-gradient(115deg, #061a30, #020e1d); }
.cockpit-home__hero-grid { min-height: min(620px, calc(100vh - 80px)); display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(320px, .75fr); gap: clamp(38px, 7vw, 110px); align-items: center; padding-block: clamp(54px, 8vw, 96px); }
.cockpit-home__hero h1, .situation-page__hero h1 { max-width: 760px; color: #fff; font-size: clamp(3.2rem, 6vw, 5.8rem); line-height: .96; }
.cockpit-home__hero .eyebrow, .cockpit-home__brief .eyebrow { color: var(--gold-300); }
.cockpit-home__brief { padding: 26px; color: var(--on-dark-700); background: rgba(1, 12, 25, .72); border: 1px solid rgba(201,151,79,.48); border-radius: var(--radius-sm); box-shadow: 0 18px 52px rgba(0,0,0,.22); }
.cockpit-home__brief h2 { color: #fff; font-size: clamp(1.75rem, 2.7vw, 2.5rem); }
.cockpit-home__brief a { display: grid; grid-template-columns: 1fr auto; gap: 12px; margin-top: 12px; padding: 15px 0; color: var(--on-dark-700); border-top: 1px solid rgba(255,255,255,.14); font-size: .84rem; }
.cockpit-home__brief a:hover { color: var(--gold-200); }
.cockpit-home__brief .ico { width: 18px; color: var(--gold-300); }
.cockpit-home__paths, .cockpit-home__opportunities { padding-block: clamp(46px, 6vw, 76px); }
.cockpit-home__section-head { display: grid; grid-template-columns: 1fr auto; gap: 22px; align-items: end; margin-bottom: 24px; }
.cockpit-home__section-head h2 { margin: 0; font-size: clamp(2rem, 3.5vw, 3.25rem); }
.cockpit-home__section-head .eyebrow { grid-column: 1 / -1; margin-bottom: -12px; }
.cockpit-home__path-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border: 1px solid var(--rule); border-radius: var(--radius-sm); overflow: hidden; }
.cockpit-home__path-grid a { min-height: 178px; display: grid; grid-template-columns: auto 1fr; grid-template-rows: auto 1fr; gap: 14px; padding: 22px; color: var(--ink-900); background: var(--white); border-right: 1px solid var(--rule); transition: background .2s ease, color .2s ease; }
.cockpit-home__path-grid a:last-child { border-right: 0; }
.cockpit-home__path-grid a:hover { color: var(--white); background: var(--navy-900); }
.cockpit-home__path-grid .ico { width: 30px; height: 30px; color: var(--gold-500); }
.cockpit-home__path-grid .ico:last-child { grid-column: 2; justify-self: end; align-self: end; width: 18px; }
.cockpit-home__path-grid strong, .cockpit-home__path-grid small { display: block; }
.cockpit-home__path-grid strong { margin-bottom: 10px; font-family: var(--font-display); font-size: 1.35rem; font-weight: 500; }
.cockpit-home__path-grid small { color: var(--ink-500); font-size: .72rem; line-height: 1.5; }
.cockpit-home__path-grid a:hover small { color: var(--on-dark-700); }
.cockpit-home__opportunities { border-top: 1px solid var(--rule); }
.cockpit-home__opportunity-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 16px; }
.cockpit-home__opportunity-grid > a { overflow: hidden; color: var(--ink-900); background: var(--white); border: 1px solid var(--rule); border-radius: var(--radius-sm); }
.cockpit-home__opportunity-grid img { width: 100%; height: 180px; object-fit: cover; }
.cockpit-home__opportunity-grid > a > span { display: grid; gap: 7px; padding: 18px; }
.cockpit-home__opportunity-grid small { color: var(--gold-700); font-size: 11px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.cockpit-home__opportunity-grid strong { font-family: var(--font-display); font-size: 1.28rem; font-weight: 500; }
.cockpit-home__opportunity-grid em { color: var(--gold-700); font-size: .73rem; font-style: normal; }
.cockpit-home__utility { color: var(--on-dark-700); background: var(--navy-900); }
.cockpit-home__utility .container { display: grid; grid-template-columns: repeat(3, 1fr); }
.cockpit-home__utility a { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 13px; min-height: 100px; padding: 18px 20px; color: var(--on-dark-700); border-right: 1px solid rgba(255,255,255,.12); }
.cockpit-home__utility a:last-child { border-right: 0; }
.cockpit-home__utility .ico { width: 25px; color: var(--gold-300); }
.cockpit-home__utility strong, .cockpit-home__utility small { display:block; }.cockpit-home__utility strong { color:#fff; font-family:var(--font-display); font-size:1.15rem; font-weight:500; }.cockpit-home__utility small { color:var(--on-dark-500); font-size:11px; }
.situation-page__hero { padding: clamp(56px, 8vw, 96px) 0 46px; color: var(--on-dark-700); background: var(--navy-900); }
.situation-page__hero .eyebrow { color: var(--gold-300); }.situation-page__workspace { display:grid; grid-template-columns: minmax(0, .92fr) minmax(320px, .78fr); gap: 20px; padding-block: 36px 48px; }
.situation-page__choices { display:grid; gap: 10px; }.situation-page__choices button { width:100%; display:grid; grid-template-columns: 34px 1fr auto; gap: 12px; align-items:center; padding:17px; color:var(--ink-900); background:var(--white); border:1px solid var(--rule); border-radius:var(--radius-sm); text-align:left; cursor:pointer; }.situation-page__choices button[aria-pressed='true'] { color:var(--white); background:var(--navy-900); border-color:var(--gold-500); }.situation-page__choices button > span { color:var(--gold-600); font-size:11px; font-weight:700; }.situation-page__choices strong, .situation-page__choices small { display:block; }.situation-page__choices strong { font-family:var(--font-display); font-size:1.22rem; font-weight:500; }.situation-page__choices small { margin-top:3px; color:var(--ink-500); font-size:.7rem; line-height:1.4; }.situation-page__choices button[aria-pressed='true'] small { color:var(--on-dark-700); }.situation-page__choices .ico { width:17px; color:var(--gold-400); }
.situation-page__answer { min-height:350px; padding:30px; color:var(--on-dark-700); background:linear-gradient(145deg,#071d34,#031326); border-radius:var(--radius-sm); }.situation-page__answer .eyebrow { color:var(--gold-300); }.situation-page__answer h2 { color:#fff; font-size:clamp(2rem,3vw,2.9rem); }.situation-page__answer p { color:var(--on-dark-700); }
.capital-path--cockpit { min-height: calc(100vh - 70px); padding-bottom: 36px; }.capital-path--cockpit .capital-path__intro { padding: 34px 0 16px; }.capital-path--cockpit .capital-path__intro h1 { max-width:720px; margin-bottom:13px; font-size:clamp(2.25rem,4.2vw,3.65rem); line-height:1.02; }.capital-path--cockpit .capital-path__experience { margin-top:0; }.capital-path--cockpit .capital-path__builder { margin:0; }.capital-path__experience { display:grid; grid-template-columns:minmax(0,1.12fr) minmax(290px,.62fr); gap:18px; }.capital-path__controls { display:flex; justify-content:space-between; gap:10px; margin-top:22px; }.capital-brief { padding:26px; color:var(--on-dark-700); background:#061a30; border-radius:var(--radius-sm); }.capital-brief .eyebrow { color:var(--gold-300); }.capital-brief h2 { color:#fff; font-size:1.9rem; }.capital-brief dl { margin:20px 0; }.capital-brief dl div { padding:10px 0; border-top:1px solid rgba(255,255,255,.15); }.capital-brief dt { color:var(--on-dark-500); font-size:11px; }.capital-brief dd { margin:4px 0 0; color:#fff; font-size:.79rem; }.capital-brief__fit { padding-top:16px; border-top:1px solid rgba(201,151,79,.5); }.capital-brief__fit > span { color:var(--gold-300); font-size:11px; font-weight:700; letter-spacing:.09em; text-transform:uppercase; }.capital-brief__fit strong { display:block; margin-top:8px; color:#fff; font-family:var(--font-display); font-size:1.35rem; font-weight:500; }.capital-brief small { display:block; margin-top:16px; color:var(--on-dark-500); font-size:11px; line-height:1.5; }
.cockpit-deal__hero { position:relative; min-height: min(500px, calc(100vh - 70px)); overflow:hidden; color:var(--on-dark-700); background:var(--navy-950); }.cockpit-deal__hero > img, .cockpit-deal__shade { position:absolute; inset:0; width:100%; height:100%; }.cockpit-deal__hero > img { object-fit:cover; }.cockpit-deal__shade { background:linear-gradient(90deg,rgba(2,12,24,.94) 15%,rgba(2,12,24,.56) 62%,rgba(2,12,24,.7)); }.cockpit-deal__hero-content { position:relative; z-index:1; min-height:inherit; display:grid; grid-template-columns: minmax(0,1fr) 270px; gap:36px; align-items:center; }.cockpit-deal__hero .eyebrow { color:var(--gold-300); }.cockpit-deal__hero .lede { color:var(--on-dark-700); }.cockpit-deal__hero h1 { max-width:700px; color:#fff; font-size:clamp(3rem,5.5vw,5rem); }.cockpit-deal__hero aside { display:grid; gap:5px; padding:22px; background:rgba(3,15,29,.8); border:1px solid rgba(201,151,79,.48); border-radius:var(--radius-sm); }.cockpit-deal__hero aside span { color:var(--on-dark-500); font-size:11px; letter-spacing:.1em; text-transform:uppercase; }.cockpit-deal__hero aside strong { margin-bottom:10px; color:#fff; font-family:var(--font-display); font-weight:500; }.cockpit-deal__hero aside .btn { margin-top:6px; }
.cockpit-deal__workspace { display:grid; grid-template-columns:230px minmax(0,1fr); gap:22px; padding-block:30px 42px; }.cockpit-deal__tabs { display:grid; align-content:start; gap:7px; }.cockpit-deal__tabs button { padding:13px 14px; color:var(--ink-700); background:transparent; border:1px solid var(--rule); border-radius:4px; font-weight:650; text-align:left; cursor:pointer; }.cockpit-deal__tabs button[aria-selected='true'] { color:#fff; background:var(--navy-900); border-color:var(--navy-900); }.cockpit-deal__content { display:grid; grid-template-columns:minmax(0,1fr) minmax(260px,.72fr); gap:28px; align-items:start; padding:28px; background:var(--white); border:1px solid var(--rule); border-radius:var(--radius-sm); }.cockpit-deal__content h2 { font-size:clamp(2rem,3vw,3rem); }.cockpit-deal__content figure { margin:0; }.cockpit-deal__content figure img { width:100%; min-height:260px; object-fit:cover; border-radius:4px; }.cockpit-deal__content figcaption { margin-top:7px; color:var(--ink-500); font-size:11px; }.cockpit-facts { display:grid; grid-template-columns:repeat(2,1fr); gap:1px; margin-top:22px; background:var(--rule); border:1px solid var(--rule); }.cockpit-facts div { min-height:100px; display:grid; align-content:center; gap:4px; padding:14px; background:#fbf9f4; }.cockpit-facts .ico { width:22px; color:var(--gold-500); }.cockpit-facts strong { font-family:var(--font-display); font-size:1.12rem; font-weight:500; }.cockpit-facts span { color:var(--ink-500); font-size:11px; }
.cockpit-deal__media-link { position:relative; cursor:pointer; outline:none; }
.cockpit-deal__media-link:focus-visible { box-shadow:0 0 0 3px var(--gold-200); }
.cockpit-deal__media-link img { transition:filter .2s ease, transform .2s ease; }
.cockpit-deal__media-link:hover img,
.cockpit-deal__media-link:focus-visible img { filter:brightness(.72); transform:scale(1.01); }
.cockpit-deal__media-action { position:absolute; right:12px; bottom:28px; padding:9px 12px; color:#fff; background:rgba(3,15,29,.88); border:1px solid rgba(201,151,79,.72); border-radius:4px; font-size:11px; font-weight:700; }
.investment-test-drive { margin-top:22px; padding:20px; color:var(--on-dark-700); background:var(--navy-900); border:1px solid rgba(201,151,79,.45); border-radius:var(--radius-sm); }.investment-test-drive__amount { display:flex; align-items:end; justify-content:space-between; gap:16px; }.investment-test-drive__amount span { color:var(--gold-300); font-size:11px; font-weight:700; letter-spacing:.09em; text-transform:uppercase; }.investment-test-drive__amount output { color:#fff; font-family:var(--font-display); font-size:clamp(1.7rem,3.2vw,2.5rem); line-height:1; }.investment-test-drive input[type='range'] { width:100%; margin:20px 0 5px; accent-color:var(--gold-400); cursor:pointer; }.investment-test-drive__stops { display:flex; justify-content:space-between; color:var(--on-dark-500); font-size:11px; }.investment-test-drive__journey { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; margin-top:20px; }.investment-test-drive__journey article { padding:13px; background:rgba(255,255,255,.055); border:1px solid rgba(255,255,255,.14); border-radius:5px; }.investment-test-drive__journey b { display:inline-grid; width:22px; height:22px; place-items:center; margin-bottom:8px; color:var(--navy-900); background:var(--gold-300); border-radius:50%; font-size:.7rem; }.investment-test-drive__journey strong { display:block; color:#fff; font-family:var(--font-display); font-size:1rem; font-weight:500; }.investment-test-drive__journey p, .investment-test-drive__notice { margin:7px 0 0; color:var(--on-dark-500); font-size:.75rem; line-height:1.45; }.investment-test-drive__notice { max-width:700px; }.investment-test-drive .btn { margin-top:16px; }
.capital-thread { grid-column:1 / -1; display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:22px; padding:17px 20px; color:var(--on-dark-700); background:linear-gradient(135deg,#071b31,#0b2745); border:1px solid rgba(201,151,79,.64); border-radius:var(--radius-sm); box-shadow:0 12px 28px rgba(3,15,29,.10); }
.capital-thread .eyebrow { color:var(--gold-300); }
.capital-thread h2 { margin:4px 0 7px; color:#fff; font-size:1.35rem; }
.capital-thread p { max-width:760px; margin:8px 0 0; color:var(--on-dark-500); font-size:.69rem; line-height:1.5; }
.capital-thread__chips { display:flex; flex-wrap:wrap; gap:6px; }
.capital-thread__chips span { padding:4px 8px; color:#edf1f5; background:rgba(255,255,255,.055); border:1px solid rgba(255,255,255,.16); border-radius:999px; font-size:11px; }
.capital-thread__actions { display:flex; flex-wrap:wrap; justify-content:flex-end; align-items:center; gap:12px; }
.capital-thread__actions .btn { min-height:42px; padding-inline:15px; }
.capital-thread__actions .btn--outline { color:#fff; border-color:rgba(201,151,79,.82); }
.capital-thread__actions .link-arrow { color:var(--gold-300); }
.investment-test-drive__presets { display:grid; grid-template-columns:repeat(4,1fr); gap:7px; margin-top:15px; }
.investment-test-drive__presets button { min-height:42px; padding:7px 8px; color:#fff; background:rgba(255,255,255,.055); border:1px solid rgba(255,255,255,.18); border-radius:4px; font-size:11px; font-weight:700; cursor:pointer; }
.investment-test-drive__presets button:hover, .investment-test-drive__presets button:focus-visible, .investment-test-drive__presets button[aria-pressed='true'] { color:var(--navy-900); background:var(--gold-300); border-color:var(--gold-300); }
/* Free numeric entry, used on every opportunity with no published minimum.
   A slider needs a lower bound and the lowest tick reads as the entry point,
   so a deal with no published minimum gets no track at all rather than an
   invented floor. Written by _build/make_deal_briefs.py from the minimum in
   assets/js/discovery.js. 44px tall so it is a thumb target. */
.investment-test-drive__entry { display:flex; align-items:center; gap:2px; margin-top:20px; padding:0 12px; background:rgba(255,255,255,.055); border:1px solid rgba(255,255,255,.28); border-radius:4px; }
.investment-test-drive__entry span { color:var(--gold-300); font-family:var(--font-display); font-size:1.05rem; }
.investment-test-drive__entry input[type='number'] { flex:1; min-width:0; min-height:44px; padding:9px 0; color:#fff; background:transparent; border:0; font-family:var(--font-display); font-size:1.05rem; }
.investment-test-drive__entry input[type='number']:focus { outline:none; }
.investment-test-drive__entry:focus-within { border-color:var(--gold-300); outline:2px solid var(--gold-300); outline-offset:1px; }
@media (max-width: 980px) { .cockpit-home__hero-grid, .situation-page__workspace, .capital-path__experience, .cockpit-deal__workspace { grid-template-columns:1fr; }.cockpit-home__hero-grid { min-height:0; }.cockpit-home__brief { max-width:680px; }.cockpit-home__path-grid { grid-template-columns:repeat(2,1fr); }.cockpit-home__path-grid a:nth-child(2) { border-right:0; }.cockpit-home__path-grid a:nth-child(-n+2) { border-bottom:1px solid var(--rule); }.cockpit-deal__workspace { gap:14px; }.capital-thread { grid-column:auto; }.cockpit-deal__tabs { grid-template-columns:repeat(4,1fr); }.cockpit-deal__content { grid-template-columns:1fr; }.cockpit-deal__content figure { max-width:620px; } }
@media (max-width: 700px) { .cockpit-home__hero-grid { padding-block:52px; }.cockpit-home__hero h1, .situation-page__hero h1 { font-size:clamp(2.7rem,13vw,3.8rem); }.cockpit-deal__hero h1 { max-width:12ch; font-size:clamp(2.15rem,10vw,2.85rem); line-height:1.02; overflow-wrap:anywhere; }.cockpit-home__section-head { grid-template-columns:1fr; }.cockpit-home__section-head .link-arrow { justify-self:start; }.cockpit-home__path-grid, .cockpit-home__opportunity-grid, .cockpit-home__utility .container { grid-template-columns:1fr; }.cockpit-home__path-grid a, .cockpit-home__path-grid a:nth-child(2), .cockpit-home__utility a { border-right:0; border-bottom:1px solid var(--rule); }.cockpit-home__path-grid a:last-child, .cockpit-home__utility a:last-child { border-bottom:0; }.cockpit-home__path-grid a { min-height:118px; }.cockpit-home__opportunity-grid img { height:160px; }.situation-page__workspace { padding-block:22px 30px; }.situation-page__answer { min-height:300px; padding:22px; }.capital-path--cockpit .capital-path__intro { padding-top:28px; }.capital-path--cockpit .capital-path__intro h1 { font-size:clamp(2.15rem,9.5vw,2.8rem); }.capital-path__experience { gap:10px; }.capital-brief { padding:20px; }.capital-path__controls .btn { flex:1; }.cockpit-deal__hero { min-height:0; }.cockpit-deal__hero-content { min-height:0; grid-template-columns:1fr; gap:20px; padding-block:34px; }.cockpit-deal__hero aside { max-width:320px; }.capital-thread { grid-template-columns:1fr; padding:15px; gap:12px; }.capital-thread__actions { justify-content:flex-start; }.capital-thread__actions .btn { flex:1; }.cockpit-deal__tabs { grid-template-columns:repeat(2,1fr); }.cockpit-deal__content { padding:20px; }.cockpit-facts { grid-template-columns:repeat(2,minmax(0,1fr)); }.investment-test-drive__presets { grid-template-columns:repeat(2,1fr); }.investment-test-drive__presets button { min-height:44px; }.investment-test-drive__journey { grid-template-columns:1fr; gap:8px; overflow:visible; padding-bottom:0; }.investment-test-drive__journey article { min-width:0; }.profile-handoff dl { grid-template-columns:1fr; } }
@media (max-width: 700px) { .cockpit-deal__content figure, .cockpit-facts { display:none; }.profile-handoff dl { grid-template-columns:repeat(2,minmax(0,1fr)); }.source-form-layout__grid > div > .check-list, .source-form-layout + .section { display:none; } }

@media (max-width: 700px) {
  .cockpit-deal__workspace,
  .cockpit-deal__tabs,
  .cockpit-deal__content,
  .cockpit-deal__content > section,
  .investment-test-drive,
  .investment-test-drive__journey {
    min-width: 0;
    max-width: 100%;
  }

  .cockpit-deal__tabs {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cockpit-deal__tabs button {
    min-width: 0;
    overflow-wrap: anywhere;
  }
}

/* The cockpit owns navigation. Keep every legacy footer to identity, legal
   context, and the small set of required policy links. */
.site-footer { border-top: 1px solid rgba(255,255,255,.08); }
.site-footer .footer-grid {
  display: flex;
  align-items: center;
  gap: 24px;
  padding-top: 24px;
  padding-bottom: 18px;
}
.site-footer .footer-brand {
  flex: 1 1 auto;
  display: flex;
  align-items: center;
  gap: 22px;
  min-width: 0;
}
.site-footer .footer-brand p {
  max-width: 62ch;
  margin: 0;
  font-size: .7rem;
}
.site-footer .footer-col { display: none; }
.site-footer .footer-bottom {
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 18px;
  padding: 12px 0 16px;
}
.site-footer .footer-bottom p { max-width: none; }
.record-filter__status {
  margin: 12px 0 0;
  color: var(--on-dark-500);
  font-size: 11px;
}
.record-ledger__row[hidden] { display: none !important; }
.is-actionable-card { cursor: pointer; }
.is-actionable-card img { transition: transform .2s ease, filter .2s ease; }
.is-actionable-card:hover img { transform: scale(1.015); filter: brightness(.92); }
.is-actionable-card:has(a:focus-visible) { outline: 3px solid var(--gold-500); outline-offset: 3px; }
.hero-media-action { position: relative; cursor: pointer; overflow: hidden; }
.hero-media-action img { transition: transform .24s ease, filter .24s ease; }
.hero-media-action:hover img { transform: scale(1.015); filter: brightness(.86); }
.hero-media-action__label {
  position: absolute;
  right: 14px;
  bottom: 14px;
  max-width: calc(100% - 28px);
  padding: 10px 13px;
  color: #fff;
  background: rgba(3,15,29,.9);
  border: 1px solid rgba(201,151,79,.72);
  border-radius: 4px;
  font-size: 11px;
  font-weight: 700;
}

@media (max-width: 700px) {
  .site-footer .footer-grid,
  .site-footer .footer-brand { display: grid; gap: 9px; }
  .site-footer .footer-grid { padding-top: 22px; padding-bottom: 14px; }
  .site-footer .footer-brand p { max-width: 48ch; }
  .site-footer .footer-bottom {
    grid-template-columns: 1fr;
    gap: 8px;
    padding: 12px 0 18px;
    text-align: left;
  }
  .site-footer .footer-bottom p { margin: 0; text-align: left; }
  .site-footer .footer-bottom__links { justify-content: flex-start; }
  .intent-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
  .intent-card { min-height: 158px; padding: 16px 14px; }
  .intent-card .ico { width: 24px; height: 24px; margin-bottom: 14px; }
  .intent-card h3 { margin-bottom: 0; font-size: 1rem; line-height: 1.15; }
  .intent-card p { display: none; }
  .intent-card .link-arrow { margin-top: 14px; font-size: 11px; line-height: 1.25; }
}
