.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.55; max-width: 690px; }
ul.weekly-deck { margin: 24px 0 0; padding-left: 1.2em; list-style: disc; }
ul.weekly-deck li::marker { color: #087d72; }
ul.weekly-deck li + li { margin-top: 8px; }
.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-audio { display: grid; grid-template-columns: 84px minmax(0, 1fr); grid-template-areas: "portrait intro" "player player"; column-gap: 24px; row-gap: 18px; margin: 28px 0 0; padding: 26px; background: #fffdfa; border: 1px solid #e8e1d5; border-left: 3px solid #b89243; border-radius: 18px; }
.weekly-audio__portrait-link { grid-area: portrait; width: 84px; height: 84px; align-self: start; }
.weekly-audio__portrait { display: block; width: 84px; height: 84px; object-fit: cover; border-radius: 50%; border: 2px solid #d8d2c6; }
.weekly-audio__intro { grid-area: intro; align-self: center; min-width: 0; }
.weekly-audio__eyebrow { margin: 0 0 7px; color: #77623a; font-family: monospace; font-size: 0.78rem; font-weight: 500; letter-spacing: 0.18em; line-height: 1.4; text-transform: uppercase; }
.weekly-audio__title { margin: 0; color: #172236; font-size: 1.72rem; font-weight: 250; letter-spacing: -0.02em; line-height: 1.2; }
.weekly-audio__description { margin: 10px 0 0; color: #586273; font-size: 1rem; line-height: 1.55; }
.weekly-audio__player { grid-area: player; min-width: 0; }
.weekly-audio__player audio { display: block; width: 100%; max-width: 520px; }
.weekly-audio__credit { margin: 21px 0 0; color: #667085; font-size: 0.9rem; font-style: italic; line-height: 1.5; }
.weekly-audio__credit a { color: #586273; text-decoration: underline; text-decoration-color: #d8d2c6; text-underline-offset: 3px; }
.weekly-audio__credit a:hover { color: #172236; text-decoration-color: #b89243; }
.weekly-audio__transcript { max-width: 520px; margin-top: 19px; }
.weekly-audio__transcript summary { cursor: pointer; color: #667085; font-size: 0.9rem; }
.weekly-audio__transcript summary:hover { color: #172236; }
.weekly-audio__transcript-body { margin-top: 17px; }
.weekly-audio__transcript-body p { margin: 0 0 13px; color: #586273; font-size: 0.91rem; line-height: 1.7; }
.weekly-audio.weekly-audio-plain { display: block; padding: 24px 0; background: transparent; border: 0; border-top: 1px solid #d8d2c6; border-bottom: 1px solid #d8d2c6; border-radius: 0; }
.weekly-audio-plain .weekly-audio__player { margin-top: 18px; }
.weekly-audio-plain .weekly-audio__transcript { max-width: 680px; }
.weekly-audio__speaker { color: #172236; font-weight: 600; }
.weekly-audio-archive { grid-template-areas: "portrait intro" "description description" "player player"; }
.weekly-audio-archive > .weekly-audio__description { grid-area: description; margin: 0; }
.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-graphic { margin: 26px 0 30px; }
.weekly-graphic img { display: block; width: 100%; height: auto; border: 1px solid #d7e0e7; }
.weekly-body .weekly-graphic figcaption { margin-top: 12px; color: #586879; font-size: 0.85rem; line-height: 1.65; }
.weekly-baseline-chart { margin: 34px 0 30px; padding: 30px 0 26px; border-top: 2px solid #14b8a6; border-bottom: 1px solid #d7e0e7; }
.weekly-baseline-chart h3 { margin: 0 0 28px; color: #172236; font-family: 'SF Pro Display', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; font-size: 1.55rem; font-weight: 300; letter-spacing: -0.02em; line-height: 1.2; }
.weekly-baseline-chart__group + .weekly-baseline-chart__group { margin-top: 30px; padding-top: 26px; border-top: 1px solid #d7e0e7; }
.weekly-body .weekly-baseline-chart__label { margin: 0 0 17px; color: #087d72; font-size: 0.78rem; font-weight: 600; letter-spacing: 0.08em; line-height: 1.4; text-transform: uppercase; }
.weekly-baseline-chart__row + .weekly-baseline-chart__row { margin-top: 15px; }
.weekly-baseline-chart__row-label { display: flex; align-items: baseline; justify-content: space-between; gap: 20px; margin-bottom: 7px; color: #465264; font-size: 0.88rem; line-height: 1.4; }
.weekly-baseline-chart__row-label strong { color: #142739; font-size: 1rem; font-weight: 600; }
.weekly-baseline-chart__row-label small { color: #087d72; font-size: 0.78rem; font-weight: 600; }
.weekly-baseline-chart__track { height: 16px; overflow: hidden; background: #e1e9e9; border-radius: 2px; }
.weekly-baseline-chart__bar { display: block; height: 100%; min-width: 3px; }
.weekly-baseline-chart__bar.is-previous { background: #9aabb2; }
.weekly-baseline-chart__bar.is-current, .weekly-baseline-chart__bar.is-clicks { background: #087d72; }
.weekly-baseline-chart__bar.is-impressions { background: #e6a324; }
.weekly-body .weekly-baseline-chart__detail { margin: 14px 0 0; color: #536375; font-size: 0.82rem; line-height: 1.6; }
.weekly-baseline-chart__detail strong { color: #142739; font-weight: 600; }
.weekly-baseline-chart__request-labels { display: flex; justify-content: space-between; gap: 24px; margin-bottom: 9px; color: #465264; font-size: 0.82rem; line-height: 1.5; }
.weekly-baseline-chart__request-labels span:last-child { text-align: right; }
.weekly-baseline-chart__request-labels strong { display: block; color: #142739; font-size: 0.9rem; font-weight: 600; }
.weekly-baseline-chart__stack { display: flex; height: 22px; overflow: hidden; background: #e1e9e9; border-radius: 2px; }
.weekly-baseline-chart__stack-training, .weekly-baseline-chart__stack-other { display: block; height: 100%; }
.weekly-baseline-chart__stack-training { background: #087d72; }
.weekly-baseline-chart__stack-other { background: #e6a324; }
.weekly-baseline-chart__breakdown { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; margin: 20px 0 0; }
.weekly-baseline-chart__breakdown div { padding-left: 12px; border-left: 2px solid #e6a324; }
.weekly-baseline-chart__breakdown dt { color: #536375; font-size: 0.76rem; line-height: 1.4; }
.weekly-baseline-chart__breakdown dd { margin: 6px 0 0; color: #142739; font-size: 1rem; font-weight: 600; line-height: 1.35; }
.weekly-baseline-chart__breakdown small { display: block; color: #667085; font-size: 0.72rem; font-weight: 400; }
.weekly-body .weekly-baseline-chart__record { margin: 28px 0 0; padding: 14px 0 14px 16px; border-left: 3px solid #e6a324; color: #465264; font-size: 0.84rem; line-height: 1.6; }
.weekly-baseline-chart__record strong { color: #142739; font-weight: 600; }
.weekly-body .weekly-baseline-chart figcaption { margin-top: 20px; color: #586879; font-size: 0.82rem; line-height: 1.65; }
.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-baseline-chart { margin-top: 28px; padding-top: 26px; }
    .weekly-baseline-chart h3 { font-size: 1.4rem; }
    .weekly-baseline-chart__row-label, .weekly-baseline-chart__request-labels { gap: 12px; }
    .weekly-baseline-chart__request-labels { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
    .weekly-baseline-chart__breakdown { grid-template-columns: 1fr; gap: 13px; }
    .weekly-baseline-chart__breakdown small { display: inline; margin-left: 5px; }
    .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; }
    .weekly-audio { grid-template-columns: 64px minmax(0, 1fr); column-gap: 18px; padding: 22px; }
    .weekly-audio.weekly-audio-plain { padding: 22px 0; }
    .weekly-audio__portrait-link, .weekly-audio__portrait { width: 64px; height: 64px; }
    .weekly-audio__title { font-size: 1.4rem; }
}
@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; }
}
