.blog-shell{max-width:1160px;margin:0 auto;padding:24px 20px 56px;color:var(--ink,#18212b);overflow-wrap:anywhere}
.blog-shell *{box-sizing:border-box;letter-spacing:0}
.blog-breadcrumb{display:flex;flex-wrap:wrap;gap:8px;font-size:.88rem;color:var(--muted,#56616f);margin-bottom:24px}
.blog-breadcrumb a,.blog-prose a,.blog-method a,.blog-byline a{color:#076d63;text-decoration:underline;text-underline-offset:3px}
.blog-heading{max-width:820px;margin-bottom:28px}.blog-heading h1{font-size:2rem;line-height:1.2;margin:10px 0 18px;letter-spacing:0}.blog-heading>p:not(.eyebrow){font-size:1.08rem;line-height:1.75;color:#455161}.blog-byline{font-size:.88rem;line-height:1.7;color:#56616f}
.blog-topics{display:flex;flex-wrap:wrap;gap:20px;border-block:1px solid #dbe3e4;padding:14px 0;margin-bottom:28px}.blog-topics a{color:#455161;padding:6px 0;border-bottom:3px solid transparent;font-weight:650}.blog-topics a[aria-current]{color:#076d63;border-color:#076d63}
.blog-grid{display:grid;grid-template-columns:1fr;gap:24px}.blog-card{border:1px solid #dbe3e4;border-radius:8px;overflow:hidden;background:#fff;display:flex;flex-direction:column}.blog-card-image{height:210px;display:block;background:#f3f6f6;padding:20px}.blog-card-image img{width:100%;height:100%;object-fit:contain}.blog-card-copy{padding:22px;display:flex;flex-direction:column;flex:1}.blog-card h2{font-size:1.25rem;line-height:1.4;margin:8px 0 12px}.blog-card h2 a{color:#18212b}.blog-card h2 a:hover{text-decoration:underline;color:#076d63}.blog-card-copy>p:not(.blog-kicker){font-size:.97rem;line-height:1.65;color:#56616f;margin:0 0 18px}.blog-kicker{color:#076d63;font-size:.82rem;font-weight:750;margin:0}.blog-card time{font-size:.82rem;color:#56616f;margin-top:auto}
.blog-method{margin-top:40px;border-top:1px solid #dbe3e4;padding-top:28px;max-width:820px;line-height:1.75}.blog-method h2{font-size:1.35rem;line-height:1.4}
.blog-article{max-width:1120px}.blog-cover{margin:0 0 36px;border-bottom:1px solid #dbe3e4;padding-bottom:18px}.blog-cover img{width:100%;height:320px;object-fit:contain;background:#f3f6f6;padding:24px}.blog-cover figcaption{font-size:.82rem;color:#56616f;margin-top:10px;line-height:1.5}.blog-reading-layout{display:grid;gap:24px}.blog-toc{border-left:3px solid #0b897a;padding:4px 0 4px 18px;align-self:start}.blog-toc h2{font-size:1rem;margin:0 0 12px}.blog-toc ol{padding-left:20px;margin:0}.blog-toc li{margin:0 0 12px;line-height:1.5;font-size:.9rem}.blog-toc a{color:#455161}.blog-toc a:hover{text-decoration:underline;color:#076d63}
.blog-prose{min-width:0;max-width:760px;font-size:1.02rem;line-height:1.85}.blog-prose section,.blog-related{padding-bottom:28px;margin-bottom:28px;border-bottom:1px solid #dbe3e4;scroll-margin-top:120px}.blog-prose h2{font-size:1.4rem;line-height:1.35;margin:0 0 16px}.blog-prose p{margin:0 0 16px}.blog-prose ul{padding-left:22px}.blog-prose li{margin-bottom:9px}.blog-table-scroll{overflow-x:auto}.blog-prose table{border-collapse:collapse;width:100%;font-size:.94rem}.blog-prose caption{text-align:left;color:#56616f;margin-bottom:10px;font-size:.85rem}.blog-prose th,.blog-prose td{text-align:left;vertical-align:top;border:1px solid #dbe3e4;padding:12px}.blog-prose thead{background:#edf5f3}.blog-prose tbody th{width:36%;font-weight:600}.blog-checklist{list-style:none;padding:0!important}.blog-checklist li{display:flex;align-items:baseline;gap:10px}.blog-checklist .icon{width:18px;height:18px;flex:none;color:#076d63}.blog-products{list-style:none;padding:0!important}.blog-products li{display:flex;align-items:center;gap:16px;padding:14px 0;border-bottom:1px solid #edf0f2}.blog-products img{width:80px;height:80px;flex:none;object-fit:contain}.blog-prose details{padding:14px 0;border-bottom:1px solid #dbe3e4}.blog-prose summary{font-weight:650;cursor:pointer;line-height:1.5}.blog-prose details p{margin:14px 0 0}.blog-sources{font-size:.94rem;color:#455161}.blog-shell a:focus-visible,.blog-shell summary:focus-visible{outline:3px solid #dc9c27;outline-offset:4px}
@media(min-width:640px){.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.blog-heading h1{font-size:2.5rem}.blog-shell{padding-inline:28px}}
@media(min-width:1000px){.blog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.blog-reading-layout{grid-template-columns:240px minmax(0,1fr);gap:48px}.blog-toc{position:sticky;top:110px}.blog-cover img{height:360px}}
@media(max-width:639px){.blog-prose section,.blog-related{scroll-margin-top:210px}}
@media(prefers-reduced-motion:no-preference){.blog-card{transition:border-color .18s ease}.blog-card:hover{border-color:#0b897a}}
