/* Shared editorial layout for resources, newsletter and the Daily archive. */
.resources-page { background: var(--paper); }
.resource-hero { padding: clamp(3rem, 7vw, 6rem) 0 3rem; border-bottom: 1px solid var(--line); }
.resource-hero h1 { max-width: 1000px; font-size: clamp(3.1rem, 7vw, 6.5rem); }
.resource-hero .lede { max-width: 690px; }
.resource-jump { display: flex; flex-wrap: wrap; gap: 0.8rem 2rem; margin-top: 2rem; font-size: 0.9rem; }
.resource-jump a { text-decoration: underline; text-underline-offset: 0.35rem; }
.resource-section { padding: clamp(3rem, 6vw, 5rem) 0; scroll-margin-top: 5rem; }
.resource-section + .resource-section { border-top: 1px solid var(--line); }
.resource-tint { background: var(--paper-deep); }
.resource-heading { margin-bottom: 2.5rem; }
.resource-heading h2, .resource-split h2 { font-size: clamp(2rem, 4vw, 3.4rem); }
.resource-feature { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(180px, 0.65fr); gap: clamp(2rem, 7vw, 6rem); align-items: center; }
.resource-feature h2 { max-width: 800px; font-size: clamp(2.4rem, 4.5vw, 4rem); }
.resource-feature img { display: block; max-width: 245px; width: 100%; height: auto; margin-inline: auto; box-shadow: 0 12px 28px #15181f18; }
.resource-row { display: grid; grid-template-columns: 0.65fr 2fr auto; gap: 2rem; align-items: baseline; padding: 1.7rem 0; border-top: 1px solid var(--line); }
.resource-row h3 { font-size: clamp(1.3rem, 2vw, 1.75rem); line-height: 1.3; margin: 0; }
.resource-row h3 a { color: var(--ink); }
.resource-row h3 a:hover { color: var(--accent); }
.resource-row p { color: var(--muted); max-width: 720px; margin: 0.6rem 0 0; }
.resource-row > .eyebrow { font-size: 0.65rem; margin: 0; }
.resource-row > .button-link { font-size: 0.8rem; white-space: nowrap; }
.resource-split { display: grid; grid-template-columns: 1fr 1.3fr; gap: clamp(2rem, 6vw, 5rem); }
.resource-split > div > p { max-width: 660px; }
.daily-latest { border-top: 2px solid var(--accent); padding-top: 1.25rem; }
.daily-latest h3 { font-size: 1.75rem; margin-top: 1.25rem; }
.daily-latest p { color: var(--muted); }
.daily-edition { display: grid; grid-template-columns: 0.8fr 2fr; gap: clamp(1rem, 4vw, 4rem); padding: 2rem 0; border-top: 1px solid var(--line); }
.daily-edition:first-child { border-top: 2px solid var(--accent); }
.daily-date h3 { font-size: 1.5rem; line-height: 1.35; }
.daily-edition p { max-width: 820px; margin: 0 0 1rem; color: var(--muted); }
.daily-label { display: block; font: 0.7rem var(--mono); color: var(--accent); text-transform: uppercase; margin-bottom: 0.5rem; }
.archive-months { padding-top: 3rem; scroll-margin-top: 5rem; }
.archive-month { border-top: 1px solid var(--line); }
.archive-month summary { padding: 1.5rem 0; font-size: 1.3rem; cursor: pointer; }
.archive-month summary span { margin-left: 1rem; font: 0.8rem var(--display); color: var(--muted); }
.archive-links { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.6rem 2rem; list-style: none; padding: 0 0 1.5rem; margin: 0; }
.archive-links a { display: inline-block; padding: 0.4rem 0; text-decoration: underline; text-underline-offset: 0.25rem; }
.newsletter-status { max-width: 620px; margin-top: 2.5rem; padding: 1.5rem 0 0; border-top: 2px solid var(--accent); }
.newsletter-status p { max-width: 550px; }
.newsletter-topics > div { border-top: 1px solid var(--line); padding: 1.5rem 0; }
.newsletter-topics h3 { font-size: 1.5rem; }
.newsletter-topics p { color: var(--muted); }
@media (max-width: 900px) {
    .resource-row { grid-template-columns: 0.7fr 2fr; gap: 0.6rem 1.5rem; }
    .resource-row > .button-link { grid-column: 2; justify-self: start; }
}
@media (max-width: 640px) {
    .resource-feature, .resource-split, .daily-edition, .resource-row { grid-template-columns: 1fr; }
    .resource-row { gap: 0.7rem; }
    .resource-row > .button-link { grid-column: 1; }
    .resource-feature img { max-width: 180px; margin-inline: 0; }
    .resource-hero h1 { font-size: clamp(2.8rem, 11vw, 4rem); }
    .resource-jump { gap: 0.8rem 1.3rem; }
    .daily-date h3 { font-size: 1.3rem; }
    .archive-links { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.3rem 1rem; }
    .archive-month summary span { display: block; margin: 0.5rem 0 0 1.25rem; }
}
