.congress-prompt {margin-top:32px;padding-top:25px;border-top:1px solid #17272f45;}
.congress-prompt h3 {font:500 clamp(26px,3vw,37px)/1.13 var(--serif);letter-spacing:-.04em;margin:12px 0;}
.zip-entry label,#composer label,.district-choice label {display:block;font:600 14px var(--sans);margin:10px 0 7px;}
.zip-entry>div {display:flex;flex-wrap:wrap;align-items:center;gap:9px;}
.zip-entry input,#composer input,#composer textarea,.district-choice select {box-sizing:border-box;border:1px solid #72818b;border-radius:4px;padding:11px;color:var(--ink);background:white;font:16px/1.4 var(--sans);}
.zip-entry input {width:112px;letter-spacing:.08em;}
.contact-page {background:var(--paper);color:var(--ink);}
.contact-nav {width:100%;padding-inline:max(6%, calc((100% - 1280px)/2));background:var(--night);color:var(--ivory);}
.contact-intro {background:linear-gradient(100deg,#0a1c2bf5,#0c213bad),url('/dawn.webp') center 70%/cover;color:var(--ivory);padding:54px 0 38px;}
.contact-intro h1 {font-size:clamp(46px,6vw,88px);line-height:1.02;margin:16px 0 18px;letter-spacing:-.06em;}
.contact-intro h1 em {color:var(--gold);}
.contact-intro p {max-width:550px;}
.contact-intro .zip-entry {margin-top:19px;}
.contact-page #members,.contact-page #composer {padding:24px 0;}
.results-wrap {min-height:180px;padding:22px 0 42px;}
.results-wrap h2 {font-size:clamp(29px,4vw,46px);margin:6px 0 18px;}
.member-list {display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:12px;margin-top:18px;}
.office-card {padding:17px 20px;border-top:2px solid #b48431;background:#fffaf1;}
.office-card h3 {font:500 24px var(--serif);margin:8px 0 16px;}
.office-card p {margin:0;}
.office-card .office-role,.sources-line,.reply-note,#address-info,#copy-feedback,#draft-context {font-size:13px;}
.office-card button {font:600 14px var(--sans);background:transparent;color:var(--ink);border:0;border-bottom:1px solid;padding:6px 0;}
.office-card[data-selected=true] {border-top-color:var(--ink);background:#f4e7cc;}
.district-choice {padding:16px 0;border-top:1px solid #44545b55;}
.district-choice p {margin:0;}
.sources-line {margin-top:17px;color:#51616a;}
#composer {max-width:800px;border-top:1px solid #44545b55;scroll-margin-top:16px;}
#composer input,#composer textarea {width:100%;}#composer textarea {resize:vertical;}
#address-info,#draft-context,.reply-note {margin:12px 0;}
#composer .actions {margin:10px 0;gap:10px;}
.border-btn {background:transparent;color:var(--ink);border:1px solid #57656c;}
.contact-page footer {color:var(--ivory);}
[hidden] {display:none!important;}
@media(max-width:680px){.contact-nav>a:last-child{font-size:12px}.contact-intro{padding:38px 0 28px}.contact-intro h1 br:first-child{display:block}.zip-entry .button{font-size:13px;}.member-list{grid-template-columns:1fr}}
