/* A calmer reading rhythm. These treatments identify content, never candidates. */
:root{--reading-surface:#f6f8f2;--icon-surface:#eaf0e2;--reading-gap:clamp(36px,5vw,72px)}
[data-person=flavio],[data-person=gaspar]{--person-accent:#536e83}[data-person=lula],[data-person=alckmin]{--person-accent:#93634f}
.candidate-key{display:flex;flex-wrap:wrap;gap:10px 22px;margin:16px 0 12px}.candidate-key>span{display:inline-flex;align-items:center;gap:8px;font-size:12px;line-height:1.6}.candidate-key i{width:10px;height:10px;flex:0 0 10px;border-radius:50%;background:var(--person-accent)}
.proposal[data-person],.analysis-card[data-person],.comparison-differences [data-person],.proximity-result[data-person],.faq-plan-pair [data-person],.download-plan[data-person]{border-top:3px solid var(--person-accent)}
.proximity-result[data-person]{padding-top:16px}.history-event[data-person]{border-left:3px solid var(--person-accent)}
.proposal[data-person] .proposal-header strong:before,.analysis-card[data-person]>h4:before,.comparison-differences [data-person]>strong:before,.proximity-result[data-person]>h4:before,.faq-plan-pair [data-person]>h4:before,.history-event[data-person] .history-person:before,.download-plan[data-person]>strong:before{content:'';display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--person-accent);margin-right:7px;vertical-align:middle}
.ui-icon{width:22px;height:22px;flex:0 0 22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle}
.masthead{flex-wrap:wrap;gap:10px 20px;padding-block:16px}.masthead #text-size{margin-left:auto}.masthead nav{order:3;flex-basis:100%;margin:0;gap:6px 26px;justify-content:flex-start;flex-wrap:wrap}.masthead nav a{display:flex;align-items:center;min-height:44px;font-size:13px}
.intro{display:grid;grid-template-columns:minmax(0,1fr) 320px;align-items:center;gap:36px;padding-block:38px 32px;border-bottom:0}.intro-copy{min-width:0}.intro-eyebrow{display:block;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin-bottom:12px;color:var(--green)}.intro h1{font-size:clamp(29px,3.6vw,42px);max-width:720px;line-height:1.22;margin-bottom:16px}.intro h1 br{display:none}.intro p{max-width:62ch;line-height:1.7}.intro-visual{margin:0;justify-self:end;width:100%;max-width:320px;text-align:center}.intro-visual img{display:block;width:100%;height:auto}.intro-visual figcaption{font-size:12px;color:var(--muted);margin-top:3px;line-height:1.5}
.reading-path{display:flex;flex-wrap:wrap;gap:10px 20px;list-style:none;padding:0;margin:20px 0 16px}.reading-path li{display:flex;align-items:center;gap:8px;font-size:13px;line-height:1.5}.reading-path li>span{display:inline-flex;align-items:center;justify-content:center;flex:0 0 24px;width:24px;height:24px;border-radius:50%;background:var(--icon-surface);font-size:12px;font-weight:700}.intro-date{display:block;font-size:11px}
.section-heading h2,.roles-intro h2,.source-intro h2{display:flex;align-items:center;gap:14px;font-size:28px;line-height:1.3;letter-spacing:-.02em;margin-bottom:12px}.section-symbol{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;flex:0 0 48px;border-radius:14px;background:var(--icon-surface);color:var(--forest)}.section-symbol .ui-icon{width:25px;height:25px;flex-basis:25px}.section-heading p{max-width:70ch;line-height:1.65;margin-top:0}.section-heading{margin-bottom:28px}
.comparison{padding-top:22px;padding-bottom:48px}.explore-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:26px 0}.explore-links>a{display:flex;align-items:center;gap:12px;padding:16px;text-decoration:none;border:1px solid var(--line);border-radius:12px;min-width:0;min-height:86px;background:#fff}.explore-links>a:hover{background:var(--reading-surface);border-color:#9caf9c}.explore-icon{flex:0 0 36px;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;background:var(--reading-surface)}.explore-links strong{display:block;font-size:14px;line-height:1.4}.explore-links small{display:block;font-size:12px;color:var(--muted);line-height:1.5;margin-top:5px}.explore-arrow{margin-left:auto;align-self:flex-start;color:var(--muted);font-size:17px}.coverage-note{margin-bottom:30px}
.panel-header{display:flex;align-items:center;gap:16px;margin-bottom:26px}.panel-header h3{font-size:28px;line-height:1.3;margin:0 0 5px}.panel-header p{line-height:1.6;margin:0;max-width:65ch}.topic-symbol{display:flex;align-items:center;justify-content:center;flex:0 0 56px;width:56px;height:56px;border-radius:16px;background:var(--icon-surface);color:var(--green)}.topic-symbol svg{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.topic-comparison{padding:26px;border-radius:16px;background:var(--reading-surface);border:1px solid #e2e8dc}.topic-comparison>h3{font-size:21px;line-height:1.45;margin:0 0 24px;max-width:45ch}.topic-comparison h4,.visual-label{display:flex;align-items:center;gap:10px;line-height:1.45}.topic-comparison h4 .ui-icon{width:19px;height:19px;flex-basis:19px;color:var(--green)}.comparison-common{background:transparent;padding:0 0 22px;margin:0 0 22px;border-bottom:1px solid var(--line)}.comparison-common p{max-width:70ch;line-height:1.75}.comparison-differences .candidate-grid{gap:22px}.comparison-differences .candidate-grid>div{background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px}.comparison-differences p{line-height:1.75}.comparison-question{background:transparent;border-top:1px solid var(--line);margin-top:22px;padding:20px 0 0}.comparison-question p{max-width:70ch;line-height:1.75}.comparison-source-details{margin-top:24px}.comparison-detail-link{display:inline-flex;align-items:center;min-height:44px;margin-top:14px}
.proposal-selection-heading{margin:34px 0 20px}.proposal-selection-heading h3{font-size:21px;line-height:1.4;margin-bottom:8px}.proposal-selection-heading p{line-height:1.6}.plans-grid{gap:22px}.proposal-header{padding:18px 20px}.proposal-body{padding:24px}.proposal ul{line-height:1.8}.proposal li{margin-bottom:14px}.detail-block{margin-top:24px}.detail-inner{padding-top:6px}.detail-inner p{line-height:1.8}.document-analysis{margin-top:38px;padding-top:30px}.analysis-intro>p{line-height:1.75;max-width:78ch}
.criteria-preview{display:flex;flex-wrap:wrap;list-style:none;gap:10px;padding:0;margin:24px 0}.criteria-preview li{display:flex;align-items:center;gap:8px;background:var(--reading-surface);border:1px solid #e2e8dc;border-radius:8px;padding:9px 11px;font-size:12px;line-height:1.4}.criteria-preview .ui-icon{width:17px;height:17px;flex-basis:17px}.analysis-depth{border:1px solid var(--line);border-radius:12px;background:white}.analysis-depth>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px;min-height:74px;cursor:pointer;list-style:none;line-height:1.5}.analysis-depth>summary::-webkit-details-marker{display:none}.analysis-depth>summary>span:first-child{min-width:0}.analysis-depth summary strong{display:block;font-size:15px}.analysis-depth summary small{display:block;font-size:12px;color:var(--muted);margin-top:4px;line-height:1.5}.analysis-depth-content{padding:8px 20px 20px}.criterion-label{display:inline-flex;align-items:center;gap:7px;line-height:1.5}.criterion-label .ui-icon{width:16px;height:16px;flex-basis:16px}.analysis-table .criterion-label .ui-icon{display:none}.analysis-footnote{font-size:12px;line-height:1.65;margin-top:16px}
.plan-proximity,.political-timeline,.faq-section,.roles-section,.glossary-section,.sources{padding-top:var(--reading-gap);padding-bottom:var(--reading-gap);border-top:1px solid var(--line)}.proximity-intro,.history-intro,.faq-intro{line-height:1.8;max-width:78ch}.plan-proximity>.section-heading,.political-timeline>.section-heading,.faq-section>.section-heading{margin-bottom:24px}.proximity-point{padding:28px;margin-top:26px;border-radius:16px}.proximity-topic-label{display:flex;align-items:center;gap:8px;margin-bottom:12px}.proximity-topic-label .ui-icon{width:18px;height:18px;flex-basis:18px}.proximity-point h3{margin-bottom:24px;line-height:1.45}.proximity-reference{padding:20px;border-radius:12px}.proximity-pair{gap:28px}.proximity-result p{line-height:1.8}.proximity-result h4{margin-bottom:14px}
.history-intro-detail{border-bottom:1px solid var(--line);margin-bottom:12px}.history-intro-detail>summary{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:54px;font-size:14px;font-weight:600;cursor:pointer;list-style:none}.history-intro-detail>summary::-webkit-details-marker{display:none}.history-intro-detail p{padding-bottom:16px}.history-method{margin-bottom:24px}.history-controls{padding:22px;background:var(--reading-surface);border:1px solid var(--line);border-radius:14px}.history-year{margin:12px 0;border:1px solid var(--line);border-radius:12px;background:white;overflow:hidden}.history-year>summary{padding:20px}.history-year[open]>.history-row{padding:0 20px 20px;gap:22px}.history-year-heading>strong{background:var(--reading-surface);padding:7px 12px;border-radius:8px}.history-event{padding:20px;margin-bottom:18px;background:#fff;border:1px solid var(--line);border-left:2px solid #9caf9c;border-radius:10px}.history-event-identity{display:flex;align-items:center;gap:10px;margin-bottom:14px}.event-symbol{display:inline-flex;align-items:center;justify-content:center;flex:0 0 32px;height:32px;border-radius:9px;background:var(--reading-surface)}.event-symbol .ui-icon{width:18px;height:18px;flex-basis:18px}.history-person{background:transparent;padding:0;font-size:13px;font-weight:700}.history-event h4{line-height:1.5;margin-block:16px 12px}.history-event>p{line-height:1.8}.history-tags span{background:var(--reading-surface);border-color:#e2e8dc}.history-gap{background:var(--reading-surface);border-radius:10px;padding:18px;line-height:1.7}.history-footnote{font-size:13px;line-height:1.7}
.faq-item{margin-bottom:16px;border-radius:12px}.faq-item>summary{padding:22px 24px;line-height:1.65;min-height:72px}.faq-answer{padding:4px 24px 26px}.faq-plan-pair{gap:20px}.faq-plan-pair section{padding:20px;border-radius:10px}.faq-dependency h4 .ui-icon{width:19px;height:19px;flex-basis:19px}.faq-answer>p{line-height:1.8}.roles-note{padding:24px;border-radius:12px}.role-answer p{line-height:1.8}.roles-list summary{min-height:80px;padding-block:22px}.roles-list details{border-color:var(--line)}.glossary-grid{column-gap:32px;row-gap:8px}.glossary-grid summary{min-height:64px}.glossary-grid p{line-height:1.8}.download-plan{padding:22px;border:1px solid var(--line);border-radius:12px;background:var(--reading-surface)}.sources .method{border-left:1px solid var(--line);padding-left:28px}.sources .method p{line-height:1.85}.source-intro h2{max-width:none}.large-text .faq-intro,.large-text .proximity-intro{font-size:19px}.large-text .criteria-preview li,.large-text .analysis-depth summary strong{font-size:16px}.large-text .explore-links small{font-size:15px}
.topic-comparison h4 small{display:block;font-family:inherit;font-weight:400;color:var(--muted);font-size:12px;line-height:1.5;margin-top:4px}.reading-help{border:1px solid var(--line);border-radius:10px;margin:20px 0;background:white}.reading-help>summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 18px;min-height:60px;cursor:pointer;list-style:none}.reading-help>summary::-webkit-details-marker{display:none}.reading-help>summary>span:first-child{display:flex;align-items:center;gap:12px;min-width:0}.reading-help strong{display:block;font-size:14px;line-height:1.5}.reading-help small{display:block;color:var(--muted);font-size:12px;line-height:1.6;margin-top:4px}.reading-help dl{margin:0;padding:0 18px 18px;display:grid;grid-template-columns:1fr 1fr;gap:18px 24px}.reading-help dt{font-weight:700;font-size:14px;line-height:1.5}.reading-help dd{margin:6px 0 0;font-size:14px;line-height:1.8}.large-text .reading-help dl{grid-template-columns:1fr}.large-text .reading-help dd{font-size:19px}.large-text .reading-help strong{font-size:17px}
@media(max-width:1050px){.intro{grid-template-columns:minmax(0,1fr) 240px;gap:24px}.explore-links>a{padding:14px;gap:10px}.explore-links small{font-size:11px}.explore-icon{flex-basis:30px;width:30px;height:30px}.explore-arrow{display:none}.topic-comparison{padding:22px}}
@media(max-width:760px){
 .masthead{padding-block:12px;gap:12px}.masthead nav{display:none}
 .reading-help>summary{padding:16px 14px}.reading-help dl{grid-template-columns:1fr;padding:0 14px 18px}.reading-help small{font-size:11px}
 .intro{grid-template-columns:1fr;gap:12px;padding-block:28px 24px}.intro h1{font-size:29px;max-width:24ch}.intro-eyebrow{font-size:10px;margin-bottom:12px}.intro p{font-size:15px}.intro-visual{display:flex;align-items:center;gap:14px;justify-self:start;max-width:none;text-align:left;border-top:1px solid #e2e8dc;padding-top:10px}.intro-visual img{width:108px;height:66px;flex:0 0 108px}.intro-visual figcaption{font-size:12px;max-width:23ch;margin:0}.reading-path{gap:9px 13px;margin:18px 0 14px}.reading-path li{font-size:12px;gap:6px}.reading-path li>span{width:22px;height:22px;flex-basis:22px;font-size:11px}
 .section-heading h2,.roles-intro h2,.source-intro h2{font-size:24px;gap:12px;align-items:flex-start}.section-symbol{width:40px;height:40px;flex-basis:40px;border-radius:12px}.section-symbol .ui-icon{width:22px;height:22px;flex-basis:22px}.section-heading p{font-size:14px;margin-top:12px;line-height:1.75}.section-heading{margin-bottom:24px}.comparison>.section-heading h2{font-size:24px}.comparison{padding-top:22px;padding-bottom:38px}.explore-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:22px 0}.explore-links>a{flex-direction:column;align-items:flex-start;padding:12px;gap:9px;min-height:96px}.explore-links strong{font-size:12px;line-height:1.5}.explore-links small{display:none}.explore-icon{width:30px;height:30px;flex-basis:30px}.explore-icon .ui-icon{width:19px;height:19px;flex-basis:19px}.explore-arrow{display:none}
 .topic-button svg{display:block;width:17px;height:17px;flex:0 0 17px;fill:none;stroke:currentColor;stroke-width:1.6}.topic-button{gap:7px}.topics-sidebar{padding-top:12px;padding-bottom:12px}.panel-header{gap:12px;margin-bottom:20px}.panel-header h3{font-size:24px}.panel-header p{font-size:14px;line-height:1.7}.topic-symbol{width:44px;height:44px;flex-basis:44px;border-radius:12px}.topic-symbol svg{width:24px;height:24px}.topic-comparison{padding:20px 14px;border-radius:12px}.topic-comparison>h3{font-size:18px;line-height:1.5;margin-bottom:20px}.topic-comparison h4{font-size:15px;gap:8px}.comparison-common{padding-bottom:18px;margin-bottom:18px}.comparison-differences .candidate-grid{gap:10px}.comparison-differences .candidate-grid>div{padding:13px 11px}.comparison-differences p{line-height:1.75;font-size:14px}.comparison-differences strong{font-size:14px}.comparison-question p{font-size:14px}.comparison-source-details{margin-top:20px}.proposal-selection-heading{margin-top:28px}.proposal-selection-heading h3{font-size:19px}.proposal li{margin-bottom:16px}.document-analysis{margin-top:30px;padding-top:24px}.analysis-intro h3{font-size:21px}.criteria-preview{gap:8px;margin:20px 0}.criteria-preview li{padding:8px 9px;font-size:11px}.criteria-preview .ui-icon{width:16px;height:16px;flex-basis:16px}.analysis-depth>summary{padding:16px 14px}.analysis-depth summary strong{font-size:14px}.analysis-depth-content{padding:4px 12px 14px}.analysis-grid{grid-template-columns:1fr}.analysis-evidence .criterion-label{align-items:flex-start}
 .plan-proximity,.political-timeline,.faq-section,.roles-section,.glossary-section,.sources{padding-block:40px}.proximity-point{padding:20px 14px;margin-top:20px;border-radius:12px}.proximity-point h3{font-size:20px;margin-bottom:20px}.proximity-reference{padding:16px}.proximity-pair{gap:14px}.proximity-result p{line-height:1.75}.history-controls{padding:16px;margin-top:20px}.history-year>summary{padding:18px 14px;min-height:84px}.history-year-heading>strong{display:inline-block;font-size:22px;padding:5px 10px;margin-bottom:8px}.history-year-heading>span{display:block;line-height:1.7}.history-year[open]>.history-row{padding:0 12px 12px}.history-event{padding:18px 14px;margin-bottom:16px}.history-event h4{font-size:18px}.history-event>p:not(.history-date){font-size:15px}.history-gap{padding:14px}.history-person{font-size:14px}.history-intro-detail>summary{font-size:13px;line-height:1.65}.faq-item>summary{padding:18px 16px;font-size:15px}.faq-answer{padding:0 16px 22px}.faq-plan-pair section{padding:16px}.sources .method{border-left:0;border-top:1px solid var(--line);padding:26px 0 0}.download-plan{padding:18px}.glossary-grid{grid-template-columns:1fr}.large-text .intro h1{font-size:32px}.large-text .explore-links strong{font-size:16px}
}
@media(max-width:359px){.explore-links>a{padding:10px}.explore-links strong{font-size:11px}.comparison-differences .candidate-grid{grid-template-columns:1fr}.reading-path{gap:9px}.reading-path li{font-size:11px}.intro h1{font-size:27px}}
@media print{.intro-visual,.reading-path,.explore-links,.section-symbol,.topic-symbol,.criteria-preview{display:none}.analysis-depth-content{padding:0}.history-event{break-inside:avoid}}

/* Keep the heading's text block centered on its icon at every width. */
.section-heading h2,.roles-intro h2,.source-intro h2{align-items:center;line-height:1.25}
.heading-text{display:block;min-width:0;flex:1}.section-symbol{align-self:center}
.panel-header{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:16px;row-gap:6px;align-items:center}
.panel-header>div{display:contents}.panel-header .topic-symbol{grid-column:1;grid-row:1;align-self:center}
.panel-header h3{grid-column:2;grid-row:1;margin:0;line-height:1.3}.panel-header p{grid-column:2;grid-row:2;margin:0}
@media(max-width:760px){.section-heading h2,.roles-intro h2,.source-intro h2{align-items:center}.panel-header{column-gap:12px;row-gap:6px}}
