/* /for/go/* prospect pages — self-contained; do not pair with styles.css */

:root {
  color-scheme: dark;
  --ink: #eef4ee;
  --muted: #aab7b0;
  --soft: #d5e0d8;
  --line: rgba(213, 224, 216, 0.18);
  --deep: #05080a;
  --gold: #b9965e;
  --gold-soft: #ead7aa;
  --gold-bright: #f6e5b8;
  --bone: #f4f1e7;
  --flow-serif: Georgia, "Times New Roman", serif;
  --flow-max: 1080px;
  --flow-gutter: clamp(20px, 4.5vw, 52px);
  --flow-section-y: clamp(56px, 7vw, 92px);
  font-family:
    Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI",
    sans-serif;
}

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

html {
  scroll-behavior: smooth;
  overflow-x: hidden;
}

body.for-page {
  margin: 0;
  background:
    radial-gradient(circle at 50% -10%, rgba(246, 229, 184, 0.1), transparent 32rem),
    linear-gradient(180deg, rgba(185, 150, 94, 0.04), transparent 240px),
    var(--deep);
  color: var(--ink);
  letter-spacing: 0;
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
}

body.for-page a {
  color: inherit;
  text-decoration: none;
}

body.for-page img {
  max-width: 100%;
  display: block;
}

body.for-page h1,
body.for-page h2,
body.for-page h3,
body.for-page p,
body.for-page blockquote {
  margin-top: 0;
}

body.for-page h1 {
  font-family: var(--flow-serif);
  font-size: clamp(2.1rem, 4.2vw, 3.15rem);
  line-height: 1.12;
  font-weight: 500;
  letter-spacing: -0.01em;
  margin-bottom: 18px;
}

body.for-page h2 {
  font-family: var(--flow-serif);
  font-size: clamp(1.65rem, 2.8vw, 2.2rem);
  line-height: 1.2;
  font-weight: 500;
  margin-bottom: 12px;
}

body.for-page h3 {
  font-size: 1.05rem;
  line-height: 1.3;
  font-weight: 600;
}

body.for-page section {
  padding: 0;
  margin: 0;
}

/* Header */
body.for-page .site-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 90;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 58px;
  padding: 10px var(--flow-gutter);
  border-bottom: 1px solid rgba(234, 215, 170, 0.1);
  background: linear-gradient(180deg, rgba(5, 8, 10, 0.94), rgba(5, 8, 10, 0.82));
  backdrop-filter: blur(16px);
  transition: background 180ms ease, border-color 180ms ease;
}

body.for-page .site-header.is-scrolled {
  border-bottom-color: rgba(234, 215, 170, 0.16);
  background: rgba(5, 8, 10, 0.94);
}

body.for-page .brand {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 0.84rem;
  font-weight: 700;
  color: var(--bone);
}

body.for-page .brand-mark {
  position: relative;
  display: inline-grid;
  place-items: center;
  isolation: isolate;
  width: 32px;
  height: 32px;
  border: 1px solid rgba(234, 215, 170, 0.65);
  background:
    linear-gradient(135deg, rgba(202, 168, 106, 0.26), transparent),
    #071017;
  font-size: 0.95rem;
}

body.for-page .brand-mark::before {
  content: "";
  position: absolute;
  inset: -7px;
  border: 1px solid rgba(185, 150, 94, 0.2);
  transform: rotate(45deg);
  z-index: -1;
}

body.for-page .brand-mark span {
  color: var(--gold-bright);
  font-family: var(--flow-serif);
}

body.for-page .nav--flow {
  display: none;
}

@media (min-width: 900px) {
  body.for-page .nav--flow {
    display: flex;
    align-items: center;
    gap: 22px;
    margin: 0 auto;
    font-size: 0.68rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--muted);
  }

  body.for-page .nav--flow a:hover {
    color: var(--gold-soft);
  }
}

body.for-page .header-cta {
  border: 1px solid rgba(234, 215, 170, 0.3);
  padding: 8px 14px;
  color: var(--gold-soft);
  font-size: 0.66rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  background: rgba(202, 168, 106, 0.07);
  white-space: nowrap;
  transition: border-color 160ms ease, background 160ms ease, color 160ms ease;
}

body.for-page .header-cta:hover {
  border-color: rgba(246, 229, 184, 0.55);
  background: rgba(202, 168, 106, 0.14);
  color: var(--gold-bright);
}

body.for-page main {
  padding-top: 58px;
}

/* Buttons */
body.for-page .button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 10px 16px;
  border: 1px solid rgba(234, 215, 170, 0.28);
  border-radius: 8px;
  color: var(--bone);
  background: rgba(7, 16, 23, 0.5);
  font-size: 0.84rem;
  font-weight: 600;
  letter-spacing: 0.01em;
  text-transform: none;
  transition: transform 160ms ease, border-color 160ms ease, background 160ms ease;
}

body.for-page .button.primary {
  background:
    linear-gradient(180deg, rgba(246, 229, 184, 0.14), rgba(185, 150, 94, 0.07)),
    rgba(7, 16, 23, 0.82);
  color: var(--gold-bright);
  border-color: rgba(246, 229, 184, 0.45);
}

body.for-page .button.primary:hover {
  transform: translateY(-1px);
  border-color: rgba(246, 229, 184, 0.7);
}

body.for-page .button.secondary {
  background: rgba(238, 244, 238, 0.03);
  color: var(--soft);
  border-color: rgba(238, 244, 238, 0.14);
}

body.for-page .button.secondary:hover {
  transform: translateY(-1px);
  border-color: rgba(234, 215, 170, 0.42);
  background: rgba(238, 244, 238, 0.08);
}

/* Layout */
.flow-wrap {
  width: 100%;
  max-width: var(--flow-max);
  margin: 0 auto;
  padding: 0 var(--flow-gutter);
}

/* Hero */
.flow-hero {
  position: relative;
  overflow: hidden;
}

.flow-hero-media {
  position: relative;
  min-height: min(68vh, 620px);
  display: flex;
  align-items: flex-end;
  padding: 40px 0 36px;
}

.flow-hero-bg,
.flow-hero-overlay {
  position: absolute;
  inset: 0;
}

.flow-hero-bg {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 72% center;
  filter: saturate(0.68) contrast(1.05) brightness(0.52);
}

.flow-hero-overlay {
  background:
    linear-gradient(90deg, rgba(5, 8, 10, 0.97) 0%, rgba(5, 8, 10, 0.78) 48%, rgba(5, 8, 10, 0.22) 100%),
    linear-gradient(0deg, rgba(5, 8, 10, 0.9) 0%, transparent 58%);
}

.flow-hero-copy {
  position: relative;
  z-index: 1;
  max-width: 580px;
}

.flow-hero .eyebrow {
  margin: 0 0 12px;
  color: var(--gold-soft);
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.flow-hero-lead {
  color: var(--soft);
  font-size: 0.98rem;
  line-height: 1.62;
  margin-bottom: 22px;
  max-width: 52ch;
}

.flow-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 18px;
}

.flow-hero-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.flow-hero-tags span {
  font-size: 0.66rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--muted);
  padding: 5px 10px;
  border-radius: 999px;
  border: 1px solid rgba(213, 224, 216, 0.12);
}

.flow-hero-strip {
  padding-bottom: 28px;
}

.flow-strip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  margin-top: 0;
  background: rgba(185, 150, 94, 0.16);
  border: 1px solid rgba(185, 150, 94, 0.2);
  border-radius: 10px;
  overflow: hidden;
}

.flow-strip-item {
  padding: 16px 18px;
  background: rgba(7, 12, 15, 0.96);
}

.flow-strip-label {
  display: block;
  font-size: 0.62rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 5px;
}

.flow-strip-value {
  margin: 0;
  font-size: 0.84rem;
  line-height: 1.45;
  color: var(--ink);
}

/* Funnel rail */
.flow-rail-wrap {
  position: sticky;
  top: 58px;
  z-index: 40;
  background: rgba(5, 8, 10, 0.94);
  border-bottom: 1px solid rgba(213, 224, 216, 0.08);
  backdrop-filter: blur(12px);
}

.flow-rail {
  max-width: var(--flow-max);
  margin: 0 auto;
  padding: 10px var(--flow-gutter);
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.flow-rail a {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 9px 11px;
  border: 1px solid rgba(213, 224, 216, 0.1);
  border-radius: 8px;
  font-size: 0.68rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--muted);
  transition: border-color 160ms ease, color 160ms ease, background 160ms ease;
}

.flow-rail a span {
  color: var(--gold);
  font-family: var(--flow-serif);
  font-size: 0.9rem;
}

.flow-rail a:hover,
.flow-rail a.is-active {
  color: var(--soft);
  border-color: rgba(185, 150, 94, 0.32);
  background: rgba(185, 150, 94, 0.06);
}

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

/* Chapters */
.flow-chapter {
  padding: var(--flow-section-y) 0;
  border-top: 1px solid rgba(213, 224, 216, 0.06);
}

.flow-chapter--shade {
  background: rgba(6, 11, 14, 0.45);
}

.flow-kicker {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 14px;
  font-size: 0.66rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--gold);
}

.flow-kicker::after {
  content: "";
  width: 32px;
  height: 1px;
  background: rgba(185, 150, 94, 0.4);
}

.flow-lead {
  max-width: 58ch;
  color: var(--muted);
  font-size: 0.94rem;
  line-height: 1.62;
  margin-bottom: 32px;
}

.flow-text-link {
  display: inline-flex;
  margin-top: 18px;
  color: var(--gold-soft);
  font-size: 0.88rem;
}

.flow-text-link:hover {
  color: var(--gold-bright);
}

/* Pillars */
.flow-pillars {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 24px;
}

.flow-pillar {
  padding: 20px 18px;
  border: 1px solid rgba(213, 224, 216, 0.1);
  border-radius: 10px;
  background: rgba(9, 16, 20, 0.5);
}

.flow-pillar-index {
  font-family: var(--flow-serif);
  color: var(--gold-soft);
  font-size: 1.15rem;
  margin-bottom: 6px;
}

.flow-pillar h3 {
  font-family: var(--flow-serif);
  font-size: 1.12rem;
  font-weight: 500;
  margin-bottom: 6px;
}

.flow-pillar p {
  margin: 0;
  color: var(--muted);
  font-size: 0.86rem;
  line-height: 1.55;
}

.flow-split-note {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}

.flow-split-note div {
  padding: 16px;
  border: 1px solid rgba(213, 224, 216, 0.08);
  border-radius: 8px;
}

.flow-split-note span {
  display: block;
  font-size: 0.62rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 6px;
}

.flow-split-note p {
  margin: 0;
  font-size: 0.86rem;
  line-height: 1.52;
  color: var(--soft);
}

.flow-callout {
  padding: 12px 14px;
  border-left: 2px solid var(--gold);
  background: rgba(185, 150, 94, 0.05);
  color: var(--soft);
  font-size: 0.84rem;
  line-height: 1.52;
}

.flow-callout--spaced {
  margin-top: 18px;
}

/* Coverage */
.flow-coverage {
  margin-top: 22px;
}

.flow-coverage-label {
  margin: 0 0 12px;
  font-size: 0.62rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--gold);
}

.flow-coverage-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.flow-coverage-card {
  padding: 16px 18px;
  border: 1px solid rgba(213, 224, 216, 0.1);
  border-radius: 10px;
  background: rgba(8, 13, 16, 0.42);
}

.flow-coverage-card h3 {
  font-family: var(--flow-serif);
  font-size: 1.02rem;
  font-weight: 500;
  margin-bottom: 6px;
}

.flow-coverage-card p {
  margin: 0;
  font-size: 0.84rem;
  line-height: 1.52;
  color: var(--muted);
}

/* Meridian OS panel */
.flow-os-panel {
  display: grid;
  grid-template-columns: 1.05fr 0.95fr;
  gap: 22px;
  align-items: start;
  margin-bottom: 28px;
  padding: 22px;
  border: 1px solid rgba(213, 224, 216, 0.1);
  border-radius: 12px;
  background:
    radial-gradient(circle at 88% 12%, rgba(246, 229, 184, 0.06), transparent 40%),
    rgba(8, 13, 16, 0.45);
}

.flow-os-copy h3 {
  font-family: var(--flow-serif);
  font-size: 1.2rem;
  font-weight: 500;
  margin-bottom: 12px;
}

.flow-os-features {
  margin: 0 0 16px;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 10px;
}

.flow-os-features li {
  font-size: 0.86rem;
  line-height: 1.48;
  color: var(--soft);
  padding-left: 14px;
  border-left: 1px solid rgba(185, 150, 94, 0.28);
}

.flow-os-features strong {
  color: var(--bone);
  font-weight: 600;
}

.flow-os-shell {
  border: 1px solid rgba(234, 215, 170, 0.18);
  border-radius: 10px;
  overflow: hidden;
  background: rgba(5, 8, 10, 0.88);
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.35);
}

.flow-os-topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 12px 14px;
  border-bottom: 1px solid rgba(213, 224, 216, 0.08);
  font-size: 0.82rem;
}

.flow-os-topbar strong {
  color: var(--gold-bright);
  font-family: var(--flow-serif);
}

.flow-os-pill {
  font-size: 0.62rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--muted);
  padding: 4px 8px;
  border-radius: 999px;
  border: 1px solid rgba(213, 224, 216, 0.12);
}

.flow-os-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  padding: 10px 12px;
  border-bottom: 1px solid rgba(213, 224, 216, 0.06);
}

.flow-os-tabs span {
  font-size: 0.64rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--muted);
  padding: 5px 8px;
  border-radius: 6px;
}

.flow-os-tabs span.is-active {
  color: var(--gold-soft);
  background: rgba(185, 150, 94, 0.1);
  border: 1px solid rgba(185, 150, 94, 0.2);
}

.flow-os-metrics {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1px;
  background: rgba(213, 224, 216, 0.06);
  border-bottom: 1px solid rgba(213, 224, 216, 0.06);
}

.flow-os-metrics div {
  padding: 12px;
  background: rgba(7, 12, 15, 0.9);
  text-align: center;
}

.flow-os-metrics span {
  display: block;
  font-size: 0.6rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--muted);
  margin-bottom: 4px;
}

.flow-os-metrics strong {
  font-family: var(--flow-serif);
  font-size: 1.2rem;
  color: var(--gold-soft);
}

.flow-os-card {
  padding: 12px 14px;
  border-bottom: 1px solid rgba(213, 224, 216, 0.06);
}

.flow-os-card span {
  display: block;
  font-size: 0.6rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 4px;
}

.flow-os-card strong {
  display: block;
  font-size: 0.88rem;
  color: var(--bone);
  margin-bottom: 4px;
}

.flow-os-card em {
  display: block;
  font-style: normal;
  font-size: 0.74rem;
  color: var(--muted);
}

.flow-os-card--muted {
  background: rgba(8, 13, 16, 0.5);
}

/* Deal flow */
.flow-flow-block {
  margin-bottom: 18px;
  max-width: 62ch;
}

.flow-flow-block h3 {
  font-family: var(--flow-serif);
  font-size: 1.25rem;
  font-weight: 500;
  margin-bottom: 8px;
}

.flow-flow-block p {
  margin: 0 0 8px;
  color: var(--muted);
  font-size: 0.9rem;
  line-height: 1.58;
}

.flow-pipeline {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.flow-pipeline-tile {
  padding: 16px;
  border: 1px solid rgba(213, 224, 216, 0.1);
  border-radius: 10px;
  background: rgba(9, 16, 20, 0.48);
}

.flow-pipeline-sector {
  display: block;
  font-size: 0.6rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 6px;
}

.flow-pipeline-tile strong {
  display: block;
  font-family: var(--flow-serif);
  font-size: 1rem;
  font-weight: 500;
  margin-bottom: 4px;
  color: var(--bone);
}

.flow-pipeline-type {
  display: block;
  font-size: 0.78rem;
  color: var(--muted);
  line-height: 1.4;
  margin-bottom: 10px;
}

.flow-pipeline-foot {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  font-size: 0.72rem;
  color: var(--muted);
}

.flow-tile-status {
  font-size: 0.62rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  padding: 2px 7px;
  border-radius: 999px;
  border: 1px solid rgba(213, 224, 216, 0.12);
}

.flow-tile-status--sourced { color: var(--gold-soft); border-color: rgba(185, 150, 94, 0.25); }
.flow-tile-status--under-review { color: var(--soft); }
.flow-tile-status--in-dialogue { color: #78a8c7; border-color: rgba(120, 168, 199, 0.25); }
.flow-tile-status--mandate-fit { color: var(--gold-bright); border-color: rgba(246, 229, 184, 0.3); }

/* Hub index */
.flow-hub-page main {
  padding-top: 58px;
}

.flow-hub-main {
  padding: 0 0 var(--flow-section-y);
}

.flow-hub-hero {
  padding: clamp(40px, 6vw, 72px) 0 clamp(28px, 4vw, 40px);
  border-bottom: 1px solid rgba(213, 224, 216, 0.08);
  background:
    radial-gradient(circle at 20% 0%, rgba(185, 150, 94, 0.1), transparent 42%),
    rgba(5, 8, 10, 0.35);
}

.flow-hub-hero h1 {
  max-width: 18ch;
  margin-bottom: 14px;
}

.flow-hub-intro {
  max-width: 62ch;
}

.flow-hub-intro a {
  color: var(--gold-soft);
}

.flow-hub-intro a:hover {
  color: var(--gold-bright);
}

.flow-hub-hero-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  margin-top: 22px;
}

.flow-hub-stat {
  padding: 8px 12px;
  border: 1px solid rgba(213, 224, 216, 0.1);
  border-radius: 999px;
  font-size: 0.72rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--muted);
  background: rgba(8, 13, 16, 0.45);
}

.flow-hub-nav {
  position: sticky;
  top: 58px;
  z-index: 40;
  border-bottom: 1px solid rgba(213, 224, 216, 0.1);
  background: rgba(5, 8, 10, 0.92);
  backdrop-filter: blur(10px);
}

.flow-hub-nav-inner {
  display: flex;
  gap: 10px;
  padding: 12px 0;
  overflow-x: auto;
}

.flow-hub-nav-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 14px;
  border: 1px solid rgba(213, 224, 216, 0.1);
  border-radius: 10px;
  white-space: nowrap;
  background: rgba(8, 13, 16, 0.5);
  transition: border-color 160ms ease, background 160ms ease;
}

.flow-hub-nav-link img {
  opacity: 0.85;
}

.flow-hub-nav-link span {
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--bone);
}

.flow-hub-nav-link em {
  font-style: normal;
  font-size: 0.62rem;
  color: var(--gold-soft);
}

.flow-hub-nav-link:hover {
  border-color: rgba(185, 150, 94, 0.35);
  background: rgba(9, 16, 20, 0.7);
}

.flow-hub-body {
  padding-top: clamp(36px, 5vw, 56px);
}

.flow-hub-lead-type {
  margin-bottom: clamp(48px, 7vw, 72px);
}

.flow-hub-lead-type:last-child {
  margin-bottom: 0;
}

.flow-hub-lead-head {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 18px;
  align-items: start;
  margin-bottom: 28px;
  padding-bottom: 22px;
  border-bottom: 1px solid rgba(213, 224, 216, 0.1);
}

.flow-hub-lead-icon {
  display: grid;
  place-items: center;
  width: 52px;
  height: 52px;
  border: 1px solid rgba(234, 215, 170, 0.18);
  border-radius: 12px;
  background:
    linear-gradient(145deg, rgba(234, 215, 170, 0.08), transparent 55%),
    rgba(8, 13, 16, 0.55);
}

.flow-hub-lead-head h2 {
  margin-bottom: 8px;
}

.flow-hub-lead-head .flow-lead {
  margin: 0;
  max-width: 58ch;
}

.flow-hub-count {
  padding: 8px 12px;
  border-radius: 8px;
  border: 1px solid rgba(185, 150, 94, 0.22);
  font-size: 0.68rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--gold-bright);
  background: rgba(185, 150, 94, 0.08);
  white-space: nowrap;
}

.flow-hub-segments {
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.flow-hub-segment-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 16px;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(213, 224, 216, 0.06);
}

.flow-hub-segment-count {
  flex-shrink: 0;
  padding: 5px 10px;
  border-radius: 999px;
  border: 1px solid rgba(213, 224, 216, 0.1);
  font-size: 0.58rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--muted);
  background: rgba(5, 8, 10, 0.45);
  white-space: nowrap;
}

.flow-hub-segment-head h3 {
  font-family: var(--flow-serif);
  font-size: 1.15rem;
  font-weight: 500;
  color: var(--bone);
  margin-bottom: 4px;
}

.flow-hub-segment-head p {
  margin: 0;
  font-size: 0.84rem;
  line-height: 1.5;
  color: var(--muted);
}

.flow-hub-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.flow-hub-grid--single {
  grid-template-columns: minmax(0, 1fr);
  max-width: 420px;
}

.flow-hub-grid--triple {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.flow-hub-card {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  padding: 20px 18px 16px;
  border: 1px solid rgba(213, 224, 216, 0.1);
  border-radius: 12px;
  background:
    linear-gradient(160deg, rgba(234, 215, 170, 0.04), transparent 50%),
    rgba(8, 13, 16, 0.48);
  transition: border-color 160ms ease, transform 160ms ease, background 160ms ease, box-shadow 160ms ease;
}

.flow-hub-card:hover {
  border-color: rgba(185, 150, 94, 0.32);
  transform: translateY(-2px);
  background: rgba(9, 16, 20, 0.62);
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.22);
}

.flow-hub-card-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 8px;
}

.flow-hub-audience {
  font-size: 0.6rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--gold);
}

.flow-hub-type {
  padding: 3px 8px;
  border-radius: 999px;
  border: 1px solid rgba(213, 224, 216, 0.12);
  font-size: 0.58rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--muted);
  background: rgba(5, 8, 10, 0.5);
}

.flow-hub-card strong {
  display: block;
  font-family: var(--flow-serif);
  font-size: 1.15rem;
  font-weight: 500;
  margin-bottom: 8px;
  color: var(--bone);
  line-height: 1.25;
}

.flow-hub-card p {
  flex: 1;
  margin: 0 0 14px;
  font-size: 0.84rem;
  line-height: 1.52;
  color: var(--muted);
}

.flow-hub-card-cta {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 0.72rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--gold-soft);
}

.flow-hub-card:hover .flow-hub-card-cta {
  color: var(--gold-bright);
}

/* Steps */
.flow-steps {
  border: 1px solid rgba(213, 224, 216, 0.1);
  border-radius: 10px;
  overflow: hidden;
}

.flow-step {
  display: grid;
  grid-template-columns: 48px 1fr;
  gap: 14px;
  padding: 18px 20px;
  border-bottom: 1px solid rgba(213, 224, 216, 0.06);
  background: rgba(8, 13, 16, 0.38);
}

.flow-step:last-child {
  border-bottom: 0;
}

.flow-step-num {
  font-family: var(--flow-serif);
  font-size: 1.2rem;
  color: rgba(185, 150, 94, 0.48);
}

.flow-step h3 {
  font-family: var(--flow-serif);
  font-size: 1.05rem;
  font-weight: 500;
  margin-bottom: 4px;
}

.flow-step p {
  margin: 0;
  color: var(--muted);
  font-size: 0.86rem;
  line-height: 1.52;
}

/* Proof */
.flow-proof-links {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 24px;
}

.flow-proof-link {
  display: block;
  padding: 18px;
  border: 1px solid rgba(213, 224, 216, 0.1);
  border-radius: 10px;
  background: rgba(9, 16, 20, 0.48);
  transition: border-color 160ms ease, transform 160ms ease;
}

.flow-proof-link:hover {
  border-color: rgba(185, 150, 94, 0.3);
  transform: translateY(-1px);
}

.flow-proof-link span {
  display: block;
  font-size: 0.62rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 5px;
}

.flow-proof-link strong {
  display: block;
  font-family: var(--flow-serif);
  font-size: 1.08rem;
  font-weight: 500;
  margin-bottom: 5px;
  color: var(--bone);
}

.flow-proof-link em {
  display: block;
  font-style: normal;
  font-size: 0.8rem;
  color: var(--muted);
  line-height: 1.42;
}

.flow-dossier {
  display: grid;
  grid-template-columns: 1.05fr 0.95fr;
  gap: 22px;
  align-items: center;
  padding: 22px;
  border: 1px solid rgba(213, 224, 216, 0.1);
  border-radius: 12px;
  background: rgba(8, 13, 16, 0.42);
}

.flow-dossier-copy h3 {
  font-family: var(--flow-serif);
  font-size: 1.22rem;
  font-weight: 500;
  margin-bottom: 8px;
}

.flow-dossier-copy p {
  color: var(--muted);
  font-size: 0.88rem;
  line-height: 1.58;
  margin-bottom: 14px;
}

.flow-dossier-copy ul {
  margin: 0 0 16px;
  padding-left: 18px;
  color: var(--soft);
  font-size: 0.86rem;
  line-height: 1.6;
}

.flow-dossier-visual {
  border-radius: 8px;
  overflow: hidden;
  border: 1px solid rgba(213, 224, 216, 0.1);
}

.flow-dossier-visual img {
  width: 100%;
  display: block;
}

/* Reviews */
.flow-reviews {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.flow-review {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  padding: 22px 20px 18px;
  border: 1px solid rgba(234, 215, 170, 0.18);
  border-radius: 14px;
  background:
    linear-gradient(155deg, rgba(234, 215, 170, 0.07), transparent 58%),
    rgba(8, 13, 16, 0.62);
  box-shadow: 0 18px 48px rgba(0, 0, 0, 0.24);
}

.flow-review--pro {
  border-left: 3px solid rgba(185, 150, 94, 0.45);
}

.flow-review-header {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  margin-bottom: 16px;
}

.flow-review-badge {
  display: grid;
  place-items: center;
  position: relative;
  width: 56px;
  height: 56px;
  flex-shrink: 0;
  border-radius: 12px;
  border: 1px solid rgba(234, 215, 170, 0.22);
  background:
    linear-gradient(145deg, rgba(234, 215, 170, 0.1), transparent 55%),
    rgba(5, 8, 10, 0.88);
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.24);
}

.flow-review-badge-icon {
  width: 26px;
  height: 26px;
  opacity: 0.9;
  filter: brightness(1.15);
}

.flow-review-badge-mark {
  position: absolute;
  right: -4px;
  bottom: -4px;
  display: grid;
  place-items: center;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  border: 1px solid rgba(234, 215, 170, 0.35);
  font-family: var(--flow-serif);
  font-size: 0.58rem;
  color: var(--gold-bright);
  background: rgba(8, 13, 16, 0.95);
}

.flow-review-badge--principal {
  border-color: rgba(185, 150, 94, 0.35);
}

.flow-review-badge--cio,
.flow-review-badge--director {
  border-color: rgba(120, 168, 199, 0.35);
}

.flow-review-badge--advisor {
  border-color: rgba(201, 169, 110, 0.35);
}

.flow-review-badge--founder,
.flow-review-badge--operator {
  border-color: rgba(142, 184, 168, 0.35);
}

.flow-review-meta strong {
  display: block;
  color: var(--bone);
  font-family: var(--flow-serif);
  font-size: 1.05rem;
  font-weight: 500;
  line-height: 1.2;
}

.flow-review-meta > span {
  display: block;
  margin-top: 4px;
  color: var(--muted);
  font-size: 0.66rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  line-height: 1.35;
}

.flow-review-rating {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
}

.flow-review-stars {
  color: var(--gold-bright);
  font-size: 0.78rem;
  letter-spacing: 0.1em;
  line-height: 1;
}

.flow-review-tenure {
  font-size: 0.6rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--muted);
}

.flow-review-quote {
  flex: 1;
  margin: 0;
  padding: 16px 0 0;
  border: 0;
  border-top: 1px solid rgba(213, 224, 216, 0.1);
  position: relative;
}

.flow-review-quote::before {
  content: "“";
  position: absolute;
  top: 6px;
  left: 0;
  font-family: var(--flow-serif);
  font-size: 2.8rem;
  line-height: 1;
  color: rgba(185, 150, 94, 0.2);
  pointer-events: none;
}

.flow-review blockquote {
  flex: 1;
  margin: 0;
  padding: 0;
  border: 0;
}

.flow-review-quote p,
.flow-review blockquote p {
  margin: 0;
  padding: 4px 0 0 2px;
  font-family: var(--flow-serif);
  font-size: 1.04rem;
  line-height: 1.58;
  color: var(--ink);
}

.flow-review blockquote em {
  font-style: italic;
  color: var(--soft);
}

.flow-review-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-top: 16px;
  padding-top: 12px;
  border-top: 1px solid rgba(213, 224, 216, 0.06);
}

.flow-review-tag {
  display: inline-block;
  padding: 4px 10px;
  border-radius: 999px;
  border: 1px solid rgba(185, 150, 94, 0.22);
  font-size: 0.6rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--gold-soft);
  background: rgba(185, 150, 94, 0.06);
}

.flow-review-verified {
  font-size: 0.58rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(170, 183, 176, 0.75);
}

.flow-fineprint {
  margin-top: 16px;
  font-size: 0.76rem;
  color: var(--muted);
  line-height: 1.48;
  max-width: 56ch;
}

/* Engage */
.flow-offers {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 22px;
}

.flow-offer {
  padding: 22px;
  border: 1px solid rgba(213, 224, 216, 0.1);
  border-radius: 10px;
  background: rgba(9, 16, 20, 0.42);
  display: flex;
  flex-direction: column;
}

.flow-offer--featured {
  border-color: rgba(185, 150, 94, 0.28);
  background: linear-gradient(160deg, rgba(185, 150, 94, 0.07), rgba(9, 16, 20, 0.52));
}

.flow-offer-label {
  font-size: 0.62rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 5px;
}

.flow-offer h3 {
  font-family: var(--flow-serif);
  font-size: 1.28rem;
  font-weight: 500;
  margin-bottom: 4px;
}

.flow-offer-sub {
  display: block;
  font-size: 0.8rem;
  color: var(--muted);
  margin-bottom: 12px;
}

.flow-offer ul {
  margin: 0 0 16px;
  padding-left: 18px;
  flex: 1;
  color: var(--soft);
  font-size: 0.84rem;
  line-height: 1.55;
}

.flow-inquiry {
  display: grid;
  grid-template-columns: 1.1fr 0.9fr;
  gap: 22px;
  padding: 22px;
  border: 1px solid rgba(213, 224, 216, 0.1);
  border-radius: 10px;
  background: rgba(8, 13, 16, 0.42);
}

.flow-inquiry h3 {
  font-family: var(--flow-serif);
  font-size: 1.22rem;
  font-weight: 500;
  margin-bottom: 8px;
}

.flow-inquiry > div > p {
  color: var(--muted);
  font-size: 0.88rem;
  line-height: 1.58;
  margin-bottom: 14px;
}

.flow-checklist {
  display: grid;
  gap: 10px;
}

.flow-check-item {
  display: grid;
  grid-template-columns: 28px 1fr;
  gap: 8px;
}

.flow-check-num {
  font-size: 0.68rem;
  letter-spacing: 0.08em;
  color: var(--gold);
  padding-top: 2px;
}

.flow-check-item strong {
  display: block;
  font-size: 0.7rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--soft);
  margin-bottom: 2px;
}

.flow-check-item p {
  margin: 0;
  font-size: 0.82rem;
  color: var(--muted);
  line-height: 1.42;
}

.flow-legal {
  margin-top: 18px;
  font-size: 0.74rem;
  color: var(--muted);
  line-height: 1.52;
}

.flow-legal a {
  color: var(--gold-soft);
}

.flow-legal a:hover {
  color: var(--gold-bright);
}

/* Footer */
.flow-footer {
  padding: 32px 0 26px;
  border-top: 1px solid rgba(213, 224, 216, 0.06);
}

.flow-footer-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 14px;
  font-size: 0.78rem;
  color: var(--muted);
}

.flow-footer-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}

.flow-footer-nav a:hover {
  color: var(--gold-soft);
}

/* Responsive */
@media (max-width: 960px) {
  .flow-rail,
  .flow-rail--5 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .flow-strip,
  .flow-pillars,
  .flow-split-note,
  .flow-coverage-grid,
  .flow-os-panel,
  .flow-pipeline,
  .flow-proof-links,
  .flow-dossier,
  .flow-hub-lead-head {
    grid-template-columns: 1fr;
  }

  .flow-hub-count {
    justify-self: start;
  }

  .flow-reviews,
  .flow-offers,
  .flow-inquiry,
  .flow-hub-grid,
  .flow-hub-grid--triple {
    grid-template-columns: 1fr;
  }

  .flow-hub-grid--single {
    max-width: none;
  }

  .flow-hero-media {
    min-height: 52vh;
  }
}

@media (max-width: 640px) {
  body.for-page main {
    padding-top: 52px;
  }

  .flow-rail-wrap {
    top: 52px;
  }

  body.for-page .site-header {
    min-height: 52px;
  }

  body.for-page .brand span:last-child {
    display: none;
  }

  body.for-page .header-cta {
    font-size: 0.6rem;
    padding: 7px 10px;
  }

  .flow-rail a {
    font-size: 0.62rem;
    padding: 7px 9px;
  }

  .flow-hero-media {
    min-height: auto;
    padding-top: 24px;
    padding-bottom: 24px;
  }

  .flow-hero-lead {
    font-size: 0.92rem;
  }
}

/* ── Enhanced /for/ layout ── */

.flow-hero-layout {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(240px, 0.75fr);
  gap: 22px;
  align-items: end;
  width: 100%;
  max-width: var(--flow-max);
  margin: 0 auto;
  padding: 0 var(--flow-gutter);
}

.flow-hero-aside {
  border: 1px solid rgba(234, 215, 170, 0.16);
  border-radius: 12px;
  overflow: hidden;
  background: rgba(5, 8, 10, 0.55);
  box-shadow: 0 28px 70px rgba(0, 0, 0, 0.38);
}

.flow-hero-aside img {
  width: 100%;
  height: 220px;
  object-fit: cover;
}

.flow-hero-aside-cap {
  padding: 12px 14px;
  display: flex;
  align-items: center;
  gap: 10px;
  border-top: 1px solid rgba(213, 224, 216, 0.08);
}

.flow-hero-aside-cap img {
  width: 28px;
  height: 28px;
  flex-shrink: 0;
  object-fit: contain;
  filter: brightness(1.1);
}

.flow-hero-aside-cap span {
  font-size: 0.72rem;
  line-height: 1.4;
  color: var(--muted);
}

.flow-value-icons {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 28px;
}

.flow-value-icon {
  padding: 14px 12px;
  border: 1px solid rgba(213, 224, 216, 0.1);
  border-radius: 10px;
  background: rgba(8, 13, 16, 0.42);
  text-align: center;
}

.flow-value-icon img {
  width: 28px;
  height: 28px;
  margin: 0 auto 8px;
  opacity: 0.92;
}

.flow-value-icon strong {
  display: block;
  font-size: 0.68rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--gold-soft);
  margin-bottom: 4px;
}

.flow-value-icon span {
  display: block;
  font-size: 0.76rem;
  line-height: 1.4;
  color: var(--muted);
}

.flow-visual-band {
  display: grid;
  grid-template-columns: 1.1fr 0.9fr;
  gap: 20px;
  align-items: center;
  margin: 28px 0;
  padding: 20px;
  border: 1px solid rgba(213, 224, 216, 0.1);
  border-radius: 12px;
  background:
    linear-gradient(135deg, rgba(185, 150, 94, 0.05), transparent 55%),
    rgba(8, 13, 16, 0.45);
}

.flow-visual-band img {
  width: 100%;
  border-radius: 10px;
  border: 1px solid rgba(213, 224, 216, 0.1);
}

.flow-visual-band h3 {
  font-family: var(--flow-serif);
  font-size: 1.2rem;
  font-weight: 500;
  margin-bottom: 8px;
}

.flow-visual-band p {
  margin: 0;
  font-size: 0.88rem;
  line-height: 1.58;
  color: var(--muted);
}

.flow-rail--6 {
  grid-template-columns: repeat(6, minmax(0, 1fr));
}

.flow-mandates-intro {
  max-width: 62ch;
  margin-bottom: 20px;
}

.flow-mandates-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.flow-mandate-card {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  padding: 18px;
  border: 1px solid rgba(234, 215, 170, 0.16);
  border-radius: 12px;
  background:
    linear-gradient(160deg, rgba(234, 215, 170, 0.06), transparent 50%),
    rgba(8, 13, 16, 0.55);
}

.flow-mandate-card .flow-mandate-sector {
  font-size: 0.6rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 6px;
}

.flow-mandate-card strong {
  display: block;
  font-family: var(--flow-serif);
  font-size: 1.05rem;
  font-weight: 500;
  color: var(--bone);
  margin-bottom: 6px;
  line-height: 1.25;
}

.flow-mandate-card .flow-mandate-need {
  flex: 1;
  margin: 0 0 12px;
  font-size: 0.84rem;
  line-height: 1.5;
  color: var(--soft);
}

.flow-mandate-foot {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 6px;
  padding-top: 10px;
  border-top: 1px solid rgba(213, 224, 216, 0.08);
  font-size: 0.7rem;
  color: var(--muted);
}

.flow-mandate-raise {
  color: var(--gold-soft);
  font-size: 0.66rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.flow-seller-path {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 20px;
}

.flow-seller-step {
  padding: 18px;
  border: 1px solid rgba(213, 224, 216, 0.1);
  border-radius: 10px;
  background: rgba(9, 16, 20, 0.48);
}

.flow-seller-step img {
  width: 32px;
  height: 32px;
  margin-bottom: 10px;
}

.flow-seller-step h3 {
  font-family: var(--flow-serif);
  font-size: 1.05rem;
  font-weight: 500;
  margin-bottom: 6px;
}

.flow-seller-step p {
  margin: 0;
  font-size: 0.84rem;
  line-height: 1.52;
  color: var(--muted);
}

.flow-hub-download {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 16px;
  padding: 10px 14px;
  border: 1px solid rgba(185, 150, 94, 0.28);
  border-radius: 8px;
  color: var(--gold-bright);
  font-size: 0.84rem;
  background: rgba(185, 150, 94, 0.08);
}

.flow-hub-download:hover {
  border-color: rgba(246, 229, 184, 0.5);
  background: rgba(185, 150, 94, 0.14);
}



.flow-inquiry--fit {
  margin-top: 20px;
  padding: 18px;
  border: 1px solid rgba(213, 224, 216, 0.1);
  border-radius: 10px;
  background: rgba(8, 13, 16, 0.42);
}

.flow-inquiry--fit h3 {
  font-family: var(--flow-serif);
  font-size: 1.1rem;
  font-weight: 500;
  margin-bottom: 12px;
}

@media (max-width: 960px) {
  .flow-hero-layout,
  .flow-value-icons,
  .flow-visual-band,
  .flow-mandates-grid,
  .flow-seller-path,
  .flow-rail--6 {
    grid-template-columns: 1fr;
  }

  .flow-hero-aside {
    order: -1;
  }
}

@media (max-width: 640px) {
  .flow-value-icons {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* ── Pain-point problems grid (v10) ── */

.go-problems {
  padding: clamp(36px, 5vw, 56px) 0;
  border-bottom: 1px solid rgba(213, 224, 216, 0.08);
  background:
    linear-gradient(180deg, rgba(185, 150, 94, 0.04), transparent 70%),
    rgba(5, 8, 10, 0.35);
}

.go-problems h2 {
  max-width: 28ch;
  margin-bottom: 20px;
}

.go-problems-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.go-problems-card {
  padding: 18px;
  border: 1px solid rgba(234, 215, 170, 0.12);
  border-radius: 10px;
  background: rgba(8, 13, 16, 0.48);
}

.go-problems-card h3 {
  font-family: var(--flow-serif);
  font-size: 1rem;
  font-weight: 500;
  color: var(--bone);
  margin-bottom: 8px;
  line-height: 1.3;
}

.go-problems-card p {
  margin: 0;
  font-size: 0.84rem;
  line-height: 1.55;
  color: var(--muted);
}

.go-hero-thumb {
  align-self: end;
}

@media (max-width: 960px) {
  .go-problems-grid {
    grid-template-columns: 1fr;
  }
}

/* ── Capital formation (seller) pages ── */

.for-page--cf {
  --flow-section-y: clamp(44px, 5.5vw, 72px);
}

.for-page--cf .flow-hero .eyebrow {
  color: var(--gold-soft);
}

.for-page--cf .flow-hero h1 {
  max-width: 22ch;
  font-size: clamp(1.95rem, 3.6vw, 2.75rem);
  margin-bottom: 14px;
}

.for-page--cf .flow-hero-lead {
  max-width: 54ch;
  font-size: 0.94rem;
  line-height: 1.58;
  color: var(--soft);
}

.cf-geo {
  display: inline-block;
  margin-bottom: 12px;
  padding: 5px 11px;
  border: 1px solid rgba(185, 150, 94, 0.22);
  border-radius: 999px;
  font-size: 0.62rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--gold-soft);
  background: rgba(185, 150, 94, 0.06);
}

.cf-lead-tight {
  max-width: 58ch;
  font-size: 0.9rem;
  line-height: 1.55;
}

.cf-callout-tight {
  font-size: 0.84rem;
  margin-top: 16px;
}

.for-page--cf .go-problems {
  padding: clamp(28px, 4vw, 44px) 0;
}

.for-page--cf .go-problems h2 {
  max-width: 36ch;
  font-size: clamp(1.35rem, 2.2vw, 1.65rem);
  margin-bottom: 16px;
}

.for-page--cf .go-problems-card {
  padding: 16px;
}

.for-page--cf .go-problems-card h3 {
  font-size: 0.92rem;
  margin-bottom: 6px;
}

.for-page--cf .go-problems-card p {
  font-size: 0.8rem;
  line-height: 1.48;
}

.for-page--cf .flow-chapter h2 {
  max-width: 28ch;
}

.cf-proof-row {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  flex-wrap: wrap;
}

.cf-proof-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.cf-workstreams {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 12px;
}

.cf-workstream {
  padding: 16px 14px;
  border: 1px solid rgba(213, 224, 216, 0.1);
  border-radius: 10px;
  background: rgba(8, 13, 16, 0.48);
}

.cf-workstream-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 12px;
}

.cf-workstream-head img {
  opacity: 0.9;
}

.cf-workstream-num {
  font-size: 0.62rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--gold);
}

.cf-workstream h3 {
  font-family: var(--flow-serif);
  font-size: 0.95rem;
  font-weight: 500;
  margin-bottom: 6px;
  color: var(--bone);
}

.cf-workstream p {
  margin: 0;
  font-size: 0.78rem;
  line-height: 1.48;
  color: var(--muted);
}

.cf-investor-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.cf-investor-card {
  padding: 18px;
  border: 1px solid rgba(234, 215, 170, 0.14);
  border-radius: 12px;
  background:
    linear-gradient(160deg, rgba(234, 215, 170, 0.05), transparent 50%),
    rgba(8, 13, 16, 0.52);
}

.cf-investor-card h3 {
  font-family: var(--flow-serif);
  font-size: 1rem;
  font-weight: 500;
  color: var(--bone);
  margin-bottom: 8px;
}

.cf-investor-card p {
  margin: 0;
  font-size: 0.84rem;
  line-height: 1.52;
  color: var(--muted);
}

.cf-phases {
  display: flex;
  flex-direction: column;
  gap: 0;
  border: 1px solid rgba(213, 224, 216, 0.1);
  border-radius: 12px;
  overflow: hidden;
}

.cf-phase {
  display: grid;
  grid-template-columns: 48px 1fr;
  gap: 14px;
  padding: 18px 20px;
  border-bottom: 1px solid rgba(213, 224, 216, 0.06);
  background: rgba(8, 13, 16, 0.38);
}

.cf-phase:last-child {
  border-bottom: 0;
}

.cf-phase-num {
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  border: 1px solid rgba(185, 150, 94, 0.28);
  font-size: 0.82rem;
  font-weight: 600;
  color: var(--gold-bright);
  background: rgba(185, 150, 94, 0.08);
}

.cf-phase h3 {
  font-family: var(--flow-serif);
  font-size: 1.02rem;
  font-weight: 500;
  margin-bottom: 6px;
  color: var(--bone);
}

.cf-phase p {
  margin: 0;
  font-size: 0.86rem;
  line-height: 1.55;
  color: var(--muted);
}

.cf-dataroom-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.cf-dataroom-card {
  padding: 16px;
  border: 1px solid rgba(213, 224, 216, 0.1);
  border-radius: 10px;
  background: rgba(8, 13, 16, 0.45);
}

.cf-dataroom-card h3 {
  font-size: 0.72rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--gold-soft);
  margin-bottom: 6px;
}

.cf-dataroom-card p {
  margin: 0;
  font-size: 0.82rem;
  line-height: 1.5;
  color: var(--muted);
}

.cf-fit-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin: 24px 0;
}

.cf-fit-panel {
  padding: 18px;
  border-radius: 12px;
  border: 1px solid rgba(213, 224, 216, 0.1);
}

.cf-fit-panel--yes {
  background: rgba(142, 184, 168, 0.06);
  border-color: rgba(142, 184, 168, 0.18);
}

.cf-fit-panel--no {
  background: rgba(8, 13, 16, 0.42);
}

.cf-fit-panel h3 {
  font-family: var(--flow-serif);
  font-size: 1.05rem;
  font-weight: 500;
  margin-bottom: 10px;
  color: var(--bone);
}

.cf-fit-panel ul {
  margin: 0;
  padding-left: 18px;
}

.cf-fit-panel li {
  font-size: 0.84rem;
  line-height: 1.5;
  color: var(--muted);
  margin-bottom: 6px;
}

.cf-terms {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 8px;
}

.cf-term-card {
  padding: 20px 18px;
  border: 1px solid rgba(213, 224, 216, 0.1);
  border-radius: 12px;
  background: rgba(8, 13, 16, 0.48);
}

.cf-term-card--featured {
  border-color: rgba(185, 150, 94, 0.32);
  background:
    linear-gradient(160deg, rgba(234, 215, 170, 0.08), transparent 55%),
    rgba(8, 13, 16, 0.55);
}

.cf-term-label {
  display: block;
  font-size: 0.62rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 6px;
}

.cf-term-value {
  display: block;
  font-family: var(--flow-serif);
  font-size: 1.6rem;
  font-weight: 500;
  color: var(--bone);
  margin-bottom: 8px;
  line-height: 1.1;
}

.cf-term-card p {
  margin: 0;
  font-size: 0.82rem;
  line-height: 1.5;
  color: var(--muted);
}

@media (max-width: 1100px) {
  .cf-workstreams {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 960px) {
  .cf-workstreams,
  .cf-investor-grid,
  .cf-dataroom-grid,
  .cf-fit-grid,
  .cf-terms {
    grid-template-columns: 1fr;
  }

  .cf-proof-row {
    flex-direction: column;
    align-items: flex-start;
  }
}

/* ── Capital formation minimal layout (v16) ── */

.flow-rail--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

body.for-page .button.ghost {
  background: transparent;
  color: var(--gold-soft);
  border-color: rgba(185, 150, 94, 0.22);
}

body.for-page .button.ghost:hover {
  transform: translateY(-1px);
  border-color: rgba(185, 150, 94, 0.42);
  background: rgba(185, 150, 94, 0.05);
}

.for-page--cf-min {
  --flow-section-y: clamp(36px, 4.5vw, 56px);
}

.for-page--cf-min .cf-hero-min .flow-hero-media {
  min-height: clamp(320px, 42vh, 420px);
}

.for-page--cf-min .cf-hero-min .flow-hero-copy {
  padding-bottom: clamp(32px, 5vw, 48px);
}

.for-page--cf-min .flow-hero-actions {
  flex-wrap: wrap;
  gap: 10px;
}

.cf-workstreams--compact {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin-bottom: 20px;
}

.cf-workstream--compact {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 12px;
}

.cf-workstream--compact img {
  flex-shrink: 0;
  opacity: 0.85;
  margin-top: 2px;
}

.cf-workstream--compact h3 {
  font-size: 0.86rem;
  margin: 2px 0 0;
}

.cf-workstream--compact .cf-workstream-num {
  display: block;
  margin-bottom: 2px;
}

.cf-offer-meta {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 20px 32px;
  align-items: start;
  padding-top: 4px;
  border-top: 1px solid rgba(213, 224, 216, 0.08);
}

.cf-phases-compact {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 8px 16px;
}

.cf-phases-compact li {
  font-size: 0.78rem;
  color: var(--muted);
  letter-spacing: 0.02em;
}

.cf-phases-compact li span {
  display: inline-grid;
  place-items: center;
  width: 20px;
  height: 20px;
  margin-right: 4px;
  border-radius: 50%;
  border: 1px solid rgba(185, 150, 94, 0.24);
  font-size: 0.68rem;
  color: var(--gold);
  vertical-align: middle;
}

.cf-offer-links {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin: 0;
  font-size: 0.84rem;
  text-align: right;
}

.cf-terms--compact .cf-term-card {
  padding: 16px 14px;
}

.cf-terms--compact .cf-term-card p {
  display: none;
}

.cf-terms--compact .cf-term-value {
  font-size: 1.35rem;
  margin-bottom: 0;
}

.cf-fit-block {
  margin: 20px 0 24px;
}

.cf-fit-heading {
  font-family: var(--flow-serif);
  font-size: 0.95rem;
  font-weight: 500;
  color: var(--bone);
  margin-bottom: 10px;
}

.cf-fit-compact {
  margin: 0;
  padding-left: 18px;
}

.cf-fit-compact li {
  font-size: 0.84rem;
  line-height: 1.5;
  color: var(--muted);
  margin-bottom: 6px;
}

.cf-engage-cta {
  margin-bottom: 20px;
}

.cf-engage-note {
  margin: 10px 0 0;
  font-size: 0.82rem;
  color: var(--muted);
  max-width: 48ch;
}

@media (max-width: 1100px) {
  .cf-workstreams--compact {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 960px) {
  .flow-rail--3 {
    grid-template-columns: 1fr;
  }

  .cf-offer-meta {
    grid-template-columns: 1fr;
  }

  .cf-offer-links {
    text-align: left;
  }

  .cf-workstreams--compact {
    grid-template-columns: 1fr;
  }
}

/* ── Premium editorial layout (v17) ── */

.for-page--premium {
  --flow-section-y: clamp(40px, 5vw, 64px);
}

.for-page--premium body.for-page,
body.for-page.for-page--premium {
  background:
    radial-gradient(circle at 12% -8%, rgba(246, 229, 184, 0.06), transparent 28rem),
    var(--deep);
}

/* Text-first hero — no photography */
.desk-hero {
  padding: calc(58px + clamp(48px, 8vw, 88px)) 0 clamp(32px, 5vw, 48px);
  border-bottom: 1px solid rgba(213, 224, 216, 0.08);
}

.desk-hero-inner {
  max-width: 720px;
}

.desk-hero .eyebrow {
  margin: 0 0 14px;
  color: var(--gold-soft);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.desk-hero h1 {
  font-family: var(--flow-serif);
  font-size: clamp(2rem, 4vw, 2.85rem);
  line-height: 1.1;
  font-weight: 500;
  letter-spacing: -0.02em;
  margin-bottom: 16px;
  max-width: 22ch;
}

.desk-hero-lead {
  color: var(--soft);
  font-size: 0.96rem;
  line-height: 1.62;
  margin-bottom: 20px;
  max-width: 56ch;
}

.desk-context-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 14px;
  padding: 5px 12px;
  border: 1px solid rgba(185, 150, 94, 0.2);
  border-radius: 999px;
  font-size: 0.62rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--gold-soft);
  background: rgba(185, 150, 94, 0.05);
}

.desk-context-chip img {
  opacity: 0.85;
}

.desk-friction {
  margin: 0 0 22px;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 6px;
  max-width: 52ch;
}

.desk-friction li {
  font-size: 0.82rem;
  line-height: 1.45;
  color: var(--muted);
  padding-left: 14px;
  border-left: 1px solid rgba(185, 150, 94, 0.28);
}

.desk-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 28px;
}

.desk-strip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  border: 1px solid rgba(213, 224, 216, 0.1);
  border-radius: 8px;
  overflow: hidden;
  background: rgba(213, 224, 216, 0.08);
}

.desk-strip-item {
  padding: 14px 16px;
  background: rgba(7, 12, 15, 0.92);
}

.desk-strip-item span {
  display: block;
  font-size: 0.58rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 4px;
}

.desk-strip-item p {
  margin: 0;
  font-size: 0.8rem;
  line-height: 1.45;
  color: var(--ink);
}

.desk-hero--cf h1 {
  max-width: 26ch;
}

.desk-hero--cf .cf-geo {
  margin-bottom: 14px;
}

.desk-hero--hub h1 {
  max-width: 28ch;
}

.desk-lead {
  max-width: 58ch;
  font-size: 0.92rem;
  line-height: 1.58;
}

/* Desk section */
.desk-pillars {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin: 24px 0;
  border: 1px solid rgba(213, 224, 216, 0.1);
  border-radius: 10px;
  overflow: hidden;
}

.desk-pillar {
  display: grid;
  grid-template-columns: 44px 1fr;
  gap: 14px;
  padding: 18px 20px;
  border-bottom: 1px solid rgba(213, 224, 216, 0.06);
  background: rgba(8, 13, 16, 0.35);
}

.desk-pillar:last-child {
  border-bottom: 0;
}

.desk-pillar-num {
  font-family: var(--flow-serif);
  font-size: 0.9rem;
  color: var(--gold);
  padding-top: 2px;
}

.desk-pillar h3 {
  font-family: var(--flow-serif);
  font-size: 1rem;
  font-weight: 500;
  color: var(--bone);
  margin-bottom: 4px;
}

.desk-pillar p {
  margin: 0;
  font-size: 0.84rem;
  line-height: 1.52;
  color: var(--muted);
}

.desk-spec {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin: 0 0 24px;
  padding: 0;
}

.desk-spec div {
  padding: 14px 0;
  border-top: 1px solid rgba(213, 224, 216, 0.08);
}

.desk-spec dt {
  font-size: 0.58rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 6px;
}

.desk-spec dd {
  margin: 0;
  font-size: 0.82rem;
  line-height: 1.5;
  color: var(--muted);
}

.desk-proof-row {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 20px;
}

.desk-proof-link {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 14px 16px;
  border: 1px solid rgba(213, 224, 216, 0.1);
  border-radius: 8px;
  background: rgba(8, 13, 16, 0.4);
  transition: border-color 160ms ease, background 160ms ease;
}

.desk-proof-link:hover {
  border-color: rgba(185, 150, 94, 0.28);
  background: rgba(185, 150, 94, 0.04);
}

.desk-proof-link span {
  font-size: 0.58rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--gold);
}

.desk-proof-link strong {
  font-family: var(--flow-serif);
  font-size: 0.92rem;
  font-weight: 500;
  color: var(--bone);
}

.desk-boundary {
  margin: 0;
  font-size: 0.78rem;
  line-height: 1.5;
  color: var(--muted);
  max-width: 62ch;
}

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

/* Engage */
.desk-steps {
  margin: 20px 0 28px;
  padding: 0;
  list-style: none;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.desk-steps li {
  display: grid;
  grid-template-columns: 28px 1fr;
  gap: 10px;
  padding: 14px 16px;
  border: 1px solid rgba(213, 224, 216, 0.1);
  border-radius: 8px;
  background: rgba(8, 13, 16, 0.38);
}

.desk-steps li span {
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  border: 1px solid rgba(185, 150, 94, 0.24);
  font-size: 0.72rem;
  color: var(--gold);
}

.desk-steps li strong {
  display: block;
  font-size: 0.86rem;
  color: var(--bone);
  margin-bottom: 3px;
}

.desk-steps li p {
  margin: 0;
  font-size: 0.78rem;
  line-height: 1.45;
  color: var(--muted);
}

.desk-offers {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 28px;
}

.desk-offer {
  padding: 20px 18px;
  border: 1px solid rgba(213, 224, 216, 0.1);
  border-radius: 10px;
  background: rgba(8, 13, 16, 0.42);
}

.desk-offer--featured {
  border-color: rgba(185, 150, 94, 0.3);
  background:
    linear-gradient(160deg, rgba(234, 215, 170, 0.06), transparent 55%),
    rgba(8, 13, 16, 0.5);
}

.desk-offer-label {
  display: block;
  font-size: 0.58rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 6px;
}

.desk-offer h3 {
  font-family: var(--flow-serif);
  font-size: 1.1rem;
  font-weight: 500;
  color: var(--bone);
  margin-bottom: 8px;
}

.desk-offer p {
  margin: 0 0 12px;
  font-size: 0.82rem;
  line-height: 1.5;
  color: var(--muted);
}

.desk-quote {
  margin: 0 0 28px;
  padding: 20px 22px;
  border-left: 2px solid rgba(185, 150, 94, 0.35);
  background: rgba(8, 13, 16, 0.35);
  border-radius: 0 8px 8px 0;
}

.desk-quote p {
  margin: 0 0 12px;
  font-family: var(--flow-serif);
  font-size: 1.02rem;
  line-height: 1.55;
  color: var(--soft);
  font-style: italic;
}

.desk-quote footer {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 12px;
  font-size: 0.72rem;
  color: var(--muted);
}

.desk-quote cite {
  font-style: normal;
  font-weight: 600;
  color: var(--bone);
}

.desk-quote em {
  font-style: normal;
  color: var(--gold-soft);
}

.desk-engage-cta {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  padding: 24px 0;
  border-top: 1px solid rgba(213, 224, 216, 0.08);
  margin-bottom: 16px;
}

.desk-engage-cta h3 {
  font-family: var(--flow-serif);
  font-size: 1.15rem;
  font-weight: 500;
  margin-bottom: 8px;
}

.desk-engage-cta > div > p {
  font-size: 0.86rem;
  line-height: 1.55;
  color: var(--muted);
  margin-bottom: 14px;
  max-width: 42ch;
}

/* Hub premium */
.flow-hub-page--premium .flow-hub-nav {
  border-bottom: 1px solid rgba(213, 224, 216, 0.08);
  background: rgba(5, 8, 10, 0.92);
}

.flow-hub-page--premium .flow-hub-nav-link {
  border: 1px solid rgba(213, 224, 216, 0.1);
  border-radius: 8px;
  padding: 10px 16px;
}

.flow-hub-page--premium .flow-hub-card {
  border-radius: 8px;
  background: rgba(8, 13, 16, 0.45);
}

.flow-hub-page--premium .flow-hub-card:hover {
  border-color: rgba(185, 150, 94, 0.28);
  background: rgba(185, 150, 94, 0.04);
}

.flow-hub-page--premium .flow-hub-lead-head {
  border-bottom: 1px solid rgba(213, 224, 216, 0.08);
  padding-bottom: 20px;
}

.flow-hub-lead-copy {
  min-width: 0;
}

.flow-hub-lead-type--alt {
  margin-top: 8px;
  padding: clamp(36px, 5vw, 52px) 0;
  border-radius: 14px;
  background:
    linear-gradient(180deg, rgba(185, 150, 94, 0.03), transparent 120px),
    rgba(8, 13, 16, 0.28);
  border: 1px solid rgba(213, 224, 216, 0.06);
}

.flow-hub-toc {
  border-bottom: 1px solid rgba(213, 224, 216, 0.06);
  background: rgba(5, 8, 10, 0.55);
}

.flow-hub-toc-inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 10px;
  padding: 14px 0 16px;
}

.flow-hub-toc-label {
  font-size: 0.58rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--gold);
  margin-right: 4px;
}

.flow-hub-toc-divider {
  width: 1px;
  height: 18px;
  background: rgba(213, 224, 216, 0.14);
  margin: 0 4px;
  align-self: center;
}

.flow-hub-toc-link {
  padding: 6px 11px;
  border: 1px solid rgba(213, 224, 216, 0.08);
  border-radius: 999px;
  font-size: 0.68rem;
  letter-spacing: 0.04em;
  color: var(--muted);
  background: rgba(8, 13, 16, 0.35);
  transition: border-color 160ms ease, color 160ms ease, background 160ms ease;
}

.flow-hub-toc-link:hover {
  border-color: rgba(185, 150, 94, 0.28);
  color: var(--gold-soft);
  background: rgba(185, 150, 94, 0.05);
}

.flow-hub-nav-link.is-active {
  border-color: rgba(185, 150, 94, 0.38);
  background: rgba(185, 150, 94, 0.08);
}

.desk-hero-layout--hub {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(220px, 0.68fr);
  gap: clamp(24px, 4vw, 40px);
  align-items: end;
  width: 100%;
  max-width: var(--flow-max);
  margin: 0 auto;
  padding: 0 var(--flow-gutter);
}

.desk-hero--hub.desk-hero--visual {
  padding-bottom: clamp(36px, 5vw, 52px);
}

.desk-hero--hub.desk-hero--visual .desk-hero-inner {
  max-width: none;
}

.desk-hero--hub h1 {
  max-width: 20ch;
}

.flow-hero-aside--hub img {
  height: clamp(200px, 26vw, 260px);
  object-fit: cover;
  object-position: center 40%;
}

.for-page--desk .flow-chapter h2 {
  max-width: 24ch;
}

@media (max-width: 960px) {
  .desk-strip,
  .desk-spec,
  .desk-proof-row,
  .desk-steps,
  .desk-offers,
  .desk-engage-cta,
  .desk-mandates-grid {
    grid-template-columns: 1fr;
  }

  .desk-hero h1 {
    max-width: none;
  }
}

/* ── Problem → solution → context funnel (v18) ── */

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

.desk-hero-hook {
  margin: 0 0 14px;
  font-family: var(--flow-serif);
  font-size: clamp(1.05rem, 2vw, 1.25rem);
  line-height: 1.45;
  font-style: italic;
  color: var(--gold-soft);
  max-width: 48ch;
}

.funnel-problems {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-top: 20px;
}

.funnel-problem-card {
  padding: 18px 16px;
  border: 1px solid rgba(213, 224, 216, 0.1);
  border-radius: 8px;
  background: rgba(8, 13, 16, 0.42);
  border-top: 2px solid rgba(185, 150, 94, 0.22);
}

.funnel-problem-card h3 {
  font-family: var(--flow-serif);
  font-size: 0.95rem;
  font-weight: 500;
  color: var(--bone);
  margin-bottom: 8px;
  line-height: 1.3;
}

.funnel-problem-card p {
  margin: 0;
  font-size: 0.82rem;
  line-height: 1.52;
  color: var(--muted);
}

.funnel-pairs {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin: 20px 0 24px;
}

.funnel-pair {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  gap: 14px;
  align-items: stretch;
}

.funnel-pair-problem,
.funnel-pair-solution {
  padding: 16px 18px;
  border-radius: 8px;
  border: 1px solid rgba(213, 224, 216, 0.1);
}

.funnel-pair-problem {
  background: rgba(8, 13, 16, 0.48);
  border-top: 2px solid rgba(185, 150, 94, 0.18);
}

.funnel-pair-solution {
  background: rgba(142, 184, 168, 0.04);
  border-color: rgba(142, 184, 168, 0.16);
  border-top: 2px solid rgba(142, 184, 168, 0.28);
}

.funnel-pair-label {
  display: block;
  font-size: 0.56rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 6px;
}

.funnel-pair-solution .funnel-pair-label {
  color: rgba(142, 184, 168, 0.9);
}

.funnel-pair h3 {
  font-family: var(--flow-serif);
  font-size: 0.94rem;
  font-weight: 500;
  color: var(--bone);
  margin-bottom: 6px;
  line-height: 1.3;
}

.funnel-pair p {
  margin: 0;
  font-size: 0.8rem;
  line-height: 1.48;
  color: var(--muted);
}

.funnel-pair-arrow {
  display: grid;
  place-items: center;
  font-family: var(--flow-serif);
  font-size: 1.1rem;
  color: var(--gold-soft);
  opacity: 0.7;
}

.for-page--funnel .flow-chapter h2 {
  max-width: 32ch;
}

.for-page--funnel .desk-hero h1 {
  max-width: 38ch;
  font-size: clamp(1.85rem, 3.4vw, 2.55rem);
  line-height: 1.14;
}

@media (max-width: 960px) {
  .flow-rail--4 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .funnel-problems {
    grid-template-columns: 1fr;
  }

  .funnel-pair {
    grid-template-columns: 1fr;
  }

  .funnel-pair-arrow {
    transform: rotate(90deg);
    padding: 4px 0;
  }
}

/* ── Funnel refinement v20 — spacing, resources, Bessemer cadence ── */

.for-page--funnel {
  --flow-section-y: clamp(64px, 8vw, 104px);
  --flow-max: 920px;
}

.for-page--funnel .flow-section-inner {
  max-width: 680px;
}

.for-page--funnel .desk-hero {
  padding: calc(58px + clamp(64px, 10vw, 112px)) 0 clamp(48px, 7vw, 72px);
}

.for-page--funnel .desk-hero-inner {
  max-width: 640px;
}

.for-page--funnel .desk-hero-hook {
  margin: 0 0 20px;
  font-size: clamp(1.02rem, 1.8vw, 1.18rem);
  line-height: 1.5;
  font-style: normal;
  color: var(--muted);
  max-width: 46ch;
}

.for-page--funnel .desk-hero h1 {
  max-width: 42ch;
  margin-bottom: 22px;
  font-size: clamp(1.9rem, 3.2vw, 2.45rem);
  line-height: 1.16;
}

.for-page--funnel .desk-hero-lead {
  margin-bottom: 32px;
  font-size: 1rem;
  line-height: 1.68;
  max-width: 52ch;
  color: var(--soft);
}

.for-page--funnel .desk-hero-actions {
  margin-bottom: 0;
  gap: 12px;
}

.for-page--funnel .flow-kicker {
  margin-bottom: 14px;
}

.for-page--funnel .flow-chapter h2 {
  max-width: 36ch;
  margin-bottom: 16px;
  font-size: clamp(1.45rem, 2.4vw, 1.85rem);
  line-height: 1.22;
}

.for-page--funnel .desk-lead {
  margin-bottom: 36px;
  font-size: 0.95rem;
  line-height: 1.68;
  max-width: 54ch;
}

.funnel-problems--open {
  display: flex;
  flex-direction: column;
  gap: 16px;
  max-width: 54ch;
}

.funnel-problems--open .funnel-problem-card {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  border-top: 0;
  padding-top: 16px;
  border-top: 1px solid rgba(213, 224, 216, 0.1);
}

.funnel-problems--open .funnel-problem-card:first-child {
  padding-top: 0;
  border-top: 0;
}

.funnel-problems--open .funnel-problem-card h3 {
  font-family: var(--flow-serif);
  font-size: 1.02rem;
  font-weight: 500;
  margin-bottom: 8px;
  color: var(--bone);
}

.funnel-problems--open .funnel-problem-card p {
  font-size: 0.9rem;
  line-height: 1.62;
}

.funnel-solutions {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin-bottom: 40px;
  max-width: 54ch;
}

.funnel-solution-item {
  display: grid;
  grid-template-columns: 36px 1fr;
  gap: 16px;
  padding: 22px 0;
  border-bottom: 1px solid rgba(213, 224, 216, 0.08);
}

.funnel-solution-item:first-child {
  padding-top: 0;
}

.funnel-solution-item:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

.funnel-solution-num {
  font-family: var(--flow-serif);
  font-size: 0.88rem;
  color: var(--gold);
  padding-top: 2px;
}

.funnel-solution-item h3 {
  font-family: var(--flow-serif);
  font-size: 1rem;
  font-weight: 500;
  color: var(--bone);
  margin-bottom: 6px;
}

.funnel-solution-item p {
  margin: 0;
  font-size: 0.88rem;
  line-height: 1.6;
  color: var(--muted);
}

.desk-resources {
  margin: 0 0 32px;
  padding: 24px 0 0;
  border-top: 1px solid rgba(213, 224, 216, 0.1);
  max-width: 54ch;
}

.desk-resources-heading {
  margin: 0 0 16px;
  font-size: 0.58rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--gold);
}

.desk-resources-list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 0;
}

.desk-resources-list li {
  border-bottom: 1px solid rgba(213, 224, 216, 0.06);
}

.desk-resources-list li:last-child {
  border-bottom: 0;
}

.desk-resources-list a {
  display: flex;
  flex-direction: column;
  gap: 3px;
  padding: 14px 0;
  transition: color 160ms ease;
}

.desk-resources-list a:hover strong {
  color: var(--gold-bright);
}

.desk-resources-list strong {
  font-family: var(--flow-serif);
  font-size: 0.95rem;
  font-weight: 500;
  color: var(--bone);
  transition: color 160ms ease;
}

.desk-resources-list span {
  font-size: 0.8rem;
  line-height: 1.45;
  color: var(--muted);
}

.desk-engage-panel {
  margin: 8px 0 28px;
  max-width: 48ch;
}

.desk-engage-panel .button {
  margin-bottom: 20px;
}

.desk-engage-notes {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.desk-engage-notes li {
  font-size: 0.84rem;
  line-height: 1.5;
  color: var(--muted);
  padding-left: 14px;
  border-left: 1px solid rgba(185, 150, 94, 0.22);
}

.for-page--funnel .desk-boundary {
  margin-top: 8px;
  font-size: 0.8rem;
  line-height: 1.58;
  max-width: 54ch;
}

.for-page--funnel .desk-spec {
  grid-template-columns: 1fr;
  gap: 0;
  margin-bottom: 36px;
  max-width: 54ch;
}

.for-page--funnel .desk-spec div {
  padding: 16px 0;
}

.for-page--funnel .desk-mandates-grid {
  grid-template-columns: 1fr;
  gap: 12px;
}

.for-page--funnel .flow-mandate-card {
  padding: 20px;
}

.cf-terms--inline {
  display: flex;
  flex-wrap: wrap;
  gap: 16px 28px;
  margin: 0 0 28px;
  padding: 0 0 28px;
  border-bottom: 1px solid rgba(213, 224, 216, 0.08);
  max-width: 54ch;
}

.cf-terms--inline span {
  font-size: 0.84rem;
  color: var(--muted);
}

.cf-terms--inline em {
  font-style: normal;
  font-size: 0.58rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--gold);
  display: block;
  margin-bottom: 3px;
}

.for-page--funnel .cf-fit-block {
  margin: 0 0 28px;
  max-width: 54ch;
}

.for-page--funnel .cf-fit-heading {
  font-family: var(--flow-serif);
  font-size: 0.95rem;
  font-weight: 500;
  margin-bottom: 12px;
}

.for-page--funnel .cf-investor-grid {
  grid-template-columns: 1fr;
  gap: 12px;
  max-width: 54ch;
}

.for-page--funnel .flow-rail a {
  padding: 11px 12px;
  font-size: 0.62rem;
}

.for-page--funnel .flow-legal {
  max-width: 54ch;
  font-size: 0.78rem;
  line-height: 1.58;
}

.for-page--funnel .flow-legal a {
  text-decoration: underline;
  text-underline-offset: 3px;
}

@media (max-width: 960px) {
  .flow-rail--4 {
    grid-template-columns: 1fr 1fr;
    gap: 6px;
  }
}

/* ── Funnel v21 — hero photography, case studies, dossier preview ── */

.for-page--funnel .desk-hero--visual {
  padding-bottom: clamp(40px, 6vw, 64px);
}

.for-page--funnel .desk-hero--visual .desk-hero-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(220px, 0.72fr);
  gap: clamp(24px, 4vw, 40px);
  align-items: end;
  max-width: var(--flow-max);
  margin: 0 auto;
  padding: 0 var(--flow-gutter);
}

.for-page--funnel .desk-hero--visual .desk-hero-inner {
  max-width: none;
}

.for-page--funnel .desk-hero--visual .flow-hero-aside {
  margin: 0;
  align-self: start;
  display: flex;
  flex-direction: column;
}

.for-page--funnel .desk-hero--visual .flow-hero-aside img {
  display: block;
  height: clamp(200px, 28vw, 280px);
  object-fit: cover;
  object-position: center 35%;
}

.for-page--funnel .desk-hero--visual .flow-hero-aside-cap {
  flex: 1;
  min-height: 0;
}

.for-page--funnel .desk-hero-strip-wrap {
  max-width: var(--flow-max);
  margin: clamp(24px, 3.5vw, 32px) auto 0;
  padding: 0 var(--flow-gutter);
}

.for-page--funnel .desk-hero-strip-wrap .desk-strip {
  margin-top: 0;
}

.for-page--funnel .flow-visual-band {
  margin: 44px 0 0;
  max-width: none;
  align-items: start;
}

.for-page--funnel .flow-visual-band figcaption {
  margin: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 0;
}

.for-page--funnel .flow-visual-band figcaption h3 {
  font-family: var(--flow-serif);
  font-size: 1.08rem;
  font-weight: 500;
  color: var(--bone);
  margin-bottom: 8px;
}

.for-page--funnel .flow-visual-band figcaption p {
  margin: 0;
  font-size: 0.88rem;
  line-height: 1.62;
  color: var(--muted);
}

.funnel-proof-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(200px, 0.55fr);
  gap: 28px;
  align-items: start;
  margin-top: 8px;
  padding-top: 36px;
  border-top: 1px solid rgba(213, 224, 216, 0.08);
}

.funnel-proof-row .desk-resources {
  margin: 0;
  padding: 0;
  border-top: 0;
  max-width: none;
}

.funnel-proof-row--cf {
  grid-template-columns: 1fr;
}

.funnel-dossier-preview a {
  display: block;
  border: 1px solid rgba(213, 224, 216, 0.12);
  border-radius: 10px;
  overflow: hidden;
  background: rgba(8, 13, 16, 0.5);
  transition: border-color 160ms ease;
}

.funnel-dossier-preview a:hover {
  border-color: rgba(234, 215, 170, 0.28);
}

.funnel-dossier-preview img {
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 10;
  object-fit: cover;
  border-bottom: 1px solid rgba(213, 224, 216, 0.08);
}

.funnel-dossier-preview div {
  padding: 14px 16px;
}

.funnel-dossier-preview span {
  display: block;
  font-size: 0.58rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 4px;
}

.funnel-dossier-preview strong {
  display: block;
  font-family: var(--flow-serif);
  font-size: 0.95rem;
  font-weight: 500;
  color: var(--bone);
  margin-bottom: 6px;
}

.funnel-dossier-preview p {
  margin: 0;
  font-size: 0.78rem;
  line-height: 1.5;
  color: var(--muted);
}

.for-page--funnel .flow-section-inner--wide {
  max-width: 820px;
}

.funnel-cases {
  margin: 0 0 44px;
  padding-bottom: 44px;
  border-bottom: 1px solid rgba(213, 224, 216, 0.08);
}

.funnel-cases-heading {
  font-family: var(--flow-serif);
  font-size: clamp(1.2rem, 2vw, 1.45rem);
  font-weight: 500;
  line-height: 1.25;
  color: var(--bone);
  margin-bottom: 10px;
  max-width: 36ch;
}

.funnel-cases-lead {
  margin: 0 0 28px;
  font-size: 0.9rem;
  line-height: 1.64;
  color: var(--muted);
  max-width: 58ch;
}

.funnel-case-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.funnel-case-card {
  padding: 22px 20px;
  border: 1px solid rgba(213, 224, 216, 0.1);
  border-radius: 10px;
  background:
    linear-gradient(160deg, rgba(185, 150, 94, 0.04), transparent 48%),
    rgba(8, 13, 16, 0.42);
}

.funnel-case-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 12px;
}

.funnel-case-code {
  font-size: 0.58rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--gold);
  font-weight: 700;
}

.funnel-case-sector {
  font-size: 0.58rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--muted);
}

.funnel-case-card h3 {
  font-family: var(--flow-serif);
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.28;
  color: var(--bone);
  margin-bottom: 8px;
}

.funnel-case-card > p {
  margin: 0 0 14px;
  font-size: 0.82rem;
  line-height: 1.58;
  color: var(--muted);
}

.funnel-case-metrics {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px 12px;
  margin: 0 0 14px;
  padding: 12px 0 0;
  border-top: 1px solid rgba(213, 224, 216, 0.08);
}

.funnel-case-metrics div {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.funnel-case-metrics dt {
  font-size: 0.56rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--gold);
}

.funnel-case-metrics dd {
  margin: 0;
  font-size: 0.84rem;
  color: var(--ink);
  font-weight: 600;
}

.funnel-case-return {
  margin: 0;
  font-size: 0.78rem;
  line-height: 1.52;
  color: var(--muted);
}

.funnel-case-return em {
  font-style: normal;
  display: block;
  font-size: 0.56rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--gold-soft);
  margin-bottom: 3px;
}

.funnel-case-foot {
  display: flex;
  flex-wrap: wrap;
  gap: 16px 24px;
  margin-top: 22px;
}

.for-page--funnel .desk-quote {
  margin: 0 0 32px;
  padding: 0 0 0 18px;
  border-left: 1px solid rgba(185, 150, 94, 0.35);
  max-width: 52ch;
}

.for-page--funnel .desk-quote p {
  margin: 0 0 12px;
  font-family: var(--flow-serif);
  font-size: 1.02rem;
  line-height: 1.55;
  color: var(--soft);
  font-style: italic;
}

.for-page--funnel .desk-quote footer {
  font-size: 0.78rem;
  line-height: 1.45;
  color: var(--muted);
}

.for-page--funnel .desk-quote cite {
  font-style: normal;
  font-weight: 600;
  color: var(--bone);
  display: block;
}

.for-page--funnel .desk-quote footer span {
  display: block;
}

.for-page--funnel .desk-quote footer em {
  font-style: normal;
  font-size: 0.62rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--gold-soft);
}

.for-page--funnel .flow-section-inner--wide .desk-spec {
  max-width: none;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
  margin-bottom: 40px;
}

.for-page--funnel .flow-section-inner--wide .desk-spec div {
  padding: 0;
  border-top: 0;
}

.for-page--funnel .flow-section-inner--wide .desk-mandates-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  max-width: none;
  gap: 14px;
}

/* ── Funnel v23 — core info, OS, mandates, Stripe, CF depth ── */

.for-page--funnel .desk-hero-inner .desk-strip {
  margin-top: 28px;
  max-width: 100%;
}

.for-page--funnel .desk-strip--4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.funnel-context-line {
  margin: -20px 0 28px;
  padding-bottom: 24px;
  border-bottom: 1px solid rgba(213, 224, 216, 0.08);
  font-size: 0.9rem;
  line-height: 1.64;
  color: var(--muted);
  max-width: 54ch;
}

.for-page--funnel .flow-value-icons {
  margin: 8px 0 32px;
  max-width: none;
}

.funnel-deliverables {
  margin: 0 0 36px;
  padding: 28px 0;
  border-top: 1px solid rgba(213, 224, 216, 0.08);
  border-bottom: 1px solid rgba(213, 224, 216, 0.08);
  max-width: 58ch;
}

.funnel-deliverables-heading,
.funnel-mandates-heading,
.cf-phases-heading,
.cf-dataroom-heading {
  font-family: var(--flow-serif);
  font-size: 1.08rem;
  font-weight: 500;
  color: var(--bone);
  margin-bottom: 16px;
  line-height: 1.28;
}

.funnel-deliverables-list {
  margin: 0 0 18px;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.funnel-deliverables-list li {
  display: grid;
  grid-template-columns: 32px 1fr;
  gap: 12px;
}

.funnel-deliverables-list li span {
  font-family: var(--flow-serif);
  font-size: 0.82rem;
  color: var(--gold);
  padding-top: 2px;
}

.funnel-deliverables-list strong {
  display: block;
  font-size: 0.88rem;
  font-weight: 600;
  color: var(--bone);
  margin-bottom: 3px;
}

.funnel-deliverables-list p {
  margin: 0;
  font-size: 0.82rem;
  line-height: 1.55;
  color: var(--muted);
}

.funnel-os-panel {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(200px, 0.72fr);
  gap: 24px;
  align-items: start;
  margin: 0 0 36px;
  padding: 24px;
  border: 1px solid rgba(213, 224, 216, 0.12);
  border-radius: 12px;
  background:
    linear-gradient(145deg, rgba(185, 150, 94, 0.06), transparent 55%),
    rgba(8, 13, 16, 0.48);
}

.funnel-os-copy h3 {
  font-family: var(--flow-serif);
  font-size: 1.12rem;
  font-weight: 500;
  color: var(--bone);
  margin-bottom: 10px;
  line-height: 1.3;
  max-width: 34ch;
}

.funnel-os-copy p {
  margin: 0 0 16px;
  font-size: 0.88rem;
  line-height: 1.62;
  color: var(--muted);
  max-width: 48ch;
}

.funnel-os-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px 18px;
}

.funnel-os-visual {
  margin: 0;
  display: flex;
  flex-direction: column;
}

.funnel-os-visual a {
  display: block;
  border-radius: 10px;
  overflow: hidden;
  border: 1px solid rgba(213, 224, 216, 0.1);
}

.funnel-os-visual img {
  width: 100%;
  aspect-ratio: 16 / 10;
  object-fit: cover;
}

.funnel-os-visual figcaption {
  margin: 10px 0 0;
  padding: 0 2px;
  font-size: 0.72rem;
  line-height: 1.5;
  color: var(--muted);
}

.funnel-mandates {
  margin: 0 0 40px;
  padding-bottom: 40px;
  border-bottom: 1px solid rgba(213, 224, 216, 0.08);
}

.funnel-mandates-lead,
.cf-dataroom-lead {
  margin: 0 0 22px;
  font-size: 0.9rem;
  line-height: 1.64;
  color: var(--muted);
  max-width: 58ch;
}

.funnel-mandates-connect {
  margin: 0 0 22px;
  padding: 14px 16px;
  font-size: 0.86rem;
  line-height: 1.62;
  color: var(--bone);
  max-width: 62ch;
  border-left: 2px solid rgba(185, 150, 94, 0.45);
  background: rgba(185, 150, 94, 0.04);
  border-radius: 0 8px 8px 0;
}

.funnel-engage-offers {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin: 0 0 32px;
  max-width: none;
}

.funnel-engage-offer {
  padding: 22px 20px;
  border: 1px solid rgba(213, 224, 216, 0.1);
  border-radius: 10px;
  background: rgba(8, 13, 16, 0.42);
}

.funnel-engage-offer--featured {
  border-color: rgba(185, 150, 94, 0.28);
  background:
    linear-gradient(160deg, rgba(185, 150, 94, 0.06), transparent 50%),
    rgba(8, 13, 16, 0.5);
}

.funnel-engage-label {
  display: block;
  font-size: 0.58rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 6px;
}

.funnel-engage-offer h3 {
  font-family: var(--flow-serif);
  font-size: 1.05rem;
  font-weight: 500;
  color: var(--bone);
  margin-bottom: 12px;
}

.funnel-engage-offer ul {
  margin: 0 0 16px;
  padding: 0 0 0 16px;
  font-size: 0.82rem;
  line-height: 1.55;
  color: var(--muted);
}

.funnel-engage-offer .flow-text-link {
  display: inline-block;
  margin-top: 10px;
}

.cf-phases-block,
.cf-dataroom-block {
  margin: 0 0 32px;
  padding: 24px 0;
  border-top: 1px solid rgba(213, 224, 216, 0.08);
  max-width: none;
}

.cf-phases-compact {
  margin: 0 0 16px;
  padding: 0;
  list-style: none;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
}

.cf-phases-compact li {
  padding: 12px 10px;
  border: 1px solid rgba(213, 224, 216, 0.08);
  border-radius: 8px;
  font-size: 0.72rem;
  line-height: 1.4;
  color: var(--muted);
  background: rgba(8, 13, 16, 0.35);
}

.cf-phases-compact li span {
  display: block;
  font-family: var(--flow-serif);
  font-size: 0.78rem;
  color: var(--gold);
  margin-bottom: 4px;
}

.cf-dataroom-grid--compact {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.cf-dataroom-grid--compact .cf-dataroom-card {
  padding: 14px 12px;
  border: 1px solid rgba(213, 224, 216, 0.08);
  border-radius: 8px;
  background: rgba(8, 13, 16, 0.35);
}

.cf-dataroom-grid--compact .cf-dataroom-card h3 {
  font-size: 0.72rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--gold-soft);
  margin-bottom: 6px;
}

.cf-dataroom-grid--compact .cf-dataroom-card p {
  margin: 0;
  font-size: 0.78rem;
  line-height: 1.48;
  color: var(--muted);
}

.cf-engage-paths {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px 16px;
  margin: 0 0 24px;
}

.desk-engage-panel--notes {
  padding-top: 0;
  border-top: 0;
}

.desk-engage-panel--notes .desk-engage-notes {
  margin: 0;
}

.for-page--funnel .cf-investor-grid {
  max-width: none;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-bottom: 40px;
}

@media (max-width: 900px) {
  .for-page--funnel .desk-strip--4 {
    grid-template-columns: 1fr 1fr;
  }

  .funnel-os-panel {
    grid-template-columns: 1fr;
  }

  .funnel-engage-offers {
    grid-template-columns: 1fr;
  }

  .cf-phases-compact {
    grid-template-columns: 1fr 1fr;
  }

  .cf-dataroom-grid--compact,
  .for-page--funnel .cf-investor-grid {
    grid-template-columns: 1fr;
  }

  .for-page--funnel .flow-value-icons {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .for-page--funnel .flow-section-inner--wide .desk-spec,
  .for-page--funnel .flow-section-inner--wide .desk-mandates-grid {
    grid-template-columns: 1fr;
  }

  .desk-hero-layout--hub {
    grid-template-columns: 1fr;
  }

  .flow-hero-aside--hub {
    order: -1;
    max-width: 420px;
  }

  .flow-hub-grid--triple {
    grid-template-columns: 1fr;
  }

  .flow-hub-segment-head {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }

  .for-page--funnel .desk-hero--visual .desk-hero-layout {
    grid-template-columns: 1fr;
  }

  .for-page--funnel .desk-hero--visual .flow-hero-aside {
    order: -1;
    max-width: 420px;
  }

  .funnel-proof-row {
    grid-template-columns: 1fr;
  }

  .funnel-case-grid {
    grid-template-columns: 1fr;
  }

  .for-page--funnel .flow-visual-band {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .for-page--funnel .flow-visual-band figcaption {
    padding-top: 2px;
  }

  .funnel-os-visual {
    max-width: 420px;
  }

  .funnel-solution-pair {
    grid-template-columns: 1fr;
  }

  .funnel-solution-pair-arrow {
    transform: rotate(90deg);
    padding: 4px 0;
  }
}

/* ── Funnel v24 — embedded per-prospect solutions, trust voice ── */

.funnel-deliverables-lead {
  margin: 0 0 20px;
  font-size: 0.9rem;
  line-height: 1.64;
  color: var(--muted);
  max-width: 56ch;
}

.funnel-solution-pairs {
  margin: 36px 0;
  padding: 32px 0;
  border-top: 1px solid rgba(213, 224, 216, 0.08);
  border-bottom: 1px solid rgba(213, 224, 216, 0.08);
}

.funnel-solution-pairs-grid {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.funnel-solution-pair {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 28px minmax(0, 1fr);
  gap: 16px;
  align-items: start;
  padding: 22px 0;
  border-bottom: 1px solid rgba(213, 224, 216, 0.06);
}

.funnel-solution-pair:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

.funnel-solution-pair-problem span,
.funnel-solution-pair-response span {
  display: block;
  font-size: 0.56rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  margin-bottom: 6px;
}

.funnel-solution-pair-problem span {
  color: var(--muted);
}

.funnel-solution-pair-response span {
  color: var(--gold);
}

.funnel-solution-pair-problem p,
.funnel-solution-pair-response p {
  margin: 0;
  font-size: 0.88rem;
  line-height: 1.58;
}

.funnel-solution-pair-problem p {
  color: var(--soft);
  font-family: var(--flow-serif);
  font-style: italic;
}

.funnel-solution-pair-response p {
  color: var(--ink);
}

.funnel-solution-pair-arrow {
  display: grid;
  place-items: center;
  font-family: var(--flow-serif);
  font-size: 1rem;
  color: var(--gold-soft);
  opacity: 0.75;
  padding-top: 18px;
}

.funnel-os-features {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0 0 18px;
}

.funnel-os-feature {
  padding: 12px 12px;
  border: 1px solid rgba(213, 224, 216, 0.08);
  border-radius: 8px;
  background: rgba(5, 8, 10, 0.35);
}

.funnel-os-feature strong {
  display: block;
  font-size: 0.68rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--gold-soft);
  margin-bottom: 4px;
}

.funnel-os-feature p {
  margin: 0;
  font-size: 0.78rem;
  line-height: 1.48;
  color: var(--muted);
}

.funnel-solutions--cf {
  max-width: none;
  margin-bottom: 8px;
}

.funnel-solutions--cf .funnel-solution-item {
  max-width: none;
}

.for-page--funnel .funnel-solutions--cf {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 24px;
}

.for-page--funnel .funnel-solutions--cf .funnel-solution-item {
  border-bottom: 1px solid rgba(213, 224, 216, 0.08);
}

@media (max-width: 900px) {
  .for-page--funnel .funnel-solutions--cf {
    grid-template-columns: 1fr;
  }

  .funnel-os-features {
    grid-template-columns: 1fr;
  }
}

/* ── Funnel v26 — deluxe flow, editorial imagery, spacious rhythm ── */

.for-page--funnel {
  --flow-section-y: clamp(72px, 9vw, 120px);
}

.for-page--funnel .flow-section-inner--flow {
  max-width: var(--flow-max);
}

.for-page--funnel .funnel-chapter-head {
  margin-bottom: clamp(32px, 4vw, 44px);
  max-width: 58ch;
}

.for-page--funnel .funnel-chapter-head .desk-lead {
  margin-bottom: 0;
}

.for-page--funnel .funnel-moment {
  margin-top: clamp(52px, 6.5vw, 80px);
  padding-top: clamp(44px, 5.5vw, 68px);
  border-top: 1px solid rgba(213, 224, 216, 0.07);
}

.for-page--funnel .funnel-moment--visual {
  padding-top: clamp(48px, 5vw, 64px);
}

.for-page--funnel .funnel-moment--proof {
  padding-top: clamp(40px, 4.5vw, 56px);
}

.for-page--funnel .funnel-moment .funnel-solution-pairs,
.for-page--funnel .funnel-moment .funnel-deliverables,
.for-page--funnel .funnel-moment .funnel-os-panel,
.for-page--funnel .funnel-moment .flow-visual-band,
.for-page--funnel .funnel-moment .cf-phases-block,
.for-page--funnel .funnel-moment .cf-dataroom-block {
  margin: 0;
  padding: 0;
  border: 0;
}

.for-page--funnel .desk-hero--visual {
  padding-bottom: clamp(48px, 6vw, 72px);
}

.for-page--funnel .desk-hero--visual .desk-hero-layout {
  align-items: center;
  gap: clamp(32px, 5vw, 52px);
}

.for-page--funnel .desk-hero--visual .flow-hero-aside {
  border-color: rgba(234, 215, 170, 0.12);
  box-shadow: 0 32px 80px rgba(0, 0, 0, 0.32);
}

.for-page--funnel .desk-hero--visual .flow-hero-aside img {
  height: clamp(240px, 32vw, 360px);
  object-position: center 40%;
}

.for-page--funnel .desk-hero--visual .flow-hero-aside-cap {
  padding: 16px 18px;
  gap: 12px;
}

.for-page--funnel .desk-hero--visual .flow-hero-aside-cap span {
  font-size: 0.74rem;
  line-height: 1.55;
  letter-spacing: 0.01em;
}

.for-page--funnel .desk-hero-strip-wrap {
  margin-top: clamp(40px, 5vw, 56px);
  padding-top: clamp(36px, 4.5vw, 48px);
  border-top: 1px solid rgba(213, 224, 216, 0.08);
}

.for-page--funnel .desk-strip--deluxe {
  gap: 14px;
  border: 0;
  border-radius: 0;
  overflow: visible;
  background: transparent;
}

.for-page--funnel .desk-strip--deluxe .desk-strip-item {
  padding: 22px 24px;
  border: 1px solid rgba(213, 224, 216, 0.1);
  border-radius: 12px;
  background:
    linear-gradient(160deg, rgba(185, 150, 94, 0.04), transparent 52%),
    rgba(7, 12, 15, 0.72);
}

.for-page--funnel .desk-strip--deluxe .desk-strip-item span {
  margin-bottom: 8px;
  letter-spacing: 0.16em;
}

.for-page--funnel .desk-strip--deluxe .desk-strip-item p {
  font-size: 0.84rem;
  line-height: 1.55;
}

.for-page--funnel .funnel-context-line {
  margin: 0 0 36px;
  padding-bottom: 28px;
}

.for-page--funnel .funnel-solutions {
  margin-bottom: 0;
  max-width: 56ch;
}

.for-page--funnel .funnel-solution-item {
  padding: 28px 0;
}

.for-page--funnel .funnel-moment--pairs .funnel-solution-pairs-grid {
  gap: 8px;
  max-width: none;
}

.for-page--funnel .funnel-solution-pair {
  padding: 28px 0;
  gap: 20px;
}

.for-page--funnel .funnel-deliverables {
  max-width: 56ch;
}

.for-page--funnel .funnel-deliverables-list {
  gap: 18px;
}

.for-page--funnel .funnel-os-panel--editorial {
  display: flex;
  flex-direction: column;
  gap: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}

.for-page--funnel .funnel-os-panel--editorial .funnel-os-visual {
  border: 1px solid rgba(213, 224, 216, 0.1);
  border-radius: 14px;
  overflow: hidden;
  background: rgba(5, 8, 10, 0.4);
}

.for-page--funnel .funnel-os-panel--editorial .funnel-os-visual a {
  border: 0;
  border-radius: 0;
}

.for-page--funnel .funnel-os-panel--editorial .funnel-os-visual img {
  aspect-ratio: 21 / 9;
  max-height: 420px;
}

.for-page--funnel .funnel-os-panel--editorial .funnel-os-visual figcaption {
  margin: 0;
  padding: 14px 20px 16px;
  border-top: 1px solid rgba(213, 224, 216, 0.08);
  font-size: 0.74rem;
  line-height: 1.55;
  background: rgba(7, 12, 15, 0.55);
}

.for-page--funnel .funnel-os-panel--editorial .funnel-os-copy {
  padding: clamp(28px, 3.5vw, 40px) 0 0;
  max-width: 56ch;
}

.for-page--funnel .funnel-os-panel--editorial .funnel-os-copy h3 {
  max-width: 28ch;
  font-size: clamp(1.15rem, 2vw, 1.35rem);
  margin-bottom: 14px;
}

.for-page--funnel .funnel-os-panel--editorial .funnel-os-copy > p {
  max-width: 52ch;
  margin-bottom: 24px;
}

.for-page--funnel .funnel-os-features {
  grid-template-columns: 1fr;
  gap: 12px;
  margin-bottom: 28px;
}

.for-page--funnel .funnel-os-feature {
  padding: 16px 18px;
  border-radius: 10px;
  background: rgba(8, 13, 16, 0.38);
}

.for-page--funnel .flow-visual-band--editorial {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}

.for-page--funnel .flow-visual-band--editorial .flow-visual-band-media {
  border-radius: 14px;
  overflow: hidden;
  border: 1px solid rgba(213, 224, 216, 0.1);
}

.for-page--funnel .flow-visual-band--editorial img {
  display: block;
  width: 100%;
  border: 0;
  border-radius: 0;
  aspect-ratio: 21 / 9;
  max-height: 400px;
  object-fit: cover;
}

.for-page--funnel .flow-visual-band--editorial figcaption {
  padding: clamp(24px, 3vw, 36px) 0 0;
  max-width: 44ch;
  justify-content: flex-start;
}

.for-page--funnel .flow-visual-band--editorial figcaption h3 {
  font-size: clamp(1.12rem, 2vw, 1.32rem);
  margin-bottom: 12px;
  line-height: 1.28;
}

.for-page--funnel .flow-visual-band--editorial figcaption p {
  font-size: 0.92rem;
  line-height: 1.68;
}

.for-page--funnel .funnel-moment--proof .funnel-proof-row {
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
  gap: clamp(32px, 4vw, 48px);
}

.for-page--funnel .funnel-dossier-preview a {
  border-radius: 12px;
}

.for-page--funnel .funnel-dossier-preview div {
  padding: 18px 20px 20px;
}

.for-page--funnel .funnel-dossier-preview strong {
  font-size: 1rem;
  margin-bottom: 8px;
}

.for-page--funnel .desk-boundary {
  margin-top: clamp(28px, 3.5vw, 40px);
  max-width: 56ch;
}

@media (max-width: 900px) {
  .for-page--funnel .desk-strip--deluxe,
  .for-page--funnel .desk-strip--deluxe.desk-strip--4 {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .for-page--funnel .desk-hero--visual .flow-hero-aside img {
    height: clamp(220px, 52vw, 300px);
  }

  .for-page--funnel .funnel-os-panel--editorial .funnel-os-visual img,
  .for-page--funnel .flow-visual-band--editorial img {
    aspect-ratio: 16 / 10;
    max-height: none;
  }
}

/* ── Funnel v27 — minimal: no icons, no duplicates, less density ── */

.for-page--funnel .flow-hero-aside-cap {
  display: block;
  padding: 14px 18px;
}

.for-page--funnel .flow-hero-aside-cap span {
  display: block;
  font-size: 0.72rem;
  line-height: 1.55;
  letter-spacing: 0.04em;
  color: var(--muted);
}

.for-page--funnel .flow-hero-aside-cap img {
  display: none;
}

.for-page--funnel .funnel-solutions--cf {
  display: flex;
  flex-direction: column;
  gap: 0;
  max-width: 56ch;
}

.for-page--funnel .funnel-solutions--cf .funnel-solution-item {
  border-bottom: 1px solid rgba(213, 224, 216, 0.07);
}

.for-page--funnel .cf-phases-block--minimal .cf-phases-compact {
  display: flex;
  flex-direction: column;
  gap: 0;
  max-width: 48ch;
}

.for-page--funnel .cf-phases-block--minimal .cf-phases-compact li {
  padding: 14px 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  border-bottom: 1px solid rgba(213, 224, 216, 0.06);
  font-size: 0.88rem;
  line-height: 1.5;
  color: var(--soft);
}

.for-page--funnel .cf-phases-block--minimal .cf-phases-compact li:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

.for-page--funnel .cf-phases-block--minimal .cf-phases-compact li span {
  display: inline;
  margin: 0 10px 0 0;
  font-family: var(--flow-serif);
  font-size: 0.82rem;
  color: var(--gold);
}

.cf-dataroom-list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 0;
  max-width: 52ch;
}

.cf-dataroom-list li {
  padding: 16px 0;
  border-bottom: 1px solid rgba(213, 224, 216, 0.06);
}

.cf-dataroom-list li:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

.cf-dataroom-list strong {
  display: block;
  font-family: var(--flow-serif);
  font-size: 0.92rem;
  font-weight: 500;
  color: var(--bone);
  margin-bottom: 6px;
}

.cf-dataroom-list span {
  display: block;
  font-size: 0.86rem;
  line-height: 1.6;
  color: var(--muted);
}

.for-page--funnel .funnel-moment--proof .desk-resources {
  margin: 0;
  padding: 0;
  border: 0;
  max-width: 48ch;
}

.for-page--funnel .cf-investor-grid {
  display: flex;
  flex-direction: column;
  gap: 0;
  max-width: 52ch;
  margin-bottom: 36px;
}

.for-page--funnel .cf-investor-card {
  padding: 18px 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  border-bottom: 1px solid rgba(213, 224, 216, 0.07);
}

.for-page--funnel .cf-investor-card:last-child {
  border-bottom: 0;
}

.for-page--funnel .cf-investor-card h3 {
  font-family: var(--flow-serif);
  font-size: 0.98rem;
  font-weight: 500;
  color: var(--bone);
  margin-bottom: 6px;
}

.for-page--funnel .cf-investor-card p {
  margin: 0;
  font-size: 0.86rem;
  line-height: 1.6;
  color: var(--muted);
}

.for-page--funnel .funnel-os-panel--editorial .funnel-os-copy {
  padding-top: clamp(24px, 3vw, 32px);
}

.for-page--funnel .funnel-moment--visual .flow-visual-band--editorial + .funnel-os-panel--editorial,
.for-page--funnel .funnel-moment--visual .funnel-os-panel--editorial + .flow-visual-band--editorial {
  margin-top: clamp(48px, 5vw, 64px);
}

.for-page--funnel .desk-hero-actions {
  gap: 10px;
}

.for-page--funnel .desk-hero-actions .button {
  min-width: 0;
}

/* ── Funnel v28 — situation chapter spacing & rhythm ── */

.for-page--funnel .flow-chapter--situation {
  padding-top: clamp(64px, 8vw, 96px);
  padding-bottom: clamp(72px, 9vw, 112px);
}

.for-page--funnel .flow-chapter--approach {
  padding-top: clamp(72px, 9vw, 108px);
}

.for-page--funnel .funnel-situation-head {
  margin-bottom: 0;
  max-width: 56ch;
}

.for-page--funnel .funnel-situation-head .desk-lead {
  margin-bottom: 0;
}

.for-page--funnel .funnel-situation-bridge {
  margin: clamp(28px, 3.5vw, 40px) 0 0;
  padding: 0;
  max-width: 52ch;
  border: 0;
  font-size: 0.9rem;
  line-height: 1.68;
  color: var(--muted);
}

.for-page--funnel .funnel-situation-body {
  margin-top: clamp(40px, 5vw, 56px);
  padding-top: clamp(36px, 4.5vw, 48px);
  border-top: 1px solid rgba(213, 224, 216, 0.08);
  max-width: 56ch;
}

.for-page--funnel .funnel-situation-head + .funnel-situation-body {
  margin-top: clamp(44px, 5.5vw, 60px);
}

.for-page--funnel .funnel-situation-bridge + .funnel-situation-body {
  margin-top: clamp(36px, 4.5vw, 48px);
  padding-top: clamp(32px, 4vw, 44px);
}

.for-page--funnel .funnel-problems--open {
  gap: 0;
  max-width: none;
}

.for-page--funnel .funnel-problems--open .funnel-problem-card {
  padding: clamp(22px, 2.8vw, 28px) 0;
  border-top: 1px solid rgba(213, 224, 216, 0.07);
}

.for-page--funnel .funnel-problems--open .funnel-problem-card:first-child {
  padding-top: 0;
  border-top: 0;
}

.for-page--funnel .funnel-problems--open .funnel-problem-card h3 {
  font-size: 1.04rem;
  margin-bottom: 10px;
  line-height: 1.3;
}

.for-page--funnel .funnel-problems--open .funnel-problem-card p {
  font-size: 0.9rem;
  line-height: 1.65;
  max-width: 48ch;
}

/* ── Funnel v29 — OS depth, sourcing & introduction ── */

.for-page--funnel .funnel-os-extended {
  margin: 0 0 24px;
  font-size: 0.9rem;
  line-height: 1.68;
  color: var(--muted);
  max-width: 52ch;
}

.for-page--funnel .funnel-os-capabilities {
  margin: 0 0 28px;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 0;
  max-width: 52ch;
  border-top: 1px solid rgba(213, 224, 216, 0.08);
}

.for-page--funnel .funnel-os-capabilities li {
  padding: 16px 0;
  border-bottom: 1px solid rgba(213, 224, 216, 0.06);
}

.for-page--funnel .funnel-os-capabilities li:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

.for-page--funnel .funnel-os-capabilities strong {
  display: block;
  font-family: var(--flow-serif);
  font-size: 0.92rem;
  font-weight: 500;
  color: var(--bone);
  margin-bottom: 6px;
}

.for-page--funnel .funnel-os-capabilities span {
  display: block;
  font-size: 0.86rem;
  line-height: 1.6;
  color: var(--muted);
}

.funnel-desk-depth {
  margin: 0 0 clamp(44px, 5vw, 56px);
  padding-bottom: clamp(40px, 5vw, 52px);
  border-bottom: 1px solid rgba(213, 224, 216, 0.08);
  max-width: 58ch;
}

.flow-section-inner--wide .funnel-desk-depth--wide {
  max-width: none;
}

.funnel-desk-depth--wide .funnel-desk-depth-heading {
  max-width: 42ch;
}

.funnel-desk-depth--wide .funnel-desk-depth-lead,
.funnel-desk-depth--wide .funnel-desk-depth-note {
  max-width: 72ch;
}

.funnel-desk-depth--wide .funnel-desk-items {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 28px;
  margin-top: 8px;
}

.funnel-desk-depth--wide .funnel-desk-item:nth-child(-n + 2) {
  border-top: 0;
  padding-top: 0;
}

.funnel-desk-depth--wide .funnel-desk-item:nth-child(3) {
  border-top: 1px solid rgba(213, 224, 216, 0.07);
}

.buyer-live-deals {
  margin: 0 0 clamp(44px, 5vw, 56px);
  padding: clamp(26px, 3.2vw, 34px);
  border: 1px solid rgba(213, 224, 216, 0.1);
  border-radius: 12px;
  background:
    linear-gradient(165deg, rgba(185, 150, 94, 0.05), transparent 55%),
    rgba(8, 13, 16, 0.5);
}

.buyer-live-deals-heading {
  font-family: var(--flow-serif);
  font-size: clamp(1.14rem, 2.1vw, 1.36rem);
  font-weight: 500;
  line-height: 1.28;
  color: var(--bone);
  margin: 0 0 12px;
  max-width: 36ch;
}

.buyer-live-deals-lead {
  margin: 0;
  font-size: 0.9rem;
  line-height: 1.68;
  color: var(--soft);
  max-width: 68ch;
}

.buyer-live-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin-top: 22px;
  padding-top: 22px;
  border-top: 1px solid rgba(213, 224, 216, 0.08);
}

.buyer-live-stat {
  padding: 12px 10px;
  border: 1px solid rgba(213, 224, 216, 0.08);
  border-radius: 8px;
  background: rgba(8, 13, 16, 0.42);
}

.buyer-live-stat strong {
  display: block;
  font-family: var(--flow-serif);
  font-size: 0.98rem;
  font-weight: 500;
  color: var(--bone);
  margin-bottom: 4px;
}

.buyer-live-stat span {
  display: block;
  font-size: 0.66rem;
  line-height: 1.45;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--muted);
}

.funnel-mandates-connect--buyer {
  color: var(--bone);
}

@media (max-width: 900px) {
  .funnel-desk-depth--wide .funnel-desk-items {
    grid-template-columns: 1fr;
  }

  .funnel-desk-depth--wide .funnel-desk-item:nth-child(2) {
    border-top: 1px solid rgba(213, 224, 216, 0.07);
    padding-top: clamp(22px, 2.8vw, 28px);
  }

  .buyer-live-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.funnel-desk-depth-heading {
  font-family: var(--flow-serif);
  font-size: clamp(1.12rem, 2vw, 1.32rem);
  font-weight: 500;
  line-height: 1.28;
  color: var(--bone);
  margin-bottom: 14px;
  max-width: 36ch;
}

.funnel-desk-depth-lead {
  margin: 0 0 20px;
  font-size: 0.92rem;
  line-height: 1.68;
  color: var(--soft);
  max-width: 54ch;
}

.funnel-desk-depth-note {
  margin: 0 0 28px;
  padding-bottom: 24px;
  border-bottom: 1px solid rgba(213, 224, 216, 0.06);
  font-size: 0.9rem;
  line-height: 1.66;
  color: var(--muted);
  max-width: 54ch;
}

.funnel-desk-items {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.funnel-desk-item {
  display: grid;
  grid-template-columns: 40px 1fr;
  gap: 16px;
  padding: clamp(22px, 2.8vw, 28px) 0;
  border-top: 1px solid rgba(213, 224, 216, 0.07);
}

.funnel-desk-item:first-child {
  border-top: 0;
  padding-top: 0;
}

.funnel-desk-num {
  font-family: var(--flow-serif);
  font-size: 0.88rem;
  color: var(--gold);
  padding-top: 2px;
}

.funnel-desk-item h3 {
  font-family: var(--flow-serif);
  font-size: 1rem;
  font-weight: 500;
  color: var(--bone);
  margin-bottom: 8px;
  line-height: 1.3;
}

.funnel-desk-item p {
  margin: 0;
  font-size: 0.88rem;
  line-height: 1.64;
  color: var(--muted);
  max-width: 50ch;
}

.cf-outreach-engine {
  margin: 0 0 clamp(44px, 5vw, 56px);
  padding: clamp(28px, 3.5vw, 36px);
  border: 1px solid rgba(213, 224, 216, 0.1);
  border-radius: 12px;
  background:
    linear-gradient(165deg, rgba(185, 150, 94, 0.05), transparent 55%),
    rgba(8, 13, 16, 0.55);
}

.cf-outreach-engine-head {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(220px, 0.85fr);
  gap: clamp(20px, 3vw, 32px);
  align-items: start;
  margin-bottom: clamp(24px, 3vw, 32px);
}

.cf-outreach-engine-heading {
  font-family: var(--flow-serif);
  font-size: clamp(1.18rem, 2.2vw, 1.42rem);
  font-weight: 500;
  line-height: 1.28;
  color: var(--bone);
  margin: 0 0 14px;
  max-width: 28ch;
}

.cf-outreach-engine-lead {
  margin: 0 0 16px;
  font-size: 0.92rem;
  line-height: 1.68;
  color: var(--soft);
  max-width: 58ch;
}

.cf-outreach-engine-emphasis {
  margin: 0;
  font-size: 0.86rem;
  line-height: 1.62;
  color: var(--muted);
  max-width: 58ch;
}

.cf-outreach-engine-emphasis strong {
  color: var(--gold);
  font-weight: 500;
}

.cf-outreach-engine-visual {
  margin: 0;
  border-radius: 10px;
  overflow: hidden;
  border: 1px solid rgba(213, 224, 216, 0.08);
}

.cf-outreach-engine-visual img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 180px;
  object-fit: cover;
}

.cf-outreach-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: clamp(22px, 3vw, 28px);
  padding-bottom: clamp(22px, 3vw, 28px);
  border-bottom: 1px solid rgba(213, 224, 216, 0.08);
}

.cf-outreach-stat {
  padding: 14px 12px;
  border: 1px solid rgba(213, 224, 216, 0.08);
  border-radius: 8px;
  background: rgba(8, 13, 16, 0.42);
}

.cf-outreach-stat strong {
  display: block;
  font-family: var(--flow-serif);
  font-size: 1.05rem;
  font-weight: 500;
  color: var(--bone);
  margin-bottom: 4px;
}

.cf-outreach-stat span {
  display: block;
  font-size: 0.68rem;
  line-height: 1.45;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--muted);
}

.cf-outreach-routes {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 28px;
}

.cf-outreach-route {
  display: grid;
  grid-template-columns: 36px 1fr;
  gap: 14px;
  padding: 18px 0;
  border-top: 1px solid rgba(213, 224, 216, 0.07);
}

.cf-outreach-route:nth-child(-n + 2) {
  border-top: 0;
  padding-top: 0;
}

.cf-outreach-route-num {
  font-family: var(--flow-serif);
  font-size: 0.86rem;
  color: var(--gold);
  padding-top: 2px;
}

.cf-outreach-route h4 {
  font-family: var(--flow-serif);
  font-size: 0.98rem;
  font-weight: 500;
  color: var(--bone);
  margin: 0 0 8px;
  line-height: 1.3;
}

.cf-outreach-route p {
  margin: 0;
  font-size: 0.86rem;
  line-height: 1.62;
  color: var(--muted);
}

@media (max-width: 900px) {
  .cf-outreach-engine-head {
    grid-template-columns: 1fr;
  }

  .cf-outreach-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

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

  .cf-outreach-route:nth-child(2) {
    border-top: 1px solid rgba(213, 224, 216, 0.07);
    padding-top: 18px;
  }
}

/* ── Funnel v30 — mandate intel + section framing ── */

.funnel-mandates-framing {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px 20px;
  margin: 0 0 28px;
  padding: 22px 0 24px;
  border-top: 1px solid rgba(213, 224, 216, 0.08);
  border-bottom: 1px solid rgba(213, 224, 216, 0.08);
  max-width: none;
}

.funnel-mandates-framing-item {
  padding-right: 12px;
}

.funnel-mandates-framing-label {
  display: block;
  font-size: 0.58rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 8px;
}

.funnel-mandates-framing-item p {
  margin: 0;
  font-size: 0.86rem;
  line-height: 1.62;
  color: var(--soft);
  max-width: 42ch;
}

.desk-mandates-grid--intel,
.for-page--funnel .flow-section-inner--wide .desk-mandates-grid--intel {
  grid-template-columns: 1fr;
  gap: 16px;
  max-width: none;
}

.flow-mandate-card--intel {
  padding: clamp(22px, 2.6vw, 28px);
}

.flow-mandate-intel {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px 18px;
  margin: 0 0 16px;
  padding: 18px 0 4px;
  border-top: 1px solid rgba(213, 224, 216, 0.07);
}

.flow-mandate-intel-label {
  display: block;
  font-size: 0.56rem;
  letter-spacing: 0.11em;
  text-transform: uppercase;
  color: var(--gold-soft);
  margin-bottom: 6px;
}

.flow-mandate-intel-item p {
  margin: 0;
  font-size: 0.82rem;
  line-height: 1.58;
  color: var(--muted);
}

.flow-mandate-card--intel .flow-mandate-need {
  margin-bottom: 0;
  font-size: 0.88rem;
  line-height: 1.56;
  color: var(--soft);
  max-width: 62ch;
}

@media (max-width: 900px) {
  .funnel-mandates-framing,
  .flow-mandate-intel {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .funnel-mandates-framing-item {
    padding-right: 0;
  }

  .funnel-mandates-framing-item p,
  .flow-mandate-card--intel .flow-mandate-need {
    max-width: none;
  }
}