:root { --green:#1f3d2b; --cream:#f6f1e7; --paper:#e9e2d4; --rust:#c4552e; --ink:#14181f; --muted:#5c5b52; }
* { box-sizing:border-box; }
body { margin:0; overflow-x:hidden; background:var(--paper); color:var(--ink); font-family:Georgia, 'Times New Roman', serif; line-height:1.55; }
a { color:var(--green); text-decoration-thickness:1px; text-underline-offset:3px; }
.site-header { min-height:72px; padding:16px clamp(20px,5vw,72px); display:flex; align-items:center; justify-content:space-between; gap:24px; background:var(--green); color:var(--cream); }
.site-header { width:100vw; max-width:100vw; }
.wordmark { color:var(--cream); text-decoration:none; font-size:clamp(24px,3vw,34px); font-weight:700; letter-spacing:-.03em; }
.site-header nav { display:flex; gap:20px; align-items:center; font-family:Arial,sans-serif; font-size:14px; }
.site-header nav a { color:var(--cream); }
.site-header .subscribe-link { border:1px solid var(--rust); background:var(--rust); padding:8px 12px; text-decoration:none; font-weight:700; }
.hero { padding:clamp(64px,11vw,140px) clamp(20px,10vw,150px); background:var(--cream); border-bottom:8px solid var(--rust); }
.hero h1, .archive-intro h1 { max-width:790px; margin:8px 0 16px; color:var(--green); font-size:clamp(43px,7vw,82px); line-height:.96; letter-spacing:-.055em; }
.hero > p:not(.eyebrow), .archive-intro > p:not(.eyebrow) { max-width:620px; font-size:21px; }
.eyebrow, .issue-date, .article-kicker { margin:0; color:var(--rust); font-family:Arial,sans-serif; font-size:12px; font-weight:700; letter-spacing:.16em; text-transform:uppercase; }
.button { display:inline-block; margin-top:12px; padding:13px 18px; background:var(--rust); color:#fff; font-family:Arial,sans-serif; font-weight:700; text-decoration:none; }
.listing { max-width:1200px; margin:0 auto; padding:clamp(44px,7vw,90px) clamp(20px,4vw,48px); }
.section-heading { display:flex; align-items:end; justify-content:space-between; gap:30px; margin-bottom:26px; }
.section-heading h2 { margin:3px 0 0; color:var(--green); font-size:34px; letter-spacing:-.03em; }
.issue-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.issue-card { display:flex; flex-direction:column; min-height:225px; padding:23px; background:var(--cream); border-top:4px solid var(--green); }
.issue-card h2 { margin:9px 0 10px; color:var(--green); font-size:24px; line-height:1.08; letter-spacing:-.025em; }
.issue-card h2 a { text-decoration:none; }
.issue-card > p:not(.issue-date) { margin:0; color:var(--muted); }
.read-more { margin-top:auto; padding-top:18px; color:var(--rust); font-family:Arial,sans-serif; font-size:14px; font-weight:700; }
.archive-intro { max-width:760px; margin-bottom:42px; }
.archive-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.article-shell { max-width:820px; margin:0 auto; padding:32px 20px 70px; }
.article-kicker { margin:0 0 10px; }
.issue-content { overflow:hidden; background:var(--cream); box-shadow:0 4px 18px rgba(31,61,43,.12); }
.issue-content > div { max-width:100% !important; width:100% !important; }
.issue-content > div > div { max-width:100% !important; }
.issue-content img { max-width:100%; height:auto; }
.issue-content a { color:var(--rust); }
.issue-cta { margin:34px 0 0; padding:30px; background:var(--green); color:var(--cream); text-align:center; }
.issue-cta h2 { margin:0; font-size:30px; }
.issue-cta p { margin:10px auto; max-width:460px; }
.issue-cta .button { background:var(--rust); }
.site-footer { padding:34px 20px; background:var(--green); color:var(--cream); text-align:center; }
.site-footer p { margin:0 0 8px; }
.site-footer a { color:#e6b98f; }
@media (max-width:720px) { .site-header { min-height:64px; } .issue-grid, .archive-list { grid-template-columns:1fr; } .section-heading { align-items:start; flex-direction:column; gap:8px; } }
@media (max-width:520px) { .site-header { padding:12px 16px; gap:12px; } .wordmark { font-size:23px; } .site-header nav { gap:12px; } .site-header .subscribe-link { padding:8px 10px; } .issue-content > div { padding-left:20px !important; padding-right:20px !important; } }
