:root {
  --bg: #eff1ec;
  --surface: #f9faf6;
  --surface-strong: #fcfcfa;
  --border: #d3cbc1;
  --border-soft: #ddd7cf;
  --ink: #152624;
  --muted: #5d6a68;
  --deep-mineral: #102d2b;
  --accent-green: #176765;
  --stone-green: #8b8378;
  --soft-mineral: #dcd7cf;
  --cream: #f7f3eb;
  --signal-teal: #18ada0;
  --cobalt: #4b6fff;
  --coral: #db816a;
  --coral-soft: rgba(219, 129, 106, 0.14);
  --danger: #a74f4d;
  --shadow: 0 18px 44px rgba(12, 27, 24, 0.05);
  --radius-lg: 30px;
  --radius-md: 24px;
  --radius-sm: 16px;
  --content-rail: 1240px;
  --content-gutter: clamp(20px, 2.4vw, 34px);
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  background:
    radial-gradient(circle at 12% 8%, rgba(21, 181, 150, 0.08), rgba(21, 181, 150, 0) 24%),
    radial-gradient(circle at 92% 12%, rgba(53, 107, 255, 0.07), rgba(53, 107, 255, 0) 22%),
    radial-gradient(circle at 20% 84%, rgba(219, 129, 106, 0.08), rgba(219, 129, 106, 0) 20%),
    linear-gradient(180deg, #f6f7f2 0%, var(--bg) 46%, #eef1ec 100%);
  color: var(--ink);
  font-family: "Avenir Next", "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

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

.app-shell {
  max-width: 1520px;
  margin: 0 auto;
  padding: 32px;
}

.brand-row {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.brand-badge {
  background: rgba(75, 111, 255, 0.08);
  border: 1px solid rgba(75, 111, 255, 0.16);
  border-radius: 999px;
  color: var(--cobalt);
  display: inline-flex;
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  padding: 7px 12px;
  text-transform: uppercase;
}

.brand-kicker,
.eyebrow {
  color: var(--accent-green);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.brand-name {
  color: var(--deep-mineral);
  font-family: "Iowan Old Style", "Palatino Linotype", "Book Antiqua", Georgia, serif;
  font-size: 22px;
  font-weight: 700;
  margin-top: 0;
  line-height: 1;
  letter-spacing: -0.02em;
}

.brand-audience {
  color: var(--muted);
  font-size: 0.88rem;
  font-weight: 600;
  letter-spacing: 0.01em;
  margin-bottom: 2px;
}

.screen {
  display: none;
}

.screen.active {
  display: block;
}

.hero-grid,
.results-grid,
.review-layout,
.consult-grid,
.method-grid {
  display: grid;
  gap: 24px;
}

.hero-grid {
  grid-template-columns: minmax(760px, 1fr) minmax(340px, 0.56fr);
  align-items: start;
  gap: 18px;
  margin-top: 12px;
  max-width: 1380px;
}

.hero-copy,
.section-frame {
  background: transparent;
}

.hero-copy {
  max-width: 860px;
  padding-top: 0;
}

.hero-offer-lockup {
  display: grid;
  gap: 6px;
  margin-bottom: 18px;
}

.hero-offer-quiet {
  gap: 8px;
}

.hero-copy h1,
.section-header h2,
.assessment-topbar h2,
.consult-grid h3,
.card h3 {
  font-family: "Iowan Old Style", "Palatino Linotype", "Book Antiqua", Georgia, serif;
}

.hero-copy h1 {
  color: var(--deep-mineral);
  font-size: clamp(2.62rem, 3.2vw, 3.45rem);
  line-height: 0.92;
  margin: 0 0 12px;
  max-width: 15.4ch;
  letter-spacing: -0.04em;
}

.hero-copy h1 span {
  display: block;
}

.lede,
.section-header p {
  color: var(--muted);
  font-size: 1.01rem;
  line-height: 1.6;
  max-width: 60ch;
}

.hero-lede-compact {
  font-size: 1.02rem;
  line-height: 1.48;
  margin: 0;
  max-width: 44ch;
}

.hero-lede-compact span {
  display: block;
  white-space: nowrap;
}

.hero-actions,
.footer-actions,
.result-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 22px;
}

.hero-helper-line {
  color: var(--muted);
  font-size: 0.84rem;
  font-weight: 600;
  letter-spacing: 0.01em;
  line-height: 1.55;
  margin: 14px 0 0;
}

.site-topbar {
  align-items: center;
  display: flex;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 22px;
}

.site-wordmark {
  align-items: center;
  display: flex;
  gap: 14px;
}

.site-wordmark-copy {
  display: grid;
  gap: 4px;
}

.site-audience {
  color: var(--muted);
  font-size: 0.84rem;
  font-weight: 600;
  letter-spacing: 0.01em;
  line-height: 1.35;
  max-width: 24ch;
}

.site-logo {
  border-radius: 16px;
  box-shadow: 0 12px 24px rgba(12, 27, 24, 0.08);
  display: block;
  flex: 0 0 auto;
  height: 52px;
  width: 52px;
}

.site-nav {
  display: flex;
  gap: 10px;
}

.site-nav-button {
  background: rgba(255, 255, 255, 0.34);
  border: 1px solid rgba(201, 210, 205, 0.48);
  border-radius: 999px;
  color: var(--muted);
  cursor: pointer;
  display: inline-flex;
  font-weight: 700;
  align-items: center;
  justify-content: center;
  padding: 11px 16px;
  backdrop-filter: blur(10px);
  text-decoration: none;
}

.site-nav-button.active {
  background: rgba(255, 255, 255, 0.72);
  border-color: rgba(201, 210, 205, 0.9);
  color: var(--deep-mineral);
  box-shadow: 0 8px 18px rgba(12, 27, 24, 0.04);
}

.site-nav-link {
  color: var(--muted);
  font-size: 0.9rem;
  font-weight: 600;
}

.site-title {
  color: var(--deep-mineral);
  font-size: 0.92rem;
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: 0;
  max-width: 52ch;
}

.site-wordmark .brand-kicker {
  font-size: 0.8rem;
  letter-spacing: 0.18em;
}

.homepage-stack {
  display: grid;
  gap: 92px;
  max-width: var(--content-rail);
  margin: 0 auto;
  width: 100%;
}

.homepage-section {
  display: grid;
  gap: 28px;
  width: 100%;
}

.homepage-section > * {
  min-width: 0;
}

.homepage-section.compact-section {
  padding-inline: var(--content-gutter);
}

.homepage-section-header {
  margin-bottom: 0;
}

.homepage-hero-grid {
  margin-top: 0;
}

.homepage-hero-copy {
  font-size: 0.96rem;
  line-height: 1.58;
  max-width: 48ch;
}

.hero-banner.card {
  background:
    radial-gradient(circle at 16% 18%, rgba(24, 173, 160, 0.18), rgba(24, 173, 160, 0) 24%),
    radial-gradient(circle at 84% 14%, rgba(75, 111, 255, 0.14), rgba(75, 111, 255, 0) 22%),
    radial-gradient(circle at 78% 88%, rgba(219, 129, 106, 0.12), rgba(219, 129, 106, 0) 18%),
    linear-gradient(180deg, rgba(13, 35, 33, 0.98) 0%, rgba(16, 47, 44, 0.99) 100%);
  min-height: 248px;
  overflow: hidden;
  padding: 0;
  position: relative;
}

.hero-banner.card::before {
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0));
  content: "";
  inset: 0;
  mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.95), rgba(0, 0, 0, 0.2));
  position: absolute;
}

.hero-banner-stage {
  display: grid;
  gap: 18px;
  grid-template-columns: 1fr;
  height: 100%;
  padding: clamp(24px, 2.6vw, 34px);
  position: relative;
}

.hero-banner-head {
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 20px;
  display: grid;
  gap: 6px;
  max-width: 224px;
  padding: 12px 14px 13px;
  backdrop-filter: blur(12px);
}

.hero-banner-head .mini-label {
  color: rgba(255, 255, 255, 0.74);
}

.hero-banner-head strong {
  color: var(--surface);
  display: block;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.08rem;
  line-height: 1.1;
}

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

.hero-signal-column {
  backdrop-filter: blur(10px);
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 18px;
  display: grid;
  gap: 14px;
  min-height: 138px;
  padding: 14px 14px 16px;
  position: relative;
}

.hero-signal-column::before {
  background: rgba(255, 255, 255, 0.05);
  border-radius: 999px;
  content: "";
  height: 1px;
  left: 14px;
  position: absolute;
  right: 14px;
  top: 52px;
}

.hero-signal-meta {
  display: grid;
  gap: 3px;
}

.hero-signal-meta strong {
  color: rgba(255, 255, 255, 0.94);
  font-size: 0.84rem;
  letter-spacing: -0.01em;
}

.hero-signal-meta span {
  color: rgba(255, 255, 255, 0.66);
  font-size: 0.68rem;
  letter-spacing: 0.02em;
  line-height: 1.35;
}

.hero-signal-bars {
  align-items: end;
  display: flex;
  gap: 8px;
  height: 56px;
  margin-top: auto;
}

.hero-signal-bars span {
  border-radius: 999px 999px 8px 8px;
  display: block;
  width: 14px;
}

.hero-signal-bars span:nth-child(1) {
  height: 100%;
}

.hero-signal-bars span:nth-child(2) {
  height: 64%;
}

.hero-signal-bars span:nth-child(3) {
  height: 28%;
  opacity: 0.58;
}

.signal-discovery .hero-signal-bars span {
  background: linear-gradient(180deg, rgba(60, 208, 183, 0.98), rgba(20, 112, 101, 0.94));
}

.signal-demand .hero-signal-bars span {
  background: linear-gradient(180deg, rgba(92, 129, 255, 0.98), rgba(47, 86, 208, 0.94));
}

.signal-roi .hero-signal-bars span {
  background: linear-gradient(180deg, rgba(241, 157, 136, 0.96), rgba(188, 101, 80, 0.94));
}

.hero-banner-note {
  color: rgba(255, 255, 255, 0.72);
  font-size: 0.86rem;
  line-height: 1.45;
  margin: 0;
  max-width: 26ch;
}

.hero-proof-line {
  color: var(--muted);
  font-size: 0.88rem;
  font-weight: 600;
  line-height: 1.45;
  margin-top: 14px;
}

.hero-support-copy {
  color: var(--muted);
  font-size: 0.98rem;
  line-height: 1.5;
  margin: 10px 0 0;
  max-width: 34ch;
}

.hero-proof-board {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(247, 244, 236, 0.72));
  display: grid;
  gap: 18px;
  max-width: 920px;
  padding: 26px;
}

.hero-proof-board-top {
  align-items: center;
  display: flex;
  justify-content: space-between;
  gap: 12px;
}

.hero-proof-chip {
  background: rgba(15, 175, 138, 0.08);
  border: 1px solid rgba(15, 175, 138, 0.16);
  border-radius: 999px;
  color: var(--accent-green);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  padding: 6px 10px;
  text-transform: uppercase;
}

.hero-proof-metrics {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.hero-proof-metric {
  background: rgba(255, 255, 255, 0.82);
  border: 1px solid var(--border-soft);
  border-radius: 18px;
  min-height: 188px;
  padding: 18px;
}

.hero-proof-metric strong {
  color: var(--deep-mineral);
  display: block;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 2.15rem;
  letter-spacing: -0.03em;
  line-height: 0.96;
  margin-top: 10px;
}

.hero-proof-metric p {
  color: var(--muted);
  line-height: 1.45;
  margin: 10px 0 0;
  max-width: 18ch;
}

.hero-proof-band {
  grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
}

.tool-stack {
  gap: 36px;
}

.tool-offer-lockup {
  margin-bottom: 14px;
}

.tool-hero {
  align-items: stretch;
  display: grid;
  gap: 28px;
  grid-template-columns: minmax(0, 1.02fr) minmax(320px, 0.98fr);
}

.tool-hero-copy h1 {
  color: var(--deep-mineral);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(2.4rem, 3.2vw, 3.4rem);
  line-height: 0.92;
  margin: 0 0 14px;
  max-width: 13.4ch;
  letter-spacing: -0.04em;
}

.tool-hero-copy h1 span {
  display: block;
}

.tool-hero-copy p {
  color: var(--muted);
  font-size: 1rem;
  line-height: 1.52;
  margin: 0;
  max-width: 34ch;
}

.tool-hero-sidecard {
  align-self: stretch;
  background:
    radial-gradient(circle at 100% 0%, rgba(75, 111, 255, 0.08), rgba(75, 111, 255, 0) 36%),
    radial-gradient(circle at 0% 100%, rgba(219, 129, 106, 0.08), rgba(219, 129, 106, 0) 26%),
    linear-gradient(180deg, rgba(252, 253, 251, 0.94), rgba(244, 248, 244, 0.82));
  display: grid;
  gap: 22px;
  padding-top: 30px;
}

.tool-hero-points {
  display: grid;
  gap: 14px;
}

.tool-hero-point {
  border-bottom: 1px solid rgba(216, 223, 218, 0.72);
  padding-bottom: 14px;
}

.tool-hero-point:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

.tool-hero-point-head {
  align-items: center;
  display: flex;
  gap: 10px;
}

.tool-point-icon {
  align-items: center;
  background: rgba(24, 173, 160, 0.08);
  border: 1px solid rgba(24, 173, 160, 0.18);
  border-radius: 999px;
  color: var(--signal-teal);
  display: inline-flex;
  font-size: 0.8rem;
  font-weight: 700;
  height: 22px;
  justify-content: center;
  min-width: 22px;
}

.tool-hero-point:nth-child(2) .tool-point-icon {
  background: rgba(75, 111, 255, 0.08);
  border-color: rgba(75, 111, 255, 0.16);
  color: var(--cobalt);
}

.tool-hero-point:nth-child(3) .tool-point-icon {
  background: var(--coral-soft);
  border-color: rgba(219, 129, 106, 0.22);
  color: var(--coral);
}

.tool-hero-point strong {
  color: var(--deep-mineral);
  font-size: 1rem;
}

.tool-hero-actions,
.tool-next-step-actions {
  display: grid;
  gap: 12px;
}

.tool-hero-actions .text-link-button {
  justify-self: start;
}

.tool-summary-grid {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.tool-context-band {
  align-items: center;
  display: grid;
  gap: 24px;
  grid-template-columns: minmax(0, 0.96fr) minmax(320px, 1.04fr);
}

.tool-context-copy h2 {
  color: var(--deep-mineral);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.9rem, 2.5vw, 2.5rem);
  line-height: 1.04;
  margin: 8px 0 12px;
  max-width: 14ch;
}

.tool-context-copy p {
  color: var(--muted);
  font-size: 0.98rem;
  line-height: 1.66;
  margin: 0;
  max-width: 40ch;
}

.tool-system-visual {
  min-height: 0;
}

.tool-summary-card h3 {
  color: var(--deep-mineral);
  font-size: 1.35rem;
  line-height: 1.15;
  margin: 10px 0 0;
}

.tool-bottom-cta {
  align-items: center;
  background:
    radial-gradient(circle at 100% 0%, rgba(75, 111, 255, 0.07), rgba(75, 111, 255, 0) 34%),
    radial-gradient(circle at 0% 100%, rgba(219, 129, 106, 0.08), rgba(219, 129, 106, 0) 24%),
    linear-gradient(180deg, rgba(252, 253, 251, 0.98), rgba(247, 244, 236, 0.78));
  display: grid;
  gap: 18px;
  grid-template-columns: minmax(0, 1.05fr) minmax(260px, 0.95fr);
}

.tool-bottom-cta-copy h2 {
  color: var(--deep-mineral);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.85rem, 2.6vw, 2.35rem);
  line-height: 1.04;
  margin: 8px 0 10px;
  max-width: 16ch;
}

.tool-bottom-cta-copy p {
  color: var(--muted);
  line-height: 1.62;
  margin: 0;
  max-width: 40ch;
}

.tool-bottom-cta-actions {
  display: grid;
  gap: 12px;
}

.tool-next-step {
  align-items: center;
  display: grid;
  gap: 18px;
  grid-template-columns: minmax(0, 1.1fr) minmax(220px, 0.9fr);
}

.tool-next-step-copy h2 {
  color: var(--deep-mineral);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.9rem, 2.5vw, 2.5rem);
  line-height: 1.04;
  margin: 8px 0 0;
  max-width: 16ch;
}

.text-link-button {
  background: transparent;
  border: 0;
  color: var(--deep-mineral);
  cursor: pointer;
  font-weight: 700;
  padding: 0 2px;
  text-decoration: none;
}

.text-link-button:hover {
  color: var(--cobalt);
}

.hero-visual {
  background:
    radial-gradient(circle at 100% 0%, rgba(75, 111, 255, 0.09), rgba(75, 111, 255, 0) 40%),
    radial-gradient(circle at 6% 92%, rgba(219, 129, 106, 0.08), rgba(219, 129, 106, 0) 24%),
    linear-gradient(180deg, rgba(252, 253, 251, 0.96), rgba(244, 248, 244, 0.95));
  min-height: 410px;
  overflow: hidden;
  padding: 24px;
  position: relative;
}

.hero-visual::before {
  background: radial-gradient(circle, rgba(53, 107, 255, 0.11) 0%, rgba(53, 107, 255, 0) 66%);
  content: "";
  height: 220px;
  position: absolute;
  right: -40px;
  top: -40px;
  width: 220px;
}

.tool-system-visual {
  background:
    radial-gradient(circle at 100% 0%, rgba(75, 111, 255, 0.08), rgba(75, 111, 255, 0) 30%),
    radial-gradient(circle at 0% 100%, rgba(219, 129, 106, 0.08), rgba(219, 129, 106, 0) 24%),
    linear-gradient(180deg, rgba(252, 253, 251, 0.98), rgba(244, 248, 244, 0.94));
  min-height: 392px;
  padding: 18px;
}

.tool-system-visual::before {
  display: none;
}

.tool-system-visual::after {
  display: none;
}

.system-map-canvas {
  background:
    radial-gradient(circle at 18% 16%, rgba(24, 173, 160, 0.12), rgba(24, 173, 160, 0) 22%),
    radial-gradient(circle at 86% 14%, rgba(75, 111, 255, 0.14), rgba(75, 111, 255, 0) 22%),
    radial-gradient(circle at 82% 84%, rgba(219, 129, 106, 0.1), rgba(219, 129, 106, 0) 18%),
    linear-gradient(180deg, rgba(13, 35, 33, 0.98), rgba(16, 47, 44, 0.99));
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 28px;
  box-shadow: 0 20px 48px rgba(9, 22, 20, 0.12);
  min-height: clamp(300px, 48vw, 356px);
  overflow: hidden;
  position: relative;
}

.system-map-canvas::before {
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.035) 1px, transparent 1px);
  background-position: center;
  background-size: 36px 36px;
  content: "";
  inset: 0;
  mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.1));
  position: absolute;
}

.system-map-canvas::after {
  background: linear-gradient(90deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0));
  content: "";
  inset: 0;
  mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.95), rgba(0, 0, 0, 0.2));
  position: absolute;
}

.system-map {
  align-items: center;
  display: grid;
  justify-items: center;
  margin: 0 auto;
  min-height: clamp(290px, 45vw, 344px);
  position: relative;
  width: min(100%, clamp(300px, 72vw, 460px));
  z-index: 1;
  top: 6px;
}

.system-map::before,
.system-map::after {
  content: "";
  position: absolute;
  z-index: 0;
}

.system-map::before {
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 50%;
  height: clamp(228px, 58vw, 286px);
  width: clamp(228px, 58vw, 286px);
}

.system-map::after {
  background: radial-gradient(circle, rgba(24, 173, 160, 0.12) 0%, rgba(24, 173, 160, 0) 70%);
  border-radius: 50%;
  height: clamp(272px, 68vw, 336px);
  width: clamp(272px, 68vw, 336px);
}

.system-core,
.system-node {
  position: absolute;
  z-index: 1;
}

.system-core {
  align-items: center;
  background: rgba(10, 29, 27, 0.88);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 26px;
  box-shadow:
    0 20px 44px rgba(5, 16, 15, 0.26),
    inset 0 0 0 1px rgba(255, 255, 255, 0.02);
  color: var(--surface);
  display: flex;
  flex-direction: column;
  gap: 6px;
  justify-content: center;
  left: 50%;
  min-height: clamp(84px, 18vw, 94px);
  padding: clamp(14px, 2vw, 16px);
  top: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  width: clamp(128px, 28vw, 152px);
  z-index: 2;
}

.system-core span {
  color: rgba(255, 255, 255, 0.68);
  font-size: 0.76rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.system-core strong {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.26rem;
  line-height: 1.08;
}

.system-node {
  align-items: center;
  background: rgba(255, 255, 255, 0.07);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 999px;
  color: rgba(255, 255, 255, 0.92);
  display: inline-flex;
  font-size: clamp(0.68rem, 1.4vw, 0.74rem);
  font-weight: 700;
  justify-content: center;
  line-height: 1.15;
  max-width: clamp(110px, 26vw, 156px);
  min-height: clamp(38px, 8vw, 42px);
  padding: 8px 14px;
  text-align: center;
  white-space: normal;
  z-index: 1;
  backdrop-filter: blur(10px);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.02);
  position: absolute;
}

.system-node::before {
  border-radius: 50%;
  content: "";
  height: 7px;
  left: 12px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 7px;
}

.node-1 { top: 4px; left: 50%; transform: translateX(-50%); }
.node-1::before,
.node-4::before,
.node-7::before { background: var(--signal-teal); }

.node-2 { top: 50px; right: 10px; }
.node-2::before,
.node-5::before,
.node-8::before { background: var(--cobalt); }

.node-3 { top: 122px; right: -10px; }
.node-3::before,
.node-6::before { background: var(--coral); }

.node-4 { bottom: 74px; right: 16px; }
.node-5 { bottom: 6px; left: 50%; transform: translateX(-50%); }
.node-6 { bottom: 74px; left: 14px; }
.node-7 { top: 122px; left: -10px; }
.node-8 { top: 50px; left: 10px; }

.tool-system-visual .system-node {
  padding-left: 24px;
}

.card,
.unlock-card {
  background: rgba(252, 253, 251, 0.86);
  border: 1px solid rgba(201, 210, 205, 0.82);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow);
  backdrop-filter: blur(10px);
  padding: 34px;
}

.hero-panel {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(244, 248, 244, 0.98));
  padding: 22px;
  position: relative;
  overflow: hidden;
}

.landing-proof-band {
  background: linear-gradient(180deg, rgba(252, 253, 251, 0.74), rgba(245, 242, 235, 0.48));
  border: 1px solid rgba(216, 223, 218, 0.88);
  border-radius: 28px;
  margin-top: 8px;
  padding: 34px;
}

.quiet-band {
  padding: 22px;
}

.landing-proof-intro h2 {
  color: var(--deep-mineral);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.7rem, 2.4vw, 2.3rem);
  line-height: 1.02;
  margin: 10px 0 10px;
}

.landing-proof-intro p {
  color: var(--muted);
  line-height: 1.62;
  margin: 0;
  max-width: 56ch;
}

.panel-label {
  color: var(--deep-mineral);
  font-size: 0.82rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.12em;
}

.hero-panel::before {
  content: "";
  position: absolute;
  top: -60px;
  right: -60px;
  width: 180px;
  height: 180px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(15, 175, 138, 0.12) 0%, rgba(15, 175, 138, 0) 72%);
}

.proof-stack {
  display: grid;
  gap: 12px;
  margin-top: 16px;
}

.proof-stack-horizontal {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 18px;
}

.proof-card {
  background: rgba(252, 253, 251, 0.82);
  border: 1px solid rgba(216, 223, 218, 0.78);
  border-radius: 18px;
  padding: 16px 16px 14px;
}

.proof-card:nth-child(2) {
  background: linear-gradient(180deg, rgba(252, 253, 251, 0.88), rgba(247, 243, 236, 0.66));
}

.proof-card p {
  color: var(--muted);
  font-size: 0.94rem;
  line-height: 1.45;
  margin: 8px 0 0;
}

.proof-number {
  color: var(--deep-mineral);
  display: block;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: -0.03em;
  margin-top: 6px;
}

.hero-proof-metrics .proof-card:nth-child(1) .proof-number {
  color: var(--accent-green);
}

.hero-proof-metrics .proof-card:nth-child(2) .proof-number {
  color: var(--coral);
}

.hero-proof-metrics .proof-card:nth-child(3) .proof-number {
  color: var(--cobalt);
}

.proof-footer {
  border-top: 1px solid var(--border-soft);
  color: var(--ink);
  font-size: 0.95rem;
  line-height: 1.5;
  margin-top: 14px;
  padding-top: 14px;
}

.landing-proof-actions {
  display: flex;
  justify-content: flex-start;
  margin-top: 18px;
}

.service-grid,
.track-record-grid,
.testimonial-grid {
  display: grid;
  gap: 18px;
}

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

.service-card,
.track-record-card,
.testimonial-placeholder,
.founder-proof-card {
  height: 100%;
}

.service-card {
  display: grid;
  align-content: start;
  gap: 16px;
}

.service-card-head {
  align-items: center;
  display: flex;
  gap: 14px;
}

.service-card h3 {
  color: var(--deep-mineral);
  font-size: 1.34rem;
  line-height: 1.08;
  margin: 0;
}

.service-list {
  color: var(--muted);
  display: grid;
  gap: 10px;
  line-height: 1.5;
  margin: 0;
  padding-left: 18px;
}

.service-list li::marker {
  color: var(--accent-green);
}

.service-icon {
  align-items: center;
  background: rgba(255, 255, 255, 0.72);
  border: 1px solid rgba(216, 223, 218, 0.78);
  border-radius: 14px;
  display: grid;
  flex: 0 0 auto;
  height: 42px;
  justify-items: center;
  position: relative;
  width: 42px;
}

.service-icon span {
  position: absolute;
}

.service-icon-strategy span:nth-child(1) {
  background: linear-gradient(90deg, rgba(24, 173, 160, 0.95), rgba(75, 111, 255, 0.95));
  border-radius: 999px;
  height: 2px;
  transform: rotate(-35deg);
  width: 18px;
}

.service-icon-strategy span:nth-child(2) {
  border-right: 2px solid var(--cobalt);
  border-top: 2px solid var(--cobalt);
  height: 7px;
  right: 11px;
  top: 10px;
  transform: rotate(10deg);
  width: 7px;
}

.service-icon-strategy span:nth-child(3) {
  background: var(--deep-mineral);
  border-radius: 50%;
  height: 6px;
  left: 10px;
  top: 23px;
  width: 6px;
}

.service-icon-demand span:nth-child(1) {
  background: linear-gradient(90deg, rgba(24, 173, 160, 0.85), rgba(75, 111, 255, 0.9));
  border-radius: 999px;
  height: 2px;
  width: 18px;
}

.service-icon-demand span:nth-child(2) {
  background: var(--signal-teal);
  border-radius: 50%;
  box-shadow: 16px 0 0 var(--cobalt);
  height: 7px;
  left: 10px;
  top: 17px;
  width: 7px;
}

.service-icon-demand span:nth-child(3) {
  background: var(--coral);
  border-radius: 50%;
  height: 7px;
  right: 9px;
  top: 11px;
  width: 7px;
}

.service-icon-ops span:nth-child(1) {
  background: rgba(16, 45, 43, 0.14);
  border-radius: 999px;
  height: 2px;
  top: 13px;
  width: 20px;
}

.service-icon-ops span:nth-child(2) {
  background: linear-gradient(90deg, var(--signal-teal), var(--signal-teal));
  border-radius: 50%;
  box-shadow: 0 11px 0 var(--cobalt);
  height: 8px;
  left: 10px;
  top: 9px;
  width: 8px;
}

.service-icon-ops span:nth-child(3) {
  background: linear-gradient(90deg, var(--coral), var(--coral));
  border-radius: 999px;
  height: 2px;
  top: 24px;
  width: 20px;
}

.founder-panel {
  background: transparent;
  border: 0;
  box-shadow: none;
  display: grid;
  gap: 18px;
  padding: 0;
}

.founder-body {
  display: grid;
  gap: 18px;
}

.founder-intro {
  align-items: start;
  display: grid;
  gap: 26px;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 0.58fr);
  justify-content: start;
  max-width: none;
}

.founder-copy {
  max-width: 38ch;
  padding-top: 0;
}

.founder-portrait {
  align-self: start;
  background: transparent;
  border: 0;
  border-radius: 28px;
  box-shadow: 0 18px 32px rgba(18, 62, 55, 0.08);
  justify-self: end;
  margin: 4px 0 0;
  max-width: 236px;
  overflow: hidden;
  padding: 0;
  width: 100%;
  aspect-ratio: 1 / 1.12;
}

.founder-portrait img {
  border-radius: 28px;
  display: block;
  height: 100%;
  max-height: none;
  min-height: 0;
  object-fit: cover;
  object-position: center 10%;
  width: 100%;
}

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

.founder-proof-card {
  background: linear-gradient(180deg, rgba(252, 253, 251, 0.98), rgba(245, 242, 235, 0.58));
  border: 1px solid rgba(216, 223, 218, 0.84);
  border-radius: 18px;
  padding: 16px;
}

.founder-proof-card h3 {
  font-size: 0.98rem;
  line-height: 1.14;
  max-width: 18ch;
}

.social-proof-section {
  gap: 18px;
}

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

.assessment-callout-actions .text-link-button {
  justify-self: start;
  margin-top: 2px;
}

.social-proof-card {
  display: grid;
  gap: 20px;
}

.social-proof-card p {
  color: var(--deep-mineral);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.08rem;
  font-weight: 400;
  line-height: 1.45;
  margin: 0;
}

.social-proof-meta {
  border-top: 1px solid var(--border-soft);
  color: var(--muted);
  display: grid;
  gap: 4px;
  padding-top: 14px;
}

.social-proof-meta strong {
  color: var(--deep-mineral);
  font-size: 0.92rem;
}

.social-proof-meta span {
  font-size: 0.84rem;
  line-height: 1.45;
}

.assessment-callout,
.final-cta-band {
  align-items: center;
  display: grid;
  gap: 18px;
  grid-template-columns: minmax(0, 1.15fr) minmax(220px, 0.85fr);
}

.assessment-callout {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(247, 244, 236, 0.78));
}

.compact-section .section-header p {
  max-width: 46ch;
}

.narrow-header {
  max-width: 54ch;
  width: 100%;
}

.final-cta-band {
  background: var(--deep-mineral);
  color: var(--surface);
}

.final-cta-band h2,
.final-cta-band p,
.final-cta-band .eyebrow {
  color: var(--surface);
}

.assessment-callout h2,
.final-cta-band h2 {
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.9rem, 3vw, 2.5rem);
  line-height: 1.05;
  margin: 8px 0 10px;
}

.assessment-callout p,
.final-cta-band p {
  line-height: 1.55;
  margin: 0;
}

.assessment-callout-actions,
.final-cta-actions {
  display: grid;
  gap: 12px;
}

.landing-sources {
  border-top: 1px solid var(--border-soft);
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.55;
  margin-top: 22px;
  padding-top: 14px;
}

.landing-sources-title {
  color: var(--deep-mineral);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  margin: 0 0 8px;
  text-transform: uppercase;
}

.landing-sources p {
  margin: 6px 0;
}

.source-list {
  margin: 10px 0 0;
  padding-left: 18px;
}

.source-list li {
  margin: 6px 0;
}

.landing-sources a {
  color: var(--deep-mineral);
}

.signal-list {
  margin: 18px 0 0;
  padding-left: 18px;
  color: var(--ink);
  line-height: 1.65;
}

.signal-list.compact {
  margin-top: 8px;
}

.signal-list li + li {
  margin-top: 10px;
}

.mini-scorecard {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin-top: 18px;
}

.mini-metric,
.hero-metric {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.mini-label {
  color: var(--muted);
  font-size: 0.82rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.hero-metric strong {
  color: var(--surface);
  font-size: clamp(1.7rem, 2vw, 2.3rem);
}

.primary-button,
.secondary-button,
.ghost-button,
.text-button {
  border-radius: 999px;
  cursor: pointer;
  transition: transform 0.15s ease, box-shadow 0.15s ease, opacity 0.15s ease;
}

.button-link {
  align-items: center;
  display: inline-flex;
  justify-content: center;
  text-decoration: none;
}

.primary-button:hover,
.secondary-button:hover,
.ghost-button:hover,
.text-button:hover {
  transform: translateY(-1px);
}

.primary-button {
  background: linear-gradient(135deg, #4375ff 0%, #2f62ec 100%);
  color: var(--surface);
  border: none;
  box-shadow: 0 16px 34px rgba(53, 107, 255, 0.22);
  padding: 15px 24px;
  font-weight: 700;
  letter-spacing: -0.01em;
}

.secondary-button {
  background: rgba(252, 253, 251, 0.9);
  color: var(--deep-mineral);
  border: 1px solid rgba(201, 210, 205, 0.82);
  padding: 15px 24px;
  font-weight: 700;
}

.ghost-button {
  background: transparent;
  color: var(--deep-mineral);
  border: 1px solid rgba(18, 62, 55, 0.18);
  padding: 12px 18px;
}

.text-button {
  border: none;
  background: transparent;
  color: var(--signal-teal);
  font-weight: 700;
  padding: 0;
}

.wide {
  width: 100%;
}

.section-frame {
  padding: 18px 0 8px;
}

.section-frame.narrow {
  max-width: 860px;
  margin: 0 auto;
}

.article-shell {
  display: grid;
  gap: 72px;
}

.article-hero h1 {
  color: var(--deep-mineral);
  font-family: "Iowan Old Style", "Palatino Linotype", "Book Antiqua", Georgia, serif;
  font-size: clamp(2.6rem, 4.4vw, 4.2rem);
  letter-spacing: -0.04em;
  line-height: 0.94;
  margin: 10px 0 16px;
  max-width: 12ch;
}

.section-header {
  margin-bottom: 30px;
}

.section-header h2,
.assessment-topbar h2 {
  color: var(--deep-mineral);
  font-size: clamp(2.2rem, 4vw, 3.2rem);
  line-height: 0.98;
  margin: 10px 0 12px;
  letter-spacing: -0.03em;
}

.intake-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 24px;
}

.intake-main {
  display: grid;
  gap: 20px;
}

.intake-next-steps-card {
  margin-top: 4px;
}

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

.form-card-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  grid-column: 1 / -1;
}

.form-card-head h3 {
  margin: 0;
}

.field {
  display: flex;
  flex-direction: column;
  gap: 9px;
}

.field span {
  color: var(--deep-mineral);
  font-size: 0.95rem;
  font-weight: 700;
}

.field input,
.field textarea,
.field select {
  background: var(--surface-strong);
  border: 1px solid var(--border);
  border-radius: 16px;
  color: var(--ink);
  padding: 14px 16px;
}

.field input:focus,
.field textarea:focus,
.field select:focus {
  outline: 2px solid rgba(15, 175, 138, 0.18);
  border-color: var(--signal-teal);
}

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

.assessment-topbar {
  display: flex;
  justify-content: space-between;
  gap: 24px;
  align-items: end;
  margin-bottom: 18px;
}

.assessment-kicker {
  color: var(--cobalt);
  font-size: 0.9rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  margin-top: 10px;
  text-transform: uppercase;
}

.assessment-subcopy {
  color: var(--muted);
  font-size: 0.98rem;
  line-height: 1.58;
  margin: 0 0 6px;
  max-width: 46ch;
}

.progress-meta {
  min-width: 280px;
}

.progress-track {
  background: var(--soft-mineral);
  border-radius: 999px;
  height: 10px;
  overflow: hidden;
  margin-bottom: 10px;
}

#progress-fill {
  width: 12.5%;
  height: 100%;
  background: linear-gradient(90deg, var(--signal-teal), var(--cobalt));
}

#progress-text {
  color: var(--muted);
  text-align: right;
}

.assessment-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 22px;
  align-items: start;
  padding-bottom: 110px;
}

.assessment-questions {
  display: grid;
  gap: 18px;
}

.assessment-intro {
  background: linear-gradient(180deg, rgba(15, 175, 138, 0.05), rgba(47, 107, 255, 0.03));
  border: 1px solid var(--border-soft);
  border-radius: 18px;
  color: var(--muted);
  line-height: 1.55;
  margin-bottom: 20px;
  padding: 16px 18px;
}

.assessment-intro-minimal {
  background: transparent;
  border: 0;
  border-radius: 0;
  color: var(--muted);
  font-size: 0.95rem;
  line-height: 1.55;
  margin-bottom: 14px;
  padding: 0;
}

.assessment-intro-minimal strong {
  color: var(--deep-mineral);
}

.card-title-row,
.consent-headline {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
}

.question-block {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(247, 244, 236, 0.34));
  border: 1px solid var(--border-soft);
  border-radius: 18px;
  padding: 24px 24px 22px;
}

.question-block.unanswered {
  border-color: rgba(167, 79, 77, 0.34);
  box-shadow: 0 0 0 2px rgba(167, 79, 77, 0.08);
}

.question-block + .question-block {
  margin-top: 0;
}

.question-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: start;
}

.question-copy {
  display: grid;
  flex: 1 1 auto;
  gap: 10px;
  min-width: 0;
}

.question-number {
  align-items: center;
  background: rgba(15, 175, 138, 0.08);
  border-radius: 999px;
  color: var(--signal-teal);
  display: inline-flex;
  font-size: 0.76rem;
  font-weight: 700;
  justify-content: center;
  min-width: 38px;
  padding: 5px 10px;
}

.question-text {
  font-weight: 700;
  color: var(--ink);
  line-height: 1.56;
  margin-bottom: 0;
  max-width: 50ch;
}

.question-caption {
  color: var(--muted);
  font-size: 0.92rem;
  line-height: 1.6;
  margin: 0 0 18px;
}

.scale-row {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
}

.scale-row.answer-options {
  grid-template-columns: 1fr;
}

.scale-legend {
  color: var(--muted);
  display: flex;
  font-size: 0.8rem;
  justify-content: space-between;
  margin: 12px 0 8px;
}

.scale-button {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 14px;
  color: var(--deep-mineral);
  min-height: 52px;
  padding: 12px 10px;
  font-weight: 700;
}

.scale-button.selected {
  background: var(--deep-mineral);
  color: var(--surface);
  border-color: var(--deep-mineral);
}

.answer-option {
  align-items: start;
  display: grid;
  gap: 10px;
  grid-template-columns: auto 1fr;
  min-height: unset;
  padding: 16px 18px;
  text-align: left;
}

.answer-option strong {
  align-items: center;
  background: rgba(47, 107, 255, 0.08);
  border-radius: 999px;
  color: var(--cobalt);
  display: inline-flex;
  font-size: 0.85rem;
  height: 28px;
  justify-content: center;
  min-width: 28px;
}

.answer-option.selected strong {
  background: rgba(255, 255, 255, 0.16);
  color: var(--surface);
}

.info-dot {
  align-items: center;
  appearance: none;
  background: rgba(47, 107, 255, 0.08);
  border: 1px solid rgba(47, 107, 255, 0.18);
  border-radius: 999px;
  color: var(--cobalt);
  cursor: help;
  display: inline-flex;
  font-size: 0.85rem;
  font-weight: 700;
  height: 28px;
  justify-content: center;
  min-width: 28px;
  position: relative;
  z-index: 30;
}

.info-dot::after {
  background: var(--ink);
  border-radius: 12px;
  color: #fff;
  content: attr(data-tooltip);
  font-size: 0.82rem;
  font-weight: 400;
  line-height: 1.45;
  opacity: 0;
  padding: 12px 14px;
  pointer-events: none;
  position: absolute;
  right: 0;
  bottom: calc(100% + 10px);
  text-align: left;
  transform: translateY(8px);
  transition: opacity 0.16s ease, transform 0.16s ease;
  width: min(280px, 60vw);
  z-index: 60;
}

.info-dot:hover::after,
.info-dot:focus-visible::after {
  opacity: 1;
  transform: translateY(0);
}

.assessment-footer-actions {
  position: sticky;
  bottom: 16px;
  z-index: 12;
  margin-top: 0;
  padding: 14px;
  border: 1px solid rgba(18, 62, 55, 0.12);
  border-radius: 20px;
  background: rgba(251, 252, 249, 0.94);
  backdrop-filter: blur(10px);
  box-shadow: 0 12px 28px rgba(18, 62, 55, 0.08);
  justify-content: space-between;
  align-items: center;
}

.assessment-footer-actions .secondary-button,
.assessment-footer-actions .primary-button {
  min-width: 168px;
}

.review-layout,
.consult-grid,
.results-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.review-grid,
.benchmark-list,
.category-bars,
.flag-list {
  display: grid;
  gap: 14px;
}

.bar-meta {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-end;
}

.bar-score {
  color: var(--deep-mineral);
  font-weight: 700;
}

.review-item,
.benchmark-item,
.bar-item,
.flag-item {
  background: var(--surface);
  border: 1px solid var(--border-soft);
  border-radius: 16px;
  padding: 16px;
}

.review-item-head,
.bar-label-row,
.card-headline {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: center;
}

.review-item h4,
.bar-label-row strong,
.card h3 {
  margin: 0;
}

.results-header {
  align-items: start;
  display: block;
}

.hero-scorecard {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  background: var(--deep-mineral);
  margin-bottom: 24px;
}

.result-diagnosis-card {
  margin-bottom: 24px;
}

.results-summary {
  color: var(--ink);
  font-size: 0.96rem;
  line-height: 1.72;
  margin: 12px 0 0;
  max-width: 58ch;
}

.result-inline-note {
  border-top: 1px solid var(--border-soft);
  margin-top: 18px;
  padding-top: 16px;
}

#score-value {
  color: var(--signal-teal);
}

#band-value {
  color: var(--surface);
}

.stack-list {
  margin: 16px 0 0;
  padding-left: 18px;
  line-height: 1.7;
}

.priority-cards,
.roadmap-cards {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}

.results-grid-primary {
  margin-bottom: 24px;
}

.results-grid-secondary {
  margin: 24px 0;
}

.result-readout-card {
  margin: 24px 0;
}

.priority-card,
.roadmap-card {
  background: var(--surface);
  border: 1px solid var(--border-soft);
  border-radius: 18px;
  padding: 16px 18px;
}

.priority-card-head,
.roadmap-card-head {
  align-items: center;
  display: flex;
  gap: 14px;
  justify-content: space-between;
  margin-bottom: 8px;
}

.priority-rank {
  align-items: center;
  background: rgba(15, 175, 138, 0.09);
  border-radius: 999px;
  color: var(--signal-teal);
  display: inline-flex;
  font-size: 0.82rem;
  font-weight: 700;
  justify-content: center;
  min-width: 34px;
  padding: 6px 10px;
}

.archetype-name {
  color: var(--deep-mineral);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.55rem;
  font-weight: 700;
  margin-bottom: 12px;
}

.benchmark-track,
.bar-track {
  background: var(--soft-mineral);
  border-radius: 999px;
  height: 12px;
  overflow: hidden;
  margin-top: 10px;
}

.benchmark-track-merged {
  position: relative;
}

.bar-track {
  height: 14px;
}

.benchmark-you,
.bar-fill {
  height: 100%;
  background: var(--deep-mineral);
}

.benchmark-benchmark {
  height: 100%;
  background: var(--cobalt);
}

.benchmark-overlay {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin-top: 10px;
  font-size: 0.9rem;
  color: var(--muted);
}

.benchmark-subsection {
  background: linear-gradient(180deg, rgba(247, 244, 236, 0.55), rgba(255, 255, 255, 0.8));
  border: 1px solid var(--border-soft);
  border-radius: 18px;
  margin-top: 22px;
  padding: 18px;
}

.benchmark-intro {
  margin-top: 8px;
}

.benchmark-list-compact {
  gap: 12px;
  margin-top: 14px;
}

.benchmark-item-head {
  align-items: flex-start;
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  justify-content: space-between;
}

.benchmark-delta {
  color: var(--cobalt);
  font-size: 0.84rem;
  font-weight: 700;
  white-space: nowrap;
}

.benchmark-compare-track {
  background: rgba(18, 62, 55, 0.08);
  border-radius: 999px;
  height: 10px;
  margin-top: 12px;
  position: relative;
}

.benchmark-you-line {
  background: var(--deep-mineral);
  border-radius: 999px;
  height: 100%;
}

.benchmark-marker {
  background: var(--cobalt);
  border-radius: 999px;
  height: 18px;
  left: 0;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 4px;
}

.bar-fill.priority {
  background: linear-gradient(90deg, var(--signal-teal), var(--deep-mineral));
}

.bar-fill.strength {
  background: linear-gradient(90deg, var(--deep-mineral), var(--accent-green));
}

.consult-bridge {
  margin-top: 24px;
  padding: 36px;
}

.results-secondary-disclosure {
  margin-top: 8px;
  padding: 0;
}

.results-secondary-disclosure summary {
  color: var(--deep-mineral);
  cursor: pointer;
  font-weight: 700;
  list-style: none;
  padding: 22px 24px;
}

.results-secondary-disclosure summary::-webkit-details-marker {
  display: none;
}

.results-secondary-disclosure[open] summary {
  padding-bottom: 8px;
}

.results-secondary-disclosure .results-grid {
  padding: 0 24px 24px;
}

.card-nested {
  box-shadow: none;
}

.consent-card {
  margin-top: 22px;
}

.form-consent-row {
  grid-column: 1 / -1;
  margin-top: 2px;
}

.checkbox-row {
  align-items: start;
  display: grid;
  grid-template-columns: 18px 1fr;
  gap: 14px;
  line-height: 1.6;
  margin-top: 14px;
}

.checkbox-row input {
  accent-color: var(--signal-teal);
  margin-right: 2px;
  margin-top: 3px;
}

.screen-message {
  background: rgba(167, 79, 77, 0.08);
  border: 1px solid rgba(167, 79, 77, 0.18);
  border-radius: 14px;
  color: var(--danger);
  display: none;
  margin-top: 16px;
  padding: 14px 16px;
}

.screen-message.active {
  display: block;
}

.intake-guide-card h3,
.assessment-guide-card h3 {
  color: var(--deep-mineral);
  font-size: 1.3rem;
  margin: 12px 0 0;
}

.intake-steps {
  display: grid;
  gap: 12px;
  margin-top: 16px;
}

.intake-step {
  align-items: start;
  display: grid;
  gap: 12px;
  grid-template-columns: 30px 1fr;
}

.intake-step span {
  align-items: center;
  background: rgba(47, 107, 255, 0.08);
  border-radius: 999px;
  color: var(--cobalt);
  display: inline-flex;
  font-size: 0.9rem;
  font-weight: 700;
  height: 30px;
  justify-content: center;
  width: 30px;
}

.intake-step p {
  color: var(--muted);
  line-height: 1.55;
  margin: 2px 0 0;
}

.advisor-block + .advisor-block {
  margin-top: 18px;
}

.small-copy {
  color: var(--muted);
  line-height: 1.55;
  margin: 0;
}

.consult-grid {
  align-items: start;
}

.consult-form-card {
  margin-top: 22px;
}

.consult-form-intro {
  margin: 0 0 18px;
}

.consult-response-note {
  margin: 0 0 16px;
}

.results-cta-strip {
  align-items: center;
  display: grid;
  gap: 18px;
  grid-template-columns: minmax(0, 1.2fr) minmax(260px, 0.8fr);
  margin-top: 22px;
}

.results-cta-strip h3 {
  margin: 8px 0 10px;
}

.results-cta-actions {
  justify-content: flex-end;
  margin-top: 0;
}

.field input[aria-invalid="true"],
.field select[aria-invalid="true"],
.field textarea[aria-invalid="true"] {
  border-color: rgba(167, 79, 77, 0.5);
  box-shadow: 0 0 0 2px rgba(167, 79, 77, 0.08);
}

.chip {
  display: inline-flex;
  align-items: center;
  padding: 8px 12px;
  border-radius: 999px;
  font-size: 0.84rem;
  font-weight: 700;
}

.chip-neutral {
  background: rgba(47, 107, 255, 0.08);
  color: var(--cobalt);
}

.visible-link-button {
  color: rgba(245, 248, 251, 0.9);
}

.visible-link-button:hover {
  color: #ffffff;
}

.visible-ghost-button {
  background: rgba(255, 255, 255, 0.06);
  border-color: rgba(255, 255, 255, 0.22);
  color: #f5f8fb;
}

.visible-ghost-button:hover {
  background: rgba(255, 255, 255, 0.1);
  color: #ffffff;
}

.proof-role {
  color: var(--muted);
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.35;
  margin: 6px 0 8px;
  text-transform: uppercase;
}

.proof-accent {
  color: var(--deep-mineral);
  font-weight: 700;
}

.site-legal-note {
  border-top: 1px solid rgba(15, 26, 32, 0.08);
  color: var(--muted);
  font-size: 0.78rem;
  line-height: 1.55;
  margin-top: 42px;
  padding: 18px 2px 8px;
}

.site-legal-note p {
  margin: 0;
  max-width: 92ch;
}

@media (max-width: 1100px) {
  .site-topbar,
  .founder-panel,
  .assessment-callout,
  .final-cta-band,
  .hero-grid,
  .proof-stack-horizontal,
  .service-grid,
  .track-record-grid,
  .assessment-layout,
  .results-grid,
  .review-layout,
  .consult-grid,
  .method-grid,
  .intake-layout {
    grid-template-columns: 1fr;
  }

  .results-header,
  .assessment-topbar,
  .topbar {
    flex-direction: column;
    align-items: stretch;
  }

  .hero-scorecard,
  .mini-scorecard,
  .form-grid {
    grid-template-columns: 1fr;
  }

  .hero-proof-metrics,
  .social-proof-grid {
    grid-template-columns: 1fr;
  }

  .results-cta-strip {
    grid-template-columns: 1fr;
  }

  .results-cta-actions {
    justify-content: flex-start;
  }

  .hero-banner {
    max-width: 100%;
  }

  .hero-banner {
    min-height: 288px;
  }

  .hero-grid {
    max-width: none;
  }

  .founder-copy {
    padding-top: 0;
  }

  .founder-intro {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .founder-portrait {
    justify-self: start;
    max-width: 220px;
  }

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

@media (max-width: 760px) {
  .app-shell {
    padding: 14px;
  }

  .site-topbar {
    align-items: start;
    flex-direction: column;
  }

  .site-wordmark {
    align-items: flex-start;
  }

  .site-logo {
    height: 46px;
    width: 46px;
  }

  .site-nav {
    flex-wrap: wrap;
  }

  .site-nav-link {
    font-size: 0.84rem;
  }

  .hero-grid {
    gap: 16px;
    margin-top: 4px;
  }

  .hero-offer-lockup {
    gap: 4px;
    margin-bottom: 22px;
  }

  .brand-row {
    align-items: flex-start;
    gap: 8px;
  }

  .brand-name {
    font-size: 1.1rem;
    line-height: 1.08;
  }

  .brand-audience {
    font-size: 0.82rem;
  }

  .hero-copy h1 {
    font-size: clamp(2.2rem, 11vw, 2.8rem);
    line-height: 0.96;
    max-width: none;
  }

  .homepage-hero-copy,
  .hero-support-copy {
    font-size: 0.98rem;
    line-height: 1.54;
    max-width: none;
  }

  .hero-actions {
    align-items: center;
    gap: 12px;
    margin-top: 16px;
  }

  .homepage-stack {
    gap: 40px;
  }

  .hero-banner {
    min-height: 272px;
  }

  .assessment-callout-actions .text-link-button {
    margin-top: 0;
  }

  .hero-banner-stage {
    padding: 24px;
  }

  .hero-banner-head strong {
    font-size: 1.18rem;
  }

  .hero-signal-board {
    grid-template-columns: 1fr;
  }

  .hero-signal-column {
    min-height: auto;
  }

  .hero-signal-bars {
    height: 44px;
  }

  .hero-banner-note {
    max-width: none;
  }

  .founder-panel {
    gap: 16px;
  }

  .founder-intro {
    gap: 16px;
  }

  .founder-portrait {
    border-radius: 24px;
    max-width: 220px;
  }

  .founder-portrait img {
    max-height: 360px;
    min-height: 0;
  }

  .hero-proof-board {
    padding: 20px;
  }

  .hero-proof-metric {
    min-height: auto;
  }

  .card,
  .unlock-card,
  .landing-proof-band {
    padding: 20px;
  }

  .service-grid,
  .track-record-grid,
  .testimonial-grid,
  .hero-proof-metrics {
    gap: 14px;
  }

  .hero-proof-band {
    grid-template-columns: 1fr;
  }

  .tool-hero,
  .tool-context-band,
  .tool-summary-grid,
  .tool-next-step,
  .tool-bottom-cta {
    grid-template-columns: 1fr;
  }

  .tool-hero {
    gap: 20px;
  }

  .system-map {
    min-height: 364px;
    width: min(100%, 380px);
  }

  .system-map::before {
    height: 252px;
    width: 252px;
  }

  .system-map::after {
    height: 300px;
    width: 300px;
  }

  .system-node {
    max-width: 136px;
    min-height: 40px;
    padding: 8px 12px;
  }

  .node-2 { right: 6px; }
  .node-3 { right: -2px; }
  .node-4 { right: 8px; }
  .node-6 { left: 8px; }
  .node-7 { left: -2px; }
  .node-8 { left: 6px; }

  .landing-proof-intro h2 {
    font-size: 1.65rem;
  }

  .landing-proof-intro p,
  .proof-card p,
  .proof-footer,
  .landing-sources {
    font-size: 0.9rem;
    line-height: 1.5;
  }

  .landing-proof-actions {
    margin-top: 16px;
  }

  .landing-proof-actions .primary-button {
    width: 100%;
  }

  .landing-sources {
    font-size: 0.78rem;
  }

  .section-frame {
    padding: 12px 0 6px;
  }

  .section-header {
    margin-bottom: 20px;
  }

  .section-header h2,
  .assessment-topbar h2 {
    font-size: clamp(1.9rem, 9vw, 2.35rem);
    line-height: 1.02;
    margin: 8px 0 10px;
  }

  .section-header p,
  .assessment-subcopy {
    font-size: 0.94rem;
    line-height: 1.52;
  }

  .form-card-head {
    align-items: flex-start;
    flex-direction: column;
  }

  .field input,
  .field textarea,
  .field select {
    padding: 13px 14px;
  }

  .intake-step {
    gap: 10px;
    grid-template-columns: 28px 1fr;
  }

  .assessment-topbar {
    gap: 14px;
    margin-bottom: 14px;
  }

  .progress-meta {
    min-width: 0;
  }

  .scale-row {
    grid-template-columns: repeat(5, 1fr);
    gap: 8px;
  }

  .scale-row.answer-options {
    grid-template-columns: 1fr;
  }

  .scale-button {
    min-height: 48px;
    padding: 12px 8px;
  }

  .answer-option {
    padding: 14px 16px;
  }

  .question-block + .question-block {
    margin-top: 16px;
    padding-top: 16px;
  }

  .question-head {
    align-items: flex-start;
    gap: 10px;
  }

  .question-text {
    font-size: 0.96rem;
    line-height: 1.5;
    margin-bottom: 10px;
  }

  .assessment-layout {
    padding-bottom: 104px;
  }

  .assessment-footer-actions {
    bottom: 10px;
    display: grid;
    gap: 10px;
    grid-template-columns: minmax(96px, 112px) minmax(0, 1fr);
    padding: 12px;
  }

  .assessment-footer-actions .secondary-button,
  .assessment-footer-actions .primary-button {
    min-width: 0;
    width: 100%;
  }

  .hero-scorecard {
    gap: 12px;
  }

  .hero-metric strong {
    font-size: 1.35rem;
  }

  .result-diagnosis-card,
  .result-readout-card,
  .results-secondary-disclosure summary,
  .consult-bridge {
    margin-bottom: 18px;
  }

  .assessment-callout h2,
  .final-cta-band h2 {
    font-size: 1.7rem;
  }

  .results-summary,
  .stack-list,
  .signal-list {
    line-height: 1.55;
  }

  .priority-card-head,
  .roadmap-card-head,
  .card-headline,
  .card-title-row,
  .review-item-head,
  .bar-label-row {
    align-items: flex-start;
    flex-direction: column;
    gap: 8px;
  }

  .footer-actions,
  .hero-actions,
  .result-actions,
  .topbar-actions {
    flex-direction: column;
  }

  .primary-button,
  .secondary-button,
  .ghost-button {
    width: 100%;
  }

  .info-dot::after {
    left: auto;
    right: 0;
    width: min(260px, calc(100vw - 64px));
  }
}

@media (max-width: 480px) {
  .site-topbar {
    gap: 12px;
  }

  .brand-badge {
    font-size: 0.72rem;
    padding: 5px 9px;
  }

  .hero-copy h1 {
    font-size: 2.05rem;
  }

  .system-map {
    min-height: 332px;
    width: min(100%, 320px);
  }

  .system-map::before {
    height: 224px;
    width: 224px;
  }

  .system-map::after {
    height: 270px;
    width: 270px;
  }

  .system-node {
    font-size: 0.63rem;
    max-width: 108px;
    min-height: 36px;
    padding: 6px 8px;
  }

  .node-1 { top: 8px; }
  .node-2 { top: 54px; right: 2px; }
  .node-3 { top: 116px; right: -6px; }
  .node-4 { bottom: 66px; right: 6px; }
  .node-5 { bottom: 8px; }
  .node-6 { bottom: 66px; left: 6px; }
  .node-7 { top: 116px; left: -6px; }
  .node-8 { top: 54px; left: 2px; }

  .scale-button {
    min-height: 46px;
    font-size: 0.96rem;
  }

  .assessment-footer-actions {
    grid-template-columns: 1fr;
  }

  .assessment-footer-actions .secondary-button {
    order: 2;
  }

  .assessment-footer-actions .primary-button {
    order: 1;
  }
}

/* V85: Direction 02 / Signal Frame overhaul */
:root {
  --bg: #edf1ee;
  --surface: #f8faf8;
  --surface-strong: #ffffff;
  --border: #c8d1cd;
  --border-soft: #d7e0dc;
  --ink: #0f1a20;
  --muted: #63727b;
  --deep-mineral: #0d1720;
  --accent-green: #1d8c82;
  --stone-green: #7e8f88;
  --soft-mineral: #e0e7e3;
  --cream: #f5f7f4;
  --signal-teal: #24c4b5;
  --cobalt: #4d6dff;
  --coral: #ee8e75;
  --coral-soft: rgba(238, 142, 117, 0.16);
  --danger: #bc6055;
  --shadow: 0 24px 54px rgba(8, 19, 26, 0.08);
  --radius-lg: 28px;
  --radius-md: 22px;
  --radius-sm: 14px;
}

body {
  position: relative;
  background:
    radial-gradient(circle at 12% 14%, rgba(36, 196, 181, 0.08), rgba(36, 196, 181, 0) 26%),
    radial-gradient(circle at 88% 10%, rgba(77, 109, 255, 0.09), rgba(77, 109, 255, 0) 24%),
    linear-gradient(180deg, #f7f9f6 0%, #eef2ef 52%, #e8eeeb 100%);
  color: var(--ink);
  font-family: "Avenir Next", "Segoe UI", "Helvetica Neue", Arial, sans-serif;
}

body::before {
  content: "";
  position: fixed;
  inset: 0;
  background:
    repeating-linear-gradient(90deg, rgba(14, 29, 36, 0.038) 0, rgba(14, 29, 36, 0.038) 1px, transparent 1px, transparent 88px),
    repeating-linear-gradient(180deg, rgba(14, 29, 36, 0.026) 0, rgba(14, 29, 36, 0.026) 1px, transparent 1px, transparent 88px);
  mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.52), rgba(0, 0, 0, 0.12));
  pointer-events: none;
  z-index: 0;
}

.app-shell {
  position: relative;
  z-index: 1;
}

.site-topbar {
  margin-bottom: 30px;
  padding-bottom: 18px;
  border-bottom: 1px solid rgba(15, 26, 32, 0.08);
}

.site-logo {
  width: 56px;
  height: 56px;
  border-radius: 18px;
  box-shadow: 0 16px 34px rgba(8, 19, 26, 0.14);
}

.brand-kicker,
.eyebrow,
.mini-label,
.assessment-kicker {
  color: #56746f;
  font-family: "Avenir Next", "Segoe UI", sans-serif;
  font-weight: 700;
  letter-spacing: 0.16em;
}

.site-title {
  display: none;
}

.site-wordmark-copy {
  gap: 0;
}

.site-nav-button {
  background: rgba(255, 255, 255, 0.45);
  border: 1px solid rgba(15, 26, 32, 0.09);
  border-radius: 16px;
  color: var(--muted);
  padding: 12px 18px;
  box-shadow: none;
}

.site-nav-button.active {
  background: rgba(13, 23, 32, 0.92);
  border-color: rgba(13, 23, 32, 0.92);
  color: #f8fbff;
  box-shadow: 0 16px 28px rgba(13, 23, 32, 0.12);
}

.hero-copy h1,
.section-header h2,
.assessment-topbar h2,
.tool-hero-copy h1,
.article-hero h1,
.landing-proof-intro h2,
.service-card h3,
.founder-proof-card h3,
.archetype-name,
.hero-banner-head strong,
.hero-signal-core strong {
  font-family: "Avenir Next", "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  font-weight: 700;
}

.hero-copy h1 {
  font-size: clamp(2.9rem, 4vw, 4.7rem);
  line-height: 0.92;
  letter-spacing: -0.055em;
  max-width: 11.5ch;
}

.homepage-stack {
  gap: 104px;
}

.homepage-section {
  gap: 30px;
}

.hero-grid {
  grid-template-columns: minmax(700px, 1fr) minmax(380px, 0.68fr);
  gap: 26px;
}

.hero-frame-full {
  display: grid;
  grid-template-columns: minmax(0, 0.58fr) minmax(0, 1.2fr);
  gap: 64px;
  align-items: stretch;
  padding: 44px 46px 46px;
  background:
    radial-gradient(circle at 12% 20%, rgba(36, 196, 181, 0.18), rgba(36, 196, 181, 0) 28%),
    radial-gradient(circle at 90% 16%, rgba(77, 109, 255, 0.18), rgba(77, 109, 255, 0) 26%),
    linear-gradient(180deg, #0d1720 0%, #11212a 100%);
  border: 1px solid rgba(77, 109, 255, 0.14);
  box-shadow: 0 32px 62px rgba(8, 19, 26, 0.22);
}

.hero-frame-copy {
  align-self: center;
  max-width: 25rem;
}

.hero-qualifier-row {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 18px;
}

.hero-qualifier-copy {
  color: rgba(236, 243, 249, 0.62);
  font-size: 0.82rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.hero-frame-copy h1 {
  color: #f5f9fd;
  font-size: clamp(2.7rem, 3.7vw, 4rem);
  line-height: 0.96;
  letter-spacing: -0.05em;
  margin-bottom: 16px;
  max-width: 9ch;
}

.hero-head-line {
  display: block;
}

.hero-head-line:first-child {
  white-space: nowrap;
}

.hero-frame-copy .homepage-hero-copy,
.hero-frame-copy .hero-helper-line {
  color: rgba(236, 243, 249, 0.72);
}

.hero-frame-copy .homepage-hero-copy {
  max-width: 25ch;
}

.hero-frame-visual {
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

.card,
.unlock-card {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.88), rgba(247, 250, 248, 0.8));
  border: 1px solid rgba(15, 26, 32, 0.08);
  box-shadow: var(--shadow);
  backdrop-filter: blur(14px);
}

.hero-frame-full.card {
  background:
    radial-gradient(circle at 12% 20%, rgba(36, 196, 181, 0.18), rgba(36, 196, 181, 0) 28%),
    radial-gradient(circle at 90% 16%, rgba(77, 109, 255, 0.18), rgba(77, 109, 255, 0) 26%),
    linear-gradient(180deg, #0d1720 0%, #11212a 100%);
  border: 1px solid rgba(77, 109, 255, 0.14);
  box-shadow: 0 32px 62px rgba(8, 19, 26, 0.22);
}

.landing-proof-band {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.78), rgba(245, 248, 246, 0.6));
  border-radius: 30px;
  padding: 36px;
}

.proof-card,
.service-card,
.founder-proof-card,
.social-proof-card,
.tool-hero-sidecard,
.priority-card,
.roadmap-card {
  position: relative;
  overflow: hidden;
}

.proof-card::before,
.service-card::before,
.founder-proof-card::before,
.social-proof-card::before,
.tool-hero-sidecard::before,
.benchmark-subsection::before,
.question-block::before,
.priority-card::before,
.roadmap-card::before {
  content: "";
  position: absolute;
  inset: 0 auto auto 0;
  width: 100%;
  height: 3px;
  background: linear-gradient(90deg, var(--signal-teal), var(--cobalt), var(--coral));
  opacity: 0.9;
}

.signal-diagram-shell {
  width: 100%;
  max-width: min(100%, 660px);
}

.signal-diagram-stage {
  position: relative;
  aspect-ratio: 2.12 / 1;
  min-height: clamp(220px, 32vw, 292px);
  width: 100%;
  overflow: hidden;
  border-radius: 28px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  background:
    radial-gradient(circle at 18% 18%, rgba(36, 196, 181, 0.08), rgba(36, 196, 181, 0) 26%),
    radial-gradient(circle at 88% 16%, rgba(77, 109, 255, 0.09), rgba(77, 109, 255, 0) 24%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.035), rgba(255, 255, 255, 0.015));
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.02);
}

.signal-diagram-stage::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.035) 0, rgba(255, 255, 255, 0.035) 1px, transparent 1px, transparent 88px),
    repeating-linear-gradient(180deg, rgba(255, 255, 255, 0.03) 0, rgba(255, 255, 255, 0.03) 1px, transparent 1px, transparent 88px);
  opacity: 0.28;
}

.signal-art {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}

.signal-sequence-card {
  position: absolute;
  z-index: 1;
  display: grid;
  gap: 4px;
  max-width: clamp(110px, 17vw, 170px);
}

.signal-sequence-card strong {
  color: rgba(255, 255, 255, 0.94);
  font-size: 0.92rem;
  line-height: 1.04;
  letter-spacing: -0.02em;
}

.signal-sequence-card span {
  color: rgba(255, 255, 255, 0.58);
  font-size: 0.68rem;
  line-height: 1.4;
  letter-spacing: 0.01em;
}

.seq-discovery {
  left: clamp(20px, 7vw, 74px);
  top: clamp(18px, 4vw, 38px);
}

.seq-demand {
  left: clamp(110px, 32vw, 284px);
  bottom: clamp(18px, 3vw, 28px);
}

.seq-roi {
  right: clamp(18px, 5vw, 52px);
  top: clamp(22px, 6vw, 62px);
}

.proof-number {
  font-family: "Avenir Next", "Segoe UI", sans-serif;
  font-weight: 700;
  font-size: 2.2rem;
  letter-spacing: -0.05em;
}

.service-card {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.88), rgba(246, 249, 247, 0.78));
  gap: 18px;
}

.service-card h3 {
  font-size: 1.14rem;
  letter-spacing: -0.03em;
  line-height: 1.14;
}

.gtm-european-complexity {
  background:
    radial-gradient(circle at 100% 0%, rgba(77, 109, 255, 0.1), rgba(77, 109, 255, 0) 26%),
    radial-gradient(circle at 0% 100%, rgba(36, 196, 181, 0.1), rgba(36, 196, 181, 0) 22%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(246, 249, 247, 0.84));
}

.gtm-european-grid {
  align-items: start;
  display: grid;
  gap: 28px;
  grid-template-columns: minmax(0, 1.15fr) minmax(280px, 0.85fr);
}

.gtm-european-sidecard {
  background: rgba(16, 45, 43, 0.04);
  border: 1px solid rgba(16, 45, 43, 0.08);
  border-radius: 20px;
  display: grid;
  gap: 14px;
  padding: 22px 22px 20px;
}

.gtm-european-sidecard .mini-label {
  color: var(--deep-mineral);
}

.gtm-european-list {
  color: var(--muted);
  display: grid;
  gap: 12px;
  line-height: 1.55;
  margin: 0;
  padding-left: 18px;
}

.gtm-european-list li::marker {
  color: var(--cobalt);
}

.service-icon {
  background: rgba(13, 23, 32, 0.02);
  border-color: rgba(77, 109, 255, 0.18);
  border-radius: 12px;
}

.founder-intro {
  grid-template-columns: minmax(0, 1.15fr) minmax(220px, clamp(240px, 28vw, 360px));
  gap: clamp(48px, 5vw, 72px);
  align-items: center;
  max-width: none;
}

.founder-spotlight {
  max-width: none;
  margin: 0;
  padding: 0;
}

.founder-copy {
  max-width: min(100%, 41rem);
}

.founder-copy h2 {
  font-size: clamp(2.35rem, 2.7vw, 3.05rem);
  line-height: 0.98;
  max-width: none;
  margin-bottom: 20px;
}

.founder-copy h2 span {
  display: block;
  white-space: nowrap;
}

  .founder-copy p {
    max-width: 50ch;
    font-size: 0.98rem;
    line-height: 1.62;
}

.founder-portrait-column {
  display: flex;
  justify-content: flex-end;
}

.founder-portrait {
  max-width: clamp(240px, 30vw, 320px);
  width: min(100%, clamp(240px, 30vw, 320px));
  min-height: 0;
  aspect-ratio: 0.9 / 1;
  border: 1px solid rgba(15, 26, 32, 0.08);
  padding: 10px;
  border-radius: 28px;
  background:
    radial-gradient(circle at 18% 18%, rgba(36, 196, 181, 0.1), rgba(36, 196, 181, 0) 28%),
    radial-gradient(circle at 86% 16%, rgba(77, 109, 255, 0.1), rgba(77, 109, 255, 0) 22%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(246, 249, 247, 0.78));
  box-shadow: 0 26px 46px rgba(13, 23, 32, 0.08);
}

.founder-portrait img {
  border-radius: 20px;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 8%;
}

.founder-body {
  gap: 56px;
  max-width: none;
  margin: 0;
}

.founder-proof-card h3 {
  font-size: 1rem;
  max-width: 19ch;
  margin-bottom: 10px;
}

.founder-proof-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
  margin-top: 0;
  width: 100%;
}

.social-proof-card p {
  font-size: 1rem;
  line-height: 1.6;
  color: var(--ink);
}

.assessment-callout,
.tool-hero-sidecard {
  background:
    radial-gradient(circle at 100% 0%, rgba(77, 109, 255, 0.18), rgba(77, 109, 255, 0) 34%),
    radial-gradient(circle at 0% 100%, rgba(36, 196, 181, 0.14), rgba(36, 196, 181, 0) 28%),
    linear-gradient(180deg, #0f1a22 0%, #13262d 100%);
  color: #f5f8fb;
  border: 1px solid rgba(77, 109, 255, 0.14);
  box-shadow: 0 26px 48px rgba(8, 19, 26, 0.18);
}

.tool-hero-point {
  border-bottom-color: rgba(255, 255, 255, 0.08);
}

.tool-hero-point strong,
.assessment-callout h3,
.assessment-callout strong,
.assessment-callout .mini-label {
  color: #f6fbff;
}

.tool-hero-point p,
.tool-hero-sidecard p,
.tool-hero-sidecard .small-copy,
  .assessment-callout p {
  color: rgba(255, 255, 255, 0.72);
}

@media (max-width: 1180px) {
  .gtm-european-grid {
    grid-template-columns: 1fr;
  }
}

.tool-point-icon {
  background: rgba(255, 255, 255, 0.06);
  border-color: rgba(255, 255, 255, 0.12);
}

.assessment-topbar {
  margin-bottom: 24px;
  padding-bottom: 14px;
  border-bottom: 1px solid rgba(15, 26, 32, 0.08);
}

.question-block,
.review-item,
.benchmark-item,
.bar-item,
.flag-item,
.priority-card,
.roadmap-card,
.benchmark-subsection {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.9), rgba(246, 249, 247, 0.8));
}

.question-block,
.benchmark-subsection,
.result-readout-card,
.assessment-questions {
  overflow: visible;
}

.assessment-questions.card {
  padding: 38px;
}

.question-head,
.card-title-row {
  position: relative;
  z-index: 4;
}

.question-number,
.priority-rank {
  background: rgba(77, 109, 255, 0.08);
  color: var(--cobalt);
}

.scale-button.selected {
  background: linear-gradient(135deg, #0d1720 0%, #14303a 100%);
  border-color: #14303a;
}

.assessment-footer-actions {
  background: rgba(250, 252, 251, 0.82);
  border-color: rgba(15, 26, 32, 0.08);
  box-shadow: 0 18px 38px rgba(8, 19, 26, 0.1);
}

.primary-button {
  background: linear-gradient(135deg, #4d6dff 0%, #3157dd 100%);
  box-shadow: 0 18px 34px rgba(77, 109, 255, 0.2);
  border-radius: 16px;
}

.secondary-button,
.ghost-button {
  border-radius: 16px;
}

.hero-scorecard {
  background:
    radial-gradient(circle at 14% 18%, rgba(36, 196, 181, 0.18), rgba(36, 196, 181, 0) 24%),
    radial-gradient(circle at 88% 18%, rgba(77, 109, 255, 0.16), rgba(77, 109, 255, 0) 22%),
    linear-gradient(180deg, #0d1720 0%, #13252d 100%);
  border: 1px solid rgba(77, 109, 255, 0.14);
  border-radius: 26px;
}

.hero-scorecard .card {
  background: rgba(255, 255, 255, 0.03);
  border-color: rgba(255, 255, 255, 0.08);
  box-shadow: none;
}

.benchmark-compare-track {
  background: rgba(13, 23, 32, 0.08);
}

.benchmark-you-line {
  background: linear-gradient(90deg, var(--signal-teal), #0f6f67);
}

.benchmark-marker {
  background: var(--cobalt);
}

.final-cta-band {
  background:
    radial-gradient(circle at 85% 18%, rgba(77, 109, 255, 0.24), rgba(77, 109, 255, 0) 26%),
    linear-gradient(180deg, #0d1720 0%, #102029 100%);
  border: 1px solid rgba(77, 109, 255, 0.16);
}

@media (max-width: 1180px) {
  .hero-grid,
  .tool-hero,
  .hero-proof-band,
  .founder-intro,
  .assessment-callout,
  .final-cta-band {
    grid-template-columns: 1fr;
  }

  .hero-frame-full {
    grid-template-columns: 1fr;
  }

  .signal-diagram-stage {
    min-height: 300px;
  }

  .founder-intro {
    grid-template-columns: 1fr;
    gap: 34px;
    max-width: none;
  }

  .founder-copy {
    max-width: none;
  }

  .founder-copy p {
    max-width: 42ch;
  }

  .founder-portrait {
    max-width: 280px;
    min-height: 0;
  }

  .founder-portrait-column {
    justify-content: flex-start;
  }
}

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

  .founder-proof-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .founder-proof-card h3 {
    max-width: none;
  }

  .hero-copy h1,
  .tool-hero-copy h1 {
    max-width: 9.8ch;
  }

  .hero-frame-full {
    padding: 28px 24px 24px;
  }

  .hero-frame-copy {
    max-width: none;
  }

  .hero-frame-copy h1 {
    max-width: 8.8ch;
  }

  .hero-head-line:first-child {
    white-space: normal;
  }

  .signal-diagram-stage {
    min-height: 260px;
  }

  .signal-sequence-card strong {
    font-size: 0.84rem;
  }

  .signal-sequence-card span {
    font-size: 0.62rem;
  }

  .seq-discovery {
    left: 20px;
    top: 18px;
  }

  .seq-roi {
    right: 20px;
    top: 24px;
  }

  .seq-demand {
    left: 24px;
    bottom: 18px;
  }

  .founder-copy h2 {
    font-size: clamp(2.1rem, 7vw, 2.6rem);
  }
}

@media (max-width: 640px) {
  .site-nav {
    width: 100%;
    flex-wrap: wrap;
  }

  .site-nav-button {
    flex: 1 1 auto;
    justify-content: center;
  }

  .hero-copy h1,
  .tool-hero-copy h1 {
    font-size: clamp(2.5rem, 11vw, 3.4rem);
  }

  .hero-frame-full {
    gap: 24px;
    padding: 24px 20px 22px;
  }

  .hero-frame-copy h1 {
    font-size: clamp(2.3rem, 12vw, 3rem);
    max-width: 7.8ch;
  }

  .hero-frame-copy .homepage-hero-copy {
    max-width: 18ch;
  }

  .signal-diagram-stage {
    min-height: 220px;
  }

  .signal-sequence-card {
    max-width: 108px;
    gap: 3px;
  }

  .signal-sequence-card strong {
    font-size: 0.78rem;
  }

  .signal-sequence-card span {
    font-size: 0.58rem;
    line-height: 1.3;
  }

  .seq-discovery {
    left: 16px;
    top: 14px;
  }

  .seq-demand {
    left: 16px;
    bottom: 14px;
  }

  .seq-roi {
    right: 16px;
    top: 18px;
  }

  .founder-intro {
    gap: 26px;
  }

  .founder-copy h2 {
    font-size: clamp(1.95rem, 10vw, 2.45rem);
    line-height: 1;
    margin-bottom: 16px;
  }

  .founder-copy h2 span {
    white-space: normal;
  }

  .founder-copy p {
    max-width: none;
    font-size: 0.95rem;
    line-height: 1.6;
  }

  .founder-portrait-column {
    justify-content: center;
  }

  .founder-portrait {
    max-width: 240px;
    width: min(100%, 240px);
    padding: 8px;
    border-radius: 24px;
  }
}

/* v92 anti-clipping / breathing-room overrides */
body,
p,
li,
label,
.results-summary,
.lede,
.section-header p,
.assessment-subcopy,
.assessment-intro,
.assessment-intro-minimal,
.question-caption,
.question-text,
.hero-frame-copy .homepage-hero-copy,
.hero-frame-copy .hero-helper-line,
.founder-copy p,
.social-proof-card p {
  line-height: 1.6;
}

h1,
h2,
h3,
.section-header h2,
.assessment-topbar h2,
.hero-frame-copy h1,
.founder-copy h2,
.service-card h3,
.founder-proof-card h3 {
  line-height: 1.22;
}

.hero-copy h1,
.hero-frame-copy h1 {
  margin-bottom: 2rem;
}

.section-header h2,
.assessment-topbar h2,
.founder-copy h2,
.tool-hero-copy h1,
.tool-context-copy h2,
.tool-bottom-cta-copy h2,
.tool-next-step-copy h2 {
  margin-bottom: 1.5rem;
}

p,
.results-summary,
.lede,
.section-header p,
.assessment-subcopy,
.assessment-intro,
.assessment-intro-minimal,
.hero-frame-copy .homepage-hero-copy,
.hero-frame-copy .hero-helper-line,
.founder-copy p,
.question-caption {
  max-width: 65ch;
}

.hero-panel,
.proof-card,
.service-card,
.founder-proof-card,
.social-proof-card,
.tool-hero-sidecard,
.benchmark-subsection,
.question-block,
.assessment-questions,
.founder-copy,
.section-header {
  overflow: visible;
}

.question-block,
.assessment-questions.card,
.service-card,
.founder-proof-card,
.social-proof-card,
.proof-card,
.tool-hero-sidecard {
  padding: 2rem;
}

.assessment-questions.card,
.question-block {
  padding-bottom: calc(2rem + 6px);
}

.question-block {
  display: grid;
  row-gap: 1.25rem;
}

.question-copy {
  gap: 1rem;
}

.question-text {
  margin-bottom: 0;
}

.question-number {
  margin-bottom: 0;
}

.question-caption,
.scale-legend {
  margin-bottom: 0;
}

.assessment-intro {
  margin-bottom: 2rem;
}

.founder-proof-grid {
  align-self: stretch;
  margin-left: 0;
  margin-right: 0;
  padding-left: 0;
  padding-right: 0;
}

.result-inline-note {
  margin: 2.5rem 0 0;
  padding-top: 2rem;
}

#tip-cards .roadmap-card {
  padding: 2rem;
}

@media (min-width: 981px) {
  .founder-body {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 340px);
    column-gap: clamp(40px, 4vw, 68px);
    row-gap: 2rem;
    align-items: start;
  }

  .founder-intro {
    display: contents;
  }

  .founder-copy {
    grid-column: 1;
    grid-row: 1;
    max-width: 42rem;
  }

  .founder-portrait-column {
    grid-column: 2;
    grid-row: 1 / span 2;
    align-self: start;
    justify-content: flex-end;
  }

  .founder-proof-grid {
    grid-column: 1 / -1;
    grid-row: 2;
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
}

.screen-assessment .assessment-intro.assessment-intro-minimal {
  margin-bottom: 2rem !important;
}

.screen-assessment .assessment-questions.card {
  padding: 2rem !important;
}

.screen-assessment .question-block {
  padding: 1.85rem 2rem 2rem !important;
  row-gap: 1rem !important;
}

.screen-assessment .question-head,
.screen-assessment .question-text,
.screen-assessment .question-number,
.screen-assessment .scale-row {
  margin: 0 !important;
}

.screen-assessment .question-copy {
  gap: 0.75rem !important;
}

.screen-assessment .scale-legend {
  margin: 0 0 0.2rem !important;
}

.screen-results .card > h3 {
  margin-bottom: 1.35rem;
}

.screen-results .result-diagnosis-card {
  padding: 2.4rem 2rem !important;
}

.screen-results .result-diagnosis-card .eyebrow {
  margin-bottom: 1.25rem;
}

.screen-results .results-summary {
  margin-top: 0;
  max-width: 62ch;
}

.screen-results .result-inline-note {
  margin: 2.5rem 0 0 !important;
  padding-top: 2rem !important;
}

.screen-results .result-inline-note .eyebrow {
  margin-bottom: 1rem;
}

.screen-results .priority-cards,
.screen-results .roadmap-cards {
  gap: 1.5rem;
  margin-top: 1.25rem;
}

.screen-results .priority-card,
.screen-results .roadmap-card,
.screen-results #tip-cards .roadmap-card {
  min-height: 0;
  padding: 2rem 2rem 1.95rem !important;
}

.screen-results .priority-card p,
.screen-results .roadmap-card p {
  max-width: 62ch;
}

/* Final hard overrides for live UI alignment and spacing */
.founder-panel .founder-body,
.founder-panel .founder-intro,
.founder-panel .founder-proof-grid {
  margin-left: 0 !important;
  padding-left: 0 !important;
}

.founder-panel .founder-proof-grid {
  width: 100% !important;
}

.founder-panel .founder-proof-grid .track-record-card:first-child,
.founder-panel .founder-proof-grid .founder-proof-card:first-child {
  margin-left: 0 !important;
}

@media (max-width: 900px) {
  .founder-panel .founder-proof-grid {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  .founder-panel .founder-proof-card h3 {
    max-width: none !important;
  }
}

#screen-assessment .assessment-intro,
#screen-assessment .assessment-intro.assessment-intro-minimal {
  margin-bottom: 2.5rem !important;
  padding-top: 1.5rem !important;
}

#screen-assessment .question-block {
  display: grid !important;
  row-gap: 1.25rem !important;
}

#screen-assessment .question-text,
#screen-assessment .question-number {
  margin-bottom: 0 !important;
}

#screen-results .result-inline-note {
  margin-top: 3rem !important;
  margin-bottom: 3rem !important;
  padding-top: 2rem !important;
}

#screen-results .result-inline-note + .result-inline-note,
#screen-results .result-diagnosis-card + .result-inline-note,
#screen-results .result-inline-note + .card {
  margin-top: 3rem !important;
}

#screen-results .card,
#screen-results .proof-card,
#screen-results .social-proof-card,
#screen-results .priority-card,
#screen-results .roadmap-card,
#screen-results #tip-cards .roadmap-card {
  padding: 2.5rem !important;
}

/* v99 conversion and layout refinements */
.visually-hidden {
  border: 0;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

.service-card-head {
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.service-card-title {
  align-items: center;
  display: flex;
  gap: 14px;
  min-width: 0;
}

.service-card-title h3,
.service-card h3 {
  max-width: 22ch;
}

.service-info-dot {
  flex: 0 0 auto;
  margin-top: 2px;
}

.field-hint {
  color: var(--muted);
  display: block;
  font-size: 0.83rem;
  line-height: 1.55;
  margin-top: 10px;
}

.consult-offer-card {
  position: relative;
}

.chip-promo {
  background: rgba(75, 111, 255, 0.1);
  border-color: rgba(75, 111, 255, 0.18);
  color: var(--cobalt);
}

.consult-offer-copy {
  color: var(--deep-mineral);
  margin: 10px 0 16px;
}

.question-copy {
  align-items: start;
}

.question-number {
  background: transparent !important;
  border-radius: 0 !important;
  color: var(--cobalt) !important;
  display: inline !important;
  font-size: 0.9rem !important;
  font-weight: 800 !important;
  margin: 0 8px 0 0 !important;
  min-width: 0 !important;
  padding: 0 !important;
}

.question-text {
  line-height: 1.48;
  margin: 0;
  max-width: 52ch;
}

.question-caption {
  margin: 0;
  max-width: 58ch;
}

.founder-proof-grid {
  gap: 20px !important;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)) !important;
}

.founder-proof-card {
  display: grid;
  gap: 12px;
  min-width: 0;
  padding: 24px !important;
}

.founder-proof-card h3 {
  font-size: 1.28rem !important;
  line-height: 1.16 !important;
  margin: 0;
  max-width: none !important;
}

.founder-proof-card p {
  margin: 0;
}

.proof-role {
  font-size: 0.84rem;
  line-height: 1.45;
  margin: 0;
}

.results-cta-actions,
.result-actions {
  align-items: center;
}

@media (max-width: 900px) {
  .service-card-title h3,
  .service-card h3 {
    max-width: none;
  }
}

@media (max-width: 640px) {
  .service-card-head {
    gap: 12px;
  }

  .service-card-title {
    align-items: flex-start;
  }

  .service-card-title .service-icon {
    margin-top: 2px;
  }

  .service-info-dot {
    margin-top: 0;
  }

  .founder-proof-card {
    padding: 22px !important;
  }

  .founder-proof-card h3 {
    font-size: 1.18rem !important;
  }
}

#screen-results .results-summary,
#screen-results .lede,
#screen-results .result-diagnosis-card p,
#screen-results .priority-card p,
#screen-results .roadmap-card p,
.content-block p,
.founder-copy p {
  max-width: 65ch !important;
}

/* v94 assessment simplification and results hierarchy */
.tool-system-visual {
  min-height: 0;
  padding: 18px;
}

.module-map-canvas {
  background:
    radial-gradient(circle at 20% 18%, rgba(24, 173, 160, 0.15), rgba(24, 173, 160, 0) 24%),
    radial-gradient(circle at 84% 14%, rgba(75, 111, 255, 0.16), rgba(75, 111, 255, 0) 24%),
    radial-gradient(circle at 82% 84%, rgba(219, 129, 106, 0.12), rgba(219, 129, 106, 0) 18%),
    linear-gradient(180deg, rgba(13, 35, 33, 0.98), rgba(16, 47, 44, 0.99));
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 28px;
  box-shadow: 0 20px 48px rgba(9, 22, 20, 0.12);
  min-height: clamp(320px, 44vw, 380px);
  overflow: hidden;
  padding: 28px;
  position: relative;
}

.module-map-canvas::before {
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.03) 1px, transparent 1px);
  background-size: 34px 34px;
  content: "";
  inset: 0;
  position: absolute;
}

.module-map {
  display: grid;
  gap: 18px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-template-rows: auto auto;
  position: relative;
  z-index: 1;
}

.module-map::before {
  border-top: 1px solid rgba(255, 255, 255, 0.12);
  content: "";
  left: 16%;
  position: absolute;
  right: 16%;
  top: calc(50% + 14px);
}

.module-map-core {
  align-items: start;
  background: rgba(10, 29, 27, 0.84);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 26px;
  box-shadow:
    0 18px 40px rgba(5, 16, 15, 0.22),
    inset 0 0 0 1px rgba(255, 255, 255, 0.02);
  color: var(--surface);
  display: grid;
  gap: 10px;
  grid-column: 1 / -1;
  padding: 24px 26px;
  position: relative;
}

.module-map-core span {
  color: rgba(255, 255, 255, 0.66);
  font-size: 0.78rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.module-map-core strong {
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.7rem, 3.2vw, 2.2rem);
  line-height: 1.05;
}

.module-map-core p,
.module-map-card p {
  color: rgba(255, 255, 255, 0.78);
  line-height: 1.55;
  margin: 0;
  max-width: none;
}

.module-map-card {
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 24px;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.03);
  display: grid;
  gap: 10px;
  min-height: 176px;
  padding: 20px 20px 18px;
  position: relative;
}

.module-map-card::before {
  background: currentColor;
  border-radius: 999px;
  content: "";
  height: 10px;
  left: 20px;
  position: absolute;
  top: -5px;
  width: 10px;
}

.module-map-card strong {
  color: rgba(255, 255, 255, 0.96);
  font-size: 1.02rem;
  line-height: 1.35;
}

.module-map-index {
  color: rgba(255, 255, 255, 0.62);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.08em;
}

.module-map-card-strategy {
  color: #2fc7bb;
}

.module-map-card-demand {
  color: #5b76ff;
}

.module-map-card-ops {
  color: #f08a72;
}

#screen-intake .intake-layout {
  margin-bottom: 8px;
}

#screen-assessment .assessment-questions.card {
  padding: 1.75rem 1.75rem 2rem !important;
}

#screen-assessment .question-block {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.97), rgba(247, 244, 236, 0.45));
  border-radius: 20px;
  padding: 1.6rem 1.7rem 1.7rem !important;
  row-gap: 1.1rem !important;
}

#screen-assessment .question-head {
  align-items: flex-start;
  gap: 18px;
  margin-bottom: 0;
}

#screen-assessment .question-copy {
  gap: 0.85rem !important;
  max-width: none;
}

#screen-assessment .question-caption {
  margin: 0 !important;
}

#screen-assessment .question-text {
  font-size: 1.02rem;
  line-height: 1.62;
  max-width: none;
}

#screen-assessment .answer-options {
  gap: 12px;
}

#screen-assessment .answer-option {
  align-items: flex-start;
  gap: 14px;
  grid-template-columns: 34px minmax(0, 1fr);
  padding: 16px 18px;
}

#screen-assessment .answer-option-label {
  align-items: center;
  align-self: start;
  background: rgba(47, 107, 255, 0.08);
  border-radius: 999px;
  color: var(--cobalt);
  display: inline-flex;
  font-size: 0.82rem;
  font-weight: 600;
  height: 30px;
  justify-content: center;
  min-width: 30px;
}

#screen-assessment .answer-option-copy {
  color: inherit;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.55;
}

#screen-assessment .answer-option.selected .answer-option-label {
  background: rgba(255, 255, 255, 0.18);
  color: var(--surface);
}

#screen-assessment .answer-option.selected .answer-option-copy {
  color: var(--surface);
}

#screen-results .hero-scorecard {
  align-items: start;
  column-gap: 16px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  row-gap: 18px;
  margin-bottom: 20px;
}

#screen-results .hero-metric {
  min-width: 0;
}

#screen-results .hero-metric strong {
  display: block;
  line-height: 1.2;
}

#screen-results .hero-scorecard-note {
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  color: rgba(255, 255, 255, 0.82);
  grid-column: 1 / -1;
  line-height: 1.6;
  margin: 0;
  max-width: 70ch;
  padding-top: 18px;
}

#screen-results .result-diagnosis-card {
  margin-bottom: 20px;
}

#screen-results .result-readout-card {
  margin: 0 0 20px;
}

#screen-results .results-grid-primary {
  margin-bottom: 20px;
}

#screen-results .consult-bridge {
  margin-top: 20px;
}

@media (max-width: 980px) {
  .module-map {
    grid-template-columns: 1fr;
  }

  .module-map::before {
    display: none;
  }

  .module-map-card {
    min-height: 0;
  }

  #screen-results .hero-scorecard {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .module-map-canvas {
    min-height: 0;
    padding: 20px;
  }

  .module-map-core,
  .module-map-card {
    padding: 18px;
  }

  #screen-assessment .assessment-questions.card {
    padding: 1.2rem 1rem 1.5rem !important;
  }

  #screen-assessment .question-block {
    padding: 1.2rem 1rem 1.25rem !important;
  }

  #screen-assessment .question-head {
    gap: 10px;
  }

  #screen-assessment .answer-option {
    grid-template-columns: 30px minmax(0, 1fr);
    padding: 14px;
  }

  #screen-assessment .answer-option-copy {
    font-size: 0.96rem;
  }

  #screen-results .hero-scorecard {
    grid-template-columns: 1fr;
  }
}
