/* Leitura editorial do blog. Isolado das páginas de serviços e da home. */
.fm-article { padding: 1.5rem 0 5rem; background: #f9f4ee; }
.fm-article .fb-container { max-width: 1360px; }
.fm-breadcrumb { display:flex; gap:.75rem; flex-wrap:wrap; color:#695d53; font-size:.8125rem; padding: .5rem 0 2rem; }
.fm-breadcrumb a { text-decoration:none; }
.fm-kicker { color:#695647; font:600 .6875rem/1.6 var(--fb-font-body); text-transform:uppercase; letter-spacing:.16em; margin:0 0 1rem; }
.fm-article-hero { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr); gap:clamp(2rem,5vw,5rem); align-items:center; padding:0 0 3rem; }
.fm-article-heading { min-width:0; }
.fm-article-hero--text { grid-template-columns:minmax(0,1fr); }
.fm-article-heading h1 { font-size:clamp(2.5rem,4.1vw,4.25rem); line-height:1.04; letter-spacing:-.025em; max-width:17ch; text-wrap:balance; margin:0 0 1.5rem; overflow-wrap:anywhere; }
.fm-article-deck { font-size:1.0625rem; line-height:1.75; color:#66584c; max-width:53ch; margin:0 0 1.5rem; }
.fm-article-meta { display:flex; flex-wrap:wrap; gap:.5rem 1.25rem; font-size:.75rem; color:#695d53; border-top:1px solid #daceb8; padding:1rem 0; }
.fm-text-link { display:inline-flex; align-items:center; gap:.8rem; font-size:.875rem; min-height:44px; text-decoration:none; border-bottom:1px solid #b79c81; }
.fm-article-cover { margin:0; min-width:0; }
.fm-article-cover img { width:100%; height:clamp(22rem,35vw,30rem); object-fit:cover; object-position:50% 30%; border-radius:4px; background:#e7ded0; }
.fm-article-cover figcaption { font-size:.6875rem; line-height:1.6; color:#695d53; padding-top:.65rem; }
.fm-takeaways { padding:1.5rem 2rem; margin-bottom:3rem; background:#efe6da; border-block:1px solid #daceb8; }
.fm-takeaways .fm-kicker { margin-bottom:1.1rem; }
.fm-takeaways ol { list-style:none; counter-reset:essencial; padding:0; margin:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:2rem; }
.fm-takeaways li { counter-increment:essencial; display:grid; grid-template-columns:1.5rem minmax(0,1fr); gap:.75rem; font-size:.875rem; line-height:1.7; margin:0; }
.fm-takeaways li::before { content:'0' counter(essencial); font-family:var(--fb-font-display); font-size:1.5rem; color:#81684f; line-height:1.1; }
.fm-reading-layout { display:grid; grid-template-columns:15rem minmax(0,47rem); gap:clamp(2rem,5vw,5rem); align-items:start; justify-content:center; }
.fm-reading-aside { position:sticky; top:6.5rem; min-width:0; max-height:calc(100vh - 8rem); overflow-y:auto; scrollbar-width:thin; }
.fm-toc { border-top:1px solid #b79c81; padding-top:1rem; }
.fm-toc summary { font-size:.875rem; font-weight:600; cursor:pointer; min-height:44px; }
.fm-toc ol { list-style:none; padding:0; margin:.5rem 0 0; }
.fm-toc li { border-bottom:1px solid #e1d7c9; margin:0; }
.fm-toc a { display:block; padding:.75rem 0; color:#695d53; font-size:.8125rem; line-height:1.5; text-decoration:none; }
.fm-toc a:hover { color:#3a302a; text-decoration:underline; }
.fm-aside-help { padding-top:2rem; }
.fm-aside-help .fm-kicker { margin-bottom:.65rem; }
.fm-aside-help p:not(.fm-kicker) { font-family:var(--fb-font-display); font-size:1.625rem; line-height:1.2; }
.fm-aside-help .fb-btn { padding:.875rem 1rem; font-size:.8125rem; width:100%; }
.fm-reading-main { min-width:0; }
.fm-article-body { font-size:1.0625rem; line-height:1.85; color:#4e4139; overflow-wrap:anywhere; }
.fm-article-body p { margin:0 0 1.25rem; max-width:none; }
.fm-article-body h2 { font-size:clamp(1.875rem,2.6vw,2.5rem); line-height:1.13; margin:3rem 0 1.1rem; text-wrap:balance; scroll-margin-top:6.5rem; }
.fm-article-body > h2:first-child { margin-top:0; }
.fm-article-body h3 { font-size:1.5rem; margin:1.75rem 0 .8rem; }
.fm-article-body li { padding-left:.3rem; margin-bottom:.8rem; }
.fm-article-body ul,.fm-article-body ol { padding-left:1.35rem; margin:0 0 1.5rem; }
.fm-article-body a { text-underline-offset:.2em; }
.fm-article-body .fm-note { padding:1.25rem 1.5rem; border-left:3px solid #b79c81; background:#eee5d9; margin:1.75rem 0; font-size:1rem; line-height:1.75; }
.fm-note > strong { display:block; margin-bottom:.5rem; }
.fm-note p:last-child { margin-bottom:0; }
.fm-article-body .fm-note--attention { background:#ede2d6; border-left-color:#705341; }
.fm-article-body .fm-steps { padding:0; list-style:none; counter-reset:etapas; }
.fm-steps li { counter-increment:etapas; position:relative; padding:1.1rem 0 1.1rem 3rem; margin:0; border-bottom:1px solid #ded2c1; }
.fm-steps li::before { content:counter(etapas,decimal-leading-zero); position:absolute; left:0; top:1rem; color:#81684f; font:1.75rem/1 var(--fb-font-display); }
.fm-inline-photo { margin:2.5rem 0; }
.fm-inline-photo img { width:100%; height:auto; max-height:26rem; object-fit:cover; aspect-ratio:16/10; object-position:50% 45%; border-radius:3px; }
.fm-inline-photo figcaption { font-size:.75rem; color:#695d53; margin-top:.7rem; line-height:1.6; }
.fm-comparison { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; margin:1.75rem 0; }
.fm-comparison > div { border:1px solid #daceb8; padding:1.25rem; background:#fdfaf6; }
.fm-comparison p { margin:.5rem 0 0; font-size:.9375rem; }
.fm-faq { border-block-end:1px solid #daceb8; }
.fm-faq summary { cursor:pointer; padding:1rem 1.5rem 1rem 0; font-size:1rem; font-weight:600; line-height:1.6; }
.fm-faq p { padding-bottom:.5rem; font-size:1rem; }
.fm-article-sources { margin-top:2.5rem; border-top:1px solid #daceb8; padding-top:1.5rem; }
.fm-article-sources h2 { font-size:1.375rem; line-height:1.2; margin:0 0 1rem; }
.fm-article-sources ul { padding-left:1.2rem; font-size:.8125rem; line-height:1.75; }
.fm-author { display:flex; gap:1.25rem; align-items:center; margin-top:2.5rem; padding:1.5rem 0; border-top:1px solid #daceb8; }
.fm-author img { width:72px; height:72px; border-radius:50%; object-fit:cover; object-position:50% 20%; flex-shrink:0; }
.fm-author p { margin:0 0 .2rem; font-size:.75rem; line-height:1.6; color:#695d53; }
.fm-author p:first-child { font-size:.875rem; color:#4e4139; }
.fm-education-note { font-size:.75rem; line-height:1.75; color:#695d53; }
.fm-article-contact { margin-top:4rem; padding:clamp(1.5rem,4vw,3rem); border:1px solid #daceb8; background:#eee4d7; display:flex; gap:2rem; align-items:center; justify-content:space-between; }
.fm-article-contact h2 { font-size:clamp(2rem,3vw,3rem); line-height:1.08; max-width:22ch; margin-bottom:1rem; text-wrap:balance; }
.fm-article-contact p:not(.fm-kicker) { font-size:.9375rem; max-width:55ch; margin:0; }
.fm-article-contact > .fb-btn { flex-shrink:0; }
.fm-related { margin-top:4rem; }
.fm-related > h2 { font-size:clamp(2rem,3vw,3rem); line-height:1.1; margin-bottom:2rem; }
.fm-related-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.5rem; }
.fm-related-card { border:1px solid #ded2c1; background:#fdfaf6; text-decoration:none; display:flex; flex-direction:column; }
.fm-related-card > img { width:100%; height:auto; aspect-ratio:3/2; object-fit:cover; object-position:50% 30%; }
.fm-related-card > div { padding:1.25rem; display:flex; flex-direction:column; flex:1; gap:1rem; }
.fm-related-card h3 { font-size:1.625rem; line-height:1.12; margin:0; }
.fm-related-card div > span { font-size:.8125rem; margin-top:auto; }
.fm-related-card:hover { color:#4e4139; border-color:#92765a; }
/* Miniaturas da lista passam a usar as fotos de destaque reais. */
.fb-blog-card__media { aspect-ratio:3/2; }
.fb-blog-card__media img { object-position:50% 30%; }
.fb-blog-card__title { font-size:clamp(1.5rem,2.2vw,1.875rem); line-height:1.15; }
.fb-blog-card__excerpt { color:#695d53; line-height:1.75; }
@media (max-width:1023px) {
    .fm-reading-layout { grid-template-columns:minmax(0,1fr); gap:2rem; max-width:47rem; margin:0 auto; }
    .fm-reading-aside { position:static; max-height:none; overflow:visible; }
    .fm-aside-help { display:none; }
    .fm-toc ol { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:1.5rem; }
    .fm-article-contact { flex-direction:column; align-items:flex-start; }
}
@media (max-width:899px) {
    .fm-article-hero { grid-template-columns:minmax(0,1fr); gap:2rem; }
    .fm-article-heading h1 { max-width:24ch; font-size:clamp(2.375rem,6vw,3.5rem); }
    .fm-article-deck { max-width:62ch; }
    .fm-article-cover img { height:clamp(19rem,55vw,28rem); object-position:50% 25%; }
    .fm-takeaways { padding:1.5rem; }
    .fm-takeaways ol { grid-template-columns:minmax(0,1fr); gap:1rem; }
    .fm-related-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:639px) {
    .fm-article { padding-top:1rem; padding-bottom:3rem; }
    .fm-breadcrumb { padding-bottom:1.5rem; font-size:.75rem; }
    .fm-article-heading h1 { font-size:clamp(2.125rem,8vw,2.875rem); }
    .fm-article-deck { font-size:1rem; }
    .fm-article-hero { padding-bottom:2rem; }
    .fm-article-meta { font-size:.6875rem; }
    .fm-takeaways { margin-bottom:2rem; }
    .fm-toc ol { grid-template-columns:minmax(0,1fr); }
    .fm-article-body { font-size:1rem; line-height:1.85; }
    .fm-article-body h2 { font-size:1.875rem; margin-top:2.25rem; }
    .fm-comparison { grid-template-columns:minmax(0,1fr); }
    .fm-article-body .fm-note { padding:1.1rem; }
    .fm-inline-photo { margin:2rem 0; }
    .fm-related-grid { grid-template-columns:minmax(0,1fr); }
    .fm-article-contact,.fm-related { margin-top:3rem; }
    .fm-article-contact > .fb-btn { width:100%; }
    .fm-author { gap:1rem; align-items:flex-start; }
    .fm-author img { width:56px; height:56px; }
}
