
:root{
  --ink:#022a27;
  --ink-2:#034058;
  --teal:#155272;
  --sage:#626753;
  --sage-dark:#2f3a2b;
  --stone:#f7f2ee;
  --stone-2:#e8ded8;
  --warm-gray:#b9afad;
  --rose:#d55b45;
  --white:#fffdf9;
  --shadow: 0 18px 50px rgba(2,42,39,.14);
  --radius: 22px;
  --max: 1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:linear-gradient(180deg,var(--stone) 0%,#fffaf5 42%,#f2ece7 100%);
  color:var(--ink);
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height:1.55;
}
a{color:var(--ink-2);text-decoration-thickness:2px;text-underline-offset:3px}
img{max-width:100%;display:block}
.skip-link{position:absolute;left:-999px;top:1rem;background:#fff;padding:.7rem 1rem;z-index:99;border-radius:.5rem}
.skip-link:focus{left:1rem}
.shell{width:min(var(--max),calc(100% - 40px));margin-inline:auto}
.narrow{max-width:880px}.wide{max-width:980px}.small{font-size:.9rem;opacity:.82}.lead{font-size:clamp(1.08rem,2vw,1.32rem);color:#31413d}.eyebrow{font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--rose);font-size:.78rem;margin:0 0 .9rem}.eyebrow.light{color:#ffd0c6}
.site-nav{position:sticky;top:0;z-index:50;background:rgba(247,242,238,.92);backdrop-filter:blur(14px);border-bottom:1px solid rgba(2,42,39,.1);display:flex;align-items:center;justify-content:space-between;padding:.85rem max(20px,calc((100% - var(--max))/2));gap:1rem}
.brand{display:flex;align-items:center;gap:.75rem;text-decoration:none;color:var(--ink)}
.brand small{display:block;font-weight:600;color:#5d6864;font-size:.78rem;line-height:1.1}.brand-mark{display:grid;place-items:center;width:46px;height:46px;border-radius:15px;background:var(--ink);color:var(--white);font-weight:900;box-shadow:0 9px 20px rgba(2,42,39,.2)}
.nav-links{display:flex;gap:.25rem;align-items:center}.nav-links a{text-decoration:none;font-weight:750;color:var(--ink);padding:.65rem .85rem;border-radius:999px}.nav-links a:hover,.nav-links a:focus{background:#fff;color:var(--teal)}.nav-toggle{display:none;border:1px solid rgba(2,42,39,.2);background:#fff;border-radius:999px;padding:.65rem 1rem;font-weight:800;color:var(--ink)}
.hero{display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:3rem;padding:clamp(3rem,7vw,6.5rem) 0 2.5rem}.hero-copy h1,.page-hero h1{font-size:clamp(2.5rem,6vw,5.6rem);line-height:.93;letter-spacing:-.055em;margin:0}.tagline{font-size:clamp(1.45rem,3vw,2.3rem);font-weight:850;color:var(--sage-dark);margin:1.25rem 0 .9rem}.hero-copy .lead{max-width:680px}.hero-media{position:relative}.hero-media:before{content:"";position:absolute;inset:7% -4% -4% 10%;background:var(--sage);border-radius:36px;transform:rotate(2.5deg);z-index:-1}.hero-media img{border-radius:36px;box-shadow:var(--shadow);aspect-ratio:4/5;object-fit:cover;object-position:center 19%}
.cta-row{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.7rem}.button{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;border-radius:999px;padding:.9rem 1.25rem;font-weight:850;text-decoration:none;border:2px solid transparent;cursor:pointer;font:inherit}.button.primary{background:var(--ink);color:var(--white);box-shadow:0 11px 24px rgba(2,42,39,.25)}.button.secondary{background:var(--rose);color:#fff}.button.ghost{background:#fff;color:var(--ink);border-color:rgba(2,42,39,.15)}.button:hover{transform:translateY(-1px)}
.intro-band{background:var(--ink);color:var(--white);padding:4rem 0;margin:0 0 4rem}.split{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start}.split h2{font-size:clamp(2rem,4vw,3.7rem);line-height:1;letter-spacing:-.04em;margin:0}.split p{font-size:1.18rem;color:#edf2ee;margin:0}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:5rem}.card-grid article,.vote-grid article,.priority-list article,.dates-card,.donate-panel{background:rgba(255,253,249,.92);border:1px solid rgba(2,42,39,.1);border-radius:var(--radius);padding:1.45rem;box-shadow:0 10px 30px rgba(2,42,39,.08)}.card-grid h3,.vote-grid h2,.priority-list h2{margin-top:0;color:var(--ink-2)}
.page-hero{padding:clamp(3rem,6vw,5.5rem) 0 2rem}.page-hero h1{font-size:clamp(2.15rem,5vw,4.5rem)}.two-column{display:grid;grid-template-columns:.88fr 1.12fr;gap:3rem;align-items:start;margin-bottom:4rem}.portrait-card{position:sticky;top:6rem}.portrait-card img{border-radius:30px;box-shadow:var(--shadow);aspect-ratio:4/5;object-fit:cover;object-position:center 18%}.prose h2{font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.05;letter-spacing:-.03em;margin:0 0 1rem}.prose p{font-size:1.08rem;color:#32433f}.statement-band{background:linear-gradient(135deg,var(--sage-dark),var(--ink));color:var(--white);padding:4rem 0}.statement-band .prose p{color:#f2f7f2}.statement-band .prose h2{color:#fff}
.priority-list{display:grid;gap:1rem;margin-bottom:5rem}.priority-list article{padding:clamp(1.4rem,3vw,2.25rem);border-left:8px solid var(--sage)}.priority-list article:nth-child(odd){border-left-color:var(--teal)}.priority-list p{max-width:96ch;color:#364743}.donate-layout{display:grid;grid-template-columns:1fr 320px;gap:1.25rem;margin-bottom:2rem}.donate-panel{padding:clamp(1.5rem,3vw,2.3rem)}.etransfer{margin-bottom:5rem;background:rgba(255,253,249,.7);border-radius:var(--radius);padding:1.5rem}.vote-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:2rem}.dates-card{margin-bottom:5rem}.timeline{display:grid;gap:.75rem}.timeline div{display:grid;grid-template-columns:260px 1fr;gap:1rem;padding:.9rem 0;border-bottom:1px solid rgba(2,42,39,.1)}.timeline div:last-child{border-bottom:0}.timeline time{font-weight:900;color:var(--ink-2)}.source-list ul{padding-left:1.2rem}.source-list li{margin:.55rem 0}
.site-footer{background:var(--ink);color:var(--white);padding:3rem 0;margin-top:2rem}.footer-inner{width:min(var(--max),calc(100% - 40px));margin-inline:auto;display:flex;justify-content:space-between;gap:2rem}.footer-inner h2{margin:0}.footer-links{display:grid;gap:.55rem;align-content:start}.site-footer a{color:#fff}.site-footer p{color:#eaf1ec;margin:.4rem 0}

.join-campaign-section{margin-bottom:1.25rem}
.join-campaign-card,.direct-contact-card,.privacy-note-card{background:rgba(255,253,249,.92);border:1px solid rgba(2,42,39,.1);border-radius:var(--radius);padding:clamp(1.45rem,3vw,2.35rem);box-shadow:0 10px 30px rgba(2,42,39,.08)}
.join-campaign-card h2,.direct-contact-card h2,.privacy-note-card h2{font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.05;letter-spacing:-.03em;margin:0 0 1rem;color:var(--ink-2)}
.join-campaign-card p,.direct-contact-card p,.privacy-note-card p{font-size:1.08rem;color:#32433f}
.isolated-form-container{margin:1.35rem auto 0;max-width:820px;background:transparent;border:0;border-radius:18px;padding:0;overflow:visible}
.cakemail-form-frame{display:block;width:100%;height:720px;min-height:480px;border:0;background:transparent;border-radius:18px;overflow:hidden}
.direct-contact-card{margin-bottom:1.25rem}.privacy-note-card{margin-bottom:5rem}

@media(max-width:900px){.nav-toggle{display:block}.nav-links{position:absolute;left:20px;right:20px;top:74px;display:none;flex-direction:column;background:#fff;border:1px solid rgba(2,42,39,.1);box-shadow:var(--shadow);padding:.8rem;border-radius:20px}.nav-links.open{display:flex}.nav-links a{width:100%}.hero,.two-column,.split,.donate-layout{grid-template-columns:1fr}.hero{padding-top:2.5rem}.card-grid,.vote-grid{grid-template-columns:1fr}.portrait-card{position:relative;top:auto}.footer-inner{flex-direction:column}.timeline div{grid-template-columns:1fr;gap:.2rem}.hero-media img{max-height:720px;width:100%}}
@media(max-width:560px){.shell{width:min(var(--max),calc(100% - 28px))}.site-nav{padding:.7rem 14px}.brand small{display:none}.brand-mark{width:40px;height:40px}.cta-row .button{width:100%}.hero-copy h1,.page-hero h1{letter-spacing:-.04em}.page-hero{padding-top:2.4rem}}

.success-panel {
  max-width: 780px;
  margin-inline: auto;
}

.success-panel .button-row {
  margin-top: 1.5rem;
}


@media(max-width:640px){.isolated-form-container{max-width:100%}.cakemail-form-frame{height:760px;min-height:520px}}
