.fi-guide { --fi-teal:#007f83; --fi-ink:#10294a; --fi-muted:#4b6078; background:#f5f8fb; }
.fi-guide .fi-hero { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(280px,.65fr); gap:48px; align-items:center; padding-top:40px; padding-bottom:44px; }
.fi-guide .fi-kicker { color:var(--fi-teal); text-transform:uppercase; font-size:12px; font-weight:800; letter-spacing:.065em; margin:0 0 13px; }
.fi-guide h1 { font-size:clamp(36px,4.2vw,58px); line-height:1.07; letter-spacing:-.035em; margin:0; max-width:790px; text-wrap:balance; }
.fi-guide .fi-lead { color:var(--fi-muted); font-size:19px; line-height:1.7; max-width:720px; margin:22px 0; }
.fi-guide .fi-meta { display:flex; flex-wrap:wrap; gap:6px 20px; color:var(--fi-muted); font-size:13px; line-height:1.8; margin:20px 0; }
.fi-guide .fi-meta a { text-decoration:underline; text-underline-offset:3px; }
.fi-guide .fi-hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:23px; }
.fi-guide .fi-hero-actions .button { min-height:48px; white-space:normal; text-align:center; }
.fi-guide .fi-hero-plan { background:#10294a; color:#fff; padding:30px; border-radius:20px; box-shadow:0 12px 32px #10294a12; }
.fi-guide .fi-hero-plan h2 { font-size:23px; line-height:1.3; color:#fff; margin:0 0 22px; }
.fi-guide .fi-hero-plan ol { list-style:none; padding:0; margin:0; counter-reset:hero; }
.fi-guide .fi-hero-plan li { position:relative; padding:18px 0 18px 47px; border-top:1px solid #ffffff25; counter-increment:hero; }
.fi-guide .fi-hero-plan li::before { content:counter(hero,decimal-leading-zero); position:absolute; left:0; top:18px; font-size:15px; color:#68d6d1; font-weight:800; }
.fi-guide .fi-hero-plan strong { display:block; color:#fff; margin-bottom:5px; }
.fi-guide .fi-hero-plan p { color:#d1dcea; font-size:14px; line-height:1.6; margin:0; }
.fi-guide .article-layout { grid-template-columns:235px minmax(0,1fr); gap:32px; padding-bottom:64px; }
.fi-guide .article-content { min-width:0; }
.fi-guide .article-sidebar { align-self:start; position:sticky; top:96px; max-height:calc(100vh - 112px); max-height:calc(100dvh - 112px); overflow-y:auto; scrollbar-width:thin; padding:4px; margin:-4px; }
.fi-guide .fi-sidebar-partners { margin-top:14px; padding:20px 16px; border:1px solid #d9e4ee; border-radius:14px; background:#fff; }
.fi-guide .fi-sidebar-partners h2 { margin:0 0 5px; color:var(--fi-ink); font-size:14px; line-height:1.4; }
.fi-guide .fi-sidebar-partner-label { margin:0 0 14px; color:var(--fi-muted); font-size:12px; line-height:1.5; }
.fi-guide .fi-sidebar-partner-buttons { display:grid; gap:9px; }
.fi-guide .fi-sidebar-partner-buttons .button { display:flex; align-items:center; justify-content:center; width:100%; min-height:44px; padding:12px 10px; font-size:14px; line-height:1.4; white-space:normal; text-align:center; }
.fi-guide .fi-sidebar-partner-note { margin:15px 0 0; color:var(--fi-muted); font-size:12px; line-height:1.6; }
.fi-guide .toc-card { padding:22px 20px; }
.fi-guide .toc-card ol { gap:7px; grid-template-columns:minmax(0,1fr); }
.fi-guide .toc-card a { font-size:13px; line-height:1.45; min-height:32px; align-items:center; }
.fi-guide .fi-section { padding:32px; margin:0 0 24px; border:1px solid #d9e4ee; border-radius:18px; background:#fff; scroll-margin-top:100px; overflow-wrap:anywhere; }
.fi-guide .fi-section h2 { color:var(--fi-ink); font-size:clamp(25px,2.5vw,32px); line-height:1.23; letter-spacing:-.015em; margin:0 0 21px; text-wrap:balance; }
.fi-guide .fi-section h3 { color:var(--fi-ink); font-size:20px; line-height:1.4; margin:27px 0 12px; }
.fi-guide .fi-section p,.fi-guide .fi-section li { color:var(--fi-muted); font-size:16px; line-height:1.85; }
.fi-guide .fi-section p { margin:0 0 19px; }
.fi-guide .fi-section p:last-child { margin-bottom:0; }
.fi-guide .fi-section strong { color:var(--fi-ink); }
.fi-guide .fi-section a:not(.button) { color:#086ec5; text-decoration:underline; text-underline-offset:3px; }
.fi-guide .fi-section ul,.fi-guide .fi-section ol { padding-left:22px; margin:16px 0 24px; }
.fi-guide .fi-section li { padding-left:4px; margin-bottom:11px; }
.fi-guide .fi-section .fi-kicker { font-size:12px; color:var(--fi-teal); line-height:1.5; margin-bottom:12px; }
.fi-guide .fi-stages { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:26px 0; }
.fi-guide .fi-stages>div { padding:18px; border:1px solid #d7e6e9; border-radius:12px; background:#f3f9f9; }
.fi-guide .fi-stages span { color:var(--fi-teal); font-size:13px; font-weight:800; }
.fi-guide .fi-stages h3 { font-size:17px; margin:9px 0; }
.fi-guide .fi-stages p { font-size:14px; line-height:1.7; }
.fi-guide .fi-checklist,.fi-guide .fi-example { background:#f4f8fc; border:1px solid #dce7ef; border-radius:14px; padding:22px; margin:24px 0; }
.fi-guide .fi-checklist h3,.fi-guide .fi-example h3 { margin:0 0 13px; }
.fi-guide .fi-checklist ul,.fi-guide .fi-example ol { margin-bottom:0; }
.fi-guide .fi-example p { margin-top:16px; }
.fi-guide .fi-note { background:#eff8f7; border-left:4px solid #038b89; padding:20px 22px; border-radius:0 12px 12px 0; margin:24px 0; color:var(--fi-muted); line-height:1.85; }
.fi-guide .fi-note h3 { margin:0 0 12px; }
.fi-guide .fi-note-important { background:#fff8ed; border-color:#dfa13d; }
.fi-guide .fi-formula { background:#10294a; color:#fff; padding:22px 24px; border-radius:12px; margin:24px 0; }
.fi-guide .fi-formula span { display:block; font-size:13px; color:#a9d6df; margin-bottom:10px; }
.fi-guide .fi-formula strong { display:block; font-size:19px; line-height:1.55; color:#fff; }
.fi-guide .fi-figure { margin:28px 0; }
.fi-guide .fi-figure img { display:block; width:100%; height:auto; border:1px solid #d9e4ed; border-radius:14px; }
.fi-guide .fi-figure figcaption { color:#4f6579; font-size:13px; line-height:1.75; margin:13px 0 0; }
.fi-guide .fi-table-details { border:1px solid #d9e4ed; border-radius:12px; margin:18px 0 25px; padding:0 18px; }
.fi-guide .fi-table-details summary { padding:14px 0; font-weight:700; cursor:pointer; color:var(--fi-ink); line-height:1.5; min-height:48px; }
.fi-guide .fi-table-wrap { overflow-x:auto; margin-bottom:16px; }
.fi-guide table { border-collapse:collapse; width:100%; min-width:460px; font-size:14px; line-height:1.6; }
.fi-guide caption { text-align:left; padding:6px 0 14px; color:var(--fi-muted); }
.fi-guide th,.fi-guide td { border-bottom:1px solid #dbe5ed; text-align:right; padding:11px 13px; white-space:nowrap; }
.fi-guide th:first-child { text-align:left; }
.fi-guide thead { background:#f1f7fa; color:var(--fi-ink); }
.fi-guide .fi-action-plan { list-style:none; counter-reset:action; padding:0!important; }
.fi-guide .fi-action-plan li { counter-increment:action; position:relative; padding:20px 20px 20px 60px; margin:0; border-bottom:1px solid #dce6ee; }
.fi-guide .fi-action-plan li::before { content:counter(action); position:absolute; left:5px; top:21px; border-radius:50%; width:32px; height:32px; display:grid; place-items:center; background:#e7f4f3; color:#007f83; font-weight:800; }
.fi-guide .fi-action-plan p { margin:7px 0 0; }
.fi-guide .fi-faq details { border-top:1px solid #dce6ee; }
.fi-guide .fi-faq summary { padding:18px 24px 18px 0; min-height:48px; cursor:pointer; font-weight:700; color:var(--fi-ink); font-size:16px; line-height:1.6; }
.fi-guide .fi-faq details p { margin-bottom:22px; }
.fi-guide .fi-sources p,.fi-guide .fi-sources li { font-size:14px; }
.fi-guide .fi-related { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.fi-guide .fi-related a { display:block; border:1px solid #dce6ee; padding:18px; border-radius:12px; text-decoration:none!important; min-height:48px; }
.fi-guide .fi-related strong { display:block; margin-bottom:7px; }
.fi-guide .fi-related span { color:var(--fi-muted); font-size:14px; line-height:1.6; }
.fi-guide .mg-partner p { font-size:14px; line-height:1.7; }
.fi-guide .mg-partner .mg-partner-kind { font-size:11px; }
.fi-guide .mg-partner .mg-partner-risk { font-size:12px; }
.fi-guide .mg-partner h3 { margin-top:0; font-size:23px; }
.fi-guide .mg-partner-actions .button { color:#fff; text-decoration:none; }
.fi-guide .mg-calculator p { font-size:14px; line-height:1.7; }
.fi-guide :focus-visible { outline:3px solid #1684d9; outline-offset:4px; }
@media(max-width:1050px) { .fi-guide .fi-hero { gap:25px; grid-template-columns:minmax(0,1.3fr) minmax(250px,.7fr); } .fi-guide .article-layout { grid-template-columns:190px minmax(0,1fr); gap:22px; } .fi-guide .fi-section { padding:25px; } .fi-guide .fi-stages { grid-template-columns:1fr; } .fi-guide .fi-stages>div { display:grid; grid-template-columns:30px 1fr; gap:4px 8px; } .fi-guide .fi-stages h3 { margin:0; } .fi-guide .fi-stages p { grid-column:2; margin:0; } }
@media(max-width:800px) { .fi-guide .fi-hero { grid-template-columns:1fr; gap:25px; padding-top:26px; padding-bottom:28px; } .fi-guide .fi-hero-plan { padding:23px; } .fi-guide .fi-hero-plan h2 { margin-bottom:10px; } .fi-guide .fi-hero-plan li { padding-top:13px; padding-bottom:13px; } .fi-guide .fi-hero-plan li::before { top:13px; } .fi-guide .article-layout { display:block; } .fi-guide .article-sidebar { position:static; margin-bottom:24px; } .fi-guide .toc-card ol { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px 16px; } .fi-guide .toc-card a { min-height:40px; } }
@media(max-width:520px) { .fi-guide h1 { font-size:35px; } .fi-guide .fi-lead { font-size:17px; line-height:1.75; } .fi-guide .fi-hero-actions { display:grid; } .fi-guide .fi-section { padding:23px 18px; border-radius:14px; } .fi-guide .fi-section h2 { font-size:25px; } .fi-guide .fi-section p,.fi-guide .fi-section li { font-size:16px; } .fi-guide .fi-checklist,.fi-guide .fi-example,.fi-guide .fi-note { padding:18px; } .fi-guide .fi-formula { padding:20px; } .fi-guide .fi-formula strong { font-size:17px; } .fi-guide .fi-related { grid-template-columns:1fr; } .fi-guide .fi-action-plan li { padding-right:0; padding-left:47px; } .fi-guide .fi-sources p,.fi-guide .fi-sources li,.fi-guide .mg-partner p,.fi-guide .mg-calculator p { font-size:14px; } .fi-guide .mg-partner .mg-partner-risk { font-size:12px; } .fi-guide .fi-stages p { font-size:14px; } }
@media(prefers-reduced-motion:reduce) { .fi-guide { scroll-behavior:auto; } }
@media(max-width:520px) { .fi-guide .fi-figure { margin-inline:-12px; } }
@media(max-width:800px) { .fi-guide .article-sidebar { max-height:none; overflow:visible; padding:0; margin:0 0 24px; } .fi-guide .fi-sidebar-partner-buttons { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:380px) { .fi-guide .fi-sidebar-partner-buttons { grid-template-columns:minmax(0,1fr); } }
