:root{--campaign-primary:#123c32;--campaign-secondary:#f4ebdd;--campaign-accent:#d8ff52;--campaign-text:#102c25;--campaign-surface:#fff;--campaign-radius:0;--campaign-radius-small:min(var(--campaign-radius),18px);--campaign-max-width:1280px;--campaign-font-display:"Archivo Black",sans-serif;--campaign-font-body:"Manrope",sans-serif;--line:color-mix(in srgb,var(--campaign-text) 18%,transparent)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--campaign-secondary);color:var(--campaign-text);font-family:var(--campaign-font-body)}.skip-link{position:fixed;top:-5rem;left:1rem;background:var(--campaign-accent);color:var(--campaign-text);padding:.8rem;z-index:20}.skip-link:focus{top:1rem}.campaign-page{min-height:100vh;overflow:hidden}.campaign-header{max-width:var(--campaign-max-width);margin:auto;display:flex;align-items:center;justify-content:space-between;padding:1.25rem clamp(1.25rem,4vw,3.5rem);border-bottom:1px solid var(--line)}.campaign-brand{display:flex;align-items:center;gap:.7rem;color:var(--campaign-text);text-decoration:none;font:1rem var(--campaign-font-display);text-transform:uppercase}.campaign-brand b{display:grid;place-items:center;min-width:2.5rem;min-height:2.5rem;background:var(--campaign-accent);border-radius:var(--campaign-radius)}.campaign-header nav{display:flex;gap:clamp(1rem,3vw,2.5rem)}.campaign-header nav a,.campaign-link{color:var(--campaign-text);font-size:.76rem;font-weight:700;text-decoration:none;text-transform:uppercase;letter-spacing:.1em}.campaign-header nav a:hover,.campaign-link:hover{text-decoration:underline;text-underline-offset:.35rem}.hero{max-width:var(--campaign-max-width);min-height:calc(100vh - 81px);margin:auto;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(330px,.85fr);padding:clamp(2.5rem,6vw,6rem) clamp(1.25rem,4vw,3.5rem);position:relative}.hero:before{content:'';position:absolute;width:24rem;height:24rem;border:1px solid var(--line);border-radius:50%;left:-13rem;top:10%}.hero__copy{position:relative;z-index:1;align-self:center}.hero__kicker,.manifesto__index{text-transform:uppercase;letter-spacing:.2em;font-size:.69rem;font-weight:700}.hero h1{font:clamp(3.4rem,7.4vw,7.2rem)/.84 var(--campaign-font-display);letter-spacing:-.065em;text-transform:uppercase;margin:1rem 0 1.8rem;max-width:900px}.hero h1 span{display:block;font:700 clamp(.76rem,1.2vw,1rem)/1 var(--campaign-font-body);letter-spacing:.2em;margin-bottom:1rem}.hero__slogan{font-size:clamp(1.05rem,1.7vw,1.4rem);line-height:1.55;max-width:600px}.hero__actions{display:flex;align-items:center;gap:1.5rem;margin-top:2.2rem}.campaign-button{display:inline-flex;align-items:center;gap:1.8rem;background:var(--campaign-primary);color:var(--campaign-surface);padding:1rem 1.2rem;text-decoration:none;font-size:.82rem;font-weight:700;border-radius:var(--campaign-radius);box-shadow:6px 6px 0 var(--campaign-accent);transition:transform .2s,box-shadow .2s}.campaign-button:hover,.campaign-button:focus-visible{transform:translate(-2px,-2px);box-shadow:9px 9px 0 var(--campaign-accent)}.campaign-button span{font-size:1.2rem}.hero__number{align-self:center;justify-self:end;width:min(100%,420px);aspect-ratio:1;display:grid;align-content:center;justify-items:center;background:var(--campaign-accent);border-radius:50%;color:var(--campaign-primary);transform:rotate(3deg);box-shadow:18px 18px 0 var(--campaign-primary);position:relative}.hero__number:after{content:'';position:absolute;inset:8%;border:1px solid color-mix(in srgb,var(--campaign-primary) 32%,transparent);border-radius:50%}.hero__number span,.hero__number small{position:relative;z-index:1;text-transform:uppercase;letter-spacing:.22em;font-size:.68rem;font-weight:700}.hero__number strong{position:relative;z-index:1;font:clamp(6rem,13vw,11rem)/.8 var(--campaign-font-display);letter-spacing:-.08em}.manifesto{background:var(--campaign-primary);color:var(--campaign-surface);display:grid;grid-template-columns:.5fr 1.5fr;gap:2rem;padding:clamp(4rem,8vw,8rem) max(clamp(1.25rem,4vw,3.5rem),calc((100vw - var(--campaign-max-width))/2 + 3.5rem))}.manifesto__index{color:var(--campaign-accent)}.manifesto h2{font:clamp(2.4rem,5vw,5rem)/.95 var(--campaign-font-display);text-transform:uppercase;letter-spacing:-.05em;margin:0;max-width:780px}.manifesto div p{font-size:clamp(1rem,1.5vw,1.2rem);line-height:1.75;max-width:700px;color:color-mix(in srgb,var(--campaign-surface) 76%,transparent)}.manifesto div small{color:var(--campaign-accent);font-weight:700}.campaign-footer{max-width:var(--campaign-max-width);margin:auto;display:grid;grid-template-columns:1fr 2fr;gap:2rem;padding:2rem clamp(1.25rem,4vw,3.5rem);font-size:.72rem;border-top:1px solid var(--line)}.campaign-footer div{display:grid}.campaign-footer strong{text-transform:uppercase}.campaign-footer p{margin:0;color:color-mix(in srgb,var(--campaign-text) 65%,transparent)}
.launch{min-height:100vh;display:flex;flex-direction:column;justify-content:center;padding:clamp(1.5rem,7vw,8rem);background:radial-gradient(circle at 85% 18%,var(--campaign-accent) 0 11%,transparent 11.2%),linear-gradient(115deg,transparent 66%,color-mix(in srgb,var(--campaign-text) 8%,transparent) 66% 67%,transparent 67%);overflow:hidden}.launch__eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.75rem;font-weight:700}.launch h1{font:clamp(3.2rem,9vw,9rem)/.88 var(--campaign-font-display);letter-spacing:-.06em;max-width:1100px;margin:.8rem 0 1.6rem;text-transform:uppercase}.launch p{font-size:clamp(1rem,2vw,1.3rem);line-height:1.6;max-width:620px}.launch a{align-self:flex-start;margin-top:2rem;background:var(--campaign-primary);color:var(--campaign-surface);text-decoration:none;padding:1rem 1.3rem;font-weight:700;border:2px solid var(--campaign-primary)}
.home-proposals{max-width:var(--campaign-max-width);margin:auto;padding:clamp(4rem,8vw,8rem) clamp(1.25rem,4vw,3.5rem)}.home-proposals>header{display:grid;grid-template-columns:.45fr 1.15fr auto;align-items:end;gap:2rem;margin-bottom:3rem}.home-proposals>header h2{font:clamp(2rem,4vw,4.2rem)/.95 var(--campaign-font-display);text-transform:uppercase;letter-spacing:-.05em;margin:0}.home-proposals>header a{color:var(--campaign-text);font-size:.75rem;font-weight:700;text-decoration:none}.home-proposals>div{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.home-proposals>div>a{display:grid;align-content:start;min-height:360px;color:var(--campaign-text);text-decoration:none;padding:1.5rem;border-right:1px solid var(--line);transition:background .2s,transform .2s}.home-proposals>div>a:first-child{border-left:1px solid var(--line)}.home-proposals>div>a:hover{background:var(--campaign-accent);transform:translateY(-7px)}.home-proposals a>span{font:2rem var(--campaign-font-display)}.home-proposals a>small{text-transform:uppercase;letter-spacing:.15em;font-weight:700;margin:2rem 0 .7rem}.home-proposals h3{font:1.5rem/1.05 var(--campaign-font-display);text-transform:uppercase;margin:0}.home-proposals a>p{font-size:.83rem;line-height:1.6}.home-proposals a>b{margin-top:auto;font-size:.75rem}.proposals-hero{max-width:var(--campaign-max-width);margin:auto;padding:clamp(4rem,8vw,8rem) clamp(1.25rem,4vw,3.5rem);display:grid;grid-template-columns:.4fr 1.4fr auto;gap:2rem;align-items:end}.proposals-hero>p{font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700}.proposals-hero h1{font:clamp(3rem,7vw,7rem)/.88 var(--campaign-font-display);text-transform:uppercase;letter-spacing:-.06em;margin:0}.proposals-hero>span{font-size:.7rem;font-weight:700}.proposal-grid{max-width:var(--campaign-max-width);margin:0 auto clamp(4rem,8vw,8rem);padding:0 clamp(1.25rem,4vw,3.5rem);display:grid;grid-template-columns:repeat(2,1fr)}.public-proposal{min-height:410px;color:var(--campaign-text);text-decoration:none;border:1px solid var(--line);margin:-1px 0 0 -1px;padding:clamp(1.5rem,3vw,2.5rem);display:grid;align-content:start;position:relative;transition:background .2s}.public-proposal:hover{background:var(--campaign-surface)}.public-proposal--priority{background:var(--campaign-accent)}.public-proposal>span{position:absolute;right:1.5rem;top:1rem;font:4rem var(--campaign-font-display);color:color-mix(in srgb,var(--campaign-text) 12%,transparent)}.public-proposal small{text-transform:uppercase;letter-spacing:.17em;font-weight:700}.public-proposal h2{font:clamp(1.8rem,3vw,3rem)/.98 var(--campaign-font-display);text-transform:uppercase;letter-spacing:-.04em;margin:3.5rem 0 1rem;max-width:520px}.public-proposal p{line-height:1.65;max-width:560px}.public-proposal b{align-self:end;margin-top:auto;font-size:.76rem}.public-empty{max-width:var(--campaign-max-width);margin:auto;padding:2rem clamp(1.25rem,4vw,3.5rem) 8rem}.proposal-detail>main{max-width:var(--campaign-max-width);margin:auto;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:clamp(3rem,8vw,8rem);padding:clamp(4rem,8vw,8rem) clamp(1.25rem,4vw,3.5rem)}.proposal-detail__head{grid-column:1}.proposal-detail__head>a{color:var(--campaign-text);font-size:.75rem;font-weight:700;text-decoration:none}.proposal-detail__head>p{text-transform:uppercase;letter-spacing:.18em;font-size:.68rem;font-weight:700;margin-top:4rem}.proposal-detail__head h1{font:clamp(3rem,6.5vw,6.5rem)/.9 var(--campaign-font-display);text-transform:uppercase;letter-spacing:-.06em;margin:1rem 0 2rem}.proposal-detail__head>strong{font-size:clamp(1.1rem,2vw,1.5rem);line-height:1.5;display:block}.proposal-detail__content{grid-column:1;font-size:1.05rem;line-height:1.9;white-space:normal}.proposal-detail__mark{grid-column:2;grid-row:1 / span 2;align-self:start;position:sticky;top:2rem;aspect-ratio:1;background:var(--campaign-accent);border-radius:50%;display:grid;place-content:center;text-align:center;color:var(--campaign-primary);box-shadow:14px 14px 0 var(--campaign-primary)}.proposal-detail__mark span,.proposal-detail__mark small{text-transform:uppercase;letter-spacing:.15em;font-size:.62rem;font-weight:700}.proposal-detail__mark b{font:clamp(5rem,10vw,9rem)/.85 var(--campaign-font-display)}.proposal-detail__mark small{max-width:180px}.proposal-detail .campaign-footer{clear:both}
@media(max-width:860px){.hero{grid-template-columns:1fr;gap:4rem}.hero__number{justify-self:center;width:min(78vw,390px)}.manifesto{grid-template-columns:1fr}.campaign-footer{grid-template-columns:1fr}.hero h1{font-size:clamp(3.3rem,13vw,6rem)}.home-proposals>header,.proposals-hero{grid-template-columns:1fr}.home-proposals>div{grid-template-columns:1fr}.home-proposals>div>a{border-left:1px solid var(--line);min-height:300px}.proposal-grid{grid-template-columns:1fr}.proposal-detail>main{grid-template-columns:1fr}.proposal-detail__mark{grid-column:1;grid-row:auto;position:static;width:min(80vw,360px);justify-self:center}}
@media(max-width:560px){.campaign-header nav a:first-child{display:none}.hero{padding-top:3rem}.hero__actions{align-items:flex-start;flex-direction:column}.hero__number{box-shadow:10px 10px 0 var(--campaign-primary)}.campaign-footer{padding-bottom:3rem}.launch h1{font-size:2.8rem}}
.about-page main{overflow:hidden}.about-hero{max-width:var(--campaign-max-width);min-height:75vh;margin:auto;padding:clamp(4rem,8vw,8rem) clamp(1.25rem,4vw,3.5rem);display:grid;grid-template-columns:1.35fr .65fr;align-items:center;position:relative}.about-hero>p{grid-column:1;text-transform:uppercase;letter-spacing:.2em;font-size:.7rem;font-weight:700}.about-hero h1{grid-column:1;font:clamp(4rem,9vw,9rem)/.84 var(--campaign-font-display);text-transform:uppercase;letter-spacing:-.07em;margin:1rem 0;position:relative;z-index:1}.about-hero__seal{grid-column:2;grid-row:1/span 2;width:min(32vw,380px);aspect-ratio:1;border-radius:50%;display:grid;place-content:center;text-align:center;background:var(--campaign-accent);box-shadow:18px 18px 0 var(--campaign-primary);transform:rotate(4deg)}.about-hero__seal span,.about-hero__seal small{text-transform:uppercase;letter-spacing:.15em;font-size:.65rem;font-weight:700}.about-hero__seal b{font:clamp(6rem,12vw,10rem)/.82 var(--campaign-font-display);color:var(--campaign-primary)}.about-story{background:var(--campaign-primary);color:var(--campaign-surface);padding:clamp(4rem,9vw,9rem) max(clamp(1.25rem,4vw,3.5rem),calc((100vw - var(--campaign-max-width))/2 + 3.5rem));display:grid;grid-template-columns:.65fr 1.35fr;gap:clamp(2rem,7vw,7rem)}.about-story aside>span,.public-timeline header>p,.vice-story>span{color:var(--campaign-accent);text-transform:uppercase;letter-spacing:.18em;font-size:.66rem;font-weight:700}.about-story blockquote{font:clamp(1.5rem,2.8vw,2.6rem)/1.25 var(--campaign-font-display);text-transform:uppercase;margin:3rem 0}.about-story article,.vice-story article{font-size:clamp(1rem,1.4vw,1.16rem);line-height:1.95;color:color-mix(in srgb,var(--campaign-surface) 80%,transparent)}.public-timeline{max-width:var(--campaign-max-width);margin:auto;padding:clamp(4rem,9vw,9rem) clamp(1.25rem,4vw,3.5rem)}.public-timeline header{display:grid;grid-template-columns:.5fr 1.5fr;gap:2rem;margin-bottom:4rem}.public-timeline header>p{color:var(--campaign-text)}.public-timeline h2{font:clamp(2.5rem,5vw,5rem)/.95 var(--campaign-font-display);text-transform:uppercase;letter-spacing:-.05em;margin:0}.public-timeline>div{display:grid}.public-timeline article{display:grid;grid-template-columns:130px 22px 1fr;gap:1.5rem;min-height:190px}.public-timeline article>span{font:1.3rem var(--campaign-font-display)}.public-timeline article>i{position:relative}.public-timeline article>i:before{content:'';position:absolute;width:14px;height:14px;border-radius:50%;background:var(--campaign-accent);border:3px solid var(--campaign-primary)}.public-timeline article>i:after{content:'';position:absolute;top:20px;bottom:0;left:9px;width:1px;background:var(--line)}.public-timeline article:last-child>i:after{display:none}.public-timeline article div{padding-bottom:3rem}.public-timeline article small{font-weight:700}.public-timeline h3{font:1.55rem var(--campaign-font-display);text-transform:uppercase;margin:.5rem 0}.public-timeline article p{line-height:1.65;max-width:700px}.vice-story{background:var(--campaign-accent);color:var(--campaign-primary);display:grid;grid-template-columns:.5fr 1.1fr .4fr;gap:2rem;align-items:center;padding:clamp(4rem,8vw,8rem) max(clamp(1.25rem,4vw,3.5rem),calc((100vw - var(--campaign-max-width))/2 + 3.5rem))}.vice-story>span{color:var(--campaign-primary)}.vice-story div>p{text-transform:uppercase;letter-spacing:.16em;font-size:.68rem;font-weight:700}.vice-story h2{font:clamp(2.8rem,6vw,6rem)/.88 var(--campaign-font-display);text-transform:uppercase;letter-spacing:-.06em;margin:.5rem 0 2rem}.vice-story article{color:color-mix(in srgb,var(--campaign-primary) 78%,transparent)}.vice-story>b{font:clamp(8rem,18vw,16rem)/.8 var(--campaign-font-display);color:color-mix(in srgb,var(--campaign-primary) 16%,transparent)}
@media(max-width:800px){.about-hero{grid-template-columns:1fr;gap:3rem}.about-hero>p,.about-hero h1,.about-hero__seal{grid-column:1;grid-row:auto}.about-hero__seal{width:min(76vw,340px);justify-self:center}.about-story,.public-timeline header,.vice-story{grid-template-columns:1fr}.vice-story>b{display:none}.public-timeline article{grid-template-columns:85px 20px 1fr;gap:.8rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Retrato principal */
.hero__number--photo{background:var(--campaign-primary);color:var(--campaign-surface);overflow:hidden;box-shadow:18px 18px 0 var(--campaign-accent)}.hero__number--photo:before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,color-mix(in srgb,var(--campaign-primary) 84%,transparent));z-index:1}.hero__number--photo:after{z-index:3;border-color:color-mix(in srgb,var(--campaign-surface) 45%,transparent)}.hero__number--photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero__number--photo span,.hero__number--photo small,.hero__number--photo strong{z-index:2;color:var(--campaign-surface)}.hero__number--photo strong{text-shadow:0 4px 20px rgba(0,0,0,.25)}.about-hero__seal--photo{position:relative;overflow:hidden;color:var(--campaign-surface);background:var(--campaign-primary);text-shadow:0 2px 14px rgba(0,0,0,.35);box-shadow:18px 18px 0 var(--campaign-accent)}.about-hero__seal--photo:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,color-mix(in srgb,var(--campaign-primary) 82%,transparent));z-index:1}.about-hero__seal--photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.about-hero__seal--photo span,.about-hero__seal--photo b,.about-hero__seal--photo small{position:relative;z-index:2}.about-hero__seal--photo b{color:var(--campaign-surface)}

/* Agenda */
.home-agenda,.agenda-list{max-width:var(--campaign-max-width);margin:auto;padding:clamp(4rem,8vw,8rem) clamp(1.25rem,4vw,3.5rem)}.home-agenda>header{display:grid;grid-template-columns:.5fr 1.2fr auto;gap:2rem;align-items:end;margin-bottom:2.5rem}.home-agenda>header p,.agenda-hero>p{text-transform:uppercase;letter-spacing:.18em;font-size:.67rem;font-weight:700}.home-agenda h2{font:clamp(2.3rem,5vw,5rem)/.9 var(--campaign-font-display);text-transform:uppercase;margin:0}.home-agenda>header a{color:var(--campaign-text);font-size:.72rem;font-weight:700;text-decoration:none}.home-agenda__link,.agenda-list__link{display:grid;grid-template-columns:110px 1fr 40px;gap:1.5rem;align-items:center;color:var(--campaign-text);text-decoration:none;border-top:1px solid var(--line);padding:1.5rem;transition:background .2s}.home-agenda__link:hover,.agenda-list__link:hover{background:var(--campaign-accent)}.home-agenda time,.agenda-list time{display:flex;align-items:baseline;gap:.5rem}.home-agenda time b,.agenda-list time b{font:2.5rem var(--campaign-font-display)}.home-agenda time span,.agenda-list time span{font-size:.65rem;font-weight:700}.home-agenda small,.agenda-list small{text-transform:uppercase;letter-spacing:.12em;font-weight:700}.home-agenda h3,.agenda-list h2{font:1.3rem var(--campaign-font-display);text-transform:uppercase;margin:.4rem 0}.home-agenda p,.agenda-list p{font-size:.78rem;margin:0}.agenda-hero{max-width:var(--campaign-max-width);margin:auto;padding:clamp(4rem,8vw,8rem) clamp(1.25rem,4vw,3.5rem);display:grid;grid-template-columns:.45fr 1.35fr auto;gap:2rem;align-items:end}.agenda-hero h1{font:clamp(3.2rem,7vw,7rem)/.88 var(--campaign-font-display);text-transform:uppercase;letter-spacing:-.06em;margin:0}.agenda-hero>span{font-size:.7rem;font-weight:700}.agenda-list{padding-top:0}.event-detail>main{max-width:var(--campaign-max-width);margin:auto;display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(3rem,7vw,7rem);padding:clamp(4rem,8vw,8rem) clamp(1.25rem,4vw,3.5rem)}.event-detail main>header h1{font:clamp(3rem,6vw,6rem)/.9 var(--campaign-font-display);text-transform:uppercase;letter-spacing:-.055em}.event-detail main>header>a{color:var(--campaign-text);font-weight:700;text-decoration:none}.event-detail main>header>p{text-transform:uppercase;letter-spacing:.16em;font-size:.7rem;font-weight:700;margin-top:4rem}.event-detail main>header>strong{font-size:1.3rem;line-height:1.5}.event-detail main>aside{grid-column:2;grid-row:1/span 2;background:var(--campaign-accent);padding:2rem;align-self:start}.event-detail aside time{display:grid}.event-detail aside time b{font:6rem/.8 var(--campaign-font-display)}.event-detail aside time span{text-transform:uppercase;font-weight:700}.event-detail aside h2{font:1.5rem var(--campaign-font-display);text-transform:uppercase;margin-top:3rem}.event-detail main>article{font-size:1.05rem;line-height:1.9}.event-cancelled{display:inline-block;background:#a73c26;color:#fff;padding:.5rem .7rem;margin-left:1rem;text-transform:uppercase;font-size:.65rem;font-weight:700}.event-calendar-actions{display:none}
@media(max-width:800px){.home-agenda>header,.agenda-hero,.event-detail>main{grid-template-columns:1fr}.event-detail main>aside{grid-column:1;grid-row:auto}.home-agenda__link,.agenda-list__link{grid-template-columns:70px minmax(0,1fr) 18px;padding:1.25rem .25rem .9rem}.event-calendar-actions{display:grid;grid-template-columns:1fr 1fr;gap:.55rem;padding:0 .25rem 1.25rem}.event-calendar-actions a{display:flex;align-items:center;justify-content:center;gap:.45rem;min-height:42px;padding:.65rem .75rem;border:1px solid color-mix(in srgb,var(--campaign-primary) 28%,transparent);color:var(--campaign-primary);font-size:.65rem;font-weight:800;text-decoration:none;text-transform:uppercase;letter-spacing:.035em}.event-calendar-actions__native{background:var(--campaign-primary)!important;color:#fff!important;border-color:var(--campaign-primary)!important}.event-calendar-actions svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.event-calendar-actions__google>span{display:grid;place-items:center;width:19px;height:19px;border:1px solid currentColor;border-radius:50%;font-size:.68rem}.event-detail .event-calendar-actions{grid-template-columns:1fr;margin:1.4rem 0 1rem;padding:0}.event-detail .event-calendar-actions a{background:rgba(255,255,255,.65)}.event-detail .event-calendar-actions__native{background:var(--campaign-primary)!important}.event-detail aside>.campaign-button{width:100%;margin-top:.5rem;text-align:center}}

/* Participação, privacidade e consentimento */
.participate-page main,.privacy-page main{max-width:var(--campaign-max-width);margin:auto;padding:clamp(4rem,8vw,8rem) clamp(1.25rem,4vw,3.5rem)}.participate-intro{display:grid;grid-template-columns:.4fr 1.3fr .7fr;gap:2rem;align-items:end;margin-bottom:4rem}.participate-intro>p:first-child,.privacy-page main>header>p{text-transform:uppercase;letter-spacing:.18em;font-size:.67rem;font-weight:700}.participate-intro h1,.privacy-page main>header h1{font:clamp(3rem,6.5vw,6.5rem)/.88 var(--campaign-font-display);text-transform:uppercase;letter-spacing:-.06em;margin:0}.participate-intro>p:last-child{line-height:1.6}.participate-form{max-width:920px;margin-left:auto;background:var(--campaign-surface);padding:clamp(1.3rem,4vw,3rem);display:grid;gap:1.5rem}.participate-form fieldset{border:0;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:.7rem}.participate-form legend{grid-column:1/-1;font-weight:700;margin-bottom:.5rem}.participate-form fieldset>label{position:relative;cursor:pointer}.participate-form fieldset>label input{position:absolute;opacity:0}.participate-form fieldset>label>span{display:grid;gap:.2rem;border:1px solid var(--line);padding:1rem}.participate-form fieldset>label input:checked+span{background:var(--campaign-accent);border-color:var(--campaign-primary)}.participate-form fieldset small{font-size:.7rem}.participate-fields{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.participate-form .field{display:grid;gap:.35rem}.participate-form .field label{font-size:.75rem;font-weight:700}.participate-form input,.participate-form textarea{width:100%;border:1px solid var(--line);background:#fbfcfa;padding:.85rem;font:inherit;color:var(--campaign-text)}.participate-form input:focus,.participate-form textarea:focus{outline:3px solid var(--campaign-accent);border-color:var(--campaign-primary)}.interest-options{grid-template-columns:repeat(3,1fr)!important}.interest-options label>span{font-size:.72rem;font-weight:700}.public-consent{display:grid;grid-template-columns:20px 1fr;gap:.6rem;font-size:.75rem;line-height:1.5}.public-consent input{width:auto}.public-consent a{color:var(--campaign-text)}.participate-form .campaign-button{border:0;cursor:pointer;justify-self:start}.website-field{position:absolute;left:-10000px}.form-errors{background:#fff0ec;color:#8b2a18;border-left:4px solid #df5b40;padding:1rem;display:grid}.participate-success{max-width:760px;margin:auto;text-align:center;background:var(--campaign-accent);padding:clamp(3rem,7vw,7rem)}.participate-success>span{font-size:3rem}.participate-success h2{font:clamp(2rem,4vw,4rem)/1 var(--campaign-font-display);text-transform:uppercase}.participate-success a{color:var(--campaign-primary);font-weight:700}.privacy-page main{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(3rem,8vw,8rem)}.privacy-page main>header{position:sticky;top:2rem;align-self:start}.privacy-page main>header h1{font-size:clamp(3rem,5vw,5rem);margin:1rem 0}.privacy-page article{font-size:.95rem;line-height:1.8}.privacy-page article h2{font:1.25rem var(--campaign-font-display);text-transform:uppercase;margin-top:2.5rem}.privacy-page article a{color:var(--campaign-text);font-weight:700}.cookie-notice[hidden]{display:none}.cookie-notice{position:fixed;right:1rem;bottom:1rem;width:min(360px,calc(100% - 2rem));z-index:50;background:var(--campaign-surface);color:var(--campaign-text);border:1px solid var(--line);border-radius:max(10px,var(--campaign-radius));padding:1rem;box-shadow:0 12px 40px rgba(16,44,37,.16);font-size:.76rem}.cookie-notice>div:first-child{display:flex;align-items:center;gap:.55rem}.cookie-notice>div:first-child span{color:var(--campaign-accent);text-shadow:0 0 0 4px var(--campaign-primary);font-size:.5rem;margin:0 .25rem}.cookie-notice strong{text-transform:uppercase;letter-spacing:.06em;font-size:.72rem}.cookie-notice p{line-height:1.5;margin:.75rem 0}.cookie-notice a{color:var(--campaign-text);font-weight:700}.cookie-notice__actions{display:flex;justify-content:flex-end;gap:.5rem}.cookie-notice button{border:1px solid var(--line);background:transparent;color:var(--campaign-text);padding:.55rem .7rem;font:700 .68rem Manrope;cursor:pointer}.cookie-notice button:last-child{background:var(--campaign-primary);color:var(--campaign-surface);border-color:var(--campaign-primary)}
@media(max-width:760px){.participate-intro,.privacy-page main{grid-template-columns:1fr}.privacy-page main>header{position:static}.participate-fields,.participate-form fieldset,.interest-options{grid-template-columns:1fr!important}.cookie-notice{right:.65rem;bottom:.65rem;width:calc(100% - 1.3rem)}}

/* Notícias */
.home-news,.news-grid{max-width:var(--campaign-max-width);margin:auto;padding:clamp(4rem,8vw,8rem) clamp(1.25rem,4vw,3.5rem)}.home-news>header{display:grid;grid-template-columns:.45fr 1.2fr auto;gap:2rem;align-items:end;margin-bottom:2.5rem}.home-news>header p,.news-hero>p{text-transform:uppercase;letter-spacing:.18em;font-size:.67rem;font-weight:700}.home-news>header h2{font:clamp(2.4rem,5vw,5rem)/.9 var(--campaign-font-display);text-transform:uppercase;margin:0}.home-news>header a{color:var(--campaign-text);font-size:.72rem;font-weight:700;text-decoration:none}.home-news>div{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.home-news>div>a{display:grid;align-content:start;color:var(--campaign-text);text-decoration:none;border-top:5px solid var(--campaign-primary);background:var(--campaign-surface);padding:1.2rem;min-height:360px}.home-news img{width:calc(100% + 2.4rem);height:170px;object-fit:cover;margin:-1.2rem -1.2rem 1.2rem}.home-news span,.news-card span{font-size:.65rem;text-transform:uppercase;letter-spacing:.14em;font-weight:700}.home-news h3{font:1.35rem/1.05 var(--campaign-font-display);text-transform:uppercase}.home-news p{font-size:.78rem;line-height:1.55}.home-news b{margin-top:auto;font-size:.72rem}.news-hero{max-width:var(--campaign-max-width);margin:auto;padding:clamp(4rem,8vw,8rem) clamp(1.25rem,4vw,3.5rem);display:grid;grid-template-columns:.4fr 1.4fr auto;gap:2rem;align-items:end}.news-hero h1{font:clamp(3.2rem,7vw,7rem)/.88 var(--campaign-font-display);text-transform:uppercase;letter-spacing:-.06em;margin:0}.news-hero>span{font-size:.7rem;font-weight:700}.news-grid{padding-top:0;display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line)}.news-card{display:grid;background:var(--campaign-secondary);color:var(--campaign-text);text-decoration:none;min-height:430px}.news-card img{width:100%;height:260px;object-fit:cover}.news-card>div{padding:clamp(1.3rem,3vw,2.3rem);display:grid;align-content:start}.news-card time{font-size:.65rem;justify-self:end;margin-top:-.8rem}.news-card h2{font:clamp(1.8rem,3vw,3rem)/.95 var(--campaign-font-display);text-transform:uppercase;margin:2rem 0 1rem}.news-card p{line-height:1.65}.news-card b{margin-top:2rem;font-size:.72rem}.news-card--lead{grid-column:1/-1;grid-template-columns:1.2fr .8fr}.news-card--lead img{height:100%}.news-detail>main{max-width:var(--campaign-max-width);margin:auto;padding:clamp(4rem,8vw,8rem) clamp(1.25rem,4vw,3.5rem)}.news-detail main>header{max-width:1000px}.news-detail main>header>a{color:var(--campaign-text);font-weight:700;text-decoration:none}.news-detail main>header>p{text-transform:uppercase;letter-spacing:.16em;font-size:.68rem;font-weight:700;margin-top:4rem}.news-detail main h1{font:clamp(3rem,7vw,7rem)/.88 var(--campaign-font-display);text-transform:uppercase;letter-spacing:-.06em}.news-detail main>header>strong{display:block;font-size:1.3rem;line-height:1.5}.news-detail main>header>small{display:block;margin-top:1.5rem}.news-detail figure{margin:4rem 0}.news-detail figure img{width:100%;max-height:720px;object-fit:cover}.news-detail main>article{max-width:760px;margin:auto;font-size:1.05rem;line-height:1.95}
@media(max-width:800px){.home-news>header,.news-hero{grid-template-columns:1fr}.home-news>div,.news-grid{grid-template-columns:1fr}.news-card--lead{grid-column:auto;grid-template-columns:1fr}}

/* Capa pública — cartaz cívico em camadas */
.campaign-page--poster{background:var(--campaign-secondary)}.campaign-header--floating{position:absolute;z-index:10;top:0;left:50%;width:min(100%,var(--campaign-max-width));transform:translateX(-50%);border-bottom-color:color-mix(in srgb,var(--campaign-surface) 28%,transparent);color:var(--campaign-surface)}.campaign-header--floating .campaign-brand,.campaign-header--floating nav a{color:var(--campaign-surface)}.campaign-brand--configurable img{display:block;width:auto;height:clamp(42px,5vw,68px);max-width:230px;object-fit:contain}.header-cta{background:var(--campaign-accent);color:var(--campaign-primary);padding:.8rem 1rem;text-decoration:none;text-transform:uppercase;font-size:.67rem;font-weight:800;letter-spacing:.08em;border-radius:var(--campaign-radius)}.hero--campaign{max-width:none;min-height:100svh;grid-template-columns:minmax(0,1fr) minmax(360px,.72fr);padding:max(8rem,12vh) max(clamp(1.25rem,4vw,3.5rem),calc((100vw - var(--campaign-max-width))/2 + 3.5rem)) 4.8rem;background:var(--campaign-primary);color:var(--campaign-surface);isolation:isolate;overflow:hidden}.hero--campaign:before{width:52vw;height:52vw;left:-20vw;top:-20vw;border:1px solid color-mix(in srgb,var(--campaign-accent) 35%,transparent)}.hero__backdrop{position:absolute;z-index:-3;inset:0;background-image:var(--campaign-hero-background);background-size:cover;background-position:center;filter:saturate(.78)}.hero__backdrop:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,color-mix(in srgb,var(--campaign-primary) 96%,transparent) 0%,color-mix(in srgb,var(--campaign-primary) 82%,transparent) 48%,color-mix(in srgb,var(--campaign-primary) 35%,transparent) 100%)}.hero__signal{position:absolute;z-index:-1;left:2vw;bottom:-.15em;font:clamp(15rem,36vw,38rem)/.7 var(--campaign-font-display);letter-spacing:-.12em;color:color-mix(in srgb,var(--campaign-accent) 12%,transparent);white-space:nowrap}.hero--campaign .hero__copy{align-self:center}.hero--campaign .hero__kicker{display:inline-flex;background:var(--campaign-accent);color:var(--campaign-primary);padding:.45rem .65rem}.hero--campaign h1{font-size:clamp(4rem,8.4vw,9rem);max-width:820px;text-wrap:balance}.hero--campaign h1 span{color:var(--campaign-accent)}.hero--campaign .hero__slogan{color:color-mix(in srgb,var(--campaign-surface) 84%,transparent);max-width:540px}.hero--campaign .campaign-button{background:var(--campaign-accent);color:var(--campaign-primary);box-shadow:7px 7px 0 var(--campaign-surface)}.hero--campaign .campaign-link{color:var(--campaign-surface)}.hero__portrait{align-self:end;justify-self:end;width:min(39vw,540px);height:min(76vh,760px);margin:0;position:relative;z-index:1}.hero__portrait:before{content:'';position:absolute;inset:8% -7% -3% 10%;z-index:-1;background:var(--campaign-accent);clip-path:polygon(8% 0,100% 5%,91% 100%,0 91%)}.hero__portrait>img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top;clip-path:polygon(5% 0,100% 3%,94% 100%,0 96%);filter:drop-shadow(0 24px 30px rgba(0,0,0,.25))}.hero__portrait figcaption{position:absolute;right:-1rem;bottom:1.5rem;display:grid;justify-items:center;min-width:145px;background:var(--campaign-surface);color:var(--campaign-primary);padding:.75rem 1rem;transform:rotate(-3deg);box-shadow:7px 7px 0 var(--campaign-accent)}.hero__portrait figcaption small{text-transform:uppercase;font-weight:800;letter-spacing:.15em}.hero__portrait figcaption strong{font:3.6rem/.9 var(--campaign-font-display)}.hero__portrait--empty{display:grid;place-items:center;border:2px dashed color-mix(in srgb,var(--campaign-surface) 36%,transparent)}.hero__portrait--empty>span{max-width:240px;text-align:center;font-size:.75rem;line-height:1.5}.hero__ticker{position:absolute;z-index:3;left:0;right:0;bottom:0;display:flex;width:max-content;background:var(--campaign-accent);color:var(--campaign-primary);padding:.65rem 0;font:800 .72rem var(--campaign-font-body);text-transform:uppercase;letter-spacing:.16em;transform:rotate(-1deg) translateY(8px);animation:campaign-ticker 24s linear infinite}.hero__ticker span{white-space:nowrap;padding-right:2rem}@keyframes campaign-ticker{to{transform:rotate(-1deg) translate(-50%,8px)}}.manifesto__link{display:inline-block;margin-top:1rem;color:var(--campaign-accent);font-size:.78rem;font-weight:800;text-decoration:none}.home-join{display:grid;grid-template-columns:.35fr 1.2fr auto;gap:2rem;align-items:end;background:var(--campaign-accent);color:var(--campaign-primary);padding:clamp(4rem,8vw,8rem) max(clamp(1.25rem,4vw,3.5rem),calc((100vw - var(--campaign-max-width))/2 + 3.5rem))}.home-join>p{text-transform:uppercase;letter-spacing:.18em;font-size:.68rem;font-weight:800}.home-join h2{font:clamp(2.5rem,5vw,5rem)/.95 var(--campaign-font-display);text-transform:uppercase;letter-spacing:-.05em;margin:0}.home-join .campaign-button{white-space:nowrap}
@media(max-width:980px){.campaign-header--floating nav{display:none}.hero--campaign{grid-template-columns:1fr;padding-top:9rem}.hero__portrait{width:min(82vw,520px);height:min(70vh,650px);justify-self:center}.home-join{grid-template-columns:1fr}.home-join .campaign-button{justify-self:start}}
@media(max-width:600px){.campaign-header--floating{align-items:flex-start}.campaign-brand--configurable img{max-width:150px;height:44px}.header-cta{font-size:.58rem}.hero--campaign{padding-top:7.5rem}.hero--campaign h1{font-size:clamp(3.5rem,17vw,5rem)}.hero__portrait{height:58vh}.hero__portrait figcaption{right:0}.hero__ticker{animation:none;width:100%;overflow:hidden}.hero__ticker span:last-child{display:none}}

/* Marquee contínuo: faixa fixa, trilho duplicado e sem lacunas laterais. */
.hero--campaign .hero__ticker{left:-1%;right:auto;width:102%;display:block;overflow:hidden;padding:.68rem 0;transform:rotate(-1deg) translateY(8px);animation:none}.hero__ticker-track{display:flex;width:max-content;will-change:transform;animation:campaign-marquee 28s linear infinite}.hero__ticker-set{display:flex;flex:none;align-items:center;min-width:100vw}.hero__ticker-set span{display:block;flex:none;white-space:nowrap;padding-right:2.2rem}.hero__ticker:hover .hero__ticker-track{animation-play-state:paused}@keyframes campaign-marquee{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
@media(max-width:600px){.hero--campaign .hero__ticker{width:104%;left:-2%}.hero__ticker-track{animation-duration:22s}.hero__ticker-set span:last-child{display:block}}
@media(prefers-reduced-motion:reduce){.hero__ticker-track{animation:none;transform:none}}

/* Retrato recortado sobre o fundo fotográfico da hero. */
@media(min-width:981px){.hero--campaign{display:block;padding-top:max(9rem,14vh)}.hero--campaign .hero__copy{position:relative;z-index:3;width:min(57%,760px);margin-top:clamp(9rem,24vh,18rem)}.hero--campaign h1{margin:.65rem 0 1rem}.hero__portrait{position:absolute;z-index:2;right:max(2vw,calc((100vw - var(--campaign-max-width))/2));bottom:0;width:min(53vw,760px);height:calc(100% - 5rem);pointer-events:none}.hero__portrait:before{inset:20% 5% 0 22%;background:color-mix(in srgb,var(--campaign-accent) 22%,transparent);clip-path:ellipse(47% 46% at 55% 54%)}.hero__portrait>img{object-fit:contain;object-position:center bottom;clip-path:none;filter:drop-shadow(0 18px 24px rgba(0,0,0,.28))}.hero__portrait figcaption{right:4%;bottom:2.2rem}.hero__backdrop:after{background:linear-gradient(90deg,color-mix(in srgb,var(--campaign-primary) 88%,transparent) 0%,color-mix(in srgb,var(--campaign-primary) 62%,transparent) 52%,color-mix(in srgb,var(--campaign-primary) 38%,transparent) 100%)}}
@media(max-width:980px){.hero__portrait>img{object-fit:contain;object-position:center bottom;clip-path:none}}

/* Background da hero sem filtros: preserva integralmente as cores do arquivo. */
.hero--campaign .hero__backdrop{filter:none}.hero--campaign .hero__backdrop:after{content:none;background:none}

/* Marquee sempre acima do fundo, retrato, textos e selo eleitoral. */
.hero--campaign .hero__ticker{z-index:100;bottom:0;left:0;width:100%;transform:none;isolation:isolate;overflow:hidden;padding:.82rem 0;box-shadow:0 -5px 18px rgba(0,0,0,.12);font-size:.86rem}.hero--campaign .hero__ticker-track{position:relative;z-index:101}.hero--campaign .hero__portrait{z-index:2}.hero--campaign .hero__copy{z-index:3}.hero--campaign .hero__signal{z-index:-1}
.hero--campaign:has(.hero__decoration){min-height:calc(100svh + clamp(70px,7vw,104px));padding-bottom:calc(clamp(70px,7vw,104px) + 2rem)}.hero--campaign:has(.hero__decoration--above-ticker){padding-bottom:calc(clamp(70px,7vw,104px) + 5rem)}.hero__decoration{position:absolute;z-index:90;right:0;bottom:0;left:0;height:clamp(70px,7vw,104px);pointer-events:none;background-image:var(--campaign-hero-decoration);background-repeat:repeat-x;background-position:center top;background-size:auto 100%}.hero__decoration--above-ticker{bottom:2.7rem}.about-campaign-hero:has(.hero__decoration) .about-campaign-hero__scroll{z-index:91;bottom:calc(clamp(70px,7vw,104px) + 1rem)}@media(max-width:600px){.hero--campaign:has(.hero__decoration){min-height:calc(100svh + 64px);padding-bottom:calc(64px + 1.5rem)}.hero--campaign:has(.hero__decoration--above-ticker){padding-bottom:calc(64px + 4rem)}.hero__decoration{height:64px}.hero__decoration--above-ticker{bottom:2.35rem}.about-campaign-hero:has(.hero__decoration) .about-campaign-hero__scroll{bottom:76px}}
@media(max-width:600px){.hero--campaign .hero__ticker{left:0;width:100%;bottom:0;transform:none;padding:.72rem 0;font-size:.76rem}}

/* Identificação eleitoral logo abaixo do nome */
.hero__signal,.hero__portrait figcaption{display:none}.hero--campaign .hero__ballot{display:inline-flex;align-items:stretch;width:max-content;max-width:100%;margin:-.25rem 0 1rem;background:var(--campaign-accent);color:var(--campaign-primary);border-radius:var(--campaign-radius);overflow:hidden;box-shadow:7px 7px 0 var(--campaign-primary)}.hero__ballot>span{display:flex;align-items:center;max-width:150px;padding:.75rem 1rem;border-right:1px solid color-mix(in srgb,var(--campaign-primary) 28%,transparent);font:800 clamp(.68rem,1vw,.86rem)/1.08 var(--campaign-font-body);text-transform:uppercase;letter-spacing:.08em}.hero__ballot>strong{display:block;padding:.28rem 1rem .38rem;font:clamp(3.8rem,6.8vw,7rem)/.82 var(--campaign-font-display);letter-spacing:-.075em}.hero--campaign .hero__slogan{margin-top:1.2rem}
@media(max-width:600px){.hero--campaign .hero__ballot{box-shadow:5px 5px 0 var(--campaign-primary)}.hero__ballot>span{max-width:105px;padding:.6rem .7rem;font-size:.62rem}.hero__ballot>strong{font-size:clamp(3.2rem,17vw,5rem);padding:.25rem .7rem}}

/* Ritmo vertical mais compacto no topo da campanha. */
.campaign-header--floating{padding-top:.78rem;padding-bottom:.78rem}.hero--campaign h1{margin:.45rem 0 .65rem}.hero--campaign .hero__ballot{margin:0 0 .7rem}.hero--campaign .hero__slogan{margin:.7rem 0 0}.hero--campaign .hero__actions{margin-top:1.35rem}
@media(min-width:981px){.hero--campaign{padding-top:max(6.5rem,10vh)}.hero--campaign .hero__copy{margin-top:clamp(5rem,14vh,9rem)}}
@media(max-width:980px){.hero--campaign{padding-top:7rem;gap:2.5rem}}
@media(max-width:600px){.campaign-header--floating{padding-top:.65rem;padding-bottom:.65rem}.hero--campaign{padding-top:6.25rem;gap:2rem}.hero--campaign .hero__actions{margin-top:1.1rem}}
.about-campaign-hero .about-campaign-hero__title{font:800 clamp(1.7rem,3vw,2.8rem)/1.16 var(--campaign-font-body);letter-spacing:-.035em;max-width:760px}.about-campaign-hero .hero__copy{padding-bottom:2rem}.about-campaign-hero__scroll{position:absolute;z-index:6;left:50%;bottom:1.5rem;width:3.5rem;height:3.5rem;display:grid;place-items:center;transform:translateX(-50%);border:1px solid color-mix(in srgb,var(--campaign-surface) 55%,transparent);border-radius:50%;background:color-mix(in srgb,var(--campaign-primary) 72%,transparent);color:var(--campaign-surface);text-decoration:none;backdrop-filter:blur(8px);transition:transform .2s ease,background .2s ease,color .2s ease}.about-campaign-hero__scroll span{font:300 1.65rem/1 var(--campaign-font-body);transform:translateY(-.08rem)}.about-campaign-hero__scroll:hover,.about-campaign-hero__scroll:focus-visible{transform:translateX(-50%) translateY(4px);background:var(--campaign-accent);color:var(--campaign-primary);outline:2px solid var(--campaign-surface);outline-offset:3px}@media(max-width:600px){.about-campaign-hero__scroll{bottom:1rem;width:3rem;height:3rem}.about-campaign-hero .hero__copy{padding-bottom:0}}
.campaign-header--floating{border-bottom-color:color-mix(in srgb,var(--campaign-primary) 24%,transparent);color:var(--campaign-primary)}.campaign-header--floating .campaign-brand,.campaign-header--floating nav a{color:var(--campaign-primary)}.hero--campaign,.hero--campaign h1,.hero--campaign .hero__slogan,.hero--campaign .campaign-link{color:var(--campaign-primary)}
.campaign-page--dark-hero .campaign-header--floating{border-bottom-color:rgba(255,255,255,.28);color:#fff}.campaign-page--dark-hero .campaign-header--floating .campaign-brand,.campaign-page--dark-hero .campaign-header--floating nav a{color:#fff}.campaign-page--dark-hero .hero--campaign,.campaign-page--dark-hero .hero--campaign h1,.campaign-page--dark-hero .hero--campaign .hero__slogan,.campaign-page--dark-hero .hero--campaign .campaign-link{color:#fff}.campaign-page--dark-hero .hero--campaign .hero__slogan{color:rgba(255,255,255,.88)}

/* Detalhe de proposta segue o mesmo fluxo editorial das notícias. */
button,input,select,textarea{font-family:inherit}
.header-cta,.campaign-mobile-cta{align-items:center;gap:.45rem}.header-cta{display:inline-flex}.campaign-mobile-cta span,.header-cta span{font-size:1.05em;line-height:1}
.proposal-detail>main{display:block;padding-top:clamp(2rem,4vw,4rem)}
.proposal-detail__head{max-width:1000px}
.proposal-detail__cover{margin:4rem 0;border-radius:var(--campaign-radius);overflow:hidden}
.proposal-detail__cover img{display:block;width:100%;max-height:720px;object-fit:cover}
.proposal-detail__content{max-width:900px;margin-left:0;margin-right:0}
.proposal-detail .share-panel{max-width:900px}

/* Cabeçalho público compartilhado: mantém a linguagem da home sem sobrepor páginas sem hero. */
.campaign-header--page{position:relative;width:min(100%,var(--campaign-max-width));padding-top:.78rem;padding-bottom:.78rem;background:var(--campaign-secondary);border-bottom-color:color-mix(in srgb,var(--campaign-primary) 24%,transparent);color:var(--campaign-primary)}
.campaign-header--page .campaign-brand,.campaign-header--page nav a{color:var(--campaign-primary)}
.campaign-header--site nav a[aria-current="page"]{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:.35rem}
.campaign-header--site .header-cta[aria-current="page"]{outline:2px solid var(--campaign-primary);outline-offset:3px}
@media(max-width:980px){.campaign-header--page nav{display:none}}
@media(max-width:600px){.campaign-header--page{padding-top:.65rem;padding-bottom:.65rem}}

/* Escala editorial das páginas internas; home e blocos de hero mantêm sua escala de impacto. */
.proposal-detail__head h1,
.event-detail main>header h1,
.news-detail main h1,
.participate-intro h1,
.privacy-page main>header h1,
.public-timeline h2,
.vice-story h2,
.public-proposal h2,
.news-card h2{
  font-size:clamp(1.5rem,2.8vw,2.6rem);
  line-height:1.25;
  letter-spacing:-.035em;
}

.campaign-footer{max-width:none;margin:0;grid-template-columns:minmax(240px,320px) minmax(260px,1fr) auto;align-items:center;column-gap:clamp(1.25rem,2.5vw,2.5rem);row-gap:1.5rem;padding:clamp(2rem,4vw,3rem) max(clamp(1.25rem,4vw,3.5rem),calc((100vw - var(--campaign-max-width))/2 + 3.5rem));border-top:4px solid var(--campaign-accent);background:var(--campaign-primary);color:var(--campaign-surface)}.campaign-footer__identity{display:grid;justify-items:start;gap:.55rem}.campaign-footer__logo{display:block;width:auto;height:auto;max-width:180px;max-height:56px;object-fit:contain}.campaign-footer__identity strong{color:var(--campaign-accent)}.campaign-footer__identity span{font-size:.7rem;color:color-mix(in srgb,var(--campaign-surface) 82%,transparent)}.campaign-footer__legal{display:grid;gap:.65rem}.campaign-footer__legal p{max-width:680px;color:color-mix(in srgb,var(--campaign-surface) 82%,transparent);font-size:.9rem;line-height:1.6}.campaign-footer__legal span{font-size:.7rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--campaign-surface)}.campaign-footer__navigation{display:flex!important;flex-direction:column;align-items:flex-end;gap:.85rem}.campaign-footer__privacy{color:var(--campaign-surface);font-size:.7rem;font-weight:800;letter-spacing:.08em;text-decoration:none;text-transform:uppercase}.campaign-footer__privacy:hover,.campaign-footer__privacy:focus-visible{color:var(--campaign-accent);text-decoration:underline;text-underline-offset:.3rem}.campaign-socials{display:flex!important;align-items:center;justify-content:flex-end;gap:.55rem}.campaign-socials a{display:grid;place-items:center;width:38px;height:38px;border:1px solid color-mix(in srgb,var(--campaign-surface) 38%,transparent);color:var(--campaign-surface);background:transparent;transition:background .2s,color .2s,transform .2s}.campaign-socials a:hover,.campaign-socials a:focus-visible{background:var(--campaign-accent);border-color:var(--campaign-accent);color:var(--campaign-primary);transform:translateY(-2px)}.campaign-socials svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.campaign-socials .social-icon-fill{fill:currentColor;stroke:none}@media(max-width:860px){.campaign-footer{grid-template-columns:1fr}.campaign-footer__navigation{align-items:flex-start}.campaign-socials{justify-content:flex-start}}

.home-gallery{max-width:var(--campaign-max-width);margin:auto;padding:clamp(4rem,8vw,8rem) clamp(1.25rem,4vw,3.5rem);background:var(--campaign-secondary)}.home-gallery>header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1.15rem 2rem;align-items:end;margin-bottom:2.5rem}.home-gallery>header>p{grid-column:1/-1;margin:0;text-transform:uppercase;letter-spacing:.18em;font-size:.67rem;font-weight:800}.home-gallery>header h2{margin:0;font:clamp(2.4rem,5vw,5rem)/.9 var(--campaign-font-display);text-transform:uppercase;letter-spacing:-.05em}.home-gallery>header>span{font-size:.7rem;font-weight:700}.home-gallery>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:190px;gap:.7rem}.home-gallery__item{position:relative;overflow:hidden;background:var(--campaign-primary);color:var(--campaign-surface);text-decoration:none}.home-gallery__item:first-child{grid-column:span 2;grid-row:span 2}.home-gallery__item:nth-child(4){grid-column:span 2}.home-gallery__item img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .45s ease,filter .45s ease}.home-gallery__item:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,color-mix(in srgb,var(--campaign-primary) 84%,transparent));opacity:.72;transition:opacity .3s}.home-gallery__item span{position:absolute;z-index:1;left:1rem;right:1rem;bottom:1rem;font-size:.72rem;font-weight:700;line-height:1.4}.home-gallery__item:hover img,.home-gallery__item:focus-visible img{transform:scale(1.04);filter:saturate(1.08)}.home-gallery__item:hover:after,.home-gallery__item:focus-visible:after{opacity:.9}@media(max-width:860px){.home-gallery>div{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:180px}.home-gallery__item:nth-child(4){grid-column:auto}}@media(max-width:560px){.home-gallery>header{grid-template-columns:1fr}.home-gallery>header>span{grid-column:1}.home-gallery>div{grid-auto-rows:145px}.home-gallery__item:first-child{grid-column:1/-1;grid-row:span 2}}

.home-gallery>header>a{color:var(--campaign-primary);font-size:.72rem;font-weight:800;text-decoration:none}.home-gallery>header>a:hover,.home-gallery>header>a:focus-visible{text-decoration:underline;text-underline-offset:.35rem}.home-gallery>div{grid-auto-flow:dense}.home-gallery__item{appearance:none;width:100%;height:100%;padding:0;border:0;font:inherit;text-align:left;cursor:zoom-in}.home-gallery>div:has(.home-gallery__item:nth-child(7):last-child) .home-gallery__item:nth-child(7){grid-column:span 2}.gallery-page__head{max-width:var(--campaign-max-width);margin:auto;padding:clamp(4rem,7vw,7rem) clamp(1.25rem,4vw,3.5rem);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem 2rem;align-items:end}.gallery-page__head>p{grid-column:1/-1;margin:0;text-transform:uppercase;letter-spacing:.18em;font-size:.67rem;font-weight:800}.gallery-page__head h1{margin:0;font:clamp(1.5rem,2.8vw,2.6rem)/1.15 var(--campaign-font-display);text-transform:uppercase;letter-spacing:-.055em}.gallery-page__head>span{font-size:.7rem;font-weight:700}.gallery-page__grid{max-width:var(--campaign-max-width);margin:0 auto;padding:0 clamp(1.25rem,4vw,3.5rem) clamp(5rem,9vw,9rem);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:230px;grid-auto-flow:dense;gap:.7rem}.gallery-photo{position:relative;appearance:none;padding:0;border:0;background:var(--campaign-primary);overflow:hidden;cursor:zoom-in;color:var(--campaign-surface);text-align:left}.gallery-photo--1,.gallery-photo--6{grid-column:span 2;grid-row:span 2}.gallery-photo--4,.gallery-photo--8{grid-column:span 2}.gallery-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.gallery-photo>span{position:absolute;z-index:1;left:0;right:0;bottom:0;display:grid;gap:.25rem;padding:2.5rem 1rem 1rem;background:linear-gradient(transparent,color-mix(in srgb,var(--campaign-primary) 92%,transparent))}.gallery-photo>span strong{font:.85rem var(--campaign-font-display);text-transform:uppercase}.gallery-photo>span small{font-size:.7rem;line-height:1.4}.gallery-photo:hover img,.gallery-photo:focus-visible img{transform:scale(1.035)}.gallery-modal[hidden]{display:none}.gallery-modal{position:fixed;z-index:200;inset:0;display:grid;place-items:center;padding:clamp(.8rem,3vw,2rem)}.gallery-modal__backdrop{position:absolute;inset:0;background:rgba(4,17,14,.92);backdrop-filter:blur(8px)}.gallery-modal__dialog{position:relative;z-index:1;width:min(1120px,100%);height:min(88svh,820px);display:grid;grid-template-columns:56px minmax(0,1fr) 56px;align-items:center}.gallery-modal figure{grid-column:2;margin:0;max-height:100%;display:grid;grid-template-rows:minmax(0,1fr) auto;background:var(--campaign-secondary);box-shadow:0 30px 80px rgba(0,0,0,.35)}.gallery-modal figure>img{display:block;width:100%;height:100%;max-height:72svh;object-fit:contain;background:#071411}.gallery-modal figcaption{padding:1rem 1.2rem;color:var(--campaign-text)}.gallery-modal figcaption strong{display:block;font:1rem var(--campaign-font-display);text-transform:uppercase}.gallery-modal figcaption p{margin:.35rem 0 0;font-size:.78rem;line-height:1.5}.gallery-modal__close,.gallery-modal__nav{appearance:none;border:0;cursor:pointer;color:#fff;background:transparent}.gallery-modal__close{position:absolute;right:0;top:-.35rem;width:44px;height:44px;font-size:2rem}.gallery-modal__nav{width:48px;height:48px;font-size:1.4rem}.gallery-modal__nav--prev{grid-column:1}.gallery-modal__nav--next{grid-column:3}.gallery-modal__close:hover,.gallery-modal__close:focus-visible,.gallery-modal__nav:hover,.gallery-modal__nav:focus-visible{color:var(--campaign-accent)}.gallery-modal-open{overflow:hidden}@media(max-width:860px){.gallery-page__grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:190px}.gallery-photo--4,.gallery-photo--8{grid-column:auto}.gallery-modal__dialog{grid-template-columns:40px minmax(0,1fr) 40px}.gallery-modal__nav{width:38px}}@media(max-width:560px){.home-gallery>header>a{grid-column:1}.home-gallery>div:has(.home-gallery__item:nth-child(7):last-child) .home-gallery__item:nth-child(7){grid-column:auto}.gallery-page__head{grid-template-columns:1fr}.gallery-page__head>span{grid-column:1}.gallery-page__grid{grid-auto-rows:145px}.gallery-photo--1,.gallery-photo--6{grid-column:1/-1;grid-row:span 2}.gallery-modal{padding:.45rem}.gallery-modal__dialog{height:94svh;grid-template-columns:34px minmax(0,1fr) 34px}.gallery-modal__close{right:.1rem;top:.1rem;z-index:2;background:rgba(0,0,0,.45)}.gallery-modal figure>img{max-height:76svh}}
.hero--campaign .campaign-button{background:var(--campaign-accent);color:var(--campaign-primary);box-shadow:7px 7px 0 var(--campaign-primary)}.hero--campaign .campaign-button:hover,.hero--campaign .campaign-button:focus-visible{box-shadow:9px 9px 0 var(--campaign-primary)}
.manifesto .manifesto__lead{margin:1.5rem 0 .5rem;font-size:clamp(1.2rem,2vw,1.65rem);font-weight:800;line-height:1.4;color:var(--campaign-surface)}.manifesto .manifesto__summary{margin-top:.75rem}
.manifesto--with-background{position:relative;isolation:isolate;overflow:hidden;background:transparent}.manifesto--with-background:after{content:'';position:absolute;z-index:1;inset:0;background:color-mix(in srgb,var(--campaign-primary) 32%,transparent);pointer-events:none}.manifesto--with-background>.manifesto__index,.manifesto--with-background>div{position:relative;z-index:2}.manifesto__background{position:absolute;z-index:0;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;mix-blend-mode:normal;opacity:1;pointer-events:none}
.about-story--with-background{position:relative;isolation:isolate;overflow:hidden;background:transparent}.about-story--with-background:after{content:'';position:absolute;z-index:1;inset:0;background:color-mix(in srgb,var(--campaign-primary) 32%,transparent);pointer-events:none}.about-story--with-background>aside,.about-story--with-background>article{position:relative;z-index:2}.about-story__background{position:absolute;z-index:0;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;mix-blend-mode:normal;opacity:1;pointer-events:none}

/* Sistema editorial: identificação acima e conteúdo alinhado ao início do container. */
.manifesto{grid-template-columns:minmax(0,1fr);gap:1.25rem}.manifesto>div{width:100%;max-width:none}.manifesto h2{max-width:none}.manifesto div p{max-width:1000px}
.home-proposals>header,.home-agenda>header,.home-news>header,.proposals-hero,.agenda-hero,.news-hero,.participate-intro{grid-template-columns:minmax(0,1fr) auto;align-items:end;column-gap:2rem;row-gap:1.15rem}.home-proposals>header>p,.home-agenda>header>p,.home-news>header>p,.proposals-hero>p,.agenda-hero>p,.news-hero>p,.participate-intro>p:first-child{grid-column:1/-1;margin:0}.home-proposals>header>h2,.home-agenda>header>h2,.home-news>header>h2,.proposals-hero>h1,.agenda-hero>h1,.news-hero>h1,.participate-intro>h1{grid-column:1;justify-self:start;width:100%;max-width:none}.home-proposals>header>a,.home-agenda>header>a,.home-news>header>a,.proposals-hero>span,.agenda-hero>span,.news-hero>span,.participate-intro>p:last-child{grid-column:2;justify-self:end}
.about-story{grid-template-columns:minmax(0,1fr);gap:1.5rem}.about-story aside,.about-story article{width:100%;max-width:none}.about-story blockquote{max-width:1000px;margin:1.5rem 0}.public-timeline header{grid-template-columns:minmax(0,1fr);gap:1.15rem}.public-timeline header>p{margin:0}.public-timeline h2{width:100%;max-width:none}.vice-story{grid-template-columns:minmax(0,1fr) auto;align-items:end}.vice-story>span{grid-column:1/-1}.vice-story>div{grid-column:1}.vice-story>b{grid-column:2}.home-join{grid-template-columns:minmax(0,1fr) auto;align-items:end}.home-join>p{grid-column:1/-1;margin:0}.home-join>h2{grid-column:1}.home-join>.campaign-button{grid-column:2}.participate-form{margin-left:0}.privacy-page main{grid-template-columns:minmax(0,1fr)}.privacy-page main>header{position:static}.privacy-page article{max-width:1000px}.news-detail main>article{max-width:900px;margin-left:0;margin-right:0}
@media(max-width:760px){.home-proposals>header,.home-agenda>header,.home-news>header,.proposals-hero,.agenda-hero,.news-hero,.participate-intro,.vice-story,.home-join{grid-template-columns:minmax(0,1fr)}.home-proposals>header>a,.home-agenda>header>a,.home-news>header>a,.proposals-hero>span,.agenda-hero>span,.news-hero>span,.participate-intro>p:last-child,.vice-story>div,.home-join>h2,.home-join>.campaign-button{grid-column:1;justify-self:start}.vice-story>b{display:none}}

/* Notícias: grade até 3 itens; carrossel editorial de 4 a 9 itens. */
.campaign-brand small{padding:.38rem .5rem;border:1px solid currentColor;font:800 .56rem/1 var(--campaign-font-body);letter-spacing:.1em}.hero--campaign .hero__ballot--pre{box-shadow:5px 5px 0 var(--campaign-surface)}.hero__ballot--pre>span{max-width:none;border:0;padding:.75rem 1rem;letter-spacing:.13em}.proposal-detail__mark--pre{aspect-ratio:auto;border-radius:0;padding:2.5rem 1.5rem;transform:rotate(2deg)}.proposal-detail__mark--pre b{margin:.65rem 0;font-size:clamp(1.8rem,4vw,3.2rem);text-transform:uppercase;letter-spacing:-.04em}.campaign-page--pre-candidate .campaign-footer__identity span{font-weight:800;text-transform:uppercase;letter-spacing:.1em}
.home-news>.home-news__viewport{display:block}.home-news__track{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.home-news__card{display:grid;align-content:start;color:var(--campaign-text);text-decoration:none;border-top:5px solid var(--campaign-primary);background:var(--campaign-surface);padding:1.2rem;min-height:360px}.home-news--carousel>.home-news__viewport{overflow-x:auto;scrollbar-width:none;scroll-snap-type:x mandatory;outline-offset:5px}.home-news--carousel>.home-news__viewport::-webkit-scrollbar{display:none}.home-news--carousel .home-news__track{display:flex}.home-news--carousel .home-news__card{flex:0 0 calc((100% - 2rem)/3);scroll-snap-align:start}.home-news__controls{display:flex;align-items:center;justify-content:space-between;margin-top:1.25rem}.home-news__controls p{margin:0;font-size:.68rem;letter-spacing:.13em}.home-news__arrows{display:flex;gap:.5rem}.home-news__arrows button{width:2.75rem;height:2.75rem;border:1px solid var(--campaign-primary);background:transparent;color:var(--campaign-primary);font:700 1rem/1 inherit;cursor:pointer;transition:background .2s,color .2s}.home-news__arrows button:hover,.home-news__arrows button:focus-visible{background:var(--campaign-primary);color:var(--campaign-surface)}
@media(max-width:800px){.home-news__track{grid-template-columns:1fr}.home-news--carousel .home-news__card{flex-basis:82%}}

/* Capítulos visuais da trajetória */
.about-chapters{max-width:var(--campaign-max-width);margin:auto;padding:clamp(3rem,7vw,7rem) clamp(1.25rem,4vw,3.5rem);display:grid;gap:clamp(1rem,3vw,2.5rem)}.about-chapter{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.95fr);min-height:430px;background:var(--campaign-accent);color:var(--campaign-primary);overflow:hidden}.about-chapter--reverse{grid-template-columns:minmax(320px,.95fr) minmax(0,1fr)}.about-chapter--reverse>div{grid-column:2}.about-chapter--reverse>figure{grid-column:1;grid-row:1}.about-chapter>div{display:grid;align-content:center;min-width:0;overflow:hidden;padding:clamp(2rem,4vw,4rem)}.about-chapter h2{max-width:100%;margin:0 0 1.35rem;font:clamp(1.65rem,3vw,3.15rem)/1.02 var(--campaign-font-display);text-transform:uppercase;letter-spacing:-.04em;overflow-wrap:anywhere}.about-chapter h2::first-line{color:var(--campaign-primary)}.about-chapter p{width:100%;max-width:620px;margin:0;font-size:clamp(.88rem,1.1vw,1rem);line-height:1.7;overflow-wrap:anywhere}.about-chapter figure{min-width:0;min-height:430px;margin:0;background:var(--campaign-primary);overflow:hidden}.about-chapter img{display:block;width:100%;height:100%;object-fit:cover}.about-chapter:nth-child(even){background:var(--campaign-primary);color:var(--campaign-surface)}.about-chapter:nth-child(even) h2{color:var(--campaign-accent)}@media(max-width:760px){.about-chapter,.about-chapter--reverse{grid-template-columns:1fr}.about-chapter--reverse>div,.about-chapter--reverse>figure{grid-column:1}.about-chapter--reverse>div{grid-row:1}.about-chapter--reverse>figure{grid-row:2}.about-chapter figure{min-height:min(75vw,420px)}}

/* Compromissos fotográficos */
.home-achievements{background:var(--campaign-primary);color:var(--campaign-surface)}.achievement-group{padding:clamp(3rem,6vw,6rem) max(clamp(1.25rem,4vw,3.5rem),calc((100vw - var(--campaign-max-width))/2 + 3.5rem))}.achievement-group--bright{background:var(--campaign-accent);color:var(--campaign-primary)}.achievement-group--dark{background:var(--campaign-primary);color:var(--campaign-surface)}.achievement-group>header{max-width:950px;margin-bottom:clamp(2rem,4vw,3.5rem)}.achievement-group>header>p{margin:0 0 .8rem;font-size:.65rem;font-weight:800;letter-spacing:.18em}.achievement-group h2{margin:0;font:clamp(2rem,4vw,4rem)/1 var(--campaign-font-display);text-transform:uppercase;letter-spacing:-.045em}.achievement-group>header>span{display:block;max-width:800px;margin-top:1rem;font-size:.9rem;line-height:1.65}.achievement-group>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(.7rem,2vw,1.2rem)}.achievement-group>div>section{display:grid;grid-template-columns:18px minmax(0,1fr);gap:1rem;padding:1.2rem 0;border-top:2px solid currentColor}.achievement-group i{width:12px;height:12px;margin-top:.3rem;background:var(--campaign-accent);border-radius:50%;box-shadow:0 0 0 4px color-mix(in srgb,var(--campaign-accent) 25%,transparent)}.achievement-group--bright i{background:var(--campaign-primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--campaign-primary) 18%,transparent)}.achievement-group small{display:block;margin-bottom:.4rem;font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.achievement-group h3{margin:0;font:1.1rem/1.15 var(--campaign-font-display);text-transform:uppercase}.achievement-group section p{max-width:620px;margin:.6rem 0 0;font-size:clamp(.9rem,1.05vw,1rem);line-height:1.65}@media(max-width:700px){.achievement-group>div{grid-template-columns:1fr}}
.home-achievements__cta{display:block;width:max-content;max-width:100%;margin:clamp(1.5rem,3vw,2.5rem) 0 0 auto;color:currentColor;font-size:.72rem;font-weight:800;text-decoration:none}.home-achievements__cta:hover,.home-achievements__cta:focus-visible{text-decoration:underline;text-underline-offset:.3rem}
.home-story{max-width:var(--campaign-max-width);margin:auto;padding:clamp(3rem,6vw,6rem) clamp(1.25rem,4vw,3.5rem) clamp(2rem,4vw,4rem)}.home-story>header{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:1.25rem}.home-story>header p{margin:0;font-size:.67rem;font-weight:800;letter-spacing:.18em}.home-story>header a{color:var(--campaign-primary);font-size:.72rem;font-weight:800;text-decoration:none}.home-story__viewport{overflow-x:auto;scrollbar-width:none;scroll-snap-type:x mandatory;outline-offset:5px}.home-story__viewport::-webkit-scrollbar{display:none}.home-story__track{display:flex}.home-story__track>.about-chapter{flex:0 0 100%;scroll-snap-align:start}.home-story__controls{display:flex;align-items:center;justify-content:space-between;margin-top:1rem}.home-story__controls>div{display:flex;gap:.5rem}.home-story__controls button{width:2.75rem;height:2.75rem;border:1px solid var(--campaign-primary);background:transparent;color:var(--campaign-primary);font:700 1rem/1 inherit;cursor:pointer;transition:.2s}.home-story__controls button:hover,.home-story__controls button:focus-visible{background:var(--campaign-primary);color:var(--campaign-surface)}.home-story__controls p{margin:0;font-size:.68rem;letter-spacing:.13em}.home-story+.home-proposals{padding-top:clamp(2rem,4vw,4rem)}@media(max-width:760px){.home-story>header{align-items:flex-start;flex-direction:column;gap:.7rem}.home-story__track>.about-chapter{min-height:0}}

/* Compromissos fotográficos */
.about-chapters{padding-top:clamp(2rem,4vw,4rem);padding-bottom:clamp(2rem,4vw,4rem);gap:clamp(1rem,2vw,1.75rem)}.about-chapters+.public-timeline{padding-top:clamp(2rem,4vw,4rem)}.public-timeline+.about-chapters{padding-top:clamp(2rem,4vw,4rem)}

/* Compromissos fotográficos */
.home-proposals--visual>div{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);grid-template-rows:repeat(2,minmax(230px,1fr));gap:.8rem;border:0}.home-proposals--visual .home-proposal-card{display:grid;grid-template-rows:minmax(125px,1fr) auto;min-height:0;padding:0;border:0!important;background:var(--campaign-primary);color:var(--campaign-surface);overflow:hidden;border-radius:var(--campaign-radius);transform:none}.home-proposals--visual .home-proposal-card:hover{transform:translateY(-5px)}.home-proposal-card--featured{grid-row:1/3;min-height:540px!important}.home-proposal-card figure{position:relative;min-height:0;margin:0;overflow:hidden;background:color-mix(in srgb,var(--campaign-primary) 84%,var(--campaign-accent))}.home-proposal-card figure img{width:100%;height:100%;min-height:150px;display:block;object-fit:cover;filter:saturate(.82);transition:transform .35s ease}.home-proposal-card:hover figure img{transform:scale(1.025)}.home-proposal-card figure span{position:absolute;inset:0;display:grid;place-items:center;font:clamp(4rem,9vw,8rem)/1 var(--campaign-font-display);color:color-mix(in srgb,var(--campaign-accent) 55%,transparent)}.home-proposal-card>div{display:grid;align-content:start;padding:1.1rem 1.25rem;background:var(--campaign-primary)}.home-proposal-card:nth-child(even)>div{background:var(--campaign-accent);color:var(--campaign-primary)}.home-proposal-card small{margin:0 0 .55rem!important;text-transform:uppercase;letter-spacing:.12em;font-size:.65rem;font-weight:800}.home-proposal-card h3{font-size:clamp(1.25rem,2.2vw,2rem);line-height:1;margin:0}.home-proposal-card--featured h3{font-size:clamp(2rem,4vw,3.7rem)}.home-proposal-card p{max-width:680px;margin:.7rem 0 0;font-size:.78rem;line-height:1.5}.home-proposal-card b{margin-top:.85rem!important;font-size:.68rem}.home-proposals--visual>div:has(.home-proposal-card:nth-child(4)){grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,minmax(220px,auto))}.home-proposals--visual>div:has(.home-proposal-card:nth-child(4)) .home-proposal-card--featured{grid-column:1/3;grid-row:1/3}.home-proposals--visual>div:has(.home-proposal-card:nth-child(4)) .home-proposal-card:nth-child(n+4){grid-row:3}.home-proposals--visual>div:has(.home-proposal-card:nth-child(4)) .home-proposal-card:nth-child(4){grid-column:1}.home-proposals--visual>div:has(.home-proposal-card:nth-child(4)) .home-proposal-card:nth-child(5){grid-column:2}.home-proposals--visual>div:has(.home-proposal-card:nth-child(4)) .home-proposal-card:nth-child(6){grid-column:3}@media(max-width:860px){.home-proposals--visual>div,.home-proposals--visual>div:has(.home-proposal-card:nth-child(4)){grid-template-columns:1fr 1fr;grid-template-rows:auto}.home-proposals--visual .home-proposal-card,.home-proposals--visual>div:has(.home-proposal-card:nth-child(4)) .home-proposal-card:nth-child(n){grid-column:auto;grid-row:auto;min-height:320px}.home-proposal-card--featured{grid-column:1/3!important;min-height:480px!important}}@media(max-width:600px){.home-proposals--visual>div,.home-proposals--visual>div:has(.home-proposal-card:nth-child(4)){grid-template-columns:1fr}.home-proposals--visual .home-proposal-card,.home-proposals--visual>div:has(.home-proposal-card:nth-child(4)) .home-proposal-card:nth-child(n){grid-column:1!important;min-height:310px}.home-proposal-card--featured{min-height:440px!important}}

/* Atalhos flutuantes */
.site-tools{position:fixed;z-index:150;right:clamp(.8rem,2vw,1.5rem);bottom:clamp(.8rem,2vw,1.5rem);display:flex;flex-direction:column;align-items:center;gap:.65rem}.site-tool{appearance:none;display:grid;place-items:center;padding:0;border-radius:50%;text-decoration:none;cursor:pointer;transition:transform .2s,background .2s,opacity .2s}.site-tool svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.site-tool span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.site-tool--whatsapp{width:56px;height:56px;border:0;background:#25d366;color:#fff;box-shadow:0 5px 18px rgba(7,55,28,.24)}.site-tool--whatsapp svg{display:block;width:32px;height:32px;fill:currentColor;stroke:none}.site-tool--whatsapp:hover,.site-tool--whatsapp:focus-visible{transform:translateY(-2px) scale(1.04);background:#20bd5a;outline:3px solid color-mix(in srgb,#25d366 35%,transparent);outline-offset:3px}.site-tool--top{width:38px;height:38px;border:1px solid color-mix(in srgb,var(--campaign-primary) 28%,transparent);background:color-mix(in srgb,var(--campaign-secondary) 90%,transparent);color:color-mix(in srgb,var(--campaign-primary) 78%,transparent);box-shadow:0 2px 9px color-mix(in srgb,var(--campaign-primary) 10%,transparent);backdrop-filter:blur(6px)}.site-tool--top svg{width:17px;height:17px}.site-tool--top:hover,.site-tool--top:focus-visible{transform:translateY(-1px);background:var(--campaign-primary);color:var(--campaign-surface);outline:none}.site-tool[hidden]{display:none}

/* No mobile, o retrato termina junto à faixa inferior da hero. */
@media(max-width:980px){.hero--campaign{padding-bottom:2.65rem}.hero--campaign .hero__portrait{align-self:end;margin-bottom:0}}

/* Listagem editorial de notícias, sem fundos em bloco. */
.news-page .news-grid{column-gap:clamp(1.5rem,3vw,3rem);row-gap:clamp(2.5rem,5vw,4.5rem);background:transparent}.news-page .news-card{min-height:0;border-top:1px solid var(--line);background:transparent;overflow:hidden}.news-page .news-card img{transition:transform .35s ease,filter .35s ease}.news-page .news-card:hover img{transform:scale(1.015);filter:saturate(1.06)}.news-page .news-card>div{padding:clamp(1.15rem,2vw,1.6rem) 0 0}.news-page .news-card h2{margin:1.4rem 0 .75rem}.news-page .news-card p{margin:.35rem 0 0;color:color-mix(in srgb,var(--campaign-text) 76%,transparent)}.news-page .news-card b{margin-top:1.4rem}.news-page .news-card:hover h2,.news-page .news-card:focus-visible h2{text-decoration:underline;text-decoration-thickness:.08em;text-underline-offset:.18em}.news-page .news-card--lead{column-gap:clamp(1.5rem,3vw,3rem);padding-bottom:clamp(1rem,2vw,2rem);border-bottom:1px solid var(--line)}.news-page .news-card--lead>div{padding-top:clamp(1.15rem,2vw,1.6rem)}@media(max-width:800px){.news-page .news-grid{row-gap:3rem}.news-page .news-card--lead{gap:0;padding-bottom:0}.news-page .news-card--lead img{height:260px}}

.gallery-modal figcaption>a{display:inline-flex;margin-top:.65rem;color:inherit;font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;text-underline-offset:.2rem}.gallery-modal figcaption>a:hover{text-decoration-thickness:2px}.gallery-modal figcaption>a[hidden]{display:none}

/* Arrecadação é apresentada como passagem segura para a plataforma eleitoral externa. */
.home-donations{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);align-items:end;gap:clamp(2rem,6vw,7rem);padding:clamp(3.5rem,7vw,6.5rem) max(clamp(1.25rem,4vw,3.5rem),calc((100vw - var(--campaign-max-width))/2 + 3.5rem));background:var(--campaign-primary);color:var(--campaign-surface);border-top:1px solid color-mix(in srgb,var(--campaign-surface) 20%,transparent)}.home-donations p{margin:0 0 1rem;color:var(--campaign-accent);font-size:.67rem;font-weight:800;letter-spacing:.2em}.home-donations h2{max-width:850px;margin:0;font:clamp(2.2rem,4.5vw,4.8rem)/.94 var(--campaign-font-display);letter-spacing:-.05em;text-transform:uppercase}.home-donations div>span{display:block;max-width:720px;margin-top:1.35rem;color:color-mix(in srgb,var(--campaign-surface) 78%,transparent);font-size:.95rem;line-height:1.7}.home-donations aside{display:grid;gap:1.1rem}.home-donations aside>a{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.15rem 1.3rem;background:var(--campaign-accent);color:var(--campaign-primary);font-size:.78rem;font-weight:800;letter-spacing:.04em;text-decoration:none;text-transform:uppercase;box-shadow:6px 6px 0 color-mix(in srgb,var(--campaign-surface) 22%,transparent);transition:transform .2s,box-shadow .2s}.home-donations aside>a:hover,.home-donations aside>a:focus-visible{transform:translate(-2px,-2px);box-shadow:9px 9px 0 color-mix(in srgb,var(--campaign-surface) 26%,transparent)}.home-donations aside>a b{font-size:1.1rem}.home-donations aside small{color:color-mix(in srgb,var(--campaign-surface) 68%,transparent);font-size:.66rem;line-height:1.55}@media(max-width:800px){.home-donations{grid-template-columns:1fr;align-items:start}.home-donations aside{max-width:480px}.home-donations h2{font-size:clamp(2.2rem,11vw,3.7rem)}}
.home-donations--with-background{position:relative;isolation:isolate;overflow:hidden;background:transparent}.home-donations--with-background:after{content:'';position:absolute;z-index:1;inset:0;background:color-mix(in srgb,var(--campaign-primary) 32%,transparent);pointer-events:none}.home-donations--with-background>div,.home-donations--with-background>aside{position:relative;z-index:2}.home-donations__background{position:absolute;z-index:0;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;mix-blend-mode:normal;opacity:1;pointer-events:none}

/* O arredondamento configurado funciona como um sistema: superfícies usam o valor integral e controles, a escala reduzida. */
:is(.home-news__card,.news-card,.news-detail figure,.public-proposal,.home-proposal-card,.home-gallery__item,.gallery-photo,.about-chapter,.participate-form,.participate-success,.event-detail main>aside,.home-join__options>article,.support-frames article,.gallery-modal figure){border-radius:var(--campaign-radius);overflow:hidden}
:is(.campaign-button,.header-cta,.home-donations aside>a,.event-calendar-actions a,.home-news__arrows button,.home-story__controls button,.campaign-socials a,.cookie-notice button,.participate-form fieldset>label>span,.participate-form input:not([type=checkbox]):not([type=radio]),.participate-form textarea){border-radius:var(--campaign-radius-small)}
:is(.support-frames figure,.news-card>img,.home-news__card>img){border-radius:var(--campaign-radius-small);overflow:hidden}
.public-breadcrumbs{grid-column:1/-1;margin:0 0 1.5rem}.public-breadcrumbs ol{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center;margin:0;padding:0;list-style:none;font-size:.72rem}.public-breadcrumbs li+li::before{content:'/';margin-right:.45rem;opacity:.45}.public-breadcrumbs a{color:inherit;text-decoration:none;font-weight:700}.public-breadcrumbs span{opacity:.7}.share-panel{grid-column:1;margin-top:2.5rem;padding-top:1.25rem;border-top:1px solid var(--line)}.share-panel>strong{display:block;margin-bottom:.75rem;font-size:.68rem;text-transform:uppercase;letter-spacing:.14em}.share-panel>div{display:flex;flex-wrap:wrap;gap:.5rem}.share-panel a,.share-panel button{appearance:none;border:1px solid currentColor;background:transparent;color:inherit;border-radius:var(--campaign-radius);padding:.55rem .72rem;font:700 .68rem/1 inherit;text-decoration:none;cursor:pointer}.public-error{min-height:100vh;display:grid;place-content:center;justify-items:start;gap:1rem;max-width:850px;margin:auto;padding:2rem}.public-error>p:first-child{text-transform:uppercase;letter-spacing:.16em;font-size:.7rem;font-weight:800}.public-error h1{font:clamp(2.7rem,7vw,6.5rem)/.9 var(--campaign-font-display);text-transform:uppercase;margin:0}.public-error nav{display:flex;align-items:center;flex-wrap:wrap;gap:1.2rem}.public-error nav>a:not(.campaign-button){color:inherit;font-weight:700;font-size:.76rem}
.campaign-brand--configurable{display:flex;align-items:center;gap:.75rem}.campaign-brand--configurable .campaign-party-logo{width:auto;height:clamp(26px,3vw,38px);max-width:82px;padding-left:.75rem;border-left:1px solid color-mix(in srgb,currentColor 45%,transparent);object-fit:contain}.campaign-footer .campaign-footer__marks{display:flex!important;align-items:center;gap:.75rem;flex-wrap:nowrap;width:max-content;max-width:100%}.campaign-footer__party-logo{display:block;flex:0 0 auto;width:auto;height:30px;max-width:68px;padding-left:.75rem;border-left:1px solid color-mix(in srgb,var(--campaign-surface) 38%,transparent);object-fit:contain}.hero-asset--party>img{object-fit:contain;padding:1rem;background:#f4f1e8}@media(max-width:600px){.campaign-brand--configurable{gap:.5rem}.campaign-brand--configurable .campaign-party-logo{height:26px;max-width:58px;padding-left:.5rem}.campaign-footer__logo{max-width:165px;max-height:50px}.campaign-footer__party-logo{height:26px;max-width:58px;padding-left:.55rem}}
@media(max-width:600px){.hero--campaign .hero__portrait{width:100%;height:min(64vh,620px);margin-bottom:-1.5rem;transform:translateY(1.5rem)}.hero--campaign:has(.hero__decoration) .hero__portrait{margin-bottom:-1.5rem}.hero--campaign .hero__portrait>img{object-position:center bottom}.hero__decoration,.hero--campaign .hero__ticker{z-index:90}}
.campaign-menu-toggle,.campaign-mobile-cta{display:none}@media(max-width:980px){.campaign-header{isolation:isolate}.campaign-menu-toggle{display:grid;place-content:center;gap:5px;width:44px;height:44px;margin-left:auto;padding:0;border:1px solid currentColor;border-radius:var(--campaign-radius-small);background:color-mix(in srgb,var(--campaign-primary) 8%,transparent);color:inherit;cursor:pointer}.campaign-menu-toggle span{display:block;width:20px;height:2px;background:currentColor;transition:transform .2s,opacity .2s}.campaign-header--menu-open .campaign-menu-toggle span:first-child{transform:translateY(7px) rotate(45deg)}.campaign-header--menu-open .campaign-menu-toggle span:nth-child(2){opacity:0}.campaign-header--menu-open .campaign-menu-toggle span:last-child{transform:translateY(-7px) rotate(-45deg)}.campaign-header[data-menu-open] nav,.campaign-header--menu-open nav{display:flex;position:absolute;z-index:20;top:calc(100% - 1px);right:1.25rem;left:1.25rem;align-items:stretch;gap:0;padding:.6rem;background:var(--campaign-primary);box-shadow:0 18px 36px rgba(0,0,0,.24);border-radius:var(--campaign-radius);color:var(--campaign-surface)}.campaign-header--menu-open nav a{display:block!important;padding:.9rem 1rem;border-bottom:1px solid color-mix(in srgb,var(--campaign-surface) 18%,transparent);color:var(--campaign-surface)}.campaign-header--menu-open nav a:last-child{border:0}.campaign-mobile-cta{background:var(--campaign-accent);color:var(--campaign-primary)!important}.campaign-header .header-cta{margin-left:.6rem}}@media(max-width:600px){.campaign-header .header-cta{display:none}.campaign-menu-toggle{margin-left:auto}}
@media(max-width:800px){.event-calendar-actions{grid-template-columns:repeat(2,max-content);justify-content:end;gap:.4rem;padding:.05rem .25rem 1rem}.event-calendar-actions a{min-height:36px;padding:.42rem .65rem;background:transparent;font-size:.58rem;letter-spacing:.02em}.event-calendar-actions__native{background:color-mix(in srgb,var(--campaign-primary) 9%,transparent)!important;color:var(--campaign-primary)!important;border-color:color-mix(in srgb,var(--campaign-primary) 38%,transparent)!important}.event-calendar-actions svg{width:14px;height:14px}.event-calendar-actions__google>span{width:16px;height:16px;font-size:.56rem}.event-detail .event-calendar-actions{grid-template-columns:max-content;justify-content:start}.event-detail .event-calendar-actions a{background:rgba(255,255,255,.4)}.event-detail .event-calendar-actions__native{background:color-mix(in srgb,var(--campaign-primary) 9%,transparent)!important;color:var(--campaign-primary)!important}}
@media(max-width:980px){.campaign-header--menu-open nav{flex-direction:column;width:auto;max-height:calc(100svh - 5rem);overflow-y:auto}.campaign-header--menu-open nav a{width:100%;flex:none}}
