.electoral-history-shell{margin-top:78px}.subsection-head{display:grid;grid-template-columns:minmax(180px,.45fr) minmax(0,1fr);gap:4vw;align-items:end;margin:0 0 28px;padding-top:24px;border-top:1px solid var(--ink)}.subsection-head span{font:10px/1 "DM Mono",monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.subsection-head h3{font-family:Unbounded,sans-serif;font-size:clamp(2rem,4vw,4.8rem);line-height:.96;letter-spacing:-.05em;margin:0}.election-history{display:grid;grid-template-columns:repeat(7,minmax(235px,1fr));gap:1px;background:var(--line);overflow-x:auto;scroll-snap-type:x proximity}.election-card{background:var(--paper);min-height:430px;padding:25px;display:flex;flex-direction:column;scroll-snap-align:start}.election-year{font-family:Unbounded,sans-serif;font-size:clamp(2.7rem,5vw,5rem);line-height:.85;letter-spacing:-.06em}.election-main{margin-top:45px}.election-meta{display:flex;gap:6px;flex-wrap:wrap}.election-meta span{padding:5px 7px;border:1px solid var(--line);font:8px/1 "DM Mono",monospace;text-transform:uppercase}.election-meta span:last-child{background:var(--acid);border-color:var(--acid)}.election-card h3{font-family:Unbounded,sans-serif;font-size:21px;line-height:1.04;letter-spacing:-.035em;margin:16px 0}.election-card strong{display:block;font-family:Unbounded,sans-serif;font-size:24px;letter-spacing:-.04em}.election-card strong small{display:block;font-family:"DM Mono",monospace;font-size:9px;font-weight:400;letter-spacing:0;color:var(--muted);margin-top:5px}.election-card .no-votes{color:var(--muted)}.election-card p,.party-stop p{font-size:12px;line-height:1.55;color:#59534c}.electoral-sources{margin-top:auto;padding-top:20px}.electoral-sources a{display:flex;justify-content:space-between;gap:9px;padding:9px 0;border-top:1px solid var(--line);font-size:9px;line-height:1.3}.electoral-sources a small{font:7px/1.3 "DM Mono",monospace;text-transform:uppercase;color:var(--muted);text-align:right}.party-history-shell{margin-top:90px}.party-path{display:grid;grid-template-columns:repeat(6,1fr);gap:1px;background:var(--line)}.party-stop{position:relative;background:#e9e5dc;padding:24px;min-height:330px}.party-stop:before{content:"";position:absolute;top:-5px;left:24px;width:10px;height:10px;border-radius:50%;background:var(--red)}.party-stop>span{font:9px/1 "DM Mono",monospace;text-transform:uppercase;color:var(--muted)}.party-stop h3{font-family:Unbounded,sans-serif;font-size:26px;margin:30px 0 12px;letter-spacing:-.04em}.continuity-card{margin:76px 0 0;background:var(--ink);color:var(--bg);padding:clamp(28px,5vw,70px);overflow:hidden;position:relative}.continuity-card:after{content:"12 ANOS";position:absolute;right:-.04em;bottom:-.14em;font-family:Unbounded,sans-serif;font-size:clamp(5rem,15vw,14rem);font-weight:700;color:rgba(242,239,231,.035);white-space:nowrap}.continuity-kicker{position:relative;z-index:1;font:9px/1 "DM Mono",monospace;color:var(--acid);letter-spacing:.12em}.continuity-card h3{position:relative;z-index:1;font-family:Unbounded,sans-serif;font-size:clamp(2rem,5vw,5.5rem);line-height:.98;letter-spacing:-.055em;max-width:1000px;margin:22px 0 55px}.continuity-columns{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(242,239,231,.15)}.continuity-columns>div{background:#151410;padding:25px}.continuity-columns span{font-family:Unbounded,sans-serif;font-size:38px;color:var(--red)}.continuity-columns p{font-size:14px;line-height:1.6;color:#bcb5aa}.continuity-note{position:relative;z-index:1;max-width:740px;font-size:12px;line-height:1.55;color:#99938a;margin-top:22px}.continuity-card .electoral-sources{position:relative;z-index:1;max-width:720px}.continuity-card .electoral-sources a{border-color:rgba(242,239,231,.16)}.reveal-electoral{opacity:0;transform:translateY(25px);transition:opacity .6s ease,transform .6s ease}.reveal-electoral.visible{opacity:1;transform:none}@media(max-width:1100px){.party-path{grid-template-columns:repeat(3,1fr)}}@media(max-width:760px){.subsection-head{grid-template-columns:1fr}.party-path{grid-template-columns:1fr 1fr}.continuity-columns{grid-template-columns:1fr}}@media(max-width:520px){.party-path{grid-template-columns:1fr}.election-history{margin-left:-18px;margin-right:-18px;padding-left:18px}.election-card{min-width:260px}.continuity-card{margin-left:-18px;margin-right:-18px}}@media(prefers-reduced-motion:reduce){.reveal-electoral{opacity:1;transform:none;transition:none}}