/* Polling follows the established investigation typography at a compact chart scale. */
.polling-page .section-opener{padding:40px clamp(24px,4vw,64px);min-height:0;gap:40px;align-items:center}
.polling-page .section-opener h1{font-family:Playfair,Georgia,serif;font-size:clamp(38px,4.5vw,76px);line-height:1.06;letter-spacing:-.045em;margin:24px 0}
.polling-page .section-opener .section-dek{font:22px/1.5 Georgia,serif;color:#b8c0ce;max-width:38ch}
.polling-page .section-opener .opener-art{max-width:470px;width:100%;justify-self:end;min-height:0;aspect-ratio:1}
.polling-page .back-link{font-size:14px;font-weight:400;color:#b8c0ce;text-decoration:none;margin-bottom:36px;display:inline-block}
.polling-page .article-chapter.poll-section,.polling-page .poll-story-opening{padding:40px clamp(24px,4vw,64px)}
.polling-page h2{font-family:Playfair,Georgia,serif;font-size:clamp(28px,2.8vw,48px);line-height:1.18;letter-spacing:-.025em;margin:12px 0 18px;max-width:950px}
.polling-page .poll-section h3{font-family:Playfair,Georgia,serif;font-size:clamp(22px,1.9vw,28px);line-height:1.25}
.polling-page .poll-story-opening{background:#eeece0;color:#101827;border-block:1px solid #10182720}
.polling-page .poll-story-opening>p:not(.eyebrow){font:18px/1.75 Inter,Arial,sans-serif;max-width:85ch;margin:20px 0}
.polling-page .poll-story-lead::first-letter{float:left;font:400 3.8rem/.8 Playfair,Georgia,serif;color:#8c7420;margin:3px 9px 0 0}
.polling-page .chapter-intro,.polling-page .poll-reading,.polling-page .state-approval-section>p:not([class]){font:17px/1.7 Inter,Arial,sans-serif;max-width:85ch;margin:16px 0 22px}
.polling-page .poll-heading{margin:0 0 8px;align-items:center;gap:12px}
.polling-page .poll-heading h2{margin:0}
.polling-page #approval{padding-block:28px}
.polling-page #approval .poll-reading{font-size:15px;line-height:1.55;max-width:100ch;margin:10px 0}
.polling-page .poll-stats{margin:16px 0;gap:20px}
.polling-page .poll-stats>div{padding:12px 0;gap:6px}
.polling-page .poll-stats strong{font:500 clamp(28px,2.8vw,40px)/1.1 Georgia,serif}
.polling-page .poll-trend{margin:16px 0 0;max-width:1000px}
.polling-page .poll-trend svg{width:100%;height:auto;max-height:260px;display:block}
.polling-page .poll-trend svg text{font-size:16px}
.polling-page .poll-key{margin:8px 0;font-size:13px;gap:12px 22px}
.polling-page .poll-trend details{margin:4px 0 0}
.polling-page .poll-trend summary{padding:8px 0}
.polling-page .poll-controls{margin:20px 0;gap:16px}
.polling-page .poll-breakdown-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:22px 0}
.polling-page .poll-breakdown{padding:20px;border-top:3px solid #a48b2f}
.polling-page .poll-breakdown h3{font-size:23px;margin:0 0 14px}
.polling-page .poll-breakdown>strong{font:500 30px/1.2 Georgia,serif}
.polling-page .poll-breakdown strong small{display:block;margin-top:5px;line-height:1.4}
.polling-page .poll-stack{margin:16px 0 10px}
.polling-page .poll-video-feature{margin:20px 0;max-width:1080px}
.polling-page .poll-video-player{max-width:520px}
.polling-page .poll-video-description h3{font-size:26px}
.polling-page .state-approval-section{padding:0;border:0;background:transparent;box-shadow:none}
.polling-page .state-map-shell{max-width:1080px;grid-template-columns:minmax(0,2fr) minmax(220px,1fr);gap:24px}
.polling-page .us-state-map{max-height:360px;display:block}
.polling-page .state-map-summary{margin:20px 0;gap:20px}
.polling-page .state-map-summary strong,.polling-page .state-net-number{font:500 32px/1.2 Georgia,serif}
.polling-page .poll-issue-tabs{margin:20px 0;max-width:1080px}
.polling-page .poll-issue-tabs strong{font-size:24px}
@media(min-width:1600px){.polling-page .article-chapter.poll-section,.polling-page .poll-story-opening{padding-inline:max(64px,calc((100vw - 1450px)/2))}.polling-page .poll-trend{max-width:1120px}}
@media(max-width:900px){.polling-page .poll-breakdown-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.polling-page .section-opener{padding:30px 22px;gap:28px}.polling-page .section-opener h1{font-size:40px}.polling-page .section-opener .section-dek{font-size:20px}.polling-page .section-opener .opener-art{max-width:360px;justify-self:center}.polling-page .article-chapter.poll-section,.polling-page .poll-story-opening{padding:30px 22px}.polling-page .poll-heading h2{margin-bottom:16px}.polling-page .poll-heading label{margin-top:0}.polling-page .poll-breakdown-grid{grid-template-columns:1fr}.polling-page .poll-story-opening>p:not(.eyebrow){font-size:16px}.polling-page .poll-story-lead::first-letter{font-size:3.4rem}.polling-page .poll-trend svg{max-height:none}.polling-page .poll-trend svg text{font-size:25px}.polling-page .state-map-shell{grid-template-columns:1fr}.polling-page .state-map-summary strong{font-size:25px}.polling-page .poll-stats{gap:12px}.polling-page .poll-stats strong{font-size:28px}.polling-page .poll-comparisons{grid-template-columns:repeat(2,minmax(0,1fr))}}

@media(min-width:761px){.polling-page #approval{padding-block:20px}.polling-page #approval .eyebrow{margin-bottom:10px}.polling-page #approval .poll-source{margin:8px 0}.polling-page #approval .poll-reading{max-width:none;font-size:15px;line-height:1.5;margin:8px 0}.polling-page #approval .poll-stats{margin:10px 0}.polling-page #approval .poll-stats>div{padding:8px 0;gap:4px}.polling-page #approval .poll-trend{margin-top:12px}.polling-page #approval .poll-trend svg{max-height:240px}}
