@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Baskerville:ital,wght@0,400;0,700;1,400&display=swap');
:root{--ink:#182d40;--ink2:#253f50;--slate:#61717a;--paper:#faf9f5;--cream:#f3efe5;--line:#dce0df;--gold:#c4a66f;--red:#a94b48;--blue:#3e6c92;--white:#fff;--serif:Georgia,'Libre Baskerville',serif;--sans:'DM Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;scroll-behavior:smooth}
*{box-sizing:border-box}html{scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.65 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-underline-offset:3px}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #d1a94c;outline-offset:3px}.skip-link{position:absolute;z-index:99;top:-60px;left:20px;background:#fff;padding:12px}.skip-link:focus{top:4px}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.2}section,article{scroll-margin-top:88px}
.site-header{height:75px;background:var(--paper);border-bottom:1px solid #e7e4db;position:sticky;top:0;z-index:50;box-shadow:0 1px 10px #132c4010}.header-inner{max-width:1330px;padding:0 48px;margin:auto;height:100%;display:flex;align-items:center;gap:30px}.brand{display:inline-flex;align-items:center;gap:11px;text-decoration:none}.logo-mark{color:var(--ink);display:inline-flex;width:33px;height:33px}.logo-mark svg{width:100%;height:100%}.brand-name{font-weight:700;letter-spacing:.105em;font-size:20px}.brand-dot,.footer-brand span{color:#bf9b61}.edition{font-size:10px;color:#889198;letter-spacing:.16em;font-weight:700;margin-right:auto;padding-left:25px;border-left:1px solid #d7dcde;white-space:nowrap}.header-actions{display:flex;align-items:center;gap:26px;white-space:nowrap}.plain-button{border:0;background:none;color:#334d5b;font-size:12px;font-weight:700;letter-spacing:.02em;padding:12px 0}.header-link{font-size:12px;font-weight:700;text-decoration:none}.header-link:hover,.plain-button:hover{color:#9d7d4f}.reading-track{height:3px;position:fixed;top:75px;z-index:52;width:100%;pointer-events:none}.reading-track div{background:var(--gold);width:0;height:100%;transition:width .08s linear}
.hero{background:#162c41;color:#f9f6ee;overflow:hidden;position:relative}.hero-inner{max-width:1330px;padding:72px 48px 70px;margin:auto;min-height:498px;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(270px,.65fr);align-items:center;gap:50px}.hero-copy{position:relative;z-index:2}.hero-kicker{font-weight:700;font-size:11px;letter-spacing:.22em;color:#e1c899;display:flex;align-items:center;gap:15px;margin-bottom:25px}.gold-rule{width:29px;height:1px;background:#c4a66f}.hero h1{font:400 clamp(58px,6.2vw,89px)/1.07 var(--serif);letter-spacing:-.052em;margin-bottom:26px}.hero h1 em,.content-section h2 em{font-weight:400;color:#c8aa73}.hero-lead{font:17px/1.75 var(--sans);max-width:560px;color:#d4dce0;margin-bottom:24px}.hero-meta{display:flex;align-items:center;flex-wrap:wrap;gap:14px;color:#a9bac1;font-size:11px;letter-spacing:.06em}.meta-divider{height:15px;width:1px;background:#6c7f88}.hero-cta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:32px}.button{min-height:47px;padding:11px 19px;display:inline-flex;align-items:center;justify-content:space-between;gap:25px;font-size:12px;font-weight:700;text-decoration:none;border-radius:2px;letter-spacing:.02em;transition:transform .18s,background .18s}.button:hover{transform:translateY(-2px)}.button-cream{background:#f4ede0;color:#183046}.button-outline{border:1px solid #6a7b82;color:#f7f5ef}.hero-art{height:340px;position:relative;opacity:.75;display:flex;align-items:center;justify-content:center}.state-shape{font:italic 195px/1 var(--serif);letter-spacing:-.23em;color:transparent;-webkit-text-stroke:1px #a98e65;transform:translateX(-15px) rotate(-8deg);opacity:.7;user-select:none}.topo-circle{border:1px solid #7f8d90;border-radius:50%;position:absolute;inset:auto;opacity:.24}.circle-one{width:400px;height:400px}.circle-two{width:270px;height:270px}.hero-art-note{position:absolute;bottom:10px;right:0;font-size:10px;line-height:1.7;letter-spacing:.17em;color:#c4ad86;text-align:right}
.wrap{max-width:1330px;padding:0 48px;margin:auto}.body-grid{display:grid;grid-template-columns:216px minmax(0,1fr);gap:76px;align-items:start}.sidebar{align-self:stretch;border-right:1px solid #e4e6e4}.sticky-sidebar{position:sticky;top:113px;margin-top:58px;padding:0 26px 0 0}.sidebar-eyebrow,.section-marker,.small-label,.eyebrow{font-size:10px;letter-spacing:.17em;font-weight:700;color:#879398}.sidebar-eyebrow{margin-bottom:22px}.sidebar-nav{display:flex;flex-direction:column;gap:4px}.sidebar-nav a{display:flex;gap:14px;align-items:start;padding:10px 5px;text-decoration:none;color:#a1abad;font-size:10px;line-height:1.5;font-weight:700;transition:color .2s}.sidebar-nav span{font-size:12px;color:#4b5b65;font-weight:600;letter-spacing:0}.sidebar-nav a:hover,.sidebar-nav a.active,.sidebar-nav a.active span{color:#ab8245}.sidebar-note{margin-top:48px;font-size:11px;color:#93a0a0}.sidebar-line{width:29px;height:1px;background:var(--gold);display:block}.sidebar-note p{margin-top:12px;line-height:1.7}.mini-print{background:none;border:0;color:var(--ink);font-size:11px;font-weight:700;padding:0}.article-column{min-width:0}.document-note{margin-top:40px;padding:13px 16px;background:#f1eee7;border:1px solid #e6e0d6;font-size:11px;line-height:1.55;color:#626968;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.document-note strong{color:#38444d}.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#ae8e58}
.content-section{padding:88px 0 84px;border-bottom:1px solid #d9dedc}.section-marker{display:flex;align-items:center;gap:20px;margin-bottom:21px}.section-marker span:first-child{font-size:11px;color:#b3945e}.section-marker span:last-child{color:#8f9b9d}.content-section h2{font:400 clamp(36px,4vw,56px)/1.15 var(--serif);letter-spacing:-.048em;margin:0 0 22px}.content-section h2 em{font-style:italic}.period{color:var(--gold)}.section-heading-row{display:flex;align-items:end;justify-content:space-between;gap:12px}.readtime{font-size:10px;letter-spacing:.16em;color:#929e9c;margin-bottom:32px;font-weight:700}.section-intro{font:17px/1.83 var(--sans);color:#4f626d;max-width:790px;margin-bottom:34px}.source-ref{font:700 10px/1 var(--sans);color:#936d38;vertical-align:super;text-decoration:none;border:1px solid #e2d3b5;border-radius:2px;display:inline-flex;align-items:center;justify-content:center;min-width:17px;height:17px;padding:0 3px;margin:0 1px}.source-ref:hover{background:#f2e1c0}
.quick-candidate-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.mini-profile{background:#fff;border:1px solid #e0e4e3;display:grid;grid-template-columns:118px minmax(0,1fr);min-height:210px;overflow:hidden}.portrait{height:100%;position:relative;overflow:hidden;background:#d1d9db;display:flex;align-items:center;justify-content:center}.portrait-klobuchar{background:#e4e8ea}.portrait-demuth{background:#e2e4dd}.portrait img{width:100%;height:100%;object-fit:cover;object-position:47% center;z-index:1;position:absolute;left:0;top:0}.portrait-fallback{color:#8da0a5;font:italic 48px var(--serif)}.mini-profile-copy{padding:19px 15px 17px}.party-label{display:inline-block;font-size:9px;font-weight:700;letter-spacing:.1em;line-height:1.5}.blue-label{color:#497b9e}.red-label{color:#ad5954}.mini-profile h3{font:400 23px/1.25 var(--serif);letter-spacing:-.03em;margin:11px 0}.mini-profile p{color:#5e6d74;font-size:12px;line-height:1.65;margin-bottom:14px}.mini-profile a,.bio a{color:#46677b;font-size:11px;font-weight:700;text-decoration:none}.mini-profile a:hover,.bio a:hover{text-decoration:underline}.takeaway{display:flex;gap:24px;padding:38px 25px 28px;margin:27px 0;background:#f0f0ec}.takeaway-rule{width:3px;min-width:3px;background:#bca16f}.takeaway-eyebrow{font-size:10px;letter-spacing:.15em;color:#9c8d72;font-weight:700;margin-bottom:8px}.takeaway p:last-child{font:19px/1.75 var(--serif);color:#2c414d;margin:0;letter-spacing:-.018em}.quick-compare{margin:40px 0}.quick-compare h3{font:400 29px var(--serif);letter-spacing:-.035em;margin-bottom:20px}.difference-row{display:grid;grid-template-columns:130px 1fr;gap:12px;border-top:1px solid var(--line);padding:18px 0}.difference-row:last-child{border-bottom:1px solid var(--line)}.difference-row b{font-size:12px;color:#405764}.difference-row p{font-size:13px;line-height:1.8;color:#53646d;margin:0}.quick-bottom{display:grid;grid-template-columns:1fr 1fr;gap:16px}.poll-teaser{background:var(--ink);padding:26px;color:white;min-height:236px;display:flex;flex-direction:column;justify-content:space-between}.poll-teaser .small-label{color:#cbb78e}.poll-teaser-numbers{font:36px var(--serif);letter-spacing:-.055em;margin:12px 0 2px}.poll-teaser-numbers span{font-size:23px;color:#9dafb8}.poll-teaser p{font-size:11px;color:#afbec5;line-height:1.6}.poll-teaser a{font-size:12px;font-weight:700;color:#e5cf9c;text-decoration:none}.quick-bottom-card{border:1px solid #dce0de;padding:26px;display:flex;flex-direction:column;justify-content:space-between}.quick-bottom-card h3{font:27px var(--serif);letter-spacing:-.04em;margin:12px 0}.quick-bottom-card p{font-size:13px;color:#65747b;line-height:1.7}.text-arrow{font-size:12px;color:#2f5d76;text-decoration:none;font-weight:700}.section-return{display:inline-block;text-decoration:none;color:#839194;font-size:11px;font-weight:700;margin-top:35px}.section-return:hover{color:#946c36}
.powers-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 35px;margin-top:25px}.powers-grid>div{padding:18px 0;border-top:1px solid #cbd2d2}.powers-grid span{font:11px var(--sans);color:#ad966a}.powers-grid h3{font:22px var(--serif);margin:9px 0}.powers-grid p{font-size:13px;color:#65747b;line-height:1.75}.footnote-note{background:#ecefea;border-left:2px solid #a5ada5;padding:17px 20px;font-size:12px;color:#5e6f76;line-height:1.8;margin-top:25px}.bio{border-top:1px solid var(--line);padding:30px 0}.bio h3{font:27px/1.35 var(--serif);margin:9px 0 15px}.bio p{color:#52656f;font-size:14px;line-height:1.85}.other-candidates{background:#f1eee7;padding:18px 22px;font-size:13px;color:#56636b;line-height:1.8}
.issues-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:14px}.issues-toolbar>span{font-size:10px;font-weight:700;letter-spacing:.15em;color:#97a1a4}.issues-toolbar>div{display:flex;gap:12px}.issues-toolbar button{background:none;border:0;color:#476578;font-size:11px;font-weight:700;padding:4px}.issues-toolbar button:hover{text-decoration:underline}.issue-index{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid #d9ddda;margin-bottom:43px;background:#fff}.issue-jump{text-decoration:none;display:flex;align-items:center;gap:11px;min-height:47px;padding:12px 15px;border-bottom:1px solid #e6e8e5;font-size:12px}.issue-jump:nth-child(odd){border-right:1px solid #e6e8e5}.issue-jump:nth-last-child(-n+2){border-bottom:0}.issue-jump span{color:#a38a60;font-size:10px;font-weight:700}.issue-jump strong{font-weight:600;flex:1}.issue-jump b{font-weight:400;color:#a4afb0}.issue-jump:hover{background:#f8f5ec}.issue{border-top:1px solid #d4dbd9}.issue:last-child{border-bottom:1px solid #d4dbd9}.issue-head{padding:25px 0;display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center}.issue-head .eyebrow{font-size:9px;color:#a58d67}.issue-head h3{font:400 25px var(--serif);letter-spacing:-.025em;margin:8px 0 5px}.issue-head p{color:#7c8b90;font-size:12px;margin:0}.issue-toggle{display:flex;gap:12px;align-items:center;border:1px solid #d5dcda;background:transparent;color:#3e6073;font-size:11px;font-weight:700;padding:10px 12px;white-space:nowrap}.issue-toggle:hover{background:#fff}.plus{font-size:19px;font-weight:400;line-height:1}.issue-detail{padding-bottom:30px}.issue-detail[hidden]{display:none}.comparison{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid #d9dfde;background:#fff}.compare-side{padding:22px 22px 18px}.compare-side+.compare-side{border-left:1px solid #e1e5e2}.person-tag{font-size:10px;letter-spacing:.065em;font-weight:700;display:flex;gap:7px;align-items:center;color:#495c66}.dot{width:6px;height:6px;border-radius:50%;display:inline-block}.dfl{background:#497ca4}.gop{background:#af544e}.compare-side p{font-size:13px;line-height:1.85;color:#536770;margin:15px 0 0}.context{background:#eef0ec;font-size:12px;line-height:1.85;padding:16px 19px;color:#536671;margin:0}.backlink{display:inline-block;font-size:11px;font-weight:700;color:#5f7886;text-decoration:none;margin-top:17px}
.poll-card{background:#fff;border:1px solid #e0e4e0;padding:23px;margin-bottom:16px}.poll-title{display:flex;align-items:start;justify-content:space-between;gap:12px}.poll-title h3{font:21px var(--serif);margin:0 0 6px}.poll-title span{font-size:11px;color:#7e8e91}.poll-title a{font-size:11px;text-decoration:none;color:#426681;white-space:nowrap}.poll-bars{margin-top:24px}.bar-row{display:grid;grid-template-columns:120px 1fr 47px;align-items:center;gap:14px;margin-bottom:13px}.bar-row span{font-size:11px;font-weight:700}.bar-row b{font-size:13px;text-align:right}.bar-track{height:11px;background:#eff1f1}.bar{height:11px}.bar.blue{background:#5e829b}.bar.red{background:#b86d63}.bar.gray{background:#afb7b7}.timeline{border-left:1px solid #c8cecc;margin-left:8px;padding:0 0 0 29px}.timeline>div{position:relative;padding:2px 0 25px}.timeline>div:before{position:absolute;content:'';height:9px;width:9px;left:-34px;top:8px;border-radius:50%;border:2px solid #b89b69;background:var(--paper)}.timeline span{font-size:10px;color:#a58d66;font-weight:700;letter-spacing:.11em}.timeline h3{font:24px var(--serif);margin:10px 0}.timeline p{color:#5f6e76;font-size:13px;line-height:1.85}.voting-section{background:#f0eee7;padding:47px 38px;margin-left:-38px;margin-right:-38px;border-bottom:0}.voting-section p{font-size:14px;color:#5a6b73;line-height:1.9}.voting-actions{display:flex;gap:13px;flex-wrap:wrap;margin-top:24px}.button-dark{background:#183044;color:#fff}.button-border{color:#2d4c60;border:1px solid #b5c0bf}.voting-fine{font-size:11px!important;color:#899493!important;margin-top:17px}.source-section{border-bottom:0}.method-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #d8dede;margin-bottom:35px}.method-grid>div{padding:17px 15px;display:flex;flex-direction:column;gap:5px;border-right:1px solid #d8dede}.method-grid>div:last-child{border-right:0}.method-grid b{font-size:11px}.method-grid span{font-size:11px;color:#7c8b90}.sources-list{padding:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;column-gap:25px;row-gap:0}.sources-list li{display:flex;gap:13px;padding:12px 0;border-top:1px solid #e1e5e2;min-width:0;scroll-margin-top:95px}.sources-list li:target{background:#f6edda}.source-num{font:700 10px var(--sans);color:#bb9f72;margin-top:3px;min-width:21px}.sources-list a{display:block;font-size:12px;font-weight:700;text-decoration:none;line-height:1.5}.sources-list a:hover{text-decoration:underline}.sources-list small{display:block;font-size:10px;line-height:1.55;color:#8b999c;margin-top:3px}.photo-credit{font-size:11px;color:#8a9797;line-height:1.8;margin-top:15px}.method-note{padding:22px;background:#f0eee8;font-size:12px;color:#5c6d75;line-height:1.8;margin-top:24px}.method-note strong{color:var(--ink)}.method-note p{margin:5px 0 0}.footer{background:#162b3f;color:#d8e1e2;margin-top:50px}.footer-inner{max-width:1330px;margin:auto;padding:46px 48px;display:flex;align-items:center;gap:25px}.footer-brand{font-size:17px;letter-spacing:.14em;font-weight:700}.footer p{font:italic 16px var(--serif);color:#c4b28e;margin:0 auto 0 0}.footer-inner>div{font-size:10px;color:#9eafb5}.footer-inner>div a{text-decoration:none;color:#e4d1af}
@media(max-width:1060px){.header-inner,.hero-inner,.wrap,.footer-inner{padding-left:32px;padding-right:32px}.body-grid{grid-template-columns:175px 1fr;gap:36px}.hero-art{opacity:.45}.mini-profile{grid-template-columns:90px 1fr}.mini-profile-copy{padding:15px 12px}.mini-profile h3{font-size:19px}.voting-section{margin-left:0;margin-right:0}.edition{display:none}}
@media(max-width:760px){:root{scroll-padding-top:72px}.site-header{height:65px}.reading-track{top:65px}.header-inner{padding:0 20px;gap:10px}.brand-name{font-size:17px}.header-actions{margin-left:auto;gap:13px}.header-actions .plain-button span{display:none}.header-link{font-size:11px}.logo-mark{width:29px;height:29px}.hero-inner{padding:54px 22px 48px;display:block;min-height:430px}.hero-art{display:none}.hero h1{font-size:58px;margin-bottom:21px}.hero-lead{font-size:15px}.hero-kicker{font-size:9px}.hero-meta{font-size:10px}.hero-cta{align-items:stretch;gap:9px}.button{font-size:11px;min-height:45px;padding:11px 14px;gap:10px}.body-grid{display:block;padding:0 20px}.sidebar{border:0;display:none}.document-note{margin-top:22px}.content-section{padding:70px 0 58px}.content-section h2{font-size:41px}.section-intro{font-size:15px}.quick-candidate-grid{grid-template-columns:1fr;gap:12px}.mini-profile{grid-template-columns:100px 1fr;min-height:165px}.mini-profile h3{font-size:23px}.mini-profile p{font-size:12px}.takeaway{padding:24px 18px}.takeaway p:last-child{font-size:17px}.quick-bottom{grid-template-columns:1fr}.poll-teaser{min-height:193px}.difference-row{grid-template-columns:94px 1fr;gap:9px}.difference-row b{font-size:11px}.difference-row p{font-size:12px}.powers-grid{gap:16px}.powers-grid h3{font-size:20px}.powers-grid p{font-size:12px}.issue-index{grid-template-columns:1fr}.issue-jump:nth-child(odd){border-right:0}.issue-jump:nth-last-child(2){border-bottom:1px solid #e6e8e5}.issue-head{gap:9px}.issue-head h3{font-size:22px}.issue-head p{font-size:11px}.issue-toggle{font-size:0;padding:6px 11px}.issue-toggle .plus{font-size:21px}.comparison{grid-template-columns:1fr}.compare-side+.compare-side{border-left:0;border-top:1px solid #e1e5e2}.compare-side{padding:17px}.bar-row{grid-template-columns:93px 1fr 35px;gap:9px}.bar-row span{font-size:10px}.poll-title{display:block}.poll-title a{display:inline-block;margin-top:7px}.method-grid{grid-template-columns:1fr}.method-grid>div{border-right:0;border-bottom:1px solid #d8dede}.method-grid>div:last-child{border-bottom:0}.sources-list{grid-template-columns:1fr}.voting-section{padding:36px 22px}.footer-inner{padding:33px 22px;display:block}.footer p{margin:13px 0}.footer-inner>div{margin-top:17px}.section-heading-row{align-items:start}.readtime{margin-top:12px;white-space:nowrap}}
@media(max-width:390px){.brand-name{font-size:15px}.header-actions{gap:8px}.header-link{display:none}.hero h1{font-size:49px}.hero-cta .button{width:100%}.mini-profile{grid-template-columns:80px 1fr}.mini-profile h3{font-size:20px}.mini-profile p{font-size:11px}.section-heading-row{display:block}.readtime{display:block;margin:0 0 20px}.content-section h2{font-size:38px}}
@media print{@page{size:letter;margin:.6in}html{scroll-behavior:auto}body{background:white;color:#172938;font-size:10pt}.site-header{position:relative;height:auto;box-shadow:none}.header-inner{padding:10px}.header-actions,.reading-track,.sidebar,.hero-art,.hero-cta,.document-note,.issue-toggle,.issues-toolbar,.issue-index,.section-return,.voting-actions,.footer,.skip-link{display:none!important}.hero{background:white;color:#172938;border-bottom:2px solid #172938}.hero-inner{min-height:0;display:block;padding:20px 0}.hero h1{font-size:36pt;color:#172938}.hero h1 em{color:#172938}.hero-lead,.hero-meta,.hero-kicker{color:#172938}.wrap{padding:0}.body-grid{display:block}.content-section{padding:23px 0;border-bottom:1px solid #ccc;break-before:auto}.content-section h2{font-size:26pt}.quick-candidate-grid,.quick-bottom,.comparison{break-inside:avoid}.issue-detail[hidden]{display:block!important}.issue-head,.issue{break-inside:avoid}.source-section,.sources-list{font-size:8pt}.sources-list{grid-template-columns:1fr 1fr}.portrait{print-color-adjust:exact;-webkit-print-color-adjust:exact}.poll-card,.compare-side{break-inside:avoid}.voting-section{margin:0;padding:20px}a{color:#172938}.button{display:none}}

/* Lieutenant-governor subsection and mobile table of contents */
.nav-subitem{font-size:11px!important;padding-left:21px!important;color:#87969c!important}
.small-jump{margin:18px 0 6px;font-size:12px;font-weight:700}.small-jump a{color:#3d667a;text-decoration:none}.small-jump a:hover{text-decoration:underline}
.running-mates{scroll-margin-top:98px;border-top:1px solid #cbd4d5;margin-top:12px;padding-top:35px;margin-bottom:26px}
.subsection-kicker{font-size:10px;letter-spacing:.16em;font-weight:700;color:#9b8357;margin-bottom:12px}
.running-mates h3{font:400 32px/1.25 var(--serif);letter-spacing:-.035em;margin:0 0 15px}
.running-mates h3 em{font-weight:400;color:#9a8256}
.lg-intro{font-size:14px;line-height:1.8;color:#4f616b;max-width:730px;margin-bottom:24px}
.running-mates-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.lg-card{border:1px solid #d9dfdf;background:#fff;padding:23px 21px;display:flex;flex-direction:column;gap:12px}
.lg-card-top{display:flex;align-items:center;gap:13px;padding-bottom:12px;border-bottom:1px solid #e6eae7}
.lg-monogram{flex:0 0 48px;width:48px;height:48px;display:flex;align-items:center;justify-content:center;font:21px var(--serif);border-radius:50%}
.lg-dem{background:#e8eff4;color:#397091}.lg-rep{background:#f5e9e5;color:#a0534b}
.lg-card h4{font:400 24px/1.12 var(--serif);letter-spacing:-.035em;margin:6px 0 3px}
.lg-role{font-size:11px!important;color:#7a8789!important;margin:0!important;line-height:1.5!important}
.lg-card>p{font-size:13px;line-height:1.78;color:#596b72;margin:0}
.lg-card>a{font-size:11px;text-decoration:none;color:#386b87;font-weight:700;margin-top:auto;padding-top:6px}
.lg-card>a:hover{text-decoration:underline}
.mobile-toc{display:none}
@media(max-width:760px){
 .running-mates-grid{grid-template-columns:1fr}.running-mates h3{font-size:28px}.lg-card{padding:18px}
 .mobile-toc{display:block;margin-top:22px;border:1px solid #d9e0e0;background:#fff;font-size:13px}
 .mobile-toc summary{cursor:pointer;list-style:none;padding:13px 15px;display:flex;justify-content:space-between;font-weight:700;color:#253f4f}
 .mobile-toc summary::-webkit-details-marker{display:none}
 .mobile-toc nav{display:grid;padding:1px 15px 13px;gap:0}
 .mobile-toc nav a{display:block;border-top:1px solid #edf0f0;padding:9px 0;color:#475d69;text-decoration:none}
 .mobile-toc[open] summary span{transform:rotate(180deg)}
 .document-note{margin-top:12px}
}
@media print{.mobile-toc{display:none!important}.running-mates-grid{grid-template-columns:1fr 1fr}.lg-card{break-inside:avoid}}


/* Added landmark art and larger candidate portraits */
.hero{isolation:isolate}
.banner-landmark{position:absolute;left:50%;bottom:26px;transform:translateX(-50%);width:min(520px,95%);height:122px;opacity:.40;background-repeat:no-repeat;background-size:contain;background-position:center bottom;pointer-events:none}
.landmark-mansion{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%20640%20180%27%3E%0A%3Cg%20fill%3D%27none%27%20stroke%3D%27%2523d6c19a%27%20stroke-width%3D%274%27%20stroke-linejoin%3D%27round%27%20stroke-linecap%3D%27round%27%20opacity%3D%270.95%27%3E%0A%3Cpath%20d%3D%27M30%20150H610%27/%3E%0A%3Cpath%20d%3D%27M145%20150V88h350v62%27/%3E%0A%3Cpath%20d%3D%27M135%2088h370%27/%3E%0A%3Cpath%20d%3D%27M180%2088V65h280v23%27/%3E%0A%3Cpath%20d%3D%27M205%2065V50h230v15%27/%3E%0A%3Cpath%20d%3D%27M250%2050V34h140v16%27/%3E%0A%3Cpath%20d%3D%27M288%2034c0-18%2012-28%2032-28s32%2010%2032%2028%27/%3E%0A%3Cpath%20d%3D%27M170%20150V102%27/%3E%3Cpath%20d%3D%27M220%20150V102%27/%3E%3Cpath%20d%3D%27M270%20150V102%27/%3E%3Cpath%20d%3D%27M320%20150V102%27/%3E%3Cpath%20d%3D%27M370%20150V102%27/%3E%3Cpath%20d%3D%27M420%20150V102%27/%3E%3Cpath%20d%3D%27M470%20150V102%27/%3E%0A%3Cpath%20d%3D%27M75%20150V110h50v40%27/%3E%3Cpath%20d%3D%27M515%20150V110h50v40%27/%3E%0A%3Cpath%20d%3D%27M292%20150v-32h56v32%27/%3E%0A%3Cpath%20d%3D%27M210%20102h220%27/%3E%0A%3C/g%3E%3C/svg%3E")}
.landmark-capitol{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%20700%20180%27%3E%0A%3Cg%20fill%3D%27none%27%20stroke%3D%27%2523d6c19a%27%20stroke-width%3D%274%27%20stroke-linejoin%3D%27round%27%20stroke-linecap%3D%27round%27%20opacity%3D%270.95%27%3E%0A%3Cpath%20d%3D%27M35%20150H665%27/%3E%0A%3Cpath%20d%3D%27M120%20150V110h460v40%27/%3E%0A%3Cpath%20d%3D%27M135%20110h430%27/%3E%0A%3Cpath%20d%3D%27M180%20110V92h340v18%27/%3E%0A%3Cpath%20d%3D%27M220%2092V74h260v18%27/%3E%0A%3Cpath%20d%3D%27M272%2074V60h156v14%27/%3E%0A%3Cpath%20d%3D%27M316%2060V46h68v14%27/%3E%0A%3Cpath%20d%3D%27M350%2046c0-20%2012-34%2028-34%2016%200%2028%2014%2028%2034%27/%3E%0A%3Cpath%20d%3D%27M220%20150V118%27/%3E%3Cpath%20d%3D%27M268%20150V118%27/%3E%3Cpath%20d%3D%27M316%20150V118%27/%3E%3Cpath%20d%3D%27M364%20150V118%27/%3E%3Cpath%20d%3D%27M412%20150V118%27/%3E%3Cpath%20d%3D%27M460%20150V118%27/%3E%0A%3Cpath%20d%3D%27M90%20150V122h30v28%27/%3E%3Cpath%20d%3D%27M580%20150V122h30v28%27/%3E%0A%3Cpath%20d%3D%27M150%20110V96%27/%3E%3Cpath%20d%3D%27M550%20110V96%27/%3E%0A%3C/g%3E%3C/svg%3E")}
.bio{display:grid;grid-template-columns:150px minmax(0,1fr);gap:22px;align-items:start}
.bio-portrait{position:relative;aspect-ratio:3/4;border:1px solid #d8dfdf;overflow:hidden;background:#e1e6e8;min-height:200px;display:flex;align-items:center;justify-content:center}
.bio-portrait img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top}
.bio-content{min-width:0}
@media(max-width:1060px){.banner-landmark{width:min(430px,96%);height:105px;bottom:18px}}
@media(max-width:760px){.bio{grid-template-columns:88px minmax(0,1fr);gap:14px}.bio-portrait{min-height:116px}.banner-landmark{display:none}}
@media print{.banner-landmark{display:none!important}.bio{grid-template-columns:110px 1fr}}

/* Wordmark treatment — intentionally NOT an official Northline logo. */
.brand-lines{width:28px;min-width:28px;height:28px;display:inline-flex;flex-direction:column;justify-content:center;gap:5px}
.brand-lines i{display:block;width:25px;height:2px;background:#244055;border-radius:1px}
.brand-lines i:nth-child(2){width:25px}
.brand-lines i:nth-child(3){width:25px;background:#c4a66f}
@media(max-width:760px){.brand-lines{width:23px;min-width:23px;height:24px;gap:4px}.brand-lines i{width:22px;height:2px}.brand-lines i:nth-child(2),.brand-lines i:nth-child(3){width:22px}}

.banner-landmark.landmark-mansion{background-image:url("../assets/governors-residence.svg")!important;opacity:.68!important;background-size:contain!important;background-position:center bottom!important;}
.hero-art .state-shape{opacity:.12!important}
.header-actions{gap:20px}
@media(max-width:760px){.home-link{display:inline!important;font-size:11px!important}}

.banner-landmark{height:230px!important;bottom:15px!important;left:0!important;right:0!important;transform:none!important;width:100%!important}

/* Editorial reduction: fewer labels and effects, unchanged source material. */
.hero h1{font-size:clamp(53px,5.7vw,80px);letter-spacing:-.036em}
.hero-inner{min-height:425px;padding-top:60px;padding-bottom:60px}
.hero-kicker{letter-spacing:.12em}
.hero-art .topo-circle,.hero-art-note,.hero-art .state-shape{display:none!important}
.content-section h2{font-size:clamp(34px,3.8vw,51px);letter-spacing:-.025em}
.content-section h2 em{color:inherit;font-style:normal}
.section-marker span:last-child{letter-spacing:.10em}
.issue-head h3{font-size:25px}
.issue-head .eyebrow{letter-spacing:.055em;text-transform:none;font-size:11px;color:#6e7f88}
.issue-head p{display:none}
.issue-head{padding-top:20px;padding-bottom:20px}
.issues-toolbar button,.issue-toggle{border-radius:2px}
.quick-bottom-card{background:transparent}
.document-note{padding:10px 14px;border-color:#e4e3de;background:transparent}
.button{transition:none}
.button:hover{transform:none}
@media(max-width:760px){.hero h1{font-size:clamp(46px,10vw,58px)}.hero-inner{min-height:0;padding-top:51px;padding-bottom:48px}.content-section h2{font-size:39px}.issue-head h3{font-size:22px}}

/* Northline site revision: larger architectural art and direct navigation */
.hero-copy{position:relative;z-index:3}
.hero-art,.banner-landmark{pointer-events:none}
.hero-inner{grid-template-columns:minmax(0,1.04fr) minmax(310px,.96fr)!important}
.banner-landmark{height:325px!important;width:112%!important;max-width:none!important;bottom:-8px!important;left:-6%!important;opacity:.82!important;background-size:contain!important}
.hero h1{font-size:clamp(45px,4.5vw,67px)!important;max-width:670px;line-height:1.13}
.next-race-link{white-space:nowrap}
.lg-photo{height:80px!important;width:76px!important;flex:0 0 76px!important;border-radius:2px!important;overflow:hidden;position:relative;display:flex;justify-content:center;align-items:center;background:#e4e6e2;font:19px Georgia,serif;color:#667982}
.lg-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 23%}
@media(max-width:1060px){.banner-landmark{height:290px!important;bottom:-6px!important}}
@media(max-width:760px){.hero-inner{display:block!important}.banner-landmark{display:none!important}.hero h1{font-size:clamp(42px,9.3vw,58px)!important}.header-actions .next-race-link{display:inline-block!important;font-size:11px!important}.header-actions .home-link{display:none!important}.header-actions{gap:12px!important}}
@media(max-width:390px){.header-actions .next-race-link{font-size:10px!important}.header-actions .plain-button{display:none}}
@media print{.banner-landmark{display:none!important}}

/* Accessible full-card biography links, without breaking source or campaign links. */
.mini-profile { position:relative; }
.mini-profile .card-bio-link { position:absolute; inset:0; z-index:2; cursor:pointer; }
.mini-profile .mini-profile-copy a:not(.card-bio-link) { position:relative; z-index:3; }
.mini-profile:hover { border-color:#b99b66; background:#fcfbf8; }
.mini-profile:focus-within { outline:2px solid #b99b66; outline-offset:2px; }
.bio[id^="candidate-"] { scroll-margin-top:100px; }
.bio[id^="candidate-"]:target { background:linear-gradient(90deg,rgba(196,166,111,.12),transparent 65%); }
@media print { .card-bio-link { display:none!important; } }


/* Northline reading/navigation refinements · October 17, 2026 */
:root { --northline-text-muted:#536670; }
html {scroll-padding-top:94px}
.hero-lead,.section-intro,.bio p,.comparison p,.issue-detail p,.timeline p,.voting-section p {color:#465d69}
.hero .hero-lead {color:#dbe3e6}
.mini-profile p,.difference-row p,.powers-grid p,.lg-card>p,.context,.method-note p {color:#4d626d}
.sidebar-nav a span,.method-grid span,.sources-list small,.poll-title span {color:#526772}
.source-ref {min-width:22px;height:22px;border-radius:3px;font-size:11px;cursor:pointer;transition:background .12s,border-color .12s}
.source-ref:hover,.source-ref:focus-visible {background:#e9ddc5;border-color:#b79a68;color:#4f391b}
.source-ref:focus-visible,.issue-toggle:focus-visible,.issue-jump:focus-visible,.mini-print:focus-visible,.header-link:focus-visible,.mobile-guide-dock a:focus-visible,.mobile-guide-dock summary:focus-visible {outline:3px solid #b68b46;outline-offset:3px}
.issue-head:focus-within {background:#f5f3ee}
.issue-toggle:hover,.issues-toolbar button:hover {background:#ece6dc;border-color:#a78d63}
.issue-toggle,.issues-toolbar button,.issue-jump,.button,.header-link {transition:background-color .15s,border-color .15s,color .15s}
.issue-jump:hover,.issue-jump:focus-visible {background:#f1eee8}
.mini-profile {transition:background-color .15s,border-color .15s}
.section-return,.backlink {text-underline-offset:3px}
.hero-meta .updated-date {color:#e0d0af}
/* Footnotes open locally without scrolling away from the paragraph. */
.citation-popover[hidden] {display:none!important}
.citation-popover {position:fixed;z-index:350;width:min(350px,calc(100vw - 24px));background:#fffefa;border:1px solid #cbd3d1;box-shadow:0 12px 40px #152e4030;border-radius:6px;padding:18px 18px 17px;color:#213a4a;font-family:var(--sans);font-size:13px;line-height:1.5}
.citation-head {display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:10px}
.citation-heading {font-size:10px;font-weight:700;letter-spacing:.09em;color:#5c6a6c;text-transform:uppercase}
.citation-close {border:0;background:transparent;color:#314959;font-size:22px;line-height:1;min-width:30px;min-height:30px;cursor:pointer}
.citation-popover strong {display:block;font-size:15px;line-height:1.4;margin:0 0 6px;font-weight:700}
.citation-source-meta {display:block;color:#64727a;font-size:12px;line-height:1.5;margin-bottom:14px}
.citation-actions {display:flex;flex-wrap:wrap;align-items:center;gap:13px}
.citation-actions a {font-size:12px;font-weight:700;color:#23536e;text-decoration:underline;text-underline-offset:3px}
/* Sticky mobile controls only; desktop retains the left-hand contents. */
.mobile-guide-dock {display:none}
@media(max-width:760px){
 body {padding-bottom:76px}
 .mobile-toc {display:none!important}
 .mobile-guide-dock {display:flex;position:fixed;bottom:0;left:0;right:0;z-index:180;min-height:64px;align-items:stretch;justify-content:space-around;gap:0;background:#172e42;color:#f4efe6;box-shadow:0 -6px 24px #14283d26;padding:0 env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}
 .mobile-guide-dock>a,.dock-sections>summary {min-height:60px;min-width:130px;padding:16px 15px;display:flex;align-items:center;justify-content:center;gap:10px;color:#f5f1e9;text-decoration:none;font-size:13px;font-weight:700;cursor:pointer;white-space:nowrap}
 .mobile-guide-dock>a {border-right:1px solid #506171;flex:1}
 .dock-sections {position:static;flex:1}
 .dock-sections>summary {list-style:none}
 .dock-sections>summary::-webkit-details-marker {display:none}
 .dock-sections>summary::after {content:'☰';font-size:17px;line-height:1;color:#d7bf8e}
 .dock-sections[open]>summary::after {content:'×';font-size:23px}
 .dock-sections>nav {position:absolute;left:12px;right:12px;bottom:calc(65px + env(safe-area-inset-bottom));padding:8px 10px;background:#fffefa;color:#1b3548;border:1px solid #cbd4d5;box-shadow:0 -8px 28px #142c4038;max-height:min(70vh,500px);overflow-y:auto;border-radius:6px}
 .dock-sections>nav a {display:block;padding:11px 14px;text-decoration:none;font-size:13px;font-weight:600;color:#253e50;border-bottom:1px solid #e7e9e6;min-height:44px}
 .dock-sections>nav a:last-child {border-bottom:0}
 .dock-sections>nav a:focus-visible,.dock-sections>nav a:hover {background:#f4f0e7}
 .citation-popover {bottom:calc(76px + env(safe-area-inset-bottom))!important;left:12px!important;right:12px!important;top:auto!important;width:auto;max-height:min(68vh,450px);overflow-y:auto}
 .source-ref {min-width:24px;height:24px}
 .footer {margin-bottom:0}
}
@media(prefers-reduced-motion:reduce){html {scroll-behavior:auto!important}*,*:before,*:after {transition:none!important}}
@media print {.mobile-guide-dock,.citation-popover {display:none!important}body {padding-bottom:0!important}}
