/* The listing intentionally mirrors the existing /for/ index, not a bespoke blog pattern. */
.blog-index-hero.hero.ui.medium { padding:112px 0 40px; }
.blog-index-hero .pill { margin-bottom:18px; }
.blog-index-list.section { padding:48px 0 clamp(96px, 13vw, 200px); }
.blog-grid { display:grid; grid-template-columns:repeat(2, 1fr); gap:18px; }
.blog-card { display:grid; grid-template-columns:1fr auto; align-items:center; gap:16px; padding:clamp(28px,3vw,36px); background:#fff; border:1px solid var(--line); border-radius:var(--radius-card); color:var(--ink); text-decoration:none; transition:border-color .25s ease, transform .25s cubic-bezier(.2,.7,.2,1); }
.blog-card:hover { border-color:var(--graphite); transform:translateY(-2px); }
.blog-card-copy { min-width:0; }
.blog-card-name { display:block; font-family:var(--display); font-size:clamp(24px,2.6vw,32px); font-weight:400; letter-spacing:-.014em; color:var(--ink); line-height:1.1; }
.blog-card-desc { display:block; margin-top:6px; color:var(--body); font-size:15px; line-height:1.5; }
.blog-card-arrow { color:hsl(var(--graphite)); font-family:var(--display); font-size:28px; font-style:italic; transition:transform .25s ease; }
.blog-card:hover .blog-card-arrow { transform:translateX(4px); }
.article-hero.hero { display:block; min-height:0; margin:0; padding:132px 0 64px; background:var(--bg); border-bottom:1px solid var(--line); }
.article-hero-inner { max-width:900px; }
.article-hero h1.h1 { max-width:16ch; margin-top:12px; }
.article-partner-lockup { display:flex; align-items:center; gap:20px; margin:0 0 32px; }
.article-partner-lockup + h1.h1 { margin-top:0; }
.article-partner-gomry { display:block; width:auto; height:44px; transform:translateY(6px); }
.article-partner-separator { display:block; width:1px; height:36px; overflow:hidden; background:var(--muted); color:transparent; font-size:0; line-height:0; }
.article-partner-mark { display:flex; flex:0 0 auto; height:44px; align-items:center; }
.article-partner-lockup--thrad .article-partner-gomry { transform:translateY(7px); }
.article-partner-mark--thrad { gap:8px; color:var(--ink); transform:translateY(0); }
.article-partner-thrad-symbol { display:block; width:44px; height:44px; }
.article-partner-thrad-wordmark { font-family:var(--sans); font-size:52px; font-weight:650; letter-spacing:-.065em; line-height:.82; transform:translateY(-1px); }
.article-partner-mark--agentcard { position:relative; width:64px; height:44px; overflow:hidden; border-radius:9px; background:#000; }
.article-partner-mark--agentcard img { position:absolute; top:50%; left:50%; display:block; width:107px; max-width:none; height:auto; transform:translate(-50%,-50%); }
.article-dek { max-width:58ch; margin:20px 0 0; font-size:clamp(17px,1.4vw,21px); line-height:1.55; color:var(--body); }
.article-partner-lockup--thrad ~ .article-dek { max-width:none; }
.article-meta { display:flex; flex-wrap:wrap; gap:8px 20px; margin-top:24px; color:var(--muted); font-size:13px; }
.article-meta strong { color:var(--ink); font-weight:600; }
.article-shell { display:grid; grid-template-columns:minmax(0, 1fr) 250px; gap:clamp(48px,8vw,136px); max-width:1120px; margin:0 auto; padding:clamp(64px,9vw,96px) var(--gutter) 48px; }
.article-content { min-width:0; max-width:720px; }
.article-content > *:first-child { margin-top:0; }
.article-content h2 { margin:64px 0 18px; font-family:var(--display); font-size:clamp(31px,3.4vw,46px); font-weight:400; line-height:1.07; letter-spacing:-.04em; color:var(--ink); scroll-margin-top:100px; }
.article-content h3 { margin:34px 0 12px; font-size:20px; line-height:1.25; letter-spacing:-.02em; color:var(--ink); }
.article-content p, .article-content li { color:var(--body); font-size:17px; line-height:1.72; }
.article-content p { margin:0 0 20px; }
.article-content ul, .article-content ol { margin:0 0 26px; padding-left:23px; }
.article-content li + li { margin-top:8px; }
.article-content a { color:var(--ink); text-decoration-color:hsl(var(--graphite) / .38); text-underline-offset:3px; }
.article-content a:hover { text-decoration-color:var(--ink); }
.article-content strong { color:var(--ink); font-weight:650; }
.article-content table { width:100%; margin:30px 0; border-collapse:collapse; font-size:14px; line-height:1.45; }
.article-content th, .article-content td { padding:13px 12px; border:1px solid var(--line); text-align:left; vertical-align:top; }
.article-content th { background:var(--bg-warm); color:var(--ink); font-weight:650; }
.article-content tr:nth-child(even) td { background:hsl(var(--marble) / .32); }
.article-content code { padding:2px 5px; border-radius:4px; background:var(--bg-warm); font-family:var(--mono); font-size:.88em; }
.article-aside { align-self:start; position:sticky; top:100px; padding:20px; border-left:1px solid var(--line); }
.article-aside p { margin:0 0 10px; color:var(--muted); font-size:11px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.article-aside a { display:block; margin:9px 0; color:var(--body); font-size:13px; line-height:1.35; text-decoration:none; }
.article-aside a:hover { color:var(--ink); }
.article-cta { margin:52px 0 0; padding:28px; border-radius:var(--radius-card); background:var(--bg-ink); color:#fff; }
.article-cta p { margin:0 0 18px; color:rgba(255,255,255,.78); font-family:var(--display); font-size:26px; line-height:1.12; letter-spacing:-.025em; }
.article-cta .btn { background:#fff; color:var(--ink); }
.article-sources { margin-top:42px; padding-top:22px; border-top:1px solid var(--line); }
.article-sources h2 { margin:0 0 16px; font-size:28px; }
.article-sources ol { padding-left:20px; }
.article-sources li { font-size:14px; overflow-wrap:anywhere; }
.article-related { padding:56px 0 72px; background:var(--bg-warm); border-top:1px solid var(--line); }
.article-related h2 { margin:0 0 24px; font-family:var(--display); font-size:clamp(34px,4.4vw,58px); font-weight:400; letter-spacing:-.045em; }
/* Partner stories: a quieter hero, a wider reading column, and visible handoffs. */
.partner-article .article-hero.hero { padding:112px 0 44px; }
.partner-article .article-hero h1.h1 { max-width:23ch; font-size:clamp(42px,5.5vw,78px); line-height:1.02; letter-spacing:-.045em; text-wrap:balance; }
.partner-article .article-partner-lockup { margin-bottom:28px; }
.partner-article .article-dek { max-width:76ch; font-size:clamp(17px,1.4vw,20px); }
.partner-article .article-shell { max-width:1280px; grid-template-columns:minmax(0,760px) 210px; gap:clamp(36px,5vw,80px); padding-top:52px; }
.partner-article .article-content { max-width:760px; }
.partner-article .article-content h2 { margin-top:48px; font-size:clamp(30px,3vw,40px); text-wrap:balance; }
.partner-article .article-content > p:has(> strong:only-child) { margin:26px 0; padding:24px 28px; border-left:2px solid var(--ink); background:var(--bg-warm); }
.partner-article .article-content > p:has(> strong:only-child) strong { font-family:var(--display); font-size:clamp(23px,2.3vw,30px); line-height:1.35; font-weight:400; }
.partner-article .article-content > ol { list-style:none; counter-reset:purchase-step; padding:0; margin:24px 0 30px; }
.partner-article .article-content > ol > li { position:relative; counter-increment:purchase-step; margin:0; padding:18px 0 18px 48px; border-top:1px solid var(--line); }
.partner-article .article-content > ol > li::before { content:counter(purchase-step, decimal-leading-zero); position:absolute; left:0; top:21px; color:var(--muted); font-family:var(--mono); font-size:12px; }
.partner-article .article-content > ol > li strong { display:block; margin-bottom:4px; }
.partner-article .article-table-wrap { margin:28px 0; padding:6px 24px; border:1px solid var(--line); border-radius:12px; background:var(--bg-warm); }
.partner-article .article-content table { margin:0; font-size:15px; line-height:1.6; }
.partner-article .article-content th, .partner-article .article-content td { border:0; padding:18px 0; background:transparent; }
.partner-article .article-content th { color:var(--muted); font-size:11px; letter-spacing:.08em; text-transform:uppercase; }
.partner-article .article-content td { border-top:1px solid var(--line); }
.partner-article .article-content td:first-child { width:30%; padding-right:24px; font-weight:600; color:var(--ink); }
.partner-article .article-content tr:nth-child(even) td { background:transparent; }
.partner-article .article-aside { padding:4px 0 4px 20px; }
.partner-article .article-aside a { margin:14px 0; }
@media (max-width:800px) { .partner-article .article-shell { grid-template-columns:1fr; padding-top:36px; } .partner-article .article-hero.hero { padding:104px 0 32px; } }
@media (max-width:600px) { .partner-article .article-hero h1.h1 { font-size:42px; } .partner-article .article-table-wrap { padding:4px 16px; } .partner-article .article-content table { display:table; } .partner-article .article-content td:first-child { width:33%; padding-right:14px; } .partner-article .article-content > p:has(> strong:only-child) { padding:20px; } }
@media (max-width:800px) { .blog-index-hero.hero.ui.medium { padding:96px 0 32px; } .blog-index-list.section { padding-top:36px; } .blog-grid { grid-template-columns:1fr; } .article-shell { grid-template-columns:1fr; padding-bottom:40px; } .article-related { padding:48px 0 56px; } .article-aside { display:none; } }
@media (max-width:600px) { .article-partner-lockup { gap:14px; margin-bottom:26px; } .article-partner-gomry, .article-partner-mark { height:38px; } .article-partner-gomry { transform:translateY(6px); } .article-partner-separator { height:31px; } .article-partner-mark--thrad { gap:7px; } .article-partner-thrad-symbol { width:38px; height:38px; } .article-partner-thrad-wordmark { font-size:45px; } .article-partner-mark--agentcard { width:55px; height:38px; border-radius:8px; } .article-partner-mark--agentcard img { width:93px; } .article-content p, .article-content li { font-size:16px; } .article-content table { display:block; overflow-x:auto; } }

/* Topic navigation stays on the existing index; no filter URLs or empty archives. */
.blog-topics { display:flex; flex-wrap:wrap; gap:12px 24px; margin-bottom:48px; }
.blog-topics a { color:var(--ink); text-underline-offset:5px; }
.blog-topic + .blog-topic { margin-top:64px; }
.blog-topic h2 { margin-bottom:24px; scroll-margin-top:100px; }
.article-table-wrap { max-width:100%; overflow-x:auto; }
.article-content table { min-width:460px; }
.article-image { margin:0 0 32px; }
.article-image img { display:block; width:100%; height:auto; }
.article-image figcaption { margin-top:10px; color:var(--muted); font-size:14px; }
@media (max-width:600px) { .article-content table { display:table; } }

.blog-card-meta { display:block; margin-bottom:14px; color:var(--muted); font-size:12px; line-height:1.5; }
.blog-list-summary { margin:0 0 24px; color:var(--muted); font-size:14px; }
.blog-topics { margin-bottom:28px; gap:12px 20px; }
.blog-topics a[aria-current="page"] { font-weight:650; text-decoration-thickness:2px; }
.blog-pagination { display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:8px; margin-top:36px; }
.blog-pagination a { padding:10px 14px; border:1px solid var(--line); border-radius:6px; color:var(--ink); text-decoration:none; }
.blog-pagination a[aria-current="page"] { background:var(--ink); color:var(--bg); }
.blog-index-list.section { padding-bottom:72px; }
