/* Functional sections adapted to Emma's layout. Keep form IDs and scripts unchanged. */
#abaixo-assinado,
#no-bolso {
  --ef-paper:#f0eddc;
  --ef-ink:#122c24;
  --ef-lime:#c5f150;
  --ef-red:#bc432c;
  --ef-gutter:max(24px,calc((100vw - 1392px)/2));
  --ef-body:'IBM Plex Sans',Arial,sans-serif;
  --ef-condensed:'IBM Plex Sans Condensed','Arial Narrow',sans-serif;
  --ef-mono:'IBM Plex Mono',monospace;
  position:relative;
  width:100%;
  max-width:none;
  margin:0;
  border:0;
  padding:64px var(--ef-gutter) 48px;
  font-family:var(--ef-body);
  text-align:left;
  box-sizing:border-box;
}
#abaixo-assinado *,
#no-bolso * {box-sizing:border-box;min-width:0}
#abaixo-assinado [hidden],
#no-bolso [hidden] {display:none!important}
#abaixo-assinado :is(a,button,input,select,summary):focus-visible,
#no-bolso :is(a,button,input,select,summary):focus-visible {
  outline:2px solid var(--ef-red);
  outline-offset:5px;
}
#abaixo-assinado a,
#no-bolso a {text-underline-offset:3px;overflow-wrap:anywhere}
#abaixo-assinado > .section-top,
#no-bolso > .section-top {display:none}

/* Petition: lime ground, an unadorned paper form, and a single responsive form. */
#abaixo-assinado {background:var(--ef-lime);color:var(--ef-ink)}
#abaixo-assinado .petition-grid {
  display:grid;
  grid-template-columns:minmax(0,56fr) minmax(0,42fr);
  align-items:start;
  gap:clamp(36px,6.1vw,88px);
}
#abaixo-assinado .petition-letter {max-width:710px}
#abaixo-assinado .petition-letter > .tag {
  display:block;
  margin:0 0 25px;
  padding:0;
  border:0;
  background:none;
  color:inherit;
  font:400 14px/1.5 var(--ef-mono);
  text-transform:uppercase;
  letter-spacing:0;
}
#abaixo-assinado .petition-letter h2 {
  max-width:16ch;
  margin:0 0 32px;
  color:var(--ef-ink);
  font:400 clamp(36px,4.1vw,59px)/1.08 'Bungee',Impact,sans-serif;
  text-transform:uppercase;
  letter-spacing:-.025em;
}
#abaixo-assinado .petition-letter h2 em {font:inherit;letter-spacing:inherit;color:inherit}
#abaixo-assinado .petition-letter > .lead {
  max-width:650px;
  margin:0 0 34px;
  color:inherit;
  font:400 clamp(16px,1.4vw,20px)/1.8 var(--ef-body);
}
#abaixo-assinado .petition-delivery {
  margin:32px 0 0;
  color:inherit;
  font:400 clamp(15px,1.35vw,19px)/1.65 var(--ef-condensed);
}
#abaixo-assinado .petition-demands {
  margin:32px 0 0;
  border:0;
  border-top:1px solid #122c2470;
  background:none;
  color:inherit;
}
#abaixo-assinado .petition-demands > summary {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
  min-height:48px;
  padding:0;
  list-style:none;
  color:inherit;
  font:600 18px/1.35 var(--ef-condensed);
  text-transform:uppercase;
  cursor:pointer;
}
#abaixo-assinado .petition-demands > summary::-webkit-details-marker {display:none}
#abaixo-assinado .petition-demands > summary > span:last-child {
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 38px;
  width:38px;
  height:33px;
  margin-top:-1px;
  border:1px solid var(--ef-ink);
  background:var(--ef-paper);
  color:var(--ef-ink);
  clip-path:polygon(0 0,100% 0,100% 65%,78% 100%,22% 100%,0 65%);
  font-size:0;
  transform:none;
  transition:none;
}
#abaixo-assinado .petition-demands > summary > span:last-child::after {content:'+';font:400 24px/1 var(--ef-body)}
#abaixo-assinado .petition-demands[open] > summary > span:last-child::after {content:'−'}
#abaixo-assinado .petition-letter .petition-demands ol {
  margin:0 0 16px;
  padding:0;
  counter-reset:asks;
  list-style:none;
}
#abaixo-assinado .petition-letter .petition-demands li {
  position:relative;
  margin:0;
  padding:18px 0 18px 34px;
  border-top:1px solid #122c2445;
  color:inherit;
  font:400 15px/1.7 var(--ef-body);
  counter-increment:asks;
}
#abaixo-assinado .petition-letter .petition-demands li::before {
  position:absolute;
  left:0;
  top:21px;
  content:'0' counter(asks);
  color:inherit;
  font:400 11px/1.5 var(--ef-mono);
}
#abaixo-assinado .petition-full-text > div {padding:8px 0 12px}
#abaixo-assinado .petition-full-text p {
  margin:0 0 18px;
  color:inherit;
  font:400 15px/1.75 var(--ef-body);
}
#abaixo-assinado .petition-counter {
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  gap:8px 15px;
  margin:28px 0 0;
  padding:20px 0 0;
  border-top:1px solid #122c2470;
  color:inherit;
}
#abaixo-assinado .petition-counter strong {color:inherit;font:400 34px/1.2 'Bungee',Impact,sans-serif;letter-spacing:-.02em}
#abaixo-assinado .petition-counter span {color:inherit;font:400 12px/1.5 var(--ef-mono)}
#abaixo-assinado .petition-panel {
  padding:24px;
  border:0;
  border-radius:0;
  background:var(--ef-paper);
  box-shadow:none;
  transform:none;
  color:var(--ef-ink);
}
#abaixo-assinado .petition-panel > .eyebrow {
  display:block;
  color:inherit;
  font:400 12px/1.5 var(--ef-mono);
  letter-spacing:0;
  text-transform:uppercase;
}
#abaixo-assinado .petition-panel h3 {
  margin:14px 0 24px;
  color:inherit;
  font:600 29px/1.15 var(--ef-condensed);
  letter-spacing:-.01em;
  text-transform:uppercase;
}
#abaixo-assinado .petition-intro {margin:0 0 20px;color:inherit;font:400 12px/1.6 var(--ef-mono)}
#abaixo-assinado #petition-form {margin:0;padding:0;border:0;background:none}
#abaixo-assinado #petition-form > label:not(.petition-consent),
#abaixo-assinado .petition-location > label {
  display:block;
  margin:17px 0 0;
  color:inherit;
  font:400 12px/1.55 var(--ef-mono);
  text-transform:uppercase;
  letter-spacing:0;
}
#abaixo-assinado #petition-form input:not([type=checkbox]),
#abaixo-assinado #petition-form select {
  display:block;
  width:100%;
  min-height:48px;
  margin:6px 0 0;
  padding:10px 12px;
  border:1px solid var(--ef-ink);
  border-radius:0;
  background:transparent;
  color:var(--ef-ink);
  box-shadow:none;
  font:400 16px/1.4 var(--ef-body);
}
#abaixo-assinado .petition-location {display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:24px}
#abaixo-assinado .petition-location small {font:inherit;text-transform:none}
#abaixo-assinado .petition-trap {position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
#abaixo-assinado .field-note {margin:10px 0 0;color:#354a41;font:400 12px/1.6 var(--ef-condensed)}
#abaixo-assinado .petition-consent {
  display:flex;
  align-items:flex-start;
  gap:11px;
  min-height:44px;
  margin:22px 0 0;
  padding:0;
  border:0;
  color:inherit;
  font:400 12px/1.55 var(--ef-condensed);
  text-transform:none;
  cursor:pointer;
}
#abaixo-assinado .petition-consent input {
  flex:0 0 18px;
  width:18px;
  height:18px;
  margin:2px 0 0;
  border-radius:0;
  accent-color:var(--ef-ink);
}
#abaixo-assinado .petition-email-consent {margin-top:16px}
#abaixo-assinado .petition-email-consent strong {display:inline;margin:0;font:600 12px/1.55 var(--ef-condensed);letter-spacing:0;text-transform:uppercase}
#abaixo-assinado .petition-email-consent small {display:block;margin:6px 0 0;color:#354a41;font:400 12px/1.55 var(--ef-condensed)}
#abaixo-assinado #petition-submit,
#abaixo-assinado .petition-shortcut {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:16px;
  min-height:60px;
  width:100%;
  margin:24px 0 0;
  padding:14px 18px;
  border:0;
  border-radius:0;
  background:var(--ef-ink);
  color:var(--ef-paper);
  box-shadow:none;
  transform:none;
  font:600 italic 24px/1.2 var(--ef-condensed);
  text-align:center;
  text-decoration:none;
  text-transform:uppercase;
}
#abaixo-assinado .petition-shortcut {display:none}
#abaixo-assinado #petition-submit::before,
#abaixo-assinado #petition-submit::after {content:none}
#abaixo-assinado #petition-submit span {font-style:normal;font-size:24px}
#abaixo-assinado #petition-submit:disabled {opacity:.65;cursor:wait;transform:none}
#abaixo-assinado #petition-status {min-height:0;margin:12px 0 0;color:var(--ef-ink);font:500 14px/1.6 var(--ef-body)}
#abaixo-assinado #petition-status:empty {margin:0}
#abaixo-assinado .petition-withdraw {min-height:44px;margin:8px 0 0;padding:10px 0;border:0;background:none;color:#9d3e2b;font:500 13px/1.5 var(--ef-body);text-decoration:underline}
#abaixo-assinado .petition-privacy {margin:20px 0 0;border-top:1px solid #122c2450}
#abaixo-assinado .petition-privacy summary {min-height:44px;padding:14px 0;cursor:pointer;color:inherit;font:500 13px/1.5 var(--ef-body)}
#abaixo-assinado .petition-privacy p {margin:0 0 14px;color:#354a41;font:400 12px/1.7 var(--ef-body)}

/* Simulator. Root may move the existing nodes into these two wrappers. */
#no-bolso {--ef-signal:#df765b;background:var(--ef-ink);color:var(--ef-paper)}
#no-bolso :is(a,button,input,select,summary):focus-visible {outline-color:var(--ef-lime)}
#no-bolso .eyebrow,
#no-bolso .section-note {color:inherit;font:400 12px/1.5 var(--ef-mono);letter-spacing:0}
#no-bolso #charging-form {margin:0;padding:0;border:0;background:none}
#no-bolso #charging-form:has(> .emma-simulator-left) {display:grid;grid-template-columns:minmax(0,43fr) minmax(0,49fr);gap:0 8%;align-items:start}
#no-bolso .emma-simulator-left,
#no-bolso .emma-simulator-right {min-width:0}
#no-bolso #charging-form > .charging-full,
#no-bolso #charging-form > .charging-screenreader {grid-column:1/-1}
#no-bolso .charging-intro {display:block;max-width:none;margin:0 0 40px}
#no-bolso .charging-intro h2 {
  max-width:12ch;
  margin:0;
  color:var(--ef-lime);
  font:400 clamp(36px,4.15vw,60px)/1.1 'Bungee',Impact,sans-serif;
  letter-spacing:-.025em;
  text-transform:uppercase;
}
#no-bolso .charging-intro h2 em {font:inherit;letter-spacing:inherit;color:inherit}
#no-bolso .charging-intro > div {margin-top:clamp(30px,4.9vw,70px)}
#no-bolso .charging-intro .lead {max-width:610px;margin:0;color:inherit;font:400 clamp(16px,1.4vw,20px)/1.8 var(--ef-body)}
#no-bolso .charging-intro p:not(.lead) {margin:16px 0 0;color:#d6ddce;font:400 12px/1.65 var(--ef-mono)}
#no-bolso .charging-explorer {display:grid;grid-template-columns:minmax(0,43fr) minmax(0,49fr);gap:8%;align-items:start}
#no-bolso .charging-map-panel {margin:30px 0 0;padding:0;border:0;border-radius:0;background:none}
#no-bolso .charging-map-top {display:flex;align-items:end;justify-content:space-between;gap:18px}
#no-bolso .charging-map-top label {flex:1;color:inherit;font:500 14px/1.5 var(--ef-condensed);text-transform:uppercase}
#no-bolso select,
#no-bolso input[type=number] {
  display:block;
  min-width:0;
  width:100%;
  min-height:46px;
  margin:7px 0 0;
  padding:10px 12px;
  border:1px solid var(--ef-paper);
  border-radius:0;
  background:var(--ef-paper);
  color:var(--ef-ink);
  box-shadow:none;
  font:400 16px/1.45 var(--ef-body);
}
#no-bolso .charging-state-badge {display:flex;align-items:center;justify-content:center;flex:0 0 48px;width:48px;height:46px;border:1px solid #f0eddc70;border-radius:0;background:none;color:var(--ef-lime);font:600 22px/1 var(--ef-condensed)}
#no-bolso .charging-mode {display:flex;gap:0;width:max-content;max-width:100%;margin:24px 0 8px;padding:0;border:1px solid #f0eddc70;border-radius:0;background:none}
#no-bolso .charging-mode button {min-height:44px;margin:0;padding:10px 20px;border:0;border-radius:0;background:none;color:var(--ef-paper);box-shadow:none;font:500 13px/1.4 var(--ef-condensed)}
#no-bolso .charging-mode button.active {background:var(--ef-paper);color:var(--ef-ink);box-shadow:none}
#no-bolso .charging-map {display:flex;align-items:center;justify-content:center;min-height:0;max-width:540px;margin:20px auto;color:var(--ef-paper);font:400 13px/1.65 var(--ef-mono);text-align:center}
#no-bolso .charging-svg {display:block;width:100%;height:auto;max-height:410px;overflow:visible}
#no-bolso .charging-state path {fill:#9baa91;stroke:var(--ef-ink);stroke-width:1.3}
#no-bolso .charging-state.no-reference path {fill:#506457}
#no-bolso .charging-state:hover path {fill:#d4ef7c;stroke:var(--ef-paper)}
#no-bolso .charging-state.selected path {fill:var(--ef-lime);stroke:var(--ef-paper)}
#no-bolso .charging-state:focus-visible path {fill:var(--ef-lime);stroke:var(--ef-red);stroke-width:3}
#no-bolso .charging-state text {fill:var(--ef-ink);font:500 14px var(--ef-mono)}
#no-bolso .charging-state.no-reference text {fill:var(--ef-paper)}
#no-bolso .charging-state.selected text,
#no-bolso .charging-state:hover text,
#no-bolso .charging-state:focus-visible text {fill:var(--ef-ink)}
#no-bolso .charging-state[data-uf=DF] text {fill:var(--ef-ink);stroke:var(--ef-paper);stroke-width:2px;paint-order:stroke}
#no-bolso .charging-df-dot {fill:var(--ef-paper);stroke:var(--ef-ink)}
#no-bolso .charging-state.selected .charging-df-dot {fill:var(--ef-lime)}
#no-bolso .charging-map-legend {display:flex;flex-wrap:wrap;justify-content:flex-start;gap:9px 16px;margin:14px 0;color:#d6ddce;font:400 11px/1.6 var(--ef-mono)}
#no-bolso .charging-map-legend > span {display:inline-flex;align-items:center;gap:7px}
#no-bolso .charging-map-legend i {display:block;width:8px;height:8px;border-radius:0;background:#9baa91}
#no-bolso .charging-map-legend i.missing {border:1px solid #9baa91;background:#506457}
#no-bolso .charging-map-legend i.selected {background:var(--ef-lime)}
#no-bolso .charging-small,
#no-bolso .charging-map-credit,
#no-bolso .charging-card-note,
#no-bolso .charging-field-note,
#no-bolso .charging-method-note {color:#d6ddce;font:400 12px/1.6 var(--ef-mono)}
#no-bolso .charging-small {margin:10px 0}
#no-bolso .charging-map-credit {margin:14px 0 0;padding-top:12px;border-top:1px solid #f0eddc60}
#no-bolso .charging-distance {margin:44px 0 0;padding:0;border:0;border-radius:0;background:none;color:inherit}
#no-bolso .charging-distance > div:first-child {display:flex;justify-content:space-between;align-items:baseline;gap:16px;color:inherit;font:500 18px/1.4 var(--ef-condensed);text-transform:uppercase}
#no-bolso .charging-distance output {white-space:nowrap;font:500 20px/1.4 var(--ef-condensed);letter-spacing:0}
#no-bolso input[type=range] {display:block;width:100%;height:44px;margin:8px 0 0;padding:0;border:0;border-radius:0;background:none!important;accent-color:var(--ef-lime);appearance:none;-webkit-appearance:none;cursor:pointer}
#no-bolso input[type=range]::-webkit-slider-runnable-track {height:1px;background:#a0ac98}
#no-bolso input[type=range]::-webkit-slider-thumb {width:23px;height:23px;margin-top:-11px;border:2px solid var(--ef-paper);border-radius:50%;background:var(--ef-lime);box-shadow:none;appearance:none;-webkit-appearance:none}
#no-bolso input[type=range]::-moz-range-track {height:1px;background:#a0ac98}
#no-bolso input[type=range]::-moz-range-progress {height:1px;background:var(--ef-lime)}
#no-bolso input[type=range]::-moz-range-thumb {width:20px;height:20px;border:2px solid var(--ef-paper);border-radius:50%;background:var(--ef-lime);box-shadow:none}
#no-bolso .charging-range-ends {display:flex;justify-content:space-between;color:#d6ddce;font:400 11px/1.5 var(--ef-mono)}
#no-bolso .emma-state-disclosure {margin:36px 0 0;border-top:1px solid #f0eddc90}
#no-bolso .emma-state-disclosure > summary {display:flex;justify-content:space-between;align-items:flex-start;gap:18px;min-height:46px;list-style:none;cursor:pointer;color:inherit;font:500 18px/1.35 var(--ef-condensed);text-transform:uppercase}
#no-bolso .emma-state-disclosure > summary::-webkit-details-marker {display:none}
#no-bolso .emma-state-disclosure > summary > span:last-child {display:flex;align-items:center;justify-content:center;flex:0 0 38px;width:38px;height:33px;margin-top:-1px;clip-path:polygon(0 0,100% 0,100% 65%,78% 100%,22% 100%,0 65%);background:var(--ef-paper);color:var(--ef-ink);font:400 24px/1 var(--ef-body)}
#no-bolso .emma-state-disclosure .charging-map-panel {margin-top:14px}
#no-bolso .charging-reference-panel {display:block;max-width:none}
#no-bolso .charging-location {margin:0 0 20px}
#no-bolso .charging-location > .eyebrow {font-size:12px}
#no-bolso .charging-location h3 {margin:7px 0 12px;color:inherit;font:600 36px/1.15 var(--ef-condensed);letter-spacing:0;text-transform:uppercase}
#no-bolso .charging-location > p {max-width:100%;margin:0;color:#d6ddce;font:400 11px/1.6 var(--ef-mono)}
#no-bolso .charging-reference-cards {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0 0 24px;padding:24px 0;border-top:1px solid #f0eddc80}
#no-bolso .charging-reference {min-width:0;margin:0;padding:0 20px 0 0;border:0;border-radius:0;background:none;color:inherit}
#no-bolso .charging-reference + .charging-reference {padding:0 0 0 22px;border-left:1px solid #f0eddc80}
#no-bolso .charging-reference h4 {margin:0;color:inherit;font:400 15px/1.4 var(--ef-condensed);letter-spacing:0;text-transform:uppercase}
#no-bolso .reference-tag {margin:12px 0 7px;color:#d6ddce;font:400 10px/1.5 var(--ef-mono);letter-spacing:0}
#no-bolso .reference-price {display:block;margin:10px 0 0;color:inherit;font:400 clamp(22px,2.05vw,31px)/1.2 'Bungee',Impact,sans-serif;letter-spacing:-.02em;white-space:normal}
#no-bolso .reference-company {margin:10px 0 0;color:inherit;font:400 11px/1.5 var(--ef-mono)}
#no-bolso .charging-card-note {margin:5px 0 0;font-size:11px;line-height:1.5}
#no-bolso .charging-coverage-gap {margin:10px 0 0;padding:10px 0 10px 12px;border:0;border-left:2px solid var(--ef-lime);border-radius:0;background:none;color:#d6ddce;font:400 11px/1.6 var(--ef-mono)}
#no-bolso .charging-results {margin:24px 0 0;padding:0;border:0;border-radius:0;background:none;box-shadow:none;color:inherit}
#no-bolso .charging-results-top {display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:10px 0;border-top:1px solid #f0eddc80;border-bottom:1px solid #f0eddc80;background:none;color:inherit}
#no-bolso .charging-results-top .eyebrow {max-width:none;font-size:12px}
#no-bolso .charging-results-top > span:last-child {font:400 12px/1.5 var(--ef-mono);text-transform:uppercase}
#no-bolso .charging-results-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:0}
#no-bolso .charging-results-grid article {display:block;min-width:0;margin:0;padding:24px 0;border:0;background:none;color:inherit}
#no-bolso .charging-results-grid article > span {display:block;color:inherit;font:500 15px/1.4 var(--ef-condensed);letter-spacing:0;text-transform:uppercase}
#no-bolso .charging-results-grid strong {display:block;margin:12px 0 5px;color:inherit;font:400 clamp(22px,2.05vw,31px)/1.25 'Bungee',Impact,sans-serif;letter-spacing:-.02em;white-space:normal}
#no-bolso .charging-results-grid p {margin:0 0 12px;color:inherit;font:500 12px/1.55 var(--ef-mono)}
#no-bolso .charging-results-grid small {display:block;color:#d6ddce;font:400 11px/1.5 var(--ef-mono)}
#no-bolso .charging-results-grid article:first-child > span,
#no-bolso #fuel-cost {color:var(--ef-signal)}
#no-bolso .charging-home-result > span,
#no-bolso #home-cost,
#no-bolso #home-comparison {color:var(--ef-lime)}
#no-bolso .charging-summary-premises {margin:0;padding:13px 0 0;border-top:1px solid #f0eddc80;background:none;color:inherit}
#no-bolso .charging-summary-premises p {margin:0;color:#d6ddce;font:400 11px/1.6 var(--ef-mono)}
#no-bolso .charging-summary-premises p + p {margin-top:4px}
#no-bolso .charging-summary-limit {margin:16px 0 0;color:#d6ddce;font:400 11px/1.65 var(--ef-mono)}
#no-bolso .charging-home-missing {margin:16px 0 0;padding:0;color:#d6ddce;font:400 12px/1.6 var(--ef-mono)}
#no-bolso .charging-error {margin:18px 0 0;padding:12px 14px;border:0;border-left:3px solid var(--ef-red);border-radius:0;background:var(--ef-paper);color:var(--ef-ink);font:500 13px/1.6 var(--ef-body)}

/* Expanded calculation keeps every field and source available. */
#no-bolso .charging-full {margin:34px 0 0;border-top:1px solid #f0eddc80;border-bottom:1px solid #f0eddc80;color:inherit}
#no-bolso .charging-full > summary {display:flex;justify-content:space-between;align-items:center;gap:18px;min-height:60px;margin:0;padding:16px 0;list-style:none;cursor:pointer;color:inherit}
#no-bolso .charging-full > summary::-webkit-details-marker {display:none}
#no-bolso .charging-full > summary strong {display:block;color:inherit;font:500 19px/1.4 var(--ef-condensed);text-transform:uppercase}
#no-bolso .charging-full > summary small {display:block;margin-top:4px;color:#d6ddce;font:400 12px/1.5 var(--ef-mono)}
#no-bolso .charging-full > summary > .detail-sign {display:flex;align-items:center;justify-content:center;flex:0 0 38px;width:38px;height:33px;border:0;border-radius:0;clip-path:polygon(0 0,100% 0,100% 65%,78% 100%,22% 100%,0 65%);background:var(--ef-paper);color:var(--ef-ink);font:400 24px/1 var(--ef-body)}
#no-bolso .charging-full[open] > summary {border-bottom:1px solid #f0eddc60}
#no-bolso .charging-full-content {padding:30px 0}
#no-bolso .charging-simulator-heading {display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:start;margin:0 0 28px}
#no-bolso .charging-simulator-heading h3 {margin:12px 0 0;color:inherit;font:600 34px/1.15 var(--ef-condensed);letter-spacing:0}
#no-bolso .charging-simulator-heading h3 em {font:inherit;color:inherit;letter-spacing:inherit}
#no-bolso .charging-simulator-heading > p {margin:0;color:#d6ddce;font:400 15px/1.7 var(--ef-body)}
#no-bolso .charging-input-cards {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
#no-bolso .charging-input-cards fieldset {min-width:0;margin:0;padding:16px 20px 24px;border:1px solid #f0eddc70;border-radius:0;background:none;color:inherit}
#no-bolso .charging-input-cards legend {padding:0 8px;color:inherit;font:600 24px/1.3 var(--ef-condensed);letter-spacing:0}
#no-bolso .charging-input-cards legend span {margin-right:8px;color:var(--ef-lime);font:400 12px/1.5 var(--ef-mono)}
#no-bolso .charging-input-cards label:not(.charging-solar-check),
#no-bolso .charging-assumption-fields label {display:block;margin-top:16px;color:inherit;font:400 13px/1.5 var(--ef-body)}
#no-bolso .charging-example-label select {font-size:14px}
#no-bolso .charging-field-note {margin:10px 0 0;font-size:12px;line-height:1.6}
#no-bolso .charging-fee-pair {display:grid;grid-template-columns:1fr 1fr;gap:14px}
#no-bolso .charging-solar-check {display:flex;align-items:flex-start;gap:10px;min-height:44px;margin-top:22px;color:inherit;font:400 14px/1.6 var(--ef-body);cursor:pointer}
#no-bolso .charging-solar-check input {flex:0 0 18px;width:18px;height:18px;margin:3px 0 0;accent-color:var(--ef-lime)}
#no-bolso .charging-solar-options {margin-top:12px;padding-top:10px;border-top:1px solid #f0eddc70}
#no-bolso .charging-solar-share {display:flex;justify-content:space-between;align-items:baseline;gap:15px}
#no-bolso .charging-solar-share label {max-width:70%}
#no-bolso .charging-solar-share output {color:var(--ef-lime);font:400 13px/1.5 var(--ef-mono)}
#no-bolso .charging-assumptions {margin:28px 0 0;padding:24px 0;border-top:1px solid #f0eddc70;border-bottom:1px solid #f0eddc70}
#no-bolso .charging-assumptions h4,
#no-bolso .charging-source-grid h4 {margin:0 0 18px;color:inherit;font:600 24px/1.3 var(--ef-condensed);letter-spacing:0}
#no-bolso .charging-assumption-fields {display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:760px;margin-bottom:16px}
#no-bolso .charging-assumption-fields label {margin-top:0}
#no-bolso .charging-source-grid {display:grid;grid-template-columns:1fr 1fr;gap:34px;margin-top:30px}
#no-bolso .charging-source-grid article {min-width:0;padding:0;border:0}
#no-bolso .charging-source {display:inline-block;min-height:36px;margin:0 14px 0 0;padding:8px 0;color:inherit;font:400 12px/1.6 var(--ef-mono);text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
#no-bolso .charging-base-source {margin-left:0}
#no-bolso .charging-solar-note {display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:8%;margin-top:30px;padding:25px;border:0;border-radius:0;background:var(--ef-paper);color:var(--ef-ink)}
#no-bolso .charging-solar-note :is(p,a,h4,.eyebrow) {color:var(--ef-ink)}
#no-bolso .charging-solar-note h4 {margin:0 0 16px;font:600 30px/1.15 var(--ef-condensed);letter-spacing:0}
#no-bolso .charging-solar-note h4 em {font:inherit;color:inherit;letter-spacing:inherit}
#no-bolso .charging-solar-note p {margin:0;font:400 15px/1.7 var(--ef-body)}
#no-bolso .charging-method-note {margin:24px 0 0}
#no-bolso .charging-screenreader {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

@media(max-width:1050px) {
  #abaixo-assinado .petition-grid {gap:36px;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}
  #abaixo-assinado .petition-panel {padding:22px}
  #abaixo-assinado .petition-letter h2 {font-size:clamp(36px,4.1vw,48px)}
  #no-bolso #charging-form:has(> .emma-simulator-left),
  #no-bolso .charging-explorer {gap:0 5%;grid-template-columns:minmax(0,45fr) minmax(0,50fr)}
  #no-bolso .charging-results-grid {gap:12px}
  #no-bolso .charging-input-cards {gap:16px}
  #no-bolso .charging-input-cards fieldset {padding-inline:16px}
}
@media(max-width:900px) {
  #abaixo-assinado,
  #no-bolso {padding-block:46px}
  #abaixo-assinado .petition-grid {grid-template-columns:1fr;gap:34px}
  #abaixo-assinado .petition-letter {max-width:700px}
  #abaixo-assinado .petition-panel {max-width:700px;width:100%}
  #abaixo-assinado .petition-letter h2 {font-size:clamp(36px,5.6vw,52px);max-width:18ch}
  #no-bolso #charging-form:has(> .emma-simulator-left),
  #no-bolso .charging-explorer {grid-template-columns:1fr;gap:36px}
  #no-bolso .emma-simulator-left,
  #no-bolso .emma-simulator-right {width:100%;max-width:none}
  #no-bolso .charging-intro h2 {max-width:15ch;font-size:clamp(36px,5.6vw,52px)}
  #no-bolso .charging-intro > div {margin-top:30px}
  #no-bolso .charging-reference-panel {display:block}
  #no-bolso .charging-reference-cards {grid-template-columns:repeat(2,minmax(0,1fr))}
  #no-bolso .reference-price,
  #no-bolso .charging-results-grid strong {font-size:32px}
  #no-bolso .charging-full {margin-top:34px}
  #no-bolso .charging-input-cards {grid-template-columns:1fr;gap:22px}
  #no-bolso .charging-input-cards fieldset {padding:20px 22px 24px}
  #no-bolso .charging-fee-pair {gap:22px}
}
@media(max-width:600px) {
  #abaixo-assinado,
  #no-bolso {--ef-gutter:20px;padding:38px 20px}
  #abaixo-assinado {padding:38px 0 0}
  #abaixo-assinado .petition-grid {gap:0}
  #abaixo-assinado .petition-letter {padding:0 20px 34px}
  #abaixo-assinado .petition-letter > .tag {margin-bottom:20px;font-size:12px;line-height:1.45}
  #abaixo-assinado .petition-letter h2 {max-width:16ch;margin-bottom:24px;font-size:clamp(28px,8.1vw,36px);line-height:1.14}
  #abaixo-assinado .petition-letter > .lead {margin-bottom:28px;font-size:16px;line-height:1.65}
  #abaixo-assinado .petition-delivery {margin-top:26px;font-size:15px;line-height:1.55}
  #abaixo-assinado .petition-demands {margin-top:28px}
  #abaixo-assinado .petition-demands > summary {min-height:48px;font-size:15px;line-height:1.4}
  #abaixo-assinado .petition-demands > summary > span:last-child {flex-basis:36px;width:36px;height:32px}
  #abaixo-assinado .petition-letter .petition-demands li {padding:16px 0 16px 30px;font-size:14px;line-height:1.7}
  #abaixo-assinado .petition-letter .petition-demands li::before {top:19px}
  #abaixo-assinado .petition-full-text p {font-size:14px;line-height:1.75}
  #abaixo-assinado .petition-counter strong {font-size:30px}
  #abaixo-assinado .petition-counter span {font-size:12px}
  #abaixo-assinado .petition-panel {max-width:none;padding:26px 20px;border:0}
  #abaixo-assinado .petition-panel h3 {margin:12px 0 24px;font-size:26px}
  #abaixo-assinado .petition-location {grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:16px}
  #abaixo-assinado #petition-form > label:not(.petition-consent),
  #abaixo-assinado .petition-location > label {font-size:12px}
  #abaixo-assinado #petition-submit {min-height:56px;font-size:22px}
  #abaixo-assinado .petition-consent {font-size:12px;line-height:1.6}
  #abaixo-assinado .petition-email-consent small {font-size:12px}
  #abaixo-assinado .petition-privacy p {font-size:12px;line-height:1.7}
  #no-bolso .charging-intro {margin-bottom:28px}
  #no-bolso .charging-intro h2 {max-width:15ch;font-size:clamp(28px,8.2vw,36px);line-height:1.14}
  #no-bolso .charging-intro > div {margin-top:25px}
  #no-bolso .charging-intro .lead {font-size:16px;line-height:1.65}
  #no-bolso .charging-intro p:not(.lead) {font-size:12px}
  #no-bolso .charging-distance {margin-top:30px}
  #no-bolso .charging-distance > div:first-child,
  #no-bolso .charging-distance output {font-size:18px}
  #no-bolso .charging-range-ends {font-size:12px}
  #no-bolso .emma-state-disclosure {margin-top:30px}
  #no-bolso .emma-state-disclosure > summary {font-size:16px}
  #no-bolso .charging-map {margin-top:16px}
  #no-bolso .charging-svg {max-height:360px}
  #no-bolso .charging-state text {font-size:15px}
  #no-bolso .charging-map-legend {font-size:11px}
  #no-bolso .charging-reference-cards {grid-template-columns:1fr;gap:0;margin-bottom:0;padding:0;border:0}
  #no-bolso .charging-reference,
  #no-bolso .charging-reference + .charging-reference {margin:0;padding:16px 0 20px;border:0;border-top:1px solid #f0eddc80}
  #no-bolso .charging-reference h4 {font-size:16px}
  #no-bolso .reference-price {margin-top:12px;font-size:clamp(27px,7.6vw,34px)}
  #no-bolso .reference-tag {font-size:11px}
  #no-bolso .reference-company,
  #no-bolso .charging-card-note {font-size:12px;line-height:1.55}
  #no-bolso .charging-location h3 {font-size:28px;line-height:1.2}
  #no-bolso .charging-location > p {font-size:12px}
  #no-bolso .charging-results {margin-top:24px}
  #no-bolso .charging-results-top {display:block;padding:12px 0}
  #no-bolso .charging-results-top .eyebrow {display:block;font-size:12px}
  #no-bolso .charging-results-top > span:last-child {display:block;margin-top:7px;font-size:12px}
  #no-bolso .charging-results-grid {display:block}
  #no-bolso .charging-results-grid article {display:block;margin:0;padding:18px 0 22px;border:0;border-bottom:1px solid #f0eddc80}
  #no-bolso .charging-results-grid article:last-child {border-bottom:0}
  #no-bolso .charging-results-grid article > span {font-size:16px}
  #no-bolso .charging-results-grid strong {margin:14px 0 8px;font-size:clamp(28px,8vw,36px)}
  #no-bolso .charging-results-grid p {margin-bottom:14px;font-size:12px;line-height:1.65}
  #no-bolso .charging-results-grid small {font-size:12px;line-height:1.55}
  #no-bolso .charging-summary-premises {padding-top:14px}
  #no-bolso .charging-summary-premises p,
  #no-bolso .charging-summary-limit,
  #no-bolso .charging-method-note {font-size:12px;line-height:1.65}
  #no-bolso .charging-full {margin-top:30px}
  #no-bolso .charging-full > summary strong {font-size:17px}
  #no-bolso .charging-full > summary small {font-size:12px}
  #no-bolso .charging-full-content {padding:26px 0}
  #no-bolso .charging-simulator-heading {grid-template-columns:1fr;gap:18px;margin-bottom:25px}
  #no-bolso .charging-simulator-heading h3 {font-size:29px}
  #no-bolso .charging-simulator-heading > p {font-size:15px;line-height:1.7}
  #no-bolso .charging-input-cards fieldset {padding:18px 18px 22px}
  #no-bolso .charging-input-cards legend {font-size:24px}
  #no-bolso .charging-input-cards label:not(.charging-solar-check),
  #no-bolso .charging-assumption-fields label {font-size:14px;line-height:1.55}
  #no-bolso .charging-fee-pair {gap:14px}
  #no-bolso .charging-assumption-fields {grid-template-columns:1fr;gap:18px}
  #no-bolso .charging-assumptions h4,
  #no-bolso .charging-source-grid h4 {font-size:24px}
  #no-bolso .charging-source-grid {grid-template-columns:1fr;gap:27px}
  #no-bolso .charging-source {min-height:44px;font-size:12px;line-height:1.6}
  #no-bolso .charging-solar-note {display:block;margin-top:25px;padding:22px 18px}
  #no-bolso .charging-solar-note > .eyebrow {display:block;margin-bottom:20px}
  #no-bolso .charging-solar-note h4 {font-size:27px}
  #no-bolso .charging-solar-note p {font-size:15px;line-height:1.7}
}
@media(max-width:360px) {
  #abaixo-assinado,
  #no-bolso {--ef-gutter:16px}
  #no-bolso {padding-inline:16px}
  #abaixo-assinado .petition-letter {padding-inline:16px}
  #abaixo-assinado .petition-panel {padding-inline:16px}
  #abaixo-assinado .petition-location {grid-template-columns:1fr;gap:0}
  #abaixo-assinado #petition-submit {font-size:20px}
}
@media(prefers-reduced-motion:reduce) {
  #abaixo-assinado *,
  #no-bolso * {transition:none!important;animation:none!important;scroll-behavior:auto!important}
}
