/* Additive editorial presentation; existing magazine pages retain their layout. */
.editorial-index .blog-card[hidden] { display: none !important; }
.editorial-featured { scroll-margin-top: 85px; }
.editorial-page .article-hero { padding-bottom: 46px; }
.editorial-page .article-hero h1 { max-width: 25ch; line-height: 1.45; }
.editorial-page .article-hero__lead { max-width: 64ch; line-height: 1.95; }
.editorial-page .article-meta { color: #c8d7d1; line-height: 1.8; }
.editorial-page .article-layout { gap: 44px; }
.editorial-page .article-body { line-height: 1.95; overflow-wrap: break-word; }
.editorial-page .article-body p { margin-block: 0 1.25em; }
.editorial-page .article-body > p, .editorial-page .article-body section > p { font-size: 1.05rem; color: #2a3330; }
.editorial-page .article-body h2 { line-height: 1.65; margin-top: 2.35em; text-wrap: pretty; }
.editorial-page .article-body h3 { line-height: 1.7; }
.editorial-page .article-body a { text-decoration-thickness: 1px; text-underline-offset: 5px; }
.editorial-page .article-body a:focus-visible, .editorial-index a:focus-visible { outline: 3px solid #0a7a62; outline-offset: 5px; }
.editorial-page .article-body ul, .editorial-page .article-body ol { line-height: 1.95; }
.editorial-page .article-body li { margin-bottom: .65em; }
.editorial-page .article-toc { padding: 0; background: #f5f9f6; overflow: hidden; }
.editorial-toc summary { display: flex; align-items: center; justify-content: space-between; gap: 14px; list-style: none; min-height: 56px; padding: 16px 20px; cursor: pointer; font-weight: 800; font-size: .93rem; color: #155f4c; }
.editorial-toc summary::-webkit-details-marker { display: none; }
.editorial-toc summary span { font-size: 1.35rem; transition: transform .15s; }
.editorial-toc details[open] summary span { transform: rotate(180deg); }
.editorial-toc summary:focus-visible { outline: 3px solid #0a7a62; outline-offset: -4px; }
.editorial-toc nav { max-height: calc(100svh - 185px); overflow-y: auto; padding: 0 16px 16px; scrollbar-width: thin; }
.editorial-toc nav ol { gap: 2px; }
.editorial-page .editorial-toc a { display: flex; align-items: center; min-height: 44px; padding: 7px 5px; font-size: .85rem; line-height: 1.7; }
.editorial-page .editorial-toc a:hover { padding-inline-start: 5px; text-decoration: underline; text-underline-offset: 4px; }
.editorial-summary { padding: 25px 28px; margin-bottom: 28px; border: 1px solid #c9dfd3; border-inline-start: 4px solid #0a7a62; border-radius: 14px; background: #f0f7f3; }
.editorial-summary__label { display: block; font-weight: 800; font-size: .8rem; letter-spacing: .01em; color: #155f4c; margin-bottom: 8px; }
.editorial-page .editorial-summary p { margin: 0; font-size: 1.02rem; line-height: 2; color: #1d372c; }
.editorial-figure { margin: 0 0 34px; border-radius: 17px; overflow: hidden; border: 1px solid #dfe7e2; background: #f7f8f5; }
.editorial-figure__photo { display: grid; place-items: center; background: #17221d; }
.editorial-figure__photo img { display: block; width: 100%; height: auto; max-height: 450px; object-fit: contain; }
.editorial-figure figcaption { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: 8px 18px; padding: 16px 20px; color: #53665a; font-size: .8rem; line-height: 1.9; }
.editorial-figure figcaption a { display: inline-flex; align-items: center; min-height: 36px; white-space: nowrap; font-size: .8rem; }
.editorial-page .article-body .tbl { scroll-margin-top: 110px; overscroll-behavior-inline: contain; scrollbar-width: thin; }
.editorial-page .article-body .tbl:focus-visible { outline: 3px solid #0a7a62; outline-offset: 4px; }
.editorial-page .article-body table { font-size: .94rem; }
.editorial-page .article-body caption { caption-side: top; text-align: right; padding: 15px 18px; background: #edf5ef; color: #264b38; font-weight: 700; font-size: .88rem; }
.editorial-page .article-body th { white-space: normal; min-width: 105px; }
.editorial-page .article-body th, .editorial-page .article-body td { padding: 15px 16px; line-height: 1.95; }
.editorial-page .article-body tbody tr:nth-child(even) td { background: #fafcf9; }
.editorial-page .article-faq { padding: 28px; box-shadow: none; background: #fbfcfa; }
.editorial-page .article-faq h2 { margin-top: 0; }
.editorial-page .article-faq summary { min-height: 44px; line-height: 1.85; }
.editorial-page .article-faq details p { margin-top: 12px; margin-bottom: 0; }
.editorial-page .editorial-sources { padding-top: 10px; margin-top: 32px; border-top: 1px solid #dce7df; scroll-margin-top: 100px; }
.editorial-page .editorial-sources h2 { font-size: 1.25rem; margin: 24px 0 16px; }
.editorial-page .editorial-sources ol { margin: 0; padding-inline-start: 28px; }
.editorial-page .editorial-sources li { font-size: .9rem; padding-inline-start: 4px; }
.editorial-page .editorial-sources a { overflow-wrap: anywhere; font-weight: 500; }
.editorial-page .editorial-publisher { background: #fafbf8; border-inline-start-width: 2px; }
.editorial-page .editorial-publisher h2 { margin: 0 0 8px; font-size: 1.02rem; }
.editorial-page .editorial-publisher p { font-size: .9rem; margin-bottom: 10px; }
.editorial-page .editorial-publisher .article-author__meta { font-size: .8rem; margin-bottom: 0; }
.editorial-page .article-cta h2, .editorial-page .article-related h2 { margin-top: 0; }
.editorial-page .article-cta a { color: #fff; text-decoration: none; }
.editorial-page .article-related a { text-decoration: none; line-height: 1.8; }
.editorial-page .article-related a:hover { text-decoration: underline; }
.editorial-page .areas--strip .areas__list,
.editorial-index .areas--strip .areas__list { flex-wrap: wrap; overflow: visible; justify-content: center; }
.editorial-page .areas--strip .areas__list a,
.editorial-index .areas--strip .areas__list a { display: inline-flex; align-items: center; min-height: 44px; white-space: normal; }
.editorial-page .footer__bottom,
.editorial-index .footer__bottom { min-width: 0; flex-wrap: wrap; overflow-wrap: anywhere; }
.editorial-featured { padding: 62px 0 70px; background: #fff; }
.editorial-featured__header { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin-bottom: 28px; }
.editorial-featured__eyebrow { display: block; color: #0a7a62; font-size: .8rem; font-weight: 800; margin-bottom: 10px; }
.editorial-featured__header h2 { font-size: clamp(1.55rem, 3.1vw, 2.3rem); line-height: 1.5; }
.editorial-featured__header p { font-size: .93rem; color: #53665a; line-height: 1.9; max-width: 660px; margin-top: 10px; }
.editorial-featured__header > a { flex: none; display: inline-flex; align-items: center; min-height: 44px; color: #0a7a62; font-size: .9rem; font-weight: 700; }
.editorial-featured__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.editorial-featured__card { min-width: 0; border: 1px solid #dce7df; border-radius: 16px; background: #fbfcfa; overflow: hidden; transition: border-color .18s, background .18s; }
.editorial-featured__card:hover { border-color: #6bac91; background: #f5f9f4; }
.editorial-featured__card > a { display: flex; gap: 17px; height: 100%; align-items: flex-start; padding: 20px; }
.editorial-featured__image { flex: 0 0 82px; width: 82px; height: 108px; border-radius: 10px; object-fit: contain; background: #17221d; }
.editorial-featured__copy { min-width: 0; flex: 1; }
.editorial-featured__meta { display: flex; flex-wrap: wrap; gap: 4px 12px; align-items: center; color: #53665a; font-size: .7rem; margin-bottom: 7px; }
.editorial-featured__meta span { color: #0a7a62; font-weight: 600; }
.editorial-featured__card h3 { font-size: 1rem; line-height: 1.8; color: #1c3529; }
.editorial-featured__card p { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; margin-top: 7px; font-size: .8rem; line-height: 1.9; color: #53665a; }
.editorial-featured__number { color: #8b9e91; font-size: .75rem; font-variant-numeric: tabular-nums; flex: none; }
@media (max-width: 960px) {
  .editorial-page .article-layout { gap: 28px; max-width: 780px; }
  .editorial-toc nav { max-height: 45svh; }
  .editorial-featured__image { flex-basis: 65px; width: 65px; height: 92px; }
  .editorial-featured__card > a { padding: 17px; gap: 13px; }
  .editorial-featured__number { display: none; }
}
@media (max-width: 700px) {
  .editorial-featured__grid { grid-template-columns: 1fr; }
  .editorial-featured__header { flex-direction: column; align-items: flex-start; gap: 8px; }
  .editorial-featured { padding-block: 40px 48px; }
  .editorial-featured__image { flex-basis: 76px; width: 76px; height: 99px; }
  .editorial-featured__card h3 { font-size: .95rem; }
}
@media (max-width: 540px) {
  .editorial-page .article-hero { padding-bottom: 32px; }
  .editorial-page .article-hero h1 { font-size: clamp(1.7rem, 6.7vw, 2.2rem); max-width: none; }
  .editorial-page .article-hero__lead { font-size: .97rem; }
  .editorial-page .article-meta { gap: 9px 16px; font-size: .78rem; }
  .editorial-page .article-layout { padding-top: 28px; }
  .editorial-page .article-body > p, .editorial-page .article-body section > p { font-size: 1rem; }
  .editorial-page .article-body h2 { font-size: 1.35rem; line-height: 1.7; }
  .editorial-page .article-body h3 { font-size: 1.13rem; }
  .editorial-summary { padding: 20px; }
  .editorial-page .editorial-summary p { font-size: .95rem; }
  .editorial-figure figcaption { padding: 13px 16px; }
  .editorial-figure__photo img { max-height: 370px; }
  .editorial-page .article-faq, .editorial-page .article-cta { padding: 23px 20px; }
  .editorial-page .editorial-sources h2 { font-size: 1.2rem; }
  .editorial-page .editorial-publisher h2 { font-size: 1.02rem; }
  .editorial-featured__meta { font-size: .67rem; }
  .editorial-featured__card > a { padding: 15px; gap: 12px; }
}
@media (prefers-reduced-motion: reduce) {
  .editorial-toc *, .editorial-featured *, .editorial-page .article-related * { transition: none !important; }
}
