/* Block Magnates. One publication, one visual language. */
body.bme-editorial {
  --bme-paper: #fafbf7;
  --bme-white: #ffffff;
  --bme-ink: #182820;
  --bme-body: #35463b;
  --bme-muted: #647267;
  --bme-green: #1d5841;
  --bme-green-dark: #123c2c;
  --bme-lime: #d4ef93;
  --bme-line: #d8e0d3;
  --bme-wash: #f0f4eb;
  --bme-serif: "Source Serif 4", Georgia, "Times New Roman", serif;
  --bme-sans: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  margin: 0;
  background: var(--bme-paper);
  color: var(--bme-ink);
  font-family: var(--bme-sans);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
html:has(body.bme-editorial) { scroll-behavior: smooth; }
body.bme-editorial #bme-site { font-family: var(--bme-sans); color: var(--bme-ink); background: var(--bme-paper); font-size: 16px; line-height: 1.6; overflow: clip; }
#bme-site *, #bme-site *::before, #bme-site *::after { box-sizing: border-box; }
#bme-site [hidden] { display: none !important; }
#bme-site a { color: inherit; text-decoration: none; transition: color .16s ease, background-color .16s ease, border-color .16s ease; }
#bme-site a:hover { color: var(--bme-green); }
#bme-site button, #bme-site input, #bme-site select, #bme-site textarea { font: inherit; }
#bme-site button { cursor: pointer; }
#bme-site :is(a,button,input,summary,select,textarea,[tabindex]):focus-visible { outline: 3px solid #7aa34e; outline-offset: 5px; }
#bme-site ::selection { color: #10271a; background: #d4ef93; }
#bme-site h1, #bme-site h2, #bme-site h3, #bme-site h4, #bme-site h5, #bme-site h6 { color: var(--bme-ink); font-family: var(--bme-serif); font-weight: 600; line-height: 1.18; letter-spacing: -.025em; margin: 0; text-transform: none; }
#bme-site img { max-width: 100%; vertical-align: middle; }
#bme-site p { margin: 0; }
#bme-site .bme-shell { width: min(calc(100% - 80px), 1240px); margin-inline: auto; }
#bme-site .bme-visually-hidden { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
#bme-site .bme-skip { position: fixed; z-index: 99999; top: -100px; left: 20px; padding: 12px 20px; color: white; background: var(--bme-green-dark); }
#bme-site .bme-skip:focus { top: 12px; }
#bme-site .bme-eyebrow { font-family: var(--bme-sans); font-size: 11px; line-height: 1.5; font-weight: 700; letter-spacing: .11em; text-transform: uppercase; color: var(--bme-green); }
#bme-site .bme-text-link { display: inline-flex; align-items: center; gap: 16px; font-family: var(--bme-sans); font-size: 13px; font-weight: 700; line-height: 1.5; color: var(--bme-green); }
#bme-site .bme-text-link:hover { text-decoration: underline; text-underline-offset: 4px; }
#bme-site .bme-button { display: inline-flex; justify-content: center; align-items: center; gap: 24px; min-height: 48px; padding: 13px 22px; border: 1px solid var(--bme-green-dark); border-radius: 3px; color: #fff; background: var(--bme-green-dark); font-family: var(--bme-sans); font-size: 13px; font-weight: 700; line-height: 1.3; letter-spacing: 0; box-shadow: none; white-space: nowrap; }
#bme-site .bme-button:hover { color: white; background: #24553f; border-color: #24553f; }
#bme-site .bme-button-small { min-height: 42px; padding: 11px 16px; gap: 16px; }
#bme-site .bme-button-lime { background: var(--bme-lime); border-color: var(--bme-lime); color: #143b29; }
#bme-site .bme-button-lime:hover { background: #e4f8bb; border-color: #e4f8bb; color: #143b29; }
#bme-site .bme-icon-button { display: inline-grid; place-items: center; flex-shrink: 0; width: 44px; height: 44px; padding: 0; background: transparent; color: var(--bme-ink); border: 0; border-radius: 3px; box-shadow: none; line-height: 1; }
#bme-site .bme-icon-button:hover { background: var(--bme-wash); }

/* Navigation: a quiet masthead, generous logo and compact reading routes. */
#bme-site .bme-masthead { border-bottom: 1px solid var(--bme-line); font-size: 10px; line-height: 1.4; color: var(--bme-muted); letter-spacing: .045em; }
#bme-site .bme-masthead > div { display: flex; justify-content: space-between; gap: 16px; padding-block: 9px; }
#bme-site .bme-header { position: sticky; top: 0; z-index: 200; border-bottom: 1px solid var(--bme-line); background: rgba(250,251,247,.97); }
body.admin-bar #bme-site .bme-header { top: 32px; }
#bme-site .bme-header-row { display: flex; align-items: center; justify-content: space-between; gap: 28px; min-height: 88px; }
#bme-site .bme-logo { display: inline-flex; flex-shrink: 0; align-items: center; line-height: 0; }
#bme-site .bme-logo img { display: block; width: 232px; height: auto; max-height: 62px; object-fit: contain; }
#bme-site .bme-header-actions { display: flex; align-items: center; gap: 12px; }
#bme-site .bme-menu-list { list-style: none; display: flex; align-items: center; gap: 25px; margin: 0; padding: 0; }
#bme-site .bme-menu-list > li { position: relative; margin: 0; padding: 0; }
#bme-site .bme-menu-list a { display: block; font-family: var(--bme-sans); font-size: 13px; font-weight: 600; white-space: nowrap; padding-block: 12px; }
#bme-site .bme-menu-list a:hover { color: var(--bme-green); }
#bme-site .bme-menu-list .sub-menu { display: none; position: absolute; left: -16px; top: 100%; list-style: none; margin: 0; padding: 10px 18px; min-width: 200px; background: var(--bme-white); border: 1px solid var(--bme-line); border-radius: 3px; box-shadow: 0 12px 24px #15291d0d; }
#bme-site .bme-menu-list li:focus-within > .sub-menu, #bme-site .bme-menu-list li:hover > .sub-menu { display: block; }
#bme-site .bme-menu-toggle { display: none; }
#bme-site .bme-mobile-nav { padding: 12px 24px 24px; border-top: 1px solid var(--bme-line); }
#bme-site .bme-mobile-nav .bme-menu-list { display: block; }
#bme-site .bme-mobile-nav .bme-menu-list a { padding: 13px 0; font-size: 17px; }
#bme-site .bme-mobile-nav .sub-menu { position: static; padding-left: 16px; display: block; box-shadow: none; border: 0; background: transparent; }
#bme-site .bme-mobile-extra { display: flex; gap: 25px; padding-top: 18px; font-size: 13px; color: var(--bme-muted); }
#bme-site .bme-search-dialog { position: fixed; inset: 15vh 0 auto; width: min(calc(100% - 32px), 660px); max-width: none; max-height: 80vh; padding: 28px; border: 1px solid var(--bme-line); border-radius: 5px; background: var(--bme-paper); box-shadow: 0 30px 80px #10281c33; color: var(--bme-ink); }
#bme-site .bme-search-dialog::backdrop { background: #10271acc; backdrop-filter: blur(3px); }
#bme-site .bme-search-heading { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 20px; }
#bme-site .bme-search-heading h2 { font-size: 27px; }
#bme-site .bme-search-heading button { font-size: 28px; }
#bme-site .bme-search-dialog form { display: flex; gap: 8px; }
#bme-site .bme-search-dialog input { width: 100%; min-width: 0; border: 1px solid #aebcac; border-radius: 3px; background: white; padding: 13px 15px; font-size: 15px; height: auto; color: var(--bme-ink); }
#bme-site .bme-search-dialog > p { margin-top: 14px; font-size: 12px; color: var(--bme-muted); }

/* Homepage: lead story, latest rail, then distinct editorial sections. */
#bme-site .bme-home { padding-bottom: 84px; }
#bme-site .bme-section-intro { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding-block: 27px; }
#bme-site .bme-section-intro .bme-eyebrow { display: flex; align-items: center; gap: 10px; }
#bme-site .bme-small-diamond { display: inline-block; width: 7px; height: 7px; background: var(--bme-green); transform: rotate(45deg); }
#bme-site .bme-section-intro nav { display: flex; gap: 21px; font-size: 11px; color: var(--bme-muted); }
#bme-site .bme-front-grid { display: grid; grid-template-columns: minmax(0, 1.8fr) minmax(290px, 1fr); gap: 48px; padding-bottom: 48px; border-bottom: 1px solid var(--bme-line); }
#bme-site .bme-card { margin: 0; background: transparent; min-width: 0; }
#bme-site .bme-card-image { display: block; overflow: hidden; padding: 5px; border: 1px solid var(--bme-line); border-radius: 3px; background: var(--bme-white); }
#bme-site .bme-card-image img, #bme-site .bme-card-image .bme-image-placeholder { display: block; width: 100%; height: auto; aspect-ratio: 16 / 10; object-fit: cover; border-radius: 1px; transition: transform .3s ease; }
#bme-site .bme-card-image:hover img { transform: scale(1.015); }
#bme-site .bme-category { display: inline-block; font-family: var(--bme-sans); font-size: 11px; line-height: 1.5; letter-spacing: .105em; font-weight: 700; text-transform: uppercase; color: var(--bme-green); }
#bme-site .bme-card-copy { padding-top: 18px; }
#bme-site .bme-card h3 { font-size: 25px; line-height: 1.2; letter-spacing: -.025em; margin: 8px 0 11px; }
#bme-site .bme-card h3 a:hover, #bme-site .bme-card h1 a:hover { color: var(--bme-green); }
#bme-site .bme-card-excerpt { font-size: 14px; line-height: 1.7; color: var(--bme-muted); margin-bottom: 14px; }
#bme-site .bme-story-meta { display: flex; flex-wrap: wrap; gap: 4px 8px; font-family: var(--bme-sans); font-size: 12px; line-height: 1.5; color: var(--bme-muted); }
#bme-site .bme-card-lead { display: flex; flex-direction: column; }
#bme-site .bme-card-lead .bme-card-copy { order: -1; padding-top: 0; padding-bottom: 22px; }
#bme-site .bme-card-lead h1 { font-size: clamp(37px, 3.3vw, 48px); line-height: 1.08; letter-spacing: -.035em; margin: 10px 0 16px; max-width: 720px; }
#bme-site .bme-card-lead .bme-card-excerpt { max-width: 620px; font-size: 15px; line-height: 1.6; margin-bottom: 16px; }
#bme-site .bme-card-lead .bme-card-image img { aspect-ratio: 16/8.7; }
#bme-site .bme-section-label { display: flex; justify-content: space-between; align-items: center; padding-bottom: 19px; border-bottom: 2px solid var(--bme-ink); }
#bme-site .bme-section-label h2 { font-family: var(--bme-sans); font-size: 12px; font-weight: 700; letter-spacing: .065em; text-transform: uppercase; }
#bme-site .bme-section-label > span { font-size: 20px; }
#bme-site .bme-latest-rail { padding-left: 30px; border-left: 1px solid var(--bme-line); }
#bme-site .bme-card-compact { padding: 19px 0 20px; border-bottom: 1px solid var(--bme-line); }
#bme-site .bme-card-compact .bme-card-copy { padding: 0; }
#bme-site .bme-card-compact h3 { font-size: 23px; line-height: 1.22; margin: 6px 0 10px; }
#bme-site .bme-latest-rail > .bme-text-link { margin-top: 22px; }
#bme-site .bme-section-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 24px; margin-bottom: 28px; }
#bme-site .bme-section-heading h2 { font-size: 32px; letter-spacing: -.035em; }
#bme-site .bme-home-section { padding-top: 46px; }
#bme-site .bme-card-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; }
#bme-site .bme-security-section { display: grid; grid-template-columns: 1fr 1.5fr; gap: 64px; padding: 42px; margin-top: 54px; background: #eaf0e3; border-top: 2px solid var(--bme-green); border-bottom: 1px solid #cbd7c3; }
#bme-site .bme-security-intro h2 { max-width: 320px; font-size: 38px; line-height: 1.13; margin: 16px 0; }
#bme-site .bme-security-intro > p:not(.bme-eyebrow) { font-size: 14px; line-height: 1.7; color: #556653; max-width: 310px; }
#bme-site .bme-security-intro .bme-text-link { margin-top: 28px; }
#bme-site .bme-security-stories { display: flex; flex-direction: column; }
#bme-site .bme-card-text { padding-bottom: 20px; margin-bottom: 20px; border-bottom: 1px solid #cad7c2; }
#bme-site .bme-card-text:last-child { padding-bottom: 0; margin-bottom: 0; border-bottom: 0; }
#bme-site .bme-card-text .bme-card-copy { padding: 0; }
#bme-site .bme-card-text h3 { font-size: 26px; }
#bme-site .bme-image-placeholder { display: flex; align-items: center; justify-content: space-between; padding: 36px; background: #e9efe2; color: var(--bme-green-dark); font-family: var(--bme-sans); font-size: 21px; font-weight: 700; line-height: 1.05; letter-spacing: -.03em; }
#bme-site .bme-image-mark { color: #6f9253; font-size: 86px; line-height: 1; font-weight: 400; }

/* Article: aligned header, real credits and a calm, readable measure. */
#bme-site .bme-breadcrumbs { font-family: var(--bme-sans); font-size: 12px; line-height: 1.5; color: var(--bme-muted); padding: 28px 0 22px; }
#bme-site .bme-breadcrumbs ol { display: flex; flex-wrap: wrap; align-items: center; gap: 7px; padding: 0; margin: 0; list-style: none; }
#bme-site .bme-breadcrumbs li { margin: 0; }
#bme-site .bme-breadcrumbs li + li::before { content: "/"; color: #a8b6a3; margin-right: 7px; }
#bme-site .bme-breadcrumbs a:hover { text-decoration: underline; text-underline-offset: 3px; }
#bme-site .bme-article { max-width: 1060px; margin-inline: auto; }
#bme-site .bme-article-header { max-width: 970px; margin: 8px auto 32px; }
#bme-site .bme-article-header > .bme-category { margin-bottom: 15px; font-size: 11px; }
#bme-site .bme-article-header h1 { font-family: var(--bme-serif); font-size: clamp(38px, 4.2vw, 58px); font-weight: 600; line-height: 1.08; letter-spacing: -.035em; max-width: 940px; text-wrap: balance; margin: 0; }
#bme-site .bme-deck { font-family: var(--bme-sans); font-size: 19px; line-height: 1.6; color: #586858; max-width: 820px; margin: 20px 0 0; }
#bme-site .bme-byline { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; padding-top: 25px; margin-top: 0; }
#bme-site .bme-byline-avatar { width: 42px; height: 42px; border: 1px solid var(--bme-line); border-radius: 50%; overflow: hidden; background: #eff3e9; }
#bme-site .bme-byline-avatar img { width: 100%; height: 100%; object-fit: cover; border: 0; padding: 0; }
#bme-site .bme-author-name { font-size: 12px; font-weight: 400; line-height: 1.5; }
#bme-site .bme-author-name a { font-weight: 700; }
#bme-site .bme-author-name a:hover { text-decoration: underline; text-underline-offset: 3px; }
#bme-site .bme-publish-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 7px; color: var(--bme-muted); font-size: 11px; line-height: 1.6; margin-top: 3px; }
#bme-site .bme-reviewed { display: flex; gap: 8px; align-items: center; font-size: 11px; line-height: 1.45; color: var(--bme-muted); margin-left: 16px; padding-left: 20px; border-left: 1px solid var(--bme-line); }
#bme-site .bme-reviewed a { color: var(--bme-green); font-weight: 700; }
#bme-site .bme-reviewed small { display: block; font-size: 10px; margin-top: 3px; }
#bme-site .bme-review-check { display: grid; place-items: center; height: 24px; width: 24px; border-radius: 50%; background: #e6efd9; color: var(--bme-green); font-size: 12px; font-weight: 700; }
#bme-site .bme-copy-link { display: inline-flex; align-items: center; gap: 9px; margin-left: auto; padding: 10px 14px; min-height: 42px; border: 1px solid var(--bme-line); border-radius: 3px; font-size: 11px; font-weight: 600; line-height: 1.4; background: transparent; color: var(--bme-body); box-shadow: none; }
#bme-site .bme-copy-link:hover { background: var(--bme-wash); border-color: #acbea1; }
#bme-site .bme-feature-image { padding: 6px; margin: 0 0 44px; border: 1px solid var(--bme-line); border-radius: 3px; background: var(--bme-white); }
#bme-site .bme-feature-image > img { display: block; width: 100%; height: auto; max-height: none; aspect-ratio: auto; object-fit: contain; border-radius: 1px; }
#bme-site .bme-feature-image .bme-image-placeholder { min-height: 280px; aspect-ratio: 16/8; }
#bme-site .bme-feature-image figcaption { font-family: var(--bme-sans); font-size: 11px; color: var(--bme-muted); padding: 10px 8px 4px; line-height: 1.5; }
#bme-site .bme-reading-layout { display: grid; grid-template-columns: minmax(0, 724px) minmax(200px, 248px); gap: 64px; align-items: start; }
#bme-site .bme-reading-column { min-width: 0; }
#bme-site .bme-no-toc { grid-template-columns: minmax(0, 724px); justify-content: center; }
#bme-site .bme-prose { font-family: var(--bme-sans); color: var(--bme-body); font-size: 18px; font-weight: 400; line-height: 1.85; overflow-wrap: break-word; }
#bme-site .bme-prose p { font-family: inherit; color: inherit; font-size: inherit; line-height: inherit; margin: 0 0 1.3em; }
#bme-site .bme-prose h2 { font-family: var(--bme-serif); font-size: 33px; font-weight: 600; line-height: 1.21; letter-spacing: -.025em; margin: 1.7em 0 .65em; color: var(--bme-ink); }
#bme-site .bme-prose h3 { font-family: var(--bme-sans); font-size: 22px; font-weight: 700; line-height: 1.35; letter-spacing: -.015em; margin: 1.6em 0 .7em; color: var(--bme-ink); }
#bme-site .bme-prose h4 { font-family: var(--bme-sans); font-size: 19px; font-weight: 700; line-height: 1.4; margin: 1.4em 0 .6em; letter-spacing: -.01em; }
#bme-site .bme-prose h5, #bme-site .bme-prose h6 { font-family: var(--bme-sans); font-size: 17px; font-weight: 700; line-height: 1.4; margin: 1.4em 0 .6em; letter-spacing: 0; }
#bme-site .bme-prose > :first-child { margin-top: 0; }
#bme-site .bme-prose h2 strong, #bme-site .bme-prose h3 strong, #bme-site .bme-prose h4 strong { font-weight: inherit; }
#bme-site .bme-prose :is(h2,h3,h4,[id]), #bme-site .bme-faqs { scroll-margin-top: 140px; }
#bme-site .bme-prose strong, #bme-site .bme-prose b { color: var(--bme-ink); font-weight: 700; }
#bme-site .bme-prose a { color: #225e40; font-weight: 600; text-decoration-line: underline; text-decoration-color: #9ebd88; text-decoration-thickness: 1px; text-underline-offset: .2em; text-decoration-skip-ink: auto; }
#bme-site .bme-prose a:hover { color: #0e3925; text-decoration-color: #225e40; background: #edf3e5; }
#bme-site .bme-prose a:visited { color: #4a6252; }
#bme-site .bme-prose ul, #bme-site .bme-prose ol { padding-left: 1.3em; margin: .8em 0 1.6em; }
#bme-site .bme-prose ul { list-style-type: disc; }
#bme-site .bme-prose ol { list-style-type: decimal; }
#bme-site .bme-prose li { padding-left: .35em; margin: .55em 0; line-height: 1.7; }
#bme-site .bme-prose li::marker { color: var(--bme-green); font-weight: 700; font-variant-numeric: tabular-nums; }
#bme-site .bme-prose li p { margin: .2em 0 .5em; }
#bme-site .bme-prose li ul, #bme-site .bme-prose li ol { margin: .5em 0 .8em; }
#bme-site .bme-prose li ul { list-style-type: circle; }
#bme-site .bme-prose figure { margin: 30px 0; max-width: 100%; }
#bme-site .bme-prose img:not(.emoji):not(.avatar) { display: block; max-width: 100%; height: auto; padding: 5px; border: 1px solid var(--bme-line); border-radius: 3px; background: var(--bme-white); }
#bme-site .bme-prose figure > a { display: block; background: transparent; }
#bme-site .bme-prose figcaption, #bme-site .bme-prose .wp-caption-text { font-family: var(--bme-sans); color: var(--bme-muted); font-size: 11px; line-height: 1.6; margin: 9px 3px 0; text-align: left; }
#bme-site .bme-prose .wp-caption { max-width: 100%; }
#bme-site .bme-prose blockquote { padding: 7px 0 7px 26px; margin: 36px 0; border: 0; border-left: 3px solid #80a865; background: transparent; box-shadow: none; }
#bme-site .bme-prose blockquote::before, #bme-site .bme-prose blockquote::after { content: none; }
#bme-site .bme-prose blockquote p::before, #bme-site .bme-prose blockquote p::after { content: none; }
#bme-site .bme-prose blockquote p { font-family: var(--bme-serif); font-size: 26px; line-height: 1.42; color: var(--bme-ink); margin: 0 0 10px; }
#bme-site .bme-prose blockquote cite { font-family: var(--bme-sans); font-size: 12px; font-style: normal; color: var(--bme-muted); }
#bme-site .bme-prose hr { border: 0; border-top: 1px solid var(--bme-line); margin: 38px 0; }
#bme-site .bme-prose code { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: .83em; padding: 3px 6px; border: 1px solid #d9e2d3; border-radius: 3px; background: #edf2e8; color: #22543b; }
#bme-site .bme-prose pre { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 14px; line-height: 1.8; color: #e9f3df; background: #132c20; padding: 24px; border: 1px solid #294434; border-radius: 4px; overflow: auto; margin: 28px 0; tab-size: 2; }
#bme-site .bme-prose pre code { background: transparent; color: inherit; border: 0; padding: 0; font-size: inherit; }
#bme-site .bme-prose iframe, #bme-site .bme-prose video { max-width: 100%; }

/* Data tables stay readable and scroll within their own container. */
#bme-site .bme-table-scroll, #bme-site .bme-prose .wp-block-table { width: 100%; max-width: 100%; overflow-x: auto; margin: 28px 0; border: 1px solid var(--bme-line); border-radius: 3px; background: white; overscroll-behavior-x: contain; }
#bme-site .bme-table-scroll .wp-block-table { margin: 0; border: 0; }
#bme-site .bme-prose table { width: 100%; border-collapse: collapse; border-spacing: 0; font-family: var(--bme-sans); font-size: 14px; line-height: 1.55; margin: 0; background: white; color: var(--bme-body); font-variant-numeric: tabular-nums; }
#bme-site .bme-prose table caption { text-align: left; font-size: 11px; font-weight: 500; line-height: 1.55; color: var(--bme-muted); padding: 14px 18px; background: #fafcf7; border-bottom: 1px solid var(--bme-line); }
#bme-site .bme-prose :is(th,td) { padding: 14px 18px; border: 0; border-bottom: 1px solid #e1e7dc; text-align: left; vertical-align: top; min-width: 110px; }
#bme-site .bme-prose th { color: #f3f8ee; background: #234d38; font-size: 12px; font-weight: 700; line-height: 1.5; border-bottom-color: #234d38; }
#bme-site .bme-prose th a { color: #eff9e3; }
#bme-site .bme-prose tbody tr:nth-child(even) { background: #f3f6ee; }
#bme-site .bme-prose tbody tr:hover { background: #eaf1e2; }
#bme-site .bme-prose tbody tr:last-child td { border-bottom: 0; }
#bme-site .bme-prose tfoot td { background: #eaf1e2; color: #163b28; font-weight: 700; border-top: 2px solid #bfceb2; }
#bme-site .bme-prose td.bme-numeric, #bme-site .bme-prose th.bme-numeric { text-align: right; }
#bme-site .bme-prose td p { font-size: inherit; line-height: inherit; margin: 0; }

/* The contents rail is navigation, not a competing column of content. */
#bme-site .bme-rail { position: sticky; top: 130px; align-self: start; font-family: var(--bme-sans); }
#bme-site .bme-toc { margin: 0; border: 0; border-top: 2px solid #2d513a; background: transparent; }
#bme-site .bme-toc summary { display: flex; align-items: center; justify-content: space-between; gap: 20px; font-size: 11px; font-weight: 700; line-height: 1.5; letter-spacing: .075em; text-transform: uppercase; color: #36513c; padding: 17px 0 14px; cursor: pointer; list-style: none; }
#bme-site .bme-toc summary::-webkit-details-marker { display: none; }
#bme-site .bme-toc summary span { font-size: 17px; transition: transform .15s ease; }
#bme-site .bme-toc[open] summary span { transform: rotate(180deg); }
#bme-site .bme-toc nav { max-height: calc(100vh - 245px); overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; scrollbar-color: #b8c7aa transparent; }
#bme-site .bme-toc ol { list-style: none; margin: 0; padding: 0; border-left: 1px solid var(--bme-line); }
#bme-site .bme-toc li { margin: 0; padding: 0; }
#bme-site .bme-toc a { display: block; margin-left: -1px; padding: 9px 8px 9px 15px; border-left: 2px solid transparent; font-size: 12px; line-height: 1.6; font-weight: 400; color: #6a7768; }
#bme-site .bme-toc a:hover { color: var(--bme-green-dark); background: #edf2e7; }
#bme-site .bme-toc a[aria-current="location"] { color: var(--bme-green-dark); background: #edf2e7; border-left-color: var(--bme-green); font-weight: 700; }
#bme-site .bme-toc .bme-toc-sub a { padding-left: 26px; font-size: 11px; }
#bme-site .bme-rail-note { padding: 23px 0 0; margin-top: 25px; border-top: 1px solid var(--bme-line); }
#bme-site .bme-rail-note > p:not(.bme-eyebrow) { font-family: var(--bme-serif); font-size: 22px; line-height: 1.3; margin: 12px 0 18px; }
#bme-site .bme-rail-note .bme-text-link { font-size: 11px; gap: 8px; }
#bme-site .bme-reading-progress { position: fixed; bottom: 0; left: 0; right: 0; height: 3px; z-index: 500; pointer-events: none; background: transparent; }
#bme-site .bme-reading-progress span { display: block; height: 100%; width: 0; background: #6a924c; }

/* FAQs and editorial credits. No pretend review badges or repeated bios. */
#bme-site .bme-faqs { margin: 52px 0 40px; padding: 32px 0 0; border-top: 1px solid var(--bme-line); }
#bme-site .bme-faqs > h2 { font-size: 31px; margin: 10px 0 25px; }
#bme-site .bme-faqs details { border-top: 1px solid var(--bme-line); background: transparent; margin: 0; }
#bme-site .bme-faqs details:last-child { border-bottom: 1px solid var(--bme-line); }
#bme-site .bme-faqs summary { display: flex; justify-content: space-between; align-items: baseline; gap: 22px; padding: 21px 2px; color: var(--bme-ink); font-family: var(--bme-sans); font-size: 16px; font-weight: 600; line-height: 1.5; cursor: pointer; list-style: none; }
#bme-site .bme-faqs summary::-webkit-details-marker { display: none; }
#bme-site .bme-faqs summary > span { color: #47633c; font-size: 22px; font-weight: 400; transition: transform .15s ease; }
#bme-site .bme-faqs details[open] summary > span { transform: rotate(45deg); }
#bme-site .bme-faqs details > div { padding: 0 28px 22px 2px; font-family: var(--bme-sans); font-size: 16px; color: var(--bme-body); line-height: 1.8; }
#bme-site .bme-faqs details p + p { margin-top: 14px; }
#bme-site .bme-faqs a { color: var(--bme-green); text-decoration: underline; text-underline-offset: 3px; font-weight: 600; }
#bme-site .bme-prose .schema-faq-section, #bme-site .bme-prose .wp-block-yoast-faq-block { padding: 22px 0; border-top: 1px solid var(--bme-line); }
#bme-site .bme-prose .schema-faq-question { display: block; font-size: 19px; font-weight: 700; margin-bottom: 14px; }
#bme-site .bme-prose .schema-faq-answer { margin-bottom: 0; }
#bme-site .bme-author-card { display: grid; grid-template-columns: 68px minmax(0, 1fr); gap: 22px; margin: 48px 0 0; padding: 28px; border: 1px solid #d6dfcd; border-radius: 4px; background: #f0f4e9; }
#bme-site .bme-author-card-avatar { width: 68px; height: 68px; overflow: hidden; border: 1px solid #c3d0b9; border-radius: 50%; background: white; }
#bme-site .bme-author-card-avatar img { display: block; width: 100%; height: 100%; object-fit: cover; }
#bme-site .bme-author-card .bme-eyebrow { font-size: 9px; color: #647455; }
#bme-site .bme-author-card h2 { font-size: 26px; margin: 5px 0 12px; line-height: 1.2; }
#bme-site .bme-author-bio { font-size: 13px; line-height: 1.85; color: #56654e; }
#bme-site .bme-author-bio p { margin: 0 0 12px; }
#bme-site .bme-author-card .bme-text-link { font-size: 11px; margin-top: 5px; }
#bme-site .bme-related { margin-top: 75px; padding-top: 34px; padding-bottom: 78px; border-top: 1px solid var(--bme-line); }

/* The footer has its own hierarchy, while staying part of the publication. */
#bme-site .bme-footer { background: #10281d; color: #e8eedf; }
#bme-site .bme-footer a { color: #c2cebd; }
#bme-site .bme-footer a:hover { color: #e1f5bd; }
#bme-site .bme-footer-briefing { display: flex; justify-content: space-between; gap: 44px; align-items: center; padding: 50px 0; border-bottom: 1px solid #344b38; }
#bme-site .bme-footer-briefing .bme-eyebrow { color: #acc584; font-size: 10px; }
#bme-site .bme-footer-briefing h2 { font-family: var(--bme-serif); color: #f3f5e9; font-size: 43px; font-weight: 500; letter-spacing: -.03em; line-height: 1.13; margin: 10px 0 12px; }
#bme-site .bme-footer-briefing p:not(.bme-eyebrow) { color: #a8b8a4; font-size: 13px; line-height: 1.7; }
#bme-site .bme-footer .bme-button-lime { color: #143b29; }
#bme-site .bme-footer-grid { display: grid; grid-template-columns: 1.65fr 1fr 1fr .8fr; gap: 60px; padding: 52px 0 48px; }
#bme-site .bme-footer-brand .bme-logo img { width: 222px; max-height: 60px; }
#bme-site .bme-footer-brand > p { font-size: 12px; color: #9eb09b; line-height: 1.85; max-width: 288px; margin-top: 21px; }
#bme-site .bme-footer-grid h3 { font-family: var(--bme-sans); font-size: 10px; line-height: 1.5; letter-spacing: .105em; font-weight: 600; color: #e1ebd7; text-transform: uppercase; margin: 5px 0 20px; }
#bme-site .bme-footer-grid nav > a, #bme-site .bme-footer-grid nav li a { display: block; width: fit-content; font-family: var(--bme-sans); font-size: 13px; line-height: 1.5; padding: 6px 0; }
#bme-site .bme-footer-grid nav ul { padding: 0; margin: 0; list-style: none; }
#bme-site .bme-footer-bottom { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 24px; padding: 22px 0 28px; border-top: 1px solid #344b38; font-size: 10px; line-height: 1.7; color: #93a68e; }
#bme-site .bme-footer-bottom nav { display: flex; flex-wrap: wrap; gap: 24px; }
#bme-site .bme-footer-bottom a { color: #b5c3ae; }
#bme-site .bme-back-top { display: flex; align-items: center; gap: 12px; }

/* Archives, search and ordinary pages use the same editorial framework. */
#bme-site .bme-archive { min-height: 55vh; padding-bottom: 80px; }
#bme-site .bme-archive-header { padding: 20px 0 42px; max-width: 860px; }
#bme-site .bme-archive-header h1 { font-size: clamp(38px,5vw,58px); margin: 10px 0 18px; }
#bme-site .bme-archive-header > p:not(.bme-eyebrow) { font-size: 17px; color: var(--bme-muted); line-height: 1.75; }
#bme-site .bme-archive .bme-card-grid { row-gap: 42px; }
#bme-site .bme-empty { padding: 42px 0; }
#bme-site .bme-empty p { margin-bottom: 22px; }
#bme-site .bme-pagination { padding-top: 42px; font-family: var(--bme-sans); font-size: 13px; }
#bme-site .bme-pagination ul { display: flex; flex-wrap: wrap; list-style: none; gap: 8px; margin: 0; padding: 0; }
#bme-site .bme-pagination .page-numbers { display: inline-flex; align-items: center; justify-content: center; min-width: 42px; min-height: 42px; padding: 8px 14px; border: 1px solid var(--bme-line); border-radius: 3px; }
#bme-site .bme-pagination ul.page-numbers { display: flex; border: 0; padding: 0; justify-content: flex-start; }
#bme-site .bme-pagination .current { background: var(--bme-green-dark); color: #fff; border-color: var(--bme-green-dark); }
#bme-site .bme-page { padding-bottom: 78px; min-height: 50vh; }
#bme-site .bme-page-header { max-width: 940px; margin: 15px auto 40px; }
#bme-site .bme-page-header h1 { font-size: clamp(36px, 4.5vw, 56px); }
#bme-site .bme-page > .bme-prose { max-width: 940px; margin: auto; }
#bme-site .bme-page .bme-prose > p { max-width: 740px; }
#bme-site .bme-component-preview { padding-bottom: 80px; }
#bme-site .bme-component-preview .bme-reading-layout { max-width: 1060px; margin: 50px auto 0; }

/* Laptop, tablet and mobile. */
@media (min-width: 1440px) {
  #bme-site .bme-card-lead h1 { font-size: 50px; }
}
@media (max-width: 1160px) {
  #bme-site .bme-header-row { gap: 18px; }
  #bme-site .bme-logo img { width: 200px; }
  #bme-site .bme-menu-list { gap: 18px; }
  #bme-site .bme-menu-list a { font-size: 12px; }
  #bme-site .bme-header-actions { gap: 5px; }
  #bme-site .bme-front-grid { gap: 30px; }
  #bme-site .bme-latest-rail { padding-left: 25px; }
  #bme-site .bme-reading-layout { gap: 42px; grid-template-columns: minmax(0, 1fr) 210px; }
  #bme-site .bme-no-toc { grid-template-columns: minmax(0,724px); }
  #bme-site .bme-footer-grid { gap: 35px; }
}
@media (max-width: 1023px) {
  #bme-site .bme-shell { width: min(calc(100% - 48px), 920px); }
  #bme-site .bme-header-row { min-height: 78px; }
  #bme-site .bme-desktop-nav { display: none; }
  #bme-site .bme-menu-toggle { display: inline-grid; }
  #bme-site .bme-logo img { width: 220px; }
  #bme-site .bme-front-grid { grid-template-columns: minmax(0,1.45fr) minmax(250px,1fr); gap: 28px; }
  #bme-site .bme-card-compact h3 { font-size: 20px; }
  #bme-site .bme-card-grid { gap: 24px; }
  #bme-site .bme-card h3 { font-size: 23px; }
  #bme-site .bme-reading-layout { display: flex; flex-direction: column; gap: 30px; max-width: 760px; margin-inline: auto; }
  #bme-site .bme-reading-column { width: 100%; }
  #bme-site .bme-rail { order: -1; position: static; width: 100%; }
  #bme-site .bme-rail-note { display: none; }
  #bme-site .bme-toc { padding: 0 20px; border: 1px solid var(--bme-line); border-radius: 3px; background: #f1f5eb; }
  #bme-site .bme-toc summary { padding: 17px 0; }
  #bme-site .bme-toc nav { max-height: 360px; margin-bottom: 18px; }
  #bme-site .bme-toc a { font-size: 13px; padding-block: 10px; }
  #bme-site .bme-toc .bme-toc-sub a { font-size: 12px; }
  #bme-site .bme-feature-image { margin-bottom: 30px; }
  #bme-site .bme-article-header { margin-top: 8px; }
  #bme-site .bme-article-header h1 { font-size: 47px; }
  #bme-site .bme-security-section { gap: 40px; padding: 32px; }
  #bme-site .bme-footer-grid { grid-template-columns: 1.35fr 1fr 1fr; }
  #bme-site .bme-footer-grid > nav:last-child { grid-column: 2 / 4; display: flex; flex-wrap: wrap; gap: 6px 23px; align-items: center; }
  #bme-site .bme-footer-grid > nav:last-child h3 { margin: 0; width: 100%; }
}
@media (max-width: 767px) {
  body.admin-bar #bme-site .bme-header { top: 46px; }
  #bme-site .bme-shell { width: calc(100% - 36px); }
  #bme-site .bme-masthead { font-size: 9px; letter-spacing: .025em; }
  #bme-site .bme-masthead time { display: none; }
  #bme-site .bme-masthead > div { justify-content: center; padding-block: 7px; }
  #bme-site .bme-header-row { min-height: 72px; gap: 10px; }
  #bme-site .bme-logo img { width: 188px; }
  #bme-site .bme-header-actions .bme-button { display: none; }
  #bme-site .bme-header-actions { gap: 2px; }
  #bme-site .bme-section-intro { padding-block: 21px; }
  #bme-site .bme-section-intro nav { display: none; }
  #bme-site .bme-section-intro .bme-eyebrow { font-size: 9px; }
  #bme-site .bme-front-grid { grid-template-columns: 1fr; gap: 33px; padding-bottom: 32px; }
  #bme-site .bme-card-lead h1 { font-size: 37px; line-height: 1.1; }
  #bme-site .bme-card-lead .bme-card-excerpt { font-size: 14px; }
  #bme-site .bme-card-lead .bme-card-copy { padding-bottom: 20px; }
  #bme-site .bme-latest-rail { padding-left: 0; border-left: 0; }
  #bme-site .bme-card-compact { padding-block: 17px; }
  #bme-site .bme-card-compact h3 { font-size: 24px; }
  #bme-site .bme-card-grid { grid-template-columns: 1fr; row-gap: 32px; }
  #bme-site .bme-card-grid .bme-card h3 { font-size: 28px; }
  #bme-site .bme-card-excerpt { font-size: 14px; }
  #bme-site .bme-story-meta { font-size: 11px; }
  #bme-site .bme-home-section { padding-top: 33px; }
  #bme-site .bme-section-heading { gap: 16px; margin-bottom: 22px; }
  #bme-site .bme-section-heading h2 { font-size: 28px; }
  #bme-site .bme-section-heading .bme-text-link { font-size: 11px; text-align: right; gap: 7px; }
  #bme-site .bme-home { padding-bottom: 45px; }
  #bme-site .bme-security-section { grid-template-columns: 1fr; gap: 30px; padding: 26px 22px; margin-top: 38px; }
  #bme-site .bme-security-intro h2 { font-size: 34px; max-width: 280px; }
  #bme-site .bme-security-intro .bme-text-link { margin-top: 17px; }
  #bme-site .bme-card-text h3 { font-size: 25px; }
  #bme-site .bme-breadcrumbs { font-size: 10px; padding: 23px 0 20px; }
  #bme-site .bme-article-header { margin: 0 0 24px; }
  #bme-site .bme-article-header h1 { font-size: 38px; line-height: 1.1; text-wrap: pretty; }
  #bme-site .bme-article-header > .bme-category { margin-bottom: 11px; font-size: 10px; }
  #bme-site .bme-deck { font-size: 17px; line-height: 1.65; margin-top: 17px; }
  #bme-site .bme-byline { gap: 10px; padding-top: 20px; }
  #bme-site .bme-byline-avatar { width: 38px; height: 38px; }
  #bme-site .bme-author-name { font-size: 11px; }
  #bme-site .bme-publish-meta { font-size: 10px; gap: 6px; }
  #bme-site .bme-copy-link { min-height: 38px; padding: 10px; font-size: 10px; gap: 7px; }
  #bme-site .bme-reviewed { width: 100%; margin: 6px 0 0 48px; border: 0; padding-left: 0; order: 4; }
  #bme-site .bme-feature-image { padding: 4px; margin-bottom: 25px; }
  #bme-site .bme-feature-image .bme-image-placeholder { aspect-ratio: 16/10; min-height: 180px; }
  #bme-site .bme-reading-layout { gap: 27px; }
  #bme-site .bme-prose { font-size: 17px; line-height: 1.82; }
  #bme-site .bme-prose h2 { font-size: 29px; line-height: 1.22; margin-top: 1.55em; }
  #bme-site .bme-prose h3 { font-size: 21px; line-height: 1.4; }
  #bme-site .bme-prose h4 { font-size: 18px; }
  #bme-site .bme-prose figure { margin-block: 25px; }
  #bme-site .bme-prose blockquote { padding-left: 20px; margin: 30px 0; }
  #bme-site .bme-prose blockquote p { font-size: 23px; }
  #bme-site .bme-prose pre { padding: 18px; font-size: 12px; }
  #bme-site .bme-prose table { font-size: 13px; }
  #bme-site .bme-prose th { font-size: 11px; }
  #bme-site .bme-prose :is(th,td) { padding: 12px 14px; min-width: 120px; }
  #bme-site .bme-faqs { margin-top: 38px; padding-top: 26px; }
  #bme-site .bme-faqs > h2 { font-size: 28px; }
  #bme-site .bme-faqs summary { padding-block: 19px; font-size: 15px; }
  #bme-site .bme-faqs details > div { font-size: 15px; padding-right: 15px; }
  #bme-site .bme-author-card { grid-template-columns: 50px minmax(0,1fr); gap: 16px; margin-top: 35px; padding: 22px 18px; }
  #bme-site .bme-author-card-avatar { width: 50px; height: 50px; }
  #bme-site .bme-author-card h2 { font-size: 24px; }
  #bme-site .bme-author-bio { font-size: 12px; }
  #bme-site .bme-related { margin-top: 45px; padding-top: 28px; padding-bottom: 48px; }
  #bme-site .bme-footer-briefing { flex-direction: column; align-items: flex-start; gap: 23px; padding: 35px 0; }
  #bme-site .bme-footer-briefing h2 { font-size: 35px; max-width: 320px; }
  #bme-site .bme-footer-briefing p:not(.bme-eyebrow) { max-width: 290px; font-size: 12px; }
  #bme-site .bme-footer-grid { grid-template-columns: 1fr 1fr; gap: 28px; padding: 34px 0 32px; }
  #bme-site .bme-footer-brand { grid-column: 1/-1; }
  #bme-site .bme-footer-brand .bme-logo img { width: 220px; }
  #bme-site .bme-footer-brand > p { max-width: 320px; margin-top: 16px; }
  #bme-site .bme-footer-grid > nav:last-child { grid-column: 1/-1; gap: 6px 20px; }
  #bme-site .bme-footer-grid h3 { margin-bottom: 12px; }
  #bme-site .bme-footer-grid nav > a, #bme-site .bme-footer-grid nav li a { font-size: 14px; padding-block: 11px; }
  #bme-site .bme-footer-bottom { gap: 17px; padding: 23px 0; font-size: 10px; }
  #bme-site .bme-footer-bottom > p { width: 100%; }
  #bme-site .bme-footer-bottom nav { gap: 19px; }
  #bme-site .bme-archive-header { padding-bottom: 30px; }
  #bme-site .bme-archive-header h1 { font-size: 38px; }
  #bme-site .bme-archive-header > p:not(.bme-eyebrow) { font-size: 15px; }
  #bme-site .bme-search-dialog { padding: 22px; }
  #bme-site .bme-search-heading h2 { font-size: 23px; }
  #bme-site .bme-search-dialog form { flex-direction: column; }
  #bme-site .bme-search-dialog input { min-height: 48px; font-size: 16px; }
}
@media (max-width: 600px) {
  body.admin-bar #bme-site .bme-header { top: 0; }
}
@media (max-width: 359px) {
  #bme-site .bme-shell { width: calc(100% - 28px); }
  #bme-site .bme-logo img { width: 168px; }
  #bme-site .bme-header-actions { gap: 0; }
  #bme-site .bme-icon-button { width: 40px; height: 44px; }
  #bme-site .bme-card-lead h1, #bme-site .bme-article-header h1 { font-size: 33px; }
  #bme-site .bme-copy-link span { display: none; }
  #bme-site .bme-footer-briefing h2 { font-size: 31px; }
}
@media (prefers-reduced-motion: reduce) {
  html:has(body.bme-editorial) { scroll-behavior: auto; }
  #bme-site *, #bme-site *::before, #bme-site *::after { transition: none !important; animation: none !important; }
}
@media print {
  body.bme-editorial, #bme-site { background: white !important; color: black !important; }
  #bme-site .bme-masthead, #bme-site .bme-header, #bme-site .bme-footer, #bme-site .bme-rail, #bme-site .bme-related, #bme-site .bme-copy-link, #bme-site .bme-reading-progress { display: none !important; }
  #bme-site .bme-shell, #bme-site .bme-article { width: 100%; max-width: none; }
  #bme-site .bme-reading-layout { display: block; }
  #bme-site .bme-prose { font-size: 11pt; line-height: 1.5; }
  #bme-site .bme-article-header h1 { font-size: 26pt; }
  #bme-site .bme-feature-image > img { max-height: 260px; }
  #bme-site a { color: black !important; }
}
