@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap');
:root{--paper:#f5f1e8;--ink:#19252e;--red:#c9443f;--blue:#245d87;--orange:#ee8c34}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}.topline,header,nav,main,footer{max-width:1320px;margin:auto}.topline{display:flex;justify-content:space-between;align-items:center;padding:15px 0;border-bottom:1px solid #bbb7ae;font-size:10px;letter-spacing:1.4px}.weather{display:flex;gap:10px;align-items:center}.weather b{display:block;font-weight:500;letter-spacing:0;margin-top:3px}.weather-icon{font-size:25px}header{display:flex;justify-content:space-between;align-items:end;padding:27px 0 24px}.wordmark{font-size:51px;font-weight:700;line-height:.91;letter-spacing:-3px;color:var(--ink);text-decoration:none}.wordmark span{display:block;color:var(--red)}.wordmark i{color:var(--blue);font-style:normal;margin-left:7px}.motto{font-family:Georgia,serif;font-style:italic;font-size:20px;line-height:1.4}nav{display:flex;border-top:2px solid var(--ink);border-bottom:1px solid var(--ink);gap:32px;align-items:center;padding:17px 0}nav a{font-size:12px;font-weight:700;text-decoration:none;color:var(--ink)}nav a.active{color:var(--red)}nav .lantern-nav{margin-left:auto;color:#a54d13}main{min-height:60vh;padding:34px 0 70px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.8px;text-transform:uppercase;color:var(--red)}.hero{display:grid;grid-template-columns:1fr 1.3fr;gap:42px;align-items:center}.hero h1{font-family:'Libre Caslon Display',Georgia,serif;font-size:76px;font-weight:400;line-height:.99;letter-spacing:-2.5px;margin:19px 0}.hero h1 em{color:var(--red);font-weight:400}.hero p{font-size:15px;line-height:1.7;max-width:430px}.hero img{width:100%;display:block}.caption{display:flex;justify-content:space-between;margin-top:10px;font-size:9px;letter-spacing:1px}.button{display:inline-block;background:var(--ink);color:white;border:0;padding:13px 19px;text-decoration:none;font:600 12px 'DM Sans',sans-serif;cursor:pointer}.button.light{background:var(--paper);color:var(--ink)}.byline{font-size:10px;margin:23px 0 19px;letter-spacing:1px}.ticker{margin-top:30px;border-block:1px solid #bcb7ab;display:flex;gap:20px;padding:14px 0;font-size:11px}.ticker strong{color:var(--red);white-space:nowrap}.ticker span{border-left:1px solid #bcb7ab;padding-left:20px}.sectionhead{display:flex;justify-content:space-between;align-items:center;margin:33px 0 20px;border-bottom:2px solid var(--ink);padding-bottom:12px}.sectionhead h2{font:400 34px 'Libre Caslon Display',Georgia,serif;margin:0}.sectionhead a{font-size:11px;color:inherit}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.card{border-right:1px solid #c9c3b6;padding-right:28px}.card:last-child{border-right:0}.card h3{font:400 30px/1.1 'Libre Caslon Display',Georgia,serif;margin:13px 0}.card p{font-size:13px;line-height:1.65}.textlink{background:none;border:0;border-bottom:1px solid var(--ink);padding:0 0 5px;font-size:11px;font-weight:700;color:var(--ink);text-decoration:none;cursor:pointer}.red{color:var(--red)}.blue{color:var(--blue)}.lantern{background:#161a1b;color:#f5f1e8;display:grid;grid-template-columns:1fr 1.2fr;gap:60px;margin-top:40px;padding:40px}.lantern .eyebrow,.lantern h2{color:var(--orange)}.lantern h2{font:400 65px 'Libre Caslon Display',Georgia,serif;margin:8px 0}.lantern p{line-height:1.7;font-size:14px}.lantern .button{background:var(--orange);color:#161a1b}.page-title{font:400 66px 'Libre Caslon Display',Georgia,serif;margin:14px 0}.intro{font-size:16px;line-height:1.7;max-width:760px;margin-bottom:35px}.source-row{display:grid;grid-template-columns:180px 1fr 120px;gap:25px;padding:25px 0;border-bottom:1px solid #c9c3b6;align-items:start}.source-row h3{margin:0;font:400 27px 'Libre Caslon Display',Georgia,serif}.source-row p{margin:5px 0;font-size:13px;line-height:1.6}.source-row a{color:inherit;font-size:12px}.notice{padding:15px 20px;border-left:3px solid var(--orange);background:#eae3d7;font-size:12px;line-height:1.7;margin:25px 0}.cast{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.portrait{width:100%;background:#e5ded0}.cast h3{font:400 29px 'Libre Caslon Display',Georgia,serif;margin:15px 0}.cast p{font-size:12px;line-height:1.6}.cast blockquote{margin:15px 0;font:italic 19px/1.4 Georgia,serif}.tag{font-size:9px;letter-spacing:1.2px;font-weight:700}.filter{display:flex;gap:10px;margin:25px 0}.filter button{padding:9px 14px;border:1px solid #b6b1a5;background:transparent;cursor:pointer}.filter button.selected{background:var(--ink);color:white}.editor{margin-top:30px;background:#242728;padding:30px}.editor label{display:block;margin:15px 0 8px;font-size:12px}.editor input,.editor textarea{width:100%;padding:13px;background:#f5f1e8;border:1px solid #ddd;font:14px/1.6 Georgia,serif}.editor textarea{min-height:230px}.editor .button{margin:16px 8px 0 0}.editor small{display:block;margin-top:16px;color:#ccc}.draft-note{font-size:12px;color:var(--orange)}footer{border-top:2px solid var(--ink);padding:30px 0}.footbrand{font-weight:700;font-size:21px}footer p{font-size:11px;line-height:1.7;max-width:730px;color:#666}footer>div:last-child{display:flex;gap:26px;font-size:11px;margin-top:25px}footer a{color:inherit}footer span{margin-left:auto}dialog{max-width:730px;width:90%;background:var(--paper);border:1px solid #333;padding:45px}dialog::backdrop{background:#17232aba}.close{position:absolute;right:15px;top:10px;background:none;border:0;font-size:30px;cursor:pointer}dialog h2{font:400 45px/1.1 'Libre Caslon Display',Georgia,serif}dialog p{font:16px/1.8 Georgia,serif}a:focus-visible,button:focus-visible{outline:3px solid var(--orange);outline-offset:4px}
@media(max-width:1400px){.topline,header,nav,main,footer{margin-left:5%;margin-right:5%}}@media(max-width:800px){.topline>span:nth-child(2){display:none}.wordmark{font-size:39px}.motto{font-size:14px}nav{gap:20px;overflow:auto;white-space:nowrap}nav .lantern-nav{margin-left:0}.hero{grid-template-columns:1fr;gap:22px}.hero h1{font-size:59px}.cards{grid-template-columns:1fr}.card{border-right:0;border-bottom:1px solid #bcb7ab;padding:0 0 22px}.ticker{flex-wrap:wrap}.lantern{grid-template-columns:1fr;gap:15px;padding:26px}.cast{grid-template-columns:repeat(2,1fr)}.source-row{grid-template-columns:1fr;gap:9px}.page-title{font-size:49px}footer>div:last-child{flex-wrap:wrap}footer span{margin-left:0}}

nav{gap:22px}nav a{font-size:11px}.comparison-teaser{display:flex;align-items:center;gap:22px;padding:24px 0;border-bottom:1px solid #bcb7ab;text-decoration:none;color:var(--ink)}.comparison-teaser strong{font:400 31px 'Libre Caslon Display',Georgia,serif}.comparison-teaser>span:last-child{font-size:12px;margin-left:auto}.comparison-note{max-width:900px;border-left:3px solid var(--ink);padding:15px 22px;margin:20px 0 32px;background:#ebe5d9;font-size:12px;line-height:1.7}.comparison-note p{margin:7px 0 0}.compare-scroll{overflow:auto}.compare-grid{display:grid;grid-template-columns:1fr 1fr;min-width:610px;border:1px solid #c5beb1}.party-heading{padding:27px 30px;color:white}.party-heading h2{font:400 37px 'Libre Caslon Display',Georgia,serif;margin:10px 0}.party-heading a{color:white;font-size:11px}.republican{background:var(--red)}.democratic{background:var(--blue)}.platform-cell{padding:28px 30px;border-bottom:1px solid #c5beb1}.rep-cell{border-right:1px solid #c5beb1;background:#f0e5dd}.dem-cell{background:#e5ebeb}.platform-cell p{font:18px/1.55 Georgia,serif;max-width:470px;min-height:85px}.platform-ref{font-size:10px;color:inherit}.comparison-mobile{display:none;font-size:11px;color:#666}.analysis-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px 45px}.analysis-grid article{padding:15px 0;border-bottom:1px solid #c5beb1}.analysis-grid h3{font:400 34px 'Libre Caslon Display',Georgia,serif;margin:12px 0}.analysis-grid p{font-size:14px;line-height:1.8}.bonaparte-aside{background:var(--ink);color:var(--paper);padding:35px;margin-top:35px}.bonaparte-aside .eyebrow{color:var(--orange)}.bonaparte-aside blockquote{font:italic 27px/1.5 Georgia,serif;margin:20px 0}.bonaparte-aside p{font-size:11px;color:#bdbcb8}@media(max-width:1000px){nav{overflow:auto;white-space:nowrap}.comparison-teaser{flex-wrap:wrap}.comparison-teaser>span:last-child{margin:0}.analysis-grid{grid-template-columns:1fr}}@media(max-width:650px){.comparison-mobile{display:block}.platform-cell{padding:22px}.party-heading{padding:22px}.platform-cell p{font-size:16px}}
