.elementor-204985 .elementor-element.elementor-element-162c9df7{--display:flex;--min-height:800px;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-end;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-204985 .elementor-element.elementor-element-f2a466f{--display:flex;--min-height:800px;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-204985 .elementor-element.elementor-element-62e9a611{width:100%;max-width:100%;}.elementor-204985 .elementor-element.elementor-element-62e9a611 .elementor-wrapper{--video-aspect-ratio:1.77777;}.elementor-204985 .elementor-element.elementor-element-679e6f4a{--e-image-carousel-slides-to-show:1;}.elementor-204985 .elementor-element.elementor-element-679e6f4a .elementor-swiper-button.elementor-swiper-button-prev, .elementor-204985 .elementor-element.elementor-element-679e6f4a .elementor-swiper-button.elementor-swiper-button-next{font-size:30px;}.elementor-204985 .elementor-element.elementor-element-679e6f4a .swiper-pagination-bullet{background:var( --e-global-color-primary );}.elementor-204985 .elementor-element.elementor-element-679e6f4a .elementor-image-carousel-caption{text-align:center;}.elementor-204985 .elementor-element.elementor-element-7cf07d0e{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--gap:0px 20px;--row-gap:0px;--column-gap:20px;--flex-wrap:wrap;--padding-top:40px;--padding-bottom:40px;--padding-left:0px;--padding-right:0px;}.elementor-204985 .elementor-element.elementor-element-7cf07d0e:not(.elementor-motion-effects-element-type-background), .elementor-204985 .elementor-element.elementor-element-7cf07d0e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#E66C37;}.elementor-204985 .elementor-element.elementor-element-3a0ca4da{width:100%;max-width:100%;}.elementor-204985 .elementor-element.elementor-element-3a0ca4da > .elementor-widget-container{padding:0px 0px 20px 0px;}.elementor-204985 .elementor-element.elementor-element-3ec743a{width:100%;max-width:100%;}.elementor-204985 .elementor-element.elementor-element-3ec743a .jet-listing-dynamic-terms{text-align:left;}.elementor-204985 .elementor-element.elementor-element-24105073{width:100%;max-width:100%;}.elementor-204985 .elementor-element.elementor-element-24105073 .jet-listing-dynamic-terms{text-align:left;}.elementor-204985 .elementor-element.elementor-element-341b5474 .jet-listing-dynamic-field__content{text-align:left;}.elementor-204985 .elementor-element.elementor-element-2fbdc438.elementor-element{--flex-grow:1;--flex-shrink:0;}.elementor-204985 .elementor-element.elementor-element-2fbdc438 .jet-listing-dynamic-field__content{text-align:left;}.elementor-204985 .elementor-element.elementor-element-19dd06d9 > .elementor-widget-container{padding:5px 0px 0px 20px;border-style:solid;border-width:0px 0px 0px 1px;border-color:#00000080;}.elementor-204985 .elementor-element.elementor-element-c622843{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-204985 .elementor-element.elementor-element-6a5fe56 > .elementor-widget-container{background-color:#EB8D63;}.elementor-204985 .elementor-element.elementor-element-6a5fe56 .elementor-menu-toggle{margin:0 auto;}.elementor-204985 .elementor-element.elementor-element-6a5fe56 .elementor-nav-menu .elementor-item{font-weight:600;text-transform:uppercase;}.elementor-204985 .elementor-element.elementor-element-6a5fe56 .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-primary );fill:var( --e-global-color-primary );}.elementor-204985 .elementor-element.elementor-element-6a5fe56 .elementor-nav-menu--main .elementor-item:hover,
					.elementor-204985 .elementor-element.elementor-element-6a5fe56 .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-204985 .elementor-element.elementor-element-6a5fe56 .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-204985 .elementor-element.elementor-element-6a5fe56 .elementor-nav-menu--main .elementor-item:focus{color:#fff;}.elementor-204985 .elementor-element.elementor-element-6a5fe56 .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-204985 .elementor-element.elementor-element-6a5fe56 .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:#A1343C;}.elementor-204985 .elementor-element.elementor-element-6a5fe56 .e--pointer-framed .elementor-item:before,
					.elementor-204985 .elementor-element.elementor-element-6a5fe56 .e--pointer-framed .elementor-item:after{border-color:#A1343C;}.elementor-204985 .elementor-element.elementor-element-6a5fe56 .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item.elementor-item-active:before,
					.elementor-204985 .elementor-element.elementor-element-6a5fe56 .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item.elementor-item-active:after{background-color:#73361C;}.elementor-204985 .elementor-element.elementor-element-6a5fe56 .e--pointer-framed .elementor-item.elementor-item-active:before,
					.elementor-204985 .elementor-element.elementor-element-6a5fe56 .e--pointer-framed .elementor-item.elementor-item-active:after{border-color:#73361C;}.elementor-204985 .elementor-element.elementor-element-262e2957{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--flex-wrap:wrap;--padding-top:60px;--padding-bottom:60px;--padding-left:0px;--padding-right:0px;}.elementor-204985 .elementor-element.elementor-element-244a1d3e{width:100%;max-width:100%;}.elementor-204985 .elementor-element.elementor-element-244a1d3e > .elementor-widget-container{padding:0px 0px 40px 0px;}.elementor-204985 .elementor-element.elementor-element-2d2c48d2 > .elementor-widget-container{padding:0px 0px 30px 0px;}.elementor-204985 .elementor-element.elementor-element-1ebafd83{--divider-border-style:solid;--divider-border-width:1px;width:100%;max-width:100%;}.elementor-204985 .elementor-element.elementor-element-1ebafd83 .elementor-divider-separator{width:100%;}.elementor-204985 .elementor-element.elementor-element-1ebafd83 .elementor-divider{padding-block-start:0px;padding-block-end:0px;}.elementor-204985 .elementor-element.elementor-element-208571e8{--alignment:left;}@media(min-width:768px){.elementor-204985 .elementor-element.elementor-element-7cf07d0e{--content-width:900px;}.elementor-204985 .elementor-element.elementor-element-262e2957{--content-width:900px;}}@media(min-width:2000px){.elementor-204985 .elementor-element.elementor-element-162c9df7{--min-height:1200px;}.elementor-204985 .elementor-element.elementor-element-f2a466f{--min-height:1200px;}}@media(max-width:1366px){.elementor-204985 .elementor-element.elementor-element-162c9df7{--min-height:600px;}.elementor-204985 .elementor-element.elementor-element-f2a466f{--min-height:600px;}}@media(max-width:1024px){.elementor-204985 .elementor-element.elementor-element-162c9df7{--min-height:450px;}.elementor-204985 .elementor-element.elementor-element-f2a466f{--min-height:450px;}.elementor-204985 .elementor-element.elementor-element-7cf07d0e{--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-204985 .elementor-element.elementor-element-262e2957{--padding-top:40px;--padding-bottom:40px;--padding-left:20px;--padding-right:20px;}}@media(max-width:767px){.elementor-204985 .elementor-element.elementor-element-162c9df7{--min-height:240px;}.elementor-204985 .elementor-element.elementor-element-f2a466f{--min-height:240px;}.elementor-204985 .elementor-element.elementor-element-3ec743a{width:100%;max-width:100%;}.elementor-204985 .elementor-element.elementor-element-24105073{width:100%;max-width:100%;}}/* Start custom CSS for container, class: .elementor-element-162c9df7 */.elementor-204985 .elementor-element.elementor-element-162c9df7 {
    background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}/* End custom CSS */
/* Start custom CSS for divider, class: .elementor-element-1ebafd83 */.elementor-204985 .elementor-element.elementor-element-1ebafd83 .elementor-divider-separator {
    margin: 10px 0;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-262e2957 */:root {
  --chart-meninas-negras: #73361c;
  --chart-meninas-brancas: #e66c37;
  --chart-meninos-negros: #a1343c;
  --chart-meninos-brancos: #f0c4a8;
  --chart-total: #d9b300;

  --chart-negros: #73361c;
  --chart-brancos: #f0c4a8;
  --chart-accent: #a1343c;
  --chart-surface: rgba(255, 255, 255, .8);
  --chart-panel: #fcfcfc;
  --chart-soft: #f8f9fa;
  --chart-border: #E0E2E8;
  --chart-border-strong: #C8CAD4;
  --chart-grid: #ECEEF2;
  --chart-muted: #6B7280;
  --chart-text: #1A1C2E;

  --mn: var(--chart-meninas-negras);
  --mb: var(--chart-meninas-brancas);
  --hn: var(--chart-meninos-negros);
  --hb: var(--chart-meninos-brancos);
  --tt: var(--chart-total);
}

.nori-chart-set,
.nori-chart-set * {
  box-sizing: border-box;
}

.nori-chart-set {
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
  padding: 0;
}

.nori-chart-panel {
  width: 100%;
  margin: 0 0 28px;
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

.nori-chart-section-title {
  margin: 0 0 16px;
  padding-bottom: 14px;
  color: inherit;
  font: inherit;
  line-height: inherit;
}

.nori-chart-card {
  width: 100%;
  margin: 0 0 16px;
  padding: 16px 18px 14px;
  background: var(--chart-panel);
  border: 1px solid var(--chart-border);
  border-radius: 10px;
  box-shadow: none;
}

.nori-chart-card--featured {
  padding: 16px 18px 14px;
}

.nori-chart-card--compact {
  min-width: 0;
  padding: 12px 14px 10px;
}

.nori-chart-card-title {
  margin: 0 0 4px;
  color: inherit;
  font: inherit;
  line-height: 1.4;
}

.nori-chart-card-subtitle {
  margin: 0 0 10px;
  color: var(--chart-muted);
  font: inherit;
  font-size: .85em;
  line-height: 1.35;
}

.nori-chart-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 14px;
}

.nori-chart-filters {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 14px 24px;
  margin: 0 0 20px;
  padding: 0 0 10px 0;
  box-shadow: none;
}

.nori-chart-filter-group {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}

.nori-chart-filter-label {
  color: var(--chart-muted);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .13em;
  line-height: 1;
  text-transform: uppercase;
}

.nori-chart-filter-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 7px;
}

.nori-chart-pill {
  appearance: none;
  -webkit-appearance: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 32px;
  padding: 6px 12px;
  border: 1.5px solid var(--chart-border-strong);
  border-radius: 999px;
  background: #fff;
  color: var(--chart-muted);
  cursor: pointer;
  font: inherit;
  font-size: 13px;
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
  box-shadow: none;
  outline: none;
  transition: background .15s ease, border-color .15s ease, color .15s ease, transform .15s ease;
}

.nori-chart-pill:not(.is-active),
.nori-chart-pill:not(.is-active):focus,
.nori-chart-pill:not(.is-active):focus-visible,
.nori-chart-pill:not(.is-active):focus-within,
.nori-chart-pill:not(.is-active):visited {
  border-color: var(--chart-border-strong) !important;
  background: #fff !important;
  color: var(--chart-muted) !important;
  box-shadow: none !important;
  outline: none !important;
}

.nori-chart-pill:not(.is-active):hover {
  background: var(--chart-text) !important;
  border-color: var(--chart-text) !important;
  color: #fff !important;
}

.nori-chart-pill:active {
  transform: translateY(1px);
}

.nori-chart-pill.is-active {
  background: var(--chart-accent);
  border-color: var(--chart-accent);
  color: #fff;
  box-shadow: none;
  outline: none;
}

.nori-chart-pill.is-active:hover,
.nori-chart-pill.is-active:focus,
.nori-chart-pill.is-active:focus-visible {
  background: var(--chart-accent);
  border-color: var(--chart-accent);
  color: #fff;
  box-shadow: none;
  outline: none;
}

.nori-chart-pill.is-all.is-active,
.nori-chart-pill[data-val="Brasil"].is-active,
.nori-chart-pill[data-value="Brasil"].is-active,
.nori-chart-pill.is-primary.is-active {
  background: var(--chart-text);
  border-color: var(--chart-text);
  color: #fff;
}

.nori-chart-legend {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 18px;
  margin: 0 0 12px;
  padding: 0;
  color: var(--chart-muted);
  font: inherit;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.3;
}

.nori-chart-legend span,
.nori-chart-legend-item {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  white-space: nowrap;
}

.nori-chart-legend i,
.nori-chart-legend-swatch {
  display: inline-block;
  width: 20px;
  height: 3px;
  flex: 0 0 auto;
  border-radius: 999px;
  background: var(--legend-color, currentColor);
}

.nori-chart-legend i.is-dashed,
.nori-chart-legend-swatch.dashed {
  height: 0;
  background: transparent !important;
  border-top: 2.5px dashed var(--legend-color, var(--chart-total));
  border-radius: 0;
}

.nori-chart-wrap {
  position: relative;
  width: 100%;
  margin: 0;
  padding: 0;
}

.nori-chart-wrap canvas {
  display: block;
  width: 100% !important;
  height: 100% !important;
}

.nori-chart-wrap--territorio-line {
  height: 460px;
  overflow: hidden;
}

.nori-chart-card--territorio .nori-chart-legend {
  margin-top: 0;
  padding-top: 12px;
  border-top: 1px solid var(--chart-border);
}

@media (min-width: 640px) {
  .nori-chart-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 980px) {
  .nori-chart-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 700px) {
  .nori-chart-panel {
    margin-bottom: 24px;
  }

  .nori-chart-card,
  .nori-chart-card--featured,
  .nori-chart-card--compact {
    padding: 14px 12px 12px;
  }

  .nori-chart-filters {
    gap: 12px;
  }

  .nori-chart-pill {
    min-height: 32px;
    padding: 6px 10px;
    font-size: 12px;
  }

  .nori-chart-legend {
    gap: 7px 14px;
    font-size: 12px;
  }

  .nori-chart-legend i,
  .nori-chart-legend-swatch {
    width: 18px;
  }
}

@media (max-width: 420px) {
  .nori-chart-card,
  .nori-chart-card--featured,
  .nori-chart-card--compact {
    padding-left: 10px;
    padding-right: 10px;
  }

  .nori-chart-wrap--territorio-line {
    height: 330px;
  }
}

/* Escolarização por Região — additions merged into the shared nori chart system */
.nori-escolarizacao-regiao .nori-chart-card--territorio {
  overflow: hidden;
}

.nori-chart-grid--2 {
  grid-template-columns: 1fr;
}

.nori-chart-subcard {
  min-width: 0;
  max-width: 100%;
}

.nori-chart-subcard > .nori-chart-card-title {
  margin-bottom: 8px;
}

.nori-chart-wrap--territorio-line {
  height: 430px;
  overflow: hidden;
}

.nori-chart-wrap--territorio-wide {
  height: 460px;
  overflow: hidden;
}

.nori-escolarizacao-regiao .nori-chart-legend {
  border-top: 1px solid var(--chart-border);
  margin-top: 2px;
  padding-top: 8px;
}

.nori-escolarizacao-regiao .nori-chart-pill[data-val="Brasil"].is-active {
  background: var(--chart-text);
  border-color: var(--chart-text);
  color: #fff;
}

@media (min-width: 900px) {
  .nori-chart-grid--2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {

  .nori-chart-wrap--territorio-line {
    height: 340px;
  }

  .nori-chart-wrap--territorio-wide {
    height: 360px;
  }
}

@media (max-width: 420px) {
  .nori-chart-wrap--territorio-line {
    height: 300px;
  }

  .nori-chart-wrap--territorio-wide {
    height: 320px;
  }
}

/* Escolarização por Região v3 — stacked full-width chart groups */
.nori-escolarizacao-regiao .nori-chart-stack {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 16px;
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

.nori-escolarizacao-regiao .nori-chart-stack > .nori-chart-subcard {
  width: 100%;
  min-width: 0;
  max-width: 100%;
}

.nori-escolarizacao-regiao .nori-chart-card--year-stack {
  margin-bottom: 16px;
}

.nori-escolarizacao-regiao .nori-chart-card--year-stack > .nori-chart-legend,
.nori-escolarizacao-regiao .nori-chart-stack--comparativo + .nori-chart-legend {
  margin-bottom: 12px;
}

.nori-escolarizacao-regiao .nori-chart-stack .nori-chart-wrap {
  width: 100%;
}


/* Rendimento medio real — additions merged into the shared nori chart system */

.nori-rendimento-medio .nori-chart-grid--2 {
  grid-template-columns: 1fr;
}

.nori-rendimento-medio .nori-chart-legend {
  font-size: 13px;
  font-weight: 600;
}

.nori-rendimento-medio .nori-chart-card-title,
.nori-rendimento-medio .nori-chart-card-subtitle {
  max-width: 100%;
}

.nori-rendimento-medio .nori-chart-wrap {
  overflow: hidden;
}

@media (min-width: 640px) {
  .nori-rendimento-medio .nori-chart-grid--2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Rendimento domiciliar per capita — additions merged into the shared nori chart system */
.nori-rendimento-domiciliar {
  --chart-brancos: #e66c37;
  --chart-negros: #73361c;
  --chart-total: #d9b300;
  --mb: var(--chart-brancos);
  --mn: var(--chart-negros);
  --tt: var(--chart-total);
}

.nori-rendimento-domiciliar .nori-chart-panel {
  background: transparent;
  border: 0;
  box-shadow: none;
  padding: 0;
}

.nori-rendimento-domiciliar .nori-chart-card {
  box-shadow: none;
}

.nori-rendimento-domiciliar .nori-chart-filters {
  background: transparent;
  border: 0;
  border-radius: 0;
}

.nori-rendimento-domiciliar .nori-chart-legend {
  font-size: 13px;
  font-weight: 600;
}

.nori-rendimento-domiciliar .nori-chart-legend-swatch--dot {
  width: 9px;
  height: 9px;
  border-radius: 999px;
}

.nori-rendimento-domiciliar .nori-chart-legend-swatch--square {
  width: 12px;
  height: 10px;
  border-radius: 2px;
}

.nori-rendimento-domiciliar .nori-chart-wrap {
  overflow: hidden;
}

@media (max-width: 700px) {
  .nori-rendimento-domiciliar .nori-chart-wrap[style*="height:300px"] {
    height: 260px !important;
  }

  .nori-rendimento-domiciliar .nori-chart-wrap[style*="height:280px"] {
    height: 260px !important;
  }

  .nori-rendimento-domiciliar .nori-chart-wrap[style*="height:240px"] {
    height: 220px !important;
  }
}

@media (max-width: 420px) {
  .nori-rendimento-domiciliar .nori-chart-wrap[style*="height:300px"],
  .nori-rendimento-domiciliar .nori-chart-wrap[style*="height:280px"] {
    height: 240px !important;
  }

  .nori-rendimento-domiciliar .nori-chart-wrap[style*="height:220px"],
  .nori-rendimento-domiciliar .nori-chart-wrap[style*="height:240px"] {
    height: 210px !important;
  }
}

/* População geral — additions merged into the shared nori chart system */
.nori-populacao {
  --chart-negros: #73361c;
  --chart-brancos: #e66c37;
  --chart-accent: #a1343c;
  --chart-panel: #fcfcfc;
  --chart-soft: #f8f9fa;
  --chart-border: #E0E2E8;
  --chart-border-strong: #C8CAD4;
  --chart-muted: #6B7280;
  --chart-text: #1A1C2E;
  --mn: var(--chart-negros);
  --mb: var(--chart-brancos);
}

.nori-populacao .nori-chart-panel {
  background: transparent;
  border: 0;
  box-shadow: none;
  padding: 0;
}

.nori-populacao .nori-chart-filters {
  background: transparent;
  border: 0;
  border-radius: 0;
  padding: 0 0 10px;
  box-shadow: none;
}

.nori-populacao .nori-chart-grid--2 {
  grid-template-columns: 1fr;
}

.nori-populacao .nori-pop-map-grid {
  margin-bottom: 20px;
}

.nori-populacao .nori-pop-map-card--stacked {
  margin-bottom: 20px;
}

.nori-populacao .nori-pop-map-stack {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 24px;
  width: 100%;
  min-width: 0;
}

.nori-populacao .nori-pop-map-item {
  width: 100%;
  min-width: 0;
}

.nori-populacao .nori-pop-map-item + .nori-pop-map-item {
  padding-top: 22px;
  border-top: 1px solid var(--chart-border);
}

.nori-populacao .nori-chart-card,
.nori-populacao .nori-chart-card--featured,
.nori-populacao .nori-chart-card--compact {
  box-shadow: none;
}

.nori-populacao .nori-pop-map-card {
  min-width: 0;
}

.nori-populacao .nori-pop-map-wrap {
  position: relative;
  width: 100%;
  margin: 0;
  padding: 0;
}

.nori-populacao .nori-pop-map-wrap svg,
.nori-populacao .nori-pop-brazil-svg {
  display: block;
  width: 100%;
  height: auto;
  overflow: visible;
}

.nori-populacao .estado path,
.nori-populacao .nori-pop-brazil-svg .estado path {
  stroke: #fff;
  stroke-width: 1px;
  stroke-linejoin: round;
  cursor: pointer;
  transition: fill .28s ease, opacity .12s ease, filter .12s ease;
  vector-effect: non-scaling-stroke;
}

.nori-populacao .estado:hover path {
  filter: brightness(1.06);
}

.nori-populacao .nori-pop-map-uf-label {
  fill: #fff;
  font-family: inherit;
  font-weight: 800;
  pointer-events: none;
  paint-order: stroke;
  stroke: rgba(0, 0, 0, .35);
  stroke-width: 2px;
  stroke-linejoin: round;
  text-shadow: none;
}

.nori-populacao .nori-pop-map-skeleton {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 280px;
  color: var(--chart-muted);
  font: inherit;
  font-size: 13px;
  line-height: 1.35;
  background: linear-gradient(90deg, #f0f1f4 25%, #e8e9ec 50%, #f0f1f4 75%);
  background-size: 200% 100%;
  border-radius: 6px;
  animation: nori-pop-shimmer 1.4s infinite;
}

@keyframes nori-pop-shimmer {
  0% { background-position: 200% 0; }
  100% { background-position: -200% 0; }
}

.nori-pop-tooltip {
  position: fixed;
  z-index: 9999;
  pointer-events: none;
  background: rgba(26, 28, 46, .93);
  color: #fff;
  padding: 8px 12px;
  border-radius: 7px;
  white-space: nowrap;
  opacity: 0;
  transition: opacity .08s ease;
  box-shadow: 0 4px 16px rgba(0, 0, 0, .3);
  font: inherit;
  font-size: 13px;
  line-height: 1.65;
}

.nori-populacao .nori-pop-map-scale {
  margin-top: 10px;
}

.nori-populacao .nori-pop-scale-inner {
  display: flex;
  flex-direction: column;
  gap: 3px;
}

.nori-populacao .nori-pop-map-scale-bar {
  width: 100%;
  height: 9px;
  border-radius: 999px;
}

.nori-populacao .nori-pop-map-scale-ticks {
  display: flex;
  justify-content: space-between;
  color: var(--chart-muted);
  font: inherit;
  font-size: 11px;
  line-height: 1.2;
}

.nori-populacao .nori-pop-kpi-table-wrap {
  overflow: hidden;
  margin: 0 0 20px;
  border: 1px solid var(--chart-border);
  border-radius: 10px;
  box-shadow: none;
}

.nori-populacao .nori-pop-kpi-table {
  width: 100%;
  border-collapse: collapse;
  color: var(--chart-text);
  font: inherit;
  font-size: 14px;
  line-height: 1.35;
}

.nori-populacao .nori-pop-kpi-table thead th {
  padding: 9px 16px;
  background: var(--chart-soft);
  border-bottom: 1.5px solid var(--chart-border);
  color: var(--chart-muted);
  font: inherit;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .11em;
  line-height: 1.15;
  text-transform: uppercase;
}

.nori-populacao .nori-pop-kpi-table thead th:first-child,
.nori-populacao .nori-pop-kpi-table tbody td:first-child {
  text-align: left;
}

.nori-populacao .nori-pop-kpi-table thead th:not(:first-child),
.nori-populacao .nori-pop-kpi-table tbody td:not(:first-child) {
  text-align: right;
}

.nori-populacao .nori-pop-kpi-table tbody td {
  padding: 10px 16px;
  border-bottom: 1px solid var(--chart-border);
  vertical-align: middle;
}

.nori-populacao .nori-pop-kpi-table tbody tr:last-child td {
  border-bottom: 0;
}

.nori-populacao .nori-pop-td-label {
  display: flex;
  align-items: center;
  gap: 6px;
  color: var(--chart-muted);
  font: inherit;
  font-size: 13px;
  line-height: 1.3;
}

.nori-populacao .nori-pop-td-swatch {
  display: inline-block;
  width: 10px;
  height: 10px;
  flex: 0 0 auto;
  border-radius: 2px;
}

.nori-populacao .nori-pop-td-num {
  color: var(--chart-text);
  font: inherit;
  font-size: 16px;
  font-weight: 700;
}

.nori-populacao .nori-pop-td-num.neg { color: var(--chart-negros); }
.nori-populacao .nori-pop-td-num.bra { color: var(--chart-brancos); }

.nori-populacao .nori-pop-td-pct {
  color: var(--chart-muted);
  font: inherit;
  font-size: 13px;
}

.nori-populacao .nori-chart-legend-swatch--square {
  width: 12px;
  height: 10px;
  border-radius: 2px;
}

.nori-populacao .nori-pop-chart-wrap--bar {
  height: 90px;
  overflow: hidden;
}

.nori-populacao .nori-chart-source {
  margin-top: 20px;
  padding-top: 14px;
  border-top: 1px solid var(--chart-border);
  color: var(--chart-muted);
  font: inherit;
  font-size: 12px;
  line-height: 1.35;
  text-align: center;
}

@media (min-width: 900px) {
  .nori-populacao .nori-chart-grid--2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .nori-populacao .nori-pop-map-grid,
  .nori-populacao .nori-pop-map-card--stacked {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 700px) {
  .nori-populacao .nori-pop-map-stack {
    gap: 20px;
  }

  .nori-populacao .nori-pop-map-item + .nori-pop-map-item {
    padding-top: 18px;
  }

  .nori-populacao .nori-pop-map-skeleton {
    min-height: 230px;
  }

  .nori-populacao .nori-pop-kpi-table thead th,
  .nori-populacao .nori-pop-kpi-table tbody td {
    padding-left: 12px;
    padding-right: 12px;
  }
}

@media (max-width: 420px) {
  .nori-populacao .nori-pop-map-skeleton {
    min-height: 210px;
  }

  .nori-pop-tooltip {
    max-width: calc(100vw - 24px);
    white-space: normal;
  }
}

/* População Geral — WordPress/Elementor SVG map hardening
   Fixes Elementor/theme SVG defaults that can clip translated SVG groups or
   override inline SVG sizing. Keep this block after shared chart styles. */
.nori-populacao .nori-pop-map-wrap,
.nori-populacao .nori-pop-map-card,
.nori-populacao .nori-pop-map-card--stacked,
.nori-populacao .nori-pop-map-stack,
.nori-populacao .nori-pop-map-item,
.nori-populacao .nori-pop-map-grid {
  overflow: visible !important;
}

.nori-populacao .nori-pop-brazil-svg,
.nori-populacao .nori-pop-map-wrap > svg {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  overflow: visible !important;
  contain: none !important;
}

.nori-populacao .nori-pop-brazil-svg .estado,
.nori-populacao .nori-pop-brazil-svg .estado path,
.nori-populacao .nori-pop-brazil-svg .estado text {
  visibility: visible !important;
  opacity: 1;
}

.nori-populacao .nori-pop-brazil-svg .estado path {
  fill-opacity: 1 !important;
  stroke: #fff !important;
  stroke-linejoin: round !important;
  pointer-events: auto !important;
}

.nori-populacao .nori-pop-brazil-svg .nori-pop-map-uf-label {
  pointer-events: none !important;
  user-select: none;
}

.dbpi-dashboard {
  --dbpi-neg: #73361c;
  --dbpi-bra: #e66c37;
  --dbpi-accent: #a1343c;
  --dbpi-surface: var(--color-white, #fff);
  --dbpi-surface-soft: #fafafa;
  --dbpi-border: var(--color-grey-light, #DBDBDB);
  --dbpi-border-strong: var(--color-grey, #AFAFAF);
  --dbpi-text: var(--color-text, #000003);
  --dbpi-muted: var(--color-grey-dark, #707072);
  --dbpi-radius: 6px;
  width: 100%;
  max-width: 100%;
  margin: 0;
  padding: 0;
  color: var(--dbpi-text);
  font-family: var(--ff-maintext, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);
  box-shadow: none;
}

.dbpi-dashboard,
.dbpi-dashboard *,
.dbpi-dashboard *::before,
.dbpi-dashboard *::after {
  box-sizing: border-box;
}

.dbpi-panel {
  width: 100%;
  max-width: 100%;
  margin: 0;
  padding: 0;
  background: transparent;
  border: 0;
  box-shadow: none;
}

.dbpi-title {
  margin: 0 0 1.25rem;
  padding: 0 0 .75rem;
  border-bottom: 1px solid var(--dbpi-border);
  color: var(--dbpi-text);
  font-family: inherit;
  font-weight: var(--fw-bold, 700);
  font-size: clamp(1.25rem, 2.6vw, 1.875rem);
  line-height: 1.2;
}

.dbpi-filter-strip {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 1rem 1.5rem;
  width: 100%;
  margin: 0 0 1.25rem;
  padding: .875rem 1rem;
  border: 1px solid var(--dbpi-border);
  border-radius: var(--dbpi-radius);
  background: var(--dbpi-surface-soft);
}

.dbpi-filter-group {
  display: flex;
  flex-direction: column;
  gap: .45rem;
}

.dbpi-filter-label {
  color: var(--dbpi-muted);
  font-size: .72rem;
  font-weight: var(--fw-bold, 700);
  line-height: 1;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.dbpi-filter-row {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
}

.dbpi-filter-pill {
  appearance: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2rem;
  padding: .35rem .85rem;
  border: 1.5px solid var(--dbpi-border-strong);
  border-radius: 999px;
  background: var(--dbpi-surface);
  color: var(--dbpi-muted);
  cursor: pointer;
  font-family: inherit;
  font-size: .83rem;
  font-weight: var(--fw-bold, 700);
  line-height: 1;
  text-decoration: none;
  transition: background-color .16s ease, border-color .16s ease, color .16s ease;
}

.dbpi-filter-pill:hover,
.dbpi-filter-pill:focus-visible {
  background: var(--color-grey-light, #DBDBDB);
  color: var(--dbpi-text);
  outline: none;
}

.dbpi-filter-pill.is-active {
  border-color: var(--dbpi-accent);
  background: var(--dbpi-accent);
  color: #fff;
}

.dbpi-map-stack {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
  width: 100%;
  margin: 0 0 1rem;
}

.dbpi-card {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  margin: 0;
  padding: 1rem;
  border: 1px solid var(--dbpi-border);
  border-radius: var(--dbpi-radius);
  background: var(--dbpi-surface);
  box-shadow: none;
}

.dbpi-card-title {
  margin: 0 0 .25rem;
  color: var(--dbpi-text);
  font-family: inherit;
  font-size: 1rem;
  font-weight: var(--fw-bold, 700);
  line-height: 1.3;
}

.dbpi-card-sub {
  margin: 0 0 .875rem;
  color: var(--dbpi-muted);
  font-size: .83rem;
  line-height: 1.35;
}

.dbpi-map-svg-wrap {
  position: relative;
  width: 100%;
  min-width: 0;
  overflow: visible;
}

.dbpi-map-svg-wrap .dbpi-brazil-svg {
  display: block;
  width: 100%;
  height: auto;
  overflow: visible;
}

.dbpi-map-svg-wrap .dbpi-estado path {
  stroke: #fff;
  stroke-width: 1px;
  stroke-linejoin: round;
  cursor: pointer;
  vector-effect: non-scaling-stroke;
  transition: fill .2s ease, filter .12s ease;
}

.dbpi-map-svg-wrap .dbpi-estado:hover path {
  filter: brightness(1.06);
}

.dbpi-map-svg-wrap .dbpi-map-uf-label {
  fill: #fff;
  pointer-events: none;
  font-family: var(--ff-maintext, system-ui, sans-serif);
  font-weight: var(--fw-bold, 700);
  paint-order: stroke;
  stroke: rgba(0, 0, 0, .35);
  stroke-linejoin: round;
  stroke-width: 2px;
}

.dbpi-map-tooltip {
  position: fixed;
  z-index: 999999;
  pointer-events: none;
  opacity: 0;
  padding: .55rem .75rem;
  border-radius: var(--dbpi-radius);
  background: rgba(33, 33, 33, .93);
  color: #fff;
  box-shadow: none;
  font-family: var(--ff-maintext, system-ui, sans-serif);
  font-size: .78rem;
  line-height: 1.55;
  white-space: nowrap;
  transition: opacity .08s ease;
}

.dbpi-map-scale {
  width: 100%;
  margin: .75rem 0 0;
}

.dbpi-scale-inner {
  display: flex;
  flex-direction: column;
  gap: .3rem;
}

.dbpi-map-scale-bar {
  width: 100%;
  height: .55rem;
  border-radius: 999px;
}

.dbpi-map-scale-ticks {
  display: flex;
  justify-content: space-between;
  gap: .5rem;
  color: var(--dbpi-muted);
  font-family: inherit;
  font-size: .72rem;
  line-height: 1.2;
}

.dbpi-kpi-table-wrap {
  width: 100%;
  margin: 0 0 1rem;
  overflow-x: auto;
  border: 1px solid var(--dbpi-border);
  border-radius: var(--dbpi-radius);
  background: var(--dbpi-surface);
}

.dbpi-kpi-table {
  width: 100%;
  min-width: 36rem;
  border-collapse: collapse;
  color: var(--dbpi-text);
  font-family: inherit;
  font-size: .92rem;
}

.dbpi-kpi-table th,
.dbpi-kpi-table td {
  padding: .8rem 1rem;
  border: 0;
  border-bottom: 1px solid var(--dbpi-border);
  vertical-align: middle;
}

.dbpi-kpi-table thead th {
  background: var(--dbpi-surface-soft);
  color: var(--dbpi-muted);
  font-size: .72rem;
  font-weight: var(--fw-bold, 700);
  letter-spacing: .11em;
  line-height: 1.2;
  text-transform: uppercase;
}

.dbpi-kpi-table thead th:first-child,
.dbpi-kpi-table tbody td:first-child {
  text-align: left;
}

.dbpi-kpi-table thead th:not(:first-child),
.dbpi-kpi-table tbody td:not(:first-child) {
  text-align: right;
}

.dbpi-kpi-table tbody tr:last-child td {
  border-bottom: 0;
}

.dbpi-kpi-label {
  display: flex;
  align-items: center;
  gap: .45rem;
  color: var(--dbpi-muted);
  line-height: 1.2;
}

.dbpi-kpi-total-row {
  background: var(--dbpi-surface-soft);
}

.dbpi-kpi-total-row .dbpi-kpi-label {
  color: var(--dbpi-text);
  font-weight: var(--fw-bold, 700);
}

.dbpi-kpi-num {
  font-weight: var(--fw-bold, 700);
  letter-spacing: .01em;
}

.dbpi-kpi-num-neg { color: var(--dbpi-neg); }
.dbpi-kpi-num-bra { color: var(--dbpi-bra); }
.dbpi-kpi-pct { color: var(--dbpi-muted); }

.dbpi-swatch {
  display: inline-block;
  flex: 0 0 auto;
  width: .8rem;
  height: .8rem;
  border-radius: 2px;
}

.dbpi-swatch-neg { background: var(--dbpi-neg); }
.dbpi-swatch-bra { background: var(--dbpi-bra); }

.dbpi-bar-card {
  margin: 0;
}

.dbpi-chart-legend {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem 1rem;
  margin: 0 0 .75rem;
}

.dbpi-chart-legend-item {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  color: var(--dbpi-muted);
  font-size: .83rem;
  line-height: 1.2;
}

.dbpi-chart-wrap {
  position: relative;
  width: 100%;
  height: 7rem;
}

.dbpi-footer {
  width: 100%;
  margin: 1rem 0 0;
  padding: .75rem 0 0;
  border-top: 1px solid var(--dbpi-border);
  color: var(--dbpi-muted);
  font-size: .83rem;
  line-height: 1.4;
  text-align: center;
}

.dbpi-sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

@media (max-width: 1024px) {
  .dbpi-card { padding: .9rem; }
  .dbpi-chart-wrap { height: 6.5rem; }
}

@media (max-width: 767px) {
  .dbpi-title {
    margin-bottom: 1rem;
    font-size: 1.35rem;
    line-height: 1.25;
  }

  .dbpi-filter-strip {
    gap: .875rem;
    padding: .75rem;
  }

  .dbpi-filter-group {
    width: 100%;
  }

  .dbpi-card {
    padding: .75rem;
  }

  .dbpi-card-title {
    font-size: .95rem;
  }

  .dbpi-card-sub,
  .dbpi-chart-legend-item,
  .dbpi-footer {
    font-size: .78rem;
  }

  .dbpi-kpi-table {
    min-width: 30rem;
    font-size: .85rem;
  }

  .dbpi-kpi-table th,
  .dbpi-kpi-table td {
    padding: .7rem .75rem;
  }

  .dbpi-chart-wrap {
    height: 6rem;
  }
}/* End custom CSS */