/* Financial services: communications, considered review and recorded decisions. */
.financial-refresh {
  --fs-paper: #fff; --fs-soft: #f1f4f6; --fs-ink: #303a39; --fs-muted: #5b6866;
  --fs-line: #d0dad7; --fs-green: #35675a; --fs-blue: #3c6182; --fs-plum: #745776;
  --fs-hero: #edf3f0; --fs-hero-ink: #30483e; --fs-hero-muted: #546b60;
  --fs-hero-line: #98afa3; --fs-hero-rule: #c2d2c9; --fs-node: #f9fcfa;
  --fs-blue-band: #edf2f7; --fs-statement: #f2eef3; --fs-control: #f0f5f2; --fs-example: #fff;
  background: var(--fs-paper); color: var(--fs-ink);
}
html[data-theme="dark"] .financial-refresh {
  --fs-paper: #222a28; --fs-soft: #2c353a; --fs-ink: #eef4f1; --fs-muted: #c2cec8;
  --fs-line: #4e6159; --fs-green: #b7ddc9; --fs-blue: #b8d7ee; --fs-plum: #ddc0df;
  --fs-hero: #2e4039; --fs-hero-ink: #f1f7f3; --fs-hero-muted: #c5d8ce;
  --fs-hero-line: #879f92; --fs-hero-rule: #637e6f; --fs-node: #384e43;
  --fs-blue-band: #2c3c49; --fs-statement: #3d3440; --fs-control: #2b3932; --fs-example: #293630;
}
html[data-nav-experiment="floating"] body.financial-refresh nav.site-nav:not(.is-scrolled) {
  --masthead-ink: var(--fs-hero-ink); --masthead-muted: var(--fs-hero-muted); --masthead-line: var(--fs-hero-rule);
  --masthead-surface: transparent; --masthead-blur: none;
}
.financial-refresh main { background: var(--fs-paper); color: var(--fs-ink); font-family: Inter, -apple-system, BlinkMacSystemFont, sans-serif; font-size: 18px; line-height: 1.75; }
.financial-refresh main *, .financial-refresh main *::before, .financial-refresh main *::after { box-sizing: border-box; letter-spacing: 0; }
.financial-refresh main :where(h1,h2,h3,p,figure,blockquote,ul,ol,dl,dd) { margin: 0; }
.financial-refresh main :where(h1,h2,h3) { color: inherit; text-wrap: balance; }
.financial-refresh main :where(h1,h2) { font-family: "Avenir Next", "Helvetica Neue", Inter, sans-serif; font-weight: 200; line-height: 1.14; }
.financial-refresh main h2 { font-size: 48px; }
.financial-refresh main h3 { font-size: 22px; line-height: 1.4; font-weight: 500; }
.financial-refresh main p { text-wrap: pretty; }
.financial-refresh main strong { font-weight: 500; }
.financial-refresh main a { color: var(--fs-green); text-underline-offset: 5px; }
.financial-refresh main :where(button,summary) { font: inherit; cursor: pointer; }
.financial-refresh main :where(a,button,summary):focus-visible { outline: 2px solid var(--fs-green); outline-offset: 5px; }
.financial-refresh main [hidden] { display: none !important; }
.financial-refresh main [id] { scroll-margin-top: 125px; }
.financial-refresh main .lucide, .financial-refresh main i[data-lucide] { display: inline-block; width: 22px; height: 22px; flex-shrink: 0; stroke-width: 1.5; }
.fs-shell { width: min(100% - 64px, 1200px); margin-inline: auto; }
.fs-skip { position: fixed; z-index: 10002; left: 20px; top: 20px; padding: 12px 18px; background: #fff; color: #303a39; transform: translateY(-200%); }
.fs-skip:focus { transform: none; }
.fs-section { padding-block: 88px; }
.fs-soft { background: var(--fs-soft); }
.financial-refresh .fs-eyebrow { font-size: 14px; font-weight: 550; color: var(--fs-green); line-height: 1.5; margin-bottom: 18px; }
.fs-heading { max-width: 880px; margin-bottom: 44px; }
.fs-heading > p:last-child { max-width: 790px; margin-top: 22px; color: var(--fs-muted); }
.fs-split { display: grid; grid-template-columns: minmax(0,.95fr) minmax(0,1.05fr); gap: 80px; align-items: start; }
.fs-copy { color: var(--fs-muted); }
.fs-copy p + p { margin-top: 22px; }
.fs-lead { color: var(--fs-ink); font-size: 21px; line-height: 1.65; }
.fs-section-lead { color: var(--fs-muted); margin-top: 26px !important; max-width: 460px; }
.financial-refresh .fs-text-link { display: inline-flex; align-items: center; gap: 12px; margin-top: 25px; font-size: 16px; font-weight: 500; text-decoration: none; }
.fs-text-link:hover { text-decoration: underline !important; }
.fs-text-link .lucide { width: 18px !important; height: 18px !important; }

.fs-hero { padding: 140px 0 0; background: var(--fs-hero); color: var(--fs-hero-ink); overflow: clip; }
.fs-hero-layout { display: grid; grid-template-columns: minmax(0,.92fr) minmax(0,1.08fr); gap: 64px; align-items: center; }
.financial-refresh .fs-hero h1 { font-size: 68px; font-weight: 300; line-height: 1.07; }
.financial-refresh .fs-promise { font-family: "Avenir Next", "Helvetica Neue", Inter, sans-serif; font-size: 32px; font-weight: 300; line-height: 1.25; color: var(--fs-green); margin-top: 24px; }
.fs-hero-description { margin-top: 22px !important; font-size: 19px; line-height: 1.75; color: var(--fs-hero-muted); max-width: 490px; }
.fs-hero-figure { width: 100%; max-width: 600px; min-width: 0; justify-self: end; }
.fs-scene { position: relative; width: 100%; aspect-ratio: 600 / 500; min-height: 500px; }
#fs-hero-canvas, .fs-scene-fallback, .fs-scene-fallback img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; pointer-events: none; }
.fs-scene-fallback { display: none; }
.fs-scene[data-fallback] .fs-scene-fallback { display: block; }
.fs-scene[data-fallback] > :not(.fs-scene-fallback) { visibility: hidden; }
.fs-scene-heading { position: absolute; top: 0; inset-inline: 0; display: flex; align-items: center; justify-content: space-between; gap: 16px; border-bottom: 1px solid var(--fs-hero-rule); padding-bottom: 17px; }
.fs-scene-heading > span:first-child { font-size: 18px; font-weight: 500; line-height: 1.5; }
.fs-scene-heading > span:last-child { display: inline-flex; align-items: center; gap: 7px; color: var(--fs-hero-muted); font-size: 12px; }
.fs-scene-heading .lucide { width: 15px !important; height: 15px !important; }
.fs-node { position: absolute; top: 16%; width: 43%; height: 126px; padding: 16px; display: flex; flex-direction: column; gap: 6px; border-left: 2px solid var(--fs-green); background: var(--fs-node); }
.fs-source { left: 0; }
.fs-policy { right: 0; border-color: var(--fs-blue); }
.fs-node > span { color: var(--fs-green); padding-right: 26px; font-size: 11px; line-height: 1.5; }
.fs-node > .lucide { position: absolute; top: 16px; right: 14px; color: var(--fs-green); width: 20px !important; height: 20px !important; }
.fs-policy > :is(span,.lucide) { color: var(--fs-blue); }
.fs-node strong { margin-top: 8px; font-size: 21px; line-height: 1.3; }
.fs-node small { color: var(--fs-hero-muted); font-size: 12px; line-height: 1.5; }
.fs-review { position: absolute; top: 53%; inset-inline: 0; height: 150px; padding: 16px 20px; background: var(--fs-node); border-left: 2px solid var(--fs-plum); }
.fs-review-heading { display: flex; justify-content: space-between; align-items: center; gap: 15px; color: var(--fs-plum); font-size: 11px; line-height: 1.5; }
.fs-review-heading > span:last-child { display: flex; align-items: center; gap: 7px; }
.fs-review-heading .lucide { width: 16px !important; height: 16px !important; }
.fs-review > strong { display: block; margin-top: 12px; font-size: 22px; line-height: 1.3; }
.fs-review > p { margin-top: 8px !important; color: var(--fs-hero-muted); font-size: 13px; line-height: 1.6; }
.fs-ledger { position: absolute; bottom: 0; inset-inline: 0; display: flex; gap: 14px; min-height: 58px; border-top: 1px solid var(--fs-hero-rule); padding-top: 14px; }
.fs-ledger > .lucide { color: var(--fs-green); margin-top: 2px; }
.fs-ledger div { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.fs-ledger strong { font-size: 16px; line-height: 1.4; }
.fs-ledger span { font-size: 12px; line-height: 1.5; color: var(--fs-hero-muted); }
.fs-motion-row { display: flex; align-items: center; justify-content: space-between; gap: 14px; min-height: 44px; margin-top: 26px; font-size: 12px; color: var(--fs-hero-muted); }
.fs-motion-button { width: 36px; height: 36px; flex: 0 0 36px; display: grid; place-items: center; border: 1px solid var(--fs-hero-line); border-radius: 50%; padding: 0; background: transparent; color: var(--fs-hero-ink); }
.fs-motion-button > span { display: flex; }
.fs-motion-button .lucide { width: 16px !important; height: 16px !important; }
.fs-motion-button:hover { background: var(--fs-node); }
.fs-motion-button i { display: none !important; }
.fs-motion-button:has(svg) .fs-icon-fallback { display: none; }
.fs-icon-fallback { font-size: 13px; line-height: 1; }
.fs-hero-values { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 32px; padding: 28px 0; margin-top: 32px !important; border-top: 1px solid var(--fs-hero-rule); list-style: none; }
.fs-hero-values li { display: flex; gap: 14px; align-items: baseline; }
.fs-hero-values li > span { font-size: 12px; color: var(--fs-green); }
.fs-hero-values strong { font-size: 16px; color: var(--fs-green); }
.fs-hero-values p { color: var(--fs-hero-muted); font-size: 14px; margin-top: 3px !important; }
.fs-hero-values li:nth-child(2) :is(strong,span) { color: var(--fs-blue); }
.fs-hero-values li:nth-child(3) :is(strong,span) { color: var(--fs-plum); }

.fs-intro { padding-top: 64px; }
.fs-priorities, .fs-steps { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 38px; }
.fs-priorities { margin-top: 46px; }
.fs-priorities article { --fs-accent: var(--fs-green); border-top: 2px solid var(--fs-accent); padding-top: 23px; }
.fs-priorities article:nth-child(2) { --fs-accent: var(--fs-blue); }
.fs-priorities article:nth-child(3) { --fs-accent: var(--fs-plum); }
.fs-priorities .lucide { color: var(--fs-accent); margin-bottom: 16px; }
.fs-priorities p { color: var(--fs-muted); font-size: 17px; margin-top: 15px !important; }
.fs-example { background: var(--fs-example); border-block: 1px solid var(--fs-line); }
.fs-example-header { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 22px 28px; border-bottom: 1px solid var(--fs-line); font-size: 14px; color: var(--fs-muted); }
.fs-example-header > span:first-child { display: inline-flex; align-items: center; gap: 10px; color: var(--fs-green); }
.fs-example-layout { display: grid; grid-template-columns: minmax(0,1.1fr) minmax(0,.9fr); gap: 50px; padding: 34px 28px; }
.fs-example blockquote { font-size: 23px; line-height: 1.65; font-weight: 350; }
.fs-excerpt > p:last-child { margin-top: 24px; color: var(--fs-muted); font-size: 16px; }
.fs-example-context { border-left: 1px solid var(--fs-line); padding-left: 34px; }
.fs-example-context dl > div { padding-block: 17px; border-bottom: 1px solid var(--fs-line); }
.fs-example-context dl > div:first-child { padding-top: 0; }
.fs-example-context dl > div:last-child { border: 0; padding-bottom: 0; }
.fs-example-context dt { color: var(--fs-blue); font-size: 13px; font-weight: 500; }
.fs-example-context dd { color: var(--fs-ink); font-size: 17px; margin-top: 8px !important; }
.fs-example figcaption { border-top: 1px solid var(--fs-line); padding: 19px 28px; color: var(--fs-muted); font-size: 14px; }
.fs-steps { list-style: none; padding: 0; margin-top: 40px !important; }
.fs-steps li > span { display: block; color: var(--fs-green); font-size: 13px; margin-bottom: 12px; }
.fs-steps p { color: var(--fs-muted); font-size: 17px; margin-top: 14px !important; }
.fs-use-cases { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 42px 64px; }
.fs-use-cases article { --fs-use: var(--fs-green); border-top: 2px solid var(--fs-use); padding-top: 24px; display: grid; grid-template-columns: 28px minmax(0,1fr); gap: 20px; }
.fs-use-cases article:nth-child(2), .fs-use-cases article:nth-child(4) { --fs-use: var(--fs-blue); }
.fs-use-cases article:nth-child(3), .fs-use-cases article:nth-child(6) { --fs-use: var(--fs-plum); }
.fs-use-cases article > .lucide { color: var(--fs-use); margin-top: 2px; }
.financial-refresh .fs-use-label { font-size: 13px; color: var(--fs-use); margin-bottom: 12px; }
.fs-use-cases h3 + p { color: var(--fs-muted); font-size: 17px; margin-top: 16px; }
.fs-use-cases .fs-text-link { color: var(--fs-use); }
.fs-blue-band { background: var(--fs-blue-band); }
.fs-blue-band .fs-eyebrow, .fs-blue-band a { color: var(--fs-blue); }
.fs-capabilities { display: flex; flex-direction: column; gap: 28px; }
.fs-capabilities article { display: grid; grid-template-columns: 24px minmax(0,1fr); gap: 20px; padding-bottom: 26px; border-bottom: 1px solid var(--fs-line); }
.fs-capabilities article:last-child { border: 0; padding-bottom: 0; }
.fs-capabilities .lucide { color: var(--fs-blue); margin-top: 4px; }
.fs-capabilities p { color: var(--fs-muted); font-size: 17px; margin-top: 14px !important; }
.fs-statement { padding-block: 52px; background: var(--fs-statement); }
.fs-statement .fs-shell { display: flex; gap: 28px; }
.fs-statement .lucide { color: var(--fs-plum); width: 30px !important; height: 30px !important; margin-top: 8px; }
.fs-statement p { font-family: "Avenir Next", "Helvetica Neue", Inter, sans-serif; font-size: 36px; font-weight: 300; line-height: 1.35; }
.fs-statement span { display: block; color: var(--fs-plum); font-size: 16px; margin-top: 20px; max-width: 850px; }
.fs-control { background: var(--fs-control); }
.fs-environments { list-style: none; padding: 28px 0; border-block: 1px solid var(--fs-line); display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 28px; margin-top: 44px !important; }
.fs-environments li { display: flex; align-items: center; gap: 15px; color: var(--fs-green); font-size: 22px; }
.fs-environments .lucide { width: 28px !important; height: 28px !important; }
.fs-source-strip { display: grid; grid-template-columns: 220px minmax(0,1fr); gap: 20px 36px; margin-top: 30px; }
.fs-source-strip > span { font-size: 14px; color: var(--fs-muted); }
.fs-source-strip ul { padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: 12px 26px; font-size: 15px; color: var(--fs-blue); }
.fs-source-strip > p { grid-column: 2; font-size: 14px; color: var(--fs-muted); max-width: 760px; }
.fs-assurance { display: flex; gap: 16px; padding-top: 24px; margin-top: 38px !important; border-top: 1px solid var(--fs-line); color: var(--fs-muted); font-size: 16px; }
.fs-assurance .lucide { color: var(--fs-green); margin-top: 4px; }
.fs-questions details { border-top: 1px solid var(--fs-line); }
.fs-questions details:last-child { border-bottom: 1px solid var(--fs-line); }
.fs-questions summary { display: flex; align-items: center; justify-content: space-between; gap: 22px; padding: 22px 0; list-style: none; font-size: 18px; line-height: 1.5; }
.fs-questions summary::-webkit-details-marker { display: none; }
.fs-questions summary:hover { color: var(--fs-green); }
.fs-questions summary i { display: none !important; }
.fs-questions summary::after { content: "+"; margin-left: auto; }
.fs-questions summary:has(svg)::after { display: none; }
.fs-questions details[open] summary::after { content: "-"; }
.fs-questions details[open] summary .lucide { transform: rotate(45deg); }
.fs-questions details > div { padding-bottom: 24px; font-size: 17px; color: var(--fs-muted); }
.fs-close { background: var(--fs-hero); }
.fs-close-layout { display: flex; align-items: center; justify-content: space-between; gap: 64px; }
.fs-close h2 { max-width: 730px; }
.fs-close p:not(.fs-eyebrow) { color: var(--fs-muted); max-width: 670px; margin-top: 22px; }
.fs-contact-link { display: inline-flex; align-items: center; gap: 18px; flex-shrink: 0; min-height: 48px; font-size: 17px; font-weight: 500; border-bottom: 1px solid var(--fs-green); text-decoration: none; }
.fs-contact-link:hover { text-decoration: underline; }

@media (max-width: 1100px) {
  .fs-hero-layout { gap: 36px; }
  .financial-refresh .fs-hero h1 { font-size: 58px; }
  .fs-hero-description { font-size: 18px; }
  .fs-split { gap: 48px; }
  .fs-scene-heading > span:first-child { font-size: 16px; }
  .fs-scene-heading > span:last-child { font-size: 11px; }
  .fs-node strong { font-size: 19px; }
  .fs-close-layout { gap: 36px; }
}
@media (max-width: 900px) {
  .fs-hero-layout { grid-template-columns: minmax(0,1fr); gap: 38px; }
  .fs-hero-copy { max-width: 640px; }
  .fs-hero-description { max-width: 610px; }
  .fs-hero-figure { max-width: 560px; justify-self: center; }
  .fs-split { grid-template-columns: minmax(0,1fr); gap: 32px; }
  .fs-example-layout { gap: 32px; }
  .fs-example-context { padding-left: 25px; }
  .fs-close-layout { flex-direction: column; align-items: flex-start; gap: 28px; }
  .fs-source-strip { grid-template-columns: minmax(0,1fr); gap: 15px; }
  .fs-source-strip > p { grid-column: auto; }
}
@media (max-width: 767px) {
  .fs-shell { width: calc(100% - 40px); }
  .fs-section { padding-block: 60px; }
  .financial-refresh main { font-size: 17px; }
  .financial-refresh main h2 { font-size: 36px; }
  .financial-refresh main h3 { font-size: 21px; }
  .financial-refresh main [id] { scroll-margin-top: 104px; }
  .fs-hero { padding-top: 114px; }
  .financial-refresh .fs-hero h1 { font-size: 48px; }
  .financial-refresh .fs-hero h1 br { display: none; }
  .financial-refresh .fs-promise { font-size: 28px; margin-top: 18px; }
  .fs-hero-description { font-size: 17px; margin-top: 18px !important; }
  .fs-hero-figure { max-width: 470px; }
  .fs-hero-values { grid-template-columns: minmax(0,1fr); gap: 16px; padding-block: 24px; margin-top: 26px !important; }
  .fs-lead { font-size: 20px; }
  .fs-priorities, .fs-steps, .fs-use-cases { grid-template-columns: minmax(0,1fr); gap: 30px; }
  .fs-priorities { margin-top: 34px; }
  .fs-heading { margin-bottom: 30px; }
  .fs-example-layout { grid-template-columns: minmax(0,1fr); padding: 26px 22px; gap: 28px; }
  .fs-example-header { padding: 18px 22px; flex-wrap: wrap; gap: 8px; font-size: 13px; }
  .fs-example blockquote { font-size: 21px; }
  .fs-example-context { border-left: 0; border-top: 1px solid var(--fs-line); padding-left: 0; padding-top: 24px; }
  .fs-example figcaption { padding: 18px 22px; font-size: 13px; }
  .fs-steps li { border-top: 1px solid var(--fs-line); padding-top: 22px; }
  .fs-use-cases article { gap: 15px; }
  .fs-statement .fs-shell { gap: 20px; }
  .fs-statement p { font-size: 28px; }
  .fs-statement span { font-size: 15px; }
  .fs-environments { gap: 20px; }
  .fs-environments li { flex-direction: column; align-items: flex-start; font-size: 17px; gap: 12px; }
  .fs-questions summary { font-size: 17px; }
}
@media (max-width: 480px) {
  .financial-refresh .fs-hero h1 { font-size: 44px; }
  .fs-scene-heading { align-items: flex-start; gap: 8px; }
  .fs-scene-heading > span:first-child { font-size: 15px; max-width: 145px; }
  .fs-scene-heading > span:last-child { font-size: 10px; gap: 5px; white-space: nowrap; padding-top: 3px; }
  .fs-scene-heading .lucide { width: 13px !important; height: 13px !important; }
  .fs-node { padding: 14px 10px; }
  .fs-node > span { padding-right: 0; font-size: 10px; }
  .fs-node > .lucide { display: none !important; }
  .fs-node strong { font-size: 16px; }
  .fs-node small { font-size: 11px; }
  .fs-review { padding: 15px 12px; }
  .fs-review > strong { font-size: 19px; }
  .fs-review > p { font-size: 12px; }
  .fs-review-heading { font-size: 10px; gap: 10px; }
  .fs-review-heading .lucide { width: 14px !important; height: 14px !important; }
  .fs-ledger span { font-size: 11px; }
  .fs-motion-row { font-size: 11px; gap: 10px; }
  .fs-statement .fs-shell { flex-direction: column; gap: 15px; }
  .fs-contact-link { font-size: 16px; gap: 10px; max-width: 100%; }
}
