footer[data-astro-cid-gcn2mc3v]{background:var(--charcoal);color:#fff9;padding:32px 24px;font-size:.8rem}.footer-inner[data-astro-cid-gcn2mc3v]{max-width:1280px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}.footer-inner[data-astro-cid-gcn2mc3v] a[data-astro-cid-gcn2mc3v]{color:#fff9;text-decoration:none}.footer-inner[data-astro-cid-gcn2mc3v] a[data-astro-cid-gcn2mc3v]:hover{color:var(--white)}.site-header[data-astro-cid-ctg3m53h]{background:var(--white);color:var(--text);padding:0 24px;position:sticky;top:0;z-index:4001;border-bottom:1px solid var(--border);box-shadow:0 2px 12px #0000000f}.header-inner[data-astro-cid-ctg3m53h]{max-width:1280px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:0;height:64px}.logo-group[data-astro-cid-ctg3m53h]{display:flex;align-items:center;gap:12px}.logo-group[data-astro-cid-ctg3m53h] a[data-astro-cid-ctg3m53h]{display:flex;align-items:center;text-decoration:none}.nav-logo-img[data-astro-cid-ctg3m53h]{height:44px;width:auto}.header-borough[data-astro-cid-ctg3m53h]{font-size:.75rem;text-transform:uppercase;letter-spacing:1px;color:#000;font-weight:500;text-decoration:none}nav[data-astro-cid-ctg3m53h]{display:flex;gap:4px;align-items:center;margin-right:18px}nav[data-astro-cid-ctg3m53h] a[data-astro-cid-ctg3m53h]{color:var(--text);text-decoration:none;font-size:.85rem;font-weight:500;padding:8px 14px;border-radius:4px;white-space:nowrap;display:flex;flex-direction:column;align-items:center}nav[data-astro-cid-ctg3m53h] a[data-astro-cid-ctg3m53h]:not(.cta-btn):after{content:attr(data-text);font-weight:700;height:0;overflow:hidden;visibility:hidden;pointer-events:none}nav[data-astro-cid-ctg3m53h] a[data-astro-cid-ctg3m53h]:hover{font-weight:700}nav[data-astro-cid-ctg3m53h] a[data-astro-cid-ctg3m53h].active{font-weight:700}nav[data-astro-cid-ctg3m53h] a[data-astro-cid-ctg3m53h].cta-btn{background:var(--watermelon);color:var(--white);font-weight:600;margin-left:18px;margin-right:-18px}nav[data-astro-cid-ctg3m53h] a[data-astro-cid-ctg3m53h].cta-btn:hover{background:var(--watermelon-dark)}.mobile-menu-btn[data-astro-cid-ctg3m53h]{display:none;background:none;border:none;color:var(--text);font-size:1.5rem;cursor:pointer}.mobile-close-btn[data-astro-cid-ctg3m53h]{display:none;position:absolute;top:0;right:0;background:none;border:none;color:var(--text);font-size:1.1rem;font-weight:300;line-height:1;cursor:pointer;padding:14px 16px}.menu-overlay[data-astro-cid-ctg3m53h]{display:none;position:fixed;inset:0;background:#0000004d;z-index:3999}.menu-overlay[data-astro-cid-ctg3m53h].active{display:block}@media(max-width:700px){nav[data-astro-cid-ctg3m53h]{display:none;position:absolute;top:64px;right:0;width:50%;flex-direction:column;background:var(--white);border:1px solid var(--border);border-radius:8px;box-shadow:0 4px 20px #0000001f;padding:20px 0 16px;z-index:4000;margin-right:0;align-items:stretch}nav[data-astro-cid-ctg3m53h] a[data-astro-cid-ctg3m53h]{display:block;padding:14px 24px;margin:0 0 0 16px;font-size:.95rem;border-radius:6px;text-align:left;width:fit-content}nav[data-astro-cid-ctg3m53h] a[data-astro-cid-ctg3m53h]:hover{background:none;color:var(--watermelon)}nav[data-astro-cid-ctg3m53h] a[data-astro-cid-ctg3m53h].cta-btn{margin:12px 24px;text-align:center;border-radius:6px;width:fit-content;align-self:center}nav[data-astro-cid-ctg3m53h] a[data-astro-cid-ctg3m53h].cta-btn:hover{color:var(--white)}.mobile-menu-btn[data-astro-cid-ctg3m53h],.mobile-close-btn[data-astro-cid-ctg3m53h]{display:block}}@font-face{font-family:Open Sauce Sans;src:url(/fonts/OpenSauceSansVF.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Open Sauce Sans;src:url(/fonts/OpenSauceSansVF-Italic.woff2) format("woff2");font-weight:100 900;font-style:italic;font-display:swap}@font-face{font-family:Open Sauce One;src:url(/fonts/OpenSauceOneVF.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Open Sauce One;src:url(/fonts/OpenSauceOneVF-Italic.woff2) format("woff2");font-weight:100 900;font-style:italic;font-display:swap}:root{--kale: #007A3D;--olive: #005a2d;--sage: #4d9966;--cream: #f5f0e8;--sand: #e8ddd0;--watermelon: #CE1126;--watermelon-dark: #a50e1e;--watermelon-light: #d94158;--white: #ffffff;--charcoal: #2a2a2a;--text: #333333;--text-light: #666666;--border: #ddd5c8;--heat-0: #f0ebe3;--heat-1: #f9ccd2;--heat-2: #f0949f;--heat-3: #e76272;--heat-4: #d93046;--heat-5: #CE1126;--heat-6: #a50e1e;--heat-7: #7a0a16;--heat-8: #51060e}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Open Sauce Sans,sans-serif;background:var(--cream);color:var(--text);line-height:1.6}.btn{display:inline-flex;align-items:center;gap:12px;padding:14px 28px;border-radius:4px;font-size:.95rem;font-weight:600;text-decoration:none;cursor:pointer;border:none;transition:background .2s,border-color .2s,color .2s;font-family:inherit}.btn-primary{background:var(--watermelon);color:var(--white)}.btn-primary:hover{background:var(--watermelon-dark)}.btn-outline{background:transparent;color:var(--white);border:2px solid var(--white)}.btn-outline:hover{border-color:var(--white);background:#ffffff1a;color:var(--white)}.section-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.2em;color:var(--watermelon);font-weight:600;margin-bottom:4px}.section-title{font-family:Open Sauce Sans,sans-serif;font-size:clamp(1.6rem,3.5vw,2.2rem);font-weight:800;color:var(--kale);margin-bottom:8px;letter-spacing:-.02em}.section-desc{color:var(--text-light);max-width:780px;margin-bottom:32px;line-height:1.6}.modal-overlay{display:none;position:fixed;inset:0;background:#0009;z-index:5000;justify-content:center;align-items:center;padding:24px}.modal-overlay.active{display:flex}.modal-box{background:var(--white);border-radius:16px;padding:32px;width:100%;max-width:440px;position:relative;box-shadow:0 20px 60px #0003;animation:modalIn .2s ease-out}@keyframes modalIn{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-box .detail-close{position:absolute;top:16px;right:16px;background:none;border:none;font-size:1.2rem;cursor:pointer;color:var(--text-light)}.form-field{margin-bottom:22px}.form-field label{display:block;font-size:.82rem;font-weight:600;margin-bottom:4px;color:var(--text)}.form-field .required{color:var(--watermelon)}.form-field input{width:100%;padding:10px 12px;border:1.5px solid var(--border);border-radius:8px;font-family:inherit;font-size:.9rem;background:var(--cream);transition:border-color .15s;box-sizing:border-box}.form-field input:focus{outline:none;border-color:var(--kale)}.form-field input.invalid{border-color:var(--watermelon)}.form-notice{font-size:.625rem;color:var(--text-light);line-height:1.5}.form-notice a{color:var(--kale)}.candidate-card{background:var(--white);border:1px solid var(--kale);border-radius:10px;padding:14px 18px;display:flex;align-items:center;gap:24px}.candidate-avatar{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--white);font-weight:700;font-size:.75rem;letter-spacing:.03em;flex-shrink:0}.candidate-avatar-logo{width:44px;height:44px;border-radius:4px;object-fit:contain;flex-shrink:0}.candidate-info{flex:1;min-width:0}.candidate-name{font-weight:700;font-size:.95rem;color:var(--text)}.candidate-party{font-size:.82rem;color:var(--text-light)}.pledge-badge{width:28px;height:28px;border-radius:50%;background:var(--kale);color:var(--white);display:flex;align-items:center;justify-content:center;font-size:.85rem;flex-shrink:0}
