.weekly-width { width: min(100%, 850px); margin: 0 auto; padding: 0 28px; }
.weekly-hero { background: #f6f8fa; border-bottom: 1px solid #e5e7eb; padding: 70px 0 52px; }
.weekly-eyebrow { color: #087d72; font-size: 0.76rem; font-weight: 600; letter-spacing: 0.1em; text-transform: uppercase; margin: 0 0 20px; }
.weekly-hero h1 { color: #11162a; font-size: clamp(2.35rem, 5vw, 3.8rem); font-weight: 250; line-height: 1.12; max-width: 780px; }
.weekly-deck { color: #465264; font-size: 1.18rem; line-height: 1.65; max-width: 690px; }
.weekly-byline { margin: 25px 0 0; font-size: 0.9rem; color: #556174; display: flex; gap: 12px; flex-wrap: wrap; }
.weekly-reading-note { font-size: 0.9rem; max-width: 650px; }
.weekly-text-link { display: inline-block; color: #087d72; font-weight: 600; margin-top: 10px; }
.weekly-text-link:hover, .weekly-archive-entry h3 a:hover { color: #a35d02; }
.weekly-archive { padding-top: 45px; padding-bottom: 70px; }
.weekly-year { color: #667085; font-size: 1rem; font-weight: 400; }
.weekly-archive-entry { padding: 30px 0 36px; border-bottom: 1px solid #e5e7eb; }
.weekly-archive-entry h3 { font-size: 2rem; font-weight: 300; line-height: 1.25; color: #11162a; }
.weekly-archive-topics { list-style: decimal; padding-left: 22px; color: #465264; line-height: 1.85; }
.weekly-body { padding-top: 45px; padding-bottom: 30px; }
.weekly-body p { font-size: 1.08rem; color: #384455; line-height: 1.83; }
.weekly-body .weekly-introduction { font-size: 1.22rem; color: #172236; }
.weekly-body h2 { font-size: 1.9rem; font-weight: 300; color: #172236; line-height: 1.25; margin: 0 0 20px; }
.weekly-contents { padding: 24px 0; margin: 28px 0 48px; border-top: 2px solid #e6a324; border-bottom: 1px solid #e5e7eb; }
.weekly-contents .weekly-eyebrow { font-size: 0.75rem; color: #087d72; line-height: 1.5; margin-bottom: 15px; }
.weekly-contents ol { padding-left: 23px; line-height: 1.85; margin: 0; }
.weekly-contents a:hover { color: #087d72; }
.weekly-story section { margin-bottom: 42px; scroll-margin-top: 100px; }
.weekly-snapshot { border-top: 3px solid #14b8a6; background: #f5faf9; padding: 30px; margin: 45px -30px; }
.weekly-snapshot .weekly-eyebrow { font-size: 0.76rem; color: #087d72; }
.weekly-metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 25px; margin: 26px 0; }
.weekly-metrics dt { font-size: 0.78rem; color: #536375; line-height: 1.4; }
.weekly-metrics dd { margin: 8px 0 0; color: #142739; font-size: 2rem; font-weight: 300; }
.weekly-body .weekly-caption { font-size: 0.85rem; color: #586879; line-height: 1.7; margin-bottom: 0; }
.weekly-watch, .weekly-sources { margin-top: 45px; }
.weekly-sources ul { list-style: none; }
.weekly-sources li { border-bottom: 1px solid #e5e7eb; padding: 11px 0; line-height: 1.5; }
.weekly-sources a, .weekly-method a { color: #087d72; text-decoration: underline; text-underline-offset: 4px; }
.weekly-method { margin-top: 35px; padding: 20px 0; border-top: 1px solid #e5e7eb; }
.weekly-method summary { cursor: pointer; color: #536375; font-size: 0.9rem; margin-bottom: 18px; }
.weekly-method p { font-size: 0.87rem; line-height: 1.7; }
.weekly-edition-nav { display: flex; flex-wrap: wrap; gap: 25px; justify-content: space-between; padding-top: 20px; padding-bottom: 60px; color: #087d72; }
.weekly-home { background: #f6faf9; padding: 32px; margin-bottom: 30px; border-left: 3px solid #14b8a6; }
.weekly-home h2 { font-size: 1.55rem; color: #11162a; }
.weekly-home a { color: #087d72; }
.weekly-home p:last-child { margin-bottom: 0; }
@media (max-width: 1200px) {
    .site-nav { display: none; }
    .nav-hamburger { display: flex; }
    .site-header.is-open .site-nav { display: block; position: fixed; top: 76px; left: 0; right: 0; bottom: 0; padding: 20px 24px; background: white; overflow-y: auto; z-index: 90; }
    .site-header.is-open .site-nav__list { flex-direction: column; align-items: flex-start; gap: 4px; }
    .site-header.is-open .site-nav__item { width: 100%; }
    .site-header.is-open .nav-dropdown { position: static; box-shadow: none; border: none; padding-left: 12px; display: none; }
    .site-header.is-open .site-nav__item.is-open .nav-dropdown { display: block; }
}
@media (max-width: 600px) {
    .weekly-width { padding-left: 22px; padding-right: 22px; }
    .weekly-hero { padding: 40px 0 30px; }
    .weekly-hero h1 { font-size: 2.55rem; }
    .weekly-body { padding-top: 32px; }
    .weekly-body p { font-size: 1.04rem; line-height: 1.8; }
    .weekly-snapshot { margin: 36px -4px; padding: 24px 18px; }
    .weekly-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 23px 15px; }
    .weekly-metrics dd { font-size: 1.65rem; }
    .weekly-archive-entry h3 { font-size: 1.7rem; }
    .weekly-body h2 { font-size: 1.65rem; }
}
@media print {
    .site-header, .site-footer, .weekly-contents, .weekly-edition-nav { display: none; }
    body { padding-top: 0; }
    .weekly-width { width: 100%; max-width: 100%; }
    .weekly-hero, .weekly-snapshot { background: white; }
    .weekly-hero { padding: 20px 0; }
}
