:root{--cream:#f7eedb;--navy:#142a3d;--red:#b52e29;--gold:#d8a945;--muted:#4e5b62;--line:#c9bea7;--paper:#fffaf0}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{margin:0;background:var(--cream);color:var(--navy);font-family:Arial,Helvetica,sans-serif;line-height:1.65}a{color:inherit;text-underline-offset:4px}a:hover{color:var(--red)}button,input,textarea,select{font:inherit}button,a,input,textarea,select{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--red);outline-offset:4px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;line-height:1.08}h1{font-size:clamp(3rem,7.8vw,7.8rem);letter-spacing:-.065em;margin-bottom:1.5rem}h2{font-size:clamp(2rem,4vw,3.7rem);letter-spacing:-.04em}h3{font-size:1.6rem}p{max-width:72ch}img{max-width:100%;display:block}.wrap{width:min(1280px,calc(100% - 80px));margin:auto}.skip{position:absolute;top:-100px;left:12px;background:white;padding:12px;z-index:10}.skip:focus{top:10px}.topline{background:var(--navy);color:var(--cream);text-align:center;padding:8px 16px;font-size:.68rem;font-weight:bold;letter-spacing:.2em;text-transform:uppercase}.nav{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:23px 0;border-bottom:1px solid var(--navy)}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;font-weight:900;line-height:1.05;font-size:.85rem;letter-spacing:.08em}.brand img{width:38px}.nav-links{display:flex;align-items:center;gap:27px;font-size:.85rem;font-weight:bold}.nav-links a{text-decoration:none}.nav-links a[aria-current=page]{text-decoration:underline;text-decoration-color:var(--red);text-decoration-thickness:3px}.menu{display:none}.button,button{display:inline-flex;justify-content:center;align-items:center;gap:12px;background:var(--red);color:var(--paper);border:1px solid var(--red);padding:14px 24px;font-size:.9rem;font-weight:bold;text-decoration:none;cursor:pointer;border-radius:0}.button:hover,button:hover{background:var(--navy);color:var(--paper);border-color:var(--navy)}.button.alt{background:transparent;color:var(--navy);border-color:var(--navy)}button:disabled{opacity:.6;cursor:wait}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.72rem;font-weight:bold;margin-bottom:20px;display:block}.red{color:var(--red)}.hero{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:30px;padding:60px 0 40px}.hero h1 span{display:block;color:var(--red)}.hero .intro{font-size:1.08rem;max-width:46ch}.hero-art{position:relative}.hero-art img{width:100%}.art-caption{text-align:center;font-size:.65rem;text-transform:uppercase;letter-spacing:.16em}.actions{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin:27px 0}.text-link{font-size:.85rem;font-weight:bold}.slogan{background:var(--red);color:var(--cream);padding:15px;text-align:center;font-weight:900;letter-spacing:.15em;font-size:clamp(.8rem,2vw,1.15rem)}.goal{display:grid;grid-template-columns:1.3fr 1fr;gap:30px;padding:32px 0;border-bottom:1px solid var(--navy);align-items:center}.goal strong{font-family:Georgia,serif;font-size:2rem;line-height:1.15;display:block}.goal .eyebrow{margin-bottom:9px}.goal p{margin:0;font-size:.85rem}.goal-status{padding-left:32px;border-left:1px solid var(--line)}.section{padding:80px 0}.section.tight{padding:42px 0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:30px}.section-head h2{margin:0;max-width:700px}.section-head p{max-width:37ch;margin:0}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.grid.four{grid-template-columns:repeat(4,1fr)}.card{padding:28px;border:1px solid var(--line);background:var(--paper)}.card p:last-child{margin-bottom:0}.card .number{display:block;color:var(--red);font-family:Georgia,serif;font-size:2rem;margin-bottom:25px}.card h3{font-size:1.5rem}.card p{font-size:.93rem}.dark{background:var(--navy);color:var(--cream)}.dark a:hover{color:var(--gold)}.dark .eyebrow{color:var(--gold)}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}.callout{border-left:4px solid var(--red);padding:12px 22px;background:#eee3cd}.poster{border:1px solid var(--gold);padding:36px;position:relative}.poster:before{content:'★ ★ ★';display:block;color:var(--gold);letter-spacing:.6em;margin-bottom:25px}.page-head{padding:65px 0 40px;border-bottom:1px solid var(--navy)}.page-head h1{font-size:clamp(3rem,6vw,5.5rem);max-width:1000px}.page-head p{font-size:1.13rem;max-width:65ch}.prose{max-width:820px}.prose h2{font-size:2.4rem;margin-top:45px}.prose li{margin-bottom:10px}.source{font-size:.8rem}.tags{font-size:.68rem;text-transform:uppercase;letter-spacing:.12em;color:var(--red);font-weight:bold}.matrix{display:grid;grid-template-columns:1fr 1fr;gap:20px}.matrix .card{border-top:4px solid var(--red)}.form-panel{background:var(--paper);border:1px solid var(--line);padding:34px}.form-panel h3{margin-bottom:12px}form{display:grid;gap:17px}label{display:block;font-weight:bold;font-size:.88rem}input:not([type=checkbox]),textarea,select{width:100%;background:#fffdf8;border:1px solid #7f827e;padding:11px;color:var(--navy);border-radius:0;margin-top:6px}textarea{min-height:140px;resize:vertical}input[type=checkbox]{width:19px;height:19px;accent-color:var(--red);flex-shrink:0;margin:4px 0 0}.check{display:flex;gap:12px;font-weight:normal;align-items:start}.check span{line-height:1.5}.row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.hint{font-size:.78rem;color:var(--muted);margin:0}.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.status{font-size:.88rem;font-weight:bold;margin:8px 0;overflow-wrap:anywhere}.status:empty{display:none}.status.error{color:#9a2420}.wall{margin-top:24px}.wall .card{overflow-wrap:anywhere}.wall .body{white-space:pre-wrap}.wall .byline{font-size:.8rem;color:var(--muted)}details{border-bottom:1px solid var(--line);padding:21px 0}summary{font-family:Georgia,serif;font-size:1.4rem;cursor:pointer}details p{margin:15px 0 0}.diagram{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;counter-reset:step}.diagram>div{border:1px solid var(--gold);padding:25px}.diagram>div:before{counter-increment:step;content:'0' counter(step) ' →';display:block;color:var(--gold);margin-bottom:15px}.diagram h3{font-size:1.3rem}.diagram p{font-size:.9rem}.footer{padding:45px 0 25px;border-top:1px solid var(--navy)}.footer-top{display:flex;justify-content:space-between;gap:30px}.footer-links{display:flex;flex-wrap:wrap;gap:20px;font-size:.85rem}.footer .fine{border-top:1px solid var(--line);margin-top:35px;padding-top:20px;font-size:.72rem;display:flex;justify-content:space-between;gap:20px}.map{width:100%;margin:25px 0}.admin-actions{display:flex;gap:10px;flex-wrap:wrap}.admin-actions button{padding:9px 14px}.badge{display:inline-block;border:1px solid currentColor;padding:5px 12px;font-size:.7rem;text-transform:uppercase;letter-spacing:.09em;margin-bottom:20px}.history-list{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;font-size:.85rem}.history-list strong{display:block;color:var(--red)}[hidden]{display:none!important}@media(prefers-reduced-motion:no-preference){.hero-art{animation:arrive .7s ease-out}@keyframes arrive{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.button,button{transition:background .15s}}@media(max-width:1000px){.wrap{width:calc(100% - 48px)}.nav-links{gap:15px}.grid.four{grid-template-columns:1fr 1fr}.hero{gap:0}.split{gap:35px}.history-list{grid-template-columns:1fr 1fr}}@media(max-width:760px){.wrap{width:calc(100% - 36px)}.nav{flex-wrap:wrap;gap:18px;padding:18px 0}.menu{display:inline-flex;padding:8px 12px;background:transparent;color:var(--navy);border-color:var(--navy)}.nav-links{width:100%;flex-wrap:wrap;gap:20px;padding:10px 0}.js .nav-links{display:none}.js .nav-links.open{display:flex}.hero{grid-template-columns:1fr;padding:38px 0 25px}.hero h1{font-size:clamp(3.6rem,12vw,6rem)}.hero-art{max-width:440px;margin:auto}.hero .intro{max-width:58ch}.goal{grid-template-columns:1fr;gap:20px}.goal-status{border-left:0;padding-left:0;border-top:1px solid var(--line);padding-top:20px}.section{padding:48px 0}.section-head,.footer-top,.footer .fine{display:block}.section-head p{margin-top:20px}.grid,.split,.matrix,.diagram{grid-template-columns:1fr}.grid.four{grid-template-columns:1fr 1fr}.footer-links{margin-top:25px}.page-head{padding:40px 0 25px}.form-panel{padding:23px}.hero-art img{max-height:330px}.topline{font-size:.58rem;letter-spacing:.12em}.poster{padding:25px}}@media(max-width:380px){.grid.four,.row,.history-list{grid-template-columns:1fr}.button,button{padding:13px 18px}.hero h1{font-size:3.3rem}.card{padding:23px}.goal strong{font-size:1.7rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.goal .inline{display:inline;font:inherit;font-weight:bold}

/* RIGHT TO RESEARCH — 2026 campaign art direction: bold editorial Americana */
:root{--navy:#091d37;--red:#b31e2a;--gold:#e8b958;--cream:#f9f1df;--paper:#fffaf0}
body{background:#f8f0dd;color:#0c2440}
.topline{background:#a51926;color:#fff8e4;padding:12px 16px;font-size:.69rem;letter-spacing:.3em;border-bottom:3px solid #e6bd70}
header.wrap{position:relative;z-index:4}
.nav{border-bottom:2px solid #102747;padding:19px 0}
.brand{font-family:Georgia,'Times New Roman',serif;font-size:1rem;letter-spacing:.04em}
.brand img{width:48px}
.nav-links a{font-weight:800}
.button,button{background:#bc2533;border-color:#bc2533;box-shadow:5px 5px 0 #d3ac61;letter-spacing:.035em;transition:transform .18s,box-shadow .18s,background .18s}
.button:hover,button:hover{transform:translate(-2px,-2px);box-shadow:7px 7px 0 #d3ac61;background:#092643;border-color:#092643}
.hero{grid-template-columns:1.12fr .88fr;min-height:580px;gap:0;align-items:center;padding:55px 0 65px}
.hero h1{font-size:clamp(4rem,8.8vw,8.4rem);line-height:.93;letter-spacing:-.085em;text-transform:uppercase;filter:drop-shadow(1px 2px 0 #e7d5b2)}
.hero h1 span{color:#ba202b}
.hero h1 .hero-stand{display:block;margin-top:26px;font:900 clamp(1rem,1.65vw,1.45rem)/1.3 Arial,Helvetica,sans-serif;letter-spacing:.19em;color:#0b2847;background:linear-gradient(90deg,#e5bd70 0,#e5bd70 83%,transparent 83%);padding:12px 15px;width:max-content;max-width:100%;filter:none}
.hero .intro{font-size:clamp(1.02rem,1.5vw,1.22rem);max-width:53ch;font-weight:500}
.hero .eyebrow{font-size:.74rem;font-weight:900;letter-spacing:.16em}
.hero-art{isolation:isolate;min-height:460px;display:grid;place-items:center;background:repeating-linear-gradient(180deg,#b12331 0 22px,#fff4df 22px 44px);border:12px solid #0c2b4c;outline:6px solid #e4b65e;outline-offset:-2px;box-shadow:14px 14px 0 #d6c29d;transform:rotate(-1.25deg);margin:14px 10px 18px 16px;overflow:hidden}
.hero-art:before{content:'★  ★  ★  ★  ★  ★  ★  ★';position:absolute;z-index:-1;inset:-30% 20% 32% -20%;background:#0a2d51;color:#f3d080;font:35px Georgia,serif;letter-spacing:18px;padding:32px 15px;transform:rotate(-18deg);line-height:2.4}
.hero-art img{width:min(97%,535px);filter:drop-shadow(8px 12px 0 rgba(8,21,42,.24));transition:transform .35s ease}
.hero-art:hover img{transform:scale(1.035) rotate(1deg)}
.hero-art .art-caption{position:absolute;bottom:6px;left:10px;right:10px;margin:0;background:#0b2746;color:#ffe4a2;padding:11px 5px;font-weight:900;letter-spacing:.13em}
.slogan{background:#0a294b;border-top:8px solid #b52b32;border-bottom:8px solid #b52b32;color:#fff5dc;font:900 clamp(.95rem,2.1vw,1.75rem)/1.4 Georgia,serif;letter-spacing:.12em;padding:20px}
.goal{position:relative;overflow:hidden;background:linear-gradient(135deg,#a41d2d 0%,#b52b35 49%,#891a2b 100%);border:8px double #f3d58c;border-radius:0;color:#fff4dd;box-shadow:12px 12px 0 #092947;grid-template-columns:1.4fr .6fr;align-items:center;gap:24px;padding:45px 48px;margin:48px 0 45px}
.goal:before{content:'★ ★ ★ ★ ★';position:absolute;right:22px;top:0;color:rgba(255,236,177,.14);font-size:6rem;line-height:1.3;letter-spacing:.08em;pointer-events:none}
.goal>div{position:relative;z-index:1}
.goal .eyebrow{color:#ffe49c;font-size:.76rem;letter-spacing:.22em;margin-bottom:14px}
.goal strong{color:#fff8e7;font-family:Georgia,'Times New Roman',serif;font-size:clamp(2.15rem,4.3vw,4.8rem);letter-spacing:-.045em;line-height:1.02;text-transform:uppercase;text-shadow:2px 3px 0 #651729}
.goal p{font-size:1.05rem;line-height:1.5;margin-top:16px;max-width:52ch}
.goal-status{border-left:3px solid #f0c976;padding:17px 5px 17px 31px;align-self:stretch;display:flex;flex-direction:column;justify-content:center}
.goal-status .status{color:#ffe2a2;font:900 1rem/1.4 Arial,sans-serif;letter-spacing:.1em}
.goal-status .inline{font-size:1.35rem;line-height:1.2;text-shadow:none}
.section-head h2,.page-head h1{font-family:Georgia,'Times New Roman',serif}
.grid.four .card{border-top:6px solid #b52a33;box-shadow:6px 6px 0 #e5d3b0}
.grid.four .card .number{font-weight:900}
.grid.four .card h3{font-size:clamp(1.2rem,1.65vw,1.7rem);line-height:1.1}
.dark{background:#0a203d;position:relative;overflow:hidden}
.dark:before{content:'★ ★ ★ ★ ★ ★ ★';position:absolute;right:-14%;top:20px;color:rgba(232,185,88,.06);font-size:7rem;letter-spacing:.12em;transform:rotate(-15deg)}
.dark .wrap{position:relative}
.dark .poster{border:4px solid #e1ad55;background:linear-gradient(145deg,rgba(255,250,231,.08),rgba(255,250,231,0));box-shadow:10px 10px 0 #b72c38}
.dark .poster h3{font-size:2.4rem;color:#f1c87d}
.declaration-item{display:block;font:900 clamp(.92rem,1.55vw,1.2rem)/1.6 Arial,sans-serif;letter-spacing:.09em;border-bottom:1px solid rgba(234,198,124,.28);padding:8px 0}
.campaign-callout{border-left:6px solid #c32d36;background:#f0dec0;box-shadow:5px 5px 0 #c5ae80}
.form-panel{border:2px solid #102a4b;box-shadow:9px 9px 0 #e5c281}
.form-panel button[type=submit]{font-weight:900}
.footer{background:#0a203d;color:#f8ead0;border-top:7px solid #bc2331}
.footer .fine{border-color:rgba(244,220,173,.28)}
.footer .hint{color:#e1ceb0}
@media(max-width:1000px){.goal{padding:30px 24px}.hero{min-height:0}.hero-art{min-height:350px}.hero h1{font-size:clamp(3.6rem,8.1vw,6.6rem)}}
@media(max-width:750px){.hero{gap:35px;padding:42px 0}.hero-art{margin:8px 0 20px;min-height:350px}.goal{grid-template-columns:1fr;gap:14px;padding:30px 23px;margin:32px 0;box-shadow:7px 7px 0 #092947}.goal-status{border-left:none;border-top:2px solid #f0c976;padding:15px 0 0}.goal strong{font-size:clamp(2.1rem,8vw,3.6rem)}.goal p{font-size:.96rem}.hero h1 .hero-stand{font-size:.78rem;letter-spacing:.09em}.grid.four .card{box-shadow:4px 4px 0 #e5d3b0}}
@media(max-width:410px){.hero h1{font-size:clamp(3rem,13.2vw,4.3rem)}.goal strong{font-size:2.05rem}.hero-art{min-height:275px}.slogan{letter-spacing:.05em}.topline{letter-spacing:.12em}.hero h1 .hero-stand{max-width:100%;white-space:normal}}
@media(prefers-reduced-motion:reduce){.hero-art img,.button,button{transition:none!important}.hero-art:hover img,.button:hover,button:hover{transform:none!important}}

/* Keep patriotic artwork at full contrast on the initial paint; avoid old entrance-opacity fade. */
.hero-art{animation:none!important;opacity:1!important}

/* Mobile is a single-column manifesto, never a clipped two-column hero. */
@media(max-width:750px){.hero{display:flex;flex-direction:column;align-items:stretch;gap:30px}.hero>div{min-width:0;width:100%}.hero-art{width:100%;min-width:0;min-height:320px;margin:5px 0 20px;transform:none}.hero-art img{max-width:100%}.hero h1{overflow-wrap:normal}.hero .intro{max-width:100%}.hero h1 .hero-stand{width:100%;background:#e5bd70}}
@media(max-width:410px){.hero-art{min-height:280px}.hero h1{font-size:clamp(2.85rem,13vw,4rem)}.hero .actions{align-items:flex-start}}
