/* Sky comparison edition: alternating pale blue and white editorial surfaces. */
:root{--bg:#f6fbff;--ink:#163547;--muted:#496579;--line:#c2dce9;--teal:#087684}
body{background:linear-gradient(180deg,#e5f4ff 0,#fff 660px,#edf8ff 1400px,#fff 2400px);background-attachment:scroll}
.utility{background:#cceaff}.masthead{background:transparent}.mainnav{background:#fff;border-color:#d3e8f2}.issuebar{border-color:#bcdde9}.block{background:#fff;padding:38px 30px;margin-top:34px;border:1px solid #d8eaf3;border-radius:3px}.block:nth-of-type(even){background:#eaf6ff}.lead{background:#fff;padding:30px;border:1px solid #d8eaf3}.feature-side{background:#edf8ff}.abstract{background:#f2faff}.chart,.pollcard,.calculator,.mapframe,.editorial-note{background:#f7fcff;border-color:#c5e2ef}.signal-strip{background:#dff2ff}.reader{background:#fff;padding:35px 30px}.readerhead .abstract{background:#eaf6ff}.source-item:target{background:#e4f5ff}footer{background:#dcefff}.insight-heading{margin:48px 0 0}.story-photo{margin:24px 0}.story-photo img{display:block;width:100%;height:auto;background:#e5f3fa}.story-photo figcaption{font-size:11px;line-height:1.7;color:#587080;padding:9px 0}.story-photo figcaption span{display:block}.story-photo a{text-decoration:underline}.election-section{background:linear-gradient(120deg,#fff,#e8f5ff)}.election-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.election-card{min-width:0;background:#fff;border:1px solid #cfe6f2}.election-date{display:flex;justify-content:space-between;gap:10px;background:#dff2ff;padding:16px 20px;font-size:12px;font-weight:700;letter-spacing:1px}.election-card>.story-photo{margin:0}.election-card>.story-photo figcaption{padding:10px 20px;min-height:62px}.election-main{padding:20px 24px}.election-main h3{font-size:29px;line-height:1.5;margin:12px 0}.election-main>p{color:var(--muted);font-size:16px;line-height:1.8}.mini-summary{border-left:2px solid var(--teal);padding-left:15px;margin:20px 0}.mini-summary small{font-size:10px;letter-spacing:1.5px;color:var(--teal)}.mini-summary p{font:14px/1.7 Georgia,serif}.related-news{padding:22px 24px;border-top:1px solid #d9eaf3;background:#f5fbff}.related-news h3{font-size:15px;margin:0 0 16px;color:var(--teal)}.related-news ul{padding-left:18px;margin:0}.related-news li{padding:0 0 14px;margin:0 0 14px;border-bottom:1px solid #d9eaf3}.related-news li:last-child{margin-bottom:0;border:0;padding-bottom:0}.related-news a{font-size:15px;font-weight:700;line-height:1.65}.related-news small{display:block;font-size:11px;color:var(--muted);margin-top:5px}.related-news p{font-size:13px;line-height:1.7;color:var(--muted);margin:5px 0}.readerbody>.related-news{margin:30px 0}.readerbody>.related-news h3{margin:0 0 16px}.readerhead>.story-photo{max-width:850px;margin:25px auto}.feature-side .story-photo{margin:20px 0 0}.feature-side .story-photo figcaption{font-size:10px}
@media(max-width:700px){.block,.lead{padding:25px 18px}.election-grid{grid-template-columns:1fr;gap:24px}.election-main{padding:18px}.election-main h3{font-size:25px}.election-date{padding:14px 18px;font-size:11px;letter-spacing:.3px}.related-news{padding:20px 18px}.reader{padding:25px 18px}.election-card>.story-photo figcaption{padding:10px 18px}.issuebar span{max-width:52%;text-align:right}.utility .container{gap:8px}.utility .container>span:last-child{font-size:9px}}
.election-card>.story-photo img{height:300px;object-fit:cover}.election-card>.story-photo figcaption{min-height:82px}@media(max-width:700px){.election-card>.story-photo img{height:210px}}
.section-prose{font-size:1.12rem;line-height:1.95;margin:0 0 1.5rem;color:#284650;overflow-wrap:anywhere}
.table-scroll{overflow-x:auto;max-width:100%;margin:1.4rem 0;background:#f3faff;border:1px solid #b7d6e3;border-radius:12px}
.table-scroll:focus-visible{outline:3px solid #218d92;outline-offset:3px}
.readerbody table{border-collapse:collapse;width:100%;min-width:570px;font-size:.95rem;line-height:1.65;text-align:left}
.readerbody caption{text-align:left;padding:16px;font-weight:700;color:#164d61;caption-side:top}
.readerbody th,.readerbody td{padding:13px 15px;border-bottom:1px solid #c5dde8;vertical-align:top}
.readerbody th{background:#dff1f9;color:#174758}.readerbody tr:nth-child(even){background:#eaf6fb}
@media(max-width:640px){.section-prose{font-size:1.04rem;line-height:1.85}.table-scroll::before{content:'↔';display:block;padding:4px 12px;color:#356674}.readerbody table{font-size:.9rem}}

.site-intro{padding:26px 0 14px}.site-intro h1{font-size:clamp(1.5rem,3vw,2.15rem);line-height:1.5;margin:0;color:#174758}.site-intro p{color:#456672;margin:8px 0}.readerbody{overflow-wrap:anywhere}
