:root {
  --cream: #E9D9B5;
  --cream-deep: #D8C49B;
  --indigo: #12121A;
  --indigo-2: #34314E;
  --cyan: #5A1424;
  --orange: #9C774B;
  --ink-soft: #514C5D;
  --line: #BBA982;
  --white: #F7F0E3;
  --max: 1240px;
  --reading: 70ch;
  --shadow: 0 18px 44px rgba(18,18,26, .11);
  --ease: cubic-bezier(.2, .8, .2, 1);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 104px; }
body {
  margin: 0; padding-top: 84px;
  color: var(--indigo);
  background: var(--cream);
  font-family: Inter, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 17px;
  line-height: 1.62;
  text-rendering: optimizeLegibility;
}
body.menu-open { overflow: hidden; }
::selection { color: var(--cream); background: var(--indigo); }
:focus-visible { outline: 3px solid var(--orange); outline-offset: 4px; }
a { color: inherit; text-decoration-thickness: 1px; text-underline-offset: .22em; }
img, svg { display: block; max-width: 100%; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }

/* Editorial wrapping: headings hold a composed silhouette; prose avoids stranded final words. */
:where(h1, h2, h3, h4, blockquote, .statement, .workflow-payoff strong) {
  text-wrap: balance;
  overflow-wrap: normal;
}
:where(p, li, summary, figcaption, .lead, .section-intro, .day-line span, .catalog-shift) {
  text-wrap: pretty;
  overflow-wrap: break-word;
}

.skip-link {
  position: fixed; left: 16px; top: -80px; z-index: 100;
  padding: 12px 18px; color: var(--cream); background: var(--indigo);
}
.skip-link:focus { top: 16px; }
.site-header {
  position: fixed; top: 0; left: 0; right: 0; z-index: 50;
  border-bottom: 1px solid rgba(18,18,26, .16);
  background: rgba(233,217,181, .96);
}
.nav-wrap {
  width: min(calc(100% - 40px), var(--max)); min-height: 84px; margin: auto;
  display: flex; align-items: center; justify-content: space-between; gap: 28px;
}
.brand { display: inline-flex; align-items: center; gap: 12px; text-decoration: none; min-height: 48px; }
.brand img { width: 47px; height: 47px; }
.brand-text { line-height: 1; letter-spacing: .17em; font-size: .83rem; }
.brand-text span { display: block; margin-top: 7px; font-size: .64rem; letter-spacing: .35em; }
.desktop-nav { display: flex; align-items: center; gap: clamp(16px, 2vw, 30px); }
.desktop-nav a { font-size: .9rem; font-weight: 650; text-decoration: none; }
.desktop-nav a:not(.button):hover, .desktop-nav a[aria-current="page"]:not(.button) { text-decoration: underline; text-decoration-color: var(--orange); text-decoration-thickness: 2px; }
.nav-group { position: relative; }
.nav-group > button { min-height: 44px; padding: 0; border: 0; color: inherit; background: transparent; font-size: .9rem; font-weight: 650; }
.nav-group > button::after { content: ""; display: inline-block; width: 7px; height: 7px; margin: 0 0 3px 8px; border-right: 1.5px solid; border-bottom: 1.5px solid; transform: rotate(45deg); }
.nav-menu {
  position: absolute; top: calc(100% + 12px); left: -18px; min-width: 220px;
  padding: 10px; border: 1px solid var(--line); background: var(--white); box-shadow: var(--shadow);
  opacity: 0; visibility: hidden; transform: translateY(-5px); transition: .18s var(--ease);
}
.nav-group:hover .nav-menu, .nav-group:focus-within .nav-menu, .nav-group.open .nav-menu { opacity: 1; visibility: visible; transform: none; }
.nav-menu a { display: block; padding: 9px 10px; }
.menu-toggle { display: none; min-width: 76px; min-height: 46px; border: 1px solid var(--indigo); color: var(--indigo); background: transparent; font-weight: 750; }
.mobile-nav { display: none; }

.button {
  display: inline-flex; min-height: 48px; align-items: center; justify-content: center; gap: 10px;
  padding: 11px 20px; border: 1px solid var(--indigo); color: var(--cream); background: var(--indigo);
  font-size: .91rem; font-weight: 750; text-decoration: none; transition: background .18s var(--ease), color .18s var(--ease), transform .18s var(--ease);
}
.button:hover { color: var(--indigo); background: var(--cyan); transform: translateY(-2px); }
.button.orange { border-color: var(--orange); background: var(--orange); }
.button.orange:hover { color: var(--cream); background: #7B5C39; }
.button.ghost { color: var(--indigo); background: transparent; }
.button.ghost:hover { background: var(--cream-deep); }

.wrap { width: min(calc(100% - 40px), var(--max)); margin-inline: auto; }
.narrow { width: min(calc(100% - 40px), 820px); margin-inline: auto; }
.hero { min-height: 720px; display: grid; align-items: center; padding: 84px 0 92px; overflow: hidden; }
.hero-grid { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(380px, .85fr); gap: clamp(52px, 7vw, 110px); align-items: center; }
.hero h1, .page-hero h1 { max-width: 12ch; margin: 0 0 28px; font-size: clamp(3.1rem, 6.5vw, 6rem); line-height: .98; letter-spacing: -.04em; font-weight: 520; text-wrap: balance; }
.hero h1 em { color: var(--orange); font-style: normal; }
.lead { max-width: 62ch; margin: 0; color: var(--ink-soft); font-size: clamp(1.1rem, 1.8vw, 1.35rem); line-height: 1.55; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 36px; }
.hero-note { margin-top: 22px; font-size: .88rem; color: var(--ink-soft); }
.courtyard-stage { position: relative; aspect-ratio: 1; display: grid; place-items: center; }
.courtyard-stage::before, .courtyard-stage::after { content: ""; position: absolute; inset: 7%; border: 1px solid var(--line); }
.courtyard-stage::after { inset: 18%; border-color: rgba(18,18,26,.15); transform: rotate(45deg); }
.courtyard-stage img { position: relative; z-index: 2; width: 68%; background: var(--cream); }
.stage-word { position: absolute; z-index: 3; padding: 5px 9px; color: var(--ink-soft); background: var(--cream); font-size: .68rem; font-weight: 720; letter-spacing: .16em; text-transform: uppercase; }
.stage-word.one { top: 4%; left: 44%; }.stage-word.two { right: 1%; top: 47%; }.stage-word.three { bottom: 3%; left: 41%; }.stage-word.four { left: 0; top: 47%; }

.section { padding: clamp(80px, 10vw, 140px) 0; }
.section.dark { color: var(--cream); background: var(--indigo); }
.section.white { background: var(--white); }
.section-title { max-width: 19ch; margin: 0 0 24px; font-size: clamp(2.25rem, 4.5vw, 4.4rem); line-height: 1.04; letter-spacing: -.035em; font-weight: 520; text-wrap: balance; }
.section-intro { max-width: var(--reading); margin: 0 0 54px; color: var(--ink-soft); font-size: 1.18rem; }
.dark .section-intro { color: #DED2BB; }
.orange-rule { width: 150px; height: 3px; margin: 28px 0; border: 0; background: var(--orange); }
.role-list { border-top: 1px solid var(--line); }
.role-row {
  display: grid; grid-template-columns: 1fr 1.6fr auto; gap: 36px; align-items: center;
  min-height: 144px; padding: 28px 0; border-bottom: 1px solid var(--line); text-decoration: none;
}
.role-row h3 { margin: 0; font-size: clamp(1.45rem, 2.5vw, 2.15rem); font-weight: 560; }
.role-row p { margin: 0; color: var(--ink-soft); }
.role-row .arrow { width: 48px; height: 48px; display: grid; place-items: center; border: 1px solid var(--indigo); font-size: 1.4rem; transition: .18s var(--ease); }
.role-row:hover .arrow { color: var(--indigo); border-color: var(--cyan); background: var(--cyan); transform: translateX(5px); }
.pathway { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(56px, 8vw, 120px); align-items: start; }
.sticky-copy { position: sticky; top: 130px; }
.lifecycle { border-top: 1px solid rgba(233,217,181,.3); }
.life-step { display: grid; grid-template-columns: 120px 1fr; gap: 24px; padding: 30px 0; border-bottom: 1px solid rgba(233,217,181,.3); }
.life-step strong { color: var(--cyan); font-size: .78rem; letter-spacing: .14em; text-transform: uppercase; }
.life-step h3 { margin: 0 0 8px; font-size: 1.55rem; font-weight: 560; }
.life-step p { margin: 0; color: #DED2BB; }
.statement { display: grid; grid-template-columns: 1.1fr .9fr; gap: 80px; align-items: end; }
.statement blockquote { margin: 0; font-size: clamp(2.2rem, 4.8vw, 4.8rem); line-height: 1.06; letter-spacing: -.035em; font-weight: 500; }
.statement aside { padding-top: 28px; border-top: 3px solid var(--orange); color: var(--ink-soft); }

.page-hero { padding: 98px 0 86px; border-bottom: 1px solid var(--line); }
.page-hero .hero-layout { display: grid; grid-template-columns: 1fr .65fr; gap: 80px; align-items: end; }
.page-hero h1 { max-width: 15ch; font-size: clamp(3rem, 6vw, 5.6rem); }
.page-hero .role-name { display: block; margin-bottom: 22px; color: var(--orange); font-size: .84rem; font-weight: 780; letter-spacing: .16em; text-transform: uppercase; }
.page-hero .hero-aside { padding: 30px 0 0; border-top: 1px solid var(--indigo); }
.page-hero .hero-aside p { margin-top: 0; color: var(--ink-soft); }
.feature-lines { border-top: 1px solid var(--line); }
.feature-line { display: grid; grid-template-columns: minmax(220px,.8fr) 1.4fr; gap: 70px; padding: 38px 0; border-bottom: 1px solid var(--line); }
.feature-line h3 { margin: 0; font-size: 1.45rem; font-weight: 580; }
.feature-line p { margin: 0; color: var(--ink-soft); }
.outcome-band { color: var(--cream); background: var(--indigo); }
.outcomes { display: grid; grid-template-columns: repeat(3,1fr); }
.outcome { min-height: 250px; padding: 38px; border-right: 1px solid rgba(233,217,181,.25); }
.outcome:last-child { border-right: 0; }
.outcome .signal { width: 22px; height: 4px; margin-bottom: 56px; background: var(--cyan); }
.outcome:nth-child(2) .signal { background: var(--orange); }
.outcome h3 { margin: 0 0 14px; font-size: 1.4rem; font-weight: 570; }
.outcome p { margin: 0; color: #DED2BB; }

.pricing-controls { display: flex; flex-wrap: wrap; gap: 22px 36px; margin-top: 34px; }
.pricing-control { min-width: 0; margin: 0; padding: 0; border: 0; }
.pricing-control legend { margin-bottom: 9px; color: var(--ink-soft); font-size: .78rem; font-weight: 760; letter-spacing: .1em; text-transform: uppercase; }
.pricing-toggle { display: inline-flex; gap: 4px; padding: 4px; border: 1px solid var(--line); background: var(--white); }
.pricing-toggle button { min-height: 44px; padding: 8px 16px; border: 0; color: var(--indigo); background: transparent; font-weight: 720; }
.pricing-toggle button span { margin-left: 6px; color: #676172; font-size: .72rem; letter-spacing: .04em; text-transform: uppercase; }
.pricing-toggle button[aria-pressed="true"] { color: var(--cream); background: var(--indigo); }
.pricing-toggle button[aria-pressed="true"] span { color: var(--cyan); }
.billing-note { min-height: 1.5em; margin: 16px 0 0; color: var(--ink-soft); }
.price-groups { display: grid; grid-template-columns: 1fr 1fr; gap: 70px; margin-top: 56px; }
.price-table { width: 100%; border-collapse: collapse; font-variant-numeric: tabular-nums; }
.price-table th, .price-table td { padding: 18px 0; border-bottom: 1px solid var(--line); text-align: left; }
.price-table th:last-child, .price-table td:last-child { text-align: right; }
.price-table th { font-size: .8rem; letter-spacing: .11em; text-transform: uppercase; }
.price-table td:last-child { font-size: 1.2rem; font-weight: 760; }
.price-table td:last-child > span { white-space: nowrap; }
.price-table .price-period, .base-plan .price span { font-size: .72em; font-weight: 650; letter-spacing: 0; }
.price-table .annual-total, .base-plan .annual-total { display: block; margin-top: 3px; color: var(--ink-soft); font-size: .72rem; font-weight: 560; letter-spacing: 0; }
.price-table .founding { display: none; color: var(--orange); }
body.show-founding .price-table .retail { display: none; }
body.show-founding .price-table .founding { display: inline; }
.base-plans { display: grid; grid-template-columns: repeat(3,1fr); margin-top: 70px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.base-plan { padding: 34px; border-right: 1px solid var(--line); }
.base-plan:last-child { border-right: 0; }
.base-plan h3 { margin: 0 0 10px; font-size: 1.45rem; }.base-plan .price { margin: 20px 0; font-size: 2.3rem; font-weight: 580; letter-spacing: -.03em; font-variant-numeric: tabular-nums; }.base-plan p { color: var(--ink-soft); }
.base-plan .price.is-early { color: var(--orange); }
.seat-note { margin: 14px 0 0; color: var(--ink-soft); font-size: .86rem; }

.founding-banner { position: relative; overflow: hidden; color: var(--cream); background: var(--indigo); }
.founding-banner::after { content: "100K"; position: absolute; right: -2vw; bottom: -9vw; color: rgba(90,20,36,.08); font-size: min(30vw, 420px); font-weight: 800; line-height: 1; letter-spacing: -.08em; }
.founding-banner .wrap { position: relative; z-index: 1; }
.founding-banner .section-title { max-width: 16ch; }
.founding-banner p { max-width: 60ch; color: #DED2BB; font-size: 1.15rem; }
.faq { border-top: 1px solid var(--line); }
.faq details { border-bottom: 1px solid var(--line); }
.faq summary { min-height: 74px; display: flex; align-items: center; justify-content: space-between; gap: 20px; font-size: 1.13rem; font-weight: 700; cursor: pointer; list-style: none; }
.faq summary::-webkit-details-marker { display: none; }
.faq summary::after { content: "+"; color: var(--orange); font-size: 1.5rem; font-weight: 400; }
.faq details[open] summary::after { content: "−"; }
.faq details p { max-width: var(--reading); margin: 0 0 28px; color: var(--ink-soft); }

.form-shell { display: grid; grid-template-columns: .72fr 1.28fr; gap: 80px; align-items: start; }
.form-panel { padding: clamp(28px,5vw,56px); color: var(--cream); background: var(--indigo); box-shadow: var(--shadow); }
.form-panel label, .form-panel legend { font-weight: 700; }
.form-panel label { display: block; margin-bottom: 22px; }
.form-panel input, .form-panel select, .form-panel textarea { width: 100%; min-height: 52px; margin-top: 7px; padding: 10px 12px; border: 1px solid #877F90; border-radius: 0; color: var(--indigo); background: var(--white); }
.form-panel input::placeholder { color: #676172; opacity: 1; }
.form-panel fieldset { margin: 0 0 24px; padding: 0; border: 0; }
.form-panel legend { margin-bottom: 10px; }
.choice-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 8px; }
.choice { position: relative; }
.choice input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.choice span { min-height: 50px; display: grid; place-items: center; padding: 8px; border: 1px solid #877F90; text-align: center; font-size: .86rem; }
.choice input:checked + span { color: var(--indigo); border-color: var(--cyan); background: var(--cyan); }
.choice input:focus-visible + span { outline: 3px solid var(--orange); outline-offset: 3px; }
.check { display: grid !important; grid-template-columns: 24px 1fr; gap: 10px; align-items: start; font-weight: 400 !important; }
.check input { width: 20px; min-height: 20px; margin: 3px 0 0; accent-color: var(--cyan); }
.form-message { display: none; margin-bottom: 24px; padding: 18px; color: var(--indigo); background: var(--cyan); font-weight: 700; }
.form-message.show { display: block; }
.form-message.error { color: var(--cream); background: #9d2f18; }
.form-trap { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.form-panel .button:disabled { cursor: wait; opacity: .72; transform: none; }
.fine-print { color: #DED2BB; font-size: .82rem; }

.cta-band { padding: 76px 0; color: var(--cream); background: var(--orange); }
.cta-row { display: flex; align-items: center; justify-content: space-between; gap: 40px; }
.cta-row h2 { max-width: 16ch; margin: 0; font-size: clamp(2rem,4vw,4rem); line-height: 1.04; letter-spacing: -.035em; font-weight: 520; }
.cta-row .button { flex: 0 0 auto; }
.site-footer { padding: 70px 0 30px; color: var(--cream); background: #12121A; }
.footer-grid { display: grid; grid-template-columns: 1.4fr repeat(3,1fr); gap: 54px; }
.footer-brand { max-width: 260px; }.footer-brand p { color: #A9A092; }
.footer-col h2 { margin: 0 0 16px; color: var(--cyan); font-size: .77rem; letter-spacing: .14em; text-transform: uppercase; }
.footer-col a { display: block; width: fit-content; margin: 8px 0; color: #DED2BB; text-decoration: none; }
.footer-col a:hover { text-decoration: underline; text-decoration-color: var(--orange); }
.footer-bottom { margin-top: 54px; padding-top: 22px; border-top: 1px solid #34314E; color: #A9A092; font-size: .78rem; }

@media (max-width: 980px) {
  .desktop-nav { display: none; }.menu-toggle { display: block; }
  .mobile-nav { position: fixed; inset: 84px 0 0; z-index: 45; padding: 24px 20px 40px; overflow: auto; color: var(--cream); background: var(--indigo); }
  .mobile-nav.open { display: block; }
  .mobile-nav a { display: block; min-height: 52px; padding: 12px 4px; border-bottom: 1px solid #34314E; color: var(--cream); font-size: 1.08rem; text-decoration: none; }
  .mobile-nav .current-nav { display: flex; min-height: 52px; align-items: center; padding: 12px 4px; border-bottom: 1px solid #34314E; color: var(--cyan); font-size: 1.08rem; font-weight: 700; }
  .mobile-nav .sub { padding-left: 18px; color: #DED2BB; font-size: .95rem; }
  .mobile-nav .button { margin-top: 24px; border-color: var(--cyan); color: var(--indigo); background: var(--cyan); }
  .hero-grid, .page-hero .hero-layout, .pathway, .statement, .form-shell { grid-template-columns: 1fr; }
  .hero { min-height: 0; }.courtyard-stage { width: min(100%, 560px); margin: 0 auto; }
  .sticky-copy { position: static; }.outcomes { grid-template-columns: 1fr; }.outcome { min-height: 0; border-right: 0; border-bottom: 1px solid rgba(233,217,181,.25); }.outcome:last-child { border-bottom: 0; }.outcome .signal { margin-bottom: 28px; }
  .price-groups { grid-template-columns: 1fr; }.footer-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 680px) {
  html { scroll-padding-top: 88px; }
  body { padding-top: 72px; font-size: 16px; }.nav-wrap, .wrap, .narrow { width: min(calc(100% - 28px), var(--max)); }
  .nav-wrap { min-height: 72px; }.brand img { width: 40px; height: 40px; }.brand-text { font-size: .72rem; }.brand-text span { font-size: .55rem; }
  .mobile-nav { inset-block-start: 72px; }.hero { padding: 60px 0 72px; }.hero h1, .page-hero h1 { max-width: 18ch; font-size: clamp(2.35rem, 11vw, 3.35rem); line-height: 1.06; letter-spacing: -.03em; }
  .section-title { max-width: 22ch; font-size: clamp(2.05rem, 9.5vw, 2.8rem); line-height: 1.1; letter-spacing: -.03em; }
  .courtyard-stage { margin-top: -10px; }.section { padding: 76px 0; }.role-row { grid-template-columns: 1fr auto; gap: 14px; min-height: 0; padding: 26px 0; }.role-row p { grid-column: 1 / -1; grid-row: 2; }.role-row .arrow { grid-column: 2; grid-row: 1; }
  .life-step, .feature-line { grid-template-columns: 1fr; gap: 10px; }.page-hero { padding: 68px 0 58px; }.page-hero .hero-layout { gap: 38px; }
  .base-plans, .choice-grid { grid-template-columns: 1fr; }.base-plan { border-right: 0; border-bottom: 1px solid var(--line); }.base-plan:last-child { border-bottom: 0; }
  .price-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  .price-table tr { display: grid; grid-template-columns: 1fr auto; border-bottom: 1px solid var(--line); }.price-table td { border: 0; }.price-table td:first-child { padding-right: 16px; }
  .cta-row { align-items: stretch; flex-direction: column; }.footer-grid { grid-template-columns: 1fr; }.footer-grid { gap: 34px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; }
}

.infographic-section { color: var(--cream); background: var(--indigo-2); }
.infographic-section .wrap { width: min(calc(100% - 40px), 1480px); }
.infographic-head { display: flex; justify-content: space-between; gap: 72px; align-items: end; margin-bottom: 64px; }
.infographic-head .section-title { margin-bottom: 0; }
.infographic-head p { max-width: 52ch; margin: 0; color: #D8C49B; }
.infographic-frame { padding: clamp(14px, 1.7vw, 26px); border: 1px solid rgba(156,119,75,.7); background: #1D1C2A; box-shadow: 0 34px 80px rgba(18,18,26,.42); }
.infographic-frame img { width: 100%; height: auto; }
.infographic-caption { margin: 20px 0 0; color: #D8C49B; font-size: .88rem; }
@media (max-width: 680px) {
  .infographic-head { align-items: start; flex-direction: column; gap: 16px; }
  .infographic-section .wrap { width: min(calc(100% - 28px), 1480px); }
  .infographic-frame { margin-inline: -14px; padding: 4px; overflow-x: auto; }
  .infographic-frame img.wide-diagram { min-width: 800px; }
}

.section.infographic-section { color: var(--cream); background: var(--indigo-2); }

/* V2 — Command & Continuity */
body { background: var(--indigo); }
.site-header { border-color: rgba(90,20,36,.22); background: rgba(18,18,26,.96); }
.site-header .brand, .desktop-nav a, .nav-group > button { color: var(--cream); }
.desktop-nav a:not(.button):hover, .desktop-nav a[aria-current="page"]:not(.button) { text-decoration-color: var(--cyan); }
.desktop-nav .current-nav { display: inline-flex; min-height: 44px; align-items: center; color: var(--cyan); font-size: .88rem; font-weight: 700; }
.menu-toggle { border-color: var(--cyan); color: var(--cream); }
.nav-menu { border-color: #504A66; color: var(--cream); background: var(--indigo-2); box-shadow: 0 18px 44px rgba(0,0,0,.28); }
.nav-menu a:hover { color: var(--indigo); background: var(--cyan); text-decoration: none !important; }

.hero-command { position: relative; min-height: calc(100vh - 84px); display: grid; align-items: end; overflow: hidden; color: var(--cream); background: #12121A; }
.hero-command::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(18,18,26,.98) 0%, rgba(18,18,26,.91) 35%, rgba(18,18,26,.28) 67%, rgba(18,18,26,.04) 100%); z-index: 1; }
.hero-command::after { content: ""; position: absolute; inset: auto 0 0; height: 7px; background: var(--cyan); z-index: 3; }
.hero-command .hero-photo { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.hero-command .wrap { position: relative; z-index: 2; padding-block: clamp(90px, 13vh, 150px); }
.hero-command h1 { max-width: 12.5ch; margin: 0 0 30px; font-size: clamp(3.7rem, 7.3vw, 6rem); line-height: .98; letter-spacing: -.038em; font-weight: 520; text-wrap: balance; }
.hero-command h1 strong { display: block; color: var(--cyan); font-weight: 520; }
.hero-command .lead { max-width: 53ch; color: #DED2BB; }
.hero-proof { display: flex; flex-wrap: wrap; gap: 18px 34px; margin-top: 38px; color: #C2B79F; font-size: .9rem; }
.hero-proof span { display: inline-flex; align-items: center; gap: 10px; }
.hero-proof span::before { content: ""; width: 22px; height: 2px; background: var(--cyan); }

.tension { color: var(--cream); background: var(--indigo); }
.tension-grid { display: grid; grid-template-columns: .78fr 1.22fr; gap: clamp(60px,9vw,140px); align-items: start; }
.tension-title { position: sticky; top: 132px; }
.tension-title h2 { max-width: 13ch; margin: 0; font-size: clamp(2.8rem,5.5vw,5.6rem); line-height: 1.02; letter-spacing: -.038em; font-weight: 520; }
.tension-title h2 span { color: var(--cyan); }
.burden-list { border-top: 1px solid rgba(90,20,36,.4); }
.burden { display: grid; grid-template-columns: 106px 1fr; gap: 28px; padding: 34px 0; border-bottom: 1px solid rgba(233,217,181,.22); }
.burden b { color: var(--orange); font-size: .72rem; letter-spacing: .11em; text-transform: uppercase; }
.burden h3 { margin: 0 0 8px; font-size: clamp(1.25rem,2vw,1.7rem); font-weight: 570; }
.burden p { margin: 0; color: #BDB4A4; }

.cyan-field { color: var(--indigo); background: var(--cyan); }
.cyan-field .section-intro { color: #514C5D; }
.role-list.cyan-list { border-color: rgba(18,18,26,.32); }
.cyan-list .role-row { border-color: rgba(18,18,26,.3); }
.cyan-list .role-row p { color: #514C5D; }
.cyan-list .role-row .arrow { background: rgba(233,217,181,.5); }
.cyan-list .role-row:hover .arrow { color: var(--cream); border-color: var(--indigo); background: var(--indigo); }

.instrument { color: var(--cream); background: #1D1C2A; }
.instrument-grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(60px,8vw,120px); align-items: center; }
.instrument-copy h2 { max-width: 16ch; margin: 0 0 25px; font-size: clamp(2.7rem,5vw,5rem); line-height: 1.02; letter-spacing: -.038em; font-weight: 520; }
.instrument-copy p { max-width: 58ch; color: #CFC4B1; }
.dashboard-scene { position: relative; min-height: 500px; padding: 30px; border: 1px solid rgba(90,20,36,.55); background: var(--indigo-2); box-shadow: 0 28px 70px rgba(0,0,0,.28); }
.dashboard-top { display: flex; align-items: center; justify-content: space-between; padding-bottom: 22px; border-bottom: 1px solid rgba(233,217,181,.18); }
.dashboard-top strong { font-size: 1.05rem; letter-spacing: .05em; }.live { color: var(--cyan); font-size: .77rem; text-transform: uppercase; letter-spacing: .14em; }
.priority { padding: 24px 0; border-bottom: 1px solid rgba(233,217,181,.16); }
.priority:last-child { border-bottom: 0; }.priority small { color: var(--cyan); font-weight: 720; letter-spacing: .12em; text-transform: uppercase; }.priority h3 { margin: 6px 0; font-size: 1.25rem; font-weight: 560; }.priority p { margin: 0; color: #C7BCA8; font-size: .9rem; }

.role-hero-v2 { position: relative; min-height: 690px; display: grid; align-items: end; overflow: hidden; color: var(--cream); background: var(--indigo); }
.role-hero-v2::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(18,18,26,.97) 0%, rgba(18,18,26,.88) 43%, rgba(18,18,26,.15) 76%); }
.role-hero-v2 img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.role-hero-v2 .wrap { position: relative; z-index: 1; padding-block: 96px; }
.role-hero-v2 h1 { max-width: 13.5ch; margin: 0 0 24px; font-size: clamp(3.3rem,6.5vw,6rem); line-height: .98; letter-spacing: -.038em; font-weight: 520; text-wrap: balance; }
.role-hero-v2 .lead { max-width: 48ch; color: #DED2BB; }
.role-hero-v2 .button { margin-top: 32px; }
.daily-shift { color: var(--cream); background: var(--indigo); }
.daily-shift-grid { display: grid; grid-template-columns: 1fr 80px 1fr; gap: 42px; align-items: center; }
.day-column h2 { margin: 0 0 28px; font-size: clamp(2rem,3vw,3.2rem); font-weight: 540; letter-spacing: -.03em; }
.day-column.after h2 { color: var(--cyan); }
.day-line { min-height: 102px; padding: 20px 0; border-top: 1px solid rgba(233,217,181,.22); }
.day-line strong { display: block; margin-bottom: 5px; font-size: 1.08rem; }.day-line span { display: block; color: #C9BEAA; font-size: .94rem; }
.shift-arrow { width: 70px; height: 70px; display: grid; place-items: center; border: 1px solid var(--cyan); color: var(--cyan); font-size: 1.8rem; }
.tool-belt { color: var(--indigo); background: var(--cyan); }
.tool-belt .section-title { max-width: 18ch; }.tool-belt .section-intro { color: #514C5D; }
.tool-lines { display: grid; grid-template-columns: 1fr 1fr; gap: 0 70px; border-top: 1px solid rgba(18,18,26,.35); }
.tool-line { padding: 24px 0; border-bottom: 1px solid rgba(18,18,26,.3); }
.tool-line h3 { margin: 0 0 8px; font-size: 1.15rem; }.tool-line p { margin: 0; color: #514C5D; }
.hero-promise { background: var(--cream); }
.hero-promise .statement blockquote { color: var(--indigo); }

.route-real-estate .role-hero-v2 img,
.route-mortgage .role-hero-v2 img,
.route-affiliates .role-hero-v2 img { transform: scaleX(-1); }

.affiliate-catalog { color: var(--cream); background: #1D1C2A; }
.catalog-head { display: grid; grid-template-columns: 1fr .72fr; gap: clamp(40px,7vw,100px); align-items: end; padding-bottom: 44px; border-bottom: 1px solid rgba(90,20,36,.42); }
.catalog-head h2 { max-width: 20ch; margin: 0 0 24px; font-size: clamp(2.7rem,5vw,5rem); line-height: 1.02; letter-spacing: -.038em; font-weight: 520; }
.catalog-head > p:last-child { max-width: 62ch; margin: 0; color: #CFC4B1; }
.catalog-index { display: flex; flex-wrap: wrap; gap: 9px; padding: 28px 0 42px; }
.catalog-index a { padding: 9px 12px; border: 1px solid #504A66; color: #E2D7C2; font-size: .78rem; text-decoration: none; }
.catalog-index a:hover, .catalog-index a:focus-visible { border-color: var(--cyan); color: var(--indigo); background: var(--cyan); }
.catalog-list { border-top: 1px solid rgba(233,217,181,.22); }
.catalog-row { display: grid; grid-template-columns: 48px 74px minmax(230px,.82fr) 1.18fr; gap: 28px; align-items: center; padding: 32px 0; border-bottom: 1px solid rgba(233,217,181,.2); scroll-margin-top: 110px; }
.catalog-number { color: #8E849D; font-size: .72rem; letter-spacing: .12em; }
.catalog-icon { width: 62px; height: 62px; display: grid; place-items: center; border: 1px solid var(--cyan); }
.catalog-icon svg { width: 30px; height: 30px; fill: none; stroke: var(--cyan); stroke-width: 1.6; stroke-linecap: square; stroke-linejoin: miter; }
.catalog-name h3 { margin: 0 0 8px; font-size: 1.45rem; font-weight: 570; }
.catalog-name p, .catalog-shift p { margin: 0; color: #C9BEAA; }
.catalog-shift { padding-left: 30px; border-left: 2px solid var(--orange); }
.catalog-shift span { display: block; margin-bottom: 7px; color: var(--orange); font-size: .7rem; font-weight: 760; letter-spacing: .13em; text-transform: uppercase; }
.affiliate-tabs { display: grid; grid-template-columns: repeat(5,1fr); margin: 42px 0 0; border-top: 1px solid #504A66; border-left: 1px solid #504A66; }
.affiliate-tabs button { min-height: 118px; display: grid; grid-template-columns: 34px 1fr; gap: 13px; align-items: center; padding: 20px; border: 0; border-right: 1px solid #625C75; border-bottom: 1px solid #625C75; color: #E9D9B5; background: #12121A; text-align: left; font: inherit; font-size: .82rem; font-weight: 720; cursor: pointer; }
.affiliate-tabs svg { width: 30px; height: 30px; fill: none; stroke: var(--cyan); stroke-width: 1.5; stroke-linecap: square; stroke-linejoin: miter; }
.affiliate-tabs button:hover { background: #242233; }
.affiliate-tabs button[aria-selected="true"] { color: var(--indigo); background: var(--cyan); }
.affiliate-tabs button[aria-selected="true"] svg { stroke: var(--indigo); }
.affiliate-panel[hidden] { display: none; }
.affiliate-panel { border: 1px solid var(--cyan); border-top: 0; background: var(--indigo); }
.affiliate-panel-hero { display: grid; grid-template-columns: 96px 1fr; gap: 34px; align-items: center; padding: clamp(34px,5vw,68px); border-bottom: 1px solid rgba(233,217,181,.2); }
.catalog-icon.large { width: 86px; height: 86px; background: #1D1C2A; }
.catalog-icon.large svg { width: 42px; height: 42px; }
.affiliate-panel-hero h3 { max-width: 21ch; margin: 6px 0 12px; font-size: clamp(2.6rem,5vw,5rem); line-height: 1.02; letter-spacing: -.038em; font-weight: 520; }
.affiliate-panel-hero > div:last-child > p:last-child { max-width: 62ch; margin: 0; color: #CFC4B1; font-size: 1.08rem; }
.affiliate-impact { display: grid; grid-template-columns: repeat(3,1fr); background: var(--cyan); color: var(--indigo); }
.affiliate-impact > div { min-height: 230px; padding: 34px; border-right: 1px solid rgba(18,18,26,.3); }
.affiliate-impact > div:last-child { border-right: 0; }
.affiliate-impact span { display: block; margin-bottom: 42px; color: #514C5D; font-size: .7rem; font-weight: 780; letter-spacing: .13em; text-transform: uppercase; }
.affiliate-impact strong { font-size: 1.22rem; line-height: 1.4; font-weight: 620; }
.affiliate-workflow { display: grid; grid-template-columns: .7fr 1.3fr; gap: clamp(40px,7vw,100px); padding: clamp(40px,6vw,78px); }
.affiliate-workflow header { position: sticky; top: 120px; align-self: start; }
.affiliate-workflow h4, .affiliate-tools h4 { max-width: 16ch; margin: 8px 0 0; font-size: clamp(2rem,3.4vw,3.5rem); line-height: 1.08; letter-spacing: -.032em; font-weight: 530; }
.affiliate-workflow ol { margin: 0; padding: 0; list-style: none; border-top: 1px solid rgba(90,20,36,.4); }
.affiliate-workflow li { position: relative; display: grid; grid-template-columns: 34px 48px 1fr; gap: 20px; padding: 25px 0; border-bottom: 1px solid rgba(233,217,181,.18); }
.affiliate-workflow li b { color: var(--orange); font-size: .7rem; letter-spacing: .12em; }
.affiliate-workflow li svg { width: 30px; height: 30px; fill: none; stroke: var(--cyan); stroke-width: 1.5; stroke-linecap: square; stroke-linejoin: miter; }
.affiliate-workflow li strong { display: block; margin-bottom: 6px; font-size: 1.08rem; }
.affiliate-workflow li p { margin: 0; color: #C7BCA8; font-size: .9rem; }
.affiliate-tools { display: grid; grid-template-columns: .7fr 1.3fr; gap: clamp(40px,7vw,100px); padding: clamp(40px,6vw,78px); border-top: 1px solid rgba(233,217,181,.2); background: #1D1C2A; }
.affiliate-tools ul { display: grid; grid-template-columns: 1fr 1fr; gap: 0 34px; margin: 0; padding: 0; list-style: none; border-top: 1px solid rgba(90,20,36,.4); }
.affiliate-tools li { padding: 18px 0 18px 26px; border-bottom: 1px solid rgba(233,217,181,.18); position: relative; }
.affiliate-tools li::before { content: ''; position: absolute; left: 0; top: 27px; width: 10px; height: 2px; background: var(--orange); }

.role-workflow { color: var(--cream); background: #1D1C2A; }
.role-workflow-head { display: grid; grid-template-columns: 1.05fr .72fr; gap: clamp(44px,8vw,120px); align-items: end; margin-bottom: 58px; }
.role-workflow-head h2 { max-width: 20ch; margin: 0; font-size: clamp(2.7rem,5vw,5rem); line-height: 1.02; letter-spacing: -.038em; font-weight: 520; }
.role-workflow-head p { max-width: 62ch; margin: 0; color: #CFC4B1; }
.role-workflow-track { margin: 0; padding: 0; list-style: none; border-top: 1px solid rgba(90,20,36,.45); }
.role-workflow-track li { display: grid; grid-template-columns: 150px 1fr; gap: clamp(30px,6vw,90px); align-items: center; min-height: 154px; padding: 28px 0; border-bottom: 1px solid rgba(233,217,181,.2); }
.workflow-node { display: grid; grid-template-columns: 28px 64px; gap: 20px; align-items: center; }
.workflow-node b { color: var(--orange); font-size: .7rem; letter-spacing: .12em; }
.workflow-node svg { width: 58px; height: 58px; padding: 14px; border: 1px solid var(--cyan); fill: none; stroke: var(--cyan); stroke-width: 1.45; stroke-linecap: square; stroke-linejoin: miter; }
.role-workflow-track h3 { margin: 0 0 7px; font-size: 1.45rem; font-weight: 580; }
.role-workflow-track p { max-width: 76ch; margin: 0; color: #C8BDA9; }
.role-workflow-value { display: grid; grid-template-columns: 150px 1fr; gap: clamp(30px,6vw,90px); padding-top: 42px; }
.role-workflow-value strong { color: var(--cyan); font-size: .76rem; letter-spacing: .13em; text-transform: uppercase; }
.role-workflow-value p { max-width: 70ch; margin: 0; color: var(--cream); font-size: 1.15rem; }

.workflow-showcase { color: var(--cream); background: #1D1C2A; }
.workflow-intro { display: grid; grid-template-columns: 1.1fr .7fr; gap: clamp(44px,8vw,120px); align-items: end; margin-bottom: 64px; }
.workflow-intro h2 { max-width: 20ch; margin: 0; font-size: clamp(2.8rem,5vw,5.2rem); line-height: 1.02; letter-spacing: -.038em; font-weight: 520; }
.workflow-intro p { max-width: 58ch; margin: 0; color: #CFC4B1; }
.listing-flow { display: grid; grid-template-columns: .82fr 1.35fr .95fr 1.1fr; border-block: 1px solid rgba(90,20,36,.48); }
.flow-stage { min-width: 0; padding: 40px 30px; border-right: 1px solid rgba(233,217,181,.16); }
.flow-stage:last-child { border-right: 0; }
.flow-index { display: block; margin-bottom: 28px; color: var(--orange); font-size: .72rem; font-weight: 800; letter-spacing: .14em; }
.flow-stage h3 { margin: 0 0 12px; font-size: 1.42rem; font-weight: 580; }
.flow-stage p { margin: 0; color: #C8BDA9; font-size: .92rem; }
.flow-stage > strong { display: block; margin-top: 20px; color: var(--cyan); font-size: .86rem; line-height: 1.5; }
.service-orbit { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 26px; }
.service-orbit span { min-height: 46px; display: grid; place-items: center; border: 1px solid rgba(90,20,36,.42); color: var(--cream); font-size: .78rem; }
.workflow-payoff { display: grid; grid-template-columns: 180px 1fr; gap: 36px; padding-top: 38px; }
.workflow-payoff span { color: var(--orange); font-size: .75rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.workflow-payoff p { max-width: 78ch; margin: 0; font-size: 1.16rem; }
.mortgage-flows { display: grid; grid-template-columns: 1fr 1fr; border: 1px solid rgba(90,20,36,.45); }
.mortgage-flow { padding: clamp(28px,4vw,56px); }
.mortgage-flow + .mortgage-flow { border-left: 1px solid rgba(90,20,36,.45); }
.mortgage-flow header { min-height: 156px; padding-bottom: 32px; border-bottom: 1px solid rgba(233,217,181,.2); }
.mortgage-flow header span { color: var(--cyan); font-size: .76rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.mortgage-flow header h3 { max-width: 22ch; margin: 12px 0 0; font-size: clamp(1.8rem,3vw,3rem); line-height: 1.1; font-weight: 540; letter-spacing: -.028em; }
.mortgage-flow ol { margin: 0; padding: 0; list-style: none; }
.mortgage-flow li { display: grid; grid-template-columns: 32px 1fr; gap: 18px; padding: 23px 0; border-bottom: 1px solid rgba(233,217,181,.16); }
.mortgage-flow li:last-child { border-bottom-color: var(--cyan); }
.mortgage-flow li b { color: var(--orange); font-size: .7rem; letter-spacing: .12em; }
.mortgage-flow li strong { display: block; margin-bottom: 5px; }
.mortgage-flow li p { margin: 0; color: #C8BDA9; font-size: .9rem; }

.capability-explorer { color: var(--cream); background: #1D1C2A; }
.capability-heading { display: grid; grid-template-columns: 1fr .65fr; gap: clamp(44px,8vw,120px); align-items: end; padding-bottom: 48px; border-bottom: 1px solid rgba(90,20,36,.42); }
.capability-heading h2 { max-width: 20ch; margin: 0; font-size: clamp(2.8rem,5vw,5rem); line-height: 1.02; letter-spacing: -.038em; font-weight: 520; }
.capability-heading p { max-width: 52ch; margin: 0; color: #CFC4B1; }
.capability-tabs { display: grid; grid-template-columns: repeat(5,1fr); margin-top: 42px; border-top: 1px solid #625C75; border-left: 1px solid #625C75; }
.capability-tabs button { min-height: 112px; padding: 21px; border: 0; border-right: 1px solid #625C75; border-bottom: 1px solid #625C75; color: var(--cream); background: var(--indigo); text-align: left; cursor: pointer; }
.capability-tabs button:hover { background: #242233; }
.capability-tabs button[aria-selected="true"] { color: var(--indigo); background: var(--cyan); }
.capability-tabs span, .capability-tabs small { display: block; }
.capability-tabs span { margin-bottom: 8px; font-size: 1rem; font-weight: 760; }
.capability-tabs small { color: #C7BCA8; font-size: .72rem; line-height: 1.35; }
.capability-tabs button[aria-selected="true"] small { color: #514C5D; }
.capability-panel[hidden] { display: none; }
.capability-panel { border: 1px solid var(--cyan); border-top: 0; background: var(--indigo); }
.capability-panel > header { display: grid; grid-template-columns: 1fr .7fr; gap: clamp(42px,7vw,100px); align-items: end; padding: clamp(36px,5vw,68px); border-bottom: 1px solid rgba(233,217,181,.2); }
.package-kind { color: var(--orange); font-size: .74rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.capability-panel h3 { max-width: 20ch; margin: 14px 0 0; font-size: clamp(2.7rem,5vw,5rem); line-height: 1.02; letter-spacing: -.038em; font-weight: 520; }
.capability-panel > header p { max-width: 58ch; margin: 0; color: #CFC4B1; }
.capability-columns { display: grid; grid-template-columns: 1fr 1fr 1.08fr; }
.capability-columns > section { padding: clamp(30px,4vw,54px); border-right: 1px solid rgba(233,217,181,.18); }
.capability-columns > section:last-child { border-right: 0; }
.capability-columns h4 { margin: 0 0 28px; color: var(--cyan); font-size: .78rem; letter-spacing: .14em; text-transform: uppercase; }
.capability-columns ul { margin: 0; padding: 0; list-style: none; }
.capability-columns li { position: relative; padding: 13px 0 13px 23px; border-bottom: 1px solid rgba(233,217,181,.14); color: #E2D7C2; font-size: .9rem; }
.capability-columns li::before { content: ''; position: absolute; left: 0; top: 23px; width: 9px; height: 2px; background: var(--orange); }
.connection-list > div { padding: 16px 0; border-bottom: 1px solid rgba(233,217,181,.14); }
.connection-list span { display: block; margin-bottom: 6px; color: var(--orange); font-size: .69rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.connection-list p { margin: 0; color: #CFC4B1; font-size: .88rem; }
.capability-note { max-width: 105ch; margin: 30px 0 0; color: #AAA0B8; font-size: .78rem; }
.role-capability-tabs { grid-template-columns: repeat(7,1fr); }
.role-capability-tabs button { min-height: 104px; padding: 17px 15px; }
.suite-map { border: 1px solid var(--cyan); border-top: 0; background: var(--indigo); }
.suite-header { display: grid; grid-template-columns: 1fr .72fr; gap: clamp(42px,7vw,100px); align-items: end; padding: clamp(36px,5vw,68px); border-bottom: 1px solid rgba(233,217,181,.2); }
.suite-header span, .suite-foundation header span, .suite-integrations header span { display: block; margin-bottom: 12px; color: var(--orange); font-size: .72rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.suite-header h3 { max-width: 20ch; margin: 0; font-size: clamp(2.8rem,5vw,5rem); line-height: 1.02; letter-spacing: -.038em; font-weight: 520; }
.suite-header p { max-width: 58ch; margin: 0; color: #CFC4B1; }
.suite-org { position: relative; padding: clamp(42px,6vw,76px); }
.suite-core { position: relative; z-index: 2; width: min(520px,100%); margin: 0 auto 74px; padding: 30px; border: 1px solid var(--cyan); text-align: center; background: #1D1C2A; box-shadow: 0 22px 60px rgba(0,0,0,.24); }
.suite-core::after { content: ''; position: absolute; left: 50%; top: 100%; width: 1px; height: 75px; background: var(--cyan); }
.suite-core span { display: block; color: var(--orange); font-size: .7rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.suite-core strong { display: block; margin: 8px 0 5px; font-size: 1.55rem; font-weight: 580; }
.suite-core small { color: #C7BCA8; }
.suite-branches { position: relative; display: grid; grid-template-columns: repeat(5,1fr); border-top: 1px solid var(--cyan); }
.suite-branches section { position: relative; padding: 38px 20px 12px; border-right: 1px solid rgba(233,217,181,.16); }
.suite-branches section:last-child { border-right: 0; }
.suite-branches section::before { content: ''; position: absolute; left: 50%; top: -1px; width: 1px; height: 24px; background: var(--cyan); }
.branch-head { min-height: 78px; }
.branch-head b { display: block; margin-bottom: 9px; color: var(--orange); font-size: .68rem; letter-spacing: .12em; }
.branch-head h4 { margin: 0; font-size: 1.06rem; font-weight: 650; }
.suite-branches ul { margin: 0; padding: 0; list-style: none; }
.suite-branches li { padding: 13px 0; border-top: 1px solid rgba(233,217,181,.14); color: #CFC4B1; font-size: .82rem; }
.suite-foundation, .suite-integrations { display: grid; grid-template-columns: .7fr 1.3fr; gap: clamp(36px,6vw,84px); padding: clamp(36px,5vw,62px); border-top: 1px solid rgba(90,20,36,.45); }
.suite-foundation header strong, .suite-integrations header strong { display: block; max-width: 24ch; font-size: 1.35rem; font-weight: 580; }
.suite-foundation > div { display: grid; grid-template-columns: repeat(3,1fr); gap: 1px; background: rgba(90,20,36,.32); }
.suite-foundation > div span { min-height: 78px; display: grid; place-items: center; padding: 14px; color: var(--indigo); background: var(--cyan); text-align: center; font-size: .78rem; font-weight: 720; }
.suite-integrations > div { display: grid; grid-template-columns: 1fr 1fr; gap: 0 30px; }
.suite-integrations p { position: relative; margin: 0; padding: 15px 0 15px 22px; border-top: 1px solid rgba(233,217,181,.16); color: #CFC4B1; font-size: .86rem; }
.suite-integrations p::before { content: ''; position: absolute; left: 0; top: 25px; width: 9px; height: 2px; background: var(--orange); }

.page-hero { color: var(--cream); border-color: rgba(90,20,36,.28); background: var(--indigo); }
.page-hero .hero-aside { border-color: var(--cyan); }.page-hero .hero-aside p { color: #CFC4B1; }
.section.white { background: #F7F0E3; }.section:not(.dark):not(.white):not(.cyan-field):not(.instrument):not(.tension):not(.tool-belt):not(.daily-shift):not(.hero-promise):not(.affiliate-catalog):not(.role-workflow):not(.infographic-section):not(.workflow-showcase):not(.capability-explorer) { background: var(--cream); }
.section.affiliate-catalog { color: var(--cream); background: #1D1C2A; }

.legal-hero, .journal-hero { padding: clamp(110px,14vw,190px) 0 clamp(64px,8vw,100px); color: var(--cream); background: var(--indigo); border-bottom: 1px solid rgba(90,20,36,.4); }
.legal-hero h1, .journal-hero h1 { max-width: 15ch; margin: 0 0 20px; font-size: clamp(3rem,7vw,6rem); line-height: .98; letter-spacing: -.04em; font-weight: 520; }
.legal-hero p, .journal-hero p { max-width: 62ch; margin: 0; color: #CFC4B1; }
.legal-copy { padding-block: clamp(62px,9vw,120px); }
.legal-copy > p:first-child { color: var(--indigo); font-size: 1.25rem; line-height: 1.65; }
.legal-copy h2 { margin: 58px 0 14px; font-size: 1.55rem; font-weight: 680; }
.legal-copy p { max-width: 72ch; color: #34314E; }
.legal-copy a, .article-body a { color: #5A1424; text-decoration-thickness: 1px; text-underline-offset: 4px; }
.journal-hero p { font-size: 1.2rem; }
.journal-index { padding: clamp(62px,9vw,120px) 0; background: var(--cream); }
.journal-index a { color: inherit; text-decoration: none; }
.journal-lead { padding-bottom: 70px; border-bottom: 1px solid rgba(18,18,26,.28); }
.journal-lead a { display: grid; grid-template-columns: .38fr 1.15fr .82fr; gap: clamp(28px,6vw,90px); align-items: start; }
.journal-index span, .article-page header > a { color: #7B5C39; font-size: .76rem; font-weight: 780; letter-spacing: .12em; text-transform: uppercase; }
.journal-index h2 { margin: 0; color: var(--indigo); font-size: clamp(2.2rem,4.5vw,4.8rem); line-height: 1.03; letter-spacing: -.035em; font-weight: 530; }
.journal-index p { margin: 0; color: #514C5D; }
.journal-index strong { display: block; margin-top: 22px; color: #5A1424; }
.journal-list article { padding: 48px 0; border-bottom: 1px solid rgba(18,18,26,.22); }
.journal-list article a { display: grid; grid-template-columns: .38fr 1.15fr .82fr; gap: clamp(28px,6vw,90px); align-items: start; }
.journal-list h2 { font-size: clamp(1.8rem,3vw,3.2rem); }
.article-page { background: var(--cream); }
.article-page > header { padding: clamp(110px,14vw,190px) max(24px,calc((100vw - 920px)/2)) 72px; color: var(--cream); background: var(--indigo); }
.article-page header > a { color: var(--cyan); text-decoration: none; }
.article-page h1 { max-width: 16ch; margin: 28px 0 24px; font-size: clamp(3rem,7vw,6.4rem); line-height: .98; letter-spacing: -.04em; font-weight: 520; }
.article-deck { max-width: 62ch; color: #CFC4B1; font-size: 1.25rem; }
.article-page header > div { margin-top: 36px; color: #AAA0B8; font-size: .8rem; letter-spacing: .08em; text-transform: uppercase; }
.article-body { width: min(760px,calc(100% - 40px)); margin: 0 auto; padding: clamp(64px,9vw,112px) 0; }
.article-body p { margin: 0 0 28px; color: #514C5D; font-size: 1.12rem; line-height: 1.78; }
.article-body h2 { margin: 64px 0 20px; color: var(--indigo); font-size: clamp(1.8rem,3vw,2.65rem); line-height: 1.15; }
.article-body blockquote { margin: 58px 0; padding: 36px 0; border-block: 1px solid var(--orange); color: var(--indigo); font-size: clamp(1.55rem,3vw,2.35rem); line-height: 1.25; }
.article-page > footer { padding: 42px max(24px,calc((100vw - 920px)/2)); background: var(--cyan); }
.article-page > footer a { color: var(--indigo); font-weight: 760; text-decoration: none; }
.admin-body { min-height: 100vh; color: var(--cream); background: #1D1C2A; }
.admin-brand { display: inline-flex; align-items: center; gap: 14px; color: var(--cream); text-decoration: none; font-size: .8rem; letter-spacing: .16em; }
.admin-brand img { width: 42px; height: 42px; }
.admin-brand span, .admin-brand b { display: block; }
.admin-brand b { margin-top: 4px; font-size: .65rem; font-weight: 500; letter-spacing: .28em; }
.admin-login, .preference-page { width: min(560px,calc(100% - 40px)); margin: 0 auto; padding: 54px 0 100px; }
.admin-login > section, .preference-page > section { margin-top: clamp(80px,14vh,160px); padding: 42px; border: 1px solid rgba(90,20,36,.5); background: var(--indigo); box-shadow: 0 24px 70px rgba(0,0,0,.25); }
.admin-login h1, .preference-page h1 { margin: 0 0 12px; font-size: 2.5rem; font-weight: 550; }
.admin-login p, .preference-page p { color: #CFC4B1; }
.admin-login form { display: grid; gap: 20px; margin-top: 32px; }
.admin-login label { display: grid; gap: 8px; color: #E2D7C2; font-size: .88rem; }
.admin-login input { min-height: 50px; padding: 12px 14px; border: 1px solid #6F667F; color: var(--cream); background: #12121A; font: inherit; }
.admin-login input:focus { outline: 3px solid rgba(90,20,36,.3); border-color: var(--cyan); }
.admin-alert { padding: 14px 16px; color: #2b1100; background: #D8BD8A; }
.admin-topbar { min-height: 88px; display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 18px clamp(22px,4vw,64px); border-bottom: 1px solid rgba(90,20,36,.35); background: var(--indigo); }
.admin-topbar > div { display: flex; align-items: center; gap: 16px; }
.admin-topbar form { margin: 0; }
.admin-link { padding: 12px; border: 0; color: #CFC4B1; background: transparent; cursor: pointer; }
.admin-shell { width: min(1500px,calc(100% - 44px)); margin: 0 auto; padding: 64px 0 100px; }
.admin-heading { display: flex; align-items: end; justify-content: space-between; gap: 30px; }
.admin-heading h1 { margin: 0; font-size: clamp(2.5rem,5vw,4.5rem); font-weight: 520; }
.admin-heading p, .admin-heading > span { color: #AAA0B8; }
.admin-metrics { display: grid; grid-template-columns: repeat(5,1fr); margin: 52px 0 64px; border-top: 1px solid var(--cyan); border-left: 1px solid rgba(90,20,36,.35); }
.admin-metrics article { min-height: 138px; padding: 26px; border-right: 1px solid rgba(90,20,36,.35); border-bottom: 1px solid rgba(90,20,36,.35); }
.admin-metrics strong { display: block; color: var(--cyan); font-size: 2.8rem; font-variant-numeric: tabular-nums; }
.admin-metrics span { color: #C7BCA8; font-size: .82rem; }
.admin-table-wrap { overflow-x: auto; border: 1px solid rgba(90,20,36,.4); background: var(--indigo); }
.admin-section-head { display: flex; align-items: center; justify-content: space-between; padding: 24px 28px; border-bottom: 1px solid rgba(90,20,36,.3); }
.admin-section-head h2, .admin-section-head p { margin: 0; }
.admin-section-head p { color: #AAA0B8; font-size: .8rem; }
.admin-table { width: 100%; border-collapse: collapse; min-width: 960px; }
.admin-table th { padding: 14px 18px; color: #AAA0B8; background: #12121A; text-align: left; font-size: .7rem; letter-spacing: .1em; text-transform: uppercase; }
.admin-table td { padding: 18px; border-top: 1px solid rgba(233,217,181,.12); color: #E2D7C2; font-size: .86rem; vertical-align: top; }
.admin-table td:first-child strong, .admin-table td:first-child a, .admin-table td:last-child small { display: block; }
.admin-table td:first-child a { margin: 5px 0 8px; color: var(--cyan); }
.admin-table td:last-child small { margin-top: 4px; color: #AAA0B8; }
.admin-tag { display: inline-block; padding: 4px 7px; color: var(--indigo); background: var(--orange); font-size: .64rem; font-weight: 800; text-transform: uppercase; }
.status-unsubscribed { color: #D8BD8A; }
.status-waiting, .status-beta_candidate { color: var(--cyan); }
.admin-empty { padding: 60px 28px; text-align: center; }

@media (max-width: 980px) {
  .journal-lead a, .journal-list article a { grid-template-columns: 1fr; gap: 18px; }
  .admin-metrics { grid-template-columns: repeat(3,1fr); }
  .hero-command { min-height: 760px; }.hero-command::before { background: linear-gradient(90deg, rgba(18,18,26,.96), rgba(18,18,26,.65)); }
  .tension-grid, .instrument-grid { grid-template-columns: 1fr; }.tension-title { position: static; }
  .daily-shift-grid { grid-template-columns: 1fr; }.shift-arrow { transform: rotate(90deg); }
  .catalog-head, .role-workflow-head { grid-template-columns: 1fr; }
  .workflow-intro { grid-template-columns: 1fr; }
  .capability-heading, .capability-panel > header { grid-template-columns: 1fr; }
  .suite-header, .suite-foundation, .suite-integrations { grid-template-columns: 1fr; }
  .suite-branches { grid-template-columns: repeat(2,1fr); border-top: 0; }
  .suite-branches section { border-top: 1px solid var(--cyan); }
  .suite-core::after, .suite-branches section::before { display: none; }
  .capability-tabs { grid-template-columns: repeat(3,1fr); }
  .capability-columns { grid-template-columns: 1fr; }
  .capability-columns > section { border-right: 0; border-bottom: 1px solid rgba(233,217,181,.18); }
  .listing-flow { grid-template-columns: 1fr 1fr; }
  .mortgage-flows { grid-template-columns: 1fr; }
  .mortgage-flow + .mortgage-flow { border-left: 0; border-top: 1px solid rgba(90,20,36,.45); }
  .catalog-row { grid-template-columns: 40px 62px 1fr; }.catalog-shift { grid-column: 3; }
  .affiliate-tabs { grid-template-columns: repeat(2,1fr); }.affiliate-workflow, .affiliate-tools { grid-template-columns: 1fr; }.affiliate-workflow header { position: static; }.affiliate-impact { grid-template-columns: 1fr; }.affiliate-impact > div { min-height: 0; border-right: 0; border-bottom: 1px solid rgba(18,18,26,.3); }.affiliate-impact span { margin-bottom: 16px; }
}
@media (max-width: 680px) {
  .admin-topbar, .admin-heading { align-items: flex-start; flex-direction: column; }
  .admin-topbar { padding-block: 20px; }
  .admin-metrics { grid-template-columns: 1fr 1fr; }
  .admin-login > section, .preference-page > section { padding: 28px 22px; }
  .hero-command { min-height: 700px; }.hero-command::before { background: linear-gradient(180deg, rgba(18,18,26,.38) 0%, rgba(18,18,26,.72) 46%, rgba(18,18,26,.97) 66%, #12121A 100%); }.hero-command .hero-photo { object-position: 70% center; }
  .hero-command .wrap { padding-block: 250px 64px; }.hero-command h1 { max-width: 13ch; font-size: clamp(2.65rem,12vw,3.45rem); line-height: 1.02; }
  .tension-title h2 { max-width: 14ch; font-size: clamp(2.45rem,11vw,3rem); line-height: 1.06; }.burden { grid-template-columns: 1fr; gap: 8px; }
  .dashboard-scene { min-height: 0; padding: 20px; }.role-hero-v2 { min-height: 720px; }.role-hero-v2::after { background: linear-gradient(180deg, rgba(18,18,26,.08) 0%, rgba(18,18,26,.46) 43%, rgba(18,18,26,.97) 62%, var(--indigo) 100%); }.role-hero-v2 img { object-position: var(--role-hero-mobile-position, center top); }.role-hero-v2 .wrap { padding-block: 330px 64px; }.role-hero-v2 h1 { max-width: 16ch; font-size: clamp(2.4rem, 11vw, 3.1rem); line-height: 1.06; letter-spacing: -.03em; }
  .route-real-estate { --role-hero-mobile-position: 37% top; }
  .route-mortgage { --role-hero-mobile-position: 30% top; }
  .route-title { --role-hero-mobile-position: 52% top; }
  .route-affiliates { --role-hero-mobile-position: 38% top; }
  .route-home-inspection { --role-hero-mobile-position: 76% top; }
  .route-transaction-coordination { --role-hero-mobile-position: 69% top; }
  .route-teams-branches-organizations { --role-hero-mobile-position: 72% top; }
  .tool-lines { grid-template-columns: 1fr; }.day-line { min-height: 0; }
  .catalog-head h2, .role-workflow-head h2, .capability-heading h2 { max-width: 19ch; font-size: clamp(2.25rem, 10.5vw, 2.9rem); line-height: 1.08; }
  .catalog-index { flex-wrap: nowrap; margin-inline: -14px; padding-inline: 14px; overflow-x: auto; scrollbar-width: thin; }
  .catalog-index a { flex: 0 0 auto; }
  .catalog-row { grid-template-columns: 36px 54px 1fr; gap: 16px; align-items: start; }
  .catalog-icon { width: 50px; height: 50px; }.catalog-name h3 { font-size: 1.2rem; }
  .catalog-shift { grid-column: 1 / -1; margin-left: 52px; padding-left: 16px; }
  .affiliate-tabs { display: flex; margin-inline: -14px; padding-inline: 14px; overflow-x: auto; border-left: 0; }
  .affiliate-tabs button { flex: 0 0 190px; min-height: 94px; border-top: 1px solid #504A66; }
  .affiliate-panel { margin-inline: -14px; border-inline: 0; }.affiliate-panel-hero { grid-template-columns: 1fr; }.affiliate-panel-hero h3 { max-width: 18ch; font-size: clamp(2.2rem,10vw,2.75rem); line-height: 1.08; }
  .affiliate-tools ul { grid-template-columns: 1fr; }.affiliate-workflow h4, .affiliate-tools h4 { max-width: 18ch; font-size: clamp(2rem, 9.5vw, 2.6rem); line-height: 1.1; }.affiliate-workflow li { grid-template-columns: 28px 38px 1fr; gap: 12px; }
  .role-workflow-track li { grid-template-columns: 1fr; gap: 16px; min-height: 0; }.role-workflow-value { grid-template-columns: 1fr; gap: 12px; }.workflow-node { grid-template-columns: 28px 52px; }.workflow-node svg { width: 50px; height: 50px; padding: 12px; }
  .workflow-intro { margin-bottom: 42px; }.workflow-intro h2 { max-width: 18ch; font-size: clamp(2.25rem,10.5vw,2.85rem); line-height: 1.08; }
  .listing-flow { grid-template-columns: 1fr; }
  .flow-stage { padding-inline: 14px; border-right: 0; border-bottom: 1px solid rgba(233,217,181,.16); }
  .workflow-payoff { grid-template-columns: 1fr; gap: 12px; }
  .mortgage-flow { padding-inline: 20px; }.mortgage-flow header { min-height: 0; }
  .capability-tabs { display: flex; margin-inline: -14px; padding-inline: 14px; overflow-x: auto; border-left: 0; }
  .capability-tabs button { flex: 0 0 180px; min-height: 96px; border-top: 1px solid #625C75; }
  .capability-panel { margin-inline: -14px; border-inline: 0; }
  .capability-panel h3 { max-width: 18ch; font-size: clamp(2.25rem,10.5vw,2.8rem); line-height: 1.08; }
  .role-capability-tabs { display: flex; }
  .suite-header h3 { max-width: 18ch; font-size: clamp(2.25rem,10.5vw,2.8rem); line-height: 1.08; }
  .suite-org { padding-inline: 14px; }
  .suite-core { margin-bottom: 38px; }
  .suite-branches { grid-template-columns: 1fr; }
  .suite-branches section { border-right: 0; padding-inline: 10px; }
  .branch-head { min-height: 0; margin-bottom: 22px; }
  .suite-foundation > div, .suite-integrations > div { grid-template-columns: 1fr; }
}

/* Future Dusk / Black identity system */
::selection { color: #12121A; background: #E9D9B5; }
.site-header {
  border-color: rgba(156,119,75,.34);
  background: rgba(18,18,26,.96);
  box-shadow: 0 16px 40px rgba(18,18,26,.2);
}
.desktop-nav a:not(.button):hover,
.desktop-nav a[aria-current="page"]:not(.button) { text-decoration-color: var(--orange); }
.nav-menu { background: #242233; }
.nav-menu a:hover { color: var(--indigo); background: var(--cream); }
.button { border-color: var(--orange); }
.button:hover { color: var(--indigo); border-color: var(--cream); background: var(--cream); }
.button.orange { color: var(--indigo); border-color: #B38A57; background: #B38A57; }
.button.orange:hover { color: var(--indigo); border-color: var(--cream); background: var(--cream); }

.hero-command { color: var(--white); background: var(--indigo); }
.hero-command::before {
  background: linear-gradient(90deg, rgba(18,18,26,.99) 0%, rgba(18,18,26,.93) 38%, rgba(52,49,78,.48) 70%, rgba(18,18,26,.12) 100%);
}
.hero-command::after { height: 5px; background: var(--cyan); }
.hero-command .hero-photo { filter: saturate(.72) contrast(1.06) sepia(.08); }
.hero-command h1 strong { color: var(--cream); }
.hero-command .lead { color: #DED2BB; }
.hero-proof { color: #C2B79F; }
.hero-proof span::before { background: var(--orange); }

.tension { color: var(--white); background: var(--indigo); }
.tension-title h2 span { color: #C7A468; }
.burden-list { border-color: rgba(156,119,75,.56); }
.burden { border-color: rgba(233,217,181,.18); }
.burden b { color: #B98D58; }
.burden p { color: #BDB4A4; }

.instrument,
.infographic-section,
.affiliate-catalog,
.role-workflow,
.workflow-showcase,
.capability-explorer { color: var(--white); background: var(--indigo-2); }
.dashboard-scene,
.infographic-frame,
.suite-core,
.catalog-icon.large,
.affiliate-tools { background: #1D1C2A; }
.dashboard-scene,
.infographic-frame { border-color: rgba(156,119,75,.7); box-shadow: 0 34px 80px rgba(18,18,26,.42); }
.live,
.priority small,
.life-step strong,
.day-column.after h2,
.role-workflow-value strong,
.flow-stage > strong,
.mortgage-flow header span,
.capability-columns h4 { color: #C7A468; }

.cyan-field,
.tool-belt,
.affiliate-impact { color: var(--indigo); background: var(--cream); }
.cyan-field .section-intro,
.cyan-list .role-row p,
.tool-belt .section-intro,
.tool-line p,
.affiliate-impact span { color: var(--ink-soft); }
.role-list.cyan-list,
.cyan-list .role-row,
.tool-lines,
.tool-line { border-color: rgba(18,18,26,.24); }
.cyan-list .role-row .arrow { border-color: var(--indigo); background: rgba(247,240,227,.36); }
.cyan-list .role-row:hover .arrow { color: var(--white); border-color: var(--cyan); background: var(--cyan); }

.hero-promise { background: var(--white); }
.hero-promise .statement blockquote { color: var(--indigo); }
.hero-promise .statement aside { color: var(--ink-soft); border-color: var(--orange); }
.orange-rule { background: var(--orange); }

.role-hero-v2 { background: var(--indigo); }
.role-hero-v2::after { background: linear-gradient(90deg, rgba(18,18,26,.98) 0%, rgba(18,18,26,.9) 43%, rgba(52,49,78,.22) 76%); }
.role-hero-v2 img { filter: saturate(.72) contrast(1.05) sepia(.06); }
.daily-shift,
.outcome-band,
.founding-banner { background: var(--indigo); }
.shift-arrow,
.catalog-icon,
.workflow-node svg { border-color: var(--orange); color: var(--orange); stroke: var(--orange); }

.affiliate-tabs button[aria-selected="true"],
.capability-tabs button[aria-selected="true"],
.choice input:checked + span,
.form-message { color: var(--indigo); border-color: var(--cream); background: var(--cream); }
.affiliate-panel,
.capability-panel,
.suite-map { border-color: var(--orange); background: var(--indigo); }
.suite-core,
.suite-branches { border-color: var(--orange); }
.suite-core::after,
.suite-branches section::before { background: var(--orange); }
.suite-foundation > div span { color: var(--white); background: var(--cyan); }

.article-page > footer { color: var(--indigo); background: var(--cream); }
.cta-band { color: var(--white); background: var(--cyan); }
.cta-band .button { color: var(--indigo); border-color: var(--cream); background: var(--cream); }
.cta-band .button:hover { color: var(--white); border-color: var(--orange); background: var(--indigo); }
.site-footer { color: var(--cream); background: var(--indigo); }
.footer-col h2 { color: #B98D58; }
.footer-col a { color: #DED2BB; }
.footer-col a:hover { text-decoration-color: var(--orange); }

@media (max-width: 980px) {
  .mobile-nav { color: var(--cream); background: var(--indigo); }
  .mobile-nav a { color: var(--cream); border-color: var(--indigo-2); }
  .mobile-nav .sub { color: #BDB4A4; }
  .mobile-nav .button { color: var(--indigo); border-color: #B38A57; background: #B38A57; }
}

@media (max-width: 680px) {
  .hero-command::before {
    background: linear-gradient(180deg, rgba(18,18,26,.26) 0%, rgba(52,49,78,.52) 42%, rgba(18,18,26,.96) 66%, #12121A 100%);
  }
}
