/* Existing Vamos a Votar colors, type and form controls; petition-only layout. */
.petition-section { padding:clamp(32px,4vw,64px) 4vw clamp(48px,6vw,96px); }
.petition-layout { max-width:1440px; margin-inline:auto; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.08fr); grid-template-areas:"heading form" "copy form"; grid-template-rows:auto 1fr; gap:32px 64px; align-items:start; }
.petition-heading { grid-area:heading; }
.petition-title { font-size:clamp(48px,6.6vw,96px); line-height:.96; }
.petition-copy { grid-area:copy; }
.petition-intro { color:var(--cream); margin-bottom:32px; max-width:56ch; }
.petition__asks p { font-size:16px; line-height:1.55; margin:0 0 16px; max-width:60ch; }
.petition__asks p:last-child { margin-bottom:0; }
.petition-card { grid-area:form; min-width:0; background:var(--cream); color:var(--ink); }
.petition-counter { margin:32px 32px 0; padding-bottom:24px; border-bottom:2px solid var(--ink); }
.petition-counter__row { display:flex; flex-wrap:wrap; gap:12px 24px; justify-content:space-between; align-items:baseline; }
.petition-counter__row p { margin:0 0 16px; font-size:14px; }
.petition-counter .stat { color:var(--orange-deep); font-weight:400; vertical-align:baseline; margin-right:8px; }
.petition-counter progress { appearance:none; display:block; width:100%; height:12px; border:1px solid var(--ink); border-radius:0; background:white; color:var(--orange-deep); }
.petition-counter progress::-webkit-progress-bar { background:white; }
.petition-counter progress::-webkit-progress-value { background:var(--orange-deep); }
.petition-counter progress::-moz-progress-bar { background:var(--orange-deep); }
.petition-consent { color:var(--muted); font-size:16px; line-height:1.5; margin:0; }
.petition-form .geo { margin:0; }
.petition-form [aria-invalid=true] { border-color:var(--orange-deep); }
.petition-next { flex-wrap:wrap; gap:16px; }
.petition-next .btn { font-size:16px; padding:16px 24px; }
@media(max-width:1000px) { .petition-layout { gap:32px; } }
@media(max-width:1080px) {
 .petition-layout { grid-template-columns:minmax(0,1fr); grid-template-areas:"heading" "copy" "form"; grid-template-rows:auto; gap:24px; }
 .petition-title { font-size:clamp(48px,11vw,72px); }
 .petition-form,.petition-card .confirm { padding:24px; }
 .petition-counter { margin:24px 24px 0; }
}

.petition-form .field__error,.petition-form .geo__msg--bad { color:#a6320c; }

.petition-form > .location-picker { align-self:stretch; }
