body {
  font-family: "Lato", helvetica, sans-serif;
  box-sizing: border-box;
  color: #353535;
  font-size: 20px;
  line-height: 32.5px;
  margin: 0;
  padding: 0;
  /* overflow-x: hidden; */
}

/* header */
#header-pinned {
  font: 20px Lato;
  color: #000;
  font-weight: 400;
  /* margin-right: 100px; */
  position: fixed;
  top: 0px;
  left: 0;
  width: 100%;
  background: #fff;
  border-bottom: 2px solid #eee;
  z-index: 5;
  -webkit-transition: top 0.25s linear;
  -moz-transition: top 0.25s linear;
  -o-transition: top 0.25s linear;
  transition: top 0.25s linear;
}

.is-visible {
  top: 0px !important;
}

#header-pinned .content {
  height: 49px;
  max-width: 1200px;
  margin: 0 auto;
  position: relative;
}

#header-pinned *{
  color:#333;
  font-weight: 300;
  text-decoration: none;
}

#header-pinned  .subnav a {
  color: #1696d2;
}

#header-pinned .subnav a:hover{
  color:#000;
}

#header-pinned .site-logo {
  display: block;
  width: 34px;
  height: 34px;
  position: absolute;
  left: 10px;
  margin-top: 7px;
  background: url(https://www.urban.org/sites/all/themes/urban/images/logo-mini-dark.png) no-repeat;
  background-size: 34px 34px;
}

#header-pinned .title {
  font-size: 14px;
  line-height: 49px;
  margin: 0 65px 0 55px;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

#header-pinned .title {
  font-size: 20px;
  margin-left: 80px;
}

#header-pinned .title span,
#header-pinned .title a {
  display: inline;
}

/* html css */
#container {
  max-width: 1200px;
  margin: 0 auto;
  /* overflow-x: hidden; */
}

#theCharts {
  width: 100%;
  display: flex;
  position: relative;
}

#mapNotes {
  width: 70%;
}

#map {
  width: 100%;
}

#notesGraphics {
  width: 70%;
  max-width: 756px;
  margin-top: 20px;
}

#notesGraphics > p {
  font-size: 14px;
  line-height: 22px;
}

#lineContainer {
  width: 30%;
  margin-left: 10%;
  position: relative;
  margin-top: 0;
}

#container > img {
  width: 100%;
  display: block;
  max-width: 355px;
  margin: 0 auto;
  margin-top: 100px;
  margin-bottom: 30px;
}

#container > h1 {
  width: 100%;
  max-width: 800px;
  margin: 0px auto;
  margin-bottom: 30px;
  text-align: center;
  line-height: 48px;
  font-size: 40px;
}

#container > h2 {
  font-weight: 400;
  text-align: center;
  font-size: 20px;
  margin-bottom: 20px;
  font-style: italic;
}

#container > hr {
  background-color: #D2D2D2;
  width: 100%;
  max-width: 760px;
  border: none;
  height: 1px;
  margin: 0px auto;
  margin-bottom: 30px;
}

#date {
  font-size: 14px;
  text-align: center;
  margin: 0px auto;
  margin-bottom: 30px;
  color: #696969;
}

#share-icons {
  margin-bottom: 48px;
  font-size: 12px;
  text-align: center;
}

#share-icons a {
  margin-right: 15px;
}

#share-icons img {
  width: 24px;
}

#share-icons a:last-of-type {
  margin-right: 0px;
}

p.blockText {
  width: 100%;
  max-width: 760px;
  margin: 20px auto;
}

a, a:hover, a:visited {
  color: #1696d2;
  text-decoration: none;
}

#headerLine {
  display: block;
}

#lineChartSub {
  display: block;
}

#headerLineMobile {
  display: none;
}

#lineChartSubMobile {
  display: none;
}

#containerStates {
  display: block;
}

/* #containerStatesMobile {
  display: none;
} */

div#caution {
  font-size: 14px;
  position: absolute;
  top: 25px;
  /* text-align: center; */
}

div#caution p {
  margin: 0;
  line-height: 1.5;
  text-align: left;
  display: inline-block;
  margin-right: 30px;
}

div#caution p:last-of-type {
  margin-right: 0;
}

p#withCaution::before {
  content: '';
  width: 7%;
  border-bottom: solid 3px #696969;
  position: absolute;
  left: -9%;
  top: 43%;
  z-index: 1;
}

p#noData::before {
  padding: 7px;
  content: "";
  background: #d2d2d2;
  font-size: 0;
  margin-right: 5px;
  vertical-align: super;
}

p#noData {
  margin-left: -17px !important;
}

/* how-to chart css */
#container-explainer {
  width: 100%;
  max-width: 760px;
  margin: 0 auto;
  margin-top: 50px;
}

.selectionButtons {
  margin-bottom: 20px;
}

.button-selection {
  background-color: #ffffff;
  border: 0;
  padding: 0;
  margin-right: 30px;
  cursor: pointer;
  padding-bottom: 3px;
}

.button-selection:last-of-type {
  margin-right: 0px;
}

.button-selection > span {
  font-size: 18px;
  font-weight: bold;
  opacity: 0.3;
  font-family: "Lato", helvetica, sans-serif;
  color: black !important;
}

.active-selection {
  border-bottom: 4px #353535 solid;
}

button#bt-poverty.active-selection {
  border-bottom-color: #55B748;
}

button#bt-urbanization.active-selection {
  border-bottom-color: #EC008B;
}

button#bt-raceEth.active-selection {
  border-bottom-color: #1696D2;
}

.active-selection > span {
  opacity: 1;
}

#container-explainer > p {
  font-size: 20px;
  line-height: 32.5px;
  font-weight: 400;
  margin: 0px;
}

#explainer {
  margin: 40px auto;
  position: relative;
}

#containerExploreData {
  position: relative;
}

.labelHowTo, .labelLineUS {
  font-size: 14px;
  fill: #696969;
  text-transform: uppercase;
}

/* selector css */
#container-selector {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
  margin-top: 80px;
}

#showMenu {
  display: none;
}

#view-selection {
  display: flex;
  justify-content: flex-start;
}

#view-menu {
  margin: 0px;
  margin-right: 15px;
  font-size: 18px;
  font-style: italic;
  color: #696969;
  line-height: 22px;
}

#dropMenu {
  display: block;
}

#dropMenu-button {
  font-family: 'Lato', helvetica, sans-serif;
  font-size: 20px;
  font-weight: 700;
  color: #353535;
  background: none;
  border: none;
  padding: 0;
  padding-right: 14px;
  line-height: 1;
  border-bottom: 3px #55B748 solid;
  text-transform: initial;
}

#dropMenu-button, input{
  border-radius: 0px;
}

.ui-selectmenu-text {
  padding-bottom: 7px;
  text-overflow: unset;
  overflow: initial;
}

.ui-selectmenu-icon.ui-icon.ui-icon-triangle-1-s{
  background-image: url('../img/menuDown.png');
  background-size: 20px;
  background-position: center;
  width: 20px;
  top: 5px;
  right: -11px;
}

.ui-selectmenu-icon.ui-icon.ui-icon-triangle-1-s.open{
  background-image: url('../img/menuDown.png');
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
}

.ui-state-hover .ui-icon, .ui-state-focus .ui-icon {
  background-image: url('../img/menuDown.png');
}

.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active, a.ui-button:active, .ui-button:active, .ui-button.ui-state-active:hover{
  border: 1px solid #1696d2;
  background: #1696d2;
}

.ui-menu .ui-menu-item{
  font-family: Lato;
  font-size: 16px;
}

.ui-menu-item.disabled{
  pointer-events: none;
  color: #9d9d9d;
  font-style: italic;
}

#dropdown-list > a {
  display: block;
}

.selectors-div {
  display: flex;
  justify-content: flex-start;
  margin: 25px 0 20px 0;
  font-size: 16px;
  line-height: 19px;
}

.selectors-div > p {
  margin: 0;
  margin-right: 15px;
  font-size: 16px;
  font-weight: 700;
  line-height: 19px;
}

#selectionRace > p {
  margin-right: 7px;
}

#selectionRace .selectedCheck {
  background-color: #CFE8F3;
  border-color: #0a4c6a;
  color: #0a4c6a;
}

#selectionUrban .selectedCheck {
  background-color: #F5CBDF;
  border-color: #761548;
  color: #761548;
}

.groupChecks {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
}

.selectorCheck {
  padding: 0;
  margin: 0 10px 10px 0;
  position: relative;
}

.checkmark, .checkmarkFunding {
  border: 2px #9D9D9D solid;
  background-color: #fff;
  cursor: pointer;
  padding: 4px 10px 6px 10px;
  border-radius: 10px;
  color: #696969;
}

.checkmark img, .checkmarkFunding img {
  width: 14px;
  margin-right: 5px;
  display: none;
}

.checkImg {
  max-width: 18px;
}

.selectedCheck {
  background-color: #696969;
  border-color: #696969;
  color: #ffffff;
}

.selectedCheck img {
  display: inline-block;
}

.selectedCheck[data-index="adj"] {
  background-color: #353535;
  border-color: #353535;
  color: #ffffff;
}

#selectionStages > .groupChecks > div:nth-child(3) {
  margin-right: 20px;
}

#selectionStages > .groupChecks > div:nth-child(5) {
  margin-right: 7px;
}

#borderDiv {
  /* width: 2px; */
  height: 22px;
  margin: 0px 10px 0px 20px;
  /* border-left: 2px black solid; */
}

.definition {
  position: relative;
}

.defBox {
  width: 23px;
  height: 23px;
  border-radius: 40px;
  background-color: #D2D2D2;
  cursor: help;
}

.defBox > p {
  color: #ffffff;
  text-align: center;
  font-size: 20px;
  font-weight: bold;
  padding-top: 2px;
  margin: -1px 0 0 0;
}

.textDef {
  width: 250px;
  line-height: 25px;
  padding: 15px;
  background-color: #ececec;
  position: absolute;
  z-index: 100;
  left: 50%;
  top: 118px;
  transform: translate(-50%, -50%);
  box-shadow: 5px 3px 3px #eae9e9;
  display: none;
}

.textDef:after {
  content: '';
  position: absolute;
  left: 50%;
  top: -8px;
  transform: translate(-50%, -50%);
  width: 0;
  height: 0;
  border-left: 17px solid transparent;
  border-right: 17px solid transparent;
  border-bottom: 17px solid #ececec;
  clear: both;
}

#raceEthDefinition {
  margin-right: 15px;
}

#raceEthDefinition > .textDef {
  top: 165px;
  width: 290px;
}

/* example line chart css */
#explainer > svg {
  display: block;
  margin: 0 auto;
}

.annotationExample {
  max-width: 170px;
  position: absolute;
}

.annotationExample > p {
  font-size: 14px;
  line-height: 21px;
  margin-top: 10px;
}

.spanAnnotation {
  padding: 2px 0;
  font-weight: bold;
}

#notePoverty {
  background-color: #DCEDD9;
}

#noteUrban  {
  background-color: #F5CBDF;
}

#noteRaceEth {
  background-color: #CFE8F3;
}

.bubbleNote {
  display: none;
  /* border: 2px black solid; */
  background-color: black;
  color: #ffffff;
  margin-right: 3px;
  line-height: 0;
  border-radius: 40px;
  padding: 2px 9px 3px 9px;
  font-weight: bold;
  vertical-align: top;
}

.bubbleLeft, .bubbleRight {
  display: none;
  position: absolute;
  background-color: black;
  border-radius: 40px;
  padding: 2px 9px 3px 9px;
  color: #ffffff;
  line-height: 0;
}

.bubbleLeft {
  left: 10%;
}

.bubbleRight {
  left: 93%;
}

.bubbleLeft > p, .bubbleRight > p {
  font-family: 'Lato', helvetica, sans-serif;
  font-size: 14px;
  line-height: 21px;
  display: inline-block;
  margin: 0;
}

.annotationLeft {
  left: 0%;
  top: 4px;
}

.annotationRight {
  right: 0%;
  top: 0px;
}

.yAxis path, .yAxisMap path, .xAxisMap path {
  stroke: none;
}

.tick > text, .titleChart {
  font-size: 13px;
  font-family: "Lato", helvetica, sans-serif;
  fill: #353535;
}

.titleChart {
  font-style: italic;
}

/* map css */
.mapLabels {
  fill: #353535;
  font-size: 14px;
  font-weight: 400;
}

.threshold1 {
  stroke: #353535;
  stroke-width: 1.5px;
  stroke-dasharray: 3;
}

.backgroundClick {
  pointer-events: all;
  cursor: pointer;
  fill: none;
}

.activeBackground {
  stroke: black;
  stroke-width: 3px;
  pointer-events: all;
  cursor: pointer;
  fill: none;
}

.backgroundClick[data-status="no-data"], .activeBackground[data-status="no-data"] {
  pointer-events: none;
  cursor: none;
  fill: #d2d2d2;
  stroke-width: 0px;
}

.linesMissingData, .linesMissingUS {
  stroke-dasharray: 4px;
}

.state, .bottom, .bottom, .linesMap, .threshold1  {
  pointer-events: none;
}

.mapLabels {
  pointer-events: none;
}

/* line chart USA css */
h6 {
  size: 15px;
  text-transform: uppercase;
  margin: 0 0 8px 0;
  color: #696969;
  font-weight: 400;
  line-height: 18px;
}

#lineContainer > p {
  font-size: 14px;
  line-height: 23px;
  margin: 0 0 20px 0;
}

p#lineChartSubMobile {
  font-size: 16px;
  line-height: 23px;
  margin: 0 0 10px 0;
}

#selectedHeader {
  display: flex;
  justify-content: space-between;
}

#selectedCounter, #clearAll {
  font-size: 16px;
  font-weight: bold;
  margin-top: 10px;
  margin-bottom: 5px;
}

.lineLabels {
  font-size: 16px;
  font-weight: 700;
}

.lineSelections {
  padding: 5px 12px 5px 12px;
  font-size: 14px;
  background: #F5F5F5;
  margin: 0 0 10px 0;
  display: inline-block;
  margin-right: 10px;
  cursor: pointer;
}

.lineSelections > p, .lineSelections > img {
  display: inline-block;
}

.lineSelections > p {
  margin: 0;
  margin-right: 12px;
}

.lineSelections > img {
  max-width: 15px;
  vertical-align: middle;
}

#clearAll {
  text-decoration: underline;
  text-underline-offset: 3px;
  cursor: pointer;
}

.voronois {
  fill: none;
  pointer-events: all;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

#tooltip {
  position: absolute;
  background-color: #ffffff;
  opacity: 0;
  box-shadow: 5px 3px 3px #eae9e9;
  border: 1px #dbd8d8 solid;
  padding: 7px 9px 6px 9px;
  width: 68px;
  z-index: 10;
  pointer-events: none;
}

#tooltip::before {
  top: 102%;
  left: 50%;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
  border-color: rgba(0, 0, 0, 0);
  border-top-color: #dbd8d8;
  border-width: 10px;
  margin-left: -10px;
}

#tooltip::after {
  top: 100%;
  left: 50%;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
  border-color: rgba(0, 0, 0, 0);
  border-top-color: #ffffff;
  border-width: 10px;
  margin-left: -10px;
}

#tooltip p {
  margin:0;
  line-height: 1.2;
  margin-bottom: 5px;
  font-size: 14px;
}

#tooltip > #state {
  padding-bottom: 3px;
  border-bottom: 1px black solid;
  margin-bottom: 7px;
  font-weight: 700;
}

#tooltip span#value {
  font-weight: 700;
  font-size: 14px;
}

/* footer */
footer {
  background-color: #F5F5F5;
  margin-top: 80px;
  padding-top: 60px;
  padding-bottom: 45px;
}

#containerFooter {
  width: calc(100% - 40px);
  max-width: 750px;
  margin: 0 auto;
}

#containerFooter > .blocks {
  width: 100%;
  margin: 0 auto;
}

#containerFooter > .blocks > p {
  font-size: 20px;
  line-height: 32.5px;
}

a.download {
  color: #000;
  text-transform: uppercase;
  font-weight: normal;
  font-size: 0.9em;
  border: 1px solid #000;
  padding: 0.5em;
  display: inline-block;
  margin-bottom: 1.1em;
  margin-right: 0.9em;
}

#containerFooter > div:nth-child(2) > p:nth-child(2) {
  font-style: italic;
}

#containerFooter > .blocks > h3 {
  font-weight: 200;
  text-transform: uppercase;
  font-size: 30px;
  color: #000000;
  margin: 0 auto;
  margin-top: 60px;
  margin-bottom: 10px;
}

@media screen and (max-width: 1200px) {
  #container {
    margin: 0 3%;
  }

  #lineContainer {
    margin-left: 5%;
  }

  #view-selection {
    margin-bottom: 25px;
  }

  .selectors-div {
    margin: 14px auto;
  }

  .selectorCheck {
    margin: 0px 10px 21px 0;
  }
}

@media screen and (max-width: 767px) {

  #container {
    margin: 0 3%;
  }

  #container > img {
    margin-top: 80px;
    margin-bottom: 24px;
  }

  #container > h1 {
    font-size: 36px;
    line-height: 45px;
    margin-bottom: 16px;
  }

  #container > h2 {
    margin-bottom: 16px;
  }

  #date {
    margin-bottom: 24px;
  }

  #container > hr {
    margin-bottom: 24px;
  }

  #share-icons {
    margin-bottom: 24px;
    line-height: 27px;
  }

  p.blockText {
    font-size: 18px;
  }

  #container-explainer {
    margin-bottom: 50px;
  }

  #explainer {
    margin: 40px auto;
  }

  #theCharts {
    display: block;
  }

  #mapNotes {
    width: 100%;
  }

  #notesGraphics {
    width: 100%;
  }

  #container-explainer > p {
    font-size: 18px;
  }

  #lineContainer {
    width: 100%;
    margin-left: 0;
    margin-top: 20px;
    display: flex;
    flex-direction: column;
  }

  .arrow {
    display: none;
  }

  .bubbleLeft, .bubbleRight {
    display: block;
  }

  .annotationRightMobile {
    margin-bottom: 20px;
  }

  .annotationLeftMobile p, .annotationRightMobile p {
    font-family: 'Lato', helvetica, sans-serif;
    font-size: 14px;
    line-height: 21px;
    display: inline-block;
  }

  .textBubble {
    font-family: 'Lato', helvetica, sans-serif;
    font-weight: 700;
    font-size: 14px;
    line-height: 21px;
  }

  .annotationLeftMobile p:last-of-type, .annotationRightMobile p:last-of-type {
    max-width: 85%;
    margin-left: 2%;
  }

  .bubbleNote {
    display: initial;
  }

  #container-selector {
    position: -webkit-sticky;
    position: sticky;
    top: 50px;
    z-index: 100;
    margin: 0;
  }

  #hiddenForMobile {
    display: block;
    background-color: #f5f5f5;
    padding: 10px 10px 15px 10px;
    margin: 0 -3%;
  }

  #marginUp {
    display: none;
    background-color: #f5f5f5;
    margin: 0 -3%;
    height: 35px;
  }

  #showMenu {
    display: block;
    width: 90px;
    margin: 0 auto;
    margin-bottom: 40px;
    position: relative;
    background-color: #f5f5f5;
    top: -29px;
    cursor: pointer;
  }

  #showMenu:before,
  #showMenu:after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -100%;
    z-index: -10;
    border-top: 37px solid #f5f5f5;
    border-left: 12px solid transparent;
    border-right: 12px solid transparent;
  }

  #showMenu p {
    font-weight: 700;
    font-size: 15px;
    text-align: center;
    margin-top: 0;
    line-height: 1.5;
  }

  #showMenu img {
    width: 20px;
    margin: 0 auto;
    position: absolute;
    left: 50%;
    top: 32px;
    transform: translate(-50%, -50%);
  }

  #showMenu #imgUp {
    display: block;
  }

  #showMenu #imgDown {
    display: none;
  }

  #view-selection {
    display: block;
    margin-bottom: 20px;
  }

  #view-menu {
    margin-bottom: 5px;
  }

  .selectors-div {
    display: block;
    margin: 10px auto;
  }

  .selectors-div > p {
    margin-bottom: 15px;
    line-height: 22px;
  }

  .selectorCheck {
    margin-right: 4px;
    margin-bottom: 25px;
  }

  .checkmark, .checkmarkFunding {
    padding: 4px 8px 6px 8px;
  }

  #selectionStages {
    max-width: 95%;
    margin: 10px 0 10px 0px;
  }

  #selectionRace > p {
    display: inline-block;
    max-width: 180px;
    vertical-align: middle;
  }

  #raceEthDefinition {
    display: inline-block;
    max-width: 30px;
    margin-top: 1px;
    vertical-align: top;
  }

  div#caution {
    top: 90px;
  }

  div#caution p {
    margin-right: 25px;
  }

  p#withCaution::before {
    width: 4%;
    left: -6%;
    top: 49%;
  }

  p#noData::before {
    padding: 5px;
    vertical-align: super;
  }

  #lineChartSub {
    display: none;
  }

  #lineChartSubMobile {
    display: block;
  }

  #headerLineMobile {
    display: block;
  }

  #selectedStates {
    /* display: none; */
    order: 1;
  }

  #headerLine {
    order: 2;
    margin-top: 20px;
    display: none;
  }

  #lineChart {
    order: 3;
  }

  #containerStates {
    min-height: 49px;
  }

  .lineSelections {
    font-size: 14px;
    margin-right: 5px;
    padding: 3px 10px 3px 10px;
  }

  .lineSelections p {
    margin-right: 8px;
  }

  .lineSelections > img {
    max-width: 13px;
    margin-top: -1px;
}

  .mapLabels {
    font-size: 12px;
  }

  .activeBackground {
    stroke-width: 3px;
  }

  footer {
    padding-top: 48px;
  }

  #containerFooter > .blocks > h3 {
    font-size: 24px;
  }

  #containerFooter > .blocks > h3:first-of-type {
    margin-top: 0;
  }

  #containerFooter > .blocks > p {
    font-size: 18px;
  }
}

@media (hover: hover) and (pointer: fine) {

  .checkmarkFunding:hover {
    background-color: #696969;
    border-color: #696969;
    color: #ffffff;
  }

  #selectionRace .checkmark:hover {
    background-color: #CFE8F3;
    border-color: #0a4c6a;
    color: #0a4c6a;
  }

  #selectionUrban .checkmark:hover {
    background-color: #F5CBDF;
    border-color: #761548;
    color: #761548;
  }

  .checkmarkFunding[data-index="adj"]:hover {
    background-color: #353535 !important;
    border-color: #353535 !important;
    color: #ffffff;
  }

  a.download:hover {
    background-color: #000000;
    color: #ffffff;
  }
}
