/* Only the blog index uses this namespace. */
.blog-magazine{--bm-line:#cee2df;--bm-soft:#f0f7f5;padding-bottom:70px}
.blog-magazine .blog-intro{padding-bottom:45px}
.blog-magazine .bm-jump{display:flex;flex-wrap:wrap;gap:12px 28px;margin-top:30px;font-size:14px}
.blog-magazine .bm-jump a{display:inline-flex;align-items:center;gap:14px;color:var(--primary);border-bottom:1px solid var(--bm-line);padding:8px 0}
.blog-magazine .bm-section,.blog-magazine .bm-empty{width:90%;max-width:1280px;margin:0 auto}
.blog-magazine .bm-section{padding:38px 0 52px;scroll-margin-top:30px;border-top:1px solid var(--bm-line)}
.blog-magazine .bm-section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:28px}
.blog-magazine .bm-section-heading .kicker{margin-bottom:10px}
.blog-magazine .bm-section-heading h2{font-size:clamp(28px,3vw,40px);line-height:1.15;letter-spacing:-1px;margin:0}
.blog-magazine .bm-section-heading>p{font-size:13px;white-space:nowrap;color:var(--muted);margin:0 0 4px}
.blog-magazine .bm-grid{display:grid;gap:28px;grid-template-columns:repeat(2,minmax(0,1fr))}
.blog-magazine .bm-card{min-width:0;display:flex;flex-direction:column;overflow:hidden;border-radius:7px;background:var(--bm-soft)}
.blog-magazine .bm-image{position:relative;display:block;aspect-ratio:16/10;background:#d2e7e3;overflow:hidden;flex-shrink:0}
.blog-magazine .bm-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.blog-magazine .bm-image:hover img{transform:scale(1.025)}
.blog-magazine .bm-image-fallback{position:absolute;inset:0;display:grid;place-items:center;padding:20px;text-align:center;color:var(--primary);font-size:24px}
.blog-magazine .bm-badge{position:absolute;top:20px;left:20px;background:#f8d24d;color:#073c45;font-size:12px;font-weight:600;padding:7px 12px;border-radius:3px}
.blog-magazine .bm-copy{padding:28px;display:flex;flex-direction:column;flex:1;min-width:0}
.blog-magazine .bm-meta{display:flex;gap:6px 12px;flex-wrap:wrap;color:var(--primary);font-size:12px;line-height:1.6;margin:0 0 14px}
.blog-magazine .bm-meta span+span{border-left:1px solid #abcac6;padding-left:12px}
.blog-magazine .bm-card h3{font-size:clamp(26px,2.5vw,36px);line-height:1.18;letter-spacing:-.6px;margin:0 0 18px;overflow-wrap:anywhere}
.blog-magazine .bm-card h3 a:hover{color:var(--primary)}
.blog-magazine .bm-excerpt{font-size:17px;line-height:1.7;margin:0 0 24px}
.blog-magazine .bm-card-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:auto;padding-top:18px;border-top:1px solid var(--bm-line);font-size:12px}
.blog-magazine .bm-card-foot time{color:var(--muted)}
.blog-magazine .bm-read{display:inline-flex;align-items:center;gap:10px;font-size:14px;font-weight:600;color:var(--primary)}
.blog-magazine .bm-read:hover{text-decoration:underline;text-underline-offset:4px}
.blog-magazine a:focus-visible{outline:3px solid var(--primary);outline-offset:4px}
.blog-magazine .bm-medium .bm-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.blog-magazine .bm-medium .bm-card{background:#fff;border:1px solid var(--bm-line)}
.blog-magazine .bm-medium .bm-image{aspect-ratio:16/9}
.blog-magazine .bm-medium .bm-copy{padding:22px}
.blog-magazine .bm-medium h3{font-size:24px;letter-spacing:-.4px}
.blog-magazine .bm-medium .bm-excerpt{font-size:15px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.blog-magazine .bm-archive .bm-grid{display:block}
.blog-magazine .bm-archive .bm-card{display:grid;grid-template-columns:210px minmax(0,1fr);gap:28px;padding:24px 0;border-bottom:1px solid var(--bm-line);border-radius:0;background:white}
.blog-magazine .bm-archive .bm-card:first-child{padding-top:0}
.blog-magazine .bm-archive .bm-image{aspect-ratio:3/2;border-radius:5px;align-self:start}
.blog-magazine .bm-archive .bm-copy{padding:0}
.blog-magazine .bm-archive .bm-meta{margin-bottom:8px}
.blog-magazine .bm-archive h3{font-size:24px;margin-bottom:10px}
.blog-magazine .bm-archive .bm-excerpt{font-size:15px;margin-bottom:12px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.blog-magazine .bm-archive .bm-card-foot{border:0;padding-top:0;justify-content:flex-start;gap:24px}
@media(max-width:1000px){.blog-magazine .bm-medium .bm-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.blog-magazine .bm-copy{padding:22px}}
@media(max-width:600px){
 .blog-magazine{padding-bottom:30px}
 .blog-magazine .bm-grid,.blog-magazine .bm-medium .bm-grid{grid-template-columns:1fr;gap:22px}
 .blog-magazine .bm-section{padding:30px 0 38px}
 .blog-magazine .bm-section-heading{gap:10px;align-items:start}
 .blog-magazine .bm-section-heading>p{padding-top:5px}
 .blog-magazine .bm-section-heading .kicker{font-size:10px}
 .blog-magazine .bm-jump{gap:6px 20px;font-size:13px}
 .blog-magazine .bm-card h3{font-size:26px}
 .blog-magazine .bm-medium h3{font-size:23px}
 .blog-magazine .bm-excerpt{font-size:16px}
 .blog-magazine .bm-archive .bm-card{grid-template-columns:90px minmax(0,1fr);gap:16px;padding:20px 0}
 .blog-magazine .bm-archive .bm-image{aspect-ratio:1}
 .blog-magazine .bm-archive h3{font-size:19px;line-height:1.25;letter-spacing:-.2px}
 .blog-magazine .bm-archive .bm-meta{font-size:11px;gap:2px 8px}
 .blog-magazine .bm-archive .bm-meta span+span{padding-left:0;border:0}
 .blog-magazine .bm-archive .bm-excerpt{display:none}
 .blog-magazine .bm-archive .bm-card-foot{gap:5px 16px}
 .blog-magazine .bm-archive .bm-read{font-size:12px}
 .blog-magazine .bm-image-fallback{font-size:14px;padding:8px}
}
@media(prefers-reduced-motion:reduce){.blog-magazine .bm-image img{transition:none}}

/* Age-based additions; the three existing layouts above stay unchanged. */
.blog-magazine .bm-compact .bm-grid,.blog-magazine .bm-historic .bm-grid{display:block}
.blog-magazine .bm-compact .bm-card,.blog-magazine .bm-historic .bm-card{display:grid;grid-template-columns:72px minmax(0,1fr);gap:20px;align-items:center;padding:16px 0;border-bottom:1px solid var(--bm-line);border-radius:0;background:transparent}
.blog-magazine .bm-compact .bm-image,.blog-magazine .bm-historic .bm-image{aspect-ratio:1;border-radius:4px}
.blog-magazine .bm-compact .bm-copy,.blog-magazine .bm-historic .bm-copy{padding:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 24px;align-items:center}
.blog-magazine .bm-compact .bm-meta,.blog-magazine .bm-historic .bm-meta{margin:0;font-size:11px}
.blog-magazine .bm-compact h3,.blog-magazine .bm-historic h3{grid-column:1;font-size:20px;line-height:1.3;letter-spacing:-.2px;margin:0}
.blog-magazine .bm-compact .bm-excerpt,.blog-magazine .bm-historic .bm-excerpt{display:none}
.blog-magazine .bm-compact .bm-card-foot,.blog-magazine .bm-historic .bm-card-foot{grid-column:2;grid-row:1 / 3;display:flex;flex-direction:column;align-items:flex-end;gap:6px;border:0;padding:0;margin:0}
.blog-magazine .bm-compact .bm-read,.blog-magazine .bm-historic .bm-read{font-size:12px}
.blog-magazine .bm-archive-toggle{border:1px solid var(--bm-line);border-radius:7px;background:var(--bm-soft);padding:0 24px}
.blog-magazine .bm-archive-toggle>summary{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 0;cursor:pointer;list-style:none;font-size:18px}
.blog-magazine .bm-archive-toggle>summary::-webkit-details-marker{display:none}
.blog-magazine .bm-archive-toggle>summary small{display:block;font-size:12px;font-weight:400;color:var(--muted);margin-top:4px}
.blog-magazine .bm-toggle-icon{font-size:28px;font-weight:400;line-height:1;transition:transform .2s}
.blog-magazine .bm-archive-toggle[open] .bm-toggle-icon{transform:rotate(45deg)}
.blog-magazine .bm-archive-note{font-size:13px;color:var(--muted);max-width:760px;margin:0 0 14px}
.blog-magazine .bm-historic .bm-card:last-child{border-bottom:0;margin-bottom:8px}
.blog-magazine .bm-compact .bm-image-fallback,.blog-magazine .bm-historic .bm-image-fallback{font-size:10px;padding:4px}
@media(max-width:600px){
 .blog-magazine .bm-compact .bm-card,.blog-magazine .bm-historic .bm-card{grid-template-columns:54px minmax(0,1fr);gap:12px;padding:14px 0;align-items:start}
 .blog-magazine .bm-compact .bm-copy,.blog-magazine .bm-historic .bm-copy{display:flex;gap:6px;align-items:stretch}
 .blog-magazine .bm-compact h3,.blog-magazine .bm-historic h3{font-size:17px}
 .blog-magazine .bm-compact .bm-card-foot,.blog-magazine .bm-historic .bm-card-foot{flex-direction:row;align-items:center;gap:4px 14px;font-size:11px}
 .blog-magazine .bm-archive-toggle{padding:0 14px}
 .blog-magazine .bm-archive-toggle>summary{font-size:16px}
}
@media(prefers-reduced-motion:reduce){.blog-magazine .bm-toggle-icon{transition:none}}

/* Theme posts are visually identifiable without creating a second card system. */
.blog-magazine .bm-type-badge{position:absolute;right:20px;top:20px;background:#e2f3f2;color:#073c45;font-size:10px;font-weight:600;letter-spacing:.8px;padding:7px 10px;border-radius:3px}
.blog-magazine .bm-badge+.bm-type-badge{top:56px}
.blog-magazine .bm-theme-card .bm-meta span:first-child{font-weight:600;letter-spacing:.4px}
@media(max-width:600px){.blog-magazine .bm-type-badge{right:12px;top:12px}.blog-magazine .bm-badge+.bm-type-badge{top:48px}}


/* Feed-based offer stories use the same editorial card design with a distinct label. */
.blog-magazine .bm-offer-badge{background:#f8d24d;color:#073c45}
.blog-magazine .bm-offer-card .bm-meta span:first-child{font-weight:700;letter-spacing:.4px}
