@import"https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300..800;1,300..800&family=Barlow:wght@400;500;600;700&display=swap";@font-face{font-family:Barqish;src:url(/fonts/Barqish.woff2) format("woff2"),url(/fonts/Barqish.woff) format("woff"),url(/fonts/Barqish.ttf) format("truetype"),url(/fonts/Barqish.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}:root{--navy: #191919;--navy-light: #3c2415;--navy-dark: #140a06;--red: #f0535c;--red-dark: #c73f4a;--gold: #00aed6;--gold-dark: #0087a6;--cream: #f7f2da;--white: #ffffff;--text-muted: rgba(25, 25, 25, .65);--text-body: #4a4033;--border-light: rgba(60, 36, 21, .15);--shadow-sm: 0 6px 18px rgba(60, 36, 21, .09);--shadow-md: 0 14px 40px rgba(25, 25, 25, .16);--shadow-lg: 0 18px 60px rgba(20, 10, 6, .22);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--transition: .2s ease}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{font-family:Open Sans,sans-serif;font-weight:400;background:var(--cream);color:var(--navy);overflow-x:hidden;line-height:1.6}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:Barlow,sans-serif}h1,h2,h3,h4,h5,h6{font-family:Open Sans,sans-serif;line-height:1.2}input,textarea,select{font-family:Barlow,sans-serif}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none}.display-font,.condensed-font{font-family:Open Sans,sans-serif}.eyebrow{font-family:Open Sans,sans-serif;font-weight:700;letter-spacing:3px;font-size:3rem;color:var(--red)}.eyebrow--gold{color:var(--gold)}.eyebrow--white{color:#fff9}.section-padding{padding:6rem 2rem}.container{max-width:1100px;margin:0 auto}.get-involved{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.donate-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3rem;align-items:center}.stack-two-col{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:3rem;align-items:center}.about-roots-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3rem;align-items:start}.voter-registration-card{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.results-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3.5rem;align-items:center}.policy-grid,.events-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.media-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.volunteer-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.donate-amount-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.donate-page-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4rem;align-items:start}.donate-widget-col{position:sticky;top:90px}.donate-icon-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;text-align:center}.events-field-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:3rem;align-items:center}.news-filter-bar{display:flex;justify-content:center;align-items:center;gap:.75rem;flex-wrap:wrap}.news-list-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.news-pagination{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.volunteer-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.footer-grid{display:grid;grid-template-columns:minmax(0,2fr) repeat(2,minmax(0,1fr));gap:3rem}.footer-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}@keyframes fadeUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideRight{0%{transform:translate(-20px);opacity:0}to{transform:translate(0);opacity:1}}.animate-fade-up{animation:fadeUp .8s ease forwards}.animate-fade-in{animation:fadeIn .6s ease forwards}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--cream)}::-webkit-scrollbar-thumb{background:var(--red);border-radius:3px}.hero-section{position:relative;min-height:90vh;overflow:hidden;background:var(--cream);display:flex;align-items:center;padding:4rem 2rem;--hero-image-left: 31%;--hero-bg-x: 0px;--hero-gradient-right: 30%;--hero-solid-stop: 45%;--hero-mid-stop: 60%;--hero-soft-stop: 80%;--hero-end-stop: 90%}.hero-section-content{position:relative;z-index:2;width:100%;max-width:1200px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:3rem;align-items:center}.hero-section-logo{display:flex;justify-content:center;align-items:center}.hero-section-logo img{display:block;margin:0 auto}.hero-section-image{position:absolute;right:0;bottom:0;left:0;top:0;left:var(--hero-image-left);z-index:0;background-image:url(/assets/rachel-card.jpg);background-size:cover;background-repeat:no-repeat;background-position:center center}.hero-section-gradient{position:absolute;right:0;bottom:0;left:0;top:0;right:var(--hero-gradient-right);z-index:1;pointer-events:none;background:var(--cream);mask-image:linear-gradient(to right,black 0%,black var(--hero-solid-stop),rgba(0,0,0,.85) var(--hero-mid-stop),rgba(0,0,0,.45) var(--hero-soft-stop),transparent var(--hero-end-stop));-webkit-mask-image:linear-gradient(to right,black 0%,black var(--hero-solid-stop),rgba(0,0,0,.85) var(--hero-mid-stop),rgba(0,0,0,.45) var(--hero-soft-stop),transparent var(--hero-end-stop))}.hero-signup-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:12px}.hero-input{padding:.9rem 1rem;border-radius:12px;border:2px solid rgba(25,25,25,.25);background:#ffffffd9;font-size:.95rem}.hero-input-full{grid-column:1 / -1}.hero-join-button{grid-column:1 / -1;background:linear-gradient(120deg,var(--gold),var(--gold-dark));border:none;color:#fff;border-radius:12px;font-family:Open Sans,sans-serif;font-weight:800;letter-spacing:2px;text-transform:uppercase;font-size:1rem;padding:.9rem 1rem}@media(max-width:1200px){.hero-section{--hero-image-left: 31%;--hero-bg-x: 0px;--hero-gradient-right: 24%;--hero-solid-stop: 42%;--hero-mid-stop: 56%;--hero-soft-stop: 74%;--hero-end-stop: 86%}}@media(max-width:992px){.hero-section{--hero-image-left: 31%;--hero-bg-x: 0px;--hero-gradient-right: 10%;--hero-solid-stop: 36%;--hero-mid-stop: 50%;--hero-soft-stop: 66%;--hero-end-stop: 78%}.get-involved,.policy-grid,.events-grid,.news-grid,.volunteer-card-grid,.news-list-grid,.donate-icon-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.donate-page-grid,.events-field-grid{grid-template-columns:minmax(0,1fr)}.donate-amount-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.donate-widget-col{position:static;top:auto}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:768px){.hero-section{flex-direction:column;align-items:stretch;justify-content:flex-start;min-height:auto;padding:0 1.25rem 3rem;--hero-bg-x: 0px}.hero-section-image{inset:0 0 auto 0;left:0;height:clamp(280px,46vh,420px);background-position:calc(50% + var(--hero-bg-x)) top}.hero-section-gradient{top:clamp(140px,22vh,220px);left:0;right:0;bottom:auto;height:clamp(180px,24vh,260px);background:linear-gradient(to bottom,rgba(247,242,218,0) 0%,rgba(247,242,218,.18) 18%,rgba(247,242,218,.45) 38%,rgba(247,242,218,.78) 66%,var(--cream) 100%);mask-image:none;-webkit-mask-image:none}.hero-section-content{grid-template-columns:1fr;gap:2rem;align-items:start;max-width:720px;padding-top:clamp(250px,40vh,360px)}.hero-section-logo{margin-top:-7vw}.hero-signup-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.get-involved,.donate-grid,.stack-two-col,.results-grid,.policy-grid,.events-grid,.media-feature-grid,.news-grid,.volunteer-form-grid,.footer-grid,.about-roots-grid,.donate-page-grid,.events-field-grid,.news-list-grid,.volunteer-card-grid,.donate-icon-grid{grid-template-columns:1fr}.voter-registration-card{flex-direction:column;align-items:flex-start}.donate-amount-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-bottom{flex-direction:column;align-items:flex-start}}@media(max-width:420px){.donate-amount-grid{grid-template-columns:1fr}}@media(max-width:540px){.hero-section{padding:0 1rem 2.5rem;--hero-bg-x: 0px}.hero-section-image{height:clamp(220px,50vw,320px)}.hero-section-gradient{top:130px;height:170px}.hero-section-content{padding-top:220px;gap:1.5rem}.hero-section-logo{margin-top:-10vw}.hero-signup-grid{grid-template-columns:1fr}}
