:root{--ink:#111d2b;--blue:#183b67;--blue2:#0f2a4b;--paper:#f4f0e7;--cream:#fbf8f1;--red:#bb4438;--line:#d5cfc2;--muted:#626b73;--mono:ui-monospace,SFMono-Regular,Menlo,monospace}
*{box-sizing:border-box}
html{font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif;color:var(--ink);background:var(--paper)}
body{margin:0}
a{color:inherit}
button,input,select{font:inherit}
.site-header{height:78px;padding:0 clamp(22px,5vw,76px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:rgba(244,240,231,.96);position:relative;z-index:3}
.brand{display:flex;align-items:center;gap:11px;text-decoration:none;font-family:Georgia,serif;font-size:20px;font-weight:700}
.brand i{font-weight:400}
.brand-mark{display:grid;place-items:center;width:37px;height:37px;background:var(--blue);color:white;font:700 12px var(--mono);letter-spacing:.05em}
.site-header nav{display:flex;align-items:center;gap:28px}
.site-header nav a{text-decoration:none;font-size:14px;font-weight:650}
.nav-cta{border:1px solid var(--ink);padding:9px 14px}
.hero{min-height:630px;padding:80px clamp(24px,9vw,140px) 35px;position:relative;overflow:hidden}
.hero:after{content:"19";position:absolute;right:4vw;top:-80px;font:italic 620px/.9 Georgia,serif;color:rgba(24,59,103,.045);z-index:-1}
.eyebrow{text-transform:uppercase;letter-spacing:.16em;font:700 11px var(--mono);color:var(--red);margin-bottom:22px}
.hero h1,.page-head h1{font:400 clamp(58px,9vw,126px)/.89 Georgia,serif;letter-spacing:-.055em;margin:0;max-width:1050px}
.hero h1 em,.page-head h1 em{color:var(--blue);font-weight:400}
.hero-copy{font:22px/1.5 Georgia,serif;max-width:650px;margin:34px 0}
.search-box{display:flex;max-width:900px;background:white;border:1px solid var(--ink);box-shadow:7px 7px 0 var(--blue)}
.search-box input{flex:1;border:0;padding:22px 24px;min-width:0;background:white}
.search-box button,.filter-bar button,.auth-card button,.create-key button{border:0;background:var(--blue);color:white;padding:18px 24px;font-weight:750;cursor:pointer}
.source-strip{margin-top:65px;padding-top:20px;border-top:1px solid var(--line);display:flex;gap:18px;color:var(--muted);font:700 10px var(--mono);letter-spacing:.12em}
.principles{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);background:var(--cream)}
.principles article{padding:55px clamp(25px,4vw,65px);border-right:1px solid var(--line)}
.principles article:last-child{border:0}
.principles span{font:700 11px var(--mono);color:var(--red)}
.principles h2{font:400 30px/1.1 Georgia,serif}
.principles p{color:var(--muted);line-height:1.6}
.agent-band{background:var(--blue2);color:white;padding:70px clamp(24px,7vw,105px);display:grid;grid-template-columns:1fr 1fr auto;gap:55px;align-items:center}
.agent-band h2{font:400 40px/1.05 Georgia,serif;margin:0}
.eyebrow.light{color:#efaa9f}
.code-question{border-left:2px solid var(--red);padding:10px 0 10px 24px;font:20px/1.5 var(--mono)}
.code-question span{display:block;margin-top:12px;font-size:10px;letter-spacing:.15em;color:#aebed0}
.button-light{border:1px solid white;text-decoration:none;padding:14px 18px;font-weight:700}
.roadmap-note{padding:55px clamp(24px,9vw,140px);display:grid;grid-template-columns:1fr 2fr;gap:50px;font:19px/1.55 Georgia,serif}
.roadmap-note p{margin:0}
.page-head{padding:62px clamp(24px,7vw,105px) 45px}
.page-head h1{font-size:clamp(52px,7vw,92px)}
.page-head.compact{padding:0 0 35px}
.page-head.compact h1{font-size:64px}
.filter-bar{margin:0 clamp(24px,7vw,105px) 30px;border:1px solid var(--ink);display:grid;grid-template-columns:1fr auto auto auto;background:white}
.filter-bar input,.filter-bar select{border:0;border-right:1px solid var(--line);padding:16px}
.results-meta,.results{margin:0 clamp(24px,7vw,105px)}
.results-meta{padding:14px 0;color:var(--muted);font-size:13px}
.results{padding-bottom:60px}
.result-card{display:grid;grid-template-columns:280px 1fr;position:relative;border-top:1px solid var(--ink);padding:28px 0 35px;gap:45px}
.result-card:last-child{border-bottom:1px solid var(--ink)}
.result-person h2{font:400 28px Georgia,serif;margin:10px 0 5px}
.result-person p,.result-measure p{color:var(--muted);margin:0}
.position{display:inline-block;font:700 10px var(--mono);letter-spacing:.08em;text-transform:uppercase;padding:5px 7px;border:1px solid}
.position-yes{color:#286446}
.position-no{color:var(--red)}
.position-abstain{color:#8a651d}
.result-date{font:700 10px var(--mono);text-transform:uppercase;color:var(--muted)}
.result-measure h3{font:400 24px/1.25 Georgia,serif;margin:10px 0}
.source-links{display:flex;gap:20px;margin-top:18px;font-size:13px;font-weight:700}
.attribution{position:absolute;right:0;bottom:8px;font:10px var(--mono);color:var(--muted)}
.empty,.notice{margin:30px clamp(24px,7vw,105px) 80px;padding:45px;background:var(--cream);border:1px solid var(--line)}
.docs-shell{display:grid;grid-template-columns:250px minmax(0,760px);gap:80px;padding:65px clamp(24px,8vw,120px) 90px}
.docs-shell aside{display:flex;flex-direction:column;gap:5px}
.docs-shell aside a{padding:10px 12px;text-decoration:none;color:var(--muted);font-size:14px}
.docs-shell aside a.active{background:var(--blue);color:white}
.prose h1{font:400 58px/1 Georgia,serif;letter-spacing:-.035em;margin:0 0 25px}
.prose h2{font:400 30px Georgia,serif;margin:45px 0 12px}
.prose p{line-height:1.7}
.prose .lead{font:21px/1.55 Georgia,serif;color:var(--muted)}
.prose pre{padding:22px;overflow:auto;background:var(--blue2);color:#e8eef5;font:13px/1.6 var(--mono)}
.prose code{font-family:var(--mono)}
.callout{border-left:4px solid var(--red);background:var(--cream);padding:20px 24px;margin-top:40px;line-height:1.6}
.inline-button{display:inline-block;background:var(--blue);color:white;padding:12px 16px;text-decoration:none}
.standalone{max-width:800px;margin:75px auto;padding:0 25px}
.auth-card{max-width:560px;margin:80px auto;padding:50px;background:var(--cream);border:1px solid var(--ink);box-shadow:9px 9px 0 var(--blue)}
.auth-card h1{font:400 48px/1 Georgia,serif;margin:0 0 20px}
.auth-card p{line-height:1.6;color:var(--muted)}
.auth-card form,.create-key form{display:grid;gap:10px;margin:28px 0}
.auth-card label,.create-key label{font:700 11px var(--mono);text-transform:uppercase}
.auth-card input,.create-key input{padding:15px;border:1px solid var(--ink);background:white}
.auth-card .otp{font:32px var(--mono);letter-spacing:.2em;text-align:center}
.dashboard{padding:65px clamp(24px,8vw,120px) 90px}
.dashboard-grid{display:grid;grid-template-columns:2fr 1fr;gap:65px;border-top:1px solid var(--ink);padding-top:35px}
.dashboard h2{font:400 28px Georgia,serif}
.key-list article{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding:20px 0}
.key-list article>div{display:grid;gap:4px}
.key-list code,.secret-once code{font-family:var(--mono)}
.key-list small,.muted{color:var(--muted)}
.button-danger{border:1px solid var(--red);color:var(--red);background:transparent;padding:8px 12px}
.secret-once{background:#e7f0e9;border:1px solid #6d9275;padding:22px;margin-bottom:35px}
.secret-once code{display:block;margin-top:14px;padding:12px;background:white;overflow-wrap:anywhere}
footer{padding:35px clamp(24px,5vw,76px);display:flex;justify-content:space-between;border-top:1px solid var(--line);color:var(--muted);font-size:12px}
.person-hero{padding:72px clamp(24px,7vw,105px) 55px;display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:70px;align-items:end;border-bottom:1px solid var(--ink)}
.person-hero h1{font:400 clamp(58px,8vw,112px)/.88 Georgia,serif;letter-spacing:-.055em;margin:0;overflow-wrap:anywhere}
.person-id{font:13px var(--mono);color:var(--muted);margin:20px 0 0}
.machine-actions{background:var(--blue2);color:white;padding:24px;display:grid;gap:10px}
.machine-actions span{font:700 10px var(--mono);letter-spacing:.15em;text-transform:uppercase;color:#aebed0}
.machine-actions a{font-weight:700}
.machine-actions code{margin-top:8px;padding-top:14px;border-top:1px solid #526981;font:11px/1.5 var(--mono);overflow-wrap:anywhere}
.person-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:80px;padding:65px clamp(24px,7vw,105px) 90px}
.profile-section{margin-bottom:72px}
.section-heading{display:flex;gap:18px;align-items:baseline;border-bottom:1px solid var(--ink);padding-bottom:14px;margin-bottom:26px}
.section-heading span{font:700 10px var(--mono);color:var(--red)}
.section-heading h2{font:400 38px Georgia,serif;margin:0}
.mandate-card{display:grid;grid-template-columns:minmax(220px,1fr) minmax(280px,1.5fr);gap:35px;padding:22px 0;border-bottom:1px solid var(--line)}
.mandate-card p,.group-history p{color:var(--muted);font-size:13px;margin:7px 0 0}
.group-history{margin-bottom:16px}
.group-history span{font-weight:750}
.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);margin-bottom:28px}
.metric-grid div{padding:20px;border-right:1px solid var(--line)}
.metric-grid div:last-child{border:0}
.metric-grid strong{display:block;font:400 34px Georgia,serif}
.metric-grid span{font:700 9px var(--mono);text-transform:uppercase;color:var(--muted)}
.vote-list article{display:grid;grid-template-columns:100px 1fr;gap:18px;padding:17px 0;border-bottom:1px solid var(--line);align-items:start}
.vote-list article a{font:400 20px/1.25 Georgia,serif}
.vote-list article small{display:block;color:var(--muted);margin-top:7px}
.profile-aside{border-left:1px solid var(--line);padding-left:35px}
.profile-aside section{margin-bottom:52px}
.coverage-card{padding:18px 0;border-top:1px solid var(--line)}
.coverage-card>div{display:flex;justify-content:space-between;gap:15px}
.coverage-card>div span{font:700 9px var(--mono);text-transform:uppercase;color:var(--muted)}
.coverage-card p{line-height:1.5;margin-bottom:8px}
.coverage-card small,.release-note{color:var(--muted);line-height:1.5}
.coverage-complete{border-top-color:#286446}
.coverage-partial{border-top-color:#8a651d}
.coverage-unavailable{border-top-color:var(--red)}
.profile-empty{background:var(--cream);border-left:3px solid var(--line);padding:18px 20px;line-height:1.55;color:var(--muted)}
.release-note{font:11px/1.6 var(--mono);border-top:1px solid var(--line);padding-top:18px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
@media(max-width:800px){.site-header nav a:not(.nav-cta){display:none}
.hero{padding-top:55px}
.hero h1{font-size:57px}
.hero-copy{font-size:19px}
.search-box{display:grid}
.principles,.agent-band,.roadmap-note,.docs-shell,.dashboard-grid,.person-hero,.person-layout{grid-template-columns:1fr}
.principles article{border-right:0;border-bottom:1px solid var(--line)}
.agent-band{gap:35px}
.filter-bar{grid-template-columns:1fr}
.filter-bar input,.filter-bar select{border-right:0;border-bottom:1px solid var(--line)}
.result-card{grid-template-columns:1fr;gap:25px}
.attribution{position:static}
.docs-shell{gap:35px}
.docs-shell aside{display:none}
.prose h1{font-size:44px}
.auth-card{margin:35px 20px;padding:30px}
footer{display:grid;gap:10px}
.source-strip{flex-wrap:wrap}
.person-hero{gap:35px;padding-top:50px}
.person-layout{gap:45px}
.profile-aside{border-left:0;border-top:1px solid var(--ink);padding:35px 0 0}
.mandate-card{grid-template-columns:1fr}
.metric-grid{grid-template-columns:repeat(2,1fr)}
.metric-grid div:nth-child(2){border-right:0}
.metric-grid div:nth-child(-n+2){border-bottom:1px solid var(--line)}
}
