/* FinCat Brand Shell V1. Content and financial presentation styles stay in styles.css. */
:root {
  --brand-ink: #203442;
  --brand-ink-hover: #304959;
  --brand-gold: #dbb86e;
  --brand-gold-on-light: #896526;
  --brand-paper: #faf8f3;
  --brand-line: #dddcd6;
  --brand-muted: #536570;
  --brand-focus: #896526;
  --brand-shell-width: 1200px;
  --brand-shell-gutter: clamp(20px, 5vw, 72px);
}
body { background: var(--brand-paper); }
.site-header { max-width: none; margin: 0; padding: 0; background: var(--brand-ink); color: var(--brand-paper); border-bottom: 1px solid #475761; }
.header-inner { width: min(var(--brand-shell-width), calc(100% - 2 * var(--brand-shell-gutter))); margin: 0 auto; min-height: 96px; display: flex; align-items: center; justify-content: space-between; gap: 32px; }
.brand-lockup { flex-shrink: 0; display: inline-flex; align-items: center; gap: 13px; min-height: 48px; text-decoration: none; }
.brand-icon { display: block; flex-shrink: 0; width: 40px; height: 45px; }
.brand.brand-lockup > .brand-name { display: block; }
.brand-name strong { font-family: system-ui, sans-serif; font-size: 26px; line-height: 1.15; letter-spacing: -.035em; font-weight: 650; }
.brand-name small { display: block; font-size: 14px; line-height: 1.5; color: #d9e0e2; margin-top: 3px; letter-spacing: .08em; }
.site-header nav { gap: 8px; flex-wrap: wrap; }
.site-header nav a { font-size: 16px; line-height: 1.5; padding: 12px 14px; border-radius: 6px; font-weight: 500; white-space: nowrap; }
.site-header nav a:hover, .site-header nav a:focus-visible, .site-header nav a[aria-current="page"] { color: var(--brand-paper); background: var(--brand-ink-hover); }
.site-header :is(a,button):focus-visible { outline: 3px solid var(--brand-gold); outline-offset: 3px; }
.skip-link { background: var(--brand-paper); color: var(--brand-ink); }
.skip-link:focus-visible { outline: 3px solid var(--brand-gold-on-light); }
.immersive-home { width: min(var(--brand-shell-width),calc(100% - 2 * var(--brand-shell-gutter))); padding-top: 56px; }
.immersive-home .home-hero { min-height: 600px; grid-template-columns: 1.25fr .75fr; gap: 56px; }
.immersive-home .home-hero::before, .immersive-home .hero-art::before, .immersive-home .hero-art::after { content: none; }
.immersive-home .hero-art { padding: 36px 12px; border-top: 1px solid var(--brand-line); border-bottom: 1px solid var(--brand-line); }
.immersive-home .hero-art img { width: min(100%,320px); }
.immersive-home .eyebrow { color: var(--brand-gold-on-light); font-size: 16px; letter-spacing: .08em; }
.immersive-home h1, .etf-shell h1 { color: var(--brand-ink); }
.immersive-home .home-primary, .etf-shell > .button.primary { background: var(--brand-ink); color: var(--brand-paper); border: 1px solid var(--brand-ink); box-shadow: none; border-radius: 10px; }
.immersive-home .home-primary:hover, .etf-shell > .button.primary:hover { background: var(--brand-ink-hover); }
.immersive-home .home-primary:focus-visible, .etf-shell > .button.primary:focus-visible { outline: 3px solid var(--brand-focus); outline-offset: 4px; }
.immersive-home .home-body, .immersive-home .home-trust { color: var(--brand-muted); }
footer { border-color: var(--brand-line); background: #f2f0e9; }
.etf-shell { max-width: 940px; }
.etf-shell h1 { font-size: clamp(32px,4vw,48px); line-height: 1.35; letter-spacing: -.035em; }
.capability-note { margin: 32px 0; padding: 24px 28px; background: #eef4f7; border-left: 4px solid #607d91; border-radius: 0 12px 12px 0; font-size: 17px; line-height: 1.85; }
.capability-note h2 { font-size: 22px; line-height: 1.5; margin: 0 0 16px; }
.capability-note p:last-child { margin-bottom: 0; }
@media (max-width: 760px) {
  .header-inner { width: calc(100% - 40px); min-height: 0; flex-direction: column; align-items: stretch; gap: 12px; padding: 16px 0 10px; }
  .brand-lockup { align-self: flex-start; }
  .brand.brand-lockup > .brand-name { display: flex; align-items: baseline; gap: 12px; }
  .brand-name small { margin-top: 0; }
  .brand-icon { width: 32px; height: 36px; }
  .site-header nav { justify-content: space-between; gap: 0; border-top: 1px solid #475761; padding-top: 4px; }
  .site-header nav a { font-size: 16px; padding: 10px 3px; }
  .immersive-home { width: calc(100% - 44px); padding-top: 32px; }
  .immersive-home .home-hero { min-height: 0; gap: 40px; }
  .immersive-home .hero-art { width: 100%; padding: 24px 12px; }
  .immersive-home .hero-art img { max-width: 240px; }
  .capability-note { padding: 22px 20px; }
}

/* FINCAT_OWNER_READY_CLOSURE_R3 — bounded editorial finish, after Phase A gate. */
:root {
  --ink: #203442; --forest: #203442; --forest-soft: #40576a;
  --muted: #536570; --line: #d9ddd9;
}
body { background: var(--brand-paper); }
.immersive-home { padding-top: 48px; padding-bottom: 88px; }
.immersive-home .home-hero { gap: clamp(32px,4vw,60px); min-height: 560px; }
.immersive-home h1 { max-width: 10em; line-height: 1.38; letter-spacing: -.035em; }
.immersive-home .home-body { max-width: 29em; margin-top: 26px; }
.immersive-home .home-trust { max-width: 30em; }
.immersive-home .hero-art { position: relative; isolation: isolate; border: 0; padding: 44px 12px; }
.immersive-home .hero-art::before { content: ''; position: absolute; z-index: -1; inset: 8% -5% 2%; width: auto; height: auto; transform: none; border-radius: 50%; background: radial-gradient(ellipse,rgba(219,184,110,.21),rgba(225,229,218,.20) 45%,transparent 72%); }
.immersive-home .hero-art::after { content: ''; position: absolute; z-index: -1; width: 66%; height: 12%; bottom: 7%; left: 17%; border-radius: 50%; background: rgba(62,73,73,.10); filter: blur(16px); }
.immersive-home .hero-art img { width: min(100%,340px); }
.immersive-home .product-section { margin-top: 64px; padding-top: 48px; border-top: 1px solid var(--brand-line); }
.immersive-home .section-heading { align-items: start; gap: 32px; }
.immersive-home .section-heading p { max-width: 29em; line-height: 1.85; }
.home-examples { max-width: 52em; padding-bottom: 32px; }
.brand-belief { margin: 32px 0 12px; color: var(--brand-ink); }
.entry-grid { gap: 48px; }
.entry-card h3 { line-height: 1.55; }
.entry-card .entry-question, .entry-card .entry-description { max-width: 28em; line-height: 1.85; }
.entry-card:hover { transform: none; }
.trust-strip { border-top: 1px solid var(--brand-line); padding-top: 18px; margin-top: 40px; }
.trust-strip div { line-height: 1.8; }
.result-shell { padding-top: 52px; }
.result-shell .primary-action-card { border-radius: 12px; border-left: 3px solid #ae8439; background: #f7edcf; }
.result-shortcuts a, .result-shortcuts button { min-height: 44px; display: inline-flex; align-items: center; }
.result-shortcuts { padding-bottom: 18px; margin-bottom: 48px; }
.reading-explanation { max-width: 42em; font-size: 18px; line-height: 1.95; }
.reading-explanation p { margin: 0 0 20px; }
.reading-explanation p:last-child { margin-bottom: 0; }
.result-shell .dimension-section { padding-top: 32px; }
.dimension-row summary { grid-template-columns: 64px minmax(0,1fr) 24px; gap: 22px; align-items: baseline; padding: 24px 12px; }
.dimension-label { font-size: 17px; font-weight: 700; color: var(--brand-ink); }
.dimension-preview { font-size: 17px; line-height: 1.85; margin: 0; color: var(--brand-muted); }
.dimension-toggle { color: var(--brand-gold-on-light); font-size: 22px; line-height: 1; }
.dimension-row[open] .dimension-toggle { transform: rotate(45deg); }
.dimension-row.dimension-primary { background: #f0f2ec; border-top-color: #9aa897; }
.dimension-row.dimension-primary summary { padding: 26px 20px 16px; }
.dimension-row.dimension-primary .dimension-preview { color: var(--brand-ink); }
.dimension-detail { max-width: 43em; margin: 0 44px 28px 98px; font-size: 17px; line-height: 1.9; }
.dimension-detail h3 { font-size: 21px; line-height: 1.55; margin: 12px 0; }
.dimension-detail .dimension-question { color: var(--brand-ink); font-weight: 600; }
.dimension-detail p { margin: 12px 0; }
.dimension-detail a { display: inline-flex; min-height: 44px; align-items: center; color: var(--brand-gold-on-light); text-underline-offset: 4px; }
.defer-section, .material-unknown { max-width: 46em; margin: 28px 0 40px; padding: 24px 0 8px; }
.defer-section { border-top: 1px solid var(--brand-line); }
.result-shell .defer-section h2, .result-shell .material-unknown h2 { font-size: 23px; line-height: 1.65; }
.defer-section p, .material-unknown p { font-size: 17px; line-height: 1.9; }
.material-unknown { border-left: 3px solid #9caec0; padding: 18px 24px; background: #edf2f5; border-radius: 0 10px 10px 0; }
.material-unknown h3 { font-size: 19px; line-height: 1.7; }
.result-shell .detail-section > details { border: 1px solid var(--brand-line); border-radius: 12px; background: #fffdfa; }
.result-shell .detail-section > details > summary { padding: 24px; min-height: 76px; }
.result-shell .detail-section summary b { background: #e7ecee; color: var(--brand-ink); border-radius: 8px; }
.detail-block { scroll-margin-top: 24px; }
.detail-block h3, .prompt-heading h3 { line-height: 1.65; }
.prompt-heading { max-width: 42em; }
.prompt-heading p, .second-opinion-notice { line-height: 1.85; }
.flow-hero { max-width: 46em; }
.flow-card { box-shadow: 0 10px 36px rgba(32,52,66,.045); }
.trust-hero .lede { max-width: 40em; line-height: 1.9; }
.trust-content { line-height: 1.9; }
.formal-footer { margin-top: 32px; padding: 38px max(24px,calc((100% - 1200px)/2)); text-align: left; background: #edece5; color: var(--brand-muted); border-top: 1px solid var(--brand-line); }
.footer-top { display: flex; align-items: baseline; justify-content: space-between; gap: 24px; flex-wrap: wrap; }
.footer-brand { display: flex; align-items: baseline; gap: 14px; color: var(--brand-ink); text-decoration: none; }
.footer-brand strong { font: 650 25px/1.5 system-ui,sans-serif; letter-spacing: -.025em; }
.footer-brand span { font-size: 15px; }
.formal-footer nav { display: flex; flex-wrap: wrap; gap: 24px; }
.formal-footer nav a { font-size: 16px; min-height: 44px; display: inline-flex; align-items: center; text-underline-offset: 4px; }
.formal-footer > p { max-width: 48em; font-size: 15px; line-height: 1.9; margin: 18px 0 0; }
@media (max-width: 760px) {
  .header-inner { padding-top: 17px; }
  .site-header nav { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); column-gap: 12px; row-gap: 0; }
  .site-header nav a { white-space: normal; min-height: 44px; padding: 10px 2px; }
  .immersive-home { padding-top: 36px; padding-bottom: 48px; }
  .immersive-home h1 { font-size: 35px; line-height: 1.42; }
  .immersive-home .home-hero { min-height: 0; gap: 32px; }
  .immersive-home .hero-art { padding: 18px 18px 26px; }
  .immersive-home .hero-art img { width: min(100%,248px); }
  .immersive-home .product-section { margin-top: 44px; padding-top: 32px; }
  .entry-grid { gap: 16px; }
  .entry-card, .entry-card.retirement { min-height: 0; padding: 28px 0; }
  .result-shell { padding-top: 30px; }
  .result-shell .human-summary h1 { font-size: 30px; line-height: 1.45; }
  .result-shell .primary-action-card { padding: 18px 20px; }
  .result-shortcuts { gap: 8px 22px; margin-bottom: 28px; }
  .result-shortcuts .continue-link { margin-bottom: 4px; }
  .result-shell .why-section { padding-top: 30px; }
  .result-shell .why-section h2, .dimension-section h2 { font-size: 24px; margin-bottom: 22px; }
  .reading-explanation { font-size: 17px; line-height: 1.95; }
  .dimension-row summary { grid-template-columns: 40px minmax(0,1fr) 18px; gap: 12px; padding: 24px 0; }
  .dimension-row.dimension-primary summary { padding: 22px 12px 12px; }
  .dimension-detail { margin: 0 16px 24px 52px; font-size: 17px; }
  .dimension-row.dimension-primary .dimension-detail { margin-left: 24px; margin-right: 24px; }
  .dimension-detail h3 { font-size: 20px; }
  .result-shell .detail-section > details > summary { padding: 20px 16px; }
  .result-shell .detail-section summary span { min-width: 0; }
  .material-unknown { padding: 18px; }
  .formal-footer { padding: 30px 22px; }
  .footer-top { gap: 14px; }
  .formal-footer nav { gap: 20px; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}

/* Remove inherited card-grid typography from the new reading disclosures. */
.result-shell .dimension-list { display: block; }
.result-shell .dimension-row > summary .dimension-label { font-size: 17px; line-height: 1.85; color: var(--brand-ink); }
.result-shell .dimension-row > summary .dimension-preview { font-size: 17px; line-height: 1.85; color: var(--brand-muted); }
.result-shell .dimension-row > summary .dimension-toggle { font-size: 22px; color: var(--brand-gold-on-light); }
.result-shell .dimension-row .dimension-detail { padding: 0; border-radius: 0; background: transparent; }


/* R4 content-frozen art direction. Existing assets and DOM only; no motion. */
:root { --brand-shell-gutter: clamp(22px, 5vw, 72px); }
.header-inner { min-height: 78px; gap: 24px; }
.brand-icon { width: 32px; height: 36px; }
.brand-name strong { font-size: 25px; }
.brand-name small { font-size: 13px; letter-spacing: .07em; }
.site-header nav a { padding: 12px; }
.immersive-home { padding-top: 28px; padding-bottom: 96px; }
.immersive-home .home-hero {
  display: grid; grid-template-columns: minmax(0, 1fr); align-items: center;
  isolation: isolate; min-height: 650px; padding: 56px 0 74px; gap: 0;
}
.immersive-home .home-hero > div:first-child { position: relative; z-index: 2; width: 66%; }
.immersive-home .home-hero::before {
  content: ''; position: absolute; z-index: -2; inset: 1% calc(-1 * var(--brand-shell-gutter)) 0;
  border-radius: 0; pointer-events: none;
  background: radial-gradient(ellipse at 77% 54%,rgba(219,184,110,.20),transparent 49%),
    linear-gradient(174deg,transparent 44%,rgba(229,231,220,.42) 72%,rgba(242,237,223,.5) 88%,transparent 100%);
}
.immersive-home .home-hero::after {
  content: ''; position: absolute; z-index: -1; height: 1px; left: 0; right: 0; bottom: 56px;
  background: linear-gradient(90deg,rgba(137,101,38,.25),rgba(137,101,38,.11) 65%,transparent);
  pointer-events: none;
}
.immersive-home .eyebrow { font-size: 14px; font-weight: 600; letter-spacing: .14em; margin-bottom: 25px; }
.immersive-home h1 { max-width: 10em; font-size: clamp(44px,4.35vw,62px); line-height: 1.32; letter-spacing: -.045em; text-wrap: balance; font-weight: 700; }
.immersive-home .home-body { max-width: 28em; margin-top: 30px; font-size: 19px; line-height: 1.9; }
.immersive-home .home-trust { max-width: 29em; margin-top: 18px; font-size: 16px; }
.immersive-home .home-primary { margin-top: 30px; border-radius: 6px; padding: 16px 26px; font-size: 17px; font-weight: 650; }
.immersive-home .hero-art {
  position: absolute; z-index: 1; right: -1%; bottom: 66px; width: 38%;
  padding: 0; margin: 0; min-height: 0; pointer-events: none;
}
.immersive-home .hero-art img { width: 100%; max-width: 410px; position: relative; z-index: 1; }
.immersive-home .hero-art::before {
  content: ''; position: absolute; z-index: -1; inset: 8% 4% 12% 7%; width: auto; height: auto;
  border-radius: 4px; border: 1px solid rgba(137,101,38,.13); transform: rotate(-9deg);
  background: linear-gradient(125deg,rgba(255,253,248,.88),rgba(247,244,235,.10));
  box-shadow: 10px 14px 0 -1px rgba(236,230,214,.28); pointer-events: none;
}
.immersive-home .hero-art::after { bottom: -1%; left: 10%; width: 80%; height: 8%; background: rgba(32,52,66,.12); filter: blur(18px); pointer-events: none; }
.immersive-home .product-section { margin-top: 38px; padding-top: 52px; }
.immersive-home .section-heading h2 { font-size: clamp(26px,2.3vw,32px); font-weight: 650; line-height: 1.5; }
.immersive-home .section-heading p { max-width: 25em; font-size: 16px; }
.immersive-home .home-examples { max-width: none; margin: 52px 0 40px; padding: 32px 0 32px 30px; border: 0; border-left: 2px solid #b2a17e; }
.home-examples h2 { font-size: 18px; font-weight: 600; color: var(--brand-muted); margin: 0 0 18px; }
.home-examples p { max-width: 44em; font-size: 16px; line-height: 1.85; }
.home-examples p:first-of-type { font-size: clamp(21px,2vw,27px); line-height: 1.65; color: var(--brand-ink); max-width: 30em; }
.home-examples p:first-of-type strong { font-size: 15px; font-weight: 500; color: var(--brand-muted); }
.brand-belief { font-size: 20px; font-weight: 500; padding: 12px 0; margin-top: 40px; }
.entry-grid { gap: 60px; }
.entry-card, .entry-card.retirement { padding: 26px 0 30px; }
.entry-number { color: var(--brand-gold-on-light); font: 500 14px/1.5 system-ui,sans-serif; letter-spacing: .10em; }
.entry-card h3 { margin: 20px 0 16px; font-size: 30px; font-weight: 650; }
.entry-card .entry-question { font-size: 18px; font-weight: 600; }
.entry-card .entry-description { font-size: 16px; }
.entry-link { font-weight: 600; font-size: 16px; }
.entry-card:focus-visible { outline: 3px solid var(--brand-focus); outline-offset: 6px; }
.brand-explanation { margin-top: 46px; font-size: 18px; }
.trust-strip { gap: 36px; margin-top: 28px; padding-top: 18px; }
.trust-strip strong { font-size: 17px; font-weight: 600; }
.trust-strip span { font-size: 16px; line-height: 1.85; }
/* Questionnaire: one quiet paper surface, with progress and inputs primary. */
.flow-shell { max-width: 900px; padding-top: 44px; }
.flow-hero, .flow-shell.retirement .flow-hero { max-width: none; padding: 0 0 30px; border-radius: 0; background: transparent; color: var(--brand-ink); }
.flow-hero h1 { font-size: clamp(29px,3vw,39px); line-height: 1.45; max-width: 19em; }
.flow-hero .eyebrow, .flow-shell.retirement .flow-hero .eyebrow { color: var(--brand-muted); font-size: 15px; }
.flow-shell.retirement .flow-hero h1, .flow-shell.retirement .flow-hero > div > p:last-child { color: var(--brand-ink); }
.flow-badge { padding: 10px 0 10px 24px; background: transparent; border-left: 1px solid var(--brand-line); border-radius: 0; }
.flow-badge strong { font-size: 25px; font-weight: 600; }
.flow-card { border-radius: 10px; box-shadow: none; background: #fffdfa; }
.flow-card h2 { font-size: 27px; line-height: 1.5; }
.flow-shell *, .flow-shell *::before, .flow-shell *::after, .result-shell *, .result-shell *::before, .result-shell *::after { animation: none !important; transition: none !important; }
/* Result: answer first, action second; unknowns retain their original presence. */
.result-shell { padding-top: 46px; }
.result-shell .human-summary h1 { font-size: clamp(30px,3.25vw,44px); line-height: 1.45; max-width: 19em; text-wrap: pretty; }
.result-shell .human-summary .eyebrow { font-size: 16px; font-weight: 500; color: var(--brand-muted); }
.result-shell .human-summary-note { font-weight: 500; max-width: 39em; line-height: 1.95; }
.result-shell .primary-action-card { background: #f1eee4; border-left: 2px solid #a08245; border-radius: 0; padding: 22px 26px; }
.result-shell .primary-action-card h2 { font-weight: 600; }
.result-shortcuts .continue-link { font-weight: 600; }
.dimension-row.dimension-primary { background: #edf0ed; border-top-color: #9baaa0; }
/* Methods: evidence on paper, clear numbered sections. */
.trust-page { max-width: 1000px; padding-top: 52px; }
.trust-hero { padding: 0 0 38px; border-radius: 0; background: transparent; border-bottom: 1px solid var(--brand-line); color: var(--brand-ink); }
.trust-hero h1 { color: var(--brand-ink); font-size: clamp(32px,3.5vw,46px); line-height: 1.45; }
.trust-hero .eyebrow { color: var(--brand-gold-on-light); font-size: 14px; letter-spacing: .10em; }
.trust-hero .lede { color: var(--brand-muted); font-size: 18px; max-width: 39em; }
.trust-content { margin-top: 12px; max-width: 50em; }
.trust-content > section { padding: 32px 0; gap: 28px; }
.trust-content > section > span { background: transparent; width: auto; height: auto; display: block; padding-top: 6px; border-radius: 0; color: var(--brand-gold-on-light); font: 500 15px/1.8 system-ui,sans-serif; }
.trust-content h2 { font-size: 23px; font-weight: 600; line-height: 1.6; }
.trust-content p, .trust-content li { font-size: 17px; line-height: 1.9; }
.formal-footer { padding-top: 42px; padding-bottom: 38px; background: #efeee8; }
.formal-footer > p { max-width: 46em; font-size: 15px; }
@media (max-width: 1024px) and (min-width: 761px) {
  .immersive-home .home-hero { min-height: 620px; }
  .immersive-home .home-hero > div:first-child { width: 69%; }
  .immersive-home .hero-art { right: -2%; width: 34%; bottom: 72px; }
  .immersive-home .home-body, .immersive-home .home-trust { max-width: 27em; }
  .site-header nav a { padding: 12px 8px; font-size: 15px; }
  .header-inner { gap: 16px; }
}
@media (max-width: 760px) {
  .header-inner { width: calc(100% - 40px); min-height: 0; gap: 8px; padding: 12px 0 6px; }
  .brand-lockup { min-height: 42px; gap: 11px; }
  .brand-name strong { font-size: 24px; }
  .brand-name small { font-size: 13px; }
  .site-header nav { padding-top: 2px; }
  .site-header nav a { padding: 9px 2px; min-height: 44px; font-size: 16px; }
  .immersive-home { padding-top: 26px; padding-bottom: 52px; }
  .immersive-home .home-hero { display: flex; min-height: 0; gap: 0; padding: 0 0 30px; }
  .immersive-home .home-hero > div:first-child { width: 100%; }
  .immersive-home .home-hero::before { inset: 16% -22px 0; background: radial-gradient(ellipse at 90% 65%,rgba(219,184,110,.17),transparent 60%),linear-gradient(168deg,transparent 32%,rgba(229,231,220,.37) 80%,transparent); }
  .immersive-home .home-hero::after { bottom: 20px; }
  .immersive-home .eyebrow { font-size: 13px; margin: 0 0 17px; letter-spacing: .10em; }
  .immersive-home h1 { font-size: 34px; line-height: 1.4; max-width: 10em; }
  .immersive-home .home-body { margin-top: 23px; font-size: 17px; line-height: 1.85; }
  .immersive-home .home-trust { margin-top: 16px; font-size: 16px; line-height: 1.8; }
  .immersive-home .home-primary { margin-top: 24px; padding: 15px 23px; min-height: 52px; }
  .immersive-home .hero-art { position: relative; align-self: flex-end; right: 0; bottom: auto; width: 180px; margin: -16px 0 0; padding: 0; }
  .immersive-home .hero-art img { width: 180px; max-width: 100%; }
  .immersive-home .hero-art::before { inset: 6% 2% 10%; }
  .immersive-home .product-section { margin-top: 30px; padding-top: 30px; }
  .immersive-home .section-heading { gap: 16px; }
  .immersive-home .section-heading h2 { font-size: 26px; }
  .immersive-home .home-examples { margin: 30px 0; padding: 6px 0 6px 18px; }
  .home-examples h2 { font-size: 17px; }
  .home-examples p:first-of-type { font-size: 22px; }
  .entry-grid { gap: 12px; }
  .entry-card h3 { font-size: 27px; }
  .brand-belief { font-size: 19px; margin-top: 28px; }
  .brand-explanation { font-size: 18px; margin-top: 28px; }
  .trust-strip { gap: 6px; margin-top: 24px; }
  .flow-shell { padding-top: 28px; }
  .flow-hero { padding-bottom: 22px; gap: 18px; }
  .flow-hero h1 { font-size: 29px; }
  .flow-badge { padding: 0; border: 0; }
  .flow-card { padding: 24px 18px; border-radius: 8px; }
  .flow-card h2 { font-size: 25px; }
  .result-shell { padding-top: 30px; }
  .result-shell .human-summary h1 { font-size: 30px; }
  .result-shell .human-summary-note { font-size: 17px; }
  .result-shell .primary-action-card { padding: 19px 20px; }
  .trust-page { padding-top: 32px; }
  .trust-hero { padding-bottom: 28px; }
  .trust-hero h1 { font-size: 32px; }
  .trust-hero .lede { font-size: 17px; }
  .trust-content > section { grid-template-columns: 26px minmax(0,1fr); gap: 14px; padding: 28px 0; }
  .trust-content h2 { font-size: 22px; }
  .formal-footer { padding: 30px 22px; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}

/* R6: deep result hierarchy only. Complete summaries and unknown disclosures remain visible. */
.result-shell .why-section .reading-explanation { max-width: 36em; line-height: 1.85; }
.result-shell .why-section .reading-explanation p { margin-bottom: 16px; }
.result-shell .dimension-section { padding-top: 20px; }
.result-shell .dimension-section > h2 { margin-bottom: 18px; }
.result-shell .dimension-row:not(.dimension-primary) > summary { padding: 16px 12px; }
.result-shell .dimension-row > summary { grid-template-columns: 64px minmax(0,1fr) 24px; gap: 20px; }
.result-shell .dimension-row > summary .dimension-preview { max-width: 38em; font-size: 16px; line-height: 1.7; }
.result-shell .dimension-row.dimension-primary { margin: 14px 0; border-bottom: 1px solid var(--brand-line); }
.result-shell .dimension-row.dimension-primary > summary { padding: 22px 20px 10px; }
.result-shell .dimension-row.dimension-primary > summary .dimension-preview { color: var(--brand-ink); font-size: 18px; line-height: 1.75; }
.result-shell .dimension-row .dimension-detail { max-width: 36em; margin-bottom: 22px; line-height: 1.8; }
.result-shell .dimension-detail p { margin: 10px 0; }
.result-shell .detail-section > details > summary { min-height: 64px; padding-top: 18px; padding-bottom: 18px; }
.result-shell .detail-body .fact-grid > div { justify-content: flex-start; gap: 10px; min-height: 0; }
@media (max-width: 600px) {
  .result-shell .dimension-row > summary { grid-template-columns: minmax(0,1fr) 24px; gap: 6px 12px; }
  .result-shell .dimension-row:not(.dimension-primary) > summary { padding: 16px 0; }
  .result-shell .dimension-row > summary .dimension-label { grid-column: 1; grid-row: 1; }
  .result-shell .dimension-row > summary .dimension-toggle { grid-column: 2; grid-row: 1; align-self: center; }
  .result-shell .dimension-row > summary .dimension-preview { grid-column: 1 / -1; grid-row: 2; }
  .result-shell .dimension-row.dimension-primary > summary { padding: 18px 16px 8px; }
  .result-shell .dimension-row .dimension-detail,
  .result-shell .dimension-row.dimension-primary .dimension-detail { margin: 0 16px 20px; }
  .result-shell .dimension-row.dimension-primary > summary .dimension-preview { font-size: 17px; }
  .result-shell .detail-section > details > summary { padding: 16px; gap: 12px; }
}

/* Four peer products; reuse FinCat ink, paper, radius and responsive spacing. */
.primary-products{margin:12px 0 28px}.primary-products h2{font-size:22px;margin:0 0 16px}.primary-product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.primary-product-card{display:block;min-width:0;min-height:136px;background:#fffefa;border:1px solid var(--brand-line);border-radius:16px;padding:18px;text-decoration:none;color:var(--brand-ink)}.primary-product-card:hover{border-color:#ae8439;background:#fff8e5}.primary-product-card h3{font-size:19px;margin:7px 0}.primary-product-card p{font-size:14px;line-height:1.65;margin:0;color:var(--brand-muted)}.product-icon{font-size:24px;line-height:1.2}.immersive-home .home-hero{min-height:340px}.immersive-home .hero-art{padding:16px}.immersive-home .hero-art img{width:min(100%,250px)}.immersive-home .product-section{margin-top:24px;padding-top:24px}.home-retirement-link{display:inline-flex;align-items:center;min-height:44px}.immersive-home .home-body{margin-top:16px}
@media(max-width:760px){.header-inner{gap:8px}.site-header nav{grid-template-columns:repeat(4,minmax(0,1fr));column-gap:2px}.site-header nav a{font-size:13px;text-align:center;justify-content:center;white-space:nowrap}.immersive-home{padding-top:22px}.immersive-home .home-hero{display:grid;grid-template-columns:minmax(0,1fr) 78px;gap:12px;min-height:0}.immersive-home h1{font-size:29px}.immersive-home .home-body{font-size:15px;line-height:1.65}.immersive-home .home-trust{font-size:13px}.immersive-home .hero-art{padding:0;align-self:start;margin-top:28px}.immersive-home .hero-art img{width:100%}.immersive-home .eyebrow{font-size:13px}.immersive-home .home-primary{font-size:14px;padding:10px 14px;min-height:44px}.primary-products{margin-top:22px}.primary-products h2{font-size:18px}.primary-product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.primary-product-card{padding:13px;min-height:126px}.primary-product-card h3{font-size:16px;margin:5px 0}.primary-product-card p{font-size:13px}.product-icon{font-size:21px}}

@media(max-width:760px){.immersive-home .hero-art{min-width:0;width:100%}.immersive-home .hero-art img{min-width:0;max-width:100%}}

/* Retirement is a direct navigation/secondary checkup action, never a fifth primary card. */
.checkup-product-actions{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 7px}.checkup-product-actions a{display:flex;align-items:center;min-height:44px;padding:7px 10px;border:1px solid #d9ddd9;border-radius:8px;text-decoration:none;font-size:14px}.checkup-product-actions a:first-child{background:#203442;color:#fffefa}.primary-product-card .retirement-explanation{font-size:12px;line-height:1.6}.checkup-product{min-width:0}
@media(max-width:760px){.site-header nav{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 6px}.site-header nav a{font-size:13px;min-height:44px}.checkup-product-actions{display:grid;grid-template-columns:1fr;gap:4px}.checkup-product-actions a{font-size:12px;padding:6px;justify-content:center}}
