.editions { border-top: 1px solid var(--rule); padding-block: 32px 24px; }
.edition-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 20rem), 1fr)); gap: 0 24px; }
.edition-card { margin-top: 23px; border: 1px solid var(--rule); border-top: 2px solid var(--ink); padding: 22px 24px; }
.edition-card h2 a { color: var(--accent); text-decoration: underline; text-decoration-thickness: 1px; }
.edition-card p:not(.desk) { margin: 8px 0 2px; color: var(--muted); }
.lead-story:has(> .feature) { display: grid; grid-template-columns: minmax(0, 1.18fr) minmax(0, 1fr); align-items: start; gap: 28px; }
.lead-story > .feature { margin: 0; }
.lead-story .lead-map img { display: block; width: 100%; height: auto; }
.lead-story .lead-map a { display: block; }
.lead-map figcaption { margin-top: 6px; color: var(--muted); font: 13px/1.36 var(--sans); }
.closing-desk { padding-bottom: 0; }
.closing-desk .story-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 16rem), 1fr)); column-gap: 30px; }
.closing-desk .story-row h3 { font-size: clamp(1.4rem, 2vw, 1.62rem); }
.edition-archive { display: flex; justify-content: end; border-top: 1px solid var(--rule); }
.edition-archive .read-link, .signup--edition .read-link { display: inline-flex; align-items: center; gap: .35em; min-height: 44px; color: var(--accent); font-size: 15px; font-weight: 650; }
.signup--edition { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, .86fr); align-items: center; gap: 10px 28px; margin-block: 12px 0; padding: 21px 26px; border: 1px solid var(--rule); background: color-mix(in srgb, var(--ink) 3%, var(--paper)); }
.signup--edition h2 { font-size: clamp(1.55rem, 2.6vw, 1.85rem); }
.signup--edition p { margin: 5px 0 0; color: var(--muted); }
.signup--edition .edition-signup { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 6px 8px; }
.signup--edition label { display: grid; gap: 4px; font-size: 15px; font-weight: 650; }
.signup--edition .edition-signup input[type=email] { min-width: 0; width: 100%; min-height: 44px; padding: 8px 10px; border: 1px solid var(--input-border, var(--muted)); background: var(--paper); color: var(--ink); font: inherit; font-size: 16px; }
.signup--edition .button { width: fit-content; min-height: 44px; padding: 8px 14px; border: 0; background: var(--accent); color: var(--paper); font: inherit; font-weight: 650; cursor: pointer; }
.signup--edition .edition-signup :is([role=status], [role=alert]) { grid-column: 1 / -1; }
.signup--edition .small-note { margin-top: 7px; font-size: 13px; }
.site-footer { margin-top: 24px; border-top: 1px solid var(--rule); }
.footer { display: flex; justify-content: space-between; align-items: center; gap: 4px 20px; padding-block: 13px 21px; }
.footer-brand { font: 650 22px/1.2 var(--serif); text-decoration: none; }
.footer-links, .footer-links .nav { display: flex; flex-wrap: wrap; gap: 0 17px; margin: 0; padding: 0; list-style: none; }
.footer-links a { display: inline-flex; align-items: center; min-height: 32px; color: var(--muted); font-size: 14px; }
.footer-links a:hover { color: var(--accent); }

@media (max-width: 680px) {
    .lead-story:has(> .feature) { grid-template-columns: 1fr; gap: 14px; }
    .edition-card { padding-inline: 18px; }
    .closing-desk .story-list { grid-template-columns: 1fr; }
    .edition-archive { justify-content: start; }
    .signup--edition { grid-template-columns: 1fr; padding: 16px; }
    .footer { align-items: start; flex-direction: column; }
}

@media (max-width: 345px) {
    .signup--edition .edition-signup { grid-template-columns: 1fr; }
    .signup--edition .button { width: 100%; }
}
