/* NutraSafe blog article layout. Loaded after design.css. Contained reading
   column, scoped under .bw so it never collides with the homepage .section system. */
.bw{max-width:760px;margin:0 auto;padding:0 22px}
.bw-hero{padding:34px 0 6px}
.bw-eyebrow{font-family:var(--mono);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:14px}
.bw-hero h1{font-size:clamp(36px,6.5vw,58px);line-height:1.03;font-weight:800;letter-spacing:-.02em;color:var(--ink)}
.bw-hero h1 em{font-style:italic}
.bw-lede{font-size:21px;line-height:1.5;color:var(--ink-soft);margin-top:16px;max-width:42rem}
.bw-body{margin-top:14px}
.bw-body h2{font-size:27px;font-weight:800;letter-spacing:-.01em;line-height:1.12;margin:42px 0 8px;color:var(--ink)}
.bw-body p{font-size:18px;line-height:1.62;margin:0 0 16px;color:var(--ink)}
.bw-body p.intro{color:var(--ink-soft)}
.bw-body a{color:var(--indigo);text-underline-offset:3px}
.bw-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0 26px}
@media(max-width:620px){.bw-cards{grid-template-columns:1fr}}
.bw-card{display:block;border:1.5px solid var(--ink);border-radius:14px;padding:15px 17px;background:var(--surface);transition:transform .12s,box-shadow .12s}
.bw-card:hover{transform:translate(-2px,-2px);box-shadow:5px 5px 0 var(--ink)}
.bw-card b{display:block;font-size:16px;margin-bottom:5px;color:var(--ink)}
.bw-card span{display:block;font-size:14.5px;line-height:1.5;color:var(--ink-soft)}
.bw-card span a{font-weight:600}
.bw-card.sage{background:var(--sage-soft)}
.bw-card.sage span{color:var(--ink)}
.bw-callout{background:var(--ink);color:var(--cream);border-radius:18px;padding:24px 26px;margin:26px 0}
.bw-callout .l{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--yellow-pop);margin-bottom:8px}
.bw-callout p{margin:0;font-size:19px;font-weight:600;line-height:1.45;color:var(--cream)}

.bw-figure{margin:24px 0 6px}
.bw-figure svg,.bw-figure img{width:100%;height:auto;display:block}
.bw-cta{background:var(--yellow);border:2px solid var(--ink);border-radius:24px;padding:32px 28px;margin:44px 0 8px;text-align:center;box-shadow:8px 8px 0 var(--ink)}
.bw-cta h3{font-size:25px;font-weight:800;letter-spacing:-.01em;margin-bottom:8px;color:var(--ink)}
.bw-cta p{font-size:16px;margin-bottom:18px;color:var(--ink)}
.bw-cta-btn{display:inline-block;background:var(--ink);color:var(--cream);font-weight:700;font-size:16px;padding:14px 26px;border-radius:40px}
.bw-cta-note{font-size:13px;color:var(--ink-soft);margin-top:12px;font-family:var(--mono)}

.bw-body h2{scroll-margin-top:84px}
.bw-toc{border:1.5px solid var(--ink);border-radius:14px;padding:16px 20px;margin:22px 0 30px;background:var(--cream-deep)}
.bw-toc-l{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:8px}
.bw-toc a{display:block;font-weight:600;font-size:16px;color:var(--ink);padding:5px 0;border-bottom:1px solid var(--rule-soft)}
.bw-toc a:last-child{border-bottom:none}
.bw-toc a:hover{color:var(--indigo)}
.bw-sources{margin:6px 0 0 18px;font-size:14.5px;color:var(--ink-soft);line-height:1.55}
.bw-sources li{margin-bottom:7px}
