html, body{
    height: 100%;
    margin: 0px auto;
}
body{
    font-family: "Segoe UI","Roboto","Droid Sans","Helvetica Neue",Arial,sans-serif;
    font-size: 18px;
    color: rgb(55,55,55);
    line-height: 1.42;
    font-weight: 300;
}
.outer-wrapper {
    min-height: 100%;
    display: grid;
    grid-template-rows: auto 1fr auto;
}
a{
    color: #4278AB;
}
a:hover, a:focus{
    color: #CE9204;
}

.nav{
    height: 60px;
    box-sizing: border-box;
    background-color: #385382;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 30px;
    font-weight: 500;
    transition: color 0.15s ease, border-color 0.15s ease;
    position: sticky;
    top: 0;
    z-index: 2001;
}
.nav a{
    color: #fff;
    text-decoration: none;
    border-bottom: 2px solid transparent;
}
.nav a:focus, .nav a:hover{
    color: #FFD062;
    border-color: #FFD062;
}
.nav a.nav-here{
    border-color: #fff;
}
.nav a.nav-here:focus, .nav a.nav-here:hover{
    border-color: #FFD062;
}
#mobile-nav a{
    position: relative;
}
#mobile-nav a.nav-here,#mobile-nav a:focus,#mobile-nav a:hover{
    border-color: transparent;
}
#mobile-nav a.nav-here::after, #mobile-nav a:focus::after,#mobile-nav a:hover::after{
    content: "";
    display: block;
    position: absolute;
    bottom: 8px;
    height: 3px;
    width: 100px;
    background-color: #fff;
}
#mobile-nav a.nav-here:hover::after, #mobile-nav a.nav-here:focus::after, #mobile-nav a:focus::after,#mobile-nav a:hover::after{
    background-color: #FFD062;
}
.site-name-link{
    font-size: 23px;
    line-height: 1.1;
    transition: opacity ease-in 0.2s;
}
.site-name-link.init-vis{
    opacity: 0;
    pointer-events: none;
}
.nav-internal{
    flex: 0 1 800px;
    display: flex;
    align-items: center;
    justify-content: space-evenly;
}
.lrc-dash{
    margin-top: 10px;
    line-height: 1.05;
    margin-bottom: 0;
    font-size: 42px;
}
.lrc-dash, .lrc-in-page{
    font-weight: 600;
    color: #385382;
}
.text-group-dash{
    margin: 12px 0 40px 14px;
    max-width: 1000px;
    font-size: 20px;
}
.highlight-dash{
    font-size: 1.1em;
    font-weight: 500;
}
.text-group-dash p{
    margin: 0;
    margin-top: 22px;
}
.dash-base-left, .dash-base-right, .text-group-dash{
    font-weight: normal;
}
.dash-base-left p, .dash-base-right p{
    max-width: 760px;
    margin-top: 0;
}
.dash-base-left h3, .dash-base-right h3{
    margin-bottom: 10px;
}
.about-main h2.lrc-in-page{
    font-weight: 600
}
.on-map-title{
    font-size: 25px;
    font-weight: 500;    
    text-align: right;
    line-height: 1.2;
    margin: 0;
}
.mobile-text{
    display: none;
}
.dash-inner{
    display: flex;
    align-items: stretch;
    justify-content: center;
    padding: 0;
    border: 1px solid #ADADAD;
    border-top: none;
    border-bottom-style: dashed;
}
.dash-base{
    border: 1px solid #ADADAD;
    border-top: none;
    border-bottom-right-radius: 4px;
    border-bottom-left-radius: 4px;
    display: flex;
    padding: 20px 22px;
}
.dash-base-left, .dash-base-right{
    padding: 0 15px;
    flex: 1 1 50%;
    /*max-width: 800px;*/
}
.dash-base-left{
    padding-right: 25px;
}
.dash-base-right{
    padding-left: 25px;
}
.map-holder{
    flex: 1 1 920px;
    position: relative;
    max-width: 1400px;
    border-right: 1px dashed #ADADAD;
}
.main.dash-main, .main.about-main{
    padding: 40px 30px;
}
.about-main{
    max-width: 1040px;
    width: 100%;
    margin: 0 auto;
    font-weight: normal;
    box-sizing: border-box;
}
.about-main h2{
    margin: 40px 0 10px 0;
    font-weight: 500;
}
p.text-block{
    max-width: 980px;
    width: 100%;
}
p.text-block.lead-block{
    font-size: 20px;
}
#map{
    width: 100%;
    height: 100%;
    min-height: 800px;
    background-color: #fff;
}
#scatterplot{
    box-sizing: border-box;
    flex: 1 1 740px;
    padding: 10px 30px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    max-width: 1000px;
}
.plot-title{
    font-size: 20px;
    font-weight: 500;
    text-align: center;
    margin-bottom: 14px;
}
.infobox-group{
    width: 100%;
    max-width: 780px;
    margin: 0 auto 30px auto;
    background-color: rgb(248,248,248);
    min-height: 0;
    border-radius: 4px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.plot-group{
    width: 100%;
    max-width: 780px;
    margin: 0 auto 40px auto;
}
#plot-legend{
    width: 100%;
    max-width: 700px;
    margin: 6px auto 20px auto;
    display: flex;
    align-items: flex-start;
    justify-content: space-evenly;
    font-size: 16px;
    font-weight: 600;
}
#plot-legend > .check-holder{
    flex: 0 1 130px;
}
#plot-legend .checkbox-text{
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
}
.plot-c-1, .plot-c-2, .plot-c-3, .plot-c-4{
    border-radius: 50%;
    display: inline-block;
    height: 10px;
    width: 10px;
    border: 1px solid rgb(252,252,252);
    margin-right: 6px;
    margin-top: 4px;
}

.plot-c-1{
    background-color: #c15538;
}
.plot-c-2{
    background-color: #edb248;
}
.plot-c-3{
    background-color:#5a9b5d;
}
.plot-c-4{
    background-color: #aa5393;
}

.popup-dot{
    display: inline-block;
    height: 10px;
    width: 10px;
    margin-right: 6px;
}


.leaflet-tooltip{
    font-family: inherit;
    font-style: italic;
}
.plot-popup{
    display: none;
    opacity: 0;
    transition: opacity 0.2s ease;
}
.plot-popup .leaflet-popup-content{
    line-height: 1.2;
}
.plot-popup.visible{
    opacity: 1;
    display: block;
    width: 220px;
    z-index: 2000;
}
.plot-popup.t-in{
    display: block;
}
.plot-popup.t-out{
    opacity: 0;
}
.plot-popup-group, .popup-group{
    align-items: flex-start;
    justify-content: space-between;
    margin: 6px 0;
}
.plot-popup-group span:nth-child(2), .popup-group span:nth-child(2){
    flex: 0 0 50px;
    font-weight: 500;
}

.popup-group{
    margin: 4px;
}
.popup-group.spacer{
    margin-bottom: 8px;
    padding-bottom: 4px;
    border-bottom: 2px solid rgb(222,222,222);
}

.popup-note{
    display: block;
    margin: 12px 4px;
    font-style: italic;
    font-size: 16px;
    line-height: 1.2;
}

.circle-ignore{
    pointer-events: none !important;
}
.plot-circle{
    stroke-width: 1;
    stroke: rgb(252,252,252);
    cursor: pointer;
}
.plot-circle:hover{
    stroke-width: 2;
}
circle.highlighted, circle.highlighted:hover{
    stroke-width: 2.5;
}
.popup-title{
    font-size: 18px;
    font-weight: 600;
    color: #385382;
    margin-top: 18px;
}
#p-tt-cname{
    margin-bottom: 4px;
}
.p-tt-cz, .p-tt-iz{
    white-space: normal;
    word-wrap: break-word;
    text-align: left;
    font-size: inherit;
    font-family: inherit;
    background: transparent;
    border: none;
    outline: none;
    box-shadow: none;
    color: #4278AB;
    cursor: pointer;
    padding: 0;
    margin: 0;
}
.p-tt-iz{
    font-style: italic;
    margin-bottom: 12px;
}
.p-tt-cz:hover, .p-tt-cz:focus{
    color: #CE9204;
    text-decoration: underline; 
}
.popup-subtitle{
    font-size: 16px;
    font-weight: 600;
}
.popup-subtitle.sub-1{
    font-size: 17px;
    color: #4278AB;
}
.popup-block{
    display: block;
}
.popup-title.popup-block{
    text-align: center;
}
.plot-popup .popup-subtitle{
    font-size: 16px;
    margin-right: 4px;
}
.popup-subtitle.popup-block{
    margin-top: 10px;
    margin-bottom: 2px;
    line-height: 1.2;
}
.popup-title.popup-block + .popup-subtitle.popup-block{
    margin-top: 5px;
}
.popup-flex{
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}
.popup-text{
    flex: 1 0 60px;
    margin-right: 10px;
    font-style: italic;
}
.popup-value{
    flex: 1 1 100%;
    font-weight: 600;
}
.leaflet-container{
    font-family: inherit;
}
.leaflet-popup-content-wrapper{
    border-radius: 3px;
    min-width: 200px;
}
.leaflet-popup-content{
    font-size: 16px;
    margin: 10px 14px;
    max-width: 280px;
}
.plot-popup .leaflet-popup-content{
    margin: 10px;
}
.leaflet-container a.leaflet-popup-close-button, button.leaflet-popup-close-button{
    width: 20px;
    height: 18px;
}
button.leaflet-popup-close-button{
    position: absolute;
    top: 0;
    right: 0;
    padding: 4px 4px 0 0;
    border: none;
    text-align: center;
    font: 16px/14px Tahoma, Verdana, sans-serif;
    color: #c3c3c3;
    font-weight: bold;
    background: transparent;
    cursor: pointer;
}
button.leaflet-popup-close-button:hover, .button.leaflet-popup-close-button:focus{
    color: #999;
}
#plot{
    position: relative;
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

.footer{
    font-size: 16px;
    box-sizing: border-box;
    background-color: #385382;
    padding: 60px 40px 50px 40px;
    color: #fff;
    text-align: center;
}
.footer a{
    color: #fff;
}
.footer a:hover, .footer a:focus{
    color: #FFD062;
}

.whats-this{
    box-sizing: border-box;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    background-color: #4278AB;
    color: #fff;
    height: 20px;
    width: 20px;
    border-radius: 50%;
    font-weight: 700;
    appearance: none;
    box-shadow: none;
    border: none;
    cursor: pointer;
    font-size: 16px;
    padding: 0 0 1px 0;
    font-family: "Segoe UI","Roboto","Droid Sans","Helvetica Neue",Arial,sans-serif;
    transition: background-color 0.2s ease;
}
.whats-this.legend-button{
    margin-left: 8px;
    padding-left: 1px;
}
.whats-this.plot-button{
    margin-bottom: 8px;
}
.whats-this:hover, .whats-this:focus{
    background-color: #E7BC56;
}
.dash-nav{
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    box-sizing: border-box;
    position: relative;
    border-top-right-radius: 4px;
    border-top-left-radius: 4px;
    border: 1px solid #ADADAD;
    border-bottom-style: dashed;
}
.dash-nav, .dash-inner, .dash-base{
    background-color: #fff;
}
h1.nav-header{
    font-size: 23px;
    line-height: 1.2;
    flex: 1 1 440px;
    margin-right: 20px;
    font-weight: 600;
}
h1{
    color: #385382;
}
h1, h2, h3, h4, .nav{
    font-family: canada-type-gibson,-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Droid Sans","Helvetica Neue",Arial,sans-serif;
}
h2{
    line-height: 1.2;
}
h3{
    font-weight: 500;
}
.filter-info-holder{
    height: 0;
    overflow-y: hidden;
    width: 100%;
    transition: height 0.2s ease;
}
.filter-info-holder .mini-header{
    margin: 0;
    margin-right: 4px;
    font-size: 18px;
    font-weight: 500;
    font-style: italic;
}
.filter-info-holder-inner{
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px 0;
    border-top: 1px dashed #ADADAD;
}
.filter-info-row{
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: wrap;
}
.filter-info-row button{
    display: inline-block;
    border-radius: 3px;
    font-size: 16px;
    background-color: rgb(248,248,248);
    padding: 4px 6px 6px 8px;
    margin: 4px 6px;
    font-weight: 400;
    border: none;
    font-family: inherit;
    color: inherit;
    cursor: pointer;
}
.filter-info-row button:hover, .filter-info-row button:focus{
    background-color: #E7BC56;
}
.all-nav-groups{
    flex: 1 1 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 22px 30px 20px 30px;
}
.nav-group{
    display: flex;
    align-items: center;
    justify-content: flex-start;
    margin: 0 60px 0 0;
}
.nav-group:last-child{
    margin: 0;
}
.nav-title{
    font-weight: 500;
    margin: 0 22px 6px 0;
    flex: 0 1 280px;
    font-size: 20px;
}
.select-wrapper{
    position: relative;
}
.select-wrapper select{
    width: 100%;
}
.select-wrapper.x-axis select{
    width: 100%;
    text-align: center;
    color: #385382;
    font-weight: 600;
    font-size: 17px;
}
.x-axis-group{
    display: flex;
    justify-content: flex-start;
    align-items: center;
}
.x-axis-label{
    font-style: italic;
    font-weight: 500;
    flex: 0 0 130px;
}
.select-wrapper.x-axis{
    margin: 10px 0;
    flex: 0 1 600px;
}

.select-wrapper::after, .dropdown-button::after, .scroll-to-plot-box a::before, .scroll-to-plot-box a::after{
    content: "";
    width: 0; 
    height: 0; 
    border-left: 3px solid transparent;
    border-right: 3px solid transparent;
    border-top: 6px solid #555;

    position: absolute;
    top: 42%;
    right: 7px;

    pointer-events: none;
}

.select-wrapper select:hover, .select-wrapper select:focus{
    border-color: #538BBD;
}

.scroll-to-plot-box a::before, .scroll-to-plot-box a::after{
    border-top-color: #0078A8;
    right: auto;
    left: 0px;
    border-left-width: 5px;
    border-right-width: 5px;
    border-top-width: 10px;
    top: 0.5em;
}
.scroll-to-plot-box a::after{
    border-top-color: #fff;
    border-left-width: 3px;
    border-right-width: 3px;
    border-top-width: 3px;
    left: 2px;
}
.scroll-to-plot-box a:hover::before, .scroll-to-plot-box a:focus::before{
    border-top-color: #CE9204;
}

.major-var-group{
    flex: 0 1 390px;
}
.major-var-group.double{
    flex: 0 1 800px;
}
.inner-var-group{
    display: flex;
    align-items: flex-start;
    justify-content: center;
}
.top-group-label .highlight, .footer .highlight, p.highlight, .text-ul .highlight{
    font-weight: 600;
}
.highlight{
    color: #3B79B0;
}
.semibold{
    font-weight: 600;
}
.super-drops-group{
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

.button-drops-group{
    position: relative;
    margin: 0 10px;
    width: 280px;
}
.button-drops-group:first-child{
    margin-left: 0;
}
select, .dropdown-button, .var-choice-btn, #inst-search{
    cursor: pointer;
    box-sizing: border-box;
    background-color: #fff;
    appearance: none;
	font-family: inherit;
    font-size: 18px;
  	color: inherit;
	border: 1px solid rgb(200, 200, 200);
	border-radius: 4px;
	padding: 6px 12px 6px 8px;
	padding-right: 18px;
	-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
	box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
	transition: 0.2s border-color ease-in-out,  0.2s background-color ease-in-out, 0.2s box-shadow ease-in-out;
}
.dropdown-button[aria-expanded="true"]{
    border-color: #538BBD;
    border-bottom-color: #fff;
    border-width: 1px;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

/*fit to button-drops-group*/
.dropdown-button, .dropdown-list, #inst-search{
    width: 100%;
}
#inst-search{
    cursor: text;
    padding-right: 21px;
}

.var-choice-btn{
    color: #373737;
    text-align: left;
    background-color: #fff;
    cursor: pointer;
    width: 100%;
    box-sizing: border-box;
    border-width: 2px;
}
.var-choice-btn.selected{
    border-color: #538BBD;
    font-weight: 600;
    background-color: #538BBD;
    color: #fff;
}
#clear-search-btn{
    background-color: transparent;
    position: absolute;
    box-sizing: border-box;
    height: calc(100% - 2px);
    top: 1px;
    right: 1px;
    width: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    cursor:pointer;
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
    color: inherit;
}
.dropdown-button:hover, .var-choice-btn:hover, select:hover, #inst-search:hover, #clear-search-btn:hover{
    background-color: rgb(238,238,238);
}
select:disabled,select:disabled:hover{
    cursor: default;
    background-color: rgb(222,222,222);
    border-color: rgb(200,200,200);
}
#inst-search:focus{
    outline: none;
    background-color: #fff;
    border-color: #538BBD;
}

.var-choice-btn.selected:hover{
    background-color: #538BBD;
}
.dropdown-button[aria-expanded="true"]:hover{
    background-color: #fff;
}
.dropdown-list{
    box-sizing: border-box;
    margin: 0;
    margin-top: -1px;
    padding: 12px 6px 6px 6px;
    list-style-type: none;
    text-align: left;
    background-color: #fff;
    border: 1px solid #538BBD;
    border-top: none;
    position: absolute;
    pointer-events: none;
    left: -9999px;
    opacity: 0;
    border-bottom-right-radius: 4px;
    border-bottom-left-radius: 4px;
    box-shadow: 0px 2px 2px 0px rgba(0,0,0,0.3);
    z-index: 2000;
    display:none;
}
.dropdown-list[aria-hidden="false"]{
    left: 0px;
    pointer-events: auto;
    opacity: 1;
    max-height: 340px;
    overflow-y: auto;
    display: block;
}
.button-li{
    margin: 10px auto;
}

.check-holder{
    position: relative;
    display: block;
    padding: 4px 0 4px 9px;
    font-weight: 500;
    color: #373737;
    pointer-events: auto;
    cursor: pointer;
}
.check-holder.legend-check{
    display: inline-block;
}
.check-holder.vis-check{
    margin: 0 0 0 auto;
    width: 124px;
}
.check-holder.map-check-holder{
    margin-left: 24px;
}
.check-holder.vis-check.no-data{
    font-style: italic;
}
.checkbox-text{
	margin-left: 24px;
	display: inline-block;
	vertical-align: top;
    font-size: 16px;
    line-height: 1.2;
}
.checkbox-overlay{
	box-sizing: border-box;
	pointer-events: none;
	z-index: 2;
	background: #fff;
}
.checkbox-overlay, .check-holder input{
	position: absolute;
	height: 16px;
	width: 16px;
	border: 1px solid rgb(100,100,100);
	border-radius: 2px;
	top: 6px;
	left: 11px;
}
.check-holder input:checked + .checkbox-overlay{
	background-color:  #538BBD;
	border-color:  #538BBD;
}
.check-holder input:disabled + .checkbox-overlay{
    border-color: rgb(200,200,200);
}

.check-holder.no-data input:checked + .checkbox-overlay{
    background-color: rgb(200,200,200);
}

.check-holder input:checked +.checkbox-overlay::before{
	box-sizing: border-box;
	content: "";
	position: absolute;
	border: 2px solid #fff;
	border-top: none;
	border-left: none;
	left: 5px;
	bottom: 3px;
	width: 5px;
	height: 10px;
	transform: rotate(45deg);
	pointer-events: none;
}
.check-holder input{
	margin: 0;
	cursor: pointer;
}
.check-holder input:disabled{
    cursor: default;
}
.check-holder input:disabled + .checkbox-overlay{
    background-color: rgb(200,200,200);
}
.check-holder.disabled{
    font-style: italic;
}
.check-holder input:indeterminate + .checkbox-overlay{
	background-color:  #b3cecd;
	border-color:  #b3cecd;
}
.check-holder input:indeterminate + .checkbox-overlay::before{
	box-sizing: border-box;
	content: "";
	position: absolute;
	height: 3px;
	width: 10px;
	background-color: #fff;
	top: 6px;
	left: 2px;
    transform: none;
	pointer-events: none;
}
.checkbox-divider{
    height: 3px;
    border-radius: 2px;
    background-color: rgb(222,222,222);
    width: 100%; 
    margin: 4px auto 10px auto;
}


.val-group{
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}
.quintile-group{
    display: block;
    padding: 0 16px 0 16px;
    margin-bottom: 4px;
}

.val-wrapper{
    position: relative;
    display: inline-block;
}
.val-wrapper::before{
    position: absolute;
    right: 26px;
    top: 8px;
    content: "%";
    display: block;
    font-family: inherit;
    color: inherit;
    font-size: 14px;
}
.val-input{
    box-sizing: border-box;
    padding-right: 4px;
    width: 70px;
    height: 33px;
    font-weight: 500;
    font-size: 15px;
}
.quintile-label-left, .quintile-label-right{
    display: block;
    text-align: center;
    font-size: 14px;
    margin: 4px 0;
}

.quintile-button{
    border: 1px solid rgb(200,200,200);
    background-color: #fff;
    padding: 10px;
    width: 100%;
    box-sizing: border-box;
    border-bottom: none;
    cursor: pointer;
}
.quintile-button:hover{
    background-color: rgb(238,238,238);
}
.quintile-button:nth-child(2){
    border-top-left-radius: 2px;
    border-top-right-radius: 2px;
}
.quintile-button:nth-child(6){
    border-bottom: 1px solid rgb(200,200,200);
    border-bottom-left-radius: 2px;
    border-bottom-right-radius: 2px;
}
.quintile-button.selected{
    background-color: #538BBD;
    border-color: #538BBD;
    color: #fff;
    font-weight: 600;
}
.quintile-button.selected + .quintile-button.selected{
    border-top-color: #fff;
}

.dash-margin{
    display: inline-block;
    margin: 0 5px;
}
.filter-label{
    margin: 24px 0 10px 10px;
    font-weight: 600;
    line-height: 1.1;
}
.select-wrapper.filter, .filter-label{
    margin-left: 10px;
}
.select-wrapper.filter{
    width: 90%;
}

.tick line{
    stroke: rgb(200,200,200);
}
.tick text{
    font-family: inherit;
    text-anchor: end;
    font-size: 15px;
    font-weight: 500;
    fill: rgb(55,55,55);
    font-family: inherit;
}
.x-axis .tick text{
    text-anchor: middle;
}
.axis-label-text{
    fill: #385382;
    font-weight: 600;
    font-family: inherit;
    text-anchor: middle;
}
div.axis-label-text{
    color: #385382;
    text-align: center;
}
.axis-label-text.y{
    writing-mode: vertical-rl;
    writing-mode: sideways-lr;
}
.axis-label-text.x{
    margin-bottom: 30px;
}
#plot svg{
    box-sizing: border-box;
    margin-left: 14px;
    flex: 1 1 680px;
}
.domain{
    stroke: rgb(222,222,222);
    stroke-width: 2;
    stroke-linecap: round;
}
.y-axis .tick:nth-child(1) line{
    display: none;
}

.zero-line{
    stroke: #0F3F77;
    stroke-dasharray: 4 3;
    stroke-width: 2;
    fill: none;
    pointer-events: none;
}


.leaflet-touch .leaflet-control-layers, .leaflet-touch .leaflet-bar, .full-extent-button, .toggle-button, .zoom-to-button, #zoom-to-county-select, .layers-holder-inner, .layers-button, .zoom-button-holder{
    border: 1px solid rgb(200,200,200);
    box-shadow: 0 1px 1px 1px rgba(0,0,0,0.2);
}
.leaflet-control-zoom{
    margin-bottom: 10px;
}
.leaflet-bar a, .leaflet-bar a:hover{
    color: #373737;
}
.leaflet-bar a.leaflet-disabled{
    color: #bbb;
}
.full-extent-button, .zoom-to-button, .layers-button, .toggle-button{
    box-sizing: border-box;
    padding: 0;
    display: block;
    background-color: rgb(252,252,252);
    height: 34px;
    width: 34px;
    margin: 10px 0 0 10px;
    border-radius: 2px;
    cursor: pointer;
    pointer-events: auto;
    background-image: url("/css/images/full_extent_icon.png");
    background-size: 26px 26px;
    background-position: center;
    background-repeat: no-repeat;
}
.toggle-button{
    background-image: url("/css/images/toggle-icon.png");
}
.zoom-to-button{
    background-image: url("/css/images/zoom_icon.png");
    z-index: 1;
}
.full-extent-button, .zoom-to-button, .toggle-button{
    clear: both;
}
.full-extent-button:hover, .zoom-to-button:hover, .layers-button:hover, .toggle-button:hover{
    background-color: #f4f4f4;
}
.leaflet-control-attribution{
    max-height: 20px;
}
.toggle-button[aria-expanded="true"], .zoom-to-button[aria-expanded="true"]{
    border-color: #538BBD;
    border-right-color: transparent;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}
.zoom-button-group{
    display: flex;
    align-items: center;
    justify-content: flex-start;
}
#zoom-to-county-holder{
    margin-left: 0;
    margin-top: 10px;
    pointer-events: auto;
}
#zoom-to-county-select{
    height: 34px;
    font-size: 16px;
    background-color: #fff;
    border-color: #538BBD;
    border-radius: 2px;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.map-legend, .title-box, .filters-chosen-box, .scroll-to-plot-box{
    margin: 0 0 30px 10px;
    background-color: rgba(255,255,255,0.85);
    border-radius: 4px;
    border: 1px solid #fff;
    box-sizing: border-box;
    padding: 14px 20px 10px 20px;
    font-family: inherit;
    font-size: 16px;
    box-shadow: 0px 2px 3px 1px rgba(0,0,0,0.3);
    pointer-events: auto;
}
.mobile-map-legend{
    display: none;
    margin: 0 auto 10px auto;
    box-sizing: border-box;
    padding: 14px 20px 10px 20px;
    font-family: inherit;
    font-size: 16px;
    text-align: center;
    border-top: 1px dashed #ADADAD;
}
.title-box{
    margin: 10px 20px 0 0;
    padding: 10px 20px 10px 10px;
    width: 242px;
    background-color: rgba(255,255,255,0.8);
    pointer-events: none;
}
.scroll-to-plot-box{
    display: none;
    text-align: right;
    margin: 10px 20px 0 0;
    padding: 6px 20px 8px 6px;
    width: 242px;
    background-color: rgba(255,255,255,0.8);
}
.scroll-to-plot-box a{
    text-decoration: none;
    font-weight: 600;
    position: relative;
    box-sizing: border-box;
    display: inline-block;
    padding-left: 20px;
}
.filters-chosen-box{
    margin-bottom: 10px;
}
.filter-box-row{

}
.small-legend{
    min-height: auto;
    padding-right: 6px;
}
.legend-header{
    margin: 2px 0 4px 0;
    font-size: 18px;
    line-height: 1.2;
    font-weight: 500;
}
.legend-row{
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    margin: 10px 0;
    pointer-events: auto;
    cursor: default;
    flex-direction: column;
    font-weight: 400;
}
.legend-row > span{
    pointer-events: none;
}
.legend-row > div{
    flex: 0 0 30px;
    width: 60px;
    height: 30px;
    border-radius: 2px;
    margin-bottom: 8px;
    border: 1px solid rgb(180,180,180);
}
.zero-block{
    background-color: #fff;
}
.one-block{
    background-color: #D6E5F4;
}
.two-block{
    background-color: #AECCE8;
}
.three-block{
    background-color: #75A3CC;
}
.four-block{
    background-color: #4278AB;
}
.five-block{
    background-color: #1E578C;
}
.legend-row.faded-block{
    color: rgb(150,150,150);
}
.legend-row.faded-block > div{
    background-color: #f7f7f7;
}

.toggle-holder{
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
}

#toggle-holder-inner{
    box-sizing: border-box;
    margin-top: 10px;
    height: 154px;
    padding: 3px 12px 3px 0;
    background-color: #fff;
    border: 1px solid #538BBD;
    display: inline-block;
    pointer-events: auto;
    border-top-right-radius: 2px;
    border-bottom-right-radius: 2px;
}

.button-group{
    display: flex;
    align-items: center;
    justify-content: space-around;
    margin: 60px auto 80px auto;
    max-width: 930px;
    width: 100%;
}

.download-data-link{
    color: #373737;
    background-color: #fff;
    text-decoration: none;
    display: inline-block;
    padding: 15px 30px;
    border: 2px solid rgb(200,200,200);
    border-radius: 4px;
    font-weight: 600;
    font-size: 20px;
    transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}
.download-data-link:hover, .download-data-link:focus{
    background-color: #538BBD;
    border-color: #538BBD;
    color: #fff;
    text-decoration: none;
}
.download-def-group{
   margin: 40px 0;
   max-width: 900px;
   width: 100%;
}
.download-def-group h3{
    margin: 0 0 6px 0;
}

.form-holder{
    margin: 0 auto 30px auto;
    padding: 30px;
    box-sizing: border-box;
    max-width: 840px;
    width: 100%;
}

.about-main h2.c-sub{
    margin-top: 0;
}

.form-items > label{
    display: block;
    font-weight: 600;
    font-size: 24px;
    margin: 10px 0 4px 0;
}

.form-input, #contact-message{
    width: 300px;
    height: 36px;
    padding: 6px 12px;
    font-size: 16px;
    color: inherit;
    font-family: inherit;
    background-color: #fff;
    background-image: none;
    border: 1px solid #ccc;
    border-radius: 4px;
    box-shadow: inset 0 1px 1px rgba(0,0,0,0.075);
    margin-left: 10px;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
    box-sizing: border-box;

}
.form-input:focus, #contact-message:focus{
    border-color:#538BBD;
    box-shadow: inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(83, 139, 189,0.6);
    outline: none;
}

.form-input, #contact-message{
    width: 100%;
}
#contact-message{
    height: auto;
}
.message-button{
    font-family: inherit;
    font-weight: 600;
    font-size: 18px;
    padding: 20px 60px;
    margin: 10px auto;
    cursor: pointer;
    display: block;
    border: 2px solid rgb(200,200,200);
    border-radius: 4px;
    color: #373737;
    background-color: #fff;
    transition: color 0.2s ease, background-color 0.2s ease, border-color 0.2s ease;
}

.message-button:hover, .message-button:focus{
    background-color: #538BBD;
    border-color: #538BBD;
    color: #fff;
    text-decoration: none;
}

.message-button{
    font-size: 22px;
    margin-top: 40px;
}

.leaflet-tooltip{
    font-style: normal;
    font-size: 17px;
}

/* modals */

.modal-open, html.modal-open{
    overflow: hidden;
}

.modal-mask{
    opacity: 1;
    position: fixed;
    z-index: 5001;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background-color: rgba(200,200,200,0.9);
    transition: opacity .3s ease;
}
.modal-mask.out, .modal-holder.out{
    opacity: 0;
    pointer-events: none;
}
.modal-holder{
    opacity: 1;
    pointer-events: none;
    position: fixed;
    z-index: 5002;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    transition: opacity .3s ease;

}
.modal{
    width: 760px;
    max-width: 96%;
    background: #fff;
    position: relative;
    z-index: 5002;
    margin: 70px auto 0 auto;
    border-radius: 4px;
    box-sizing: border-box;
    padding: 26px 36px 36px 36px;
    overflow-y: auto;
    box-shadow: 1px 1px 1px 2px rgba(180,180,180,.9);
    pointer-events: auto;
}
.modal-close{
    font-weight: 700;
    position: absolute;
    top: 0;
    right: 10px;
    cursor: pointer;
    border: none;
    background: transparent;
    color: #4278AB;
    font-size: 28px;
    font-family: inherit;
}

.modal-close:hover, .modal-close:focus{
    color: #E7BC56;
    outline: none;
}
.modal-head{
    margin-top: 36px;
    margin-bottom: 8px;
}
.modal-text-p{
    margin-top: 0;
    font-weight: normal;
}
.modal-text-p.note{
    margin-top: 26px;
    font-style: italic;
}

.no-results-li{
    line-height: 1.2;
    font-weight: 500;
    padding: 4px 6px;
}
.search-list-result{
    border: 3px solid transparent;
    outline: none;
    background-color: #fff;
    border-radius: 3px;
    cursor: pointer;
    text-align: left;
    padding: 4px 10px;
    font-family: inherit;
    font-weight: 500;
    color: inherit;
    font-size: 15px;
    margin: 2px 0;
}
.search-list-result:hover, .search-list-result:focus{
    background-color: #A2CEAA;
}
.search-list-result.cz-selected{
    background-color: #fff;
    border-color: #f0c359;
}

.reset-button{
    background-color: #fff;
    border: 1px solid rgb(200,200,200);
    padding: 4px 10px 6px 10px;
    font-family: inherit;
    font-size: 17px;
    font-weight: 600;
    border-radius: 4px;
    color: inherit;
    cursor: pointer;
    flex: 0 0 auto;
    margin-left: 16px;
    transition: background-color 0.2s ease, border-color 0.2s ease;
}
.reset-button:hover, .reset-button:focus{
    background-color: #E7BC56;
    border-color: #E7BC56;
}
.reset-button.none{
    background-color: rgb(232,232,232);
}

.filter-list{
}
.filter-list button{
    display: inline-block;
    cursor: pointer;
    box-shadow: none;
    border: none;
    outline: none;
    background-color: rgb(222,222,222);
    margin: 4px 4px;
    font-family: inherit;
    font-size: 17px;
    font-weight: 500;
    color: inherit;
    border-radius: 3px;
    padding: 4px 6px 4px 10px;
}
.filter-list button:hover, .filter-list button:focus{
    background-color: #E7BC56;
}

.nav-mobile{
    position: relative;
    display: none;
    height: 100%;
}
#menu-burger{
    display: none;
    border: none;
    background-color: transparent;
    height: 60px;
    width: 74px;
    cursor: pointer;
    flex-direction: column;
    align-items: center;
    justify-content: space-evenly;
    padding: 12px 18px;
}
#menu-burger span{
    pointer-events: none;
    display: block;
    background-color: #fff;
    height: 4px;
    width: 100%;
    border-radius: 4px;
    transition: background-color 0.2s ease, transform 0.3s ease;
}
#menu-burger:hover span, #menu-burger:focus span{
    background-color: #FFD062;
}
#menu-burger[aria-expanded="true"] span.s-1{
    transform: translate(0px, 7px) rotate(45deg);
}
#menu-burger[aria-expanded="true"] span.s-2{
    display: none;
}
#menu-burger[aria-expanded="true"] span.s-3{
    transform: translate(0px, -7px) rotate(-45deg);
}

#mobile-nav{
    display: none;
    position: absolute;
    list-style: none;
    background-color: #385382;
    border: 1px solid rgb(238,238,238);
    box-shadow: 0 2px 2px 1px rgba(80,80,80,0.15);
    border-bottom-right-radius: 3px;
    border-bottom-left-radius: 3px;
    border-top: 1px solid #FFD062;
    box-sizing: border-box;
    top: 60px;
    right: 0;
    width: 340px;
    padding: 10px 20px;
    margin-top: 0;
}
#mobile-nav a{
    display: block;
    padding: 17px 0;
    font-size: 22px;
}

.select-square{
    display: none;
    fill: rgb(100,100,100);
    fill-opacity: 0.5;
}
.select-square.dragging{
    display: block;
}
svg.dragging{
    cursor: crosshair;
}
.plot-circle.drag-select{
    stroke: #ffdc8b;
    stroke-width: 2;
}
/* messages */
.flash-alert{
    position: fixed;
    top: 51px;
    left: 0;
    width: 100%;
    color: #fff;
    height: 0;
    box-shadow: 0 1px 1px 1px rgba(0,0,0,0.1);
    transition: height 0.3s ease;
    pointer-events: none;
    overflow-y: hidden;
    z-index: 99;
}
.flash-alert[aria-expanded='true']{
    pointer-events: auto;
}
.flash-alert.success{
    background-color: #487f4b;
}
.flash-alert.error{
    background-color: #c15538;
}
.flash-wrapper{
    text-align: center;
    padding: 10px 0 10px 0;
    font-size: 22px;
    font-weight: normal;
}
.flash-wrapper p{
    margin-bottom: 2px;
}
.close-flash{
    appearance: none;
    background: none;
    border: none;
    box-shadow: none;
    color: #fff;
    background-color: rgba(255,255,255,0.2);
    border: 1px solid rgba(255,255,255,0.9);
    margin-top: 10px;
    width: 100px;
    font-weight: 600;
    border-radius: 2px;
    font-family: inherit;
    font-size: 18px;
    cursor: pointer;
    box-sizing: border-box;
    padding: 10px;
}
.close-flash:focus, .close-flash:hover{
    background-color: rgba(255,255,255,0.3);
}

.cf-turnstile{
    margin-top: 28px;
    margin-left: 16px;
}


.hidden{
    display: none !important;
}

@media(max-width: 1800px){
    #map .leaflet-popup-content{
        max-height: 210px;
        overflow-y: auto;
    }
}

@media(max-width: 1400px){
    .scroll-to-plot-box{
        display: block;
    }
    .dash-inner{
        display: block;
    }
    .map-holder{
        max-width: 100%;
        border-right: none;
        border-bottom: 1px dashed #ADADAD;
    }
    #scatterplot{
        margin-top: 30px;
        max-width: 100%;
    }
    .nav-group{
        margin-right: 30px;
    }
    .nav-group:last-child{
        margin: 0;
    }
    .button-drops-group{
        width: 220px;
    }
    #map .leaflet-popup-content{
        max-height: 176px;
        overflow-y: auto;
    }
}

@media(max-width: 1100px){
    .nav-internal{
        display: none;
    }
    .nav-mobile{
        display: block;
    }
    #menu-burger{
        display: flex;
    }
    #mobile-nav[aria-hidden='false']{
        display: block;
        max-height: calc(100vh - 60px);
        overflow-y: auto;
    }

    .dash-nav{
        display: block;
        height: auto;
    }
    .all-nav-groups{
        display: grid;
        grid-template-columns: 1fr 1fr;
        align-items: start;
        padding: 10px 30px 20px 30px;
    }
    .nav-group, .nav-group:last-child{
        margin-right: 0;
        margin-top: 30px;
        text-align: center;
        display: block;
    }
    h1.nav-header{
        margin-right: 0;
        margin-bottom: 40px;
    }
    .main.dash-main{
        padding: 40px 15px;
    }
    .main.about-main{
        padding: 40px 20px;
    }
    .button-drops-group{
        width: 280px;
    }
    .button-drops-group, .button-drops-group:first-child{
        margin: 0 auto;
    }
    .super-drops-group{
        display: block;
    }
    .button-drops-group + .button-drops-group{
        margin-top: 16px;
    }
    .reset-button{
        display: block;
    }
    .dash-base-right h3{
        margin-top: 56px;
    }
    .dash-base{
        display: block;
    }
    .dash-base-right, .dash-base-left{
        padding: 0 15px;
    }
}


@media(max-width: 768px){
    .text-group-dash, p.text-block.lead-block{
        font-size: 19px;
    }
    .button-group{
        display: block;
        text-align: center;
        margin-top: 40px;
        max-width: 100%;
    }
    .download-data-link{
        margin: 16px auto;
        display: block;
        text-align: center;
    }
    #mobile-nav{
        width: 100vw;
        border-right: none;
        border-left: none;
        right: -15px; /*.nav padding*/
    }
    .all-nav-groups{
        display: block;
    }
    .filter-info-holder-inner{
        display: block;
        text-align: center;
    }
    .filter-info-row{
        justify-content: center;
    }
    .reset-button{
        margin: 30px auto 0 auto;
    }
    .on-map-title{
        font-size: 22px;
    }
    .title-box, .scroll-to-plot-box{
        width: 214px;
    }
    .mobile-text{ 
        display: inline-block;
    }
    .full-text{
        display: none;
    }
    .nav{
        padding: 0 15px;
    }
    .nav-header{
        flex: 0 0 106px;
    }
    .x-axis-label{
        display: none;
    }
    .x-axis-group{
        display: block;
    }
    .select-wrapper.x-axis{
        margin: 10px auto;
        width: 90%;
    }
    #map{
        min-height: 600px;
    }
    .map-legend{
        display: none;
    }
    .mobile-map-legend{
        display: block;
    }
    .lri-0{
        display: flex;
        margin-top: 16px;
    }
    #plot-legend{
        flex-wrap: wrap;
    }
}


@media(max-width: 500px){
    .form-holder{
        padding: 10px;
    }
}