body[data-page="future-match-news"] { background: #f7f9fc; color: #19334e; }
.fm-main { padding: 165px 0 70px; }
.fm-news { max-width: 1080px; margin: 0 auto; padding: 0 24px; }
.fm-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 16px; color: #64748b; font-size: .9rem; }
.fm-category { padding: 7px 13px; border-radius: 999px; color: #166279; background: #e0f2f7; font-weight: 650; }
.fm-news h1 { max-width: 1000px; margin: 25px 0; color: #19334e; font-size: clamp(2.15rem, 4.1vw, 3.7rem); line-height: 1.13; letter-spacing: -.035em; text-wrap: balance; }
.fm-lead { max-width: 890px; margin-bottom: 32px; color: #405974; font-size: clamp(1.08rem, 1.55vw, 1.28rem); line-height: 1.7; }
.fm-photo { margin: 36px 0 46px; overflow: hidden; border: 1px solid #dce6ef; border-radius: 20px; background: #edf3f8; }
.fm-photo img { display: block; width: 100%; height: auto; }
.fm-photo figcaption { padding: 14px 20px; color: #556e85; font-size: .9rem; line-height: 1.6; }
.fm-prose { max-width: 820px; margin: auto; }
.fm-prose p { margin: 0 0 24px; color: #40546b; font-size: 1.08rem; line-height: 1.85; }
.fm-prose h2 { margin: 42px 0 19px; color: #19334e; font-size: clamp(1.6rem, 2.7vw, 2.25rem); line-height: 1.25; letter-spacing: -.025em; }
.fm-links { max-width: 820px; margin: 38px auto 0; border-top: 1px solid #dce6ef; padding-top: 25px; }
.fm-links a { color: #166279; font-weight: 650; text-decoration: underline; text-underline-offset: 5px; }
.fm-links a:focus-visible { outline: 2px solid currentColor; outline-offset: 5px; }
html.dark body[data-page="future-match-news"] { background: #101c2d; color: #eef5fb; }
html.dark .fm-news h1, html.dark .fm-prose h2 { color: #eef5fb; }
html.dark .fm-meta, html.dark .fm-lead, html.dark .fm-prose p, html.dark .fm-photo figcaption { color: #c0d0e0; }
html.dark .fm-category { background: #193e4e; color: #9fe5f0; }
html.dark .fm-photo { border-color: #31475f; background: #192b40; }
html.dark .fm-links { border-color: #31475f; }
html.dark .fm-links a { color: #9fe5f0; }
@media (max-width: 640px) { .fm-main { padding: 125px 0 45px; } .fm-news { padding: 0 20px; } .fm-photo { margin: 28px 0 34px; border-radius: 14px; } .fm-photo figcaption { padding: 12px 15px; font-size: .82rem; } .fm-prose p { font-size: 1rem; } }
