/* 1.9 homepage art direction. Natural-height editorial packages, not equal-height tiles. */
.fm-home-v4 .fm-v2-lead__primary { grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); }
.fm-home-v4 .fm-v2-lead__body { background: var(--fm-canvas); padding: clamp(24px, 3vw, 44px); }
.fm-home-v4 .fm-v2-lead__body h2 { font-size: clamp(40px, 4vw, 60px); letter-spacing: -.035em; }
.fm-home-v4 .fm-v2-lead__image img { min-height: 100%; aspect-ratio: 4 / 3; }
.fm-home-v4 .fm-v2-lead__rail { align-items: start; gap: 36px; margin-top: 28px; }
.fm-home-v4 .fm-v2-side-story { grid-template-columns: 112px minmax(0, 1fr); border: 0; background: transparent; gap: 20px; padding: 20px 0 0; border-top: 1px solid var(--fm-ink); }
.fm-home-v4 .fm-v2-side-story__image, .fm-home-v4 .fm-v2-side-story__image img { width: 112px; height: 112px; min-height: 0; }
.fm-home-v4 .fm-v2-side-story > div { padding: 0; }
.fm-home-v4 .fm-v2-side-story h2 { font: 600 clamp(22px, 1.9vw, 28px)/1.15 var(--fm-sans); letter-spacing: -.035em; margin: 10px 0; }
.fm-home-v4 .fm-v2-side-story--text { display: block; }
.fm-home-v4 .fm-v2-side-story .fm-story-card__meta { margin-top: 10px; padding-top: 0; border: 0; }
.fm-home-v4 .fm-v2-section { padding-block: 38px 48px; }
.fm-home-v4 .fm-v2-heading { margin-bottom: 24px; padding-bottom: 0; }
.fm-home-v4 .fm-v2-heading h2 { margin-top: 8px; margin-bottom: 0; font-size: clamp(38px, 4vw, 56px); }
.fm-home-image-note { display: block; font: 400 11px/1.5 var(--fm-sans); color: var(--fm-graphite); margin-top: 14px; }
.fm-v2-ai .fm-home-image-note { color: #c8c6bf; }
.fm-home-v4 .fm-v2-latest-grid { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(0, 1fr); grid-auto-rows: auto; gap: 36px; align-items: start; }
.fm-home-v4 .fm-v2-latest-card { display: block; grid-column: auto; grid-row: auto; min-height: 0; overflow: visible; }
.fm-home-v4 .fm-v2-latest-card--feature { padding: 0; border: 0; }
.fm-home-v4 .fm-v2-latest-card--feature .fm-v2-latest-card__image { width: 100%; height: auto; }
.fm-home-v4 .fm-v2-latest-card--feature .fm-v2-latest-card__image img { width: 100%; height: auto; aspect-ratio: 16 / 9; }
.fm-home-v4 .fm-v2-latest-card--feature h3 { font: 500 clamp(34px, 3vw, 44px)/1.04 var(--fm-serif); margin: 12px 0 16px; letter-spacing: -.025em; }
.fm-home-v4 .fm-v2-latest-card--feature p { font-size: 16px; line-height: 1.6; }
.fm-home-v4 .fm-home-briefs { display: grid; gap: 0; border-top: 1px solid var(--fm-ink); }
.fm-home-v4 .fm-home-briefs .fm-v2-latest-card { display: flex; flex-direction: row-reverse; align-items: start; gap: 24px; padding: 24px 0; margin: 0; border: 0; border-bottom: 1px solid var(--fm-rule); background: transparent; color: var(--fm-ink); justify-content: flex-start; }
.fm-home-v4 .fm-home-brief__body { flex: 1; min-width: 0; }
.fm-home-v4 .fm-home-briefs .fm-v2-latest-card__image { flex: 0 0 112px; width: 112px; height: 112px; }
.fm-home-v4 .fm-home-briefs .fm-v2-latest-card__image img { width: 112px; height: 112px; aspect-ratio: 1; object-fit: cover; }
.fm-home-v4 .fm-home-briefs .fm-eyebrow { margin-top: 0; color: var(--fm-graphite); }
.fm-home-v4 .fm-home-briefs h3 { font: 600 clamp(22px, 1.8vw, 27px)/1.16 var(--fm-sans); letter-spacing: -.03em; margin: 10px 0 12px; }
.fm-home-v4 .fm-home-briefs .fm-story-card__meta { color: var(--fm-graphite); margin: 0; padding: 0; border: 0; }
.fm-home-v4 .fm-start-here { padding-block: 26px 40px; }
.fm-home-v4 .fm-v2-ai { margin-block: 16px 0; padding-block: 48px; }
.fm-home-v4 .fm-v2-ai__grid { gap: 44px; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); }
.fm-home-v4 .fm-v2-ai h2 { font-size: clamp(42px, 4.2vw, 64px); }
.fm-home-v4 .fm-v2-ai__visual > a img { display: block; aspect-ratio: 3 / 2; }
.fm-home-v4 .fm-la-notes__intro { gap: 36px; padding-bottom: 28px; }
.fm-home-v4 .fm-la-notes__intro h2 { font-size: clamp(42px, 4.6vw, 66px); }
.fm-district-desk { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: 48px; align-items: start; }
.fm-district-reading > .fm-eyebrow { padding-bottom: 14px; }
.fm-district-reading__item { display: grid; grid-template-columns: 32px minmax(0, 1fr); gap: 18px; padding: 22px 0; border-top: 1px solid var(--fm-rule); }
.fm-district-reading__item > span { padding-top: 4px; font: 600 12px/1.5 var(--fm-sans); color: var(--fm-cobalt); }
.fm-district-reading h3 { font: 500 clamp(26px, 2.3vw, 34px)/1.08 var(--fm-serif); margin: 0 0 10px; letter-spacing: -.02em; }
.fm-district-reading h3 a { text-decoration: none; }
.fm-district-reading h3 a:hover { text-decoration: underline; text-underline-offset: 4px; }
.fm-district-reading p { font-size: 16px; line-height: 1.55; color: var(--fm-graphite); margin: 0; }
.fm-district-reading .fm-story-card__meta { margin-top: 12px; padding: 0; border: 0; }
.fm-market-desk { padding: 28px 30px; background: var(--fm-canvas); border-top: 3px solid var(--fm-ink); }
.fm-market-desk > h3 { font: 500 clamp(32px, 3vw, 44px)/1.05 var(--fm-serif); letter-spacing: -.03em; margin: 12px 0 24px; }
.fm-market-date { display: grid; grid-template-columns: 118px minmax(0, 1fr); align-items: center; gap: 22px; padding: 24px 0; border-top: 1px solid var(--fm-rule); }
.fm-market-date time span { display: block; font: 600 10px/1.5 var(--fm-sans); text-transform: uppercase; letter-spacing: .1em; }
.fm-market-date time strong { display: block; font: 500 42px/1.2 var(--fm-serif); letter-spacing: -.055em; margin-top: 4px; }
.fm-market-date h4 { font: 600 17px/1.3 var(--fm-sans); margin: 0; }
.fm-market-date a, .fm-market-guide { display: inline-flex; align-items: center; min-height: 44px; font: 600 12px/1.4 var(--fm-sans); text-underline-offset: 4px; }
.fm-market-note { color: var(--fm-graphite); font-size: 13px; line-height: 1.6; padding-top: 18px; border-top: 1px solid var(--fm-rule); }
.fm-market-guide { width: 100%; justify-content: space-between; border-top: 1px solid var(--fm-ink); margin-top: 20px; padding-top: 10px; color: var(--fm-ink); text-decoration: none; }
.fm-home-v4 .fm-v2-newsletter { margin-top: 12px; }
@media (max-width: 1000px) {
 .fm-home-v4 .fm-v2-lead__body h2 { font-size: 42px; }
 .fm-home-v4 .fm-v2-latest-grid, .fm-district-desk { gap: 28px; }
 .fm-market-desk { padding: 24px; }
 .fm-market-date { grid-template-columns: 1fr; gap: 8px; }
}
@media (max-width: 820px) {
 .fm-home-v4 .fm-v2-lead__body { padding: 24px 20px; }
 .fm-home-v4 .fm-v2-lead__image img { min-height: 0; aspect-ratio: 16 / 10; }
 .fm-home-v4 .fm-v2-lead__rail { grid-template-columns: 1fr 1fr; gap: 24px; }
 .fm-home-v4 .fm-v2-side-story { display: block; }
 .fm-home-v4 .fm-v2-side-story__image { display: none; } /* One image-led lead; supporting stories become concise briefs. */
 .fm-home-v4 .fm-v2-latest-grid, .fm-district-desk, .fm-home-v4 .fm-v2-ai__grid { grid-template-columns: 1fr; }
 .fm-home-v4 .fm-home-briefs { grid-template-columns: 1fr 1fr; column-gap: 28px; }
 .fm-home-v4 .fm-home-briefs .fm-v2-latest-card { flex-direction: column; gap: 16px; }
 .fm-home-v4 .fm-home-briefs .fm-v2-latest-card__image { display: none; }
 .fm-home-v4 .fm-v2-ai__visual { order: 0; }
 .fm-market-date { grid-template-columns: 118px minmax(0, 1fr); gap: 22px; }
 .fm-home-v4 .fm-la-notes__intro { gap: 16px; }
}
@media (max-width: 560px) {
 .fm-home-v4 .fm-v2-lead__body h2 { font-size: 38px; }
 .fm-home-v4 .fm-v2-lead__rail, .fm-home-v4 .fm-home-briefs { grid-template-columns: 1fr; }
 .fm-home-v4 .fm-v2-side-story { min-height: 0; }
 .fm-home-v4 .fm-v2-side-story h2 { font-size: 24px; }
 .fm-home-v4 .fm-v2-latest-grid { gap: 28px; }
 .fm-home-v4 .fm-v2-latest-card--feature { display: block !important; }
 .fm-home-v4 .fm-v2-latest-card--feature h3 { font-size: 34px; }
 .fm-home-v4 #latest .fm-home-briefs .fm-v2-latest-card { display: flex; flex-direction: column; min-height: 0; padding-block: 22px; }
 .fm-home-v4 .fm-home-briefs h3 { font-size: 24px; }
 .fm-home-v4 .fm-v2-section { padding-block: 30px 36px; }
 .fm-home-v4 .fm-v2-ai { padding-block: 36px; }
 .fm-home-v4 .fm-v2-ai h2 { font-size: 40px; }
 .fm-home-v4 .fm-v2-ai__grid { gap: 28px; }
 .fm-home-v4 .fm-v2-ai__more { display: grid; grid-template-columns: 1fr; }
 .fm-home-v4 .fm-v2-ai__more a { padding-block: 14px; }
 .fm-home-v4 .fm-la-notes__intro h2 { font-size: 44px; }
 .fm-district-reading__item { grid-template-columns: 24px minmax(0, 1fr); gap: 12px; }
 .fm-market-desk { padding: 22px 18px; }
 .fm-market-date { grid-template-columns: 98px minmax(0, 1fr); gap: 16px; }
 .fm-market-date time strong { font-size: 38px; }
}
