/* Government Explained: one shared civic palette across all three branches. */
:root{--red:#b43440;--navy:#142d50;--white:#fff}
.masthead{border-top:0;position:relative}
.masthead:before{content:"";display:block;height:6px;background:linear-gradient(90deg,var(--red) 0 33.333%,#fff 33.333% 66.666%,var(--navy) 66.666% 100%)}
.top{padding-top:20px;padding-bottom:20px}
.brand{gap:13px}.brand strong{font-size:28px;color:var(--navy)}.brand small{font-size:10px;letter-spacing:.12em}.logo-mark{display:block;flex-shrink:0;width:58px;height:58px}
.topnav .vote-link{background:var(--red);border-color:var(--red);color:white}.topnav .vote-link:hover{background:#922935}
.sidebar a[aria-current=page]{border-left:3px solid var(--red);padding-left:8px}.sidebar a.indent[aria-current=page]{padding-left:17px}
.eyebrow{color:#52627a}.tag{border-color:#bdccdf;background:#f4f7fc}
.header-art{margin:0 0 28px;border:1px solid #d6dfeb;background:#edf3f9;overflow:hidden}
.header-art img{display:block;width:100%;height:auto;aspect-ratio:3/1;object-fit:contain}
.header-art figcaption{padding:9px 15px;font-size:11px;letter-spacing:.04em;color:#52627a;background:#fff;border-top:1px solid #d6dfeb}
body:has(.header-art) h1{font-size:clamp(2rem,3.3vw,2.8rem)}
body:has(.header-art) .intro{font-size:17px;max-width:790px}
.inner-ribbon{width:65px;height:3px;background:var(--red);margin:-7px 0 25px}
.branch{border-top:3px solid var(--navy);position:relative;background:#fff}
.branch-top{display:flex;align-items:center;gap:12px;margin-bottom:12px}.branch-top img{width:54px;height:54px;flex-shrink:0}.branch .number{margin:0;color:#687a94;font-style:normal;font-family:inherit;font-size:10px;text-transform:uppercase;letter-spacing:.09em}
.branch h2{font-size:1.48rem}.branch .linklist a{font-weight:550}
.sectionline h2:before{content:"";display:inline-block;width:4px;height:23px;background:var(--red);margin-right:10px;vertical-align:-3px}
.callout{border-left-color:var(--navy)}.callout.gold{background:#fff3f2;border-left-color:var(--red)}.callout.gold .eyebrow{color:#922935}
.cycle-strip>div{border-top-color:var(--navy);position:relative}.cycle-strip>div:after{content:"";position:absolute;top:-3px;right:0;width:22%;height:3px;background:var(--red)}
.year-controls button[aria-pressed=true]{box-shadow:inset 0 -3px 0 var(--red)}
a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline-color:var(--red)}
.footer{border-top:2px solid var(--navy)}
.creator-ribbon{background:var(--navy);color:#fff;border-bottom:3px solid var(--red)}.creator-ribbon>div{max-width:1460px;margin:auto;padding:10px 40px;display:flex;justify-content:space-between;align-items:center;gap:8px 24px;font-size:12px}.creator-ribbon p{margin:0}.creator-ribbon a{color:#fff;text-decoration-color:#9eb5d0}.creator-ribbon a:hover{color:#dce9f8}.creator-ribbon p:first-child a{font-weight:700}.creator-ribbon p:last-child{color:#d2dfef}.creator-ribbon p:last-child span{margin:0 7px}.founder-intro{background:#fff;border:1px solid var(--line);border-left:4px solid var(--red);padding:28px 30px;margin:29px 0}.founder-label{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:12px}.founder-label .eyebrow{margin:0}.founder-label>span:last-child{font-size:11px;color:var(--muted)}.founder-intro h2{font-size:1.8rem}.founder-intro>p{max-width:850px;font-size:15px;line-height:1.75}.founder-intro .mission-position{font-size:13px;color:var(--navy);font-weight:600;background:var(--wash);padding:13px 16px;margin:20px 0 16px}.founder-intro>a{font-size:13px}.founder-letter{padding:27px 30px;background:#fff;border:1px solid var(--line);border-left:4px solid var(--red);max-width:850px;margin:28px 0 38px}.founder-letter p{line-height:1.85}.founder-signature{font:1.4rem var(--serif);margin:27px 0 0!important}.founder-signature span{font:12px system-ui,sans-serif;color:var(--muted)}.mission-principles{margin:36px 0}.mission-principles>p{max-width:850px}.mission-principle-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:25px 0}.mission-principle-grid section{border-top:3px solid var(--navy);background:white;padding:22px}.mission-principle-grid h3{font:1.3rem var(--serif);margin-bottom:12px}.mission-principle-grid p{font-size:14px;color:var(--muted);margin:0}.learning-path{margin-top:38px}.learning-path ol{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:18px}.learning-path li{padding:22px;background:white;border:1px solid var(--line)}.learning-path h3{font:1.35rem var(--serif)}.learning-path li p{font-size:14px;color:var(--muted)}.learning-path a,.research-status{font-size:12px}.research-status{color:var(--muted)}.education-footer{max-width:1460px;margin:auto;border-top:1px solid var(--line);padding:24px 40px;background:#edf3f9;display:flex;justify-content:space-between;gap:15px 35px;align-items:center}.education-footer strong{font:1.3rem var(--serif)}.education-footer p{font-size:12px;color:var(--muted);max-width:650px;margin:7px 0 0}.education-footer>p{font-size:11px;text-align:right;min-width:270px}.education-footer a{color:var(--link)}.learning-basics{border:1px solid var(--line);border-left:3px solid #a7b9d1;padding:12px 16px;margin:20px 0 25px;background:white;font-size:13px}.learning-basics summary{color:var(--link);font-weight:600}.learning-basics dl{margin:17px 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.learning-basics dt{font-weight:700;margin-bottom:5px}.learning-basics dd{margin:0;color:var(--muted)}.learning-basics p{padding-top:14px;font-size:12px}
@media(max-width:760px){.creator-ribbon>div{padding:12px 20px;display:block;font-size:11px}.creator-ribbon p+p{margin-top:5px}.topnav{flex-wrap:wrap;row-gap:12px}.founder-intro,.founder-letter{padding:22px 20px}.founder-intro h2{font-size:1.6rem}.founder-intro>p{font-size:14px}.founder-label{display:block}.founder-label>span:last-child{display:block;margin-top:7px}.education-footer{padding:23px 20px;display:block}.education-footer>p{text-align:left;min-width:0;margin-top:15px}.mission-principle-grid,.learning-path ol{grid-template-columns:1fr}.learning-basics dl{grid-template-columns:1fr;gap:13px}}
@media(max-width:760px){.brand strong{font-size:23px}.brand small{font-size:8px;letter-spacing:.1em}.logo-mark{width:49px;height:49px}.header-art{margin-bottom:23px}.header-art img{aspect-ratio:3/1;object-fit:contain}.header-art figcaption{font-size:10px}.branch-top{margin-bottom:10px}.branch h2{font-size:1.6rem}.topnav .vote-link{padding:7px 9px}.sidebar a[aria-current=page]{border-left:0;border-bottom:2px solid var(--red);padding-left:4px}.sidebar a.indent[aria-current=page]{padding-left:4px}}
