.blog-entry-link { color:inherit; text-decoration:none; }
.blog-entry-link:focus-visible,.blog-article a:focus-visible { outline:3px solid #92513e; outline-offset:5px; }
.blog-section-note { font-size:13px; color:#71665e; margin:16px 0 0; }
.blog-read { display:inline-block; margin-top:16px; font-size:12px; font-weight:600; }
.card.image.blog-entry-link { position:relative; overflow:hidden; }
.blog-image-only { height:100%; }
.blog-image-only img { height:100%; width:100%; object-fit:cover; }
.blog-image-caption { position:absolute; inset:auto 0 0; background:linear-gradient(transparent,#161c20dd); color:#fff; padding:44px 20px 24px; font-size:18px; font-weight:500; }
.blog-article { padding:32px 40px 80px; }
.blog-back { font-size:13px; color:#71665e; margin-bottom:40px; }
.blog-article-header,.blog-copy,.blog-related { max-width:1000px; margin-inline:auto; }
.blog-article-header h1 { font-size:clamp(32px,4vw,54px); line-height:1.17; letter-spacing:-1.5px; margin-bottom:24px; padding:0; }
.blog-standfirst { color:#62574f; font-size:19px; line-height:1.8; padding:0; }
.blog-example-notice { background:#faf5ec; color:#72543d; font-size:12px; line-height:1.7; padding:14px 18px; margin:28px 0 40px; }
.blog-cover { display:block; width:100%; max-width:1120px; height:360px; object-fit:cover; margin:0 auto 48px; }
.blog-copy section { margin-bottom:36px; }
.blog-copy h2 { font-size:26px; margin-bottom:16px; }
.blog-copy p { color:#62574f; font-size:17px; line-height:1.9; padding:0; }
.blog-related-practice { margin-top:40px; }
.blog-copy a { color:#92513e; text-decoration:underline; }
.blog-related { margin-top:64px; padding-top:32px; border-top:1px solid #e7ded7; }
.blog-related h2 { font-size:22px; margin-bottom:24px; }
.blog-related > a { display:flex; justify-content:space-between; gap:20px; padding:16px 0; font-size:16px; }
@media(max-width:600px) { .blog-article { padding:28px 24px 48px; } .blog-cover { height:220px; } .blog-article-header h1 { letter-spacing:-1px; } }
#perspectivas .joqra-style-grid { grid-auto-rows:minmax(220px,auto); }
#perspectivas .card.small { display:flex; flex-direction:column; }
#perspectivas .card.small .blog-read { margin-top:auto; padding-top:14px; }
@media(max-width:1000px) {
 #perspectivas .joqra-style-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); grid-auto-rows:auto; }
 #perspectivas .card { grid-row:auto; }
 #perspectivas .card.image { min-height:360px; }
}
@media(max-width:600px) {
 #perspectivas .joqra-style-grid { grid-template-columns:minmax(0,1fr); }
 #perspectivas .card.large { grid-column:auto; }
 #perspectivas .card.small { min-height:200px; }
}
.card.coffee.blog-entry-link { color:#fff; }

/* Edge-to-edge cover and a shorter reading rhythm in the opening tiles. */
#perspectivas .card.large.blog-entry-link { padding:0; justify-content:flex-start; }
#perspectivas .card.large .card-image { border-radius:20px; overflow:hidden; }
#perspectivas .card.large .card-image img { display:block; }
#perspectivas .card.large .card-content { padding:24px; }
#perspectivas .card.small { justify-content:flex-start; }
#perspectivas .card.small p { padding-bottom:0; margin-bottom:0; }
#perspectivas .card.small .blog-read { margin-top:10px; padding-top:0; }
.blog-copy { max-width:780px; }
.blog-copy p + p { margin-top:18px; }
.blog-copy ul,.blog-copy ol { margin:20px 0; padding-left:24px; color:#62574f; font-size:17px; line-height:1.9; }
.blog-copy li { padding-left:4px; margin-bottom:10px; }
.blog-copy .blog-takeaway { background:#f7f4ef; padding:24px 28px; border-left:3px solid #92513e; margin:36px 0; }
.blog-copy .blog-takeaway h2 { font-size:22px; }
.blog-reading-time { font-size:13px; color:#71665e; margin-top:16px; }

/* Editorial layout: article and author/reading rail share a single page scroll. */
.blog-article-layout{display:grid;grid-template-columns:minmax(0,780px) minmax(240px,300px);gap:clamp(40px,6vw,96px);max-width:1220px;margin-inline:auto;align-items:start}
.blog-article-main{min-width:0}
.blog-article-layout .blog-article-header,.blog-article-layout .blog-copy{width:100%;max-width:none;margin-inline:0}
.blog-sidebar{min-width:0;padding-top:8px}
.blog-author{margin-bottom:44px}
.blog-author .jq-eyebrow{font-size:10px;margin-bottom:24px}
.blog-author-identity{display:flex;align-items:center;gap:16px;color:inherit;text-decoration:none}
.blog-author-identity>img{width:72px;height:98px;object-fit:cover;object-position:center top;border-radius:6px;flex-shrink:0}
.blog-author-identity>span{display:grid;gap:8px}
.blog-author-identity strong{font-size:17px;line-height:1.5}
.blog-author-identity>span>span{font-size:12px;line-height:1.7;color:#71665e}
.blog-author-bio{font-size:14px;line-height:1.9;color:#71665e;padding:0;margin:24px 0 16px}
.blog-author-more{font-size:12px;color:#92513e;text-decoration:none}
.blog-author-more>span{margin-left:8px}
.blog-publication{margin-top:28px;padding-top:20px;border-top:1px solid #e7ded7}
.blog-publication dt{font-size:11px;color:#71665e;margin-bottom:8px}
.blog-publication dd{font-size:13px;line-height:1.7;margin:0}
.blog-sidebar-related>h2{font-size:18px;line-height:1.5;margin-bottom:24px}
.blog-sidebar-story{display:block;color:inherit;text-decoration:none;margin-bottom:32px}
.blog-sidebar-story>img{display:block;width:100%;height:140px;object-fit:cover;border-radius:8px;margin-bottom:16px}
.blog-sidebar-category{display:block;font-size:9px;letter-spacing:1px;color:#71665e;margin-bottom:8px}
.blog-sidebar-story h3{font-size:16px;line-height:1.5;margin:0 0 12px}
.blog-sidebar-read{font-size:11px;color:#92513e;font-weight:500}
.blog-sidebar-story:hover h3,.blog-author-more:hover{text-decoration:underline;text-underline-offset:4px}
@media(max-width:950px){.blog-article-layout{grid-template-columns:minmax(0,1fr);gap:48px}.blog-sidebar{padding-top:32px;border-top:1px solid #e7ded7}.blog-author{max-width:620px}.blog-sidebar-related{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.blog-sidebar-related>h2{grid-column:1/-1;margin-bottom:0}}
@media(max-width:600px){.blog-sidebar-related{grid-template-columns:minmax(0,1fr);gap:24px}.blog-sidebar-story{margin-bottom:0}.blog-sidebar-story>img{height:190px}}

/* Cost playbook: illustrative cover and documented market context. */
.blog-cost-hero{margin:0 0 40px}
.blog-cost-hero>img{display:block;width:100%;height:auto;aspect-ratio:2/1;object-fit:cover;border-radius:10px}
.blog-cost-hero>figcaption{font-size:11px;line-height:1.7;color:#71665e;margin-top:10px}
.blog-copy .blog-data-eyebrow{font-size:10px;letter-spacing:1.2px;color:#92513e;font-weight:600;margin-bottom:16px}
.blog-market-context{padding-top:24px}
.blog-market-figure{margin:28px 0 24px}
.blog-market-figure>figcaption{display:grid;gap:8px;margin-bottom:16px}
.blog-market-figure>figcaption strong{font-size:19px;line-height:1.5}
.blog-market-figure>figcaption>span{font-size:12px;color:#71665e;line-height:1.7}
.blog-chart-scroll{overflow-x:auto;overscroll-behavior-inline:contain;border:1px solid #e8e0d8;border-radius:8px;background:#fff}
.blog-chart-scroll>img{display:block;width:100%;min-width:650px;height:auto}
.blog-chart-scroll:focus-visible{outline:2px solid #92513e;outline-offset:4px}
.blog-copy .blog-chart-source,.blog-copy .blog-chart-scope{font-size:12px;line-height:1.8;color:#71665e;margin:14px 0}
.blog-copy .blog-chart-hint{display:none;font-size:11px;color:#71665e;margin-top:10px}
.blog-chart-data{margin:20px 0;font-size:13px}
.blog-chart-data>summary{cursor:pointer;color:#92513e;padding:8px 0;font-weight:500}
.blog-market-table-wrap{overflow-x:auto;margin-top:12px}
.blog-market-table-wrap table{width:100%;border-collapse:collapse;font-size:12px;line-height:1.7}
.blog-market-table-wrap caption{text-align:left;font-size:11px;color:#71665e;padding:0 0 12px}
.blog-market-table-wrap th,.blog-market-table-wrap td{padding:12px 10px;border-bottom:1px solid #e8e0d8;text-align:left;vertical-align:top}
.blog-market-table-wrap tbody th{font-weight:400}
.blog-market-table-wrap td{white-space:nowrap;text-align:right;font-variant-numeric:tabular-nums}
.blog-chart-downloads{display:flex;flex-wrap:wrap;gap:12px 24px;font-size:12px;line-height:1.7}
.blog-market-insight{margin:24px 0;padding:20px 24px;background:#f3f6f3;border-left:3px solid #54716a;border-radius:0 6px 6px 0}
.blog-market-insight>span{font-size:9px;letter-spacing:.8px;color:#54716a;font-weight:600;line-height:1.8;display:block;margin-bottom:10px}
.blog-copy .blog-market-insight>p{font-size:15px;line-height:1.8;color:#3b5147;margin:0}
.blog-market-sources{margin-top:40px;padding-top:28px;border-top:1px solid #e8e0d8}
.blog-copy .blog-market-sources p,.blog-copy .blog-market-sources ol{font-size:14px;line-height:1.9}
@media(max-width:800px){.blog-copy .blog-chart-hint{display:block}}

/* Shared editorial pages and the provisional blog library. */
.blog-author-identity--organization>img{width:64px;height:64px;object-fit:contain;border-radius:0}
#perspectivas .blog-card-agent{background:#fff;color:#382c25;border:0;padding:0;overflow:hidden;gap:0}
#perspectivas .blog-card-agent::before{content:none}
#perspectivas .blog-card-agent .blog-agent-photo{display:block;width:100%;height:140px;object-fit:cover;flex-shrink:0;filter:none;opacity:1}
#perspectivas .blog-card-agent .blog-agent-copy{padding:16px 20px 20px;color:#382c25}
#perspectivas .blog-card-agent p{color:#382c25}
.blog-all-link{display:inline-block;margin-top:18px;color:#92513e;font-size:13px;font-weight:500;text-underline-offset:4px}
.blog-index{padding:56px 40px 88px;background:#fff}
.blog-index-heading,.blog-index-feature,.blog-index-library{max-width:1360px;margin-inline:auto}
.blog-index-heading{margin-bottom:48px}
.blog-index-heading h1{font-size:clamp(36px,4.4vw,62px);line-height:1.12;letter-spacing:-1.7px;padding:0;margin:20px 0 24px}
.blog-index-heading>p:last-child{max-width:760px;font-size:18px;line-height:1.8;color:#71665e;padding:0}
.blog-index-feature{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:48px;align-items:center;margin-bottom:72px}
.blog-index-feature-image>img{display:block;width:100%;height:auto;aspect-ratio:2/1;object-fit:cover;border-radius:12px}
.blog-index-feature h2{font-size:clamp(26px,2.6vw,38px);line-height:1.25;letter-spacing:-.8px;margin:20px 0}
.blog-index-feature h2 a{color:inherit;text-decoration:none}
.blog-index-feature p{font-size:16px;line-height:1.9;color:#71665e;padding:0;margin-bottom:24px}
.blog-index-feature-read{font-size:13px;font-weight:500;color:#92513e}
.blog-index-library>h2{font-size:28px;font-weight:400;margin-bottom:12px}
.blog-index-category-note{font-size:12px;color:#71665e;padding:0;margin-bottom:24px}
.blog-index-filters{display:flex;flex-wrap:wrap;gap:8px 24px;margin-bottom:20px}
.blog-index-filters button{border:0;border-bottom:2px solid transparent;padding:12px 0;background:none;color:#71665e;font:500 14px var(--font);cursor:pointer}
.blog-index-filters button[aria-pressed=true]{border-bottom-color:#92513e;color:#302a26}
#blog-filter-status{font-size:12px;color:#71665e;padding:0;margin:0 0 28px}
.blog-index-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 32px}
.blog-index-entry{min-width:0}
.blog-index-entry[hidden],.blog-index-filters[hidden]{display:none!important}
.blog-index-entry>a{display:flex;flex-direction:column;height:100%;color:inherit;text-decoration:none}
.blog-index-entry img{display:block;width:100%;height:210px;object-fit:cover;border-radius:9px;margin-bottom:20px}
.blog-index-category{font-size:10px;color:#71665e;letter-spacing:.8px;margin-bottom:12px}
.blog-index-entry h2{font-size:22px;font-weight:400;line-height:1.4;margin:0 0 14px}
.blog-index-entry p{font-size:15px;line-height:1.8;color:#71665e;padding:0;margin:0 0 20px}
.blog-index-read{font-size:12px;font-weight:500;color:#92513e;margin-top:auto}
.blog-index-entry>a:hover h2,.blog-index-feature h2 a:hover{text-decoration:underline;text-underline-offset:4px}
.blog-index a:focus-visible,.blog-index button:focus-visible{outline:3px solid #92513e;outline-offset:5px}
@media(max-width:1000px){.blog-index-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.blog-index-feature{gap:32px}}
@media(max-width:760px){.blog-index{padding:36px 24px 56px}.blog-index-feature{grid-template-columns:minmax(0,1fr);gap:24px;margin-bottom:48px}.blog-index-grid{gap:36px 24px}}
@media(max-width:600px){.blog-index-grid{grid-template-columns:minmax(0,1fr)}.blog-index-entry img{height:auto;aspect-ratio:16/9}}

/* Blog opening: editorial masthead and an unfiltered, full-color cover. */
.blog-editorial-intro{max-width:1360px;margin:0 auto 72px}
.blog-editorial-masthead{display:flex;align-items:flex-end;justify-content:space-between;gap:48px;margin-bottom:40px}
.blog-editorial-masthead .jq-eyebrow{margin:0 0 20px;padding:0}
.blog-editorial-masthead h1{font-size:clamp(54px,7.8vw,112px);line-height:1;letter-spacing:-5px;margin:0;padding:0;font-weight:400}
.blog-editorial-masthead h1>span{color:#92513e}
.blog-editorial-note{max-width:300px;padding-bottom:5px}
.blog-editorial-note>p{font-size:22px;line-height:1.35;color:#302a26;margin:0 0 12px;padding:0}
.blog-editorial-note>span{display:block;font-size:13px;line-height:1.8;color:#71665e}
.blog-editorial-lead{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:center}
.blog-editorial-photo{display:block;min-width:0}
.blog-editorial-photo img{display:block;width:100%;height:480px;object-fit:cover;object-position:44% center;border-radius:3px;filter:none}
.blog-editorial-story{position:relative;margin:44px 0 0 -64px;background:#fff;padding:40px 0 24px 44px}
.blog-editorial-story .blog-editorial-kicker{display:flex;align-items:center;gap:14px;font-size:10px;letter-spacing:1px;color:#71665e;margin:0 0 24px;padding:0}
.blog-editorial-kicker>span{color:#92513e;font-weight:600}
.blog-editorial-story h2{font-size:clamp(28px,3.1vw,44px);line-height:1.15;letter-spacing:-1.3px;margin:0 0 22px;font-weight:400}
.blog-editorial-story h2 a{color:inherit;text-decoration:none}
.blog-editorial-story h2 em{font-weight:400;color:#92513e}
.blog-editorial-story>p:not(.blog-editorial-kicker):not(.blog-editorial-byline){font-size:15px;line-height:1.85;color:#71665e;padding:0;margin:0 0 26px;max-width:420px}
.blog-editorial-read{display:inline-flex;align-items:center;gap:24px;color:#302a26;font-size:13px;font-weight:500;text-decoration:none;border-bottom:1px solid #92513e;padding-bottom:9px}
.blog-editorial-read>span{font-size:21px;color:#92513e}
.blog-editorial-story .blog-editorial-byline{font-size:11px;line-height:1.7;color:#71665e;margin:24px 0 0;padding:0}
.blog-editorial-byline>span{margin:0 8px}
.blog-editorial-footnote{display:flex;justify-content:space-between;gap:24px;margin-top:28px;font-size:11px;line-height:1.8;color:#71665e}
.blog-editorial-footnote a{color:#92513e;text-decoration:none;white-space:nowrap}
.blog-editorial-footnote a:hover,.blog-editorial-story h2 a:hover{text-decoration:underline;text-underline-offset:5px}
@media(max-width:1000px){.blog-editorial-photo img{height:440px}.blog-editorial-story{margin-left:-36px;padding-left:28px}.blog-editorial-masthead h1{letter-spacing:-3px}.blog-editorial-note{max-width:250px}}
@media(max-width:760px){.blog-editorial-masthead{display:block;margin-bottom:28px}.blog-editorial-masthead h1{letter-spacing:-2.5px}.blog-editorial-note{max-width:100%;margin-top:24px}.blog-editorial-note>p{font-size:20px}.blog-editorial-note>p br{display:none}.blog-editorial-lead{grid-template-columns:minmax(0,1fr)}.blog-editorial-photo img{height:auto;aspect-ratio:3/2}.blog-editorial-story{margin:-28px 0 0 20px;padding:28px 0 0 24px}.blog-editorial-story h2{font-size:32px}.blog-editorial-footnote{display:block;margin-top:24px}.blog-editorial-footnote>span{display:block;margin-bottom:10px}.blog-editorial-intro{margin-bottom:52px}}
@media(max-width:360px){.blog-editorial-masthead h1{font-size:48px}.blog-editorial-story{margin-left:12px;padding-left:16px}.blog-editorial-story h2{font-size:28px}.blog-editorial-story .blog-editorial-kicker{gap:8px;letter-spacing:.5px}}
