:root{--bg: #ffffff;--bg-alt: #f5f5f5;--fg: #0a0a0a;--fg-soft: #33333a;--fg-muted: #63636d;--accent: #e8231a;--accent-ink: #b91c1c;--accent-ink-dim: #991b1b;--line: #0a0a0a;--line-soft: #dcdce1;--radius: 0;--measure: 34rem;color-scheme:light}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{margin:0;background:var(--bg);color:var(--fg);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}::selection{background:#e8231a40}.skip-link{position:absolute;left:-9999px;top:0;background:var(--accent-ink);color:#fff;padding:.75rem 1rem;z-index:10}.skip-link:focus{left:0}:focus-visible{outline:2px solid var(--accent-ink);outline-offset:3px}.hero{border-bottom:2px solid var(--line);background:var(--bg)}.hero__inner{max-width:60rem;margin:0 auto;padding:clamp(3.5rem,11vw,7rem) 1.5rem clamp(3rem,8vw,5rem)}.hero__eyebrow{margin:0 0 1rem;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--accent-ink)}.hero__title{margin:0;font-size:clamp(3rem,12vw,6.5rem);line-height:.95;letter-spacing:-.02em;text-transform:uppercase;font-weight:800}.hero__strike{position:relative;white-space:nowrap}.hero__strike:after{content:"";position:absolute;left:-.02em;right:-.02em;top:52%;height:.08em;background:var(--accent);transform:rotate(-3deg)}.hero__lede{max-width:var(--measure);margin:1.75rem 0 0;font-size:1.15rem;line-height:1.55;color:var(--fg-soft)}.hero__actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2.5rem}.btn{font:inherit;font-weight:600;padding:.8rem 1.5rem;border-radius:var(--radius);border:2px solid transparent;cursor:pointer;transition:background-color .15s ease,border-color .15s ease}.btn--primary{background:var(--accent-ink);color:#fff}.btn--primary:hover:not(:disabled){background:var(--accent-ink-dim)}.btn--ghost{background:transparent;color:var(--fg);border-color:var(--line)}.btn--ghost:hover:not(:disabled){background:var(--fg);color:var(--bg)}.btn--small{padding:.45rem .9rem;font-size:.85rem}.btn:disabled{opacity:.5;cursor:not-allowed}.section{padding:clamp(3rem,8vw,5.5rem) 1.5rem}.section--alt{background:var(--bg-alt);border-block:1px solid var(--line)}.section__inner{max-width:60rem;margin:0 auto}.section__inner--narrow{max-width:44rem}.section__title{margin:0 0 .75rem;font-size:clamp(1.75rem,5vw,2.5rem);letter-spacing:-.02em;font-weight:700}.section__lede{margin:0 0 2.5rem;max-width:var(--measure);color:var(--fg-muted)}.steps{list-style:none;margin:0;padding:0;display:grid;gap:1.25rem;counter-reset:step}.step{display:grid;grid-template-columns:2.5rem 1fr;gap:1rem;align-items:start}.step__number{display:grid;place-items:center;width:2.5rem;height:2.5rem;border-radius:var(--radius);background:var(--accent-ink);color:#fff;font-weight:700}.step__title{margin:.35rem 0;font-size:1.05rem}.step__body{margin:0;color:var(--fg-soft)}.form{display:grid;gap:1.5rem;max-width:32rem}.field{display:grid;gap:.4rem}.field label{font-weight:600;font-size:.95rem}.field__optional{font-weight:400;color:var(--fg-muted);font-size:.85rem}.field input[type=text],.field input[type=email],.field textarea{font:inherit;color:var(--fg);background:var(--bg);border:2px solid var(--line);border-radius:var(--radius);padding:.7rem .85rem;width:100%;resize:vertical}.field input[type=file]{font-size:.9rem;color:var(--fg-muted)}.field__count{margin:0;font-size:.8rem;color:var(--fg-muted);text-align:right}.form__photo{display:grid;justify-items:start;gap:.6rem;margin-top:.75rem}.form__preview{max-height:15rem;width:auto;border-radius:var(--radius);border:2px solid var(--line)}.form__note{margin:0;font-size:.85rem;color:var(--fg-muted)}.form__error{margin:0;color:var(--accent-ink);font-size:.95rem}.form__fineprint{margin:0;font-size:.85rem;color:var(--fg-muted)}.submitted{border:2px solid var(--line);border-radius:var(--radius);padding:2rem;background:var(--bg)}.submitted__lede{margin:1.5rem 0 .75rem;font-weight:600}.share-links{display:flex;flex-wrap:wrap;gap:.75rem}.notice{color:var(--fg-muted);font-size:.95rem}.notice--error{color:var(--accent-ink)}.wall{list-style:none;margin:2.5rem 0 0;padding:0;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fill,minmax(15rem,1fr))}.card{border-radius:var(--radius);overflow:hidden;background:var(--bg-alt)}.card__photo{width:100%;aspect-ratio:4 / 3;object-fit:cover}.card__body{padding:1rem}.card__name{margin:0;font-weight:650}.card__note{margin:.4rem 0 0;color:var(--fg-muted);font-size:.9rem}.card__date{display:block;margin-top:.6rem;font-size:.8rem;color:var(--fg-muted)}.footer{border-top:2px solid var(--line);padding:2.5rem 1.5rem;text-align:center;color:var(--fg-muted);font-size:.85rem}.footer p{margin:0}.hero__demands{list-style:none;counter-reset:hero-demand;margin:2rem 0 0;padding:0;display:grid;gap:.5rem;max-width:var(--measure)}.hero__demands li{counter-increment:hero-demand;display:grid;grid-template-columns:1.75rem 1fr;align-items:baseline}.hero__demands li:before{content:counter(hero-demand) ".";color:var(--accent-ink);font-variant-numeric:tabular-nums;font-weight:700}.hero__demands a{color:var(--fg);text-decoration-color:var(--line-soft);text-underline-offset:3px}.hero__demands a:hover{text-decoration-color:var(--accent-ink)}.card-demands{list-style:none;margin:2.5rem 0 0;padding:0;display:grid;gap:1rem;max-width:46rem}.card-demand{display:flex;flex-direction:column;gap:.6rem;padding:clamp(1.5rem,4vw,2rem);background:var(--bg-alt);border-left:4px solid var(--accent);border-radius:var(--radius);scroll-margin-top:1.5rem}.card-demand__number{font-size:.8rem;font-variant-numeric:tabular-nums;font-weight:700;color:var(--accent-ink)}.card-demand__title{margin:0;font-size:1.3rem;letter-spacing:-.01em}.card-demand__ask{margin:0;color:var(--fg-soft);font-size:1rem;max-width:44rem}.card-demand__toggle{align-self:start;margin-top:.35rem;display:inline-flex;align-items:center;gap:.4rem;background:none;border:none;padding:.25rem 0;font:inherit;font-size:.85rem;font-weight:600;color:var(--accent-ink);cursor:pointer}.card-demand__toggle:hover{color:var(--fg)}.card-demand__chevron{width:.5rem;height:.5rem;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translate(-1px,-1px);transition:transform .15s ease}.card-demand--open .card-demand__chevron{transform:rotate(-135deg) translate(-1px,-1px)}.card-demand__panel{margin-top:.5rem;padding-top:1.25rem;border-top:1px solid var(--line-soft)}.card-demand__body{margin:0 0 1rem;color:var(--fg-soft);max-width:44rem}@media(prefers-reduced-motion:reduce){.card-demand__chevron{transition:none}}.sources__list{margin:1.25rem 0 0;padding-top:1rem;border-top:1px solid var(--line-soft);max-width:44rem;padding-left:1.1rem;display:grid;gap:.4rem}.sources__list li{font-size:.9rem}.sources__list a{color:var(--fg-muted);text-underline-offset:3px}.sources__list a:hover{color:var(--accent-ink)}.pullquote{margin:0 0 1rem;padding:1.25rem 1.5rem;background:var(--bg);border-left:4px solid var(--line);border-radius:var(--radius);max-width:42rem}.pullquote__body{margin:0;font-size:.95rem;color:var(--fg-soft)}.pullquote__mark{background:#e8231a24;color:var(--fg);font-weight:650;padding:.1em .15em;border-radius:3px}.pullquote__by{margin-top:.85rem;font-size:.8rem;color:var(--fg-muted);letter-spacing:.03em}.pullquote__by:before{content:"— "}.admin{max-width:54rem;margin:0 auto;padding:1.5rem 1.25rem 4rem}.admin__bar{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.75rem;padding-bottom:.9rem;border-bottom:2px solid var(--line)}.admin__title{margin:0;font-size:clamp(1.15rem,4vw,1.5rem);letter-spacing:.04em;text-transform:uppercase;font-weight:800}.admin__slash{color:var(--accent);padding:0 .15em}.admin__signout{font:inherit;font-size:.85rem;font-weight:600;background:none;border:none;padding:0;color:var(--accent-ink);cursor:pointer}.admin__signout:hover{color:var(--fg)}.admin__gate{display:grid;gap:1rem;justify-items:start;max-width:22rem;margin-top:2.5rem}.admin__gate .field{width:100%}.admin__gate input[type=password]{font:inherit;color:var(--fg);background:var(--bg);border:2px solid var(--line);border-radius:var(--radius);padding:.7rem .85rem;width:100%}.admin__tabs{display:flex;gap:0;margin:1.25rem 0 0;border-bottom:1px solid var(--line-soft)}.admin__tab{font:inherit;font-size:.85rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;background:none;border:none;border-bottom:3px solid transparent;border-radius:var(--radius);padding:.6rem 1rem;margin-bottom:-1px;color:var(--fg-muted);cursor:pointer}.admin__tab:hover{color:var(--fg)}.admin__tab--on{color:var(--fg);border-bottom-color:var(--accent)}.admin__queue{padding-top:1.5rem}.admin__list{list-style:none;margin:0 0 1.5rem;padding:0;display:grid;gap:0}.admin-row{display:grid;grid-template-columns:7rem 1fr auto;gap:1rem;align-items:start;padding:1rem 0;border-top:1px solid var(--line-soft)}.admin-row:last-child{border-bottom:1px solid var(--line-soft)}.admin-row__photo-link{display:block;border:2px solid var(--line);border-radius:var(--radius)}.admin-row__photo{width:100%;aspect-ratio:1 / 1;object-fit:cover}.admin-row__nophoto{margin:0;display:grid;place-items:center;aspect-ratio:1 / 1;border:1px dashed var(--line-soft);border-radius:var(--radius);font-size:.75rem;color:var(--fg-muted)}.admin-row__body{min-width:0}.admin-row__name{margin:0;font-weight:700}.admin-row__note{margin:.3rem 0 0;color:var(--fg-soft);overflow-wrap:anywhere}.admin-row__date{display:block;margin-top:.5rem;font-size:.78rem;font-variant-numeric:tabular-nums;color:var(--fg-muted)}.admin-row__contact{margin-top:.5rem;font-size:.8rem;color:var(--fg-muted)}.admin-row__contact summary{cursor:pointer;letter-spacing:.04em;text-transform:uppercase;font-weight:600}.admin-row__contact p{margin:.35rem 0 0;overflow-wrap:anywhere}.admin-row__actions{display:grid;gap:.5rem;justify-items:stretch}.admin-row__action{padding:.55rem 1.1rem;font-size:.9rem;white-space:nowrap}@media(max-width:34rem){.admin-row{grid-template-columns:5rem 1fr}.admin-row__actions{grid-column:1 / -1;grid-auto-flow:column}}
