:root { --ink:#17211d; --paper:#f5f0e4; --cream:#ece3d1; --red:#a63028; --blue:#244f5b; --gold:#c59445; --line:#b9ae98; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:#d8d1c3; font-family:Georgia,"Times New Roman",serif; }
a { color:inherit; text-decoration-color:rgba(166,48,40,.45); text-underline-offset:3px; }
.paper { width:min(1180px,100%); margin:0 auto; min-height:100vh; background:var(--paper); box-shadow:0 0 60px #706c6366; }
.masthead { padding:22px 5vw 0; border-bottom:5px double var(--ink); }
.edition { padding:7px 0; border-block:1px solid var(--line); text-align:center; font:700 11px/1.2 Arial,sans-serif; letter-spacing:.19em; }
.brand-row { min-height:135px; display:grid; grid-template-columns:100px 1fr 100px; align-items:center; gap:20px; }
.brand-row h1 { margin:0; text-align:center; font-size:clamp(48px,8vw,92px); line-height:.9; letter-spacing:-.055em; font-weight:800; }
.sun-mark { width:74px; height:74px; display:grid; place-items:center; border:3px solid var(--red); border-radius:50%; color:var(--red); font:bold 42px/1 Georgia; box-shadow:0 0 0 5px var(--paper),0 0 0 7px var(--gold); transform:rotate(-5deg); }
.issue { text-align:right; text-transform:uppercase; font:bold 11px/1.6 Arial,sans-serif; letter-spacing:.12em; color:var(--red); }
nav { display:flex; flex-wrap:wrap; justify-content:center; gap:5px 24px; padding:10px 0; font:bold 12px/1.4 Arial,sans-serif; text-transform:uppercase; letter-spacing:.08em; }
nav a { text-decoration:none; }
main { padding:30px 5vw 60px; }
.warning { margin:15px 5vw 0; padding:10px 14px; background:#f4d8a6; font:13px Arial,sans-serif; }
.lead-grid { display:grid; grid-template-columns:1.3fr 1fr; gap:20px; padding-bottom:35px; border-bottom:1px solid var(--ink); }
.weather-card,.river-card { position:relative; overflow:hidden; padding:25px; border:1px solid var(--line); background:#eee6d6; }
.weather-card { background:linear-gradient(135deg,#e8d8b6 0%,#f7f0e2 58%,#c8d7d4 100%); }
.river-card { color:#f8f2e7; background:linear-gradient(155deg,#183945,#2a6470); }
.kicker { margin-bottom:9px; font:bold 11px/1.2 Arial,sans-serif; letter-spacing:.18em; color:var(--red); }
.river-card .kicker { color:#ffd28b; }
.weather-main { display:flex; align-items:center; gap:16px; }
.weather-main>span { color:var(--gold); font:76px/1 Arial,sans-serif; }
.weather-main>strong { font:800 76px/.9 Arial,sans-serif; letter-spacing:-.08em; }
.weather-main div { display:flex; flex-direction:column; gap:6px; font:18px Arial,sans-serif; }
.weather-main small { font-size:12px; }
.weather-details { display:grid; grid-template-columns:repeat(4,1fr); gap:10px; margin-top:25px; padding-top:15px; border-top:1px solid var(--line); font:12px/1.5 Arial,sans-serif; }
.weather-details span { display:flex; flex-direction:column; }
.weather-details b { font-size:18px; }
.river-wave { display:flex; align-items:center; gap:20px; }
.river-wave>span { color:#8fd3dc; font:74px/1 Arial,sans-serif; }
.river-wave strong { font:800 58px/.9 Arial,sans-serif; letter-spacing:-.05em; }
.river-wave small { font-size:24px; }
.river-card h2 { margin:10px 0 5px; font-size:25px; }
.river-card>p { max-width:500px; color:#d9e8e8; }
.river-meta { display:flex; gap:25px; padding-top:14px; border-top:1px solid #ffffff55; font:12px Arial,sans-serif; }
.source-line { margin:18px 0 0!important; font:10px/1.4 Arial,sans-serif!important; opacity:.78; }
.news-section { padding:42px 0 35px; border-bottom:3px double var(--line); }
.news-section>header { display:flex; align-items:center; gap:16px; margin-bottom:24px; }
.news-section h2 { margin:0; font-size:clamp(30px,4.5vw,48px); line-height:1; letter-spacing:-.035em; }
.section-icon { width:58px; height:58px; flex:0 0 auto; display:grid; place-items:center; color:var(--paper); background:var(--red); border-radius:50%; font:bold 17px Arial,sans-serif; }
.story-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:0 28px; }
.story { display:grid; grid-template-columns:145px 1fr; gap:17px; padding:20px 0; border-top:1px solid var(--line); }
.story.featured { grid-column:1/-1; grid-template-columns:minmax(260px,1.05fr) 1fr; padding-top:0; border-top:0; border-bottom:2px solid var(--ink); margin-bottom:5px; }
.story-image { display:block; min-height:115px; overflow:hidden; background:var(--blue); text-decoration:none; }
.featured .story-image { min-height:290px; }
.story-image img { width:100%; height:100%; display:block; object-fit:cover; transition:transform .3s ease; }
.story-image:hover img { transform:scale(1.025); }
.meta { margin-bottom:7px; color:var(--red); font:bold 10px/1.3 Arial,sans-serif; text-transform:uppercase; letter-spacing:.08em; }
.story h3 { margin:0 0 8px; font-size:21px; line-height:1.05; }
.featured h3 { font-size:clamp(28px,4vw,46px); }
.story h3 a { text-decoration:none; }
.story h3 a:hover { color:var(--red); }
.story p { margin:0; color:#43504a; font-size:14px; line-height:1.48; }
.featured p { font-size:17px; }
.story.text-only { display:block; padding:24px; background:#eee6d6; }
.story.text-only.featured { grid-column:1/-1; }
.source-link { display:inline-block; margin-top:12px; color:var(--red); font:bold 11px/1.3 Arial,sans-serif; text-transform:uppercase; letter-spacing:.06em; }
.section-intro { max-width:720px; margin:-8px 0 26px; color:#52605a; font:16px/1.55 Arial,sans-serif; }
.news-section.standalone { padding-top:10px; border-bottom:0; }
.standalone .section-heading { margin-bottom:24px; }
.standalone .section-heading h2 { margin:0; font-size:clamp(30px,4.5vw,48px); }
.empty { padding:25px; background:var(--cream); font-style:italic; }
footer { display:grid; grid-template-columns:1fr 2fr; gap:30px; padding:30px 5vw 45px; color:#e8e1d3; background:var(--ink); font:12px/1.5 Arial,sans-serif; }
footer p { margin:0; }
@media (max-width:760px) {
  .masthead { padding-inline:20px; }.brand-row { grid-template-columns:55px 1fr; min-height:105px; }.brand-row h1 { font-size:46px; }.sun-mark { width:48px;height:48px;font-size:28px }.issue { display:none; }
  main { padding-inline:20px; }.lead-grid,.story-grid { grid-template-columns:1fr; }.weather-main>span,.weather-main>strong { font-size:55px; }.weather-main div { font-size:15px; }.weather-details { grid-template-columns:repeat(2,1fr); }
  .story,.story.featured { grid-column:auto; grid-template-columns:110px 1fr; }.featured .story-image { min-height:130px; }.featured h3 { font-size:24px; }.featured p { font-size:14px; }.story p { display:none; }.river-meta { flex-direction:column;gap:7px; }
  footer { grid-template-columns:1fr; }
}
@media print { body{background:#fff}.paper{box-shadow:none}.masthead nav{display:none}.story-image{print-color-adjust:exact}.news-section{break-inside:avoid} }
