/* Existing page content, expressed in the approved illustrated agency identity.
   Loaded after both parent stylesheets and the approved homepage stylesheet. */
.fmw-legacy {
  --cream: #faf4e8;
  --paper: #faf4e8;
  --paper-2: #f1e8d8;
  --white: #fffaf1;
  --forest: #222c48;
  --forest-deep: #222c48;
  --forest-mid: #465a83;
  --sage: #c9d2e7;
  --sage-soft: #e3e6ef;
  --sage-pale: #f1e8d8;
  --terracotta: #a64126;
  --terracotta-dark: #91361e;
  --gold: #edc0a5;
  --ink: #222c48;
  --muted: #575c6b;
  --line: #d4cbbf;
  --shadow: none;
  --shadow-small: none;
  --radius: 0px;
  --radius-small: 0px;
  --shell: min(1320px, calc(100% - 112px));
  --serif: Fraunces, Georgia, serif;
  --sans: Work, Arial, sans-serif;
  --review-ink: #222c48;
  --review-green: #222c48;
  --review-green-deep: #222c48;
  --review-cream: #faf4e8;
  --review-paper: #fffaf1;
  --review-sage: #e3e6ef;
  --review-clay: #a64126;
  --review-gold: #edc0a5;
  --review-line: #d4cbbf;
  --review-shadow: none;
  color: var(--ink);
  background: var(--cream);
  font: 400 18px/1.6 var(--sans);
}
.fmw-legacy .shell { width: var(--shell); margin-inline: auto; }
.fmw-legacy .shell.narrow { max-width: 820px; }
.fmw-legacy :is(h1,h2,h3,h4) { color: var(--ink); font-family: var(--serif); font-weight: 700; letter-spacing: -.025em; }
.fmw-legacy h1 { font-size: clamp(48px,5.5vw,82px); line-height: 1.04; max-width: 16ch; }
.fmw-legacy h2 { font-size: clamp(34px,3.6vw,54px); line-height: 1.1; max-width: 23ch; }
.fmw-legacy h3 { font-size: clamp(25px,2.3vw,34px); line-height: 1.17; }
.fmw-legacy h4 { font-size: 21px; line-height: 1.25; }
.fmw-legacy p { margin: 0 0 1.1em; }
.fmw-legacy p:last-child { margin-bottom: 0; }
.fmw-legacy p+p { margin-top: 1em; }
.fmw-legacy :is(.lead,.section-intro) { color: var(--muted); font-size: 18px; line-height: 1.6; }
.fmw-legacy .lead { margin-top: 26px; max-width: 58ch; }
.fmw-legacy .eyebrow { color: var(--rust); margin-bottom: 19px; font: 600 12px/1.5 var(--sans); letter-spacing: .1em; }
.fmw-legacy .eyebrow::before,
.fmw-legacy .dot-field::before,
.fmw-legacy .dot-field::after,
.fmw-legacy .hero-media::before,
.fmw-legacy .review-form-card::before { content: none; }
.fmw-legacy .dot-field { overflow: visible; }
.fmw-legacy .section { padding-block: clamp(58px,7vw,100px); }
.fmw-legacy .section-heading.wide { max-width: 900px; margin-bottom: 44px; }
.fmw-legacy .section-heading.wide h2 { max-width: 27ch; }
.fmw-legacy :is(.section-intro,.split-copy>p) { max-width: 65ch; }
.fmw-legacy :is(.section-actions,.button-row,.hero-actions) { gap: 18px; }
.fmw-legacy .button { width: auto; min-height: 54px; padding: 16px 22px; border: 1px solid var(--ink); border-radius: 0; background: var(--ink); color: var(--cream); box-shadow: none; font: 600 15px/1.4 var(--sans); text-align: center; }
.fmw-legacy .button:hover { background: #354568; border-color: #354568; box-shadow: none; transform: none; }
.fmw-legacy .button-secondary { background: transparent; color: var(--ink); }
.fmw-legacy .button-secondary:hover { color: var(--cream); }
.fmw-legacy :is(.arrow-link,.text-link) { color: var(--ink); font: 600 15px/1.5 var(--sans); }
.fmw-legacy :is(.prose,.lead,.microcopy,.privacy-copy,.fmw-direct-fallback) a { text-decoration: underline; text-underline-offset: .2em; }
.fmw-legacy a:hover { text-decoration-thickness: 2px; }
.fmw-legacy :is(a,button,input,select,textarea,summary):focus-visible { outline: 3px solid var(--rust); outline-offset: 4px; box-shadow: 0 0 0 2px var(--cream); }

/* Original heroes have an inner grid; the homepage uses the outer hero itself. */
.fmw-legacy .hero { display: block; padding: 60px 0 74px; background: var(--cream); }
.fmw-legacy :is(.hero-grid,.article-grid) { display: grid; grid-template-columns: minmax(0,1.14fr) minmax(0,.86fr); align-items: center; gap: clamp(36px,5vw,74px); }
.fmw-legacy .hero-copy { padding: 0; min-width: 0; }
.fmw-legacy :is(.hero-grid,.article-grid,.lead-capture-grid,.split-grid,.split-layout,.service-grid,.service-card-grid,.insight-grid,.form-grid)>* { min-width: 0; }
.fmw-legacy .hero h1 { margin: 0; font-size: clamp(48px,5.5vw,82px); line-height: 1.04; letter-spacing: -.035em; }
.fmw-legacy .hero h1 span { margin-left: 0; color: inherit; }
.fmw-legacy .hero .button { margin-top: 0; }
.fmw-legacy .hero-media { margin: 0; min-width: 0; }
.fmw-legacy .hero-media img { width: 100%; height: auto; max-height: 540px; aspect-ratio: 1; object-fit: cover; object-position: center; border-radius: 0; box-shadow: none; }
.fmw-legacy :is(.hero-media,.split-media,.editorial-image) figcaption { color: var(--muted); border-top: 1px solid var(--line); padding-top: 14px; margin-top: 15px; font-size: 13px; }
.fmw-legacy :is(.lead-hero,.article-hero,.legal-hero,.form-section,.founder-panel,.fit-audience-section,.thank-you-main,.review-offer) { background: var(--cream); }
.fmw-legacy :is(.article-hero,.legal-hero) { padding-block: 66px; }
.fmw-legacy .legal-hero h1 { max-width: 22ch; }
.fmw-legacy .lead-hero-grid { grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 60px; }
.fmw-legacy :is(.split-grid,.split-layout,.review-grid,.preview-grid,.problem-layout,.fit-grid,.guardrail-grid,.faq-layout,.lead-capture-grid) { gap: clamp(36px,6vw,86px); }
.fmw-legacy :is(.split-media img,.editorial-image img,.review-grid>figure img,.preview-art img,.article-grid figure img,.process-image img,.comparison-section figure img,.problem-layout figure img) { border-radius: 0; box-shadow: none; object-fit: contain; object-position: center; max-height: 600px; }
.fmw-legacy .intro-band { text-align: left; border-block: 1px solid var(--line); }
.fmw-legacy .intro-band .section-heading { margin-inline: 0; }
.fmw-legacy .badge-row { justify-content: flex-start; gap: 12px 24px; }
.fmw-legacy :is(.badge-row span,.hero-trust-row span,.founder-proof-list span,.sample-label) { background: transparent; border: 0; border-bottom: 1px solid var(--line); border-radius: 0; color: var(--muted); padding: 8px 0; font-weight: 600; }

/* Flat editorial groups replace elevated, rounded component cards. */
.fmw-legacy :is(.visual-card,.visual-card-image,.service-card,.price-card,.principles-grid article,.comparison-grid article,.routes-grid article,.insight-card,.fit-card,.scope-card,.priority-card,.founder-grid,.evidence-board,.founder-note-card,.review-form-card,.sample-report-board,.coverage-grid,.fit-audience-cards article,.article-cta,.thank-you-card,.thank-you-flow article) { border-radius: 0; box-shadow: none; }
.fmw-legacy :is(.services-section,.insights-section,.faq-section,.question-section,.routes-section,.principles-section,.pricing-section,.review-preview,.ai-feature) { background: var(--cream); }
.fmw-legacy :is(.theme-sage,.review-coverage) { background: #e3e6ef; }
.fmw-legacy :is(.service-grid,.service-card-grid,.insight-grid) { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 62px 56px; }
.fmw-legacy :is(.service-card,.service-card-grid .service-card,.insight-card) { display: block; min-height: 0; background: transparent; border: 0; overflow: visible; }
.fmw-legacy :is(.service-image,.insight-image) { min-height: 0; }
.fmw-legacy :is(.service-image img,.insight-image img) { width: 100%; height: auto; min-height: 0; max-height: none; aspect-ratio: 1; object-fit: cover; object-position: center; }
.fmw-legacy :is(.service-body,.insight-card>div:not(.insight-image)) { padding: 27px 0 0; }
.fmw-legacy :is(.service-body h3,.insight-card h2,.insight-card h3) { font-size: clamp(28px,3vw,40px); max-width: 24ch; margin: 12px 0 18px; }
.fmw-legacy :is(.service-body p,.insight-card p) { font-size: 16px; max-width: 54ch; }
.fmw-legacy :is(.price-card,.principles-grid article,.routes-grid article,.scope-card,.fit-audience-cards article,.fit-audience-cards article:last-child,.visual-card) { background: transparent; border: 0; border-top: 1px solid var(--line); padding: 25px 0; min-height: 0; }
.fmw-legacy :is(.principles-grid,.price-grid,.routes-grid,.scope-grid) { gap: 34px; }
.fmw-legacy .mini-dot { background: var(--rust); width: 30px; height: 3px; border-radius: 0; box-shadow: none; }
.fmw-legacy .principles-grid h3 { margin-top: 24px; }
.fmw-legacy :is(.question-grid h3,.steps-grid h3) { font-size: 27px; margin-top: 22px; }
.fmw-legacy :is(.question-grid p,.steps-grid p,.principles-grid p,.scope-card p) { font-size: 16px; }
.fmw-legacy :is(.check-list li,.guardrail-list li) { font-weight: 400; padding-block: 15px; }
.fmw-legacy .check-list li::before { color: var(--rust); background: transparent; border-radius: 0; font-size: 17px; }
.fmw-legacy :is(.priority-card,.evidence-board article) { border: 0; border-top: 1px solid var(--line); background: transparent; padding: 22px 0; }
.fmw-legacy .evidence-board { background: transparent; border: 0; }
.fmw-legacy :is(.priority-card>span,.evidence-board article>span,.service-kicker span,.review-list article>span,.capture-point>span,.leak-list article>span) { background: transparent; color: var(--rust); border-radius: 0; font: 700 23px/1.2 var(--serif); }
.fmw-legacy :is(.priority-card:nth-child(2)>span,.priority-card:nth-child(3)>span,.evidence-board article:nth-child(2)>span,.evidence-board article:nth-child(3)>span) { background: transparent; color: var(--rust); }
.fmw-legacy .faq-list summary { font: 600 18px/1.5 var(--sans); min-height: 62px; }
.fmw-legacy .faq-list summary::after { color: var(--rust); background: transparent; border-radius: 0; font-size: 27px; }
.fmw-legacy .faq-list details div { color: var(--muted); font-size: 17px; line-height: 1.6; }

/* Ink-blue sections keep light text and readable controls. */
.fmw-legacy :is(.theme-forest,.journey,.journey-section,.guardrails,.fit-section,.confidence-strip,.scope-band,.lead-capture,.final-cta,.final-review-cta,.founder-identity-art,.founder-note-card) { color: var(--cream); background: var(--ink); }
.fmw-legacy :is(.theme-forest,.journey,.journey-section,.guardrails,.fit-section,.lead-capture,.final-cta,.final-review-cta,.founder-identity-art,.founder-note-card) :is(h2,h3,h4) { color: var(--cream); }
.fmw-legacy :is(.theme-forest,.journey,.journey-section,.guardrails,.fit-section,.lead-capture,.final-cta,.final-review-cta) .eyebrow { color: #edc0a5; }
.fmw-legacy :is(.theme-forest .section-intro,.theme-forest .split-copy>p,.theme-forest figcaption,.journey-grid p,.guardrail-list li,.fit-card p,.confidence-grid span,.scope-band p,.scope-note p,.lead-capture-copy>p,.capture-point small,.capture-reviewer p,.final-cta p,.final-cta small,.final-review-cta p,.founder-identity-art p,.founder-identity-art small,.founder-note-card small) { color: #d4d9e5; }
.fmw-legacy :is(.theme-forest .check-list li,.capture-point strong,.capture-reviewer strong) { color: var(--cream); }
.fmw-legacy :is(.theme-forest .check-list li::before,.guardrail-list li::before) { color: #edc0a5; background: transparent; border-radius: 0; }
.fmw-legacy :is(.journey-grid article>span,.route-strip span:not(:last-child)::after,.capture-point>span) { color: #edc0a5; }
.fmw-legacy :is(.journey-grid,.fit-card) { border-radius: 0; background: transparent; }
.fmw-legacy :is(.final-cta,.final-review-cta,.theme-forest,.fit-section) .button { color: var(--ink); background: var(--cream); border-color: var(--cream); }
.fmw-legacy :is(.final-cta,.final-review-cta,.theme-forest,.fit-section) .button:hover { background: #edc0a5; border-color: #edc0a5; }
.fmw-legacy :is(.final-cta,.final-review-cta,.theme-forest,.fit-section) .button-secondary { color: var(--cream); background: transparent; }
.fmw-legacy :is(.final-cta,.final-review-cta,.theme-forest,.fit-section) .button-secondary:hover { color: var(--ink); background: var(--cream); }
.fmw-legacy :is(.theme-forest,.guardrails,.fit-section,.final-cta,.final-review-cta) :is(a,summary):focus-visible { outline-color: #edc0a5; box-shadow: none; }
.fmw-legacy :is(.founder-mark,.reviewer-mark) { border: 0; border-radius: 0; background: var(--rust); box-shadow: none; color: var(--cream); }
.fmw-legacy .founder-identity-art { min-height: 420px; border-radius: 0; box-shadow: none; padding: clamp(30px,4vw,60px); }
.fmw-legacy .founder-identity-art h2 { font-size: clamp(40px,4vw,62px); }
.fmw-legacy .founder-note-card { padding: 38px; }
.fmw-legacy .founder-note-card blockquote { font-size: clamp(26px,2.8vw,38px); line-height: 1.25; }

/* Review form behavior, optional sections and status visibility stay with parent JS. */
.fmw-legacy .review-form-card { background: var(--review-paper); border: 1px solid var(--line); overflow: visible; }
.fmw-legacy .review-form { padding: clamp(24px,3vw,38px); color: var(--ink); }
.fmw-legacy .review-form :is(h2,h3) { color: var(--ink); font-size: 32px; max-width: none; }
.fmw-legacy .review-form label { color: var(--ink); font-weight: 600; font-size: 16px; }
.fmw-legacy :is(.review-form,.fmw-form) :is(input,select,textarea) { min-height: 52px; font: 400 16px/1.5 var(--sans); color: var(--ink); background: #fff; border: 1px solid #797c87; border-radius: 0; box-shadow: none; }
.fmw-legacy :is(.review-form,.fmw-form) :is(input,select,textarea):focus { outline: 3px solid var(--rust); outline-offset: 2px; border-color: var(--ink); box-shadow: none; }
.fmw-legacy .fmw-form .check input { min-height: 20px; }
.fmw-legacy .review-form .review-submit { width: 100%; }
.fmw-legacy .review-form :is(.field-help,.privacy-copy) { color: var(--muted); font-size: 14px; }
.fmw-legacy .review-form details.form-optional { border-radius: 0; background: var(--cream); padding: 14px; }
.fmw-legacy .review-form details.form-optional summary { min-height: 30px; font-weight: 600; }
.fmw-legacy .form-assurances span { color: var(--muted); font-size: 13px; font-weight: 400; }
.fmw-legacy :is(.form-status,.form-warning,.form-success,.form-error,.fmw-direct-fallback,.human-note) { border-radius: 0; }
.fmw-legacy :is(.form-status.is-success,.form-success) { color: #222c48; background: #e3e6ef; border-color: #7a87a5; }
.fmw-legacy .human-note { color: var(--ink); background: #e3e6ef; }
.fmw-legacy :is(.context-preview,.hero-report-teaser,.sample-report-top,.sample-priorities,.scope-note,.preview-ticket) { color: var(--cream); background: var(--ink); border-radius: 0; box-shadow: none; }
.fmw-legacy :is(.context-preview-heading span,.context-preview-list span,.sample-report-top>div>span,.sample-kicker) { color: #edc0a5; }
.fmw-legacy .context-preview { padding: 24px; }
.fmw-legacy .context-preview-list>div { padding: 12px 0; border: 0; border-top: 1px solid #707c94; border-radius: 0; background: transparent; }
.fmw-legacy .context-preview-list b { font-size: 13px; line-height: 1.45; }
.fmw-legacy :is(.sample-report-top p,.sample-priorities p,.sample-priorities .sample-disclaimer,.hero-report-teaser li span) { color: #d4d9e5; }
.fmw-legacy :is(.sample-method-row,.sample-competitor-snapshot,.report-cta,.thank-you-flow article) { background: #e3e6ef; border-radius: 0; }
.fmw-legacy :is(.sample-method-row span,.sample-competitor-table span,.sample-competitor-snapshot p,.plain-list li) { color: var(--muted); }
.fmw-legacy :is(.status,.sample-metric,.sample-stamp,.sample-competitor-table) { border-radius: 0; }
.fmw-legacy :is(.status-mixed,.status-protect,.sample-metric.metric-protect) { color: var(--ink); background: #e3e6ef; }
.fmw-legacy .review-visual::after { background: linear-gradient(180deg,transparent 30%,rgba(34,44,72,.85)); }
.fmw-legacy .visual-caption span { background: var(--ink); border-radius: 0; }
.fmw-legacy .thank-you-card { border: 0; border-top: 2px solid var(--ink); background: transparent; }
.fmw-legacy .thank-you-icon { border-radius: 0; background: var(--ink); }
.fmw-legacy .prose { max-width: 72ch; font-size: 18px; line-height: 1.75; }
.fmw-legacy .prose h2 { font-size: 34px; max-width: none; margin-top: 44px; }
.fmw-legacy .prose h3 { margin: 30px 0 16px; }
.fmw-legacy .prose p { color: var(--muted); }
.fmw-legacy .prose li { margin-block: .5em; }
.fmw-legacy :is(.prose,.privacy-copy,.fmw-direct-fallback) a { overflow-wrap: anywhere; }
.fmw-legacy .prose :is(table,pre) { display: block; max-width: 100%; overflow-x: auto; }
.fmw-legacy :is(.article-cta,.report-cta) { padding: 28px; }

@media (max-width:1100px) {
  .fmw-legacy { --shell: calc(100% - 64px); }
  .fmw-legacy :is(.hero-grid,.article-grid) { gap: 36px; }
  .fmw-legacy .hero h1 { font-size: clamp(46px,5.8vw,66px); }
  .fmw-legacy :is(.service-grid,.service-card-grid,.insight-grid) { gap: 42px 32px; }
  .fmw-legacy :is(.principles-grid,.price-grid,.scope-grid) { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .fmw-legacy .lead-capture-grid { grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); gap: 34px; }
}
@media (max-width:860px) {
  .fmw-legacy :is(.hero-grid,.article-grid,.lead-hero-grid,.lead-capture-grid,.split-grid,.split-layout,.review-grid,.preview-grid,.problem-layout,.fit-grid,.guardrail-grid,.faq-layout,.form-layout,.fit-audience-grid,.sample-report-grid) { grid-template-columns: 1fr; }
  .fmw-legacy .hero-media { max-width: 600px; }
  .fmw-legacy .hero-media img { max-height: none; aspect-ratio: 4/3; }
  .fmw-legacy .hero h1 { max-width: 18ch; font-size: clamp(48px,7.5vw,72px); }
  .fmw-legacy :is(.review-form-card,.preview-art) { max-width: none; }
  .fmw-legacy .service-detail.reverse .split-media { order: 0; }
  .fmw-legacy .final-cta-inner { grid-template-columns: 1fr; gap: 28px; }
  .fmw-legacy .button-stack { justify-items: start; }
}
@media (max-width:600px) {
  .fmw-legacy { --shell: calc(100% - 40px); font-size: 16px; }
  .fmw-legacy .hero { padding-block: 37px 50px; }
  .fmw-legacy .hero h1 { font-size: clamp(40px,10.5vw,58px); line-height: 1.07; max-width: none; }
  .fmw-legacy h2 { font-size: clamp(32px,8.5vw,43px); }
  .fmw-legacy h3 { font-size: 27px; }
  .fmw-legacy .eyebrow { font-size: 11px; letter-spacing: .08em; }
  .fmw-legacy :is(.lead,.section-intro) { font-size: 17px; }
  .fmw-legacy .section { padding-block: 48px; }
  .fmw-legacy .section-heading.wide { margin-bottom: 30px; }
  .fmw-legacy :is(.service-grid,.service-card-grid,.insight-grid,.principles-grid,.price-grid,.routes-grid,.scope-grid,.question-grid,.steps-grid.count-3,.steps-grid.count-4,.coverage-grid,.fit-cards,.fit-audience-cards) { grid-template-columns: 1fr; }
  .fmw-legacy :is(.service-grid,.service-card-grid,.insight-grid) { gap: 42px; }
  .fmw-legacy :is(.service-image img,.insight-image img) { aspect-ratio: 4/3; }
  .fmw-legacy :is(.question-grid article,.steps-grid article) { border-right: 0; margin-right: 0; padding: 23px 0; }
  .fmw-legacy :is(.button-row,.hero-actions) { display: flex; flex-direction: column; align-items: stretch; gap: 12px; }
  .fmw-legacy .button-row .button { width: 100%; }
  .fmw-legacy .review-form { padding: 23px 20px; }
  .fmw-legacy .review-form :is(h2,h3) { font-size: 29px; }
  .fmw-legacy .review-form :is(.form-grid,.optional-fields) { grid-template-columns: 1fr; }
  .fmw-legacy .review-form .form-wide { grid-column: auto; }
  .fmw-legacy .context-preview { padding: 20px; }
  .fmw-legacy .context-preview-list { grid-template-columns: 1fr; gap: 0; }
  .fmw-legacy .context-preview-list>div { display: grid; grid-template-columns: 90px 1fr; gap: 14px; }
  .fmw-legacy .context-preview-list b { margin: 0; }
  .fmw-legacy .form-assurances { gap: 12px; }
  .fmw-legacy .form-assurances span { font-size: 12px; }
  .fmw-legacy :is(.founder-identity-art,.founder-note-card) { min-height: 0; padding: 28px; }
  .fmw-legacy .founder-identity-art h2 { font-size: 39px; }
  .fmw-legacy :is(.article-hero,.legal-hero) { padding-block: 44px; }
  .fmw-legacy .prose { font-size: 17px; }
  .fmw-legacy .prose h2 { font-size: 31px; }
  .fmw-legacy :is(.article-cta,.report-cta) { padding: 22px; }
  .fmw-legacy .thank-you-main { padding-block: 50px; }
  .fmw-legacy .thank-you-card { padding: 28px 0; }
}
@media (prefers-reduced-motion:reduce) {
  .fmw-legacy *, .fmw-legacy *::before, .fmw-legacy *::after { scroll-behavior: auto; transition: none; animation: none; }
}
