:root{--red: #c8102e;--red-deep: #9e0c24;--red-soft: #f4e6e9;--black: #121212;--ink: #1c1c1c;--muted: #5a5a5a;--white: #ffffff;--cream: #f7f4f1;--green-mist: #e8efe6;--leaf: #3d5c45;--header-h: 4.5rem;--font-display: "Bebas Neue", sans-serif;--font-body: "Outfit", sans-serif;--ease: cubic-bezier(.22, 1, .36, 1);--shadow-soft: 0 18px 40px rgba(18, 18, 18, .12)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font-body);font-size:1.0625rem;line-height:1.65;color:var(--ink);background:radial-gradient(ellipse 80% 50% at 10% 0%,rgba(61,92,69,.08),transparent 55%),radial-gradient(ellipse 60% 40% at 100% 20%,rgba(200,16,46,.06),transparent 50%),var(--cream);-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}h1,h2,h3{line-height:1.05;margin:0 0 .6em}p{margin:0 0 1rem}.skip-link{position:absolute;left:-999px;top:0;background:var(--red);color:var(--white);padding:.75rem 1rem;z-index:1000}.skip-link:focus{left:0}.site-header{position:sticky;top:0;z-index:100;background:#f7f4f1eb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid rgba(18,18,18,.08)}.header-inner{max-width:1120px;margin:0 auto;padding:.85rem 1.25rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:var(--header-h)}.logo{display:flex;align-items:baseline;gap:.4rem;flex-wrap:wrap}.logo-elect,.hero-elect{font-family:var(--font-display);color:var(--red);font-weight:400;text-transform:uppercase;letter-spacing:.22em}.logo-elect{font-size:1.35rem;line-height:1}.logo-name{font-family:var(--font-display);font-size:1.55rem;letter-spacing:.04em;color:var(--black);text-transform:uppercase}.logo-name strong{color:var(--red);font-weight:400}.logo-office{font-size:.88rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);width:100%;margin-top:-.1rem}.site-nav{display:flex;align-items:center;gap:.35rem}.site-nav a{font-size:.8rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:.55rem .85rem;color:var(--black);transition:color .2s var(--ease),background .2s var(--ease)}.site-nav a:not(.btn-donate):hover{color:var(--red)}.nav-toggle{display:none;width:2.5rem;height:2.5rem;border:1px solid rgba(18,18,18,.15);background:var(--white);cursor:pointer;padding:0;flex-direction:column;justify-content:center;align-items:center;gap:5px}.nav-toggle span{display:block;width:1.15rem;height:2px;background:var(--black);transition:transform .25s var(--ease),opacity .2s}.nav-toggle[aria-expanded=true] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.nav-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.btn{display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-body);font-weight:700;font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;padding:.9rem 1.4rem;border:2px solid transparent;cursor:pointer;transition:transform .2s var(--ease),background .2s var(--ease),color .2s var(--ease),border-color .2s var(--ease)}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--red);color:var(--white);border-color:var(--red)}.btn-primary:hover{background:var(--red-deep);border-color:var(--red-deep)}.btn-secondary{background:transparent;color:var(--black);border-color:#12121247}.btn-secondary:hover{border-color:var(--red);color:var(--red)}.hero{overflow:hidden;background:linear-gradient(135deg,#1a1a1a,#121212 48%,#2a1518);color:var(--white)}.hero-inner{max-width:1120px;margin:0 auto;padding:2.5rem 1.25rem 3rem;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:2.5rem;align-items:center}.hero-media{position:relative;border:3px solid rgba(255,255,255,.12);box-shadow:var(--shadow-soft);overflow:hidden;max-height:520px;animation:rise-in .9s var(--ease) both}.hero-media:after{content:"";position:absolute;inset:auto 0 0 0;height:28%;background:linear-gradient(to top,rgba(18,18,18,.28),transparent);pointer-events:none}.hero-photo{width:100%;height:auto;max-height:520px;object-fit:cover;object-position:center top;display:block}.hero-content{animation:rise-in 1s var(--ease) .08s both}@keyframes rise-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.hero-elect{font-size:clamp(1.15rem,2.4vw,1.55rem);margin:0 0 .35rem;display:inline-block;line-height:1}.hero-name{margin:0;display:flex;flex-direction:column}.hero-first{font-family:var(--font-display);font-size:clamp(2.8rem,7vw,4.8rem);letter-spacing:.06em;text-transform:uppercase;line-height:.9;color:var(--white)}.hero-last{font-family:var(--font-display);font-size:clamp(4.2rem,12vw,7.5rem);letter-spacing:.02em;text-transform:uppercase;line-height:.85;color:var(--red)}.hero-office{display:grid;gap:.15rem;margin:1.25rem 0 1rem;padding:.85rem 1.15rem 1rem;background:var(--red);width:fit-content;max-width:100%;line-height:1}.hero-office-for{font-family:var(--font-body);font-size:.85rem;font-weight:700;letter-spacing:.28em;text-transform:uppercase;opacity:.9}.hero-office-role{font-family:var(--font-display);font-size:clamp(3rem,7vw,4.5rem);letter-spacing:.12em;text-transform:uppercase}.hero-office-of{font-family:var(--font-display);font-size:clamp(1.75rem,4vw,2.45rem);letter-spacing:.2em;text-transform:uppercase;color:#ffd0d7}.hero-tagline{font-size:clamp(1.1rem,2vw,1.35rem);font-weight:500;margin:0 0 1.5rem;max-width:24ch;color:#ffffffe6}.hero-tagline em{font-style:normal;color:#ffb3be;font-weight:700}.hero-actions{display:flex;flex-wrap:wrap;gap:.75rem}.hero-actions .btn-secondary{color:var(--white);border-color:#ffffff8c}.hero-actions .btn-secondary:hover{background:#ffffff1a;border-color:var(--white);color:var(--white)}.section-inner{max-width:1120px;margin:0 auto;padding:5rem 1.25rem}.eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--red);margin:0 0 .75rem}.eyebrow-light{color:#ffb3be}.about h2,.priorities h2,.contact h2{font-family:var(--font-display);font-size:clamp(2.6rem,6vw,4.2rem);letter-spacing:.03em;text-transform:uppercase;color:var(--black)}.lede{font-size:1.15rem;color:var(--muted);max-width:42ch}.about{background:linear-gradient(180deg,var(--cream) 0%,var(--green-mist) 100%)}.about-copy{max-width:40rem;margin-bottom:3rem}.palm-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;align-items:start}.palm-card{margin:0}.palm-card img{width:100%;height:auto;box-shadow:var(--shadow-soft);background:var(--white)}.bio-list{list-style:none;margin:2rem 0 0;padding:0;display:grid;gap:.85rem}.bio-list li{display:flex;align-items:center;gap:.85rem;font-weight:600;font-size:1.05rem}.bio-icon{flex-shrink:0;width:1.5rem;height:1.5rem;display:grid;place-items:center;background:var(--red);color:var(--white);border-radius:2px}.bio-icon svg{width:.85rem;height:.85rem}.priorities{background:linear-gradient(160deg,var(--black) 0%,#1f1f1f 55%,#2a1518 100%);color:var(--white)}.priorities h2{color:var(--white)}.priorities-layout{max-width:46rem}.priorities-header{max-width:36rem;margin-bottom:2.5rem}.priorities-intro{color:#ffffffb8;font-size:1.1rem;margin:0}.priority-list{list-style:none;margin:0;padding:0;display:grid;gap:0;border-top:1px solid rgba(255,255,255,.14)}.priority{display:grid;grid-template-columns:4.5rem 1fr;gap:1.25rem;padding:1.6rem 0;border-bottom:1px solid rgba(255,255,255,.14);opacity:0;transform:translateY(18px);transition:opacity .7s var(--ease),transform .7s var(--ease)}.priority.is-visible{opacity:1;transform:translateY(0)}.priority-num{font-family:var(--font-display);font-size:1.75rem;letter-spacing:.06em;color:var(--red);line-height:1;padding-top:.15rem}.priority h3{font-family:var(--font-display);font-size:clamp(1.5rem,3vw,2rem);letter-spacing:.04em;text-transform:uppercase;margin:0 0 .4rem;color:var(--white)}.priority p{margin:0;color:#ffffffc7;max-width:48ch}.slogan-band{background:var(--red);color:var(--white);overflow:hidden}.slogan-band-inner{max-width:1120px;margin:0 auto;padding:3rem 1.25rem;display:grid;grid-template-columns:minmax(140px,280px) 1fr;gap:2rem;align-items:center}.slogan-sign{width:100%;background:var(--white);padding:.5rem}.slogan-text{font-family:var(--font-display);font-size:clamp(2.4rem,7vw,5rem);letter-spacing:.03em;text-transform:uppercase;line-height:.95;margin:0}.slogan-text span{display:block;position:relative;width:fit-content}.slogan-text span:after{content:"";position:absolute;left:0;bottom:.05em;width:100%;height:.08em;background:var(--white);border-radius:100%;transform:scaleX(0);transform-origin:left;transition:transform 1s var(--ease)}.slogan-band.in-view .slogan-text span:after{transform:scaleX(1)}.contact{background:linear-gradient(180deg,var(--green-mist),var(--cream))}.contact-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:2.5rem;align-items:end}.contact-list{list-style:none;margin:0;padding:0;display:grid;gap:.75rem}.contact-list a{display:flex;flex-direction:column;gap:.15rem;padding:1rem 0;border-bottom:2px solid rgba(18,18,18,.1);transition:color .2s var(--ease),border-color .2s var(--ease)}.contact-list a:hover{color:var(--red);border-color:var(--red)}.contact-label{font-size:.7rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.contact-list a span:last-child{font-size:1.25rem;font-weight:600}.site-footer{background:var(--black);color:#ffffffbf;padding:2.5rem 1.25rem}.footer-inner{max-width:1120px;margin:0 auto;text-align:center}.footer-brand{display:flex;justify-content:center;align-items:baseline;flex-wrap:wrap;gap:.45rem;margin-bottom:1rem}.footer-brand .logo-elect{font-size:1rem;letter-spacing:.2em}.footer-name{font-family:var(--font-display);font-size:1.8rem;letter-spacing:.05em;text-transform:uppercase;color:var(--white)}.footer-office{width:100%;font-size:.75rem;letter-spacing:.16em;text-transform:uppercase;color:#ffb3be}.paid-for{font-size:.8rem;max-width:36rem;margin:0 auto .75rem;line-height:1.5}.copyright{font-size:.75rem;margin:0;opacity:.65}@media(max-width:900px){.hero-inner,.contact-grid,.slogan-band-inner{grid-template-columns:1fr}.hero-media,.hero-photo{max-height:440px}.slogan-sign{max-width:260px}}@media(max-width:560px){.palm-row{grid-template-columns:1fr}}@media(max-width:760px){.nav-toggle{display:flex}.site-nav{position:absolute;top:100%;left:0;right:0;display:none;flex-direction:column;align-items:stretch;gap:0;background:var(--cream);border-bottom:1px solid rgba(18,18,18,.1);padding:.5rem 1rem 1rem}.site-nav.is-open{display:flex}.site-nav a{padding:.9rem .5rem;border-bottom:1px solid rgba(18,18,18,.08)}.priority{grid-template-columns:3rem 1fr;gap:.75rem}.palm-row{gap:1rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-media,.hero-content,.priority{animation:none;opacity:1;transform:none;transition:none}}
